@font-face{font-family:Karla Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url("./media/karla-latin-wght-normal-UYAER5GR.woff2") format("woff2-variations")}@font-face{font-family:Zen Maru Gothic;font-style:normal;font-display:swap;font-weight:700;src:url("./media/zen-maru-gothic-latin-700-normal-ELUIAI56.woff2") format("woff2")}:root{color-scheme:light;--color-bg: #faf4ed;--color-surface: #fffaf3;--color-overlay: #f2e9e1;--color-line: #e3d7cd;--color-text: #514a62;--color-text-strong: #3c3550;--color-text-label: #6b6380;--color-sakura: #d9789b;--color-sakura-pale: #f7dbe5;--color-sakura-ink: #97445f;--color-kikyo: #6b5fa8;--color-kikyo-pale: #e4e0f4;--color-kikyo-ink: #5a4e98;--color-yamabuki: #e9a53a;--color-yamabuki-pale: #fbeccd;--color-yamabuki-ink: #845500;--color-wakaba: #7fb24f;--color-wakaba-pale: #e4f0d8;--color-wakaba-ink: #44702a;--color-asagi: #3fa3ac;--color-asagi-pale: #d8edee;--color-asagi-ink: #176870;--color-momiji: #d9594f;--color-momiji-pale: #f9dcd8;--color-momiji-ink: #a93a32;--color-primary: #b8476f;--color-on-primary: #fffaf3;--color-link: var(--color-kikyo-ink);--color-focus: var(--color-kikyo);--color-tip-bg: #3c3550;--color-tip-text: #fffaf3;--color-tip-accent: #f7dbe5;--color-scrim: rgb(60 53 80 / 45%);--pattern-knit: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='18'%3E%3Cpath d='M4 3q1 8 7 12q6-4 7-12' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");--pattern-strength: .12;--font-display: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", system-ui, sans-serif;--font-display-weight: 700;--font-body: "Karla Variable", "Karla", "Helvetica Neue", Arial, sans-serif;--text-base: 17px;--text-sm: 15px;--text-xs: 13px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 48px;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgb(81 74 98 / 6%);--shadow-md: 0 1px 2px rgb(81 74 98 / 6%), 0 8px 24px -12px rgb(81 74 98 / 22%);--shadow-lg: 0 2px 4px rgb(81 74 98 / 8%), 0 24px 48px -16px rgb(81 74 98 / 32%);--reader-step: clamp(28px, 4.4vw, 48px);--reader-step-sm: clamp(20px, 2.4vw, 26px);--print-ink: #000;--print-paper: #fff;--print-small: .875rem;--control-size: 44px;--glossary-filter-width: 360px}:root[data-dim=true]{color-scheme:dark;--color-bg: #232136;--color-surface: #2a273f;--color-overlay: #393552;--color-line: #44415a;--color-text: #e6e2f7;--color-text-strong: #f4f1ff;--color-text-label: #b3aecd;--color-sakura: #f2aac4;--color-sakura-pale: #3d2c3a;--color-sakura-ink: #f2aac4;--color-kikyo: #c2b6f0;--color-kikyo-pale: #322d4d;--color-kikyo-ink: #c2b6f0;--color-yamabuki: #f3c478;--color-yamabuki-pale: #3c3325;--color-yamabuki-ink: #f3c478;--color-wakaba: #aed186;--color-wakaba-pale: #2a3626;--color-wakaba-ink: #aed186;--color-asagi: #8ad0d6;--color-asagi-pale: #22353a;--color-asagi-ink: #8ad0d6;--color-momiji: #f28c83;--color-momiji-pale: #3d2828;--color-momiji-ink: #f28c83;--color-primary: #f2aac4;--color-on-primary: #232136;--color-tip-bg: #f4f1ff;--color-tip-text: #232136;--color-tip-accent: #97445f;--color-scrim: rgb(10 8 20 / 60%);--pattern-strength: .07;--shadow-sm: 0 1px 2px rgb(0 0 0 / 35%);--shadow-md: 0 1px 2px rgb(0 0 0 / 45%), 0 10px 30px -14px rgb(0 0 0 / 75%);--shadow-lg: 0 2px 4px rgb(0 0 0 / 50%), 0 24px 48px -16px rgb(0 0 0 / 80%)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--color-sakura);opacity:var(--pattern-strength);-webkit-mask:var(--pattern-knit);mask:var(--pattern-knit)}.card,.tile,.nav,.import,.mats{outline:2px dashed var(--color-sakura-pale);outline-offset:-7px}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-display-weight);line-height:1.18;color:var(--color-text-strong);text-wrap:balance;margin:0 0 var(--space-3)}h1{font-size:clamp(32px,5.5vw,48px);letter-spacing:-.01em}h2{font-size:clamp(24px,3.6vw,32px)}h3{font-size:24px}h4{font-size:20px}h5{font-size:17px}h6{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-label)}p{margin:0 0 var(--space-3)}a{color:var(--color-link);text-decoration-thickness:1px;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}img{display:block;max-width:100%}figure{margin:0}code{font-size:.92em}figcaption{font-size:var(--text-xs);margin-top:var(--space-1);color:var(--color-text-label)}.text-muted{color:var(--color-text-label)}:focus{outline:none}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}::selection{background:var(--color-sakura-pale);color:var(--color-text-strong)}.skip-link{position:absolute;left:var(--space-4);top:calc(-1 * var(--space-10) * 2);z-index:100;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--color-surface);box-shadow:var(--shadow-md);color:var(--color-text-strong);font-weight:700;text-decoration:none;transition:top .15s ease}.skip-link:focus-visible{top:var(--space-4)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.hr{height:0;border:0;border-top:3px dashed var(--color-sakura);margin:var(--space-8) 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-size);cursor:pointer;text-decoration:none;font-family:var(--font-body);font-weight:700;font-size:var(--text-sm);line-height:1.2;color:var(--color-text);background:transparent;border:2px solid transparent;padding:var(--space-2) var(--space-5);border-radius:var(--radius-pill);transition:transform .12s ease,background-color .12s ease,border-color .12s ease}.btn svg{display:block}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:active:not(:disabled){transform:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary) 88%,var(--color-text-strong))}.btn-secondary{background:var(--color-surface);border-color:var(--color-kikyo-pale);color:var(--color-kikyo-ink)}.btn-secondary:hover:not(:disabled){border-color:var(--color-kikyo);background:var(--color-kikyo-pale)}.btn-ghost{color:var(--color-link);padding-inline:var(--space-3)}.btn-ghost:hover:not(:disabled){background:var(--color-overlay)}.btn-icon{width:var(--control-size);height:var(--control-size);padding:0}.btn-block{width:100%;margin-top:var(--space-2)}.btn[aria-pressed=true]{background:var(--color-kikyo-pale);border-color:var(--color-kikyo);color:var(--color-kikyo-ink)}.btn-icon svg{width:20px;height:20px}.field>label{display:block;font-size:var(--text-sm);font-weight:700;margin-bottom:var(--space-2);color:var(--color-text-label)}.input{width:100%;min-height:var(--control-size);padding:var(--space-2) var(--space-3);font:inherit;font-size:var(--text-base);color:var(--color-text);caret-color:var(--color-sakura-ink);background:var(--color-surface);border:2px solid var(--color-line);border-radius:var(--radius-sm);transition:border-color .12s ease}.input::placeholder{color:var(--color-text-label)}.input:hover{border-color:var(--color-kikyo-pale)}.input:focus-visible{border-color:var(--color-kikyo);outline:3px solid var(--color-kikyo-pale);outline-offset:0}textarea.input{min-height:110px;resize:vertical}.seg-opt input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.seg{display:inline-flex;gap:var(--space-1);padding:var(--space-1);background:var(--color-overlay);border-radius:var(--radius-pill)}.seg-opt{display:inline-flex;align-items:center;gap:var(--space-2);min-height:38px;padding:var(--space-1) var(--space-4);font-size:var(--text-sm);font-weight:700;color:var(--color-text-label);border-radius:var(--radius-pill);cursor:pointer;transition:background-color .12s ease}.seg-opt:has(input:checked){background:var(--color-surface);color:var(--color-sakura-ink);box-shadow:var(--shadow-md)}.seg-opt:not(:has(input:checked)):hover{color:var(--color-text);background:color-mix(in srgb,var(--color-surface) 55%,transparent)}.seg-opt:has(input:focus-visible){outline:3px solid var(--color-focus);outline-offset:1px}.check{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-sm)}.check .box{width:24px;height:24px;flex:none;border-radius:var(--radius-sm);border:2px solid var(--color-text-label);background:var(--color-surface);display:grid;place-items:center;color:transparent}.check:hover .box{border-color:var(--color-kikyo)}.check input{position:absolute;opacity:0;width:0;height:0}.check input:checked+.box{border-color:var(--color-wakaba-ink);background:var(--color-wakaba-pale);color:var(--color-wakaba-ink)}.check input:focus-visible+.box{outline:3px solid var(--color-focus);outline-offset:2px}.check .box svg{width:15px;height:15px}.card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-line);box-shadow:var(--shadow-md)}.card-kicker{font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-sakura-ink)}.card-title{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:19px;line-height:1.25;color:var(--color-text-strong)}.card-body{margin:0;font-size:var(--text-sm);flex:1}.card-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-label)}.tag{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-overlay);color:var(--color-text)}.tag-sakura{background:var(--color-sakura-pale);color:var(--color-sakura-ink)}.tag-kikyo{background:var(--color-kikyo-pale);color:var(--color-kikyo-ink)}.tag-wakaba{background:var(--color-wakaba-pale);color:var(--color-wakaba-ink)}.tag-yamabuki{background:var(--color-yamabuki-pale);color:var(--color-yamabuki-ink)}.tag-asagi{background:var(--color-asagi-pale);color:var(--color-asagi-ink)}.nav{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4)}.nav-brand{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:20px;color:var(--color-text-strong);text-decoration:none;margin-right:auto}.nav a{text-decoration:none}.nav-links a{color:var(--color-text);font-size:var(--text-sm);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill)}.nav-links a:hover{background:var(--color-overlay)}.nav-links a[aria-current=page]{background:var(--color-sakura-pale);color:var(--color-sakura-ink)}.table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-sm);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:var(--shadow-md);overflow:hidden}.table th{text-align:left;padding:var(--space-3) var(--space-4)}.table thead th{font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-label);background:var(--color-overlay)}.table tbody>tr>*{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-line);vertical-align:top}.dialog{width:min(480px,100%);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-line);box-shadow:var(--shadow-lg)}.dialog-title{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:22px;margin:0}.dialog-body{font-size:var(--text-base);margin:0}.dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}:root{--gutter: 24px}.wrap{display:block;max-width:1100px;margin:0 auto;padding:0 var(--gutter)}.nav{display:flex;flex-wrap:wrap;width:min(calc(1100px - 2 * var(--gutter)),calc(100% - 2 * var(--nav-inset, var(--gutter))));margin:var(--space-4) auto var(--space-2);padding:var(--space-3) var(--space-5);gap:var(--space-3) var(--space-5);background:color-mix(in srgb,var(--color-surface) 88%,transparent);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.nav-brand{display:inline-flex;align-items:center;gap:var(--space-2);margin-right:0}.brand-mark{flex:none;fill:none;stroke-linecap:round}.bm-ball{fill:var(--color-sakura)}.bm-yarn{stroke:var(--color-surface);stroke-width:3;opacity:.75}.bm-hook{stroke:var(--color-kikyo);stroke-width:5}.nav-links{display:flex;flex-wrap:wrap;align-items:center;flex:1 1 auto;gap:var(--space-1) var(--space-1);line-height:1.75}.nav-links a{white-space:nowrap}.tools{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.tool-slot{display:flex;width:var(--control-size);height:var(--control-size);flex:none}main{padding-bottom:var(--space-10)}.site-footer{display:block;max-width:1100px;margin:0 auto var(--space-8);padding:0 var(--gutter);text-align:center}.site-footer a{color:var(--color-text-label)}@media(max-width:640px){.wrap{padding-inline:calc(var(--gutter) * .75 + env(safe-area-inset-left,0px))}.nav{--nav-inset: calc(var(--gutter) * .5);padding-inline:var(--space-4)}.nav-links{order:3;flex-basis:100%;min-height:2lh}main{padding-bottom:var(--space-8)}}section+section{margin-top:var(--space-8)}h6.kicker{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3)}h6.kicker b{color:var(--color-sakura-ink);font-weight:inherit}.import{margin:var(--space-4) 0 var(--space-6);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.import>summary{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);padding:var(--space-4) var(--space-5);cursor:pointer;list-style:none;font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:18px;color:var(--color-text-strong)}.import>summary::-webkit-details-marker{display:none}.import>summary .chev{margin-left:auto;display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-pill);background:var(--color-sakura-pale);color:var(--color-sakura-ink);transition:transform .18s ease}.import[open]>summary .chev{transform:rotate(180deg)}.import>summary:hover{background:var(--color-overlay)}.import>summary .state{font-family:var(--font-body);font-weight:700;font-size:var(--text-xs);padding:2px var(--space-3);border-radius:var(--radius-pill);background:var(--color-wakaba-pale);color:var(--color-wakaba-ink)}.import-body{display:block;padding:0 var(--space-5) var(--space-5)}.import-body .field,.import-body textarea.src-input{width:100%}textarea.src-input{min-height:180px;line-height:1.55;font-size:var(--text-sm);background:var(--color-bg)}.import-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.hint{font-size:var(--text-sm);color:var(--color-text-label);margin:var(--space-3) 0 0}.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);text-align:center;min-height:170px;padding:var(--space-4);border:2px dashed var(--color-line);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-label);font-size:var(--text-sm)}.drop:hover,.drop.over{border-color:var(--color-sakura);background:var(--color-sakura-pale)}.drop svg{width:24px;height:24px;color:var(--color-sakura-ink)}.drop img{max-height:120px;border-radius:var(--radius-sm)}.reader,.hero{position:relative;padding:var(--space-8);border-radius:var(--radius-lg);border:1px solid var(--color-line);box-shadow:var(--shadow-md);background:linear-gradient(135deg,color-mix(in srgb,var(--color-sakura-pale) 80%,var(--color-surface)),var(--color-surface) 45%,color-mix(in srgb,var(--color-kikyo-pale) 70%,var(--color-surface)));overflow:hidden}.reader:before,.hero:before{content:"";position:absolute;right:var(--space-3);bottom:var(--space-2);width:220px;height:184px;background:url(/illustrations/pelote.svg) no-repeat right bottom / contain;pointer-events:none}.reader{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6)}.reader>*{position:relative}.pieces{display:flex;gap:var(--space-2);align-items:center;margin-bottom:var(--space-5);overflow-x:auto;padding:2px 2px var(--space-1)}.pieces .seg{flex:none;max-width:100%}.pieces .seg-opt{white-space:nowrap}.stepmeta{display:flex;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4)}.steplabel{font-size:var(--text-sm);font-weight:700;letter-spacing:.04em;padding:var(--space-1) var(--space-4);border-radius:var(--radius-pill);background:var(--color-sakura-pale);color:var(--color-sakura-ink)}.piecename{font-size:var(--text-sm);font-weight:700;padding:var(--space-1) var(--space-4);border-radius:var(--radius-pill);background:var(--color-kikyo-pale);color:var(--color-kikyo-ink)}.abbr-toggle{order:3;margin-left:auto}.note{display:flex;gap:var(--space-2);font-size:var(--text-base);line-height:1.55;border-left:4px solid var(--color-asagi);background:color-mix(in srgb,var(--color-asagi-pale) 70%,transparent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-5);max-width:60ch}.step-body{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:var(--reader-step);line-height:1.3;color:var(--color-text-strong);text-wrap:pretty;margin:0;max-width:28ch;min-height:calc(var(--reader-step) * 2.2)}.step-body.empty{font-size:var(--reader-step-sm);color:var(--color-text-label);max-width:34ch;font-weight:400;font-family:var(--font-body)}.step-body.term-try{max-width:none;min-height:0;margin-top:var(--space-3);font-size:var(--reader-step-sm)}.term-section{margin-top:var(--space-8)}.term-links{display:flex;flex-wrap:wrap;gap:var(--space-2);list-style:none;padding:0;margin:var(--space-3) 0 0}.term-links a{display:inline-block;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-surface);border:1px solid var(--color-line);text-decoration:none;font-weight:700}.term-links a:hover{background:var(--color-kikyo-pale)}.abbr{color:inherit;text-decoration:underline wavy var(--color-sakura);text-decoration-thickness:1.5px;text-underline-offset:.22em;cursor:help}.abbr:hover{color:var(--color-sakura-ink)}.stack>*+*{margin-top:var(--space-4)}.navrow{display:flex;gap:var(--space-3);margin-top:var(--space-8);flex-wrap:wrap}.btn-step{min-height:64px;padding-inline:var(--space-6);font-size:18px;flex:1 1 150px;max-width:280px}.btn-step svg{width:22px;height:22px}.btn-step.next{flex-grow:1.4}.meter{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4);align-items:stretch;margin-top:var(--space-6)}.tile{--tile-color: var(--color-kikyo);--tile-pale: var(--color-kikyo-pale);--tile-ink: var(--color-kikyo-ink);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-line);border-top:6px solid var(--tile-color);box-shadow:var(--shadow-md)}.meter>.tile:nth-child(3n+1){--tile-color: var(--color-sakura);--tile-pale: var(--color-sakura-pale);--tile-ink: var(--color-sakura-ink)}.meter>.tile:nth-child(3n+2){--tile-color: var(--color-wakaba);--tile-pale: var(--color-wakaba-pale);--tile-ink: var(--color-wakaba-ink)}.meter>.tile:nth-child(3n+3){--tile-color: var(--color-asagi);--tile-pale: var(--color-asagi-pale);--tile-ink: var(--color-asagi-ink)}.tile h6{margin:0;font-size:var(--text-xs);letter-spacing:.12em;color:var(--tile-ink)}.tile .big{font-family:var(--font-display);font-weight:var(--font-display-weight);font-size:40px;line-height:1;color:var(--color-text-strong);font-variant-numeric:tabular-nums}.tile .big .sub{font-size:20px;color:var(--color-text-label)}.tile .row{display:flex;align-items:center;gap:var(--space-2);margin-top:auto;flex-wrap:wrap}.tile .row.tight{gap:var(--space-2)}.tile .btn-secondary{border-color:var(--tile-pale);color:var(--tile-ink)}.tile .btn-secondary:hover:not(:disabled),.tile .btn[aria-pressed=true]{border-color:var(--tile-color);background:var(--tile-pale);color:var(--tile-ink)}.progress{height:10px;border-radius:var(--radius-pill);background:var(--color-overlay);overflow:hidden}.progress i{display:block;height:100%;border-radius:var(--radius-pill);background:repeating-linear-gradient(-55deg,var(--color-sakura) 0 6px,var(--color-sakura-ink) 6px 8px);transition:width .3s ease}.reps{font-variant-numeric:tabular-nums}.waitlist{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-3);text-align:center;font-size:var(--text-sm);color:var(--color-text-label)}.waitlist a{color:var(--color-kikyo-ink);font-weight:600}.mats{margin-top:var(--space-6);padding:var(--space-2) var(--space-5);background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-md)}.mats>summary{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;list-style:none;font-size:var(--text-sm);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-yamabuki-ink);padding:var(--space-2) 0}.mats>summary::-webkit-details-marker{display:none}.mats[open]>summary fil-icon{transform:rotate(180deg)}.mats ul{margin:var(--space-2) 0 var(--space-3);padding-left:var(--space-6);columns:2;column-gap:var(--space-8);font-size:var(--text-base);line-height:1.6;max-width:70ch}.mats li{break-inside:avoid;margin-bottom:var(--space-1)}.mats li::marker{color:var(--color-yamabuki)}.tip{position:fixed;z-index:60;max-width:min(300px,80vw);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-tip-bg);color:var(--color-tip-text);box-shadow:var(--shadow-lg);font-size:var(--text-sm);line-height:1.45;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease}.tip.on{opacity:1;transform:none}.tip b{color:var(--color-tip-accent);font-weight:700}.dialog.zoom{width:min(920px,100%);gap:var(--space-2)}.prose{max-width:70ch}.prose h2{margin-top:var(--space-10)}.prose ul{padding-left:var(--space-6)}.prose li::marker,.tuto li::marker{color:var(--color-sakura)}.hero{margin:var(--space-4) 0 var(--space-8)}.hero>*{position:relative}.hero>:last-child{margin-bottom:0}.hero p{max-width:60ch;font-size:19px}.home-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,250px);align-items:center;gap:var(--space-2) var(--space-6);padding-block:var(--space-5)}.home-hero h1{font-size:clamp(24px,4vw,38px)}.home-hero p{font-size:var(--text-base)}.home-hero:before{content:none}.home-hero img{width:100%;height:auto}.cta-row{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-6)}.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-4)}.grid-cards>.card{border-top:6px solid var(--color-sakura)}.grid-cards>.card:nth-child(5n+2){border-top-color:var(--color-kikyo)}.grid-cards>.card:nth-child(5n+3){border-top-color:var(--color-asagi)}.grid-cards>.card:nth-child(5n+4){border-top-color:var(--color-wakaba)}.grid-cards>.card:nth-child(5n+5){border-top-color:var(--color-yamabuki)}.card-title a{color:var(--color-text-strong);text-decoration-color:var(--color-sakura)}@media(max-width:820px){.reader:before,.hero:before{width:130px;opacity:.8}.home-hero{display:block}.home-hero img{position:absolute;top:var(--space-4);right:var(--space-4);width:104px}.home-hero h1{padding-right:108px}.reader{padding:var(--space-6) var(--space-5)}.step-body{max-width:none}.mats ul{columns:1}.btn-step{max-width:none}}@media(max-width:520px){.reader,.hero{padding:var(--space-5) var(--space-4)}.reader:before,.hero:before{content:none}.btn-step{min-height:68px}.tile .big{font-size:34px}}.step-tip{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);border-left:4px solid var(--color-yamabuki);background:color-mix(in srgb,var(--color-yamabuki-pale) 75%,transparent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--text-base);line-height:1.5;max-width:60ch}.warn{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);border-left:4px solid var(--color-momiji);background:var(--color-momiji-pale)}.steps>li+li{margin-top:var(--space-5)}.tuto h2{margin-top:var(--space-8)}.tuto ul{padding-left:var(--space-5);line-height:1.6}.tuto li+li{margin-top:var(--space-2)}.prompt-box{margin:var(--space-4) 0}.prompt-box pre{max-height:18rem;overflow:auto;padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-line);background:var(--color-overlay);font-size:.8125rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.prompt-box button{margin-top:var(--space-3)}.projects-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.projects-list{display:grid;gap:var(--space-3);padding:0;margin:0;list-style:none}.projects-list .card{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);border-left:6px solid var(--color-sakura)}.import-host{display:block}.glossary-filter{max-width:var(--glossary-filter-width)}.glossary-table-scroll{margin-top:var(--space-6);overflow-x:auto}.glossary-table-scroll .glossary-table{margin-top:0}@media screen{.print-only{display:none}}.ds-toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--space-4)}.ds-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-3)}.ds-swatch{display:flex;flex-direction:column;gap:var(--space-1);font-size:12px}.ds-caption{font-size:11px;margin:0 0 var(--space-2);color:var(--color-text-label)}.ds-card-scroll{overflow-x:auto}.ds-swatch-chip{height:56px;border-radius:var(--radius-md);border:1px solid var(--color-line)}.ds-radius-box{width:64px;height:64px;background:var(--color-surface);box-shadow:var(--shadow-sm)}.ds-shadow-box{height:64px;border-radius:var(--radius-md);background:var(--color-surface)}.ds-type-row{display:flex;align-items:baseline;gap:var(--space-3);flex-wrap:wrap}.ds-scale-row{display:flex;align-items:center;gap:var(--space-3)}.ds-bar{height:14px;background:linear-gradient(to right,var(--color-sakura),var(--color-kikyo));border-radius:var(--radius-pill)}.ds-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:var(--space-3);text-align:center;font-size:12px}.ds-icon-grid fil-icon{font-size:28px;color:var(--color-sakura-ink)}
