:root{--bg: #0a0a0b;--card: #131315;--line: #26262a;--line2: #2e2e33;--txt: #ececef;--mut: #8a8a92;--acc: #ffd166;--acc2: #e8b83f;--ok: #7bd88f;--err: #ff7b7b}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--bg);color:var(--txt);font-family:system-ui,-apple-system,Segoe UI,sans-serif}#root{max-width:420px;margin:0 auto;padding:calc(env(safe-area-inset-top,0px) + 16px) 18px calc(env(safe-area-inset-bottom,0px) + 30px);min-height:100vh}.brand{font-size:11px;letter-spacing:.5em;color:var(--mut);text-transform:uppercase;margin:4px 0 2px}h1{font-size:24px;font-weight:700;margin:6px 0 2px}.sub{color:var(--mut);font-size:13px;margin:0 0 20px;line-height:1.5}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:14px}.card h2{font-size:13px;font-weight:650;margin:0 0 2px}.card .note{font-size:11px;color:var(--mut);margin:0 0 10px;line-height:1.45}.lbl{font-size:10px;color:var(--mut);letter-spacing:.08em;text-transform:uppercase}.swrow{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #1c1c20;cursor:pointer;-webkit-user-select:none;user-select:none}.swrow:last-child{border-bottom:none}.swtxt{flex:1}.swtxt b{display:block;font-size:13px;font-weight:600}.swtxt span{font-size:11px;color:var(--mut)}.sw{position:relative;width:38px;height:62px;border-radius:12px;background:linear-gradient(#0d0d0f,#161619);border:1px solid var(--line2);box-shadow:inset 0 2px 6px #0009;flex:none}.sw:after{content:"";position:absolute;left:50%;top:10px;bottom:10px;width:2px;margin-left:-1px;background:#0a0a0b;border-radius:1px}.sw .paddle{position:absolute;left:4px;right:4px;height:26px;border-radius:9px;top:4px;background:linear-gradient(#3d3d44,#26262a);box-shadow:0 3px 6px #00000080,inset 0 1px #ffffff14;transition:top .22s cubic-bezier(.34,1.7,.6,1),background .22s}.sw.on .paddle{top:31px;background:linear-gradient(#ffe092,var(--acc2));box-shadow:0 3px 10px #ffd16659,inset 0 1px #ffffff59}.swstate{font-size:9px;color:var(--mut);width:24px;text-align:center}.swstate.on{color:var(--acc)}.swdetail{padding:2px 0 14px;border-bottom:1px solid #1c1c20;margin-bottom:2px;animation:drop .3s cubic-bezier(.3,1.3,.5,1)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.chip{font-size:11px;color:#c8c8cc;border:1px solid var(--line2);border-radius:999px;padding:5px 11px;-webkit-user-select:none;user-select:none;cursor:pointer;background:transparent;transition:transform .08s}.chip:active{transform:scale(.93)}.chip.x{color:var(--mut);text-decoration:line-through;border-color:#232327}.chip.x:after{content:" ✕"}.dialwrap{display:flex;flex-direction:column;align-items:center;padding:8px 0 4px}.dial{position:relative;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle at 50% 42%,#1a1a1e,#101013 70%);border:1px solid var(--line2);box-shadow:inset 0 4px 18px #0000008c,0 10px 30px #00000059;touch-action:none;cursor:grab}.dial:active{cursor:grabbing}.tickw,.ind{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:center;pointer-events:none}.tick{position:absolute;top:10px;left:50%;width:2px;height:8px;margin-left:-1px;background:#3a3a40;border-radius:1px}.tick.major{height:12px;background:#55555e}.ticklbl{position:absolute;top:26px;left:50%;transform:translate(-50%);font-size:9px;color:var(--mut);letter-spacing:.04em;white-space:nowrap}.ind .dot{position:absolute;top:7px;left:50%;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 5px #ffd16626,0 0 18px #ffd16680}.ind.snap{transition:transform .28s cubic-bezier(.3,1.4,.5,1)}.dialface{position:absolute;top:52px;right:52px;bottom:52px;left:52px;border-radius:50%;background:#0e0e10;border:1px solid #202024;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.durlbl{font-size:26px;font-weight:700}.backlbl{font-size:11px;color:var(--mut);margin-top:3px}.dialhint{font-size:10px;color:var(--mut);margin-top:12px;letter-spacing:.05em}.slideflow{margin:6px 0 20px}.slide{position:relative;height:58px;border-radius:999px;background:#141417;border:1px solid var(--line2);overflow:hidden;touch-action:none}.slide .fill{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#ffd1662e,#ffd1660d);opacity:0;transition:opacity .15s}.slide .slbl{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);transition:opacity .15s}.slide .knob{position:absolute;top:4px;left:4px;width:50px;height:50px;border-radius:50%;background:linear-gradient(#ffe092,var(--acc2));display:flex;align-items:center;justify-content:center;font-size:20px;color:#141414;font-weight:700;box-shadow:0 4px 14px #ffd16659;will-change:transform;cursor:grab;touch-action:none}.slide .knob.spring{transition:transform .3s cubic-bezier(.3,1.4,.5,1)}.slide.dark .knob{background:linear-gradient(#3d3d44,#26262a);color:var(--acc);box-shadow:0 4px 14px #00000080}.ringhead{position:sticky;top:0;z-index:40;margin:0 -18px;padding:14px 18px;background:#0a0a0bd1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.ringrow{display:flex;align-items:center;gap:18px}.ring{position:relative;width:132px;height:132px;border-radius:50%;flex:none}.ring .inner{position:absolute;top:9px;right:9px;bottom:9px;left:9px;border-radius:50%;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center}.remain{font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}.ring .inner span{font-size:9px;color:var(--mut);letter-spacing:.1em;text-transform:uppercase;margin-top:2px}.ringinfo{flex:1}.ringinfo .big{font-size:16px;font-weight:650;margin-bottom:4px}.ringinfo p{font-size:11.5px;color:var(--mut);margin:0 0 8px;line-height:1.45}.pin{display:inline-flex;align-items:center;gap:5px;font-size:9px;color:var(--acc);border:1px solid rgba(255,209,102,.35);border-radius:999px;padding:3px 9px;letter-spacing:.08em;text-transform:uppercase}.pin:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--acc);animation:pulse 1.6s infinite}.pin.off{color:var(--mut);border-color:var(--line2)}.pin.off:before{background:var(--mut);animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.logrow{padding:11px 0;border-bottom:1px solid #1c1c20;animation:drop .35s cubic-bezier(.3,1.3,.5,1)}.logrow:last-child{border-bottom:none}.logrow b{font-size:12px;font-weight:650}.logrow b.sys{color:var(--mut)}.logrow .t{font-size:10px;color:#55555e;margin-left:8px}.logrow p{margin:3px 0 0;font-size:12px;color:#b8b8bf;line-height:1.4}@keyframes drop{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.ghostlink{display:block;text-align:center;font-size:11px;color:var(--mut);margin-top:16px;cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px;background:none;border:none;width:100%}.linkfield{width:100%;padding:12px 14px;border-radius:12px;background:#0e0e10;border:1px solid var(--line2);color:var(--acc);font-size:12px;outline:none;word-break:break-all;margin-top:8px}.linkbtn{display:block;width:100%;margin-top:10px;padding:15px;border-radius:999px;background:linear-gradient(#ffe092,var(--acc2));color:#141414;font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:none;cursor:pointer}.linkbtn:active{transform:scale(.98)}.linkbtn.dark{background:#1a1a1e;color:var(--txt);border:1px solid var(--line2);font-weight:600}.linkbtn:disabled{opacity:.45}input[type=text],input[type=email],input[type=tel]{width:100%;background:#0d0d0f;border:1px solid var(--line2);border-radius:12px;color:var(--txt);font-size:15px;padding:13px 14px;outline:none}input:focus{border-color:var(--acc2)}button{background:linear-gradient(#ffe092,var(--acc2));color:#141414;border:none;border-radius:999px;font-size:13px;font-weight:700;padding:14px 18px;cursor:pointer;letter-spacing:.02em;font-family:inherit}button:active{transform:scale(.98)}button:disabled{opacity:.45;transform:none}button.wide{display:block;width:100%}button.dark2{background:#1a1a1e;color:var(--txt);border:1px solid var(--line2);font-weight:600}button.linky{color:var(--acc);cursor:pointer;text-decoration:underline;background:none;border:none;font-size:inherit;padding:0;font-weight:500;letter-spacing:0}button.linky:active{transform:none}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.grow{flex:1}.err{color:var(--err);font-size:12.5px;margin:8px 0 0}.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%) translateY(20px);background:#1c1c20;border:1px solid var(--line2);color:var(--txt);font-size:12px;padding:10px 18px;border-radius:999px;opacity:0;transition:.3s;z-index:60;white-space:nowrap;box-shadow:0 10px 30px #00000080;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}table{width:100%;border-collapse:collapse;font-size:12.5px}td,th{text-align:left;padding:7px 6px;border-bottom:1px solid var(--line)}th{color:var(--mut);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.spread{display:flex;justify-content:space-between;align-items:center}.qr{background:#fff;padding:12px;border-radius:16px;display:inline-block}.qr img{display:block;width:220px;height:220px}.center{text-align:center}code.tokenbox{display:block;background:#0d0d0f;border:1px solid var(--line2);border-radius:10px;padding:10px 12px;font-size:12px;word-break:break-all;color:var(--acc)}.okmsg{color:var(--ok);font-size:12.5px;margin:8px 0 0}.footer{color:var(--mut);font-size:11px;text-align:center;margin-top:24px}button.small,button.ghost{background:transparent;color:var(--txt);border:1px solid var(--line2);border-radius:999px;padding:10px 16px;font-size:12px;cursor:pointer}button.danger{background:transparent;border:1px solid #5a2b2b;color:var(--err);border-radius:999px;padding:10px 16px;font-size:12px;cursor:pointer}
