@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap";html,body,#root{min-height:100%;margin:0}:root{--bg:#fbf8ff;--surface:#fff;--surface-low:#f3f2ff;--surface-mid:#ededfb;--border:#c3c5d9;--text:#191b25;--text-muted:#434656;--primary:#003ec7;--primary-strong:#0052ff;--success-bg:#e3f2e8;--success-text:#1f6f42;--danger-bg:#ffdad6;--danger-text:#93000a;--shadow-1:0 1px 3px #0000000d, 0 10px 20px #00000005;font-family:Inter,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Inter,sans-serif}.app{min-height:100vh;display:flex}.nav-drawer{background:#f8f8ff;border-right:1px solid #e1e1ef;flex-direction:column;width:256px;height:100vh;padding:24px 12px;display:flex;position:sticky;top:0}.drawer-brand{align-items:center;gap:10px;padding:0 10px 18px;display:flex}.avatar{color:#fff;background:#0052ff;border-radius:999px;place-items:center;width:38px;height:38px;font-size:12px;font-weight:700;display:grid}.drawer-brand p{color:#737688;letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:12px}.main-shell{flex:1;min-width:0}.topbar{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffe6;border-bottom:1px solid #e2e2e3;justify-content:space-between;align-items:center;min-height:64px;padding:12px 20px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.02em;align-items:center;gap:8px;font-size:18px;font-weight:700;display:inline-flex}.icon-btn{cursor:pointer;background:#fff;border:1px solid #d7d9ea;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 450, "GRAD" 0, "opsz" 24;vertical-align:middle;font-size:18px}.nav{flex-direction:column;gap:6px;display:flex}.nav button{color:#5f5e5e;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;display:inline-flex}.nav button.active{color:var(--primary-strong);box-shadow:var(--shadow-1);background:#fff;border-color:#d7e0ff;font-weight:600}.drawer-footer{gap:10px;margin-top:auto;padding:10px;display:grid}.drawer-footer span{color:#434656;font-size:13px}.container{width:100%;max-width:1280px;margin:0 auto;padding:24px}.section-head{margin-bottom:24px}.section-head.row{justify-content:space-between;align-items:end;gap:16px;display:flex}h1{letter-spacing:-.01em;color:var(--text);margin:0 0 4px;font-size:32px;font-weight:700;line-height:1.2}.section-head p{color:var(--text-muted);margin:0}.card{background:var(--surface);box-shadow:var(--shadow-1);border:1px solid #e1e1ef;border-radius:12px;padding:20px}.card h3{color:var(--text);margin:0 0 14px;font-size:20px;font-weight:600}.kpis{grid-template-columns:2fr 1fr;gap:16px;display:grid}.hero-kpi h2{letter-spacing:-.02em;color:var(--primary);margin:8px 0 4px;font-size:48px;line-height:1.1}.side-kpi h3{margin:8px 0 4px;font-size:32px}.kpi-label{letter-spacing:.08em;color:#5f5e5e;text-transform:uppercase;font-size:12px;font-weight:600}.small{color:#656464}.ghost{color:#1a1c1d;cursor:pointer;background:0 0;border:1px solid #1a1c1d;border-radius:8px;padding:10px 14px;font-weight:600}.invoice-layout{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start;gap:16px;display:grid}.left-column{gap:16px;display:grid}label{letter-spacing:.01em;color:#4a4e64;text-transform:none;gap:6px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;line-height:1.35;display:grid}.card>label+label{margin-top:10px}.card>label+.grid2,.card>label+.grid3,.card>.grid2+label,.card>.grid3+label{margin-top:12px}input,select,textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:8px;padding:11px 12px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;line-height:1.4}select,textarea,input::placeholder,textarea::placeholder{font-family:Inter,sans-serif}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #0052ff1a}input:disabled{color:#737688;background:#f3f3f4}.grid3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.summary p{justify-content:space-between;margin:10px 0;display:flex}.summary p span{color:#5f5e5e}.summary p strong{color:#1a1c1d}.summary p.total{border-top:1px solid #e2e2e3;margin-top:14px;padding-top:14px}button[type=submit]{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;margin-top:14px;padding:12px;font-weight:700}button[type=submit]:disabled{opacity:.7;cursor:not-allowed}.table-card{overflow:auto}table{border-collapse:collapse;width:100%}th{text-align:left;letter-spacing:.08em;text-transform:uppercase;color:#5f5e5e;background:var(--surface-low);border-bottom:1px solid #ededee;padding:12px;font-size:11px}td{border-bottom:1px solid #f1f1f2;padding:14px 12px}.status{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}.status-sent,.status-paid{background:var(--success-bg);color:var(--success-text);border:1px solid #cce6d6}.status-draft{color:#5f5e5e;background:#f3f3f4;border:1px solid #e2e2e3}.status-failed{background:var(--danger-bg);color:var(--danger-text);border:1px solid #ffd1ce}.status-retainer{color:#2b4cb9;background:#e9eeff;border:1px solid #d7e0ff}.client-row{border-bottom:1px solid #f1f1f2;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.client-row:last-child{border-bottom:none}.client-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px;display:grid}.detail p{border-bottom:1px solid #f0f0f0;justify-content:space-between;margin:0;padding:10px 0;display:flex}.detail p span,.muted{color:#5f5e5e}.detail-actions{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.detail-send-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 16px;font-weight:700}.detail-send-btn:disabled{opacity:.7;cursor:not-allowed}.error{color:#ba1a1a;margin-top:14px;font-weight:600}.auth-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.landing{grid-template-columns:minmax(0,1fr) minmax(0,500px);align-items:center;gap:24px;width:min(1120px,100%);display:grid}.landing-copy{background:var(--surface);box-shadow:var(--shadow-1);border:1px solid #e1e1ef;border-radius:12px;padding:28px}.landing-kicker{color:var(--primary);text-transform:uppercase;letter-spacing:.1em;margin:0 0 8px;font-size:12px;font-weight:700}.landing-lead{color:var(--text-muted)}.landing-points{margin-top:18px}.landing-points p{color:var(--text-muted);align-items:center;gap:8px;display:flex}.landing-points .material-symbols-outlined{color:var(--primary)}.landing-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.landing-actions button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:12px 16px;font-weight:700}.landing-actions .ghost{color:#1a1c1d;background:0 0;border:1px solid #1a1c1d}.landing-visual{background:var(--surface);box-shadow:var(--shadow-1);border:1px solid #e1e1ef;border-radius:12px;padding:10px}.landing-visual img{border:1px solid #e5e7eb;border-radius:8px;width:100%;display:block}.mobile-only{display:none}.desktop-only{display:flex}.mobile-menu{display:none}@media (width<=980px){.app{display:block}.nav-drawer,.desktop-only{display:none}.mobile-only{display:flex}.mobile-menu{background:#fff;border-bottom:1px solid #e2e2e3;gap:8px;padding:12px 16px;display:grid}.mobile-menu button{color:#5f5e5e;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;display:inline-flex}.mobile-menu button.active{color:var(--primary-strong);background:#f3f6ff;border-color:#d7e0ff;font-weight:600}.topbar{align-items:center;gap:10px;height:auto;padding:12px 16px}.container{padding:16px}h1{font-size:26px}.card{padding:16px}.kpis,.invoice-layout,.client-layout,.grid2,.grid3,.landing{grid-template-columns:1fr}.section-head.row{flex-direction:column;align-items:start}.detail-actions{flex-direction:column;justify-content:stretch}.table-card{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:680px}}
