:root{--bg: #f4f6f9;--surface: #ffffff;--surface-2: #eef2f7;--border: #d7dee8;--text: #16202e;--muted: #5a6b80;--brand: #0f5132;--brand-2: #14663f;--accent: #b8860b;--danger: #b02a37;--warn: #9a6700;--ok: #1a7f37;--radius: 10px;--shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .1);font-family:Segoe UI,Tahoma,Noto Naskh Arabic,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.app{display:flex;min-height:100%}.sidebar{width:240px;background:var(--brand);color:#eaf3ee;display:flex;flex-direction:column;padding:16px 12px;gap:4px;flex-shrink:0}.sidebar h1{font-size:17px;margin:4px 8px 16px;line-height:1.5}.sidebar .hotel{font-size:12px;color:#a8cbb8;margin:0 8px 12px}.navbtn{display:flex;align-items:center;gap:10px;background:transparent;border:0;color:inherit;padding:10px 12px;border-radius:8px;text-align:right;width:100%;font-size:14.5px}.navbtn:hover{background:#ffffff17}.navbtn.active{background:#ffffff2b;font-weight:600}.navbtn .ico{width:20px;text-align:center}.sidebar .spacer{flex:1}.sidebar .who{font-size:12px;color:#a8cbb8;padding:8px;border-top:1px solid rgba(255,255,255,.15)}.main{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{background:var(--surface);border-bottom:1px solid var(--border);padding:12px 20px;display:flex;align-items:center;gap:12px;justify-content:space-between}.topbar h2{margin:0;font-size:18px}.content{padding:20px;max-width:1200px;width:100%;margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;margin-bottom:16px}.card h3{margin:0 0 14px;font-size:15.5px}.grid{display:grid;gap:12px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 900px){.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}.sidebar{display:none}}label.field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}label.field input,label.field select,label.field textarea{padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}label.field input:focus,label.field select:focus{outline:2px solid var(--brand-2);outline-offset:1px}.btn{border:1px solid var(--border);background:var(--surface);padding:9px 14px;border-radius:8px;font-size:14px}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-2)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.ghost{background:transparent}.btn:disabled{opacity:.5;cursor:not-allowed}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.end{justify-content:flex-end}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:right;padding:9px 10px;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:600;font-size:12.5px;background:var(--surface-2)}tbody tr:hover{background:var(--surface-2)}td.num,th.num{text-align:left;font-variant-numeric:tabular-nums;direction:ltr}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;border:1px solid transparent}.badge.open{background:#e7f1ff;color:#0b4ea2;border-color:#bcd8ff}.badge.locked{background:#e6f4ea;color:var(--ok);border-color:#b7e1c4}.badge.cancelled{background:#fbe9eb;color:var(--danger);border-color:#f3c2c8}.badge.eta{background:#fff5e0;color:var(--warn);border-color:#ffe0a3}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.stat .k{font-size:12.5px;color:var(--muted)}.stat .v{font-size:22px;font-weight:700;margin-top:4px;font-variant-numeric:tabular-nums;direction:ltr;text-align:right}.alert{padding:10px 13px;border-radius:8px;font-size:13.5px;margin-bottom:12px}.alert.err{background:#fbe9eb;color:var(--danger);border:1px solid #f3c2c8}.alert.ok{background:#e6f4ea;color:var(--ok);border:1px solid #b7e1c4}.alert.warn{background:#fff5e0;color:var(--warn);border:1px solid #ffe0a3}.login-wrap{display:flex;align-items:center;justify-content:center;min-height:100%;padding:20px}.login-card{width:100%;max-width:420px}.login-card .brand{text-align:center;margin-bottom:6px;color:var(--brand)}.muted{color:var(--muted);font-size:13px}.right{text-align:right}.spread{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.mono{font-family:ui-monospace,Cascadia Code,Consolas,monospace;direction:ltr}.totals{max-width:340px;margin-inline-start:auto}.totals div{display:flex;justify-content:space-between;padding:5px 0}.totals .grand{border-top:2px solid var(--text);margin-top:6px;padding-top:8px;font-weight:700;font-size:17px}.print-area{display:block;padding:16px 0}.inv{max-width:860px;margin:0 auto;background:#fff;color:#111;border:1px solid #111;border-radius:12px;overflow:hidden;box-shadow:0 4px 24px #0000000f;font-family:Segoe UI,Tahoma,Noto Naskh Arabic,sans-serif}.inv-bar{height:6px;background:linear-gradient(90deg,#0f2340,#8a6d00,#0f2340)}.inv-cancel{background:#c00000;color:#fff;text-align:center;padding:14px;font-size:24px;font-weight:900;letter-spacing:2px}.inv-cancel-note{background:#ffe6e6;color:#c00000;text-align:center;padding:8px;font-weight:800}.inv-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:26px 32px 18px}.inv-seller{font-size:13px;line-height:1.9;color:#111}.inv-seller .inv-city{margin-top:10px;font-weight:800;font-size:15px}.inv-brand{text-align:center;flex:1}.inv-brand img{height:84px;object-fit:contain}.inv-name{font-size:25px;font-weight:900;color:#0f2340;margin-top:2px}.inv-name-en{font-size:12px;letter-spacing:3px;color:#8a6d00;font-weight:800}.inv-meta{text-align:left}.inv-invoice-box{background:#0f2340;color:#fff;padding:10px 16px;border-radius:10px;text-align:center}.inv-invoice-label{font-size:12px;letter-spacing:2px}.inv-invoice-no{font-size:23px;font-weight:900;margin-top:2px}.inv-date{text-align:center;margin-top:8px;font-size:13px}.inv-rule{height:1px;background:#eee;margin:0 32px}.inv-cards{display:flex;gap:16px;padding:18px 32px}.inv-billto{flex:1;background:#ede9d0;border:1px solid #111;border-radius:12px;padding:14px 16px}.inv-billto-label{font-size:11px;letter-spacing:2px;color:#8a6d00;font-weight:800}.inv-billto-name{font-size:19px;font-weight:900;margin-top:4px}.inv-billto-sub{font-size:13px;margin-top:2px}.inv-total-box{width:210px;background:#0f2340;color:#fff;border-radius:12px;padding:14px 16px}.inv-total-label{font-size:11px;letter-spacing:2px}.inv-total-date{font-size:17px;font-weight:800;margin-top:4px}.inv-total-amount{font-size:23px;font-weight:900;margin-top:2px}.inv-lines{width:calc(100% - 64px);margin:0 32px;border-collapse:separate;border-spacing:0;border:2px solid #111;border-radius:12px;overflow:hidden}.inv-lines th{background:#0f2340;color:#fff;padding:12px;font-size:13px}.inv-lines td{padding:14px;border-bottom:1px solid #111;font-size:13px;vertical-align:top}.inv-lines .c-desc{text-align:right;width:58%}.inv-lines .c-num{text-align:center}.inv-line-desc{font-weight:700;font-size:14px}.inv-line-sub{color:#222;font-size:12.5px;margin-top:4px}.inv-summary-wrap{display:flex;justify-content:flex-end;padding:14px 32px 0}.inv-summary{width:340px;background:#f5f3e6;border:1px solid #111;border-radius:12px;padding:14px 16px;line-height:2.1;font-size:14px}.inv-summary div{display:flex;justify-content:space-between}.inv-summary .inv-grand{border-top:1px dashed #ddd;margin-top:6px;padding-top:8px;font-size:18px}.inv-signs{display:flex;justify-content:space-between;padding:34px 32px 10px}.inv-sign{text-align:center}.inv-sign-line{width:220px;border-bottom:1px solid #111;margin:0 auto 8px}.inv-sign-ar{font-weight:800}.inv-sign-en{font-size:12px;color:#222}.inv-foot{display:flex;align-items:center;gap:20px;padding:6px 32px 26px}.inv-foot .qr{text-align:center}.inv-foot .qr img{width:120px;height:120px}.inv-qr-note{font-size:11px;color:#333}.inv-foot-text{flex:1;font-size:11px;color:#444}.inv-foot-uuid{margin-top:6px}@media print{body{background:#fff}.app,.no-print{display:none!important}.print-area{display:block!important;padding:0}@page{size:A4;margin:10mm}.inv{max-width:none;border:0;border-radius:0;box-shadow:none}.inv-bar,.inv-cancel,.inv-cancel-note,.inv-invoice-box,.inv-total-box,.inv-billto,.inv-lines th,.inv,.inv *{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
