:root{--nav:#142b3b;--blue:#1585a5;--bg:#f3f6f8;--line:#dbe4e9}*{box-sizing:border-box}body{margin:0;font:14px Arial;color:#183243;background:var(--bg)}a{color:var(--blue)}.app{min-height:100vh;display:grid;grid-template-columns:225px 1fr}aside{background:var(--nav);color:#fff;padding:24px 16px}aside h1{font-size:21px;margin:0 8px 25px}aside h1 span,.auth h1 span{color:#55c9df}nav a,.logout{display:block;color:#bed0da;text-decoration:none;padding:12px;border-radius:8px;margin:3px 0}nav a.active,nav a:hover{background:#20485e;color:#fff}.logout{margin-top:35px}main{padding:28px;max-width:1350px;width:100%;margin:auto}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}h2{font-size:27px;margin:0}.button,button{display:inline-block;border:0;border-radius:7px;background:var(--blue);color:#fff;text-decoration:none;padding:10px 15px;font-weight:bold;cursor:pointer}.secondary{background:#e5edf1;color:#183243}.danger{background:#fff;color:#a22}.small{padding:6px 9px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cards section,.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px}.cards strong{display:block;font-size:27px;margin-top:12px}.panel{margin-top:17px;overflow:auto}.columns{display:flex;gap:18px;align-items:flex-start}.columns form{width:330px;margin-top:0}.grow{flex:1;margin-top:0}label{display:block;font-size:12px;font-weight:bold;margin:11px 0}input,textarea,select{display:block;width:100%;padding:9px;border:1px solid #cbd6dc;border-radius:6px;margin-top:5px;font:inherit}textarea{min-height:65px}table{width:100%;border-collapse:collapse}th,td{padding:11px 9px;border-bottom:1px solid var(--line);text-align:left}th{font-size:11px;color:#687985;text-transform:uppercase}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.wide{grid-column:1/-1}.alert{background:#fff2cc;border-left:4px solid #d8a600;padding:12px;margin:12px 0}.auth{display:grid;place-items:center;min-height:100vh}.authbox{width:min(750px,94%);background:#fff;padding:30px;border-radius:13px;box-shadow:0 8px 35px #17304220}.authgrid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.printbar{display:flex;justify-content:space-between;margin-bottom:15px}.invoice{background:#fff;width:210mm;min-height:297mm;margin:auto;padding:18mm 18mm 15mm;color:#222;box-shadow:0 3px 20px #0002;font-family:"Courier New",monospace}.invoice header{height:34mm;display:flex;align-items:start}.invoice header img{max-width:65mm;max-height:25mm}.logo-left{justify-content:flex-start}.logo-center{justify-content:center}.logo-right{justify-content:flex-end}.company-logo{font:700 25px Arial}.addresses{display:grid;grid-template-columns:1.2fr .8fr;gap:25mm;min-height:48mm}.addresses h4{margin:8px 0}.dochead{display:flex;justify-content:space-between;align-items:center}.meta{border:1px solid #555;margin:5mm 0}.meta td{text-align:center;border-right:1px solid #555}.positions th,.positions td{padding:7px 5px}.totals{width:75mm;margin:8mm 0 8mm auto}.totals p{display:flex;justify-content:space-between}.grand{font-size:17px;border-top:2px solid #222;padding-top:7px}.invoice footer{margin-top:28mm;font-size:10px;line-height:1.5}@media(max-width:800px){.app{grid-template-columns:1fr}aside{padding:12px}aside h1{margin:0 0 8px}nav{display:flex;overflow:auto}nav a{white-space:nowrap}.logout{margin:5px 0}.cards{grid-template-columns:1fr}.columns{display:block}.columns form{width:auto}.formgrid,.authgrid{grid-template-columns:1fr}main{padding:15px}.invoice{transform-origin:top left;transform:scale(.47);margin-bottom:-150mm}.printbar{position:sticky;top:0}}@media print{body{background:#fff}.app>aside,.printbar{display:none}.app{display:block}main{padding:0;max-width:none}.invoice{box-shadow:none;margin:0;padding:12mm 15mm;transform:none;width:210mm;min-height:297mm}}

