:root{--bg: #13100c;--bg-2: #1a1611;--elev: #221c16;--ink: #f3e6d4;--ink-dim: #a89882;--line: #3a3128;--amber: #e07a3d;--amber-2: #8a4a28;--ok: #d2c19a;--err: #c45c3e;--shadow: 0 30px 80px rgba(0, 0, 0, .45);color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}html{background:var(--bg)}body{margin:0;font-family:Karla,PingFang SC,Noto Sans SC,sans-serif;color:var(--ink);background:radial-gradient(900px 480px at 50% -10%,rgba(224,122,61,.14),transparent 60%),radial-gradient(700px 400px at 80% 110%,rgba(58,49,40,.6),transparent 55%),var(--bg);-webkit-font-smoothing:antialiased}button,input{font:inherit;color:inherit}.page{min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;padding:28px 20px 20px}.brand{display:flex;align-items:baseline;justify-content:space-between;gap:16px;max-width:760px;width:100%;margin:0 auto}.page:has(.wide) .brand,.page:has(.wide) .foot{max-width:980px}.mark{font-family:Cormorant Garamond,Songti SC,serif;font-size:28px;font-weight:600;letter-spacing:.18em;margin:0}.mark em{font-style:italic;font-weight:500;letter-spacing:.04em;color:var(--amber);margin-left:2px}.where{font-size:12px;letter-spacing:.14em;text-transform:lowercase;color:var(--ink-dim)}.who{display:flex;align-items:center;gap:14px;color:var(--ink-dim);font-size:13px;letter-spacing:.04em}.who-name{background:none;border:0;padding:0;max-width:16em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit;cursor:pointer}.who-name:hover{color:var(--amber)}.quiet{background:none;border:0;padding:0;color:var(--amber);letter-spacing:.12em;cursor:pointer}.quiet:hover{color:var(--ink)}.stage{width:min(760px,100%);margin:0 auto;display:flex;flex-direction:column;justify-content:center;padding:48px 0 32px}.stage.has-more{justify-content:flex-start}.stage.wide{width:min(980px,100%)}.lede{margin:0 0 36px}.lede h2{font-family:Cormorant Garamond,Songti SC,serif;font-weight:500;font-size:clamp(36px,6vw,58px);line-height:1.12;letter-spacing:.02em;margin:0 0 12px;text-wrap:pretty}.lede p{margin:0;color:var(--ink-dim);font-size:16px;max-width:36em;text-wrap:pretty}.well{position:relative;background:var(--elev);border:1px solid var(--line);box-shadow:var(--shadow),inset 0 1px #f3e6d40a;display:grid;grid-template-columns:22px 1fr auto;min-height:76px}.sprockets{display:flex;flex-direction:column;justify-content:space-evenly;align-items:center;background:#18140f;border-right:1px solid var(--line)}.sprockets i{width:8px;height:8px;border-radius:50%;background:var(--bg);box-shadow:inset 0 0 0 1px #2a231c}.well input{border:0;outline:0;background:transparent;padding:18px;font-size:16px;width:100%}.well input::placeholder{color:#6f6354}.well:focus-within{border-color:var(--amber-2);box-shadow:var(--shadow),0 0 0 1px var(--amber-2),inset 0 0 40px #e07a3d0f}.go{margin:10px 10px 10px 0;padding:0 22px;background:var(--amber);color:#1a100a;border:0;font-weight:600;letter-spacing:.12em;cursor:pointer;min-width:92px}.go:hover{filter:brightness(1.05)}.go:active{transform:translateY(1px)}.go:disabled{cursor:wait;filter:saturate(.6)}.status{margin:14px 2px 0;color:var(--ok);font-size:13px;letter-spacing:.04em}.plats{display:flex;gap:18px;margin:16px 2px 0;color:var(--ink-dim);font-size:13px;letter-spacing:.08em}.plats span{display:inline-flex;align-items:center;gap:8px}.plats span:before{content:"";width:6px;height:6px;background:var(--amber-2)}.card{margin-top:28px;display:grid;grid-template-columns:168px 1fr;gap:0;background:var(--bg-2);border:1px solid var(--line);overflow:hidden}.thumb{background:#0b0907;min-height:110px;position:relative}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb .ph{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#6f6354;letter-spacing:.16em;font-size:12px}.meta{padding:18px 20px 16px;display:flex;flex-direction:column;gap:8px;min-width:0}.meta .kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--amber)}.meta h3{margin:0;font-size:18px;font-weight:500;line-height:1.35;text-wrap:pretty}.meta .by{color:var(--ink-dim);font-size:14px}.meta .spec{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px;color:var(--ok);letter-spacing:.04em}.save{align-self:flex-start;margin-top:8px;background:transparent;color:var(--ink);border:1px solid var(--ink);padding:8px 16px;letter-spacing:.14em;cursor:pointer}.save:hover:not(:disabled){background:var(--ink);color:var(--bg)}.save:disabled{cursor:wait;opacity:.55}.err{margin-top:20px;border-left:2px solid var(--err);padding:8px 0 8px 14px;color:#e8c2b4;text-wrap:pretty}.auth{display:flex;flex-direction:column;gap:18px;background:var(--elev);border:1px solid var(--line);box-shadow:var(--shadow),inset 0 1px #f3e6d40a;padding:28px 28px 24px}.field{display:flex;flex-direction:column;gap:8px}.label{font-size:12px;letter-spacing:.16em;color:var(--ink-dim)}.input{width:100%;background:#18140f;border:1px solid var(--line);padding:12px 14px;outline:0}.input::placeholder{color:#6f6354}.input:focus{border-color:var(--amber-2);box-shadow:0 0 0 1px var(--amber-2),inset 0 0 24px #e07a3d0f}.code-row{display:grid;grid-template-columns:1fr auto;gap:10px}.ghost{background:transparent;border:1px solid var(--line);color:var(--ink);padding:0 14px;min-width:118px;letter-spacing:.08em;cursor:pointer}.ghost:hover:not(:disabled){border-color:var(--amber);color:var(--amber)}.ghost:disabled{color:var(--ink-dim);cursor:not-allowed}.enter{margin-top:4px;background:var(--amber);color:#1a100a;border:0;min-height:48px;font-weight:600;letter-spacing:.16em;cursor:pointer}.enter:hover:not(:disabled){filter:brightness(1.05)}.enter:disabled{cursor:not-allowed;filter:saturate(.55)}.hint{font-size:13px;color:var(--ink-dim);letter-spacing:.02em}.hint.ok{color:var(--ok)}.auth .err{margin-top:0}.auth .hint.center{text-align:center;margin:0}.readonly{padding:12px 14px;color:var(--ink-dim);border:1px dashed var(--line);word-break:break-all}.hist{margin-top:40px}.hist h3,.sheet h3{margin:0 0 14px;font-size:12px;letter-spacing:.18em;font-weight:500;color:var(--ink-dim)}.hist ul{list-style:none;margin:0;padding:0;border:1px solid var(--line);background:var(--bg-2)}.hist li{display:grid;grid-template-columns:72px 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-top:1px solid var(--line)}.hist li:first-child{border-top:0}.hist-thumb{width:72px;height:44px;background:#0b0907;overflow:hidden}.hist-thumb img{width:100%;height:100%;object-fit:cover;display:block}.hist-thumb span{display:grid;place-items:center;height:100%;color:#6f6354;font-size:11px;letter-spacing:.12em}.hist-title{margin:0;font-size:14px;line-height:1.35}.hist-sub{margin:4px 0 0;color:var(--ink-dim);font-size:12px}.mini{background:transparent;color:var(--ink);border:1px solid var(--line);padding:6px 10px;letter-spacing:.08em;cursor:pointer;white-space:nowrap}.mini:hover:not(:disabled){border-color:var(--amber);color:var(--amber)}.mini:disabled{opacity:.5;cursor:wait}.sheet{margin-top:28px;background:var(--elev);border:1px solid var(--line);padding:18px 18px 14px}.sheet:first-of-type{margin-top:0}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-weight:500;color:var(--ink-dim);letter-spacing:.08em;padding:6px 8px 10px 0;white-space:nowrap}.table td{padding:10px 10px 10px 0;border-top:1px solid var(--line);vertical-align:middle;white-space:nowrap}.table tr.on td{background:#e07a3d0f}.table .clip{max-width:16em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table .bad{color:var(--err)}.linkish{background:none;border:0;padding:0;color:var(--amber);cursor:pointer;letter-spacing:.02em}.linkish:hover{color:var(--ink)}.sheet .hint{margin:12px 0 0}.sheet .hint.bad{color:var(--err)}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.sheet-head h3{margin:0}.bal-row{display:flex;flex-wrap:wrap;gap:18px 32px;align-items:flex-end}.bal-item b{display:block;font-family:Cormorant Garamond,Songti SC,serif;font-size:32px;font-weight:500;letter-spacing:.02em;line-height:1.05}.bal-item span{display:block;margin-top:6px;font-size:11px;letter-spacing:.16em;color:var(--ink-dim)}.bal-item.warn b{color:var(--err)}.keep-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.keep-input{width:88px;padding:8px 10px}.dl-thumb{width:72px;height:44px;padding:0;border:1px solid var(--line);background:#0b0907;overflow:hidden;cursor:pointer}.dl-thumb img{width:100%;height:100%;object-fit:cover;display:block}.dl-thumb span{display:grid;place-items:center;height:100%;color:#6f6354;font-size:11px;letter-spacing:.12em}.dl-thumb:hover{border-color:var(--amber)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#080604c7;display:grid;place-items:center;padding:24px 16px}.lightbox-card{width:min(920px,100%);background:var(--elev);border:1px solid var(--line);box-shadow:var(--shadow);padding:16px 16px 14px}.lightbox-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.lightbox-kicker{margin:0 0 4px;font-size:11px;letter-spacing:.16em;color:var(--amber)}.lightbox-card h3{margin:0;font-size:18px;font-weight:500}.lightbox-video{width:100%;max-height:min(72vh,640px);background:#0b0907;display:block}.lightbox-gone{background:#0b0907;min-height:180px;display:grid;place-items:center;gap:12px;padding:16px}.lightbox-gone img{max-width:100%;max-height:280px;object-fit:contain}.lightbox-gone p{margin:0;color:var(--ink-dim)}.foot{max-width:760px;width:100%;margin:0 auto;color:#6f6354;font-size:12px;letter-spacing:.04em;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}@media(max-width:640px){.page{padding:20px 14px 16px}.brand{align-items:flex-end}.where{display:none}.who-name{max-width:9em}.stage{padding-top:36px}.auth{padding:22px 18px 20px}.code-row{grid-template-columns:1fr}.ghost{min-height:44px}.well{grid-template-columns:18px 1fr}.go{grid-column:1 / -1;margin:0;min-height:48px}.card{grid-template-columns:1fr}.thumb{aspect-ratio:16/9}.hist li{grid-template-columns:56px 1fr}.hist li .mini{grid-column:1 / -1;min-height:40px}.lightbox,.lightbox-card{padding:12px}.lightbox-video{max-height:56vh}}@media(prefers-reduced-motion:reduce){.go:active{transform:none}}
