:root{--bg:#110f0d;--panel:#161310e0;--panel-solid:#1a1714;--line:#c99a4547;--fg:#efe6d3;--muted:#a69a83;--gold:#c99a45;--ink-red:#b3261e;--ink-black:#1b191c;--font-display:"Old Standard TT", "Bodoni 72", Georgia, serif;--font-ui:"Archivo Narrow", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;--font-type:"Special Elite", "Courier Prime", "Courier New", monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[hidden]{display:none!important}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--fg);font-family:var(--font-ui);margin:0;overflow:hidden}body{flex-direction:column;display:flex}#app{flex:auto;min-height:0;position:relative}#scene{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}#app:after{content:"";pointer-events:none;background:radial-gradient(at 50% 45%,#0000 55%,#0000008c 100%);position:absolute;inset:0}button{white-space:nowrap;font:inherit;color:var(--fg);cursor:pointer;letter-spacing:.04em;background:0 0;border:1px solid #0000;border-radius:3px;padding:.35rem .6rem;transition:background .15s,border-color .15s,color .15s}button:hover{background:#efe6d312}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button.on,button[aria-pressed=true]{border-color:var(--line);color:#f6e3b6;background:#c99a451f}.label{text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-size:.7rem}.masthead{top:calc(env(safe-area-inset-top,0px) + 18px);z-index:2;pointer-events:none;max-width:calc(100% - 44px);position:absolute;left:22px}.masthead h1{font-family:var(--font-display);color:#f1dfb4;text-wrap:balance;pointer-events:auto;width:fit-content;margin:0;font-size:clamp(1.6rem,3.2vw,2.4rem);font-weight:400;line-height:1}.masthead .maker{font-style:italic}.masthead .model{letter-spacing:.08em;color:var(--gold);vertical-align:.35em;font-size:.6em}.masthead .sub{letter-spacing:.08em;color:var(--muted);margin:.45rem 0 0;font-size:.78rem}.topright{top:calc(env(safe-area-inset-top,0px) + 16px);z-index:2;flex-direction:column;align-items:flex-end;gap:.55rem;display:flex;position:absolute;right:18px}.share-cta{letter-spacing:.05em;color:#1a1410;background:var(--gold);border-color:var(--gold);border-radius:999px;align-items:center;gap:.45rem;padding:.5rem .95rem;font-size:.92rem;font-weight:600;display:inline-flex;box-shadow:0 6px 20px #0006}.share-cta:hover{background:#d8ac5c}.readout{font-family:var(--font-type);color:var(--fg);font-variant-numeric:tabular-nums;pointer-events:none;align-items:baseline;gap:1.1rem;margin-right:4px;font-size:1rem;display:flex}.readout .label{font-family:var(--font-ui);margin-right:.25rem}#ro-flags{gap:.4rem;display:flex}.flag{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.14em;border:1px solid var(--line);color:#f6e3b6;border-radius:2px;padding:.12rem .4rem;font-size:.66rem}.flag.red{color:#f2a39a;border-color:#b3261e99}.topfade{height:calc(env(safe-area-inset-top,0px) + 132px);z-index:1;pointer-events:none;background:linear-gradient(#0e0c0ac7 0%,#0e0c0ab3 18%,#0e0c0a8a 36%,#0e0c0a57 56%,#0e0c0a26 76%,#0e0c0a0a 90%,#0e0c0a00 100%);position:absolute;top:0;left:0;right:0}.dock{left:0;right:0;bottom:calc(14px + var(--kb,0px));z-index:2;pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;padding:0 16px;display:flex;position:absolute}.dock>*{pointer-events:auto}.controls{background:var(--panel);border:1px solid var(--line);border-radius:6px;flex-direction:column;align-items:center;max-width:100%;padding:.3rem .6rem;font-size:.88rem;display:flex}.row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .8rem;max-width:100%;display:flex}.row-write{gap:.35rem .6rem;padding:.5rem 0 .3rem}.row-pick{border-bottom:1px solid var(--line);gap:.4rem 1.1rem;padding:.3rem .4rem .65rem}.row-bar{gap:.35rem .6rem;padding:.5rem 0 .3rem}.controls .group{align-items:center;gap:.25rem;display:flex}.controls .group .label{margin-right:.3rem}.collapse{grid-template-rows:1fr;transition:grid-template-rows .55s cubic-bezier(.3,.7,.2,1),opacity .4s;display:grid}.collapse>.collapse-in{min-height:0;overflow:hidden}.collapse.shut{opacity:0;grid-template-rows:0fr}.deck>.collapse{max-width:100vw;transition:grid-template-rows .55s cubic-bezier(.3,.7,.2,1),opacity .4s,max-width .55s cubic-bezier(.3,.7,.2,1)}.deck>.collapse.shut{max-width:0}.collapse-x{grid-template-columns:1fr;transition:grid-template-columns .55s cubic-bezier(.3,.7,.2,1),opacity .4s .15s;display:inline-grid}.collapse-x>.collapse-in{min-width:0;overflow:hidden}.collapse-x.shut{opacity:0;grid-template-columns:0fr}#write-wrap{transition:grid-template-rows .45s cubic-bezier(.3,.7,.2,1),opacity .3s,margin-bottom .45s}#write-wrap.shut{margin-bottom:-.5rem}.dot{vertical-align:-.05rem;border-radius:50%;width:.62rem;height:.62rem;margin-right:.35rem;display:inline-block;box-shadow:inset 0 0 0 1px #ffffff40}.dot.black{background:var(--ink-black)}.dot.red{background:var(--ink-red)}.pick{cursor:pointer}select{font:inherit;color:var(--fg);border:1px solid var(--line);letter-spacing:.04em;cursor:pointer;appearance:none;background-color:#efe6d312;background-image:linear-gradient(45deg, transparent 50%, var(--gold) 50%), linear-gradient(135deg, var(--gold) 50%, transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;border-radius:3px;padding:.3rem 1.5rem .3rem .55rem}select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}select option{background:var(--panel-solid);color:var(--fg)}.kbd-only{display:none}@media (pointer:coarse){.kbd-only{display:inline-block}}.help{right:18px;bottom:calc(env(safe-area-inset-bottom,0px) + 34px + var(--kb,0px) + var(--dock-h,50px) + 10px);z-index:3;width:min(380px,100% - 32px);max-height:calc(100% - var(--dock-h,50px) - var(--kb,0px) - 150px);background:var(--panel-solid);border:1px solid var(--line);border-radius:6px;padding:1rem 1.1rem .9rem;font-size:.9rem;line-height:1.45;position:absolute;overflow:auto;box-shadow:0 18px 50px #00000080}.help h2{font-family:var(--font-display);color:#f1dfb4;margin:0 0 .6rem;font-size:1.25rem;font-style:italic;font-weight:400}.help dl{grid-template-columns:auto 1fr;gap:.45rem .9rem;margin:0 0 .8rem;display:grid}.help dt{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);padding-top:.2rem;font-size:.7rem}.help dd{color:var(--fg);min-width:0;margin:0}kbd{font-family:var(--font-type);background:#efe6d30f;border:1px solid #efe6d34d;border-radius:3px;padding:0 .3rem;font-size:.8rem}.reader{z-index:5;padding:calc(env(safe-area-inset-top,0px) + 24px) 16px calc(env(safe-area-inset-bottom,0px) + 16px);background:#0a0908eb;flex-direction:column;align-items:center;gap:.8rem;display:flex;position:fixed;inset:0}.sheet-wrap{flex:1;justify-content:center;width:100%;min-height:0;display:flex}.sheet-wrap img{object-fit:contain;max-width:100%;height:100%;box-shadow:0 24px 60px #0009}.reader-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:.8rem;display:flex}#copy-status{color:var(--muted);min-width:6rem;font-size:.85rem}#kbd-proxy{opacity:0;resize:none;border:0;width:1px;height:1px;padding:0;font-size:16px;position:fixed;top:0;left:0}.loading{z-index:10;background:var(--bg);font-family:var(--font-display);color:var(--muted);place-items:center;font-size:1.2rem;font-style:italic;transition:opacity .6s;display:grid;position:absolute;inset:0}.loading.done{opacity:0;pointer-events:none}@media (width<=640px){.masthead{left:16px}.masthead .sub{display:none}.topright{right:10px;top:calc(env(safe-area-inset-top,0px) + 12px);gap:.4rem}.share-cta{padding:.42rem .75rem;font-size:.82rem}.readout{gap:.7rem;font-size:.85rem}.dock{gap:.4rem;padding:0 8px}.controls{padding:.2rem .4rem;font-size:.8rem}.controls button{padding:.35rem .45rem}.row-write{gap:.3rem .4rem}.row-pick{gap:.4rem .8rem}.controls .group{gap:.2rem}.controls .group .label{margin-right:.1rem;font-size:.64rem}.swatch .txt,.row-write .group[aria-label=Ribbon] .label{display:none}.controls .swatch{padding-inline:.4rem}.swatch .dot{margin-right:0}.masthead h1{font-size:1.3rem}.share-cta .long,.kb-open .row-bar,.kb-open #mobile-kbd,.kb-open .sound-hint{display:none}select{padding:.28rem 1.4rem .28rem .45rem}}@media (width<=360px){.dock{padding:0 4px}.controls{padding-inline:.25rem;font-size:.74rem}.row-pick{column-gap:.5rem}.controls .group .label{letter-spacing:.04em;margin-right:0;font-size:.58rem}.controls .swatch{padding-inline:.18rem}select{background-position:calc(100% - 9px) 55%,calc(100% - 4px) 55%;padding:.28rem 1.15rem .28rem .35rem}}@media (prefers-reduced-motion:reduce){.loading{transition:none}}.share{z-index:6;padding:calc(env(safe-area-inset-top,0px) + 16px) 16px calc(env(safe-area-inset-bottom,0px) + 16px);background:#0a0908d1;place-items:center;display:grid;position:fixed;inset:0;overflow:auto}.share-panel{background:var(--panel-solid);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:.85rem;width:min(640px,100%);padding:1rem 1.1rem 1.1rem;display:flex;box-shadow:0 24px 70px #0009}.share-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.share-head h2{font-family:var(--font-display);color:#f1dfb4;margin:0;font-size:1.35rem;font-style:italic;font-weight:400}.share-preview{background:#100e0c;border:1px solid #efe6d314;border-radius:4px;justify-content:center;padding:.75rem;display:flex;overflow:hidden}.share-preview img{object-fit:contain;max-width:100%;max-height:42vh;display:block;box-shadow:0 6px 24px #00000080}.share-actions{flex-wrap:wrap;gap:.4rem;display:flex}.share-actions button{border-color:var(--line)}.share-actions button.primary{background:var(--gold);border-color:var(--gold);color:#1a1410;font-weight:600}.share-actions button.primary:hover{background:#d8ac5c}.share-on{flex-wrap:wrap;align-items:center;gap:.5rem .7rem;display:flex}.share-targets{flex-wrap:wrap;gap:.35rem;display:flex}.share-targets a{color:var(--fg);border:1px solid #efe6d329;border-radius:999px;padding:.28rem .6rem;font-size:.85rem;text-decoration:none;transition:border-color .15s,background .15s}.share-targets a:hover{border-color:var(--line);background:#c99a451a}.share-targets a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.share-status{min-height:1.2em;color:var(--muted);margin:0;font-size:.85rem}.sound-hint,.note{letter-spacing:.04em;width:fit-content;max-width:calc(100% - 32px);color:var(--muted);background:var(--panel);border:1px solid var(--line);pointer-events:none;text-align:center;border-radius:999px;padding:.35rem .75rem;font-size:.82rem}.note{z-index:2;left:0;right:0;top:calc(env(safe-area-inset-top,0px) + 96px);color:#f6e3b6;margin-inline:auto;position:absolute}@media (width<=640px){.note{top:calc(env(safe-area-inset-top,0px) + 172px)}}.write-cta{font-family:var(--font-display);letter-spacing:.06em;color:#1a1410;background:var(--gold);border-color:var(--gold);border-radius:999px;padding:.7rem 2.6rem;font-size:1.5rem;font-style:italic;box-shadow:0 10px 30px #00000080}.write-cta:hover{background:#d8ac5c}@media (width<=640px){.write-cta{padding:.55rem 2.2rem;font-size:1.3rem}}.credits{padding:.7rem 16px calc(env(safe-area-inset-bottom,0px) + .8rem);letter-spacing:.06em;text-align:center;color:var(--muted);background:var(--bg);flex-direction:column;flex:none;align-items:center;gap:.25rem;font-size:.74rem;line-height:1.4;display:flex}.credits p{margin:0}.credits .sep{margin:0 .35rem}.credits a{color:inherit}.credits button{font-size:inherit;color:var(--muted);text-underline-offset:2px;padding:.1rem .3rem;text-decoration:underline}.credits button:hover{color:var(--fg)}.about{z-index:6;padding:calc(env(safe-area-inset-top,0px) + 24px) 16px calc(env(safe-area-inset-bottom,0px) + 24px);background:#0a0908db;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow:auto}.about-panel{background:var(--panel-solid);border:1px solid var(--line);border-radius:8px;width:min(640px,100%);padding:1.2rem 1.4rem 1.4rem;font-size:.98rem;line-height:1.6;box-shadow:0 24px 70px #0009}.about-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.about-panel h2{font-family:var(--font-display);color:#f1dfb4;margin:0;font-size:1.6rem;font-style:italic;font-weight:400}.about-panel h3{text-transform:uppercase;letter-spacing:.16em;color:var(--gold);margin:1.4rem 0 .3rem;font-size:.72rem;font-weight:600}.about-panel p{color:var(--fg);text-wrap:pretty;margin:.5rem 0 0}.about-panel .lede{font-family:var(--font-display);color:#e9dcc0;margin-top:.8rem;font-size:1.12rem;line-height:1.5}
