*{box-sizing:border-box}body{margin:0;font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#f4f6fb;color:#1a1f36}a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}.page{max-width:960px;margin:0 auto;padding:24px 16px 64px}.authPage{max-width:400px;margin:80px auto;padding:32px;background:#fff;border-radius:12px;box-shadow:0 1px 4px rgba(0,0,0,.08)}nav.topnav{display:flex;align-items:center;gap:20px;background:#111827;color:#fff;padding:14px 24px}nav.topnav a{color:#cbd5e1;font-weight:500}nav.topnav a:hover{color:#fff;text-decoration:none}nav.topnav .brand{color:#fff;font-weight:700;margin-right:auto}nav.topnav button{margin-left:auto}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:16px;gap:16px;margin:20px 0}.card{background:#fff;border-radius:10px;padding:18px;box-shadow:0 1px 3px rgba(0,0,0,.08)}.card .label{font-size:13px;color:#6b7280;text-transform:uppercase;letter-spacing:.04em}.card .value{font-size:26px;font-weight:700;margin-top:6px}.value.positive{color:#059669}.value.negative{color:#dc2626}.section{background:#fff;border-radius:10px;padding:20px;margin-top:20px;box-shadow:0 1px 3px rgba(0,0,0,.08)}h1{font-size:24px;margin:0 0 4px}h2{font-size:18px;margin:0 0 12px}.subtle{color:#6b7280;font-size:14px}table{width:100%;border-collapse:collapse;margin-top:12px}td,th{text-align:left;padding:8px 10px;border-bottom:1px solid #eef0f4;font-size:14px}th{color:#6b7280;font-weight:600;font-size:12px;text-transform:uppercase}tr.subtotal td{font-weight:700;background:#f9fafb}form.inline{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;align-items:center}input,select{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}label.checkbox{display:flex;align-items:center;gap:6px;font-size:14px;color:#4b5563}button{cursor:pointer;background:#2563eb;color:#fff;border:none;border-radius:6px;padding:9px 16px;font-size:14px;font-weight:600}button:hover{background:#1d4ed8}button.secondary{background:#e5e7eb;color:#1f2937}button.secondary:hover{background:#d1d5db}button.danger{background:#fee2e2;color:#b91c1c;padding:6px 10px}button.danger:hover{background:#fecaca}.error{background:#fee2e2;color:#b91c1c;padding:10px 12px;font-size:14px;margin-bottom:12px}.error,.invite{border-radius:6px}.invite{display:inline-block;background:#eef2ff;color:#3730a3;padding:4px 10px;font-weight:700;letter-spacing:.03em}.toggle-row{display:flex;gap:10px;margin-bottom:16px}.toggle-row button{flex:1 1}