/* Cairo, self-hosted (Phase 4 / Round 5): one variable file serves every weight. Before this the interface rendered in Cairo
 * only where the font happened to be installed on the device. License: assets/fonts/CAIRO-LICENSE.txt (SIL OFL 1.1). */
@font-face{font-family:"Cairo";src:url("../fonts/Cairo-Variable.ttf") format("truetype");font-weight:200 1000;font-style:normal;font-display:swap}

:root{
  --blue:#1471A2; --blue-dark:#07537A; --blue-soft:color-mix(in srgb,var(--blue) 10%,white);
  --yellow:#f3cf00; --red:#ed1748; --green:#16875d;
  --ink:#17333f; --muted:var(--ui-text-secondary,#71828a); --bg:#f2f7fa; --line:#d5e2e8; --white:#fff;
  --shadow:0 12px 34px rgba(15,34,45,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Cairo","Tajawal","Segoe UI",Tahoma,Arial,sans-serif;background:var(--ui-page-bg,var(--bg));color:var(--ink)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.hidden{display:none!important}
.app-header{
  height:var(--ui-header-h,88px);background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;
  justify-content:space-between;padding:10px 32px;position:sticky;top:0;z-index:20
}
.brand{display:flex;align-items:center;gap:15px}
.brand img{width:122px;height:68px;object-fit:contain}
.brand h1{font-size:21px;color:var(--blue-dark);margin:0 0 4px}
.brand p{margin:0;color:var(--muted);font-size:12px}
.header-actions{display:flex;gap:8px;flex-wrap:wrap}
.btn{
  border:0;border-radius:9px;padding:10px 15px;font-weight:800;display:inline-flex;gap:7px;
  align-items:center;justify-content:center;transition:.15s
}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--blue);color:#fff}
.btn-yellow{background:var(--yellow);color:#263238}
.btn-light{background:#edf5f8;color:var(--blue-dark)}
.btn-red{background:#fff0f4;color:var(--red);border:1px solid #ffcbd8}

.main{max-width:1450px;margin:auto;padding:25px}
.page-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}
.page-title h2{font-size:25px;color:var(--blue-dark);margin:0}
.page-title p{margin:6px 0 0;color:var(--muted);font-size:13px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.stat{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px;box-shadow:var(--shadow)}
.stat .num{font-size:27px;font-weight:900;color:var(--blue-dark)}
.stat .label{font-size:12px;color:var(--muted);margin-top:4px}

.card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.card-head{padding:16px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
.card-head h3{margin:0;color:var(--blue-dark);font-size:16px}
.card-body{padding:18px}

input,select,textarea{
  width:100%;border:1px solid var(--line);border-radius:9px;padding:10px 11px;background:#fff;color:var(--ink);
  outline:none
}
input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 10%,transparent)}
textarea{min-height:105px;resize:vertical}
label{display:block;font-size:var(--ui-font-xs,12px);font-weight:800;margin:var(--ui-space-2,8px) 0 var(--ui-space-1,4px);color:var(--ui-heading,#294b5a)}







.status{display:inline-block;border-radius:20px;padding:4px 8px;font-size:10px;font-weight:900;margin-top:7px}
.status.expired{background:#ffe8ee;color:var(--red)}
.status.soon{background:#fff4bd;color:#7b6400}
.status.upcoming{background:#eaf5fa;color:var(--blue)}
.status.today{background:#e6f7ef;color:var(--green)}

.quick{
  border:1px solid var(--line);padding:14px;border-radius:11px;background:#fbfdfe;text-align:right;font-weight:900;color:var(--blue-dark)
}
.editor-shell{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:var(--ui-space-5)}
.editor-main{min-width:0}





.form-card{background:var(--ui-card);border:1px solid var(--ui-line);border-radius:var(--ui-radius);margin-bottom:var(--ui-space-4);box-shadow:var(--ui-shadow);overflow:hidden}
.form-head{background:var(--ui-surface-subtle);color:var(--ui-heading);padding:var(--ui-space-3) var(--ui-space-4);font-weight:var(--ui-weight-heavy);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ui-line)}
.form-body{padding:var(--ui-space-4)}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ui-space-3)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ui-space-3)}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--ui-space-3)}
.inline-checks{display:flex;gap:var(--ui-space-2);flex-wrap:wrap}
.check-chip{position:relative;display:flex;align-items:center;gap:var(--ui-space-2);border:1px solid var(--ui-line);padding:var(--ui-space-2) var(--ui-space-3);border-radius:var(--ui-radius-sm);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:var(--ui-font-xs)}
.check-chip input{width:auto}
.row-card{border:1px solid var(--ui-line);background:var(--ui-surface-subtle);border-radius:var(--ui-radius-sm);padding:var(--ui-space-3);margin-bottom:var(--ui-space-2)}
.row-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ui-space-2)}
.row-title{font-weight:var(--ui-weight-strong);color:var(--ui-text);font-size:var(--ui-font-sm)}
.row-top-main{display:flex;align-items:center;gap:var(--ui-space-2);min-width:0;flex:1}
.row-summary{color:var(--ui-muted);font-size:var(--ui-font-xs);font-weight:var(--ui-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.row-top-actions{display:flex;align-items:center;gap:var(--ui-space-2);flex:none}
.row-card.row-collapsed .row-body{display:none}
.field-hint{font-size:var(--ui-font-xs);color:var(--muted);margin-top:4px;line-height:1.4}
.empty-state{text-align:center;padding:30px;color:var(--muted)}
.settings-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
.option-list{display:grid;gap:7px;margin-top:12px}
.option-item{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:8px;padding:8px 10px}
.notice{border-right:4px solid var(--yellow);background:#fffdf0;padding:10px 12px;border-radius:8px;font-size:12px;line-height:1.7}
@media(max-width:1050px){
  .stats{grid-template-columns:repeat(2,1fr)}
  .editor-shell{grid-template-columns:1fr}
  
}
@media(max-width:700px){
  .header-actions{gap:6px}.app-header .btn{padding:8px 10px;font-size:11px}.account-btn{min-width:auto}
  
  
  .global-footer{font-size:9px;padding:0 8px;text-align:center}

  .app-header{height:auto;padding:8px 14px;flex-direction:column;align-items:stretch}
  .brand{justify-content:center}.header-actions{justify-content:center}
  .main{padding:14px}.grid2,.grid3,.grid4{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr}
}


.login-screen{position:fixed;inset:0;background:linear-gradient(135deg,var(--blue-dark),var(--blue));z-index:999;display:flex;align-items:center;justify-content:center;padding:20px}
.login-box{width:min(420px,100%);background:#fff;border-radius:18px;padding:26px;box-shadow:0 30px 80px rgba(0,0,0,.28);text-align:center}
.login-box img{width:150px;height:85px;object-fit:contain}.login-box h2{color:var(--blue-dark);margin:8px 0}.login-box p{font-size:12px;color:var(--muted)}

.audit-box{border:1px solid var(--line);background:#fbfdfe;border-radius:10px;padding:10px;margin-top:10px}.audit-line{font-size:11px;color:var(--muted);margin:4px 0}


.brand-settings-preview{display:flex;gap:12px;align-items:center;border:1px solid var(--line);padding:8px 12px;border-radius:12px;background:#fbfdfe}.brand-settings-preview img{width:72px;height:44px;object-fit:contain;flex:none}
.hidden-by-role{display:none!important}
.hidden-by-module{display:none!important}
.module-visibility-list{display:grid;gap:var(--ui-space-2,8px)}.module-visibility-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-space-3,12px);padding:var(--ui-space-3,12px);border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm,9px);background:var(--ui-surface-subtle,#f7fafb);cursor:pointer}.module-visibility-row small{display:block;color:var(--ui-text-secondary);margin-top:2px}.module-visibility-row input[type=checkbox]{width:20px;height:20px;flex:0 0 auto}




/* ===== V5 UI additions ===== */
:root{--page-footer-h:46px}
body{padding-bottom:var(--page-footer-h)}
.app-header{z-index:50}
.brand{cursor:pointer}
.header-subline{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.header-actions{position:relative}
.menu-wrap{position:relative}
.icon-btn{width:42px;height:42px;padding:0;border-radius:11px;font-size:18px}
.account-btn{min-width:120px}
.dropdown-menu{
  position:absolute;top:49px;left:0;min-width:220px;background:#fff;border:1px solid var(--line);
  box-shadow:0 16px 40px rgba(15,34,45,.16);border-radius:12px;padding:7px;z-index:70
}
.dropdown-title{padding:9px 10px;font-size:12px;font-weight:900;color:var(--blue-dark);border-bottom:1px solid var(--line);margin-bottom:5px}
.dropdown-item{width:100%;border:0;background:#fff;text-align:right;padding:10px;border-radius:8px;font-weight:800;color:var(--ink)}
.dropdown-item:hover{background:var(--blue-soft)}
.global-footer{
  position:fixed;right:0;left:0;bottom:0;height:var(--page-footer-h);background:#fff;border-top:1px solid var(--line);
  z-index:40;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--muted)
}
.global-footer a{color:var(--blue-dark);text-decoration:none;font-weight:900}
.stat{cursor:pointer;transition:.15s;position:relative;overflow:hidden}
.stat:hover{transform:translateY(-2px);border-color:var(--blue)}

.stat.current .num{color:var(--green)} 
.small{font-size:11px;color:var(--muted)}

.export-select-list{display:grid;gap:8px;max-height:52vh;overflow:auto}
.export-choice{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:9px;padding:10px}
.export-choice input{width:auto}
.editor-shell{grid-template-columns:minmax(0,1fr) 245px}
.mini-preview-card{position:sticky;top:105px;height:max-content;overflow:hidden}







.audit-side-box{margin:0 14px 14px;border:1px solid var(--line);border-radius:10px;padding:11px;background:#fbfdfe}
.audit-side-title{font-size:11px;font-weight:900;color:var(--blue-dark);margin-bottom:7px}
.audit-side-box .audit-line{font-size:10px;line-height:1.65;color:var(--muted)}
.audit-side-box .btn{margin-top:6px}
.bottom-editor-actions{display:flex;justify-content:flex-end;gap:var(--ui-space-2);margin:var(--ui-space-4) 0 calc(var(--ui-space-6) + var(--ui-space-2))}


.payment-row{border:1px solid var(--line);background:#fbfdfe;border-radius:11px;padding:11px}

.report-summary{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;margin:15px 0}
.report-summary .stat{padding:12px;min-height:82px}
.report-summary .stat .num{font-size:20px}
.report-brand-header{display:grid;grid-template-columns:90px 1fr auto;gap:14px;align-items:center;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:14px;margin-top:16px}
.report-brand-header img{width:80px;height:50px;object-fit:contain}
.report-brand-header h2{margin:0;color:var(--blue-dark);font-size:18px}

.report-destinations{display:grid;gap:8px}
.report-dest{border:1px solid var(--line);border-radius:10px;padding:11px;display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center}
.color-field{display:flex;align-items:center;gap:8px}
.color-field input[type=color]{height:42px;padding:3px}
.v-header{border-bottom-width:4px}
.v-title h1::before{content:"✦";color:var(--yellow);font-size:15px;margin-left:6px}



.contact a{direction:ltr;unicode-bidi:embed;display:inline-block}




@media(max-width:1050px){
  .editor-shell{grid-template-columns:1fr}.mini-preview-card{position:static}
  .report-summary{grid-template-columns:repeat(2,1fr)}
}

/* CSS paged-media page numbering (used by browsers that support margin boxes) */





/* ===== v1.1.0 additions ===== */
:root{--dark-bg:#142129;--dark-card:#1d2d36;--dark-line:#36505c;--dark-text:#e8f1f5}
body.dark-mode{background:var(--dark-bg);color:var(--dark-text)}
body.dark-mode .app-header,body.dark-mode .card,body.dark-mode .form-card,body.dark-mode .dropdown-menu,body.dark-mode .global-footer,body.dark-mode .stat,body.dark-mode .row-card,body.dark-mode .payment-row,body.dark-mode .audit-side-box{background:var(--dark-card);border-color:var(--dark-line);color:var(--dark-text)}
body.dark-mode input,body.dark-mode select,body.dark-mode textarea{background:#17272f;border-color:var(--dark-line);color:var(--dark-text)}
body.dark-mode .card-head,body.dark-mode .option-item{border-color:var(--dark-line)}

.form-head{cursor:default}
.form-collapse-btn{min-width:var(--ui-control-sm);height:var(--ui-control-sm);padding:0;border-radius:var(--ui-radius-sm);background:var(--ui-surface-muted);color:var(--ui-text);border:1px solid var(--ui-line);font-weight:var(--ui-weight-strong)}
/* Distinct from the neighbouring record-actions "duplicate" (copy) icon — a directional chevron reads
 * unambiguously as open/close, where the previous "+/-" glyph could be read as another add action next
 * to the row's real add/duplicate button. Same glyph always; state is carried by rotation only. */
.form-collapse-btn.row-collapse-toggle{font-size:13px;line-height:1;transition:transform .15s}
.form-collapse-btn.row-collapse-toggle[aria-expanded="true"]{transform:rotate(180deg)}
/* Second Booking contact — a small text action under the primary WhatsApp field, not a second row that
 * would push the grid taller by default. Its own revealed field reuses the shared input skin (no local
 * height/font override, per the Central Shared Control Contract) with just a compact remove button. */
.booking-secondary-contact-toggle{margin-top:var(--ui-space-1);border:0;background:none;padding:0;color:var(--blue-dark);font-size:var(--ui-font-xs);font-weight:var(--ui-weight-strong);cursor:pointer}
.booking-secondary-contact-toggle:hover{text-decoration:underline}
.booking-secondary-contact-field{margin-top:var(--ui-space-1);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}
.booking-secondary-contact-remove{width:var(--ui-control-sm);height:var(--ui-control-sm);border:1px solid var(--ui-line);background:var(--ui-surface-muted);border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary);cursor:pointer;font-size:15px;line-height:1}
.booking-secondary-contact-remove:hover{color:var(--ui-danger);border-color:var(--ui-danger)}
.form-card.collapsed .form-body{display:none}
.form-card.collapsed .form-head{border-radius:var(--ui-radius)}




.task-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start}
.task-item.done{opacity:.55}
.task-check{width:20px!important;height:20px}
.task-title{font-weight:900;color:var(--blue-dark)}
.task-meta{font-size:10px;color:var(--muted);line-height:1.5;margin-top:4px}
.task-actions{display:flex;gap:5px}
















.task-modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}



@media(max-width:700px){
  
  
  .task-modal-grid{grid-template-columns:1fr}
  
  
}
/* Print integrity */



/* v1.2.0 */


/* Version 1.3.0 */
.toast-container{position:fixed;top:105px;left:22px;z-index:2147483600;display:grid;gap:8px;max-width:360px}
.toast{background:#fff;border:1px solid var(--line);border-right:5px solid var(--blue);box-shadow:0 14px 38px rgba(0,0,0,.16);border-radius:11px;padding:11px 13px;font-size:12px;line-height:1.55;transition:.25s}
.toast.success{border-right-color:var(--green)}.toast.error{border-right-color:var(--red)}.toast.warning{border-right-color:var(--yellow)}
.omni-results{display:grid;gap:8px;margin-top:10px}.omni-result{border:1px solid var(--line);border-radius:10px;padding:10px;background:#fbfdfe;display:flex;justify-content:space-between;gap:10px;align-items:center;cursor:pointer}.omni-result:hover{border-color:var(--blue);background:var(--blue-soft)}


.balance-filter-banner{display:flex;justify-content:space-between;align-items:center;background:#fff1f4;border:1px solid #ffcbd6;border-radius:9px;padding:8px 10px;margin:10px 0;color:var(--red);font-size:11px;font-weight:900}
.client-phone-help{font-size:var(--ui-font-xs);color:var(--muted);margin-top:4px}
.preview-area.mobile-readable{overflow:auto}.preview-area.mobile-readable 
.modern-voucher{
  width:min(210mm,100%);min-height:297mm;margin:0 auto;padding:var(--ui-space-5);position:relative;box-sizing:border-box;
  border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-card);color:var(--ui-text);box-shadow:var(--ui-shadow);
  font-family:var(--ui-font-family);font-size:var(--ui-font-sm);line-height:1.5;direction:rtl;
}
.modern-voucher::before{content:"";display:block;height:3px;margin:calc(var(--ui-space-5) * -1) calc(var(--ui-space-5) * -1) var(--ui-space-3);background:var(--blue);border-radius:var(--ui-radius) var(--ui-radius) 0 0}
.modern-voucher b,.modern-voucher strong{font-weight:var(--ui-weight-strong);color:var(--ui-text)}
.modern-voucher .mv-header{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-space-3);padding-bottom:var(--ui-space-3);border-bottom:1px solid var(--ui-line)}
.modern-voucher .mv-brand{display:flex;align-items:center;gap:var(--ui-space-3);min-width:0}.modern-voucher .mv-brand img{width:88px;height:46px;object-fit:contain;flex:0 0 auto}.modern-voucher .mv-brand-copy{min-width:0}.modern-voucher .mv-brand h1{margin:0;font-size:var(--ui-font-strong);line-height:1.3;color:var(--ui-heading);font-weight:var(--ui-weight-heavy)}.modern-voucher .mv-brand p{margin:2px 0 0;font-size:var(--ui-font-xs);color:var(--ui-text-secondary)}
.modern-voucher .mv-voucher-number-line{display:flex;align-items:center;gap:var(--ui-space-2);margin-top:3px;font-size:var(--ui-font-xs);color:var(--ui-text-secondary)}.modern-voucher .mv-voucher-number-line b{direction:ltr;unicode-bidi:isolate}.modern-voucher .mv-issue-date{margin-inline-start:auto;min-width:100px;text-align:left}.modern-voucher .mv-issue-date span{display:block;font-size:var(--ui-font-xs);color:var(--ui-text-secondary)}.modern-voucher .mv-issue-date b{display:block;margin-top:2px;font-size:var(--ui-font-sm);direction:ltr;unicode-bidi:isolate}
.modern-voucher .mv-summary-table-wrap{margin-top:var(--ui-space-3);overflow:hidden;border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm)}.modern-voucher .mv-summary-table{width:100%;border-collapse:collapse;table-layout:fixed}.modern-voucher .mv-summary-table th,.modern-voucher .mv-summary-table td{padding:var(--ui-space-2) var(--ui-space-3);border-bottom:1px solid var(--ui-line);vertical-align:top}.modern-voucher .mv-summary-table tr:last-child th,.modern-voucher .mv-summary-table tr:last-child td{border-bottom:0}.modern-voucher .mv-summary-table th{width:13%;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:var(--ui-font-xs);font-weight:var(--ui-weight-strong)}.modern-voucher .mv-summary-table td{width:37%;font-size:var(--ui-font-sm)}.modern-voucher .mv-summary-table td small{display:block;margin-top:2px;color:var(--ui-text-secondary);font-size:var(--ui-font-xs)}.modern-voucher .mv-status{color:var(--ui-success)}
.modern-voucher .mv-section,.modern-voucher .mv-terms-block{width:100%;margin:var(--ui-space-3) 0 0;padding:0;border:0;border-radius:0;background:transparent}.modern-voucher .mv-section-head{display:flex;align-items:center;gap:var(--ui-space-2);margin:0 0 var(--ui-space-2);padding-bottom:var(--ui-space-1);border-bottom:2px solid color-mix(in srgb,var(--blue) 55%,var(--ui-line))}.modern-voucher .mv-section-head>div>b{display:inline;font-size:var(--ui-font-sm);color:var(--ui-heading);font-weight:var(--ui-weight-heavy)}.modern-voucher .mv-section-head small{display:inline;margin-inline-start:var(--ui-space-2);font-size:var(--ui-font-xs);color:var(--ui-muted)}.modern-voucher .mv-section-icon{display:none}
.modern-voucher .mv-passenger-grid,.modern-voucher .mv-flight-list,.modern-voucher .mv-hotel-grid,.modern-voucher .mv-services-timeline{display:block;border:0;padding:0}.modern-voucher .mv-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--ui-line);border-radius:var(--ui-radius-xs)}.modern-voucher .mv-doc-table{width:100%;border-collapse:collapse;table-layout:auto;min-width:640px}.modern-voucher .mv-doc-table th,.modern-voucher .mv-doc-table td{padding:6px 7px;border-inline-start:1px solid var(--ui-line);border-bottom:1px solid var(--ui-line);vertical-align:top;text-align:right;font-size:var(--ui-font-xs);line-height:1.45;white-space:normal;overflow-wrap:anywhere}.modern-voucher .mv-doc-table th:first-child,.modern-voucher .mv-doc-table td:first-child{border-inline-start:0}.modern-voucher .mv-doc-table tbody tr:last-child td{border-bottom:0}.modern-voucher .mv-doc-table th{background:var(--ui-surface-subtle);color:var(--ui-heading);font-weight:var(--ui-weight-strong)}.modern-voucher .mv-doc-table td{color:var(--ui-text)}.modern-voucher .mv-inline-note{display:block;margin-top:2px;color:var(--ui-text-secondary);font-size:var(--ui-font-xs)}
.modern-voucher .mv-terms-block{padding-top:var(--ui-space-1)}.modern-voucher .mv-terms-block .v-terms-title{padding:0 0 var(--ui-space-1);border:0;border-bottom:2px solid color-mix(in srgb,var(--blue) 55%,var(--ui-line));background:none;color:var(--ui-heading);font-size:var(--ui-font-sm);font-weight:var(--ui-weight-heavy)}.modern-voucher .mv-terms-block .v-terms{padding:var(--ui-space-2) 0 0;border:0;font-size:var(--ui-font-xs);line-height:1.65;color:var(--ui-text-secondary);font-weight:var(--ui-weight-medium);white-space:pre-line}.modern-voucher .mv-note-box{padding:var(--ui-space-2) var(--ui-space-3);font-size:var(--ui-font-xs);line-height:1.6;color:var(--ui-text-secondary);background:transparent;border:1px solid var(--ui-line);border-radius:var(--ui-radius-xs);white-space:pre-wrap}.modern-voucher .mv-terms-forward-note{display:none}
.modern-voucher .mv-footer{margin-top:var(--ui-space-4);padding-top:var(--ui-space-2);border-top:1px solid var(--ui-line);display:grid;gap:var(--ui-space-1);background:transparent}.modern-voucher .mv-footer-thanks{text-align:center;font-size:var(--ui-font-xs);font-weight:var(--ui-weight-strong);color:var(--ui-text)}.modern-voucher .mv-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-space-3);flex-wrap:wrap}.modern-voucher .mv-footer .contact,.modern-voucher .mv-footer .social{font-size:var(--ui-font-xs);color:var(--ui-text-secondary)}.modern-voucher .mv-footer a{direction:ltr;unicode-bidi:isolate;display:inline-block;color:var(--ui-text);font-weight:var(--ui-weight-strong)}.modern-voucher .mv-social-links{display:flex;align-items:center;gap:var(--ui-space-2)}.modern-voucher .brand-line,.modern-voucher .mv-page-number,.modern-voucher .mv-room-allocation,.modern-voucher .mv-room-allocation-grid{display:none}
@media(max-width:900px){.modern-voucher{width:100%;min-height:auto;padding:var(--ui-space-4)}.modern-voucher::before{margin:calc(var(--ui-space-4) * -1) calc(var(--ui-space-4) * -1) var(--ui-space-3)}}
@media(max-width:620px){.modern-voucher .mv-header{align-items:flex-start;flex-direction:column}.modern-voucher .mv-issue-date{margin-inline-start:0;text-align:right}.modern-voucher .mv-summary-table{table-layout:auto}.modern-voucher .mv-summary-table th,.modern-voucher .mv-summary-table td{padding:var(--ui-space-2);font-size:var(--ui-font-xs)}}



/* ===== Experimental v2.4.0-dev.8 focused booking validation + voucher preview ===== */
.hotel-nights-summary.hotel-nights-error{color:var(--ui-danger)!important;background:var(--ui-danger-bg)!important;border:1px solid color-mix(in srgb,var(--ui-danger) 35%,var(--ui-line))!important;border-radius:var(--ui-radius-sm);padding:var(--ui-space-2) var(--ui-space-3);font-weight:var(--ui-weight-strong)}
.editor-sticky-nav button.section-error{color:var(--ui-danger)!important;background:var(--ui-danger-bg)!important;border-color:color-mix(in srgb,var(--ui-danger) 28%,var(--ui-line))!important}
.editor-sticky-nav .section-progress-dot.error{background:var(--ui-danger-bg)!important;color:var(--ui-danger)!important;border:1px solid color-mix(in srgb,var(--ui-danger) 28%,var(--ui-line))!important}
.validation-pulse{animation:validationPulse .55s ease-in-out 2}
@keyframes validationPulse{50%{box-shadow:0 0 0 5px color-mix(in srgb,var(--ui-danger) 20%,transparent)!important}}



/* ===== Experimental v2.4.0-dev.9 room allocation + stable editor navigation ===== */
#editorPage .mini-preview-card{position:sticky!important;top:88px!important;align-self:start!important;max-height:calc(100vh - 104px)!important;overflow:auto!important;scrollbar-width:thin}
#editorPage .editor-sticky-nav{position:sticky!important;top:0!important;z-index:4!important;background:var(--ui-card)!important}
.room-allocation-box{margin-top:var(--ui-space-2);border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-card);padding:var(--ui-space-2)}
.room-allocation-head{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-space-2);margin-bottom:var(--ui-space-2)}.room-allocation-head>div{display:grid;gap:var(--ui-space-1)}.room-allocation-head b{font-size:var(--ui-font-sm);color:var(--ui-text)}.room-allocation-head small{font-size:var(--ui-font-xs);color:var(--ui-text-secondary)}
.room-allocation-row{display:grid;grid-template-columns:72px repeat(3,minmax(0,1fr));gap:var(--ui-space-2);align-items:end;padding:var(--ui-space-2) 0;border-top:1px dashed var(--ui-line)}.room-allocation-row:first-of-type{border-top:0}.room-allocation-row>b{align-self:center;color:var(--ui-text);font-size:var(--ui-font-sm)}.room-allocation-row label{font-size:var(--ui-font-xs);font-weight:var(--ui-weight-strong);color:var(--ui-text-secondary)}.room-allocation-row input{margin-top:var(--ui-space-1);text-align:center;min-height:var(--ui-control-sm);padding:var(--ui-space-1) var(--ui-space-2)}
.room-allocation-status{margin-top:var(--ui-space-2);border-radius:var(--ui-radius-sm);padding:var(--ui-space-2);font-size:var(--ui-font-xs);font-weight:var(--ui-weight-strong)}.room-allocation-status.allocation-complete{background:var(--ui-success-bg);color:var(--ui-success);border:1px solid color-mix(in srgb,var(--ui-success) 28%,var(--ui-line))}.room-allocation-status.allocation-error{background:var(--ui-danger-bg);color:var(--ui-danger);border:1px solid color-mix(in srgb,var(--ui-danger) 28%,var(--ui-line))}.hotel-smart-card.allocation-error{border-color:color-mix(in srgb,var(--ui-danger) 45%,var(--ui-line))!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-danger) 8%,transparent)}
#invoiceSection .payment-row{font-size:var(--ui-font-sm)!important;line-height:1.5!important}#invoiceSection .payment-row .row-top span{font-size:var(--ui-font)!important;font-weight:var(--ui-weight-strong)!important;color:var(--ui-text)!important}#invoiceSection .payment-row label{font-size:var(--ui-font-xs)!important;font-weight:var(--ui-weight-strong)!important;color:var(--ui-text-secondary)!important}#invoiceSection .payment-row input,#invoiceSection .payment-row select{color:var(--ui-text)!important}.payment-suggest-btn{font-size:var(--ui-font-xs)!important}


@media(max-width:900px){#editorPage .mini-preview-card{position:relative!important;top:auto!important;max-height:none!important}.room-allocation-row{grid-template-columns:1fr 1fr}.room-allocation-row>b{grid-column:1/-1}}


/* ===== v2.4.0-dev.10 compact operations + booking usability ===== */
#editorPage .editor-action-header{position:relative!important;top:auto!important;z-index:auto!important;background:transparent!important;backdrop-filter:none!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.age-reference-note{display:block;margin-top:5px;color:#607880;font-size:var(--ui-font-xs);font-weight:700;line-height:1.45}
.hotel-smart-card.hotel-date-conflict{border-color:var(--ui-danger)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--ui-danger) 8%,transparent)!important}
.service-range-note{align-self:end;background:#f2f8fa;border:1px solid #dbeaec;border-radius:10px;padding:8px 10px;color:#52707a;font-size:var(--ui-font-xs);font-weight:750}
#servicesSection .service-smart-card{border-right:3px solid var(--yellow)}
.alert-empty{padding:10px!important}

.bookings-summary-print{direction:rtl;text-align:right;background:var(--ui-card);color:var(--ui-text);padding:12mm;font-family:var(--ui-font-family)}.bookings-summary-head{display:grid;grid-template-columns:90px 1fr auto;gap:var(--ui-space-3);align-items:center;border-bottom:3px solid var(--blue);padding-bottom:var(--ui-space-2);margin-bottom:var(--ui-space-3)}.bookings-summary-head img{width:82px;height:48px;object-fit:contain}.bookings-summary-head h2{margin:0;font-size:var(--ui-section);color:var(--ui-heading)}.bookings-summary-head p{margin:var(--ui-space-1) 0 0;font-size:var(--ui-font-xs);font-weight:var(--ui-weight-strong);color:var(--ui-text-secondary)}.bookings-summary-head>span{direction:ltr;font-size:var(--ui-font-xs);color:var(--ui-text-secondary)}.bookings-summary-list{display:grid;gap:var(--ui-space-2)}.booking-summary-row{display:grid;grid-template-columns:1.1fr 1.5fr 1.45fr .65fr 1.1fr 1fr;gap:var(--ui-space-2);align-items:center;border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);padding:var(--ui-space-2);break-inside:avoid-page}.booking-summary-row>div{display:grid;gap:var(--ui-space-1)}.booking-summary-row span{font-size:var(--ui-font-xs);color:var(--ui-text-secondary)}.booking-summary-row b{font-size:var(--ui-font-sm);color:var(--ui-text)}.summary-booking-no{direction:ltr;font-size:var(--ui-font-sm);font-weight:var(--ui-weight-heavy);color:var(--blue-dark)}



/* ===== v2.4.0-dev.11 compact dashboard, bookings and smoother editor tabs ===== */



















#editorPage .form-card{scroll-margin-top:18px}



/* ===== v2.4.0-dev.12 dashboard, bookings, payments and tab polish ===== */
























.customer-payment-manager{display:grid;gap:7px}.customer-payment-manager-row{display:grid;grid-template-columns:1fr 1fr 1.15fr 1.4fr auto;gap:8px;align-items:center;padding:9px 10px;border:1px solid #dce8ec;border-radius:11px;background:#f9fbfc}.customer-payment-manager-row>div{display:grid;gap:2px}.customer-payment-manager-row span{font-size:8.5px;color:#71858d;font-weight:800}.customer-payment-manager-row b{font-size:11px;color:#294853}

@media(max-width:1100px){.customer-payment-manager-row{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.customer-payment-manager-row{grid-template-columns:1fr}}


/* V2.5.0 invoices, payments & office identity */
:root{--brand-font:Cairo,Tajawal,Arial,sans-serif}
body{font-family:var(--brand-font)}
.financial-add-menu{position:relative}.financial-add-dropdown{position:absolute;z-index:50;top:calc(100% + 7px);left:0;min-width:210px;background:#fff;border:1px solid #d8e5e8;border-radius:14px;padding:6px;box-shadow:0 14px 35px rgba(15,54,65,.16)}.financial-add-dropdown button{width:100%;border:0;background:#fff;border-radius:10px;padding:10px 12px;text-align:right;font-family:inherit;font-weight:800;cursor:pointer}.financial-add-dropdown button:hover{background:#eef8fa}.financial-add-dropdown small{display:block;color:#789099;font-weight:600;margin-top:2px}.invoice-editor-head{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-bottom:12px}.invoice-edit-payments-summary{margin-top:14px}.invoice-payment-mini{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border-bottom:1px solid #e9eff0;padding:8px 0}.invoice-document{width:min(185mm,100%);margin:20px auto;background:#fff;border:1px solid #e1e8ea;border-radius:16px;padding:14mm;box-sizing:border-box;color:#18363e}.invoice-doc-header{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;border-bottom:3px solid var(--blue);padding-bottom:10px}.invoice-doc-header img{width:110px;height:58px;object-fit:contain}.invoice-doc-header h1{margin:0;font-size:18px}.invoice-doc-header p{margin:3px 0;color:#657b82;font-weight:800}.invoice-booking-subtitle{display:block;margin-top:2px;color:#52666d;font-size:10.5px;font-weight:700}.invoice-booking-subtitle b{color:#243f48;font-size:inherit}.invoice-doc-number{text-align:left;direction:ltr}.invoice-doc-number span{display:block;font-weight:900;font-size:14px}.invoice-client-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.invoice-client-grid>div,.invoice-total-band>div{background:#f5f9fa;border-radius:10px;padding:9px}.invoice-client-grid span,.invoice-total-band span{display:block;font-size:10px;color:#71858b}.invoice-client-grid b,.invoice-total-band b{font-size:12px}.invoice-total-band{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:8px;align-items:center;margin-bottom:12px}.invoice-payments-modern h3,.invoice-terms h3{margin:8px 0}.invoice-pay-head,.invoice-pay-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr .8fr;gap:6px;padding:7px;border-bottom:1px solid #e2ebed;font-size:11px}.invoice-pay-head{background:color-mix(in srgb,var(--blue) 8%,#fff);font-weight:900;border-radius:8px 8px 0 0}.invoice-note,.invoice-terms{margin-top:12px;border-top:1px solid #e3ebed;padding-top:9px}.invoice-doc-footer{margin-top:16px;border-top:1px solid #dfe8ea;padding-top:8px;display:flex;justify-content:space-between;font-size:10px}.financial-receipt{width:160mm;margin:auto;background:#fff;padding:14mm;box-sizing:border-box}.financial-receipt header{display:flex;gap:14px;align-items:center;border-bottom:3px solid var(--blue);padding-bottom:9px}.financial-receipt header img{width:100px;height:54px;object-fit:contain}.financial-receipt h2{margin:0}.receipt-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.receipt-grid>div{border:1px solid #e0e9eb;border-radius:9px;padding:9px}.receipt-grid span{display:block;color:#6e8288;font-size:10px}.financial-receipt footer{margin-top:18px;border-top:1px solid #dfe8ea;padding-top:8px}.voucher-finance-legacy{display:none!important}
@media(max-width:800px){.invoice-client-grid{grid-template-columns:1fr 1fr}.invoice-total-band{grid-template-columns:1fr 1fr}}



/* V2.5.0-dev.2 booking/dashboard stability */

#editorPage .editor-action-header{position:relative!important;top:auto!important}
#editorPage .editor-sticky-nav button.active-anchor{background:var(--ui-surface-muted)!important;border-color:var(--blue)!important;color:var(--ui-text)!important;box-shadow:inset 3px 0 0 var(--blue)}
#refNameWrap.hidden{display:none!important}.audit-history-btn{margin-top:7px;width:100%}
.booking-finance-compat{display:none!important}

/* === V2.5.0-dev.3 airports / finance / dashboard === */
#editorPage .form-card,#editorPage .form-body,#editorPage .row-card{overflow:visible!important}

.finance-tabs{gap:9px}.finance-tabs .pill{font-size:12px!important;padding:10px 18px!important;min-width:112px}

/* V2.5.0-dev.6.8.9 — Booking, Customer and Dashboard adapters.
   Components inherit typography, spacing and neutral colors from the central Design System. */
.notification-center{margin-bottom:var(--ui-space-3);overflow:visible}.notification-center .alert-list{padding:var(--ui-space-2) var(--ui-space-3);max-height:none;overflow:visible}.notification-center .alert-item{padding:var(--ui-space-2);border-bottom:1px solid var(--ui-cell-line)}.notification-center .alert-item:last-child{border-bottom:0}

.booking-toolbar{display:grid;grid-template-columns:minmax(300px,1fr) repeat(4,minmax(120px,160px));gap:var(--ui-space-2);align-items:center}
.booking-data-tools-inline{margin-inline-start:auto;margin-block:0;padding:0;border:0;background:transparent;display:flex;gap:var(--ui-space-2);flex-wrap:wrap}.booking-data-tools-inline .btn{min-height:var(--ui-control-sm);font-size:var(--ui-font-sm);padding-inline:var(--ui-space-3)}
.booking-tabs{position:sticky;top:76px;z-index:40;display:flex;align-items:center;gap:var(--ui-space-1);padding:var(--ui-space-2);margin-bottom:var(--ui-space-3);border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:color-mix(in srgb,var(--ui-card) 96%,transparent);box-shadow:var(--ui-shadow)}
.booking-tabs .wizard-step{flex:1;min-width:0;min-height:var(--ui-control-sm);display:flex;align-items:center;justify-content:center;gap:var(--ui-space-2);padding:var(--ui-space-1) var(--ui-space-2);border:1px solid transparent;border-radius:var(--ui-radius-sm);background:transparent;color:var(--ui-text-secondary);font-family:var(--ui-font-family);font-size:var(--ui-font-sm);font-weight:var(--ui-weight-strong);cursor:pointer}
.booking-tabs .wizard-step span{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;border-radius:50%;background:var(--ui-surface-muted);color:var(--ui-text-secondary);font-size:var(--ui-font-xs)}
.booking-tabs .wizard-step b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.booking-tabs .wizard-step.active{border-color:color-mix(in srgb,var(--blue) 35%,var(--ui-line));background:color-mix(in srgb,var(--blue) 8%,var(--ui-card));color:var(--ui-text)}.booking-tabs .wizard-step.active span{background:var(--blue);color:var(--ui-on-brand)}
.booking-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ui-space-1);text-align:center;padding:var(--ui-space-5);color:var(--ui-muted)}.booking-empty b{color:var(--ui-text);font-size:var(--ui-font-sm)}.booking-empty small{font-size:var(--ui-font-xs)}
.booking-customer-cell{min-width:0;text-align:center}.booking-customer-cell b{display:block;color:var(--ui-text);text-align:center}.booking-customer-cell small{display:block;margin-top:var(--ui-space-1);color:var(--ui-text-secondary);font-size:var(--ui-font-xs);direction:ltr;unicode-bidi:isolate;text-align:center}
.booking-timing,.booking-timing-label{display:block;margin-top:var(--ui-space-1);font-size:var(--ui-font-xs);color:var(--ui-text-secondary)}

.customer-file-modal{width:min(1080px,calc(100vw - 32px));max-width:1080px;overflow-x:hidden}.customer-file-modal .card-body,.customer-file-modal [data-customer-panel],.customer-file-modal .ui-list-shell,.customer-file-modal .ui-table-wrap{max-width:100%;min-width:0}.customer-file-modal .ui-table-wrap{overflow-x:auto}.customer-file-modal input,.customer-file-modal textarea,.customer-file-modal select{max-width:100%;min-width:0}.customer-file-modal *{box-sizing:border-box}.customer-file-tabs{margin:0 calc(var(--ui-space-4) * -1) var(--ui-space-4);padding-inline:var(--ui-space-4)}
/* IDENTITY BLOCK — A FIELD IS AS WIDE AS WHAT IT HOLDS.
   This was a rigid four-column grid, so seven fields made two rows with the second three-quarters
   empty, and a three-option select or a date got the same 250px of a 1080px modal as a full name.
   The width now follows the CONTENT: `data-size` says whether a field holds a short token, an
   ordinary value, a name, or a free list — which is a fact about the field, not a column number, so
   adding or removing one re-flows the rows instead of leaving a hole. On twelve columns the two
   rows fill exactly: s+l+m+m and s+m+xl.
   It collapses on its own — six columns on a narrow modal, one on a phone — with no field ever
   narrower than a value can be read in. */
.customer-overview-fields{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--ui-space-3)}
.customer-overview-fields>div{min-width:0}
.customer-overview-fields>div[data-size="s"]{grid-column:span 2}
.customer-overview-fields>div[data-size="m"]{grid-column:span 3}
.customer-overview-fields>div[data-size="l"]{grid-column:span 4}
.customer-overview-fields>div[data-size="xl"]{grid-column:span 7}
@media(max-width:1040px){
 .customer-overview-fields{grid-template-columns:repeat(6,minmax(0,1fr))}
 .customer-overview-fields>div[data-size="s"]{grid-column:span 2}
 .customer-overview-fields>div[data-size="m"]{grid-column:span 2}
 .customer-overview-fields>div[data-size="l"]{grid-column:span 3}
 .customer-overview-fields>div[data-size="xl"]{grid-column:span 4}
}
@media(max-width:620px){
 .customer-overview-fields{grid-template-columns:1fr}
 .customer-overview-fields>div[data-size]{grid-column:span 1}
}
/* A Latin token keeps its own direction without turning its field around: `dir=ltr` alone lets a
   passport or phone pull the value to the left of an RTL field, so it is isolated and re-anchored
   to the right. This is the bidi rule, not a string reversal. */
.customer-overview-fields input[dir="ltr"]{unicode-bidi:isolate;text-align:right}
.customer-notes-field{min-height:90px;resize:vertical;line-height:1.65}
.customer-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--ui-space-2);margin:var(--ui-space-4) 0}.customer-metrics>div{min-width:0;padding:var(--ui-space-3);border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-card)}.customer-metrics span{display:block;color:var(--ui-text-secondary);font-size:var(--ui-font-xs)}.customer-metrics b{display:block;margin-top:var(--ui-space-1);color:var(--ui-text);font-size:var(--ui-font-strong)}
.customer-relations-card{padding:var(--ui-space-4);border:1px solid var(--ui-line);border-radius:var(--ui-radius);background:var(--ui-surface-subtle)}.customer-relations-card h3{margin:0 0 var(--ui-space-1);font-size:var(--ui-section);color:var(--ui-heading)}

.grid-flight-route{display:grid;grid-template-columns:minmax(0,1fr) var(--ui-control) minmax(0,1fr) minmax(150px,.75fr);gap:var(--ui-space-2);align-items:end}
.route-swap-btn{width:var(--ui-control);height:var(--ui-control);border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-card);color:var(--blue-dark);font-family:var(--ui-font-family);font-size:var(--ui-section);font-weight:var(--ui-weight-heavy);cursor:pointer}.route-swap-btn:hover{border-color:var(--blue);background:var(--ui-surface-muted)}
.trip-range-field{padding:var(--ui-space-2);border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-subtle)}.trip-range-field label{color:var(--ui-text-secondary)}
.arrival-day-offset{width:100%}.flight-time-warning{display:block;margin-top:var(--ui-space-1);color:var(--ui-danger);font-size:var(--ui-font-xs);font-weight:var(--ui-weight-strong);line-height:1.45}.flight-time-error{border-color:color-mix(in srgb,var(--ui-danger) 55%,var(--ui-line));background:var(--ui-danger-bg)}
.flight-transit-fields{margin-top:var(--ui-space-2);padding:var(--ui-space-3);border:1px solid var(--ui-line);border-radius:var(--ui-radius-sm);background:var(--ui-surface-subtle)}.hotel-smart-card.hotel-date-conflict .trip-range-field{border-color:var(--ui-danger);background:var(--ui-danger-bg)}

@media(max-width:1100px){.booking-toolbar{grid-template-columns:minmax(260px,1fr) repeat(2,minmax(120px,1fr))}.booking-data-tools-inline{margin-inline-start:0;width:100%}}
@media(max-width:850px){.booking-toolbar{grid-template-columns:1fr 1fr}.grid-flight-route{grid-template-columns:1fr var(--ui-control) 1fr}.grid-flight-route>.trip-range-field{grid-column:1/-1}}
@media(max-width:620px){.booking-toolbar{grid-template-columns:1fr}.booking-data-tools-inline .btn{flex:1}.booking-tabs{position:relative;top:auto;flex-wrap:wrap}.booking-tabs .wizard-step{flex:1 1 45%}.grid-flight-route{grid-template-columns:1fr 1fr}.route-swap-btn{grid-column:1/-1;justify-self:center}.grid-flight-route>.trip-range-field{grid-column:1/-1}}

/* 6.8.15 auth input consistency */
.auth-login-card input{width:100%;box-sizing:border-box}.auth-login-card .hidden{display:none!important}

/* Pre-stable central social presentation: Branding -> UIComponents icons -> shared print/footer renderers. */
.print-social-account{display:inline-flex;align-items:center;gap:5px;direction:ltr;unicode-bidi:isolate;white-space:nowrap}.print-social-icons{display:inline-flex;align-items:center;gap:3px}.print-social-account .ui-social-icon{width:13px;height:13px;stroke:currentColor;fill:none;flex:0 0 13px}
/* voucher: «تمت الطباعة بواسطة نظام Toura System» beside the issue date (Online, Phase 4 / Round 5) — small, muted, once */
.mv-printed-by{display:block;margin:0 0 3px;font-size:8.5px;font-weight:400;color:#6b777e;white-space:nowrap}
.mv-printed-by[hidden]{display:none}
/* FINAL ACCEPTANCE §10.5 - the office's English name under its Arabic name on the voucher (the element exists Online only) */
.mv-company-en{margin:1px 0 2px;font-size:11.5px;font-weight:700;color:#3f5158;line-height:1.3;text-align:right;unicode-bidi:isolate;letter-spacing:.01em}
.mv-company-en[hidden]{display:none}
