@font-face{font-family:Lumiare;src:url(/fonts/lumiare-heading.otf)format("opentype");font-weight:400;font-display:swap}:root{--ink:#fff;--paper:#000;--line:#fff;--hair:#ffffff2e;--hover:#ffffff1a;--mute:#ffffffa3;--head:"Lumiare", "Times New Roman", serif;--text:"Helvetica Neue", Arial, system-ui, sans-serif;--msgY:calc(126px + env(safe-area-inset-bottom))}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--text);letter-spacing:.045em;-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain;font-size:16px;line-height:1.6}button,input{color:inherit;font-family:inherit}button{cursor:pointer;background:0 0;border:none}::selection{color:#000;background:#fff}.wrap{max-width:560px;padding:0 16px calc(96px + env(safe-area-inset-bottom));margin:0 auto}.head{align-items:center;gap:14px;padding:14px 0 10px;display:flex}.head h1{font-family:var(--head);letter-spacing:.02em;font-size:26px;font-weight:400;line-height:1}.headr{align-items:center;gap:12px;margin-left:auto;display:flex}.meta{letter-spacing:.13em;text-transform:uppercase;color:var(--mute);white-space:nowrap;font-size:10.5px}.qmark{border:1px solid var(--hair);width:26px;height:26px;color:var(--mute);flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.qmark:hover{border-color:var(--line);color:var(--ink)}.stage{z-index:5;background:var(--paper);padding-bottom:10px;position:sticky;top:0}.frame{border:1px solid var(--hair);touch-action:none;background:repeating-conic-gradient(#ffffff0b 0% 25%,#0000 0% 50%) 50%/16px 16px;justify-content:center;align-items:center;width:100%;height:52vh;display:flex;position:relative;overflow:hidden}.frame canvas{object-fit:contain;z-index:1;max-width:100%;max-height:100%;display:block;position:relative}.frame.is-empty{cursor:pointer}.x{z-index:6;border:1px solid var(--hair);width:34px;height:34px;color:var(--ink);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c;justify-content:center;align-items:center;font-size:14px;line-height:1;display:flex;position:absolute;top:8px;right:8px}.x:hover{background:var(--ink);color:var(--paper);border-color:var(--line)}.empty{text-align:center;color:var(--mute);letter-spacing:.1em;text-transform:uppercase;flex-direction:column;justify-content:center;align-items:center;padding:24px 16px;font-size:11px;line-height:1.9;display:flex;position:absolute;inset:0}.empty b{color:var(--ink);letter-spacing:.12em;font-size:13px;display:block}.empty__hint{margin-top:4px;display:block}.empty__retry{border:1px solid var(--line);color:var(--ink);letter-spacing:.14em;margin-top:14px;padding:10px 16px;font-weight:700;display:block}.holdbadge{z-index:6;border:1px solid var(--line);background:var(--ink);color:var(--paper);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;align-items:center;height:32px;padding:0 12px;font-size:10.5px;font-weight:700;display:flex;position:absolute;top:8px;left:8px}.sec{border-bottom:1px solid var(--hair);letter-spacing:.22em;text-transform:uppercase;color:var(--mute);margin:20px 0 10px;padding-bottom:7px;font-size:11px;font-weight:700}.row{margin:15px 0;display:block}.row__top{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.row__label{letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:600}.row__val{letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:15px;font-weight:700}.slider{appearance:none;background:var(--ink);outline:none;width:100%;height:1px}.slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--paper);border:2px solid var(--ink);cursor:pointer;border-radius:50%;width:22px;height:22px}.slider::-moz-range-thumb{background:var(--paper);border:2px solid var(--ink);cursor:pointer;border-radius:50%;width:22px;height:22px}.seg{border:1px solid var(--line);width:100%;display:flex}.seg__opt{text-align:center;text-transform:uppercase;letter-spacing:.1em;border-right:1px solid var(--line);flex:1;padding:11px 4px;font-size:12px;font-weight:600;transition:background .15s,color .15s}.seg__opt:last-child{border-right:none}.seg__opt.is-on{background:var(--ink);color:var(--paper)}.seg__opt:disabled{opacity:.3;cursor:not-allowed}.maintabs{margin:16px 0}.maintabs .seg__opt{letter-spacing:.16em;padding:12px 6px;font-size:12.5px}.seg--stops{border-color:var(--hair)}.seg--stops .seg__opt{letter-spacing:.08em;border-right-color:var(--hair);color:var(--mute);padding:9px 4px;font-size:11px}.seg--stops .seg__opt.is-on{color:var(--paper);background:var(--ink)}.hint{letter-spacing:.08em;color:var(--mute);text-transform:uppercase;margin-top:8px;font-size:11px}.refs{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.ref{border:1px solid var(--hair);width:56px;height:72px;position:relative}.ref img{object-fit:cover;cursor:pointer;width:100%;height:100%;display:block}.ref:hover{border-color:var(--line)}.ref.is-on{border-color:var(--line);box-shadow:0 0 0 1px var(--line)}.ref__x{background:var(--paper);border:1px solid var(--hair);width:18px;height:18px;color:var(--mute);justify-content:center;align-items:center;font-size:12px;line-height:1;display:flex;position:absolute;top:-1px;right:-1px}.ref__x:hover{background:var(--ink);color:var(--paper)}.ref--add{border:1px solid var(--hair);width:56px;height:72px;color:var(--mute);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.ref--add:hover{border-color:var(--line);color:var(--ink)}.ref--add:disabled{opacity:.4}.bar{z-index:10;background:var(--paper);border-top:1px solid var(--hair);padding:12px 16px calc(12px + env(safe-area-inset-bottom));gap:10px;max-width:560px;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0}.btn{border:1px solid var(--line);text-transform:uppercase;letter-spacing:.16em;white-space:nowrap;flex:1;padding:14px 12px;font-size:13px;font-weight:700;transition:background .15s,color .15s,transform 50ms}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--ink);color:var(--paper)}.btn--ghost{color:var(--mute);border-color:var(--hair);flex:none;padding:14px 16px}.btn:disabled{opacity:.35}.toast{left:50%;bottom:var(--msgY);z-index:20;background:var(--ink);color:var(--paper);letter-spacing:.14em;text-transform:uppercase;opacity:0;pointer-events:none;width:max-content;max-width:calc(100vw - 32px);padding:10px 16px;font-size:11.5px;font-weight:700;transition:opacity .2s;position:fixed;transform:translate(-50%)}.toast.is-on{opacity:1}.modal{z-index:40;background:#000000b8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal__card{background:var(--paper);border:1px solid var(--line);width:100%;max-width:560px;max-height:88vh;padding:26px 24px 30px;position:relative;overflow-y:auto}.modal__x{color:var(--mute);font-size:22px;line-height:1;position:absolute;top:10px;right:12px}.modal__x:hover{color:var(--ink)}.modal__h{font-family:var(--head);letter-spacing:.02em;margin-bottom:6px;font-size:24px;font-weight:400}.guide__sec{border-top:1px solid var(--hair);flex-direction:column;gap:9px;padding:16px 0;display:flex}.guide__sec:first-child{border-top:none}.guide__h{text-transform:uppercase;letter-spacing:.14em;color:var(--ink);font-size:11.5px;font-weight:700}.guide p{color:var(--mute);letter-spacing:.02em;font-size:14px;line-height:1.5}@media (width>=900px){html,body{height:100%;overflow:hidden}.wrap{grid-template:"head head""stage ctrl"minmax(0,1fr)/minmax(0,1.2fr) minmax(320px,1fr);gap:0 28px;width:100%;max-width:none;height:100dvh;padding:0 28px 24px;display:grid}.head{grid-area:head;padding:20px 0 14px}.head h1{font-size:32px}.stage{grid-area:stage;justify-content:center;align-items:center;min-height:0;padding-bottom:0;display:flex;position:static}.frame{height:100%}.ctrl{scrollbar-width:thin;grid-area:ctrl;min-height:0;padding-right:6px;overflow-y:auto}.ctrl::-webkit-scrollbar{width:6px}.ctrl::-webkit-scrollbar-thumb{background:var(--hair)}.bar{max-width:calc(45vw - 37.8px);position:fixed;bottom:0;left:auto;right:28px}:root{--msgY:116px}}
