:root{--navy:#102a4d;--blue:#236ad8;--green:#079c66;--purple:#6550d9;--orange:#d88a00;--bg:#f4f7fb;--text:#13233a;--muted:#6b778c;--line:#dfe6ef;--danger:#b42318}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:var(--bg)}a{color:var(--blue)}.topbar{height:78px;background:linear-gradient(100deg,#17365f,#0e2747);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 42px}.brand{display:flex;align-items:center;gap:20px;font-size:24px;font-weight:700}.brand img{height:48px;max-width:130px;object-fit:contain;filter:brightness(0) invert(1)}.top-actions{display:flex;gap:22px;align-items:center}.top-actions a{color:#fff;text-decoration:none}.container{max-width:1400px;margin:0 auto;padding:38px 28px}.hero{text-align:center;margin-bottom:28px}.hero h1{font-size:48px;margin:0 0 8px}.hero p{font-size:21px;color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:0 5px 18px rgba(16,42,77,.06)}.action-card{text-align:center;min-height:280px;display:flex;flex-direction:column;justify-content:space-between}.icon{font-size:42px}.action-card h2{margin:12px 0 8px}.action-card p{color:var(--muted);line-height:1.45}.btn{display:inline-block;border:0;border-radius:8px;padding:12px 18px;font-size:16px;font-weight:700;text-decoration:none;cursor:pointer}.btn.primary{background:var(--blue);color:#fff}.btn.green{background:var(--green);color:#fff}.btn.purple{background:var(--purple);color:#fff}.btn.orange{background:var(--orange);color:#fff}.btn.secondary{background:#eef2f7;color:var(--text)}.btn.danger{background:#c62828;color:#fff}.btn:disabled{opacity:.45;cursor:not-allowed}.section-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin-top:24px}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;background:#fff}.data-table th,.data-table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.data-table th{background:#f7f9fc}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .span2{grid-column:span 2}label{font-weight:700;font-size:14px;display:block}input,select,textarea{width:100%;margin-top:6px;padding:11px 12px;border:1px solid #cfd8e6;border-radius:8px;font:inherit;background:#fff}textarea{min-height:90px}.toolbar{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:18px}.toolbar .left,.toolbar .right{display:flex;gap:10px;align-items:center}.alert{padding:12px 14px;border-radius:8px;margin-bottom:16px;background:#e8f3ff}.alert.error{background:#feeceb;color:#8a1c13}.alert.success{background:#e9f8ef;color:#146b36}.auth-bg{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0f2b4d,#284a79)}.auth-card{background:#fff;width:min(480px,92vw);border-radius:16px;padding:34px;box-shadow:0 20px 50px rgba(0,0,0,.2)}.auth-card.wide{width:min(850px,94vw)}.auth-logo{display:block;max-width:160px;margin:0 auto 15px}.auth-card h1{text-align:center}.auth-card p{color:var(--muted)}footer{text-align:center;color:var(--muted);padding:30px}.invoice-sheet{background:#fff;max-width:980px;margin:auto;padding:42px;border-radius:10px;box-shadow:0 6px 24px rgba(0,0,0,.08)}.invoice-head{display:flex;justify-content:space-between;gap:30px}.invoice-logo{max-width:140px;max-height:100px}.invoice-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:22px 0}.muted{color:var(--muted)}.totals{margin-left:auto;max-width:420px}.total-row{display:flex;justify-content:space-between;padding:8px 0}.final-total{font-size:20px;font-weight:800;border-top:1px solid #777}.margin-note{font-weight:700;margin-top:10px}.modal-close{font-size:28px;text-decoration:none;color:#333}.searchbar{display:grid;grid-template-columns:repeat(5,1fr) auto;gap:10px;margin-bottom:18px}.small{font-size:13px}.mono{font-family:ui-monospace,monospace}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.preview-img{width:100%;border:1px solid var(--line);border-radius:10px}.item-row{display:grid;grid-template-columns:4fr 1fr 1.2fr 1.4fr auto;gap:8px;margin-bottom:8px}.help{font-size:13px;color:var(--muted)}@media(max-width:1000px){.cards{grid-template-columns:1fr 1fr}.section-grid,.preview-grid{grid-template-columns:1fr}.searchbar{grid-template-columns:1fr 1fr}.hero h1{font-size:36px}}@media(max-width:650px){.cards{grid-template-columns:1fr}.topbar{padding:0 16px}.brand span{display:none}.form-grid{grid-template-columns:1fr}.form-grid .span2{grid-column:auto}.item-row{grid-template-columns:1fr 1fr}.container{padding:24px 14px}}@media print{.no-print,.topbar,footer{display:none!important}body{background:#fff}.container{padding:0}.invoice-sheet{box-shadow:none;max-width:none;padding:12mm}.invoice-sheet a{color:#000;text-decoration:none}}

/* v1.1 invoice print refinements */
.vat-number{font-size:1.5em;font-weight:800;line-height:1.2}.invoice-number{font-size:1.5em;line-height:1.2;margin:.35em 0 0}
@page{size:A4 portrait;margin:10mm}
@media print{html,body{width:210mm;min-height:297mm}.invoice-sheet{width:190mm;max-width:190mm;margin:0 auto;padding:8mm 10mm;border-radius:0}.vat-number,.invoice-number{font-size:20px!important;font-weight:800!important}.invoice-meta-grid{break-inside:avoid}.data-table tr{break-inside:avoid}.margin-note{break-inside:avoid}}

/* v1.2: strong supplier VAT/invoice hierarchy. PDF printing is handled by invoice_pdf.php. */
.vat-number,.invoice-number{font-size:24px!important;font-weight:800!important;line-height:1.2!important}

/* v1.4 - unified invoice screen/PDF appearance */
.invoice-sheet{max-width:980px;padding:44px 44px 34px}
.invoice-head{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.invoice-customer h1{font-size:34px;line-height:1.1;margin:8px 0 20px}
.invoice-customer h3{margin:14px 0 14px;font-size:18px}
.invoice-supplier{text-align:right}
.invoice-supplier .invoice-logo{display:block;margin:0 0 26px auto;max-width:110px;max-height:90px}
.invoice-supplier h3{margin:0 0 16px;font-size:18px}
.invoice-supplier .supplier-address{line-height:1.18}
.invoice-supplier .vat-number{font-size:18px!important;font-weight:800!important;line-height:1.2!important;margin-top:10px}
.invoice-supplier .invoice-label{margin-top:18px}
.invoice-supplier .invoice-number{font-size:22px!important;font-weight:800!important;line-height:1.2!important;margin:6px 0 0}
.invoice-meta-grid{grid-template-columns:1fr 1fr 1fr;gap:20px}
.invoice-meta-grid>div:nth-child(2){text-align:center}
.invoice-meta-grid>div:nth-child(3){text-align:right}
.invoice-sheet .data-table th:nth-child(n+2),.invoice-sheet .data-table td:nth-child(n+2){text-align:right}
.invoice-sheet .data-table th:first-child,.invoice-sheet .data-table td:first-child{text-align:left}
@media(max-width:700px){.invoice-head{grid-template-columns:1fr}.invoice-supplier{text-align:left}.invoice-supplier .invoice-logo{margin-left:0}.invoice-meta-grid>div:nth-child(2),.invoice-meta-grid>div:nth-child(3){text-align:left}}
