.stat{display:flex;flex-direction:column;gap:3px;background:var(--surface);border:1px solid var(--hairline);border-radius:16px;padding:15px 17px;box-shadow:0 1px 3px rgba(20,23,26,.04)}.stat-label{font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:#9aa4ae}.stat-value{font-size:26px;font-weight:700;line-height:1.15;letter-spacing:-.025em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-value.accent{color:#5f9e00}.stat-sub{font-size:11.5px;font-weight:600}.stat-sub.up{color:#5f9e00}.stat-sub.down{color:var(--danger)}.stat-sub.muted{color:var(--muted)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .stat-sub.up,:root:not([data-theme=light]) .stat-value.accent{color:var(--accent)}}:root[data-theme=dark] .stat-sub.up,:root[data-theme=dark] .stat-value.accent{color:var(--accent)}.chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;background:var(--sunk);color:var(--muted)}.chip.green{background:#dcffb0;color:#33670a}.chip.red{background:#ffe2e6;color:#a51e31}.chip.orange{background:#ffeed6;color:#96550a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chip.green{background:#26340f;color:#b6ff2e}:root:not([data-theme=light]) .chip.red{background:#3a1b20;color:#ff9aa8}:root:not([data-theme=light]) .chip.orange{background:#3a2a12;color:#ffc178}}:root[data-theme=dark] .chip.green{background:#26340f;color:#b6ff2e}:root[data-theme=dark] .chip.red{background:#3a1b20;color:#ff9aa8}:root[data-theme=dark] .chip.orange{background:#3a2a12;color:#ffc178}.chip-row{display:flex;flex-wrap:wrap;gap:7px}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:18px;padding:17px 19px;box-shadow:0 1px 3px rgba(20,23,26,.04)}.section-title{font-size:15px;font-weight:700;letter-spacing:-.01em;margin:0 0 10px;color:var(--ink);text-transform:none}.grid{display:grid;grid-gap:11px;gap:11px}.grid.g4{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.grid.g3{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.stack{gap:14px}.list,.stack{display:flex;flex-direction:column}.list>*{padding:9px 0;border-bottom:1px solid var(--hairline);font-size:13.5px}.list>:last-child{border-bottom:0;padding-bottom:0}.empty-inline{font-size:13px;color:var(--muted);margin:0}.empty-state{display:flex;flex-direction:column;align-items:center;gap:4px;border:1px dashed var(--hairline);border-radius:18px;background:var(--surface);padding:44px 24px;text-align:center}.empty-title{font-size:16px;font-weight:700;margin:0}.empty-sub{color:var(--muted)}.empty-sub,.error-note{font-size:13px;margin:0}.error-note{background:#ffe2e6;color:#a51e31;border-radius:12px;padding:11px 14px;font-weight:600}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .error-note{background:#3a1b20;color:#ff9aa8}}:root[data-theme=dark] .error-note{background:#3a1b20;color:#ff9aa8}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;padding:0 17px;border-radius:999px;font-family:inherit;font-size:13.5px;font-weight:600;cursor:pointer;border:1px solid var(--hairline);background:var(--surface);color:var(--ink);transition:opacity .12s,background .12s}.btn:hover:not(:disabled){background:var(--sunk)}.btn.small{height:32px;padding:0 13px;font-size:12.5px}.btn.primary{background:var(--accent);border-color:var(--accent);color:#14171a}.btn.primary:hover:not(:disabled){opacity:.85;background:var(--accent)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#ffffff}.btn.danger:hover:not(:disabled){opacity:.88;background:var(--danger)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-row{display:flex;flex-wrap:wrap;gap:8px}.sheet-backdrop{position:fixed;inset:0;z-index:60;background:rgba(20,23,26,.42);display:flex;align-items:flex-end;justify-content:center;animation:fade .16s ease-out}@media (min-width:700px){.sheet-backdrop{align-items:center}}@keyframes fade{0%{opacity:0}}.sheet{width:100%;max-width:460px;background:var(--surface);color:var(--ink);border:1px solid var(--hairline);border-radius:24px 24px 0 0;padding:10px 22px 26px;display:flex;flex-direction:column;gap:13px;animation:rise .22s cubic-bezier(.22,1,.36,1);max-height:92vh;overflow-y:auto}@media (min-width:700px){.sheet{border-radius:24px;padding-top:24px}}@keyframes rise{0%{transform:translateY(18px);opacity:0}}.sheet-grip{width:38px;height:4px;border-radius:999px;background:var(--hairline);align-self:center;margin-bottom:6px}@media (min-width:700px){.sheet-grip{display:none}}.sheet-title{font-size:18px;font-weight:700;letter-spacing:-.02em;margin:0}.sheet-desc{font-size:13.5px;color:var(--muted);margin:0}.sheet-actions{display:flex;flex-direction:column;gap:8px;margin-top:4px}.sheet-actions .btn{height:46px;width:100%}.field{display:flex;flex-direction:column;gap:5px}.field-label{font-size:12px;font-weight:600;color:var(--muted)}.field-label code{font-family:ui-monospace,monospace;background:var(--sunk);padding:1px 5px;border-radius:4px;color:var(--ink)}.field-hint{font-size:11.5px;color:var(--muted)}.input,select.input{height:42px;padding:0 13px;border-radius:11px;border:1px solid var(--hairline);background:var(--ground);color:var(--ink);font-family:inherit;font-size:14px;width:100%}.input:focus-visible,select.input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.live{display:inline-flex;align-items:center;gap:7px;background:#dcffb0;color:#33670a;border-radius:999px;padding:4px 11px;font-size:11px;font-weight:700;letter-spacing:.04em}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .live{background:#26340f;color:#b6ff2e}}:root[data-theme=dark] .live{background:#26340f;color:#b6ff2e}.live-dot{position:relative;width:7px;height:7px}.live-dot i{position:absolute;inset:0;border-radius:999px;background:currentColor}.live-dot i:first-child{animation:ping 1.7s cubic-bezier(0,0,.2,1) infinite;opacity:.6}@keyframes ping{75%,to{transform:scale(2.3);opacity:0}}.chart-wrap{position:relative;width:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chart{display:block;cursor:crosshair;touch-action:none}.chart-grid{stroke:var(--hairline);stroke-width:1}.chart-cross{stroke:var(--muted);stroke-width:1;stroke-dasharray:4 4;opacity:.7}.chart-tick{font-size:10px;fill:var(--muted);font-family:inherit}.chart-area{animation:chartFade .6s .35s both}@keyframes chartFade{0%{opacity:0}to{opacity:1}}.chart-line{stroke-dasharray:3000;stroke-dashoffset:3000;animation:draw .9s cubic-bezier(.22,1,.36,1) forwards}@keyframes draw{to{stroke-dashoffset:0}}.chart-dot{stroke:var(--surface);stroke-width:2.5;animation:pop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes pop{0%{transform:scale(0);transform-origin:center}}.chart-tip{position:absolute;z-index:10;pointer-events:none;background:var(--surface);border:1px solid var(--hairline);border-radius:11px;padding:7px 11px;box-shadow:0 4px 14px rgba(20,23,26,.1)}.chart-tip p{margin:0}.chart-tip-day{font-size:11px;font-weight:500;color:var(--muted)}.chart-tip-n{font-size:16px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart-tip-n span{font-size:11px;font-weight:600;color:var(--muted)}.tabs{display:inline-flex;gap:2px;background:var(--sunk);border-radius:999px;padding:3px}.tab{border:0;background:transparent;cursor:pointer;font-family:inherit;font-size:12.5px;font-weight:600;color:var(--muted);padding:6px 13px;border-radius:999px;transition:background .14s,color .14s}.tab.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(20,23,26,.06)}.row-between{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--sunk)}.back{font-size:13px;color:var(--muted);font-weight:500;display:inline-block;margin-bottom:12px}.back:hover{color:var(--ink)}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));grid-gap:8px;gap:8px}.thumb{aspect-ratio:.78;border-radius:11px;overflow:hidden;background:var(--sunk);border:1px solid var(--hairline)}.thumb img{width:100%;height:100%;object-fit:cover;display:block}@media (prefers-reduced-motion:reduce){.chart-area,.chart-dot,.chart-line,.live-dot i:first-child,.sheet,.sheet-backdrop{animation:none!important}.chart-line{stroke-dashoffset:0}}:root{--ground:#f0f8ff;--surface:#ffffff;--sunk:#e8f1fb;--hairline:#e1e8f0;--ink:#14171a;--muted:#6b7580;--accent:#b6ff2e;--danger:#d1344a;--ok:#1c8b53;--radius-card:20px;--radius-pill:999px;--sidebar:248px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#121417;--surface:#1c1f22;--sunk:#16191c;--hairline:#2c3134;--ink:#f2f4f5;--muted:#9aa4ab;--danger:#ff6b7f;--ok:#4ade80}}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--ground);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{border-right:1px solid var(--hairline);background:var(--surface);padding:20px 12px 40px;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:8px;padding:4px 10px 22px}.brand-name{font-size:17px;font-weight:800;letter-spacing:-.02em}.brand-spark{width:11px;height:14px;color:var(--accent)}.brand-tag{font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-left:auto}.branch{margin-bottom:16px}.branch-head{gap:9px;padding:5px 10px;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.branch-head,.leaf{display:flex;align-items:center;color:var(--muted)}.leaf{justify-content:space-between;padding:7px 10px 7px 30px;border-radius:9px;font-size:13.5px;font-weight:500}.leaf.on,.leaf:hover{background:var(--sunk);color:var(--ink)}.leaf.on{font-weight:600}.leaf.soon{opacity:.45}.leaf-note{font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.content{padding:30px 34px 80px;max-width:1180px}.page-head{margin-bottom:26px}h1{font-size:24px;font-weight:700;letter-spacing:-.02em;margin:0 0 5px}.page-sub{color:var(--muted);font-size:14px;margin:0}.banner{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--hairline);border-left:3px solid var(--accent);background:var(--surface);border-radius:12px;padding:12px 14px;margin-bottom:24px;font-size:13.5px}.banner b{font-weight:600}.banner p{margin:0;color:var(--muted)}.banner p b{color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(184px,1fr));grid-gap:14px;gap:14px;margin-bottom:30px}.card-label{font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.card-value{font-size:27px;font-weight:800;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card-note{font-size:12.5px;margin-top:3px}.card-note,h2{color:var(--muted)}h2{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin:34px 0 12px}.panel{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-card);overflow:hidden}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13.5px}th{text-align:left;padding:11px 16px;font-size:10.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);white-space:nowrap}td,th{border-bottom:1px solid var(--hairline)}td{padding:12px 16px;vertical-align:middle}tr:last-child td{border-bottom:0}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px}.dim{color:var(--muted)}.pill{display:inline-block;padding:2px 9px;border-radius:var(--radius-pill);font-size:11.5px;font-weight:600;border:1px solid var(--hairline)}.pill.accent{background:var(--accent);border-color:var(--accent);color:#14171a}.pill.quiet{color:var(--muted)}.error{background:var(--surface);border:1px solid var(--hairline);border-left:3px solid var(--danger);border-radius:12px;padding:14px 16px;font-size:13.5px}.error b{color:var(--danger)}.login{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:100%;max-width:360px;background:var(--panel,#fff);border:1px solid var(--line,#e6e8ee);border-radius:18px;padding:32px 28px}.login-mark{font-size:20px;font-weight:800;letter-spacing:-.02em}.login-card h1{margin:2px 0 22px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#6b7280)}.login-card form{display:grid;grid-gap:8px;gap:8px}.login-card label{font-size:12px;font-weight:600;color:var(--muted,#6b7280)}.login-card input{font:inherit;font-size:15px;padding:11px 13px;border:1px solid var(--line,#e6e8ee);border-radius:10px;background:var(--bg,#fff);color:inherit}.login-card input:focus-visible{outline:2px solid var(--accent,#6d5efc);outline-offset:1px}#code{letter-spacing:.42em;font-size:19px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.login-card button{font:inherit;font-size:14px;font-weight:600;margin-top:6px;padding:11px;border:0;border-radius:999px;background:var(--ink,#14171a);color:#fff;cursor:pointer}.login-card button:disabled{opacity:.5;cursor:default}.login-sent{font-size:13.5px;line-height:1.5;color:var(--muted,#6b7280);margin:0 0 6px}.login-error{font-size:13px;color:#b3261e;margin:2px 0 0}.login-notice{font-size:13px;color:#7a5b00;background:#fff6e5;padding:9px 11px;border-radius:9px;margin:0 0 14px}