:root{--bg:#f3f6fa;--card:#fff;--ink:#0f1f33;--muted:#6b7a90;--line:#e3e9f1;--brand:#0b4f8a;--brand2:#0aa3c2;--soft:#e8f2fb;
--ok:#0f8a5f;--okbg:#e6f6ef;--err:#c0392b;--errbg:#fdecea;--amber:#b7791f;--amberbg:#fdf4e3;--gold:#c99a06;--r:14px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 Tajawal,system-ui,sans-serif}
a{color:var(--brand);text-decoration:none}
.ic{width:20px;height:20px;flex:none}
.side{position:fixed;top:0;right:0;bottom:0;width:250px;z-index:20;display:flex;flex-direction:column;gap:6px;padding:18px 14px;background:linear-gradient(180deg,#132a4b,#0f2240);color:#fff;box-shadow:-2px 0 14px rgba(0,0,0,.08)}
.brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:17px;padding:4px 6px 16px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:8px}
.brand b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.logo{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:11px;background:linear-gradient(135deg,var(--brand2),#5fd3e8)}
.nav{display:flex;flex-direction:column;gap:4px;flex:1;overflow-y:auto}
.nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:11px;color:#c9d8ea;font-weight:500}
.nav a.on{background:rgba(255,255,255,.12);color:#fff;font-weight:700}.nav a.on .ic{color:#5fd3e8}.nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.me{display:flex;align-items:center;gap:10px;padding:12px 6px 2px;border-top:1px solid rgba(255,255,255,.08)}
.me .av{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:50%;background:#2d5fa0;font-weight:800}
.me .who{display:flex;flex-direction:column;line-height:1.3;flex:1;min-width:0}.me .who b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.me small{opacity:.65;font-size:12px}
.me a{color:#c9d8ea;display:flex}.me a:hover{color:#fff}
body.has-side{padding-right:250px;min-height:100vh}
.wrap{max-width:1100px;margin:0 auto;padding:18px 16px 90px}
h1{font-size:24px;margin:6px 0 14px}h2{font-size:19px;margin:0 0 12px}h3{font-size:16px;margin:4px 0 10px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.page-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:14px;box-shadow:0 1px 3px rgba(15,31,51,.04)}
.card.empty{text-align:center;color:var(--muted);padding:28px}
.muted{color:var(--muted)}.small{font-size:13px}.center{text-align:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:11px;padding:10px 16px;background:var(--brand);color:#fff;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}
.btn:hover{filter:brightness(1.08)}.btn-big{padding:13px 22px;font-size:16px}.btn-sm{padding:6px 12px;font-size:14px}
.btn-ghost{background:var(--soft);color:var(--brand)}.btn-danger{background:var(--err)}
.link-btn{background:none;border:0;color:var(--brand);cursor:pointer;font:inherit;padding:0}
.alert{border-radius:12px;padding:11px 14px;margin-bottom:12px}.a-ok{background:var(--okbg);color:var(--ok)}.a-err{background:var(--errbg);color:var(--err)}
.form label{display:flex;flex-direction:column;gap:5px;font-weight:500;font-size:14px;margin-bottom:12px}
input,select,textarea{font:inherit;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff;color:var(--ink);width:100%;min-width:0}
input:focus,select:focus{outline:2px solid #9cc7ee;border-color:var(--brand)}
.form label.check,label.check{flex-direction:row;align-items:center;gap:8px;font-weight:500}
label.check input,.opt input{width:auto}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.grid2.top{gap:14px;align-items:start}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 14px}
.search-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.search-bar input{flex:1;min-width:180px}.search-bar label{display:flex;gap:6px;align-items:center}
.inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inline-form input,.inline-form select{width:auto;flex:1;min-width:120px}
.inline-form.add{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}
.opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;margin-bottom:14px}.opts-sm{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.opt{position:relative;cursor:pointer}.opt input{position:absolute;opacity:0}
.opt span{display:flex;flex-direction:column;gap:2px;border:2px solid var(--line);border-radius:12px;padding:12px;height:100%;transition:.15s}
.opt em{font-style:normal;color:var(--muted);font-size:14px}
.opt input:checked+span{border-color:var(--brand);background:var(--soft)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.chip{display:inline-flex;align-items:center;gap:6px;background:#f1f4f8;border-radius:20px;padding:5px 12px;font-size:14px}
.chip-gold{background:#fff5d6;color:#8a6500;font-weight:700}.chip-blue{background:var(--soft);color:var(--brand)}
.cust-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.cust-head h2{margin:0}
.plate{display:inline-block;background:#fff;border:2px solid var(--ink);border-radius:6px;padding:0 8px;font-weight:800;letter-spacing:1px;direction:ltr}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:14px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px}
.stat .k{color:var(--muted);font-size:14px}.stat .v{font-size:24px;font-weight:800;margin:2px 0}.stat .s{color:var(--muted);font-size:13px}
.stat-gold{background:#fffaeb;border-color:#f3dd96}
.list{display:flex;flex-direction:column}.li{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:9px 2px;border-bottom:1px solid var(--line);color:inherit}.li:last-child{border:0}
.tabs{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}.tabs a{padding:8px 14px;border-radius:10px;background:#fff;border:1px solid var(--line);color:var(--ink);font-weight:500}
.tabs a.on{background:var(--brand);color:#fff;border-color:var(--brand)}.tabs em{font-style:normal;opacity:.75;margin-right:4px}
.badge{display:inline-block;border-radius:20px;padding:2px 10px;font-size:13px;font-weight:700}
.b-green{background:var(--okbg);color:var(--ok)}.b-red{background:var(--errbg);color:var(--err)}.b-amber{background:var(--amberbg);color:var(--amber)}.b-blue{background:var(--soft);color:var(--brand)}.b-gray{background:#eef1f5;color:var(--muted)}
.vlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.vcard{margin:0;display:flex;flex-direction:column;gap:8px}.vcard.st-open{border-right:4px solid var(--amber)}.vcard.st-done{border-right:4px solid var(--ok)}.vcard.st-cancelled{opacity:.6}
.vc-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.vc-mid{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px}
.vc-act{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}.cancel summary{list-style:none}.cancel summary::-webkit-details-marker{display:none}.cancel form{margin-top:8px}
.table-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:14px}
.tbl th{text-align:right;color:var(--muted);font-weight:500;padding:8px;border-bottom:2px solid var(--line);white-space:nowrap}
.tbl td{padding:9px 8px;border-bottom:1px solid var(--line)}.tbl .num{text-align:left;direction:ltr;white-space:nowrap}
.tbl tr[data-href]{cursor:pointer}.tbl tr[data-href]:hover td{background:#f8fbfe}.tbl tr.off td,.off{opacity:.55}
.qr-row{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}#qr{background:#fff;padding:6px;border:1px solid var(--line);border-radius:10px}
.qr-act{flex:1;min-width:200px;display:flex;flex-direction:column;gap:8px}.row-btns{display:flex;gap:6px;flex-wrap:wrap}
.sell{margin-bottom:12px}
.auth{max-width:420px;margin:7vh auto;text-align:center}.auth .form{text-align:right}
.auth-logo{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 6px;border-radius:18px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff}
.auth-logo .ic{width:32px;height:32px}
body.bare{background:linear-gradient(160deg,#e8f2fb,#f3f6fa 50%)}
.pub{max-width:480px;margin:0 auto}.pub-head{text-align:center;padding:14px 0}.pub-head h1{margin:6px 0 2px}.pub-card h3{justify-content:flex-start}
.gold-note{background:#fff5d6;color:#8a6500;border-radius:12px;padding:12px;font-weight:800;font-size:18px;text-align:center;margin-bottom:10px}
.dots{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.dots span{width:26px;height:26px;border-radius:50%;border:2px dashed #b8c6d6}
.dots span.on{border:0;background:linear-gradient(135deg,var(--brand),var(--brand2))}
.big-num{font-size:34px;font-weight:800;color:var(--brand)}.big-num small{font-size:15px;color:var(--muted);font-weight:500}
.print-only{display:none}
@media (max-width:760px){
  .side{position:sticky;bottom:auto;width:auto;flex-direction:row;align-items:center;padding:8px 12px;gap:10px}
  .brand{border:0;padding:0;margin:0;font-size:15px;flex:1;min-width:0}.logo{width:32px;height:32px}
  .me{border:0;padding:0}.me .who,.me .av{display:none}
  .nav{position:fixed;bottom:0;left:0;right:0;flex-direction:row;justify-content:space-around;background:#fff;border-top:1px solid var(--line);padding:4px 2px calc(4px + env(safe-area-inset-bottom));z-index:30;overflow:visible}
  .nav a{flex-direction:column;gap:1px;color:var(--muted);font-size:11px;padding:5px 6px}.nav a.on{background:none;color:var(--brand)}.nav a.on .ic{color:var(--brand)}
  body.has-side{padding-right:0}
  .grid2,.grid3{grid-template-columns:1fr}.wrap{padding:14px 12px 96px}h1{font-size:21px}
  .tbl thead{display:none}.tbl tr{display:block;border:1px solid var(--line);border-radius:12px;margin-bottom:8px;padding:6px 10px}
  .tbl td{display:flex;justify-content:space-between;gap:10px;border:0;padding:4px 0}.tbl td[data-label]::before{content:attr(data-label);color:var(--muted)}
  .tbl td[colspan]{display:block}
}
@media print{.side,.nav,.no-print,.btn{display:none!important}.print-only{display:block}body{background:#fff}.card,.stat{box-shadow:none;break-inside:avoid}}
.denoms{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-bottom:12px}
.denoms .denom{margin:0;background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:8px 10px;gap:4px}
.denoms .denom span{font-weight:800}.denoms .denom small{color:var(--muted);font-weight:500}
.close-box summary{cursor:pointer;list-style:none}.close-box summary::-webkit-details-marker{display:none}
.li form{margin:0}
.open-box{max-width:760px}.open-box h2{display:flex;align-items:center;gap:8px}
