:root{--bg:#f5f7fa;--ink:#161b22;--muted:#667085;--line:#e5e7eb;--card:#fff;--accent:#1f6feb;--nav:#111827;--good:#067647;--bad:#b42318}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--accent);text-decoration:none}.topbar{height:68px;padding:0 max(20px,calc((100vw - 1180px)/2));background:var(--nav);color:#fff;display:flex;align-items:center;justify-content:space-between}.brand{font-size:20px;font-weight:800}.brand span{font-weight:400;color:#9ca3af}.topbar nav{display:flex;gap:22px}.topbar nav a{color:#e5e7eb}.wrap{max-width:1180px;margin:0 auto;padding:38px 20px 60px}.hero{padding:8px 0 28px}.hero h1{font-size:34px;letter-spacing:-.03em;margin:3px 0}.hero p{color:var(--muted);margin:0}.eyebrow{font-size:12px!important;font-weight:800;letter-spacing:.12em}.stack{display:grid;gap:22px}.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 7px 26px rgba(16,24,40,.05)}.panel-head{padding:17px 20px;border-bottom:1px solid var(--line)}.panel h2{font-size:17px;margin:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:680px}th,td{padding:14px 20px;text-align:left;border-bottom:1px solid #f0f2f5}th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}tbody tr:last-child td{border-bottom:0}.num{text-align:right}.actions{text-align:right;white-space:nowrap}.actions a{margin-left:12px;font-weight:650}.pill{padding:4px 9px;border-radius:99px;background:#fff7ed;color:#9a3412;font-size:12px;font-weight:700}.pill.paid{background:#ecfdf3;color:var(--good)}.pill.overdue{background:#fef3f2;color:var(--bad)}.empty{text-align:center!important;color:var(--muted);padding:30px!important}.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#fff 0,var(--bg) 48%)}.auth-card{width:min(410px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:0 18px 60px rgba(16,24,40,.09)}.auth-logo{width:170px;height:auto;margin-bottom:24px}.auth-card h1{margin:0;font-size:26px}.muted{color:var(--muted);margin:6px 0 24px}.auth-card label{display:block;font-weight:700;margin:15px 0 6px}.auth-card input{width:100%;border:1px solid #d0d5dd;border-radius:10px;padding:12px;font:inherit;outline:none}.auth-card input:focus{border-color:#84adff;box-shadow:0 0 0 4px #eff4ff}.primary,.button{display:inline-block;border:0;border-radius:10px;background:var(--accent);color:#fff;font:inherit;font-weight:750;padding:11px 15px;cursor:pointer}.auth-card .primary{width:100%;margin-top:20px}.subtle-link{display:block;text-align:center;margin-top:20px;color:var(--muted)}.alert{padding:11px 13px;border-radius:9px;margin:16px 0}.alert.error{background:#fef3f2;color:var(--bad)}.alert.ok{background:#ecfdf3;color:var(--good)}.invoice-page{max-width:900px;margin:0 auto;padding:30px 20px 60px}.invoice-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.paper{background:#fff;border:1px solid var(--line);box-shadow:0 12px 34px rgba(16,24,40,.06);padding:46px;border-radius:8px}.invoice-top{display:flex;justify-content:space-between;gap:30px}.invoice-logo{width:180px}.invoice-top p,.invoice-meta p{color:var(--muted)}.invoice-meta{text-align:right}.invoice-meta h1{font-size:34px;text-transform:uppercase;letter-spacing:.06em;margin:0 0 5px}.billto{margin:45px 0 30px}.billto span,.billto strong{display:block}.billto span{font-size:12px;text-transform:uppercase;color:var(--muted);font-weight:800;letter-spacing:.07em}.invoice-table{min-width:0}.invoice-table thead{background:#30343b;color:#fff}.invoice-table th:last-child,.invoice-table td:last-child{text-align:right}.invoice-status{margin-top:25px;font-size:18px;font-weight:800;color:#b54708}.invoice-status.paid{color:var(--good)}.paper footer{margin-top:55px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}@media(max-width:700px){.topbar{height:auto;padding:16px 20px;gap:15px}.topbar nav{gap:12px;font-size:13px}.hero h1{font-size:28px}.paper{padding:25px}.invoice-top{display:block}.invoice-meta{text-align:left;margin-top:25px}.invoice-toolbar{gap:12px}}@media print{.topbar,.invoice-toolbar{display:none}.invoice-page{padding:0}.paper{box-shadow:none;border:0}}
