:root{--navy:#091522;--navy2:#10263a;--gold:#c7a55b;--bg:#f3f5f7;--line:#dfe5ea;--text:#17212b;--muted:#71808d}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}aside{position:fixed;left:0;top:0;bottom:0;width:235px;background:var(--navy);padding:28px 20px;color:#fff}.brand{padding:5px 10px 30px}.brand span{display:block;font-size:26px;letter-spacing:5px;color:var(--gold);font-weight:700}.brand small{letter-spacing:2px;color:#aeb9c3;font-size:9px}nav a{display:block;color:#dbe2e8;text-decoration:none;padding:12px 14px;border-radius:8px;margin:4px 0}nav a:hover{background:var(--navy2);color:#fff}main{margin-left:235px;padding:28px 34px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}h1{margin:0;font-size:27px}header p,.muted{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}.card small{color:var(--muted);text-transform:uppercase;font-size:11px;letter-spacing:.7px}.card strong{display:block;font-size:27px;margin-top:9px}.gold{color:#a17c2d}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel h2{font-size:17px;margin:0 0 16px}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:12px;border-bottom:1px solid #edf0f2;font-size:14px}th{color:#64727d;font-size:11px;text-transform:uppercase}.badge{padding:5px 9px;border-radius:99px;font-size:11px;background:#edf1f4}.paid{background:#e5f5eb;color:#247142}.overdue{background:#fde9e7;color:#a13c33}.draft{background:#eef0f2;color:#5d6871}.sent{background:#e8f0fa;color:#315f95}.btn{display:inline-block;background:var(--navy);color:#fff;border:0;border-radius:7px;padding:10px 14px;text-decoration:none;cursor:pointer}.btn.goldbtn{background:var(--gold);color:#111}.btn.light{background:#eef1f3;color:#17212b}input,select,textarea{width:100%;padding:10px 11px;border:1px solid #ccd5dc;border-radius:7px;background:#fff;font:inherit}label{display:block;font-size:12px;font-weight:600;margin-bottom:6px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{margin-bottom:15px}.actions{display:flex;gap:8px;align-items:center}.right{text-align:right}.invoice-sheet{max-width:900px;margin:auto;background:#fff;padding:50px;border:1px solid var(--line)}.invoice-head{display:flex;justify-content:space-between;border-bottom:2px solid var(--gold);padding-bottom:25px;margin-bottom:30px}.invoice-head .logo{font-size:30px;letter-spacing:5px;color:#a17c2d;font-weight:700}.totals{margin-left:auto;width:320px}.totals div{display:flex;justify-content:space-between;padding:7px 0}.totals .grand{border-top:2px solid var(--navy);font-size:19px;font-weight:bold}.login{min-height:100vh;display:grid;place-items:center;background:var(--navy)}.loginbox{width:390px;background:#fff;padding:35px;border-radius:14px}.loginbox .brand{text-align:center;padding-bottom:25px}.notice{padding:12px;border-radius:7px;background:#fff4d6;margin-bottom:15px}@media(max-width:850px){aside{position:static;width:auto}main{margin:0;padding:18px}.cards{grid-template-columns:1fr 1fr}.grid2,.formgrid{grid-template-columns:1fr}}@media print{aside,main>header,.noprint{display:none!important}main{margin:0;padding:0}.invoice-sheet{border:0;max-width:none}}

/* Verus Aviation brand assets */
aside .brand{padding:4px 4px 28px}
aside .brand img{display:block;width:185px;max-width:100%;height:auto}
aside .brand small{display:block;margin-top:9px;padding-left:2px;color:#aeb9c3;letter-spacing:2.4px;font-size:8px}
.loginbox .brand img{display:block;width:260px;max-width:100%;height:auto;margin:0 auto}
.loginbox .brand small{display:block;margin-top:10px;color:#71808d;letter-spacing:2.4px;font-size:9px}
.invoice-logo{display:block;width:285px;max-width:100%;height:auto;margin-bottom:12px}
@media(max-width:850px){aside .brand img{width:210px}}
@media print{.invoice-logo{width:270px}}

/* Premium Verus invoice */
.invoice-toolbar{max-width:960px;margin:0 auto 18px;display:flex;justify-content:space-between;gap:15px;align-items:center}.status-select{width:auto;min-width:135px}.premium-invoice{max-width:960px;padding:0 52px 38px;overflow:hidden;box-shadow:0 12px 35px rgba(9,21,34,.06)}.invoice-topbar{height:7px;background:var(--navy);margin:0 -52px 38px}.premium-head{align-items:flex-start;border-bottom:0;padding:0;margin-bottom:42px}.premium-head .invoice-logo{width:300px;margin:0 0 12px}.invoice-tagline{font-size:9px;letter-spacing:3.2px;color:#84919a;font-weight:700;margin-left:2px}.invoice-title{text-align:right}.document-type{font-size:34px;letter-spacing:6px;font-weight:300;color:var(--navy);line-height:1}.invoice-number{font-size:15px;font-weight:700;margin:12px 0 10px;color:#4f606c}.invoice-status{display:inline-block;padding:5px 10px;border-radius:99px;font-size:10px;text-transform:uppercase;letter-spacing:.7px;background:#eef0f2;color:#5d6871}.invoice-status.paid{background:#e5f5eb;color:#247142}.invoice-status.overdue{background:#fde9e7;color:#a13c33}.invoice-status.sent{background:#e8f0fa;color:#315f95}.invoice-status.part_paid{background:#fff2d6;color:#89681f}.invoice-meta-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:60px;margin-bottom:32px}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:800;color:#9a7a37;margin-bottom:10px}.billto-block h2{font-size:20px;margin:0 0 8px;color:var(--navy)}.billto-block{font-size:12px;line-height:1.65;color:#52616c}.billto-block .address{margin:3px 0}.meta-note{margin-top:5px;color:#7a8790}.invoice-details-card{border-left:1px solid #e1e6e9;padding-left:28px}.invoice-details-card>div{display:flex;justify-content:space-between;gap:18px;padding:6px 0;font-size:11px}.invoice-details-card span{color:#7a8790}.invoice-details-card strong{color:#26343e;text-align:right}.trip-strip{display:grid;grid-template-columns:1fr 1fr 2fr;background:#f5f7f8;border-left:3px solid var(--gold);padding:15px 18px;margin-bottom:30px;gap:22px}.trip-strip span{display:block;font-size:8px;letter-spacing:1.2px;color:#82909a;margin-bottom:5px;font-weight:700}.trip-strip strong{font-size:11px;color:#26343e}.invoice-items{margin-top:0}.invoice-items th{background:var(--navy);color:#fff;border:0;padding:12px 14px;font-size:9px;letter-spacing:1px}.invoice-items td{padding:15px 14px;font-size:11px;border-bottom:1px solid #e9edef;color:#46545e}.invoice-items td:first-child{color:#26343e}.invoice-items .qty{width:70px}.invoice-items .rate{width:130px}.invoice-items .amount{width:140px}.invoice-summary-row{display:grid;grid-template-columns:1fr 350px;gap:50px;margin-top:24px}.invoice-notes{font-size:11px;color:#65737d;line-height:1.6;padding-top:8px}.premium-totals{width:100%}.premium-totals>div{display:flex;justify-content:space-between;padding:7px 4px;font-size:11px;color:#596771}.premium-totals .total-line{border-top:1px solid #cfd6da;margin-top:4px;padding-top:11px;font-weight:700;color:#26343e}.premium-totals .amount-due{background:var(--navy);color:#fff;margin-top:8px;padding:14px 16px;align-items:center}.premium-totals .amount-due span{font-size:9px;letter-spacing:1.3px}.premium-totals .amount-due strong{font-size:20px}.payment-box{margin-top:38px;background:#f5f7f8;border-top:2px solid var(--gold);padding:20px 22px;display:grid;grid-template-columns:1.6fr 1fr;gap:35px;font-size:10px;color:#53616b}.payment-box p{margin:0;line-height:1.6}.payment-ref{border-left:1px solid #d9e0e4;padding-left:24px}.payment-ref span,.payment-ref small{display:block;color:#7d8992}.payment-ref strong{display:block;font-size:13px;margin:5px 0;color:#26343e}.invoice-footer{margin-top:28px;padding-top:17px;border-top:1px solid #e0e5e8;display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:8.5px;line-height:1.55;color:#7d8992}.invoice-footer strong{color:#52616c}.payment-panel{max-width:960px;margin:18px auto}
@media(max-width:850px){.invoice-toolbar{display:block}.invoice-toolbar>form{margin-top:10px}.premium-invoice{padding:0 24px 28px}.invoice-topbar{margin-left:-24px;margin-right:-24px}.premium-head .invoice-logo{width:230px}.invoice-meta-grid,.invoice-summary-row{grid-template-columns:1fr;gap:24px}.trip-strip{grid-template-columns:1fr}.invoice-details-card{border-left:0;padding-left:0}.payment-box{grid-template-columns:1fr}.payment-ref{border-left:0;padding-left:0}}
@media print{@page{size:A4;margin:0}.premium-invoice{width:210mm;min-height:297mm;max-width:none;box-shadow:none;padding:0 15mm 10mm;border:0}.invoice-topbar{margin:0 -15mm 10mm}.premium-head{margin-bottom:10mm}.invoice-meta-grid{margin-bottom:8mm}.trip-strip{margin-bottom:7mm}.invoice-items th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#091522!important;color:#fff!important}.premium-totals .amount-due,.invoice-topbar{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#091522!important;color:#fff!important}.trip-strip,.payment-box{-webkit-print-color-adjust:exact;print-color-adjust:exact}.invoice-footer{margin-top:7mm}.payment-panel{display:none!important}}

/* V1.3 invoice builder */
.create-invoice-wrap{max-width:1450px;margin:0 auto}.create-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.create-head h2{font-size:26px;margin:3px 0 4px}.create-head p,.section-title p{margin:0;color:var(--muted);font-size:12px}.create-head-actions{display:flex;gap:8px}.create-grid{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:20px;align-items:start}.create-main{display:grid;gap:16px}.create-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px}.section-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.section-title>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#f2ead8;color:#8e6c27;font-size:10px;font-weight:800;flex:0 0 auto}.section-title h3{font-size:15px;margin:1px 0 3px}.section-title.service-title .add-line{margin-left:auto}.formgrid.three{grid-template-columns:1fr 1fr 1.5fr}.customer-preview{margin-top:8px;padding:10px 12px;background:#f6f8f9;border-radius:7px;color:#71808d;font-size:11px;line-height:1.55;min-height:52px}.customer-preview strong{color:#26343e}.input-suffix,.money-input{position:relative}.input-suffix span{position:absolute;right:12px;top:10px;color:#7b8993}.input-suffix input{padding-right:30px}.quick-services{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:-4px 0 14px;font-size:10px;color:#7b8993}.quick-services button{border:1px solid #dce3e7;background:#f7f9fa;border-radius:99px;padding:6px 9px;font-size:10px;color:#46545e;cursor:pointer}.quick-services button:hover{border-color:var(--gold);background:#fffaf0}.line-table-wrap{overflow-x:auto}.line-table{min-width:720px}.line-table th{background:#f6f8f9;padding:9px 10px}.line-table td{padding:8px 5px;border-bottom:1px solid #edf0f2}.line-table input{padding:9px}.line-table td:nth-child(2){width:90px}.line-table td:nth-child(3){width:160px}.line-table td:nth-child(4){width:125px}.line-table td:nth-child(5){width:36px}.money-input .currency-symbol{position:absolute;left:10px;top:10px;color:#71808d;font-size:12px}.money-input input{padding-left:27px}.remove-line{border:0;background:transparent;color:#9aa5ad;font-size:20px;cursor:pointer}.remove-line:hover{color:#a13c33}.field-hint{display:block;color:#8a969f;margin-top:6px;font-size:10px}.invoice-builder-summary{position:static;width:auto;background:transparent;padding:0;color:inherit}.summary-sticky{position:sticky;top:22px;background:var(--navy);color:#fff;border-radius:12px;padding:24px;box-shadow:0 12px 28px rgba(9,21,34,.12)}.summary-sticky .eyebrow{color:var(--gold)}.summary-sticky h3{font-size:19px;margin:2px 0 22px}.summary-line,.summary-total{display:flex;justify-content:space-between;gap:15px;padding:8px 0;font-size:12px;color:#b8c3cb}.summary-line strong{color:#fff}.summary-total{border-top:1px solid #31404d;margin-top:6px;padding:16px 0 18px;align-items:center;color:#fff}.summary-total strong{font-size:24px}.summary-meta{border-top:1px solid #31404d;padding:12px 0 18px}.summary-meta>div{display:flex;justify-content:space-between;gap:14px;padding:5px 0;font-size:10px}.summary-meta span{color:#93a1ab}.summary-meta strong{text-align:right;font-weight:600;max-width:170px}.btn.full{width:100%;text-align:center}.summary-help{font-size:9px;line-height:1.5;color:#8f9da7;text-align:center;margin:10px 8px 0}
@media(max-width:1050px){.create-grid{grid-template-columns:1fr}.invoice-builder-summary{display:none}.formgrid.three{grid-template-columns:1fr 1fr}.create-head{align-items:flex-start}.create-head-actions{margin-left:15px}}
@media(max-width:650px){.create-head{display:block}.create-head-actions{margin:15px 0 0}.formgrid.three{grid-template-columns:1fr}.create-card{padding:16px}.service-title{flex-wrap:wrap}.section-title.service-title .add-line{margin-left:40px}.create-head-actions .btn{flex:1;text-align:center}}

/* Keep short invoices to a single A4 sheet when printing */
@media print{
  .premium-invoice{box-sizing:border-box;page-break-after:avoid;break-after:avoid}.premium-invoice.compact-invoice{height:297mm;min-height:297mm;padding:0 14mm 7mm;display:flex;flex-direction:column}.compact-invoice .invoice-topbar{flex:0 0 auto;margin:0 -14mm 7mm}.compact-invoice .premium-head{margin-bottom:6mm}.compact-invoice .premium-head .invoice-logo{width:235px}.compact-invoice .invoice-tagline{font-size:7.5px}.compact-invoice .document-type{font-size:27px}.compact-invoice .invoice-number{margin:8px 0 7px}.compact-invoice .invoice-meta-grid{margin-bottom:5mm;gap:12mm}.compact-invoice .billto-block{font-size:9.5px;line-height:1.4}.compact-invoice .billto-block h2{font-size:16px;margin-bottom:4px}.compact-invoice .invoice-details-card>div{padding:3px 0;font-size:9px}.compact-invoice .trip-strip{padding:9px 13px;margin-bottom:4mm}.compact-invoice .invoice-items th{padding:8px 10px;font-size:7.5px}.compact-invoice .invoice-items td{padding:8px 10px;font-size:9px}.compact-invoice .invoice-summary-row{margin-top:4mm;grid-template-columns:1fr 82mm;gap:10mm}.compact-invoice .invoice-notes{font-size:9px;line-height:1.4}.compact-invoice .premium-totals>div{padding:4px;font-size:9px}.compact-invoice .premium-totals .amount-due{padding:9px 12px}.compact-invoice .premium-totals .amount-due strong{font-size:16px}.compact-invoice .payment-box{margin-top:5mm;padding:10px 13px;font-size:8px;gap:8mm}.compact-invoice .invoice-footer{margin-top:auto;padding-top:4mm;font-size:7px}.compact-invoice .eyebrow{font-size:7px;margin-bottom:5px}
}

/* V1.7 settings */
.settings-wrap{max-width:900px}.settings-card{margin-bottom:18px;padding:24px}.settings-section-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid #edf0f2;padding-bottom:15px;margin-bottom:20px}.settings-section-head h2{margin:0 0 4px;font-size:17px}.settings-section-head p{margin:0;color:var(--muted);font-size:12px}.settings-actions{display:flex;justify-content:flex-end;margin-top:4px}.settings-notice{max-width:900px}.settings-card textarea{resize:vertical}

/* V1.7: print is always a fixed A4/desktop invoice layout, irrespective of viewport width. */
@media print{
  @page{size:A4 portrait;margin:0}
  html,body{width:210mm!important;min-width:210mm!important;margin:0!important;padding:0!important;background:#fff!important}
  aside,main>header,.noprint{display:none!important}
  main{width:210mm!important;min-width:210mm!important;margin:0!important;padding:0!important}
  .premium-invoice,.premium-invoice.compact-invoice{display:block!important;box-sizing:border-box!important;width:210mm!important;max-width:210mm!important;min-width:210mm!important;height:auto!important;min-height:297mm!important;margin:0!important;padding:0 14mm 7mm!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
  .premium-invoice .invoice-topbar,.compact-invoice .invoice-topbar{display:block!important;height:2mm!important;margin:0 -14mm 8mm!important;break-inside:avoid!important}
  .premium-invoice .premium-head,.compact-invoice .premium-head{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;gap:12mm!important;margin-bottom:8mm!important;padding:0!important}
  .premium-invoice .premium-head>div:first-child{width:110mm!important;flex:0 0 110mm!important}
  .premium-invoice .premium-head .invoice-logo,.compact-invoice .premium-head .invoice-logo{display:block!important;width:68mm!important;max-width:68mm!important;height:auto!important;margin:0 0 3mm!important}
  .premium-invoice .invoice-title{width:50mm!important;flex:0 0 50mm!important;text-align:right!important}
  .premium-invoice .document-type,.compact-invoice .document-type{font-size:25px!important;letter-spacing:5px!important;white-space:nowrap!important}
  .premium-invoice .invoice-meta-grid,.compact-invoice .invoice-meta-grid{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)!important;gap:14mm!important;margin-bottom:7mm!important;align-items:start!important}
  .premium-invoice .billto-block,.compact-invoice .billto-block{font-size:9.5px!important;line-height:1.45!important;min-width:0!important}
  .premium-invoice .invoice-details-card,.compact-invoice .invoice-details-card{display:block!important;border-left:1px solid #e1e6e9!important;padding-left:7mm!important;min-width:0!important}
  .premium-invoice .invoice-details-card>div,.compact-invoice .invoice-details-card>div{display:flex!important;flex-direction:row!important;justify-content:space-between!important;gap:6mm!important;padding:2mm 0!important;font-size:9px!important}
  .premium-invoice .trip-strip,.compact-invoice .trip-strip{display:grid!important;grid-template-columns:1fr 1fr 2fr!important;gap:7mm!important;width:100%!important;padding:4mm 5mm!important;margin:0 0 7mm!important;break-inside:avoid!important}
  .premium-invoice .trip-strip>div{display:block!important;min-width:0!important}
  .premium-invoice .trip-strip strong{display:block!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .premium-invoice .invoice-items{display:table!important;width:100%!important;table-layout:fixed!important;margin:0!important}
  .premium-invoice .invoice-items thead{display:table-header-group!important}.premium-invoice .invoice-items tbody{display:table-row-group!important}.premium-invoice .invoice-items tr{display:table-row!important;break-inside:avoid!important}.premium-invoice .invoice-items th,.premium-invoice .invoice-items td{display:table-cell!important}
  .premium-invoice .invoice-items .qty{width:16mm!important}.premium-invoice .invoice-items .rate{width:32mm!important}.premium-invoice .invoice-items .amount{width:34mm!important}
  .premium-invoice .invoice-summary-row,.compact-invoice .invoice-summary-row{display:grid!important;grid-template-columns:minmax(0,1fr) 82mm!important;gap:10mm!important;margin-top:6mm!important;align-items:start!important;break-inside:avoid!important}
  .premium-invoice .premium-totals{width:82mm!important;margin-left:auto!important}
  .premium-invoice .payment-box,.compact-invoice .payment-box{display:grid!important;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)!important;gap:9mm!important;width:100%!important;margin-top:8mm!important;padding:5mm!important;break-inside:avoid!important}
  .premium-invoice .payment-ref{display:block!important;border-left:1px solid #d9e0e4!important;padding-left:6mm!important}
  .premium-invoice .invoice-footer,.compact-invoice .invoice-footer{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8mm!important;width:100%!important;margin-top:8mm!important;padding-top:4mm!important;break-inside:avoid!important}
  .premium-invoice .invoice-footer .right{text-align:right!important}
  .premium-invoice .invoice-items th,.premium-invoice .amount-due,.premium-invoice .invoice-topbar{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
}
