:root{color-scheme:light;--bg: #f6f4ef;--bg-2: #efece5;--surface: #fffefb;--surface-2: #f7f5f0;--line: #e4e0d7;--line-2: #d6d1c6;--ink: #1c1e21;--ink-2: #4f5358;--ink-3: #868a8f;--brand: #2f54c9;--brand-2: #2443a6;--on-brand: #fff;--brand-dark: #8ba3f4;--brand-dark-2: #a9bbf7;--on-brand-dark: #0f1430;--accent: var(--brand);--accent-2: var(--brand-2);--accent-soft: color-mix(in srgb, var(--brand) 9%, transparent);--accent-line: color-mix(in srgb, var(--brand) 32%, transparent);--on-accent: var(--on-brand);--desk: #e9e6de;--desk-dot: rgba(60, 50, 30, .13);--sheet-shadow: 0 1px 2px rgba(40, 32, 16, .08), 0 8px 24px -6px rgba(40, 32, 16, .16), 0 30px 60px -20px rgba(40, 32, 16, .18);--sheet-bg: #fff;--sheet-filter: none;--card-shadow: 0 1px 2px rgba(40, 32, 16, .05), 0 6px 18px -8px rgba(40, 32, 16, .14);--pop-shadow: 0 10px 40px -10px rgba(20, 16, 8, .28), 0 2px 6px rgba(20, 16, 8, .08);--font-display: "Instrument Serif", "Iowan Old Style", Georgia, serif;--font: "Geist", ui-sans-serif, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--r-sm: 7px;--r: 10px;--r-lg: 16px;--header-h: 64px;--foot-h: 34px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #141517;--bg-2: #1a1b1e;--surface: #1c1d20;--surface-2: #222326;--line: #2c2d31;--line-2: #3a3b40;--ink: #eceae5;--ink-2: #b4b2ac;--ink-3: #7f7e79;--accent: var(--brand-dark);--accent-2: var(--brand-dark-2);--accent-soft: color-mix(in srgb, var(--brand-dark) 12%, transparent);--accent-line: color-mix(in srgb, var(--brand-dark) 38%, transparent);--on-accent: var(--on-brand-dark);--desk: #0f1012;--desk-dot: rgba(255, 255, 255, .07);--sheet-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 20px 50px -10px rgba(0, 0, 0, .6);--sheet-bg: #1a1a1a;--sheet-filter: invert(.9) hue-rotate(180deg);--card-shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 20px -10px rgba(0, 0, 0, .5);--pop-shadow: 0 16px 50px -10px rgba(0, 0, 0, .7)}}:root[data-theme=dark]{color-scheme:dark;--bg: #141517;--bg-2: #1a1b1e;--surface: #1c1d20;--surface-2: #222326;--line: #2c2d31;--line-2: #3a3b40;--ink: #eceae5;--ink-2: #b4b2ac;--ink-3: #7f7e79;--accent: var(--brand-dark);--accent-2: var(--brand-dark-2);--accent-soft: color-mix(in srgb, var(--brand-dark) 12%, transparent);--accent-line: color-mix(in srgb, var(--brand-dark) 38%, transparent);--on-accent: var(--on-brand-dark);--desk: #0f1012;--desk-dot: rgba(255, 255, 255, .07);--sheet-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 20px 50px -10px rgba(0, 0, 0, .6);--sheet-bg: #1a1a1a;--sheet-filter: invert(.9) hue-rotate(180deg);--card-shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 20px -10px rgba(0, 0, 0, .5);--pop-shadow: 0 16px 50px -10px rgba(0, 0, 0, .7)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.55 var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%}a{color:inherit}button,input,select{font:inherit;color:inherit}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.wrap{width:min(1180px,100% - 32px);margin-inline:auto}.wrap-wide{width:min(1480px,100% - 32px);margin-inline:auto}.muted{color:var(--ink-3)}.eyebrow{font:500 11px/1.4 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);margin:0 0 12px}.site-header{position:sticky;top:0;z-index:40;height:var(--header-h);background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;gap:28px;width:min(1480px,100% - 32px)}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none}.brand .mark{width:28px;height:28px}.wordmark{font-weight:600;font-size:16.5px;letter-spacing:-.015em;white-space:nowrap}.wordmark em{font:italic 400 1.28em/1 var(--font-display);color:var(--accent);margin-left:.18em;letter-spacing:0}.nav{display:flex;gap:4px;margin-left:auto}.nav a{text-decoration:none;color:var(--ink-2);padding:7px 12px;border-radius:999px;font-size:14px;transition:background .15s,color .15s}.nav a:hover{background:var(--bg-2);color:var(--ink)}.header-inner .theme-switch+.theme-switch{margin-left:-18px}.theme-switch{display:flex;gap:2px;padding:3px;border-radius:999px;border:1px solid var(--line);background:var(--surface)}.theme-switch button{width:30px;height:28px;border:0;border-radius:999px;background:none;display:grid;place-items:center;cursor:pointer;color:var(--ink-3)}.theme-switch button:hover{color:var(--ink)}.theme-switch svg{width:15px;height:15px}:root[data-theme-pref=light] [data-theme-set=light],:root[data-theme-pref=dark] [data-theme-set=dark],:root[data-theme-pref=auto] [data-theme-set=auto]{background:var(--bg-2);color:var(--ink)}.page-title{flex:1;min-width:0;display:flex;align-items:baseline;justify-content:center;gap:8px}.page-title .crumbs{margin:0;flex:none}.page-title h1{margin:0;min-width:0;font:400 25px/1.2 var(--font-display);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.intro{padding-top:44px}.intro .eyebrow{margin-bottom:8px}.width-switch{display:none}@media(min-width:1560px){.width-switch{display:flex}}:root[data-width=narrow] [data-width-set=narrow],:root[data-width=full] [data-width-set=full]{background:var(--bg-2);color:var(--ink)}:root[data-width=full] .wrap-wide,:root[data-width=full] .header-inner:has(#width){width:calc(100% - 32px)}:root[data-width=full] body:has(#width) .foot-bar{padding-inline:16px}.field{display:grid;gap:5px;min-width:0}.field-label{font-size:12.5px;color:var(--ink-2);font-weight:500}.hint{font-size:12px;color:var(--ink-3);margin:0;line-height:1.4}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.input-wrap{position:relative;display:block}.input-wrap i{position:absolute;right:10px;top:50%;transform:translateY(-50%);font:400 12px var(--mono);color:var(--ink-3);pointer-events:none;font-style:normal}input[type=number],input[type=text],input[type=search],select{width:100%;height:34px;padding:0 11px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);outline:none;transition:border-color .15s,box-shadow .15s;font-size:14px;font-variant-numeric:tabular-nums}.input-wrap input{padding-right:40px}.input-wrap input:disabled{color:var(--ink-3);cursor:default}.clearable input{padding-right:64px}.clear-btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);padding:4px 9px;border:0;border-radius:5px;background:var(--bg-2);color:var(--ink-2);font:inherit;font-size:12px;font-weight:500;cursor:pointer}.clear-btn:hover{color:var(--ink);background:var(--line)}.clearable input:placeholder-shown+.clear-btn{display:none}input[type=number]{-moz-appearance:textfield;appearance:textfield}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input:hover,select:hover{border-color:var(--ink-3)}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.stepper{display:flex;align-items:center;height:34px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);transition:border-color .15s,box-shadow .15s}.stepper:hover{border-color:var(--ink-3)}.stepper:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.stepper input[type=number],.stepper input[type=number]:hover,.stepper input[type=number]:focus{flex:1;min-width:0;height:100%;padding:0 0 0 11px;border:0;background:none;box-shadow:none}.stepper i{position:static;transform:none;padding:0 6px 0 4px;flex:none}.nudge{display:flex;flex:none;margin-right:3px;border-radius:5px;background:var(--bg-2);opacity:.55;transition:opacity .15s}.stepper:hover .nudge,.stepper:focus-within .nudge{opacity:1}.nudge button{width:20px;height:24px;padding:0;border:0;background:none;color:var(--ink-2);cursor:pointer;display:grid;place-items:center;border-radius:5px;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.nudge button+button{box-shadow:-1px 0 0 var(--line-2);border-radius:0 5px 5px 0}.nudge button:first-child{border-radius:5px 0 0 5px}.nudge button svg{width:10px;height:10px}.nudge button:hover{color:var(--ink);background:var(--line)}.nudge button:active{background:var(--line-2)}.nudge button:disabled{color:var(--ink-3);opacity:.4;cursor:default;background:none}@media(pointer:coarse){.stepper{height:42px}.stepper input[type=number]{text-align:right;padding:0 3px 0 4px;font-size:16px}.stepper i{padding:0 8px 0 0;font-size:11px}.nudge{display:contents}.nudge button{width:38px;height:100%;background:none;color:var(--ink-2);border-radius:0;box-shadow:none}.nudge button svg{width:13px;height:13px}.nudge [data-nudge="-1"]{order:-1;border-right:1px solid var(--line);border-radius:var(--r-sm) 0 0 var(--r-sm)}.nudge [data-nudge="1"]{border-left:1px solid var(--line);border-radius:0 var(--r-sm) var(--r-sm) 0}.nudge button+button{box-shadow:none}.nudge button:hover{background:none}.nudge button:active{background:var(--bg-2)}.row3{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}.select-wrap{position:relative;display:block}.select-wrap:after{content:"";position:absolute;right:13px;top:50%;width:7px;height:7px;margin-top:-5px;border-right:1.5px solid var(--ink-3);border-bottom:1.5px solid var(--ink-3);transform:rotate(45deg);pointer-events:none}select{appearance:none;padding-right:32px;cursor:pointer}.seg{display:flex;background:var(--bg-2);border-radius:var(--r-sm);padding:3px;gap:2px}.seg label{position:relative;flex:1;min-width:0}.seg.two{display:grid;grid-template-columns:1fr 1fr}.seg input{position:absolute;opacity:0;pointer-events:none}.seg span{display:block;text-align:center;padding:6px;border-radius:5px;font-size:12.5px;font-weight:500;color:var(--ink-2);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .15s,color .15s}.seg span:hover{color:var(--ink)}.seg input:checked+span{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #00000014,0 0 0 1px var(--line)}.seg input:focus-visible+span{outline:2px solid var(--accent)}.toggle{position:relative;display:flex;align-items:center;gap:10px;cursor:pointer;font-size:13.5px}.toggle input{position:absolute;opacity:0;pointer-events:none}.switch{width:32px;height:19px;border-radius:999px;background:var(--line-2);position:relative;flex:none;transition:background .18s}.switch:after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:transform .18s}.toggle input:checked+.switch{background:var(--accent)}.toggle input:checked+.switch:after{transform:translate(13px)}.toggle input:focus-visible+.switch{outline:2px solid var(--accent);outline-offset:2px}.toggle-text{display:grid;line-height:1.3}.toggle-text small{color:var(--ink-3);font-size:12px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--line-2);background:var(--surface);border-radius:999px;padding:4px 11px;font-size:12.5px;cursor:pointer;color:var(--ink-2);transition:all .15s;font-variant-numeric:tabular-nums}.chip:hover{border-color:var(--ink-3);color:var(--ink)}.chip.on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.swatches{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.swatch{aspect-ratio:1;border-radius:8px;border:1px solid var(--line);padding:0;cursor:pointer;overflow:hidden;display:grid;grid-template-rows:1fr 1fr;background:var(--surface);transition:transform .12s}.swatch:hover{transform:translateY(-1px)}.swatch i{display:block}.swatch.on{outline:2px solid var(--accent);outline-offset:2px}.color-field{display:flex;align-items:center;gap:9px;height:34px;padding:0 10px 0 5px;border:1px solid var(--line-2);border-radius:var(--r-sm);cursor:pointer;font-size:13px;min-width:0}.color-field:hover{border-color:var(--ink-3)}.color-field input{width:28px;height:28px;border:0;padding:0;background:none;cursor:pointer;flex:none}.color-field input::-webkit-color-swatch-wrapper{padding:0}.color-field input::-webkit-color-swatch{border:1px solid rgba(0,0,0,.1);border-radius:5px}.color-field input::-moz-color-swatch{border:1px solid rgba(0,0,0,.1);border-radius:5px}.color-field span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.color-field code{font:11px var(--mono);color:var(--ink-3)}.icon-btn{width:32px;height:32px;display:grid;place-items:center;background:none;border:0;border-radius:6px;cursor:pointer;color:var(--ink-3);flex:none}.icon-btn:hover{background:var(--bg-2);color:var(--ink)}.icon-btn svg{width:15px;height:15px}.link-btn{background:none;border:0;padding:0;color:var(--ink-3);font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.link-btn:hover{color:var(--ink)}.btn{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px;border-radius:var(--r-sm);border:1px solid transparent;font-weight:500;font-size:14px;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,transform .08s;text-decoration:none;background:none}.btn:active{transform:translateY(1px)}.btn svg{width:16px;height:16px;flex:none}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:inset 0 1px #ffffff24,0 1px 2px #141e5040}.btn-primary:hover{background:var(--accent-2)}.btn-quiet{border-color:var(--line-2);background:var(--surface)}.btn-quiet:hover{border-color:var(--ink-3)}.btn-ghost{color:var(--ink-2);padding:0 10px}.btn-ghost:hover{background:var(--bg-2);color:var(--ink)}.btn-small{height:38px;padding:0 14px;background:var(--ink);color:var(--bg)}.btn-small:hover{opacity:.88}.more{position:relative}.more>summary{list-style:none}.more>summary::-webkit-details-marker{display:none}.menu{position:absolute;right:0;top:calc(100% + 6px);z-index:10;min-width:210px;padding:5px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--pop-shadow)}.menu button{display:flex;justify-content:space-between;align-items:baseline;gap:12px;width:100%;text-align:left;padding:9px 11px;border:0;background:none;border-radius:6px;cursor:pointer;font-size:14px}.menu button:hover{background:var(--bg-2)}.menu small{color:var(--ink-3);font-size:12px}@keyframes rise{0%{opacity:0;transform:translateY(8px) scale(.99)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}body{padding-bottom:var(--foot-h)}.foot-bar{position:fixed;inset:auto 0 0;z-index:20;height:var(--foot-h);display:flex;align-items:center;gap:20px;padding:0 max(16px,(100vw - 1480px) / 2);font-size:12px;color:var(--ink-3);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--line)}.foot-dad{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none;opacity:.7;transition:opacity .2s}.foot-dad img{width:18px;height:auto}.foot-dad .on-dark{display:none}:root[data-theme=dark] .foot-dad .on-dark{display:block}:root[data-theme=dark] .foot-dad .on-light{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .foot-dad .on-dark{display:block}:root:not([data-theme=light]) .foot-dad .on-light{display:none}}.foot-dad span{letter-spacing:.01em}.foot-dad:hover{opacity:1}:root:lang(ja){--font: "Geist", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic UI", Meiryo, sans-serif;--font-display: "Instrument Serif", "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif}:root:lang(zh){--font: "Geist", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-display: "Instrument Serif", "Songti SC", "Noto Serif SC", SimSun, serif}:root:lang(hi){--font: "Geist", "Noto Sans Devanagari", "Kohinoor Devanagari", "Nirmala UI", "Mangal", sans-serif;--font-display: "Instrument Serif", "Noto Serif Devanagari", "Devanagari Sangam MN", "Nirmala UI", serif}:root:lang(ko){--font: "Geist", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", sans-serif;--font-display: "Instrument Serif", "AppleMyungjo", "Noto Serif KR", "Batang", serif}:root:is(:lang(ja),:lang(zh),:lang(ko),:lang(hi)) .page-title h1{font-weight:500;letter-spacing:0}:root:is(:lang(ja),:lang(zh),:lang(ko),:lang(hi)) em{font-style:normal}.lang-menu{position:relative}.lang-btn{display:flex;align-items:center;gap:5px;height:36px;padding:0 10px;border-radius:999px;cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:500 12px var(--mono);list-style:none}.lang-btn::-webkit-details-marker{display:none}.lang-btn:hover{color:var(--ink)}.lang-btn svg{width:15px;height:15px}.lang-menu .menu{min-width:180px;display:grid}.lang-menu .menu a{padding:8px 11px;border-radius:6px;text-decoration:none;font-size:14px;color:var(--ink-2)}.lang-menu .menu a:hover,.lang-menu .menu a:focus-visible{background:var(--bg-2);color:var(--ink)}.lang-menu .menu a[aria-current]{color:var(--ink);font-weight:600}.lang-menu .menu a[aria-current]:after{content:" ✓";color:var(--accent)}kbd{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:6px;font:500 11.5px/1 var(--mono);color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line-2);box-shadow:inset 0 -1px 0 var(--line-2)}.kbd-keys{display:inline-flex;align-items:center;gap:3px;flex:none}.kbd-keys i{font-style:normal;font-size:11px;color:var(--ink-3);margin:0 3px}.kbd-keys [data-dir]{display:inline-flex;gap:3px}.kbd-keys [data-dir]+[data-dir]{margin-left:2px}.kbd-dialog{width:min(880px,calc(100% - 32px));max-height:min(720px,calc(100dvh - 64px));padding:0;margin:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--ink);box-shadow:var(--pop-shadow)}.kbd-dialog[open]{display:flex;flex-direction:column;animation:rise .2s ease}.kbd-dialog::backdrop{background:#14120e61;backdrop-filter:blur(3px)}.kbd-head{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line)}.kbd-search{width:16px;height:16px;color:var(--ink-3);flex:none}.kbd-q{flex:1;min-width:0;border:0;outline:0;background:none;font-size:16px;padding:4px 0}.kbd-q::-webkit-search-cancel-button{display:none}.kbd-title{margin:0;font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}.kbd-list{overflow-y:auto;padding:6px 12px 14px;columns:2 340px;column-gap:24px;scrollbar-width:thin}.kbd-group{break-inside:avoid;padding-top:10px}.kbd-group h3{margin:0 8px 4px;font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.kbd-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:6px 8px;min-height:36px;border:0;border-radius:8px;background:none;text-align:left;cursor:pointer;font-size:14px;color:var(--ink)}.kbd-row:hover,.kbd-row:focus-visible{background:var(--bg-2);outline:none}.kbd-row:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-line)}.kbd-label mark{background:none;color:var(--accent);font-weight:600}.kbd-none{padding:28px 8px;color:var(--ink-3);text-align:center;column-span:all}.kbd-foot{display:flex;gap:18px;padding:10px 18px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-3)}.kbd-foot span{display:inline-flex;align-items:center;gap:4px}.kbd-foot kbd{min-width:20px;height:20px;font-size:11px}.kbd-dock{display:none}@media(min-width:861px)and (hover:hover)and (pointer:fine){.kbd-dock{display:block;position:sticky;bottom:0;z-index:3;margin-top:auto;padding:12px;pointer-events:none}.kbd-dock>*{pointer-events:auto}.kbd-card:not([hidden]){display:block;width:min(300px,100%);padding:10px 10px 8px;border:1px solid var(--line);border-radius:var(--r);font-size:13px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(10px);box-shadow:var(--pop-shadow)}.kbd-fab:not([hidden]){display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-3);cursor:pointer;box-shadow:var(--card-shadow)}.kbd-fab:hover{color:var(--ink)}.kbd-fab svg{width:18px;height:18px}}.kbd-card[hidden],.kbd-fab[hidden]{display:none}.kbd-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px 4px}.kbd-card-head b{font-weight:600;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbd-card-head .icon-btn{width:26px;height:26px}.kbd-card ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:1px}.kbd-card li{display:flex;align-items:center;gap:10px;padding:3px 4px;border-radius:6px;cursor:pointer;color:var(--ink-2)}.kbd-card li:hover{background:var(--bg-2);color:var(--ink)}.kbd-card li>span:last-child{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbd-card .kbd-keys{min-width:64px}.kbd-card kbd{min-width:20px;height:20px;font-size:11px;padding:0 5px}.kbd-all{display:flex;align-items:center;gap:10px;width:100%;margin-top:4px;padding:6px 4px 2px;border:0;border-top:1px solid var(--line);background:none;cursor:pointer;color:var(--ink-3);font-size:12.5px;text-align:left}.kbd-all .kbd-keys{min-width:64px}.kbd-all:hover{color:var(--ink)}@keyframes kbd-flash{0%{box-shadow:0 0 0 3px var(--accent-line);background:var(--accent-soft)}to{box-shadow:0 0 0 3px transparent;background:transparent}}.kbd-flash{animation:kbd-flash .9s ease;border-radius:var(--r-sm)}.kbd-head .kbd-q{border:0;box-shadow:none;background:none;height:auto;padding:4px 0;outline:0}.kbd-keys [data-dir]+[data-dir]:before{content:"/";color:var(--ink-3);font-size:11px;margin:0 2px 0 0}.desk-wrap{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.desk .sheet{transition:width .18s ease}.desk.zoomed{place-items:start center}.desk{touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none}.desk.can-pan{cursor:grab}.desk.panning{cursor:grabbing;user-select:none}.desk.live .sheet{transition:none}.desk.overlay-scroll{scrollbar-width:none}.desk.overlay-scroll::-webkit-scrollbar{display:none}.sb{position:absolute;z-index:1}.sb-thumb{position:absolute;border-radius:999px;background:color-mix(in oklab,var(--ink) 32%,transparent);transition:clip-path .16s ease,background .16s ease,width .16s ease,height .16s ease;touch-action:none}.sb-y .sb-thumb{right:2px;width:7px;clip-path:inset(var(--clip) 0 round 999px)}.sb-x .sb-thumb{bottom:2px;height:7px;clip-path:inset(0 var(--clip) round 999px)}.sb-y.active .sb-thumb{width:10px}.sb-x.active .sb-thumb{height:10px}.sb.active .sb-thumb{clip-path:inset(0 round 999px);background:color-mix(in oklab,var(--ink) 48%,transparent)}.zoom{position:absolute;top:10px;right:22px;z-index:2;display:flex;align-items:center;gap:2px;padding:4px;background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:999px;box-shadow:var(--card-shadow)}.zoom button{height:30px;min-width:30px;border:0;background:none;border-radius:999px;cursor:pointer;font-size:16px;color:var(--ink-2);padding:0 8px}.zoom button:hover{background:var(--bg-2);color:var(--ink)}.zoom .zoom-mode{font-size:12px;font-weight:500}.zoom .zoom-mode.on,.zoom .zoom-true.on{background:var(--ink);color:var(--surface)}.zoom .zoom-label{min-width:42px;text-align:center;color:var(--ink-2)}.zoom .zoom-label,.zoom .zoom-true{font:500 12px var(--mono)}@media(max-width:860px){.zoom{right:10px}.zoom .zoom-true{display:none}}:root{--brand: #c8462f;--brand-2: #a93822;--on-brand: #fff;--brand-dark: #f08a72;--brand-dark-2: #f5a592;--on-brand-dark: #2a0f08;--logo-tile: var(--accent);--logo-ink: #fff;--lib-w: 340px;--insp-w: 312px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--logo-ink: #1c1d20}}:root[data-theme=dark]{--logo-ink: #1c1d20}.page-title{flex:1;min-width:0;display:flex;justify-content:center}.page-title h1{margin:0;min-width:0;font:400 24px/1.2 var(--font-display);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-title h1 em{font-style:italic;color:var(--accent)}.cp{display:grid;grid-template-columns:var(--lib-w) minmax(0,1fr) var(--insp-w);height:calc(100dvh - var(--header-h) - var(--foot-h));width:min(1480px,100% - 32px);margin:14px auto 0;padding-bottom:14px;height:calc(100dvh - var(--header-h) - var(--foot-h) - 14px)}:root[data-width=full] .cp{width:calc(100% - 32px)}.cp>*{min-height:0;background:var(--surface);border:1px solid var(--line)}.library{border-radius:var(--r-lg) 0 0 var(--r-lg);display:flex;flex-direction:column}.stage{border-inline:0;display:flex;flex-direction:column}.inspector{border-radius:0 var(--r-lg) var(--r-lg) 0;display:flex;flex-direction:column}.cp{box-shadow:var(--card-shadow);border-radius:var(--r-lg)}.lib-head{padding:14px 14px 10px;display:grid;gap:10px;border-bottom:1px solid var(--line)}.search{position:relative;display:block}.search svg{position:absolute;left:11px;top:50%;width:15px;height:15px;transform:translateY(-50%);color:var(--ink-3);pointer-events:none}.search input{padding-left:34px;height:38px;font-size:15px}.level span{font-size:12px}.cats{display:flex;flex-wrap:wrap;gap:5px}.cats a{flex:none;text-decoration:none;border:1px solid var(--line-2);border-radius:999px;padding:3px 9px;font-size:12px;color:var(--ink-2);white-space:nowrap;transition:all .15s}.cats a:hover{border-color:var(--ink-3);color:var(--ink)}.cats a[aria-current]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.lib-grid{list-style:none;margin:0;padding:12px 14px;overflow-y:auto;flex:1;scrollbar-width:thin;display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;align-content:start}.lib-grid button{position:relative;width:100%;display:grid;gap:4px;padding:6px 6px 5px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);cursor:pointer;text-align:center;transition:border-color .15s,transform .1s}.lib-grid button:hover{border-color:var(--accent-line)}.lib-grid button:active{transform:scale(.97)}.lib-grid button[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset;background:var(--accent-soft)}.thumb{display:block;aspect-ratio:1;border-radius:6px;background:#fff;overflow:hidden}.thumb svg{width:100%;height:100%;padding:6px}.thumb:empty,.thumb.wait{background:#fff linear-gradient(90deg,transparent,rgba(0,0,0,.04),transparent) 0 0 / 200% 100%;animation:shimmer 1.4s infinite linear}@keyframes shimmer{to{background-position:-200% 0}}.lib-name{font-size:11.5px;line-height:1.25;color:var(--ink-2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.5em}.badge{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:999px;display:none;place-items:center;background:var(--accent);color:var(--on-accent)}.badge svg{width:12px;height:12px}.lib-grid button[aria-pressed=true] .badge{display:grid}.more-sentinel{grid-column:1 / -1;height:1px}.lib-status{margin:0;padding:8px 14px;border-top:1px solid var(--line);font:12px var(--mono);color:var(--ink-3)}.desk{flex:1;min-height:0;overflow:auto;display:grid;place-items:center;gap:40px;padding:58px 28px 28px;background-color:var(--desk);background-image:radial-gradient(circle,var(--desk-dot) 1px,transparent 1.3px);background-size:18px 18px}.sheet{position:relative;width:60%;background:#fff;box-shadow:var(--sheet-shadow)}.sheet svg{display:block;width:100%;height:100%}.sheet[data-label]:after{content:attr(data-label);position:absolute;top:100%;left:0;right:0;padding-top:8px;font:12px var(--mono);color:var(--ink-3);text-align:center}.stage-note{margin:0;padding:9px 16px;border-top:1px solid var(--line);font:12px var(--mono);color:var(--ink-3);text-align:center}.insp-scroll{flex:1;min-height:0;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px;scrollbar-width:thin}.insp-head{display:flex;align-items:baseline;justify-content:space-between}.insp-head h2{margin:0;font:400 21px/1.2 var(--font-display)}.tray{list-style:none;margin:0;padding:0;display:grid;gap:6px}.tray li{display:grid;grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:4px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2)}.tray-thumb{width:40px;height:40px;border-radius:5px;background:#fff;overflow:hidden}.tray-thumb svg{width:100%;height:100%;padding:3px}.tray-name{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tray-count{height:30px;padding:0 2px;gap:2px}.tray-count .nudge{opacity:1;margin:0;background:none}.tray-count output{min-width:2ch;text-align:center;font:500 13px var(--mono)}.tray .icon-btn{width:28px;height:28px}.tray-pages{grid-column:1 / -1;display:flex;align-items:center;gap:4px;padding:0 2px 2px 48px}.tray-copy{min-width:2ch;margin-right:2px;font:11px var(--mono);color:var(--ink-3);text-align:right}.tray-pages button{min-width:32px;height:28px;border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);font:500 12px var(--mono);color:var(--ink-2);cursor:pointer}.tray-pages button:hover{border-color:var(--ink-3);color:var(--ink)}.tray-pages button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.pages-step{height:34px;padding:0 2px;gap:2px;width:max-content}.pages-step .nudge{opacity:1;margin:0;background:none}.pages-step output{min-width:3ch;text-align:center;font:500 13px var(--mono)}.field-label .link-btn{float:right;font-size:12px}.orient-pages{display:grid;gap:6px;margin-top:8px}.orient-row{display:grid;grid-template-columns:max-content 1fr;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-2)}.field .field-label output{float:right;font:12px var(--mono);color:var(--ink-3)}.field input[type=range]{width:100%;accent-color:var(--accent)}.field .ends{display:flex;justify-content:space-between;font-size:11.5px;color:var(--ink-3)}.insp-actions{display:grid;grid-template-columns:auto 1fr;gap:8px;padding:12px 16px;border-top:1px solid var(--line)}.insp-actions .btn{justify-content:center}.btn:disabled{opacity:.45;cursor:default}.below{padding:48px 0 64px;display:grid;gap:32px}.below h2{font:400 26px/1.2 var(--font-display);margin:0 0 12px}.how ol{margin:0 0 12px;padding-left:1.2em;color:var(--ink-2);display:grid;gap:6px;max-width:70ch}.how p,.all-names p{color:var(--ink-2);max-width:90ch;line-height:1.7}.all-cats{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px}.all-cats a{color:var(--ink-2);text-decoration:none}.all-cats a:hover{color:var(--accent)}.not-found{padding:80px 0}.foot-tabs{display:flex;gap:14px}.foot-tabs a,.foot-links a{color:inherit;text-decoration:none}.foot-links{margin-left:auto;display:flex;gap:16px}@media(max-width:1180px){:root{--lib-w: 290px;--insp-w: 280px}}@media(max-width:900px){.cp{grid-template-columns:1fr;height:auto}.cp>*{border-radius:0!important;border-inline:1px solid var(--line)}.library{max-height:70dvh}.stage{border-block:0}.desk{padding:54px 16px 24px;height:75dvh;flex:none}.insp-scroll{overflow:visible}.insp-actions{position:fixed;inset:auto 0 var(--foot-h);z-index:15;padding:10px 16px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(10px)}body{padding-bottom:calc(var(--foot-h) + 62px)}.foot-tabs{display:none}.foot-bar{gap:12px}.page-title h1{font-size:18px}.header-inner:has(.page-title) .wordmark{display:none}}
