:root{--bg:#0b0c0e;--bg-soft:#121418;--panel:#16191e;--panel-2:#1b1f25;--line:#23272e;--line-soft:#2c313a;--accent:#d4a45a;--accent-soft:#e8c488;--accent-glow:#d4a45a47;--chrome:#c9ced6;--text:#ecedf0;--muted:#8a8f99;--white:#fff;--ok:#46b277;--warn:#d9a441;--danger:#e06a5a;--danger-bg:#e06a5a1f;--ok-bg:#46b2771f;--warn-bg:#d9a4411f;--radius:8px;--radius-lg:14px;--maxw:620px;--tabbar-h:64px;--font-display:"Cinzel", Georgia, "Times New Roman", serif;--font-body:"Manrope", system-ui, -apple-system, sans-serif;--shadow:0 8px 28px #00000059}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100svh;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-display);color:var(--white);letter-spacing:.01em;font-weight:700;line-height:1.1}a{color:var(--accent);text-decoration:none}input,button,select,textarea{color:inherit;font-family:inherit;font-size:1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{width:100%;max-width:var(--maxw);flex-direction:column;min-height:100svh;margin:0 auto;display:flex}.topbar{z-index:50;padding:14px 16px;padding-top:max(14px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#0b0c0ee0;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar .brand{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--white);align-items:center;gap:9px;font-size:.92rem;font-weight:700;display:flex}.brand-box{background:var(--accent);color:#0b0c0e;border-radius:5px;padding:3px 8px;font-weight:800}.whoami{border:1px solid var(--line-soft);background:var(--panel);color:var(--text);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:7px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.whoami .dot{background:var(--accent);border-radius:50%;width:7px;height:7px}main.content{padding:18px 16px calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 26px);flex:1}.tabbar{z-index:60;padding:6px 8px calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);background:#0d0f12f0;justify-content:center;gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar .inner{width:100%;max-width:var(--maxw);gap:4px;display:flex}.tab{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:3px;padding:8px 4px;font-size:.72rem;font-weight:600;display:flex}.tab .ico{font-size:1.3rem;line-height:1}.tab.active{color:var(--accent);background:var(--accent-glow)}.tab:active{transform:scale(.96)}.page-title{margin-bottom:2px;font-size:1.5rem}.page-sub{color:var(--muted);margin-bottom:18px;font-size:.9rem}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-size:.72rem;font-weight:700}.stack{flex-direction:column;gap:12px;display:flex}.stack-sm{flex-direction:column;gap:8px;display:flex}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);padding:16px}.card.pad-sm{padding:12px 14px}.row{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);text-align:left;width:100%;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;transition:border-color .15s,background .15s;display:flex}button.row,a.row{cursor:pointer}button.row:hover,a.row:hover{border-color:var(--line-soft);background:var(--panel-2)}.row:active{transform:scale(.995)}.row .lead{min-width:0}.row .lead .name{color:var(--white);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.row .lead .sub{color:var(--muted);margin-top:2px;font-size:.82rem}.row .chev{color:var(--muted);flex-shrink:0}.pill{white-space:nowrap;border:1px solid var(--line-soft);background:var(--panel-2);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.pill.ok{color:var(--ok);background:var(--ok-bg);border-color:#0000}.pill.warn{color:var(--warn);background:var(--warn-bg);border-color:#0000}.pill.danger{color:var(--danger);background:var(--danger-bg);border-color:#0000}.pill.ghost{background:0 0}.tag{background:var(--bg-soft);border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-block}.btn{border-radius:var(--radius);cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:13px 20px;font-weight:700;transition:background .15s,border-color .15s,opacity .15s,transform 50ms;display:inline-flex}.btn:active{transform:scale(.98)}.btn[disabled]{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:#0b0c0e;box-shadow:0 8px 24px var(--accent-glow)}.btn-primary:hover:not([disabled]){background:var(--accent-soft)}.btn-ghost{background:var(--panel);border-color:var(--line-soft);color:var(--text)}.btn-ghost:hover{border-color:var(--accent);color:var(--white)}.btn-danger{border-color:var(--danger);color:var(--danger);background:0 0}.btn-danger:hover{background:var(--danger-bg)}.btn-block{width:100%;display:flex}.btn-lg{padding:17px 22px;font-size:1.05rem}.btn-sm{padding:8px 14px;font-size:.85rem}.field{flex-direction:column;gap:6px;display:flex}.field>label,.field>.lbl{color:var(--muted);font-size:.82rem;font-weight:600}.input,select.input,textarea.input{background:var(--bg-soft);border:1px solid var(--line-soft);border-radius:var(--radius);width:100%;color:var(--text);padding:13px 14px;transition:border-color .15s}.input:focus{border-color:var(--accent);outline:none}.input::placeholder{color:#5d636e}textarea.input{resize:vertical;min-height:76px}.input-row{gap:10px;display:flex}.input-affix{background:var(--bg-soft);border:1px solid var(--line-soft);border-radius:var(--radius);align-items:center;display:flex;overflow:hidden}.input-affix .input{background:0 0;border:0}.input-affix .affix{color:var(--muted);border-left:1px solid var(--line);align-self:stretch;align-items:center;padding:0 14px;font-weight:600;display:flex}.check{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.check input{width:20px;height:20px;accent-color:var(--accent)}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.search{margin-bottom:14px;position:relative}.search .input{padding-left:40px}.search .ico{color:var(--muted);position:absolute;top:50%;left:13px;transform:translateY(-50%)}.presets{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.preset{border-radius:var(--radius);border:1px solid var(--line-soft);background:var(--panel);color:var(--text);cursor:pointer;text-align:center;padding:14px 4px;font-weight:700}.preset.active{border-color:var(--accent);background:var(--accent-glow);color:var(--accent-soft)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line-soft);background:var(--panel);color:var(--text);cursor:pointer;border-radius:999px;padding:10px 16px;font-size:.9rem;font-weight:700}.chip.active{border-color:var(--accent);background:var(--accent-glow);color:var(--accent-soft)}.readout{background:linear-gradient(160deg, var(--panel-2), var(--panel));border:1px solid var(--line-soft);border-radius:var(--radius-lg);text-align:center;padding:18px}.readout .big{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px;display:flex}.readout .num{font-family:var(--font-display);color:var(--accent);font-size:2.5rem;font-weight:700;line-height:1}.readout .lbl{color:var(--muted);font-size:.95rem;font-weight:600}.readout .split{border-top:1px solid var(--line);justify-content:center;gap:22px;margin-top:14px;padding-top:14px;display:flex}.readout .split .col .v{color:var(--white);font-size:1.25rem;font-weight:800}.readout .split .col .k{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.74rem}.note{border-radius:var(--radius);align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;font-weight:600;display:flex}.note.ok{background:var(--ok-bg);color:var(--ok)}.note.danger{background:var(--danger-bg);color:var(--danger)}.toast{left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 16px);z-index:80;background:var(--accent);color:#0b0c0e;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:12px 18px;font-weight:700;display:flex;position:fixed;transform:translate(-50%)}.empty{text-align:center;color:var(--muted);padding:40px 20px}.empty .ico{opacity:.5;font-size:2.4rem}.empty p{margin:8px 0 16px}.section-h{justify-content:space-between;align-items:center;margin:22px 0 10px;display:flex}.section-h h2{font-size:1.05rem}.auth-wrap{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:22px;max-width:460px;min-height:100svh;margin:0 auto;padding:24px;display:flex}.auth-brand{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:10px;font-weight:700;display:flex}.pin-dots{justify-content:center;gap:14px;height:20px;display:flex}.pin-dots .d{border:2px solid var(--line-soft);border-radius:50%;width:14px;height:14px}.pin-dots .d.on{background:var(--accent);border-color:var(--accent)}.keypad{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;max-width:320px;display:grid}.key{aspect-ratio:1.6;border-radius:var(--radius);border:1px solid var(--line);background:var(--panel);color:var(--white);cursor:pointer;font-size:1.5rem;font-weight:700}.key:active{background:var(--panel-2)}.key.wide{font-size:1rem}.name-grid{grid-template-columns:1fr 1fr;gap:12px;width:100%;display:grid}.name-btn{border-radius:var(--radius-lg);border:1px solid var(--line-soft);background:var(--panel);color:var(--white);cursor:pointer;padding:22px 12px;font-size:1.05rem;font-weight:700}.name-btn:hover{border-color:var(--accent)}.err{color:var(--danger);font-size:.9rem;font-weight:600}.hairline{background:linear-gradient(90deg, transparent, var(--accent), transparent);width:60px;height:2px}
