:root{--ink:#172033;--muted:#697386;--line:#e7eaf0;--bg:#f5f7fb;--primary:#5b4df7;--primary2:#776bff;--green:#168763;--red:#c43f4c;--shadow:0 10px 30px rgba(30,42,70,.08)}*{box-sizing:border-box}body{margin:0;font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}a{color:var(--primary);text-decoration:none}aside{position:fixed;inset:0 auto 0 0;width:235px;background:#11182a;color:#fff;padding:28px 20px;display:flex;flex-direction:column}.brand{font-size:23px;font-weight:800;color:#fff;letter-spacing:-.7px}.brand span{color:#8b80ff}nav{display:grid;gap:5px;margin-top:38px}nav a,.logout{color:#cbd2df;padding:11px 13px;border-radius:9px}nav a:hover{background:#202a40;color:#fff}.logout{margin-top:auto}main{margin-left:235px}header{height:72px;background:#fff;border-bottom:1px solid var(--line);padding:14px 32px;display:flex;justify-content:flex-end}header div{display:grid;text-align:right}header small{color:var(--muted)}.content{padding:30px;max-width:1450px;margin:auto}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.page-head h1,h1{margin:0}.muted{color:var(--muted);margin:4px 0}.button,button{border:0;background:var(--primary);color:#fff;padding:11px 16px;border-radius:9px;font-weight:700;cursor:pointer;display:inline-block;font:inherit}button:hover,.button:hover{background:var(--primary2);color:#fff}.secondary{background:#edf0f7;color:var(--ink)}.icon{background:transparent;color:var(--muted);font-size:22px;padding:4px 9px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.stats article,.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.stats article{padding:21px}.stats small{display:block;color:var(--muted)}.stats strong{display:block;font-size:25px;margin-top:7px}.panel{padding:22px;margin-bottom:22px;overflow-x:auto}.panel h2{margin-top:0}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 11px;border-bottom:1px solid var(--line)}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:35px}.badge{display:inline-block;padding:4px 9px;border-radius:99px;background:#e8ebf3;font-size:12px;text-transform:capitalize}.badge.paid,.badge.accepted{background:#dff6ed;color:var(--green)}.badge.overdue,.badge.declined{background:#ffe5e7;color:var(--red)}.badge.sent,.badge.viewed{background:#e7e5ff;color:#5041c8}label{display:grid;gap:6px;font-weight:650;color:#384055;margin-bottom:15px}input,select,textarea{width:100%;border:1px solid #d9deea;border-radius:8px;padding:10px 11px;background:#fff;color:var(--ink);font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid #dcd8ff;border-color:var(--primary)}textarea{min-height:84px;resize:vertical}.grid2,.grid3{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.grid3{grid-template-columns:repeat(3,1fr)}.document-form table input{min-width:90px}.document-form td:first-child input{min-width:240px}.form-split{display:grid;grid-template-columns:1fr 380px;gap:30px;margin:25px 0}.totals-box{background:#f7f8fc;border-radius:12px;padding:18px}.totals-box>div,.invoice-summary p,.invoice-summary h2{display:flex;justify-content:space-between}.totals-box .grand{font-size:20px;padding-top:12px}.compact{padding-bottom:10px}.alert{padding:12px 15px;border-radius:9px;margin-bottom:18px}.alert.success{background:#def6eb;color:#146d52}.alert.error{background:#ffe5e7;color:#9c2f39}.alert.info{background:#e8e6ff;color:#4538ae}.auth-shell{min-height:100vh;display:grid;place-content:center;background:linear-gradient(145deg,#121a2d,#332889);padding:25px}.auth-shell>.brand{margin:0 auto 20px}.auth-card{width:min(430px,92vw);background:#fff;border-radius:18px;padding:32px;box-shadow:0 25px 60px rgba(0,0,0,.25)}dialog{border:0;border-radius:16px;padding:0;box-shadow:0 30px 80px rgba(0,0,0,.25);width:min(650px,92vw)}dialog::backdrop{background:rgba(15,22,39,.55)}dialog form{padding:25px}.invoice-paper{background:#fff;padding:55px;max-width:950px;margin:auto;box-shadow:var(--shadow);border-radius:4px}.invoice-top{display:flex;justify-content:space-between;border-bottom:3px solid var(--primary);padding-bottom:25px}.align-right{text-align:right}.logo{max-width:190px;max-height:85px}.bill{margin:35px 0}.invoice-summary{width:360px;margin:28px 0 28px auto}.invoice-summary h2{border-top:2px solid var(--ink);padding-top:12px}.bank{border-top:1px solid var(--line);margin-top:35px}.actions{display:flex;gap:8px}.actions form{display:flex;gap:8px}.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.pricing article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;position:relative}.pricing article>strong{font-size:34px}.pricing small{font-size:14px}.pricing .featured{border:2px solid var(--primary)}.pricing .featured>span{position:absolute;right:15px;top:15px;font-size:10px;color:var(--primary);font-weight:800}
@media(max-width:900px){aside{position:static;width:auto;min-height:auto}nav{grid-template-columns:repeat(2,1fr);margin-top:18px}.logout{margin-top:10px}main{margin:0}.stats{grid-template-columns:repeat(2,1fr)}.grid3{grid-template-columns:1fr}.form-split{grid-template-columns:1fr}.pricing{grid-template-columns:1fr}}@media(max-width:600px){.content{padding:18px}.stats,.grid2{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.invoice-paper{padding:22px}.invoice-top{flex-direction:column}.align-right{text-align:left}.invoice-summary{width:100%}}
@media print{aside,header,.no-print{display:none!important}main{margin:0}.content{padding:0}.invoice-paper{box-shadow:none;padding:10mm;max-width:none}.panel{box-shadow:none}body{background:#fff}}
