@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;700;800;900&display=swap');
:root{
  --brand:#193d7a;
  --brand2:#275fae;
  --bg:#f3f6fb;
  --card:#ffffff;
  --line:#dce3ee;
  --text:#18212f;
  --muted:#6e7888;
  --danger:#b42318;
  --success:#137a4a;
}
*{box-sizing:border-box;font-family:"Tajawal","Cairo","Segoe UI",Tahoma,Arial,sans-serif}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:"Tajawal","Cairo","Segoe UI",Tahoma,Arial,sans-serif}
body{padding-bottom:88px}
a{text-decoration:none;color:inherit}
.shell{max-width:760px;margin:0 auto;padding:14px}
.topbar{position:sticky;top:0;z-index:20;background:rgba(243,246,251,.96);backdrop-filter:blur(8px);border-bottom:1px solid #e8edf4}
.topbar-inner{max-width:760px;margin:auto;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.brand{font-weight:800;color:var(--brand);font-size:20px}.sub{font-size:12px;color:var(--muted)}
.card{background:var(--card);border:1px solid #e6ebf2;border-radius:18px;padding:14px;margin-bottom:12px;box-shadow:0 8px 26px rgba(25,61,122,.06)}
.card-title{font-weight:800;font-size:16px;margin:0 0 12px;display:flex;align-items:center;gap:8px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.field{margin-bottom:10px}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:6px;color:#485569}
input,select,textarea,button{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:12px 11px;font:inherit;outline:none;transition:.2s}
input:focus,select:focus,textarea:focus{border-color:var(--brand2);box-shadow:0 0 0 3px rgba(39,95,174,.11)}
textarea{resize:vertical;min-height:74px}.readonly{background:#f7f9fc;color:#566174}
.segment{display:grid;grid-template-columns:1fr 1fr;gap:8px}.segment label{position:relative}.segment input{position:absolute;opacity:0;pointer-events:none}.segment span{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:12px;padding:11px;font-weight:800;background:#fff}.segment input:checked+span{border-color:var(--brand);background:#eef4ff;color:var(--brand)}
.btn{border:0;border-radius:12px;padding:12px 14px;font:inherit;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn-primary{background:var(--brand);color:#fff}.btn-soft{background:#eef4ff;color:var(--brand)}.btn-danger{background:#fff0ef;color:var(--danger)}.btn-block{width:100%}
.item{border:1px dashed #cfd8e6;border-radius:14px;padding:12px;margin-bottom:10px;background:#fbfcfe}.item-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.item-num{font-weight:800;color:var(--brand)}
.calc-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #eef1f5}.calc-row:last-child{border-bottom:0}.calc-row strong{font-size:17px}.calc-row.total{font-size:18px;color:var(--brand)}
.bottom-actions{position:fixed;bottom:0;left:0;right:0;z-index:30;background:#fff;border-top:1px solid #dde4ee;padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.bottom-actions .inner{max-width:760px;margin:auto;display:grid;grid-template-columns:1fr 1.3fr;gap:8px}
.notice{padding:10px 12px;border-radius:12px;background:#eef8f3;color:#17643e;margin-bottom:12px;font-size:13px}.error{background:#fff1f0;color:#9f1c14}
.badge{display:inline-block;padding:5px 8px;border-radius:999px;background:#eef4ff;color:var(--brand);font-size:11px;font-weight:800}
.table-wrap{overflow:auto}.list-table{width:100%;border-collapse:collapse;background:#fff}.list-table th,.list-table td{padding:10px 8px;border-bottom:1px solid #edf1f5;text-align:right;white-space:nowrap}.list-table th{font-size:12px;color:#657186;background:#f8fafc}
.nav{position:fixed;bottom:0;left:0;right:0;z-index:25;background:#fff;border-top:1px solid #dfe5ed;padding-bottom:env(safe-area-inset-bottom)}.nav-inner{max-width:760px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr)}.nav a{padding:10px 4px;text-align:center;font-size:12px;color:#677386}.nav a b{display:block;font-size:20px;margin-bottom:2px}.nav a.active{color:var(--brand);font-weight:800}
@media(max-width:560px){.grid2,.grid3{grid-template-columns:1fr}.shell{padding:10px}.card{border-radius:15px}.topbar-inner{padding:10px}.bottom-actions .inner{grid-template-columns:1fr 1.15fr}}
/* V2 additions */
.top-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.mini-link{display:inline-flex;align-items:center;justify-content:center;padding:7px 9px;border-radius:10px;background:#fff;border:1px solid #dfe6f0;color:var(--brand);font-size:11px;font-weight:800;white-space:nowrap}
.btn-success{background:var(--success);color:#fff}
.badge-success{background:#e9f8f0;color:#137a4a}
.badge-warn{background:#fff6e5;color:#9a6200}
.compact-form .field{margin-bottom:8px}
.logo-preview{display:flex;align-items:center;justify-content:center;border:1px dashed var(--line);background:#fbfcfe;border-radius:14px;padding:14px;margin-bottom:12px}
.logo-preview img{max-width:180px;max-height:100px;object-fit:contain}
.checkline{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#5a6576;margin:0 0 12px}
.checkline input{width:auto}
body.has-actions{padding-bottom:92px}
@media(max-width:560px){.topbar-inner{align-items:flex-start}.top-actions{max-width:55%;gap:4px}.mini-link{padding:6px 7px;font-size:10px}}

/* V3 unified mobile header */
.app-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid #e4e9f1;box-shadow:0 6px 18px rgba(21,47,87,.05)}
.app-header-main{max-width:760px;margin:0 auto;padding:10px 14px 8px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.company-lockup{min-width:0;display:flex;align-items:center;gap:10px}
.app-logo-wrap{width:46px;height:46px;flex:0 0 46px;border-radius:14px;background:#fff;border:1px solid #e1e7f0;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 4px 12px rgba(25,61,122,.06)}
.app-logo{width:100%;height:100%;object-fit:contain;padding:5px}.app-logo-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--brand),var(--brand2));color:#fff;font-size:23px;font-weight:900}
.app-title-wrap{min-width:0;display:flex;flex-direction:column;line-height:1.25}.app-company{font-size:11px;color:#798494;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}.app-page-title{font-size:18px;color:var(--brand);font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:380px}.app-page-subtitle{font-size:11px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}
.app-head-actions{display:flex;align-items:center;gap:7px}.settings-button{width:38px;height:38px;border-radius:12px;border:1px solid #dfe6f0;background:#f8faff;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--brand)}.settings-button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.header-badge{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border-radius:999px;background:#eef4ff;color:var(--brand);font-size:11px;font-weight:900;white-space:nowrap}
.app-tabs{max-width:760px;margin:0 auto;padding:0 10px 8px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.app-tabs a{min-width:0;padding:8px 5px;border-radius:11px;text-align:center;color:#667286;font-size:11px;font-weight:800;background:#f7f9fc;border:1px solid transparent;white-space:nowrap}.app-tabs a span{font-size:13px}.app-tabs a.active{color:var(--brand);background:#edf3ff;border-color:#d7e4fb}

/* V3 settings */
.settings-hero{background:linear-gradient(145deg,#17386f,#285fa8);color:#fff;border-radius:20px;padding:16px;margin-bottom:12px;box-shadow:0 12px 30px rgba(25,61,122,.17)}
.settings-hero-top{display:flex;align-items:center;gap:12px}.settings-hero-logo{width:66px;height:66px;border-radius:17px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 66px}.settings-hero-logo img{width:100%;height:100%;object-fit:contain;padding:6px}.settings-hero-logo .fallback{font-size:28px;font-weight:900;color:var(--brand)}.settings-hero h1{font-size:18px;margin:0 0 4px}.settings-hero p{font-size:11px;opacity:.78;margin:0;line-height:1.6}
.settings-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.settings-section-head h2{font-size:16px;margin:0}.settings-section-head small{color:var(--muted);font-size:10px}
.upload-zone{position:relative;border:1.5px dashed #bfcbe0;border-radius:16px;padding:14px;text-align:center;background:#fafcff;transition:.2s}.upload-zone:hover{border-color:var(--brand2);background:#f5f8ff}.upload-preview{width:130px;height:82px;margin:0 auto 10px;border-radius:12px;background:#fff;border:1px solid #e4e9f1;display:flex;align-items:center;justify-content:center;overflow:hidden}.upload-preview img{max-width:100%;max-height:100%;object-fit:contain;padding:5px}.upload-zone input[type=file]{padding:9px;background:#fff}
.setting-chip-row{display:flex;gap:7px;flex-wrap:wrap}.setting-chip{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:6px 9px;background:#f2f5f9;color:#536174;font-size:10px;font-weight:800}
.settings-savebar{position:fixed;z-index:60;left:0;right:0;bottom:0;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-top:1px solid #dfe5ed;padding:9px 12px calc(9px + env(safe-area-inset-bottom))}.settings-savebar .inner{max-width:760px;margin:auto;display:grid;grid-template-columns:1fr 1.4fr;gap:8px}
.preview-head-card{border:1px solid #e1e7ef;border-radius:15px;padding:12px;background:#fff;display:flex;align-items:center;gap:12px}.preview-head-card .mark{width:54px;height:54px;border-radius:12px;border:1px solid #e5eaf1;display:flex;align-items:center;justify-content:center;overflow:hidden}.preview-head-card .mark img{max-width:100%;max-height:100%;object-fit:contain;padding:4px}.preview-head-card .name{font-weight:900;color:var(--brand);font-size:14px}.preview-head-card .meta{font-size:10px;color:#7a8492;line-height:1.7}

@media(max-width:560px){
  body{padding-bottom:82px}.app-header-main{padding:8px 10px 7px}.app-logo-wrap{width:42px;height:42px;flex-basis:42px;border-radius:12px}.app-page-title{font-size:16px;max-width:205px}.app-company{max-width:205px}.app-page-subtitle{max-width:205px}.header-badge{display:none}.settings-button{width:36px;height:36px}.app-tabs{display:flex;overflow-x:auto;scrollbar-width:none;padding:0 8px 7px}.app-tabs::-webkit-scrollbar{display:none}.app-tabs a{flex:0 0 auto;min-width:78px;padding:7px 9px}.settings-savebar .inner{grid-template-columns:.85fr 1.3fr}
}

/* V4 cache-safe polish */
@media(min-width:761px){
  .shell{max-width:820px}
  .bottom-actions .inner,.settings-savebar .inner{max-width:820px}
}

/* V5 edit actions */
.row-actions{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.badge-edit{background:#fff7e8;color:#9a6200}.edit-note{font-size:11px;color:var(--muted);margin-top:5px}

/* V6 - QR settings */
.qr-settings{margin-top:14px;padding:14px;border:1px solid #dce4ef;border-radius:14px;background:#f8faff}.qr-check{padding:9px 0;border-bottom:1px dashed #d8e0eb}.qr-check:last-of-type{border-bottom:0}.qr-check input{width:20px;height:20px;accent-color:#193d7a}

/* V8 multi-company + templates + login */
.btn[disabled],button[disabled]{opacity:.5;cursor:not-allowed}
.table-wrap .badge{white-space:nowrap}

/* V12 - تشغيل مقدم الخدمة */
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}
.kpi-card{background:#fff;border:1px solid #e5eaf2;border-radius:16px;padding:14px 10px;text-align:center;box-shadow:0 8px 24px rgba(25,61,122,.05);display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;min-height:112px}
.kpi-card>span{font-size:22px;color:var(--brand)}.kpi-card>b{font-size:20px;color:#17243a}.kpi-card>small{font-size:11px;color:var(--muted)}
.finance-kpi{text-align:center}.finance-kpi small{display:block;color:var(--muted);font-size:11px;margin-bottom:6px}.finance-kpi strong{font-size:23px;color:var(--brand)}.finance-kpi.net{background:linear-gradient(145deg,#17386f,#285fa8);color:#fff}.finance-kpi.net small,.finance-kpi.net strong{color:#fff}
.ops-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.ops-card{background:#fff;border:1px solid #e5eaf2;border-radius:16px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;min-height:118px}.ops-card span{font-size:25px}.ops-card b{font-size:13px;color:var(--brand)}.ops-card small{font-size:10px;line-height:1.55;color:var(--muted)}
.dashboard-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1f5}.dashboard-row:last-child{border-bottom:0}.dashboard-row span:nth-child(2){min-width:0}.dashboard-row span:nth-child(2)>b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-row span:nth-child(2)>small{display:block;font-size:10px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.time-chip{min-width:48px;padding:7px 8px;border-radius:10px;background:#eef4ff;color:var(--brand);font-size:11px;font-weight:900;text-align:center}
.schedule-row{display:grid;grid-template-columns:1.25fr 1fr auto 1fr;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1f5}.schedule-row input[type=time]{padding:9px 8px}.schedule-row>span{font-size:11px;color:var(--muted)}
.request-flow{display:flex;gap:7px;overflow-x:auto;padding:3px 0 2px;scrollbar-width:none}.request-flow::-webkit-scrollbar{display:none}.flow-step{flex:0 0 auto;padding:8px 10px;border-radius:10px;border:1px solid #d9e2ef;background:#f8faff;color:var(--brand);font-size:11px;font-weight:800}.flow-step.done{background:#eaf8f1;color:#137a4a;border-color:#ccebdc}
@media(max-width:650px){.kpi-grid,.ops-grid{grid-template-columns:repeat(2,1fr)}.schedule-row{grid-template-columns:1fr 1fr 20px 1fr}.schedule-row .checkline{font-size:11px}}
.muted{color:var(--muted);font-size:12px;font-weight:600}.empty-state{padding:24px 12px;text-align:center;color:var(--muted);font-size:13px;background:#fafbfd;border:1px dashed #dfe5ee;border-radius:14px}

/* V13 - cards, ZATCA readiness, PWA */
.entity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.entity-card{background:#fff;border:1px solid #e4eaf2;border-radius:18px;padding:14px;box-shadow:0 8px 24px rgba(25,61,122,.05);display:block}.entity-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.entity-card h3{margin:0;color:#17243a;font-size:15px}.entity-card .meta{color:var(--muted);font-size:11px;margin-top:5px;line-height:1.7}.entity-card .amount{font-size:18px;font-weight:900;color:var(--brand);margin:10px 0 5px}.entity-card-actions{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.search-hero{position:sticky;top:70px;z-index:10}.zatca-ready{background:#eaf8f1;color:#137a4a}.zatca-missing{background:#fff4e6;color:#a45b00}.install-card{margin-top:12px;background:linear-gradient(145deg,#193d7a,#275fae);color:#fff;border:0}.install-card .btn{background:#fff;color:#193d7a}.install-row{display:flex;align-items:center;gap:12px}.install-icon{width:54px;height:54px;border-radius:16px;background:#fff;padding:7px;flex:0 0 54px}.install-copy{flex:1}.install-copy b{display:block;font-size:14px}.install-copy small{opacity:.82;display:block;margin-top:3px;line-height:1.5}@media(max-width:620px){.entity-grid{grid-template-columns:1fr}.search-hero{position:static}}
