:root{--bg: #0a1730;--bg-2: #0e2148;--card: #12264f;--card-2: #16294f;--line: #23386b;--line-soft: #1b2f5c;--ink: #eef3fb;--muted: #93a4c4;--yellow: #f5d01e;--yellow-dark: #d9b70a;--on-accent: #12264f;--bolt: #2e6bff;--red: #e30613;--red-soft: #3a1420;--green: #27c08a;--green-soft: #10352c;--backdrop: rgba(4, 10, 24, .66);color-scheme:dark;--radius: 14px;--radius-sm: 10px;--shadow: 0 1px 2px rgba(0, 0, 0, .28), 0 10px 28px rgba(0, 0, 0, .28);font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}input,select{font-family:inherit}.app{max-width:720px;margin:0 auto;padding:0 12px 88px}.top{position:sticky;top:0;z-index:20;margin:0 -12px 12px;padding:calc(12px + env(safe-area-inset-top)) 14px 12px;background:radial-gradient(120% 140% at 100% 0%,rgba(46,107,255,.35),transparent 55%),linear-gradient(135deg,var(--bg-2),#0a1c3d);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.top-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:18px;letter-spacing:-.01em}.brand .accent{color:var(--yellow)}.crest{width:28px;height:28px}.whoami{display:flex;align-items:center;gap:7px;font-size:13px}.whoami button{background:#ffffff14;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-weight:600;font-size:13px}.whoami button:hover{border-color:var(--yellow)}.mode-pill{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:999px;border:1px solid var(--line);background:#ffffff0d;color:var(--muted)}.mode-pill.live{color:var(--yellow);border-color:var(--yellow-dark)}.tabs{display:flex;gap:5px;margin-top:12px}.tabs button{flex:1;border:1px solid transparent;background:#ffffff0f;color:var(--muted);padding:8px 6px;border-radius:9px;font-weight:700;font-size:12.5px;transition:background .15s,color .15s}.tabs button:hover{color:var(--ink)}.tabs button.active{background:var(--yellow);color:var(--on-accent)}.tabs button .badge{display:inline-block;margin-left:4px;min-width:16px;padding:0 4px;border-radius:999px;background:var(--red);color:#fff;font-size:11px;line-height:16px}.tabs button.active .badge{background:var(--on-accent);color:var(--yellow)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:13px;margin-bottom:10px}.section-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:16px 4px 8px}.hero{position:relative;overflow:hidden;background:radial-gradient(130% 120% at 0% 0%,rgba(245,208,30,.14),transparent 45%),radial-gradient(120% 130% at 100% 100%,rgba(46,107,255,.28),transparent 50%),linear-gradient(135deg,#0f2247,#0c1e42);background-color:#0f2247;border:1px solid var(--line)}.hero .eyebrow{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:var(--yellow)}.hero.group .eyebrow{color:var(--bolt)}.hero h2{margin:4px 0 2px;font-size:22px;letter-spacing:-.02em}.hero .meta{color:var(--muted);font-size:13.5px}.hero .going{margin-top:10px}.fx{display:flex;align-items:center;gap:11px}.fx-no{width:32px;height:32px;flex:none;border-radius:9px;background:var(--card-2);color:var(--muted);font-weight:800;display:grid;place-items:center;font-size:13px;border:1px solid var(--line)}.fx-main{flex:1;min-width:0}.fx-title{font-weight:700;font-size:15px}.fx-sub{color:var(--muted);font-size:12.5px;margin-top:1px}.fx-right{text-align:right;flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:3px}.chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.chip{display:inline-flex;align-items:center;gap:5px;background:var(--card-2);border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:4px 9px;font-size:12.5px;font-weight:600}.chip.out{text-decoration:line-through;opacity:.5}.chip.taker{background:var(--green-soft);border-color:#1c5a48;color:var(--green);text-decoration:none;opacity:1}.chip.free{background:#f5d01e1f;border-color:var(--yellow-dark);color:var(--yellow)}.avatar{width:19px;height:19px;border-radius:999px;background:var(--bolt);color:#fff;font-size:9.5px;font-weight:800;display:grid;place-items:center}.cat{font-weight:800;font-size:11px;padding:2px 7px;border-radius:7px}.cat.A{background:var(--red-soft);color:#ff6b76}.cat.B{background:#2e6bff29;color:#7aa2ff}.cat.C{background:#93a4c424;color:var(--muted)}.cat.CL{background:#f5d01e24;color:var(--yellow)}.price{font-weight:800;font-size:15px}.btn{border:1px solid var(--line);background:var(--card-2);color:var(--ink);border-radius:var(--radius-sm);padding:9px 12px;font-weight:700;font-size:14px}.btn:hover{border-color:#35508f}.btn.primary{background:var(--yellow);color:var(--on-accent);border-color:var(--yellow)}.btn.primary:hover{background:var(--yellow-dark);border-color:var(--yellow-dark)}.btn.ghost{background:transparent}.btn.wa{background:#25d366;border-color:#25d366;color:#06331b}.btn.wa:hover{background:#1fb757}.btn.danger{color:#ff8a93;border-color:#5a2530}.btn.sm{padding:6px 10px;font-size:12.5px;border-radius:8px}.btn-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.freed{border-color:var(--yellow-dark);box-shadow:0 0 0 1px #f5d01e40,var(--shadow)}.freed .fx-title:after{content:" · spare";color:var(--yellow);font-weight:800}.chase{margin-top:9px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--card-2);border:1px dashed var(--line);font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.chase strong{color:var(--ink);font-weight:700}.chase a{color:var(--yellow);text-decoration:none;font-weight:700}.chase a:hover{text-decoration:underline}.balance{display:flex;gap:10px}.bal{flex:1;text-align:center}.bal-lbl{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.bal-amt{display:block;font-size:24px;font-weight:800;margin-top:3px}.bal-amt.owe{color:#ff8a93}.bal-amt.owed{color:var(--green)}.ledger-row{display:flex;align-items:center;gap:10px}.ledger-row .fx-main{flex:1;min-width:0}.ledger-row .fx-title{font-size:14px}.ledger-row.settled{opacity:.85}.ledger-row .tick{color:var(--green);font-weight:800}.avail{margin-top:9px;padding:9px 11px;border-radius:var(--radius-sm);background:#2e6bff24;border:1px solid var(--bolt);color:#d5e2ff;font-size:13px;font-weight:600;display:flex;gap:8px;align-items:center}.avail strong{color:#fff;font-weight:800}.avail-ico{font-size:16px;line-height:1}.seg{display:inline-flex;gap:3px;background:var(--card-2);border:1px solid var(--line);border-radius:999px;padding:3px}.seg button{border:0;background:transparent;color:var(--muted);font-weight:700;font-size:12.5px;padding:6px 14px;border-radius:999px}.seg button.active{background:var(--yellow);color:var(--on-accent)}.view-bar{display:flex;align-items:center;justify-content:space-between;margin:16px 4px 10px;gap:10px}.view-bar .section-title{margin:0}.agenda-month{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--yellow);margin:14px 4px 7px}.agenda-row{display:flex;align-items:center;gap:11px;width:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 11px;margin-bottom:7px;color:var(--ink)}.agenda-row:hover{border-color:#35508f}.agenda-row.freed{border-color:var(--yellow-dark)}.agenda-date{width:42px;flex:none;text-align:center}.agenda-date .d{font-size:18px;font-weight:800;line-height:1}.agenda-date .m{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase}.agenda-mine{width:7px;height:7px;border-radius:999px;background:var(--yellow);flex:none}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal-head button{background:var(--card-2);border:1px solid var(--line);color:var(--ink);border-radius:8px;width:34px;height:34px;font-size:16px;font-weight:800}.cal-head .cal-title{font-weight:800;font-size:15px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-dow{text-align:center;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;padding-bottom:2px}.cal-cell{aspect-ratio:1 / 1;border-radius:8px;border:1px solid var(--line-soft);background:var(--card);padding:3px;display:flex;flex-direction:column;gap:2px;overflow:hidden}.cal-cell.empty{background:transparent;border-color:transparent}.cal-cell .num{font-size:10.5px;color:var(--muted);font-weight:700}.cal-cell.today .num{color:var(--yellow)}.cal-pill{border:0;border-radius:5px;padding:2px 4px;font-size:9.5px;font-weight:800;color:#fff;line-height:1.15;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-pill.A{background:#7a1420;color:#ff9ba2}.cal-pill.B{background:#1a3576;color:#a8c1ff}.cal-pill.C{background:#2a3a5c;color:#c2cfe6}.cal-pill.CL{background:#6a5410;color:var(--yellow)}.cal-pill.freed{outline:2px solid var(--yellow);outline-offset:-2px}.cal-pill .mine-dot{color:var(--yellow)}.cal-tbc{margin-top:12px}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:end center;z-index:50}.sheet{background:var(--bg-2);width:100%;max-width:720px;border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px #00000073}.sheet h3{margin:0 0 3px}.sheet .sub{color:var(--muted);font-size:13.5px;margin-bottom:14px}.field{display:block;margin-bottom:11px}.field span{display:block;font-size:12.5px;font-weight:700;color:var(--muted);margin-bottom:5px}.field input,.field select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:15px;background:var(--card-2);color:var(--ink)}.field input:focus,.field select:focus{outline:none;border-color:var(--yellow)}.field select option{background:var(--bg-2);color:var(--ink)}.gate{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(120% 90% at 100% 0%,rgba(46,107,255,.35),transparent 55%),radial-gradient(100% 80% at 0% 100%,rgba(245,208,30,.12),transparent 55%),linear-gradient(160deg,var(--bg-2),#08122a)}.gate .card{max-width:360px;width:100%;text-align:center;background:var(--card)}.gate h1{margin:8px 0 2px}.gate h1 .accent{color:var(--yellow)}.gate p{color:var(--muted);margin:0 0 16px}.name-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:12px}.name-grid button{padding:12px;border-radius:11px;border:1px solid var(--line);background:var(--card-2);color:var(--ink);font-weight:700}.name-grid button:hover{border-color:#35508f}.name-grid button.sel{background:var(--yellow);color:var(--on-accent);border-color:var(--yellow)}.muted{color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:26px 10px}.hint{font-size:12px;color:var(--muted);margin-top:6px}.eyebrow-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.countdown{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:3px 9px;border-radius:999px;white-space:nowrap;background:var(--yellow);color:var(--on-accent)}.result{font-weight:800;font-size:18px;letter-spacing:-.01em}.result.W{color:var(--green)}.result.D{color:var(--muted)}.result.L{color:#ff8a93}.ft-line{margin-top:9px;padding:7px 10px;border-radius:var(--radius-sm);font-size:13px;font-weight:700;border:1px solid var(--line);background:var(--card-2)}.ft-line strong{font-size:10px;letter-spacing:.06em;text-transform:uppercase;margin-right:6px;padding:2px 5px;border-radius:5px;background:var(--line);color:var(--muted)}.ft-line.W{border-color:#1c5a48}.ft-line.L{border-color:#5a2530}.net-balance{text-align:center;padding:4px 0 2px}.net-amt{display:block;font-size:34px;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:2px 0}.net-amt.owe{color:#ff8a93}.net-amt.owed{color:var(--green)}.net-sub{display:block;font-size:12.5px;color:var(--muted)}.settle-list{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;display:flex;flex-direction:column;gap:7px}.settle-row{display:flex;align-items:center;justify-content:space-between;font-size:13.5px}.settle-row .settle-amt{font-weight:800}.settle-row.owed .settle-amt{color:var(--green)}.settle-row.owe .settle-amt{color:#ff8a93}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat{text-align:center}.stat-n{display:block;font-size:22px;font-weight:800;letter-spacing:-.01em}.stat-n.win{color:var(--green)}.stat-n.draw{color:var(--muted)}.stat-n.loss{color:#ff8a93}.stat-l{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:2px}.stat-card.me{border-color:var(--yellow-dark);box-shadow:0 0 0 1px #f5d01e33,var(--shadow)}.mini-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 12px;font-size:13px;color:var(--muted)}.mini-stats b{color:var(--ink);font-weight:800}.score-input{display:flex;align-items:flex-end;gap:10px}.score-input label{flex:1;display:flex;flex-direction:column;gap:4px}.score-input em{font-style:normal;font-size:11.5px;font-weight:700;color:var(--muted)}.score-input input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:18px;font-weight:800;text-align:center;background:var(--card-2);color:var(--ink)}.score-dash{font-size:20px;font-weight:800;color:var(--muted);padding-bottom:10px}.theme-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.theme-opt{text-align:left;border:1px solid var(--line);background:var(--card-2);color:var(--ink);border-radius:var(--radius-sm);padding:10px;display:flex;flex-direction:column;gap:3px}.theme-opt.sel{border-color:var(--yellow);box-shadow:0 0 0 1px var(--yellow)}.theme-opt .swatch{height:22px;border-radius:6px;margin-bottom:4px;border:1px solid rgba(255,255,255,.15)}.theme-opt[data-theme-preview=away] .swatch{background:linear-gradient(120deg,#0a1730 0,#0a1730 55%,#f5d01e 55%)}.theme-opt[data-theme-preview=highbury] .swatch{background:linear-gradient(120deg,#f4efe3 0,#f4efe3 55%,#7d0a2b 55%)}.theme-name{font-weight:800;font-size:13px}.theme-hint{font-size:11px;color:var(--muted)}:root[data-theme=highbury]{--bg: #ece4d3;--bg-2: #f3ecdd;--card: #fbf7ee;--card-2: #f1e9d7;--line: #d8c9ab;--line-soft: #e4d8bf;--ink: #2a1013;--muted: #8a6f56;--yellow: #a5822d;--yellow-dark: #8a6c22;--on-accent: #fbf7ee;--bolt: #7d0a2b;--red: #a51d2d;--red-soft: #f0dcd8;--green: #2f7d5b;--green-soft: #dcecd9;--backdrop: rgba(42, 16, 19, .5);--shadow: 0 1px 2px rgba(80, 40, 20, .12), 0 10px 28px rgba(80, 40, 20, .15);color-scheme:light}:root[data-theme=highbury] .top{background:radial-gradient(120% 140% at 100% 0%,rgba(125,10,43,.14),transparent 55%),linear-gradient(135deg,#fbf7ee,#efe6d4)}:root[data-theme=highbury] .whoami button{background:#7d0a2b0f}:root[data-theme=highbury] .tabs button{background:#7d0a2b0f}:root[data-theme=highbury] .hero{background:radial-gradient(130% 120% at 0% 0%,rgba(165,130,45,.18),transparent 45%),radial-gradient(120% 130% at 100% 100%,rgba(125,10,43,.14),transparent 50%),linear-gradient(135deg,#fdfaf3,#f4ecdb);background-color:#fdfaf3}:root[data-theme=highbury] .avatar{color:#fff}:root[data-theme=highbury] .btn.primary,:root[data-theme=highbury] .tabs button.active,:root[data-theme=highbury] .seg button.active,:root[data-theme=highbury] .countdown{text-shadow:0 1px 0 rgba(0,0,0,.12)}:root[data-theme=highbury] .cal-pill{color:#fff}:root[data-theme=highbury] .cal-pill.A{background:#8f1a26;color:#ffe3e5}:root[data-theme=highbury] .cal-pill.B{background:#7d0a2b;color:#ffdce4}:root[data-theme=highbury] .cal-pill.C{background:#9a7c46;color:#fff6e6}:root[data-theme=highbury] .cal-pill.CL{background:#a5822d;color:#fff8e6}:root[data-theme=highbury] .cat.A{background:var(--red-soft);color:#a51d2d}:root[data-theme=highbury] .cat.B{background:#7d0a2b1a;color:#7d0a2b}:root[data-theme=highbury] .cat.CL{background:#a5822d29;color:#7a5f18}:root[data-theme=highbury] .gate{background:radial-gradient(120% 90% at 100% 0%,rgba(125,10,43,.14),transparent 55%),radial-gradient(100% 80% at 0% 100%,rgba(165,130,45,.16),transparent 55%),linear-gradient(160deg,#f3ecdd,#e6dcc6)}:root[data-theme=highbury] .net-amt.owe,:root[data-theme=highbury] .settle-row.owe .settle-amt,:root[data-theme=highbury] .result.L,:root[data-theme=highbury] .btn.danger{color:#a51d2d}
