:root{--accent:#169af9;--accent-dark:#0f83db;--ink:#0f172a;--muted:#64748b;--bg:#f1f5f9;--card:#fff;--ok:#16a34a}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.app{justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex}.card{background:var(--card);border-radius:18px;flex-direction:column;gap:12px;width:100%;max-width:380px;padding:28px 24px;display:flex;box-shadow:0 12px 32px #0f172a1f}.card.center{text-align:center;align-items:center}.brand{color:var(--accent);letter-spacing:-.01em;font-size:1.15rem;font-weight:800}.muted{color:var(--muted);font-size:.92rem}.small{font-size:.8rem}.note{color:#1e40af;background:#eff6ff;border-radius:10px;padding:10px 12px;font-size:.85rem}.form{flex-direction:column;gap:14px;margin-top:6px;display:flex}.form label{color:#334155;flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;display:flex}.form .opt{color:var(--muted);font-weight:400}.form input{color:var(--ink);background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;outline:none;padding:12px 14px;font-size:1rem}.form input:focus{border-color:var(--accent);background:#fff}.btn{color:#fff;cursor:pointer;text-align:center;background:#122526;border:none;border-radius:12px;padding:13px 18px;font-size:1rem;font-weight:700;text-decoration:none;display:inline-block}.btn:hover{opacity:.5}.btn:disabled{opacity:.5;cursor:not-allowed}.err{color:#dc2626;font-size:.85rem}.link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-self:center;padding:8px;font-size:.85rem}.loader{border:3px solid #e2e8f0;border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;margin:20px auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.split-card{gap:14px;max-width:440px;padding:20px 16px}.split-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.split-title{font-size:1rem;font-weight:800}.split-h1{letter-spacing:-.01em;font-size:1.25rem;font-weight:800}.split-refresh{background:var(--bg);font:inherit;color:var(--ink);cursor:pointer;white-space:nowrap;border:1px solid #e2e8f0;border-radius:10px;padding:7px 10px;font-size:.82rem;font-weight:600}.chip{color:#334155;background:#e2e8f0;border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:700;display:inline-block}.chip.mine{background:var(--accent);color:#fff}.split-list{flex-direction:column;gap:8px;list-style:none;display:flex}.split-row{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.split-row.mine{border:2px solid var(--accent);background:#f0f8ff}.split-row.taken{opacity:.6}.split-check{cursor:pointer;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.split-check input{width:22px;height:22px;accent-color:var(--accent)}.split-name{font-weight:600}.split-price{font-variant-numeric:tabular-nums;font-weight:700}.split-mods{padding-left:32px}.split-who{align-items:center;gap:8px;padding-left:32px;display:flex}.split-more{color:var(--accent-dark);font:inherit;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:4px;font-size:.82rem;font-weight:600}.split-parts{flex-direction:column;gap:6px;display:flex}.split-part{font-variant-numeric:tabular-nums;cursor:pointer;border:1px dashed #cbd5e1;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.split-part input{width:20px;height:20px;accent-color:var(--accent)}.split-part.mine{border-style:solid;border-color:var(--accent)}.split-part.taken{opacity:.55}.split-btn{background:var(--accent);width:100%}.split-btn:hover{opacity:1;background:var(--accent-dark)}.split-sticky{position:sticky;bottom:12px;box-shadow:0 8px 20px #0f172a2e}.split-banner{color:#78350f;background:#fef3c7;border-radius:10px;padding:10px 12px;font-size:.85rem}.split-summary{flex-direction:column;gap:8px;list-style:none;display:flex}.row{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:10px;display:flex}.row.muted{color:var(--muted);font-size:.9rem}.row.total{border-top:1px solid #e2e8f0;padding-top:8px;font-size:1.1rem;font-weight:800}.split-totals{border-top:1px solid #e2e8f0;flex-direction:column;gap:6px;padding-top:10px;display:flex}.split-line-end{align-items:center;gap:8px;display:inline-flex}.split-remove{width:28px;height:28px;color:var(--muted);cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px}.split-scrim{z-index:10;background:#0f172a73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.split-sheet,.split-dialog{width:100%;max-width:440px;padding:20px 16px calc(16px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:18px 18px 0 0;flex-direction:column;gap:12px;display:flex}.split-dialog{border-radius:18px;margin:auto 16px}.split-options{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.split-option{background:var(--bg);cursor:pointer;font:inherit;color:var(--ink);border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;display:flex}.split-option b{font-size:1.2rem}.split-code-input{letter-spacing:4px;text-align:center;text-transform:uppercase;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.4rem!important}
