:root{--g:#18a957;--g2:#0b7d3d;--g3:#eaf8ef;--ink:#142019;--muted:#718078;--line:#e3ebe6;--bg:#f5f8f6;--dark:#0e1712;--danger:#b42318;--shadow:0 12px 35px rgba(17,38,25,.07)}
*{box-sizing:border-box}.eos-app,.eos-login{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink)}.eos-app{display:flex;min-height:820px;background:var(--bg);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}
.eos-sidebar{width:250px;background:linear-gradient(180deg,#0b1510,#101c15);color:#fff;padding:22px 14px;flex-shrink:0}.eos-brand{display:flex;gap:11px;align-items:center;padding:4px 9px 25px}.eos-logo,.invoice-logo{width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#25bd69,#0b7d3d);display:grid;place-items:center;color:#fff;font-weight:900;font-size:22px;box-shadow:0 7px 20px rgba(24,169,87,.22)}.eos-brand strong{font-size:19px;display:block}.eos-brand small{font-size:9px;letter-spacing:1.4px;color:#8ea397}.eos-sidebar nav{display:grid;gap:4px}.eos-sidebar nav a,.eos-sidebar>button{display:flex;align-items:center;gap:8px;color:#bdc9c1;text-decoration:none;padding:12px 13px;border-radius:10px;cursor:pointer;border:0;background:transparent;text-align:left;font-size:13px;transition:.18s}.eos-sidebar nav a:hover,.eos-sidebar nav a.active{background:#1c3024;color:#fff}.eos-sidebar nav a.active{box-shadow:inset 3px 0 var(--g)}.eos-sidebar>button{margin-top:24px;width:100%}.eos-main{flex:1;min-width:0}.eos-header{height:88px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);padding:18px 28px;display:flex;justify-content:space-between;align-items:center}.eos-header small{color:var(--g2);font-weight:800;letter-spacing:1.3px;font-size:10px}.eos-header h1{margin:4px 0 0;font-size:25px;letter-spacing:-.4px}.eos-date{font-size:12px;color:var(--muted);background:#f2f6f3;padding:9px 12px;border-radius:9px}
#eos-content{padding:26px;max-width:1600px;margin:auto}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.toolbar b{font-size:21px;display:block;letter-spacing:-.3px}.toolbar small{color:var(--muted);display:block;margin-top:5px}.primary,.ghost,.mini,.add-line,.today-btn,.month-btn{cursor:pointer;transition:.18s}.primary{background:linear-gradient(135deg,var(--g),var(--g2));border:0;color:#fff;border-radius:10px;padding:11px 17px;font-weight:800;box-shadow:0 7px 18px rgba(24,169,87,.16)}.primary:hover{transform:translateY(-1px);filter:brightness(.98)}.ghost{background:#fff;border:1px solid var(--line);color:var(--ink);border-radius:10px;padding:10px 14px;font-weight:700}.ghost:hover,.mini:hover,.add-line:hover,.today-btn:hover,.month-btn:hover{background:var(--g3);border-color:#bfe3cb}.card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;margin-bottom:18px;box-shadow:0 5px 20px rgba(17,38,25,.035)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px}.kpi{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;position:relative;overflow:hidden}.kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--g)}.kpi small{color:var(--muted);display:block;font-size:11px;font-weight:700}.kpi strong{font-size:23px;display:block;margin-top:8px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.grid5{display:grid;grid-template-columns:2.2fr .7fr .9fr .9fr .18fr;gap:9px;align-items:center}label{display:block;font-size:12px;font-weight:800;margin-bottom:13px;color:#324239}input,select,textarea{width:100%;border:1px solid #d2ddd6;border-radius:9px;padding:11px 12px;margin-top:6px;background:#fff;color:var(--ink);font:inherit;font-size:13px;outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(24,169,87,.09)}textarea{resize:vertical}.table-wrap{overflow:auto}table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}th,td{padding:13px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{font-size:10px;color:#77857d;text-transform:uppercase;letter-spacing:.7px;background:#f8faf9}tr:last-child td{border-bottom:0}.green{color:var(--g2);font-weight:800}.low{color:var(--danger);font-weight:800}.mini,.add-line,.today-btn,.month-btn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 11px}.quick{display:flex;flex-wrap:wrap;gap:9px}.quick button{padding:11px 13px;border:1px solid var(--line);background:#f7faf8;border-radius:10px;cursor:pointer;font-weight:700;color:#334139}.section-title{font-size:13px;font-weight:900;margin:5px 0 15px;color:#163b26;display:flex;align-items:center;gap:8px}.section-title:before{content:"";width:5px;height:17px;border-radius:5px;background:var(--g)}.sale-table{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:10px}.sale-line{display:grid;grid-template-columns:2.2fr .65fr .9fr .9fr 40px;gap:9px;align-items:center;padding:9px;border-bottom:1px solid var(--line)}.sale-line:last-child{border-bottom:0}.sale-head{background:#f6f9f7;color:#748179;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.6px}.sale-line input,.sale-line select{margin-top:0}.line-total{font-size:13px;text-align:right}.sale-line .remove{border:1px solid #f0cccc;background:#fff6f6;color:#b42318;border-radius:8px;height:39px;font-size:18px;cursor:pointer}.sale-finance{margin-top:18px}.sale-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;padding:19px 0 0;border-top:1px solid var(--line)}#sale-summary span{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}#sale-summary b{font-size:28px;display:block;margin-top:2px}#sale-summary small{color:var(--muted)}.big-btn{font-size:14px;padding:14px 20px}.big-btn:disabled{opacity:.6;cursor:wait;transform:none}.filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.filter label{min-width:180px;margin:0}.modal-bg{position:fixed;inset:0;background:rgba(4,13,8,.58);backdrop-filter:blur(4px);z-index:99999;display:grid;place-items:center;padding:20px}.modal{background:#fff;border-radius:17px;width:min(760px,100%);max-height:90vh;overflow:auto;padding:25px;position:relative;box-shadow:0 25px 80px rgba(0,0,0,.22)}.modal .close{position:absolute;right:15px;top:11px;border:0;background:#f3f6f4;border-radius:50%;width:34px;height:34px;font-size:22px;cursor:pointer}.full{width:100%}.toast{position:fixed;right:22px;bottom:22px;background:#0e7d3e;color:#fff;padding:13px 18px;border-radius:10px;z-index:100000;box-shadow:0 12px 30px rgba(0,0,0,.18);font-weight:700;max-width:min(520px,calc(100vw - 44px))}.toast.err{background:#a52320}.empty{text-align:center;color:var(--muted);padding:35px}.muted{color:var(--muted)}
.eos-login{min-height:720px;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#e5faec 0,#eef6f1 34%,#e8f0eb 100%);border-radius:20px;padding:25px}.eos-login-card{width:min(450px,100%);background:#fff;padding:34px;border-radius:20px;box-shadow:0 25px 80px rgba(18,53,32,.12);border:1px solid #e0eae3}.eos-login-card .eos-brand{padding:0 0 20px}.eos-login-card h1{margin:10px 0 5px;font-size:29px}.eos-login-card p{color:var(--muted);margin:0 0 22px}.login-hint{display:block;color:#8b6a18;margin-top:15px;font-size:11px;background:#fff8df;padding:10px;border-radius:8px}
.invoice-shell{max-width:1050px;margin:auto}.invoice-toolbar{display:flex;justify-content:space-between;gap:10px;margin-bottom:16px}.invoice-preview{background:#fff;max-width:920px;margin:auto;padding:42px;border:1px solid #e1e8e3;border-radius:15px;box-shadow:0 12px 35px rgba(17,38,25,.07)}.invoice-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:25px;border-bottom:2px solid #17231c}.invoice-top>div:first-child{display:flex;gap:14px;align-items:flex-start}.invoice-top h1{margin:0 0 5px;font-size:26px}.invoice-top p{margin:0;color:#68766e;font-size:12px;line-height:1.6}.invoice-title{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.invoice-title span{font-size:12px;letter-spacing:2px;font-weight:900;color:var(--g2)}.invoice-title b{font-size:17px}.invoice-title small{color:var(--muted)}.bill-grid{display:grid;grid-template-columns:1fr 220px;gap:30px;padding:24px 0}.bill-grid small{display:block;color:#7b8880;font-size:9px;font-weight:900;letter-spacing:1.2px;margin-bottom:7px}.bill-grid strong,.bill-grid span{display:block}.bill-grid strong{font-size:15px;margin-bottom:4px}.bill-grid span{font-size:12px;color:#68766e;line-height:1.5}.invoice-meta{text-align:right}.invoice-table{border:1px solid #dfe7e1;border-radius:10px;overflow:hidden}.invoice-table th{background:#132018;color:#dfece4}.invoice-table td{padding:13px}.invoice-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:25px}.invoice-note{color:#68766e;font-size:12px}.invoice-note b{color:#1d2a22}.invoice-note p{margin-top:6px}.invoice-totals{width:310px}.invoice-totals>div{display:flex;justify-content:space-between;padding:7px 0;font-size:13px}.invoice-totals .grand{font-size:16px;border-top:1px solid #dce5df;border-bottom:1px solid #dce5df;margin:7px 0;padding:12px 0}.invoice-totals .due{color:#b42318;font-weight:900}.invoice-footer{text-align:center;color:#9aa59f;font-size:10px;margin-top:30px;padding-top:15px;border-top:1px dashed #dfe6e1}
@media(max-width:1050px){.eos-sidebar{width:78px}.eos-sidebar .eos-brand div,.eos-sidebar nav span{display:none}.eos-sidebar nav a{justify-content:center}.kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.eos-app{display:block}.eos-sidebar{width:100%;padding:10px}.eos-sidebar nav{display:flex;overflow:auto}.eos-sidebar nav a{white-space:nowrap;justify-content:flex-start}.eos-sidebar .eos-brand div{display:block}.eos-brand{padding-bottom:11px}.eos-sidebar>button{display:none}.eos-header{padding:14px 16px;height:auto}.eos-header h1{font-size:20px}#eos-content{padding:15px}.kpis,.grid2,.grid3,.grid4{grid-template-columns:1fr}.grid5{grid-template-columns:1fr 1fr}.sale-line{grid-template-columns:1fr 1fr}.sale-head{display:none}.sale-line select{grid-column:1/-1}.line-total{text-align:left}.sale-bottom{display:block}.big-btn{width:100%;margin-top:14px}.invoice-preview{padding:22px}.invoice-top,.invoice-bottom{display:block}.invoice-title{text-align:left;align-items:flex-start;margin-top:20px}.bill-grid{grid-template-columns:1fr}.invoice-meta{text-align:left}.invoice-totals{width:100%}.invoice-toolbar{flex-direction:column}.invoice-toolbar button{width:100%}}
@page{size:A4 portrait;margin:0}
@media print{
  html,body{width:210mm;min-width:210mm;margin:0!important;padding:0!important;background:#fff!important}
  body *{visibility:hidden!important}
  .eos-app,.eos-main,#eos-content{display:block!important;min-height:0!important;width:210mm!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;overflow:visible!important;background:#fff!important}
  .invoice-shell{display:block!important;width:210mm!important;max-width:none!important;margin:0!important;padding:0!important}
  .invoice-preview,.invoice-preview *{visibility:visible!important}
  .invoice-preview{position:relative!important;left:auto!important;top:auto!important;width:210mm!important;min-width:210mm!important;max-width:210mm!important;min-height:297mm!important;margin:0!important;padding:15mm!important;box-shadow:none!important;border:0!important;border-radius:0!important;background:#fff!important}
  .invoice-toolbar,.eos-sidebar,.eos-header{display:none!important}
  .invoice-top,.bill-grid,.invoice-bottom{break-inside:avoid;page-break-inside:avoid}
  .invoice-table{width:100%!important;border-collapse:collapse!important;break-inside:auto}
  .invoice-table thead{display:table-header-group}
  .invoice-table tr{break-inside:avoid;page-break-inside:avoid}
  .invoice-table th,.invoice-table td{padding:3.2mm 2.5mm!important}
  .invoice-bottom{margin-top:8mm}
  .invoice-footer{margin-top:8mm}
}
