:root{--premier-font-ar:"Tajawal",Tahoma,Arial,sans-serif;--premier-font-en:"Montserrat",Arial,sans-serif}
body{font-family:var(--premier-font-ar)}html[lang="en"] body{font-family:var(--premier-font-en)}
.official-lockup{display:grid;justify-items:center;text-align:center;color:#fff;line-height:1.2}.official-lockup .official-symbol{position:relative;width:84px;height:36px;display:block;margin-bottom:8px}.official-symbol i{position:absolute;top:7px;width:27px;height:27px;border:4px solid #c99b52;transform:rotate(45deg);border-radius:2px}.official-symbol i:nth-child(1){left:8px}.official-symbol i:nth-child(2){left:28px;border-color:#9ca5aa}.official-symbol i:nth-child(3){left:48px}.official-rule{width:92px;height:1px;background:linear-gradient(90deg,transparent,#c99b52,transparent);margin:2px 0 7px}.official-lockup strong{font-size:12px;font-weight:700}.official-lockup small{font:500 9px var(--premier-font-en);letter-spacing:.04em;margin-top:3px;color:#d3dde3}.official-lockup.large{justify-items:start;text-align:start}.official-lockup.large .official-symbol{width:110px;height:46px}.official-lockup.large .official-symbol i{width:35px;height:35px}.official-lockup.large .official-symbol i:nth-child(1){left:8px}.official-lockup.large .official-symbol i:nth-child(2){left:36px}.official-lockup.large .official-symbol i:nth-child(3){left:64px}.official-lockup.large .official-rule{width:132px}.official-lockup.large strong{font-size:18px}.official-lockup.large small{font-size:11px}
.login-page{margin:0;min-height:100vh;background:#f2f5f7;color:#10283d;display:grid;place-items:center;padding:24px}.login-shell{width:min(1060px,100%);min-height:620px;display:grid;grid-template-columns:.95fr 1.1fr;background:#fff;border:1px solid #dfe5ea;border-radius:26px;overflow:hidden;box-shadow:0 28px 85px rgba(15,39,56,.15)}.login-brand{background:linear-gradient(180deg,#061f2e,#082c40);color:#fff;padding:52px 46px;display:flex;flex-direction:column;justify-content:space-between}.login-brand p{color:#c9d4da;line-height:1.9;margin-top:28px}.secure-note{border:1px solid rgba(201,155,82,.45);border-radius:15px;padding:17px}.secure-note b{display:block;color:#dfbd83;margin-bottom:5px}.secure-note span{font-size:12px;color:#d2dce2;line-height:1.75}.login-form-wrap{padding:52px;display:flex;flex-direction:column;justify-content:center}.login-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.round-lang{height:38px;min-width:50px;border:1px solid #dfe5ea;border-radius:999px;background:#fff;font-weight:700}.version-badge{display:inline-flex;margin-top:5px;padding:5px 10px;border-radius:999px;background:#f4f7f8;border:1px solid #dfe5ea;color:#587080;font:600 10px var(--premier-font-en)}.login-form-wrap h1{font-size:30px;margin:28px 0 5px}.muted{color:#758592;font-size:13px}.login-field{display:grid;gap:7px;margin-top:16px;font-size:12px;font-weight:700}.login-field input{height:47px;border:1px solid #dce4e8;border-radius:10px;padding:0 13px;outline:none}.login-field input:focus{border-color:#c49a58;box-shadow:0 0 0 3px rgba(183,137,66,.1)}.login-primary{height:48px;width:100%;margin-top:22px;border:0;border-radius:10px;background:linear-gradient(135deg,#b78434,#c99b52);color:#fff;font-weight:800}.future-auth{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.future-auth button{height:40px;border:1px solid #e0e6ea;border-radius:9px;background:#f8fafb;color:#9aa5ac}.login-message{min-height:22px;margin-top:13px;font-size:12px}.login-message.error{color:#b54a4a}.login-message.ok{color:#238a59}@media(max-width:800px){.login-shell{grid-template-columns:1fr}.login-brand{min-height:240px;padding:32px}.login-form-wrap{padding:34px 26px}}
.ops-sidebar::-webkit-scrollbar{width:7px}.ops-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border-radius:99px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.page-head h1{margin:0;font-size:25px}.page-head p{margin:5px 0 0;color:#738391;font-size:12px}.page-head .version-inline{font:600 10px var(--premier-font-en);color:#6f818e;border:1px solid #dfe5ea;background:#fff;border-radius:999px;padding:6px 10px;white-space:nowrap}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card{background:#fff;border:1px solid #dfe5ea;border-radius:14px;padding:16px;box-shadow:0 10px 28px rgba(23,48,67,.06)}.metric-card span{display:block;color:#738391;font-size:11px}.metric-card strong{display:block;margin-top:8px;font:700 28px var(--premier-font-en)}.section-card{background:#fff;border:1px solid #dfe5ea;border-radius:15px;box-shadow:0 10px 30px rgba(23,48,67,.05);overflow:hidden;margin-top:14px}.section-card>header{padding:15px 17px;border-bottom:1px solid #e8edf0;display:flex;align-items:center;justify-content:space-between;gap:12px}.section-card>header h2{margin:0;font-size:17px}.section-card>header p{margin:3px 0 0;color:#738391;font-size:11px}.toolbar{display:flex;gap:8px;flex-wrap:wrap}.data-table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:900px}.data-table th,.data-table td{padding:12px 14px;border-bottom:1px solid #edf1f3;text-align:start;vertical-align:middle;font-size:12px}.data-table th{font-size:10px;color:#778995;background:#fbfcfd;position:sticky;top:0}.data-table tr:hover td{background:#fcfdfd}.mono{font-family:var(--premier-font-en);direction:ltr;unicode-bidi:isolate}.badge{display:inline-flex;min-height:27px;align-items:center;padding:0 9px;border:1px solid #dfe5ea;border-radius:999px;font-size:10px;font-weight:700}.badge.green{color:#238a59;background:#f0faf5;border-color:#cce7d9}.badge.red{color:#b54a4a;background:#fff3f3;border-color:#efcccc}.badge.gold{color:#946a2d;background:#fff8ec;border-color:#ead4ae}.badge.blue{color:#2679b9;background:#f0f7fd;border-color:#cfe1ef}.btn{height:38px;border-radius:9px;border:1px solid #dce4e8;background:#fff;padding:0 13px;font-weight:700;font-size:11px}.btn.primary{background:linear-gradient(135deg,#b78434,#c99b52);border:0;color:#fff}.btn.danger{color:#b54a4a;background:#fff8f8;border-color:#efcccc}.btn:disabled{opacity:.5;cursor:not-allowed}.permission-cell{min-width:245px}.permission-toggle{display:flex;align-items:center;gap:9px}.permission-toggle input{width:18px;height:18px;accent-color:#b78942}.permission-toggle small{color:#738391;display:block}.empty-state{padding:32px;text-align:center;color:#7d8d97;font-size:12px}.loading-card{background:#fff;border:1px solid #dfe5ea;border-radius:14px;padding:30px;text-align:center;color:#738391}.quick-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.quick-card{border:1px solid #e0e7eb;background:#fff;border-radius:14px;padding:16px;text-align:start}.quick-card b{display:block}.quick-card span{display:block;margin-top:4px;color:#778995;font-size:11px}.refund-lock-note{display:flex;gap:9px;align-items:flex-start;border:1px solid #ead4ae;background:#fff9ef;border-radius:11px;padding:11px;color:#835e27;font-size:11px}.refund-lock-note strong{display:block;margin-bottom:2px}.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.booking-grid>div{border:1px solid #e3e9ec;border-radius:11px;padding:12px;background:#fbfcfd}.booking-grid span{display:block;color:#7b8b96;font-size:10px}.booking-grid b{display:block;margin-top:4px;font-size:12px}.app-modal{position:fixed;z-index:111;top:50%;left:50%;transform:translate(-50%,-50%);width:min(720px,94vw);max-height:88vh;background:#fff;border:1px solid #dfe5ea;border-radius:17px;box-shadow:0 30px 95px rgba(5,25,39,.28);display:none;overflow:hidden}.app-modal.open{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.app-modal>header{display:flex;justify-content:space-between;gap:12px;padding:17px 19px;border-bottom:1px solid #e7ecef}.app-modal>header h3{margin:0;font-size:18px}.app-modal>header p{margin:3px 0 0;color:#778995;font-size:11px}.app-modal>header button{width:34px;height:34px;border-radius:50%;border:1px solid #dfe5ea;background:#fff;font-size:20px}.app-modal-body{padding:18px 19px;overflow:auto}.app-modal>footer{padding:12px 19px;border-top:1px solid #e7ecef;display:flex;justify-content:flex-end;gap:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-field{display:grid;gap:6px}.form-field.full{grid-column:1/-1}.form-field label{font-size:11px;color:#667a88;font-weight:700}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #dce4e8;border-radius:9px;background:#fff;padding:0 11px;outline:none}.form-field input,.form-field select{height:43px}.form-field textarea{min-height:110px;padding-top:10px;resize:vertical}.modal-message{font-size:11px;color:#b54a4a;min-height:18px;margin-top:8px}.ops-create-btn{border:0}.ops-bell-btn svg{fill:none;stroke:#3b5363;stroke-width:1.8}.ops-mobile-nav{display:none}.ops-account-menu{z-index:140}.ops-modal-backdrop{z-index:110}.scroll-note{font-size:10px;color:#86959e;margin-top:7px}
html[dir="rtl"] .ops-main{direction:rtl}html[dir="rtl"] .data-table th,html[dir="rtl"] .data-table td{text-align:right}html[dir="ltr"] .data-table th,html[dir="ltr"] .data-table td{text-align:left}html[dir="rtl"] .ops-content{direction:rtl}html[dir="ltr"] .ops-content{direction:ltr}
@media(max-width:1100px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-mobile-nav{display:block}.quick-links{grid-template-columns:1fr}.page-head{padding-inline-start:54px}}@media(max-width:680px){.dashboard-grid{grid-template-columns:1fr}.form-grid,.booking-grid{grid-template-columns:1fr}.future-auth{grid-template-columns:1fr}}

/* === Booking Details V2 === */

#modalBody{
  max-height:68vh;
  overflow-y:auto;
  overflow-x:hidden;
  padding-inline-end:4px;
}

.booking-detail-section{
  margin-top:14px;
  padding:14px;
  border:1px solid #dfe6ec;
  border-radius:14px;
  background:#fff;
}

.booking-detail-section:first-child{
  margin-top:0;
}

.booking-detail-section h3{
  margin:0 0 12px;
  font-size:15px;
  color:#102a43;
}

.booking-detail-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  padding:11px 0;
  border-top:1px solid #edf1f4;
}

.booking-detail-row:first-child{
  border-top:0;
}

.booking-detail-row > div{
  min-width:0;
}

.booking-detail-row span,
.booking-detail-note{
  font-size:12px;
  color:#718096;
}

.booking-detail-row b{
  display:block;
  margin-top:4px;
  color:#102a43;
  overflow-wrap:anywhere;
}

.booking-detail-note{
  margin-top:12px;
  padding:11px 12px;
  border-radius:10px;
  background:#f7f9fb;
  line-height:1.8;
}

.schedule-change-box{
  border-color:#ead6ad;
  background:#fffaf1;
}

@media(max-width:900px){
  .booking-detail-row{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:560px){
  .booking-detail-row{
    grid-template-columns:1fr;
  }
}


/* === Integrations V1 === */

.integrations-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:16px;
}

.integration-card{
  min-width:0;
  padding:18px;
  border:1px solid #dfe6ec;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 24px rgba(16,42,67,.04);
}

.integration-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.integration-identity{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.integration-icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#f3f6f8;
  color:#153b6f;
  font-size:20px;
}

.integration-identity h3{
  margin:0;
  color:#102a43;
  font-size:16px;
}

.integration-engine{
  margin-top:4px;
  color:#718096;
  font-size:11px;
}

.integration-state{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
}

.integration-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:4px 8px;
  border-radius:999px;
  font-size:10px;
  font-weight:700;
  white-space:nowrap;
}

.integration-badge.enabled,
.integration-badge.configured{
  background:#edf9f2;
  color:#16794b;
  border:1px solid #bfe7cf;
}

.integration-badge.disabled,
.integration-badge.neutral{
  background:#f3f5f7;
  color:#6b7785;
  border:1px solid #dfe5ea;
}

.integration-badge.warning{
  background:#fff8e8;
  color:#946200;
  border:1px solid #ead39c;
}

.integration-data-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}

.integration-data-grid > div{
  min-width:0;
  padding:10px;
  border:1px solid #edf1f4;
  border-radius:10px;
  background:#fbfcfd;
}

.integration-data-grid span{
  display:block;
  margin-bottom:4px;
  color:#718096;
  font-size:11px;
}

.integration-data-grid b{
  display:block;
  color:#102a43;
  font-size:12px;
  overflow-wrap:anywhere;
}

.integration-message{
  margin-top:12px;
  padding:10px 12px;
  border-radius:10px;
  background:#f7f9fb;
  color:#56697d;
  font-size:11px;
  line-height:1.7;
}

.integration-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:14px;
}

.integration-security-note,
.integration-live-warning{
  margin-top:14px;
  padding:12px 14px;
  border:1px solid #d9e3ec;
  border-radius:12px;
  background:#f8fbfd;
  color:#56697d;
  line-height:1.7;
}

.integration-security-note{
  display:flex;
  gap:8px;
  align-items:flex-start;
}

.integration-security-note strong{
  white-space:nowrap;
  color:#153b6f;
}

.integration-secret-title{
  padding:10px 12px;
  border-radius:10px;
  background:#f7f9fb;
  color:#56697d;
  font-size:12px;
  font-weight:700;
}

.integration-live-warning{
  border-color:#ead6ad;
  background:#fffaf1;
}

@media(max-width:1150px){
  .integrations-grid{
    grid-template-columns:1fr;
  }
}

@media(max-width:680px){
  .integration-card-head{
    flex-direction:column;
  }

  .integration-state{
    justify-content:flex-start;
  }

  .integration-data-grid{
    grid-template-columns:1fr;
  }

  .integration-actions{
    flex-direction:column;
  }

  .integration-actions .btn{
    width:100%;
  }
}


/* === Integration Configuration V2 === */

.integration-internal-panel{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.integration-internal-hero{
  display:flex;
  align-items:center;
  gap:14px;
  padding:16px;
  border:1px solid #dfe6ec;
  border-radius:14px;
  background:#fbfcfd;
}

.integration-icon-large{
  width:52px;
  height:52px;
  flex:0 0 52px;
  font-size:23px;
}

.integration-internal-hero h3{
  margin:0;
  color:#102a43;
  font-size:17px;
}

.integration-internal-hero p{
  margin:4px 0 0;
  color:#718096;
  font-size:12px;
}

.integration-internal-hero .integration-state{
  margin-inline-start:auto;
}

.integration-readonly-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.integration-readonly-grid > div{
  min-width:0;
  padding:12px;
  border:1px solid #e4eaf0;
  border-radius:10px;
  background:#fff;
}

.integration-readonly-grid span{
  display:block;
  margin-bottom:5px;
  color:#718096;
  font-size:11px;
}

.integration-readonly-grid b{
  display:block;
  color:#102a43;
  font-size:12px;
  overflow-wrap:anywhere;
}

.integration-internal-message{
  padding:11px 12px;
  border-radius:10px;
  background:#f7f9fb;
  color:#56697d;
  font-size:12px;
  line-height:1.7;
}

.integration-internal-note,
.integration-external-intro{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:13px 14px;
  border-radius:12px;
  line-height:1.7;
}

.integration-internal-note{
  border:1px solid #d9e3ec;
  background:#f8fbfd;
  color:#56697d;
}

.integration-internal-note strong{
  color:#153b6f;
}

.integration-external-intro{
  margin-bottom:14px;
  border:1px solid #ead6ad;
  background:#fffaf1;
  color:#65522d;
}

.integration-external-intro strong{
  color:#8b641f;
}

.integration-form-v2{
  align-items:start;
}

.integration-enable-row{
  padding:4px 0;
}

.integration-toggle-v2{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  padding:12px 14px;
  border:1px solid #dfe6ec;
  border-radius:12px;
  background:#fbfcfd;
  cursor:pointer;
}

.integration-toggle-v2 input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.integration-toggle-box{
  position:relative;
  width:44px;
  height:24px;
  flex:0 0 44px;
  border-radius:999px;
  background:#ccd5dd;
  transition:.18s ease;
}

.integration-toggle-box::after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 1px 4px rgba(16,42,67,.18);
  transition:.18s ease;
}

.integration-toggle-v2 input:checked + .integration-toggle-box{
  background:#c9973e;
}

.integration-toggle-v2 input:checked + .integration-toggle-box::after{
  transform:translateX(20px);
}

html[dir="rtl"] .integration-toggle-v2 input:checked + .integration-toggle-box::after{
  transform:translateX(20px);
}

.integration-toggle-copy{
  display:flex;
  flex-direction:column;
  gap:3px;
}

.integration-toggle-copy b{
  color:#102a43;
  font-size:13px;
}

.integration-toggle-copy small{
  color:#718096;
  line-height:1.6;
}

.integration-secret-title{
  display:flex;
  flex-direction:column;
  gap:4px;
}

.integration-secret-title strong{
  color:#102a43;
}

.integration-secret-title span{
  color:#718096;
  font-size:11px;
  font-weight:400;
}

.integration-live-warning{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.integration-live-warning strong{
  color:#8b641f;
}

@media(max-width:680px){
  .integration-internal-hero{
    align-items:flex-start;
    flex-wrap:wrap;
  }

  .integration-internal-hero .integration-state{
    width:100%;
    margin-inline-start:0;
    justify-content:flex-start;
  }

  .integration-readonly-grid{
    grid-template-columns:1fr;
  }
}


/* === Integrations Compact Accordion V2 === */

.integration-summary-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:12px;
  border:1px solid #dfe6ec;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}

.integration-summary-strip > div{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:54px;
  padding:8px 14px;
  border-inline-start:1px solid #edf1f4;
}

.integration-summary-strip > div:first-child{
  border-inline-start:0;
}

.integration-summary-strip b{
  color:#102a43;
  font-size:20px;
}

.integration-summary-strip span{
  color:#718096;
  font-size:12px;
}

.integration-security-compact{
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:10px;
  padding:9px 12px;
  border:1px solid #d9e3ec;
  border-radius:10px;
  background:#f8fbfd;
  color:#657789;
  font-size:11px;
}

.integration-security-compact strong{
  color:#153b6f;
}

.integrations-accordion-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:10px;
}

.integration-accordion{
  border:1px solid #dfe6ec;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
  transition:.18s ease;
}

.integration-accordion.open{
  border-color:#d7bd88;
  box-shadow:0 8px 22px rgba(16,42,67,.05);
}

.integration-accordion-toggle{
  width:100%;
  min-height:62px;
  display:grid;
  grid-template-columns:minmax(210px,1.3fr) minmax(500px,2.7fr) 28px;
  align-items:center;
  gap:12px;
  padding:9px 14px;
  border:0;
  background:#fff;
  color:inherit;
  cursor:pointer;
  text-align:inherit;
  font:inherit;
}

.integration-accordion-toggle:hover{
  background:#fbfcfd;
}

.integration-compact-identity{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.integration-compact-icon{
  width:36px;
  height:36px;
  flex:0 0 36px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#f3f6f8;
  color:#153b6f;
  font-size:17px;
}

.integration-compact-title{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.integration-compact-title b{
  color:#102a43;
  font-size:14px;
}

.integration-compact-title small{
  margin-top:2px;
  color:#8493a1;
  font-size:10px;
}

.integration-compact-meta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  min-width:0;
}

.integration-provider{
  max-width:180px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#334e68;
  font-size:11px;
}

.integration-env{
  padding:3px 7px;
  border-radius:7px;
  background:#f3f5f7;
  color:#526579;
  font-size:10px;
  font-weight:700;
}

.integration-chevron{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:8px;
  color:#153b6f;
  background:#f3f6f8;
  font-size:15px;
  font-weight:700;
}

.integration-accordion-body{
  padding:12px 14px 14px;
  border-top:1px solid #edf1f4;
  background:#fbfcfd;
}

.integration-compact-details{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

.integration-compact-details > div{
  min-width:0;
  padding:9px 10px;
  border:1px solid #e5ebf0;
  border-radius:9px;
  background:#fff;
}

.integration-compact-details span{
  display:block;
  margin-bottom:4px;
  color:#8493a1;
  font-size:10px;
}

.integration-compact-details b{
  display:block;
  color:#102a43;
  font-size:11px;
  overflow-wrap:anywhere;
}

.integration-compact-message{
  margin-top:8px;
  padding:8px 10px;
  border-radius:8px;
  background:#f2f5f7;
  color:#657789;
  font-size:11px;
  line-height:1.6;
}

.integration-compact-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:10px;
}

/* Hide the old large-card layout if any stale markup survives. */
.integrations-grid{
  display:none !important;
}

@media(max-width:1050px){
  .integration-accordion-toggle{
    grid-template-columns:minmax(190px,1.2fr) minmax(0,2fr) 28px;
  }

  .integration-provider{
    display:none;
  }
}

@media(max-width:760px){
  .integration-summary-strip{
    grid-template-columns:repeat(2,1fr);
  }

  .integration-accordion-toggle{
    grid-template-columns:1fr 28px;
  }

  .integration-compact-meta{
    grid-column:1 / -1;
    justify-content:flex-start;
    flex-wrap:wrap;
  }

  .integration-chevron{
    grid-column:2;
    grid-row:1;
  }

  .integration-compact-details{
    grid-template-columns:1fr;
  }
}


/* === Integrations Compact Grid V3 === */

/* 3 integrations per row on desktop */
.integrations-accordion-list{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  align-items:start;
}

/* Compact closed card */
.integration-accordion{
  min-width:0;
  border:1px solid #dfe6ec;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}

/* Open integration spans the full row */
.integration-accordion.open{
  grid-column:1 / -1;
  border-color:#d7bd88;
  box-shadow:0 8px 22px rgba(16,42,67,.06);
}

/* Closed header becomes a small rectangular card */
.integration-accordion-toggle{
  position:relative;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 30px !important;
  grid-template-rows:auto auto;
  gap:7px 9px;
  width:100%;
  min-width:0;
  min-height:88px;
  padding:11px 12px !important;
  border:0;
  background:#fff;
  text-align:inherit;
  cursor:pointer;
}

.integration-accordion-toggle:hover{
  background:#fbfcfd;
}

.integration-compact-identity{
  grid-column:1;
  grid-row:1;
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}

.integration-compact-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#f3f6f8;
  color:#153b6f;
  font-size:16px;
}

.integration-compact-title{
  min-width:0;
}

.integration-compact-title b{
  display:block;
  font-size:13px;
  color:#102a43;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.integration-compact-title small{
  display:block;
  margin-top:2px;
  font-size:9px;
  color:#8493a1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Statuses on second line */
.integration-compact-meta{
  grid-column:1 / -1;
  grid-row:2;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:4px;
  min-width:0;
  padding-inline-end:38px;
}

.integration-compact-meta .integration-provider{
  max-width:130px;
  font-size:9px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.integration-compact-meta .integration-env,
.integration-accordion-toggle .integration-badge,
.integration-accordion-toggle .badge{
  padding:2px 6px;
  font-size:8.5px;
  line-height:1.4;
}

/* Arrow beside card title */
.integration-chevron{
  position:static !important;
  grid-column:2;
  grid-row:1;
  align-self:center;
  justify-self:end;
  transform:none !important;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#f3f6f8;
  color:#153b6f;
  font-size:14px;
  font-weight:700;
}

/* Expanded content */
.integration-accordion-body{
  padding:12px 14px 14px;
  border-top:1px solid #edf1f4;
  background:#fbfcfd;
}

.integration-compact-details{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}

.integration-compact-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:10px;
}

/* Tablet = 2 columns */
@media(max-width:1100px){
  .integrations-accordion-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .integration-accordion.open{
    grid-column:1 / -1;
  }
}

/* Mobile = 1 column */
@media(max-width:700px){
  .integrations-accordion-list{
    grid-template-columns:1fr;
  }

  .integration-accordion.open{
    grid-column:1;
  }

  .integration-compact-details{
    grid-template-columns:1fr;
  }
}


/* === Audit Log V1 === */

.audit-toolbar{
  display:grid;
  grid-template-columns:minmax(260px,2fr) minmax(150px,1fr) 140px 150px 150px auto auto;
  gap:8px;
  margin-top:14px;
  padding:12px;
  border:1px solid #dfe6ec;
  border-radius:14px;
  background:#fff;
}

.audit-toolbar input,
.audit-toolbar select{
  width:100%;
  min-width:0;
  height:38px;
  padding:0 10px;
  border:1px solid #d8e0e7;
  border-radius:9px;
  background:#fff;
  color:#102a43;
  font:inherit;
}

.audit-search-wrap{
  min-width:0;
}

.audit-card{
  margin-top:12px;
}

.audit-table{
  min-width:1050px;
}

.audit-time{
  white-space:nowrap;
}

.audit-sub{
  display:block;
  margin-top:3px;
  color:#8795a5;
  font-size:9px;
}

.audit-area{
  display:inline-flex;
  padding:3px 7px;
  border-radius:7px;
  background:#f3f6f8;
  color:#526579;
  font-size:10px;
  font-weight:700;
}

.audit-action{
  max-width:360px;
}

.audit-ip{
  white-space:nowrap;
  font-size:10px;
}

.audit-badge-neutral{
  display:inline-flex;
  padding:3px 7px;
  border-radius:999px;
  border:1px solid #dfe5ea;
  background:#f3f5f7;
  color:#657789;
  font-size:9px;
  font-weight:700;
}

.audit-load-more{
  display:flex;
  justify-content:center;
  padding:12px;
  border-top:1px solid #edf1f4;
}

.audit-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}

.audit-detail-grid > div{
  min-width:0;
  padding:11px;
  border:1px solid #e4eaf0;
  border-radius:10px;
  background:#fbfcfd;
}

.audit-detail-grid span{
  display:block;
  margin-bottom:5px;
  color:#8493a1;
  font-size:10px;
}

.audit-detail-grid b{
  display:block;
  color:#102a43;
  font-size:11px;
  overflow-wrap:anywhere;
}

.audit-user-agent{
  font-weight:500;
  line-height:1.6;
}

.audit-metadata-section{
  margin-top:12px;
  padding:12px;
  border:1px solid #dfe6ec;
  border-radius:12px;
  background:#fff;
}

.audit-metadata-section h3{
  margin:0 0 9px;
  color:#102a43;
  font-size:14px;
}

.audit-metadata-section pre{
  max-height:280px;
  margin:0;
  padding:12px;
  overflow:auto;
  border-radius:9px;
  background:#102a43;
  color:#eef5fb;
  direction:ltr;
  text-align:left;
  white-space:pre-wrap;
  word-break:break-word;
  font-size:10px;
  line-height:1.65;
}

@media(max-width:1300px){
  .audit-toolbar{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .audit-search-wrap{
    grid-column:span 2;
  }
}

@media(max-width:760px){
  .audit-toolbar{
    grid-template-columns:1fr;
  }

  .audit-search-wrap{
    grid-column:auto;
  }

  .audit-detail-grid{
    grid-template-columns:1fr;
  }
}


/* === Audit Log V1.1 Polish === */

.audit-table td{
  vertical-align:middle;
}

.audit-table .audit-action{
  line-height:1.55;
}

.audit-table .audit-ip{
  max-width:180px;
  overflow:hidden;
  text-overflow:ellipsis;
}

.audit-table .audit-area{
  white-space:nowrap;
}

.audit-detail-grid{
  align-items:stretch;
}

.audit-detail-grid > div{
  min-height:72px;
}


/* === Dashboard V2 — Operations Overview === */

.dashboard-source-warning{
  margin-bottom:10px;
  padding:10px 12px;
  border:1px solid #efcccc;
  border-radius:10px;
  background:#fff6f6;
  color:#a84a4a;
  font-size:11px;
}

.dashboard-sandbox-note{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-bottom:10px;
  padding:10px 12px;
  border:1px solid #ead4ae;
  border-radius:11px;
  background:#fff9ef;
  color:#835e27;
}

.dashboard-sandbox-note b,
.dashboard-sandbox-note small{
  display:block;
}

.dashboard-sandbox-note small{
  margin-top:2px;
  font-size:10px;
  line-height:1.6;
}

.dashboard-v2-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}

.dashboard-v2-kpi{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:14px;
  border:1px solid #dfe5ea;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 24px rgba(23,48,67,.05);
}

.dashboard-v2-kpi-icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#f3f6f8;
  color:#153b6f;
  font-size:18px;
}

.dashboard-v2-kpi span{
  display:block;
  color:#738391;
  font-size:10px;
}

.dashboard-v2-kpi strong{
  display:block;
  margin-top:3px;
  color:#102a43;
  font:700 24px var(--premier-font-en);
  overflow-wrap:anywhere;
}

.dashboard-v2-kpi.money strong{
  font-size:20px;
}

.dashboard-v2-kpi small{
  display:block;
  margin-top:2px;
  color:#8898a3;
  font-size:9px;
}

.dashboard-v2-substats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:10px;
  border:1px solid #dfe5ea;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}

.dashboard-v2-substats > div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:46px;
  padding:9px 13px;
  border-inline-start:1px solid #edf1f4;
}

.dashboard-v2-substats > div:first-child{
  border-inline-start:0;
}

.dashboard-v2-substats span{
  color:#738391;
  font-size:10px;
}

.dashboard-v2-substats b{
  color:#102a43;
  font:700 16px var(--premier-font-en);
}

.dashboard-v2-main{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);
  gap:12px;
  margin-top:12px;
}

.dashboard-v2-recent{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);
  gap:12px;
  margin-top:12px;
}

.dashboard-panel{
  min-width:0;
  border:1px solid #dfe5ea;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 26px rgba(23,48,67,.045);
  overflow:hidden;
}

.dashboard-panel > header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:13px 15px;
  border-bottom:1px solid #edf1f4;
}

.dashboard-panel > header h2{
  margin:0;
  color:#102a43;
  font-size:15px;
}

.dashboard-panel > header p{
  margin:3px 0 0;
  color:#7d8d97;
  font-size:10px;
}

.dashboard-engine-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:12px;
}

.dashboard-engine-card{
  min-width:0;
  padding:12px;
  border:1px solid #e4e9ed;
  border-radius:11px;
  background:#fbfcfd;
}

.dashboard-engine-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.dashboard-engine-title{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}

.dashboard-engine-icon{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#edf3f7;
  color:#153b6f;
}

.dashboard-engine-title h3{
  margin:0;
  font-size:13px;
  color:#102a43;
}

.dashboard-engine-title small{
  display:block;
  margin-top:2px;
  color:#718096;
  font-size:9px;
}

.dashboard-health{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 7px;
  border-radius:999px;
  font-size:8px;
  font-weight:800;
}

.dashboard-health.ready{
  color:#238a59;
  background:#f0faf5;
  border:1px solid #cce7d9;
}

.dashboard-health.down{
  color:#b54a4a;
  background:#fff3f3;
  border:1px solid #efcccc;
}

.dashboard-engine-meta{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-top:10px;
}

.dashboard-engine-meta span{
  padding:7px 8px;
  border-radius:8px;
  background:#fff;
  color:#7b8b96;
  font-size:9px;
}

.dashboard-engine-meta b{
  display:block;
  margin-top:2px;
  color:#102a43;
  font-size:10px;
}

.dashboard-engine-message{
  margin-top:8px;
  color:#6f818e;
  font-size:9px;
  line-height:1.55;
}

.dashboard-attention-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:12px;
}

.dashboard-attention-item{
  display:flex;
  align-items:flex-start;
  gap:9px;
  padding:10px;
  border-radius:10px;
}

.dashboard-attention-item > span{
  width:25px;
  height:25px;
  flex:0 0 25px;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-weight:800;
}

.dashboard-attention-item b,
.dashboard-attention-item small{
  display:block;
}

.dashboard-attention-item b{
  font-size:11px;
}

.dashboard-attention-item small{
  margin-top:2px;
  font-size:9px;
  line-height:1.55;
}

.dashboard-attention-item.ok{
  background:#f3faf6;
  color:#257851;
}

.dashboard-attention-item.ok > span{
  background:#dff3e8;
}

.dashboard-attention-item.warning{
  background:#fff9ef;
  color:#835e27;
}

.dashboard-attention-item.warning > span{
  background:#f8e8c7;
}

.dashboard-attention-item.danger{
  background:#fff4f4;
  color:#a84a4a;
}

.dashboard-attention-item.danger > span{
  background:#f7dddd;
}

.dashboard-bookings-table{
  min-width:720px;
}

.dashboard-activity-list{
  padding:4px 12px 10px;
}

.dashboard-activity-row{
  display:grid;
  grid-template-columns:8px minmax(0,1fr) auto;
  align-items:center;
  gap:9px;
  padding:9px 0;
  border-bottom:1px solid #edf1f4;
}

.dashboard-activity-row:last-child{
  border-bottom:0;
}

.dashboard-activity-status{
  width:7px;
  height:7px;
  border-radius:50%;
}

.dashboard-activity-status.success{
  background:#36a269;
}

.dashboard-activity-status.failed{
  background:#c75b5b;
}

.dashboard-activity-copy{
  min-width:0;
}

.dashboard-activity-copy b{
  display:block;
  color:#102a43;
  font-size:10px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.dashboard-activity-copy span{
  display:block;
  margin-top:2px;
  color:#8493a1;
  font-size:9px;
}

.dashboard-activity-row time{
  color:#8493a1;
  font-size:8px;
  white-space:nowrap;
}

.dashboard-empty-mini{
  padding:22px;
  text-align:center;
  color:#8493a1;
  font-size:10px;
}

.dashboard-quick-panel{
  margin-top:12px;
}

.dashboard-quick-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  padding:12px;
}

.dashboard-quick-action{
  min-width:0;
  padding:11px 12px;
  border:1px solid #dfe6ec;
  border-radius:10px;
  background:#fbfcfd;
  text-align:start;
  cursor:pointer;
  font:inherit;
}

.dashboard-quick-action:hover{
  border-color:#d4b875;
  background:#fffaf1;
}

.dashboard-quick-action b{
  display:block;
  color:#102a43;
  font-size:11px;
}

.dashboard-quick-action span{
  display:block;
  margin-top:3px;
  color:#7d8d97;
  font-size:9px;
  line-height:1.5;
}

@media(max-width:1200px){
  .dashboard-v2-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .dashboard-v2-main,
  .dashboard-v2-recent{
    grid-template-columns:1fr;
  }

  .dashboard-quick-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .dashboard-v2-kpis,
  .dashboard-v2-substats,
  .dashboard-engine-grid,
  .dashboard-quick-grid{
    grid-template-columns:1fr;
  }

  .dashboard-v2-substats > div{
    border-inline-start:0;
    border-top:1px solid #edf1f4;
  }

  .dashboard-v2-substats > div:first-child{
    border-top:0;
  }
}


/* === Dashboard V2.1 Polish === */

/* Unified line icons */
.dashboard-v2-kpi-icon svg,
.dashboard-engine-icon svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Attention panel should not stretch vertically with the engines panel */
.dashboard-attention-panel{
  align-self:start;
}

.dashboard-attention-panel .dashboard-attention-list{
  padding:12px;
}

.dashboard-attention-panel .dashboard-attention-item{
  min-height:58px;
}

/* Recent bookings must fit desktop card without horizontal scrolling */
.dashboard-v2-recent .data-table-wrap{
  overflow-x:hidden;
}

.dashboard-bookings-table{
  width:100%;
  min-width:0 !important;
  table-layout:fixed;
}

.dashboard-bookings-table th,
.dashboard-bookings-table td{
  padding:11px 9px;
  overflow-wrap:anywhere;
}

.dashboard-bookings-table th:nth-child(1),
.dashboard-bookings-table td:nth-child(1){
  width:28%;
}

.dashboard-bookings-table th:nth-child(2),
.dashboard-bookings-table td:nth-child(2){
  width:17%;
}

.dashboard-bookings-table th:nth-child(3),
.dashboard-bookings-table td:nth-child(3){
  width:13%;
}

.dashboard-bookings-table th:nth-child(4),
.dashboard-bookings-table td:nth-child(4){
  width:13%;
}

.dashboard-bookings-table th:nth-child(5),
.dashboard-bookings-table td:nth-child(5){
  width:17%;
}

.dashboard-bookings-table th:nth-child(6),
.dashboard-bookings-table td:nth-child(6){
  width:12%;
}

.dashboard-bookings-table .btn{
  max-width:100%;
  padding-inline:10px;
}

/* Keep compact behavior on smaller screens */
@media(max-width:900px){
  .dashboard-v2-recent .data-table-wrap{
    overflow-x:auto;
  }

  .dashboard-bookings-table{
    min-width:680px !important;
    table-layout:auto;
  }
}


/* === Dashboard V2.1 Polish === */

/* Unified line icons */
.dashboard-v2-kpi-icon svg,
.dashboard-engine-icon svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Attention panel should not stretch vertically with the engines panel */
.dashboard-attention-panel{
  align-self:start;
}

.dashboard-attention-panel .dashboard-attention-list{
  padding:12px;
}

.dashboard-attention-panel .dashboard-attention-item{
  min-height:58px;
}

/* Recent bookings must fit desktop card without horizontal scrolling */
.dashboard-v2-recent .data-table-wrap{
  overflow-x:hidden;
}

.dashboard-bookings-table{
  width:100%;
  min-width:0 !important;
  table-layout:fixed;
}

.dashboard-bookings-table th,
.dashboard-bookings-table td{
  padding:11px 9px;
  overflow-wrap:anywhere;
}

.dashboard-bookings-table th:nth-child(1),
.dashboard-bookings-table td:nth-child(1){
  width:28%;
}

.dashboard-bookings-table th:nth-child(2),
.dashboard-bookings-table td:nth-child(2){
  width:17%;
}

.dashboard-bookings-table th:nth-child(3),
.dashboard-bookings-table td:nth-child(3){
  width:13%;
}

.dashboard-bookings-table th:nth-child(4),
.dashboard-bookings-table td:nth-child(4){
  width:13%;
}

.dashboard-bookings-table th:nth-child(5),
.dashboard-bookings-table td:nth-child(5){
  width:17%;
}

.dashboard-bookings-table th:nth-child(6),
.dashboard-bookings-table td:nth-child(6){
  width:12%;
}

.dashboard-bookings-table .btn{
  max-width:100%;
  padding-inline:10px;
}

/* Keep compact behavior on smaller screens */
@media(max-width:900px){
  .dashboard-v2-recent .data-table-wrap{
    overflow-x:auto;
  }

  .dashboard-bookings-table{
    min-width:680px !important;
    table-layout:auto;
  }
}


/* === Passkey UI V1 === */
.future-auth .passkey-action:not(:disabled){
  background:#fff;
  border-color:#d6bc91;
  color:#8d6327;
  cursor:pointer;
  font-weight:700;
}

.future-auth .passkey-action:not(:disabled):hover{
  background:#fff9ef;
}

.passkey-list{
  display:grid;
  gap:9px;
}

.passkey-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 13px;
  border:1px solid #e1e7ea;
  border-radius:11px;
  background:#fbfcfd;
}

.passkey-row-copy{
  min-width:0;
}

.passkey-row-copy b{
  display:block;
  font-size:12px;
  color:#173347;
}

.passkey-row-copy small{
  display:block;
  margin-top:3px;
  color:#788995;
  font-size:10px;
}

@media(max-width:680px){
  .passkey-row{
    align-items:flex-start;
  }
}

/* === Employee Portal Final V2 === */

.login-brand.employee-portal-panel{
  background:
    radial-gradient(
      circle at 50% 35%,
      rgba(22,74,98,.36),
      transparent 46%
    ),
    linear-gradient(
      180deg,
      #061f2e 0%,
      #073348 100%
    );
  display:flex;
  align-items:center;
  justify-content:center;
  padding:48px 42px;
  text-align:center;
}

.employee-portal-brand{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

.employee-portal-logo{
  display:block;
  width:min(300px,78%);
  height:auto;
  object-fit:contain;
  margin:0 auto 26px;
}

.employee-portal-title-ar{
  margin:0;
  color:#fff;
  font-family:var(--premier-font-ar);
  font-size:30px;
  line-height:1.35;
  font-weight:700;
  text-align:center;
}

.employee-portal-title-en{
  margin-top:8px;
  color:#eef4f6;
  font-family:var(--premier-font-en);
  font-size:15px;
  line-height:1.4;
  font-weight:500;
  text-align:center;
}

.future-auth .passkey-action:not(:disabled){
  background:#fff;
  border-color:#d2ab6b;
  color:#875f25;
  font-weight:700;
  cursor:pointer;
}

.future-auth .passkey-action:not(:disabled):hover{
  background:#fff9ef;
  border-color:#c99b52;
}

@media(max-width:800px){

  .login-brand.employee-portal-panel{
    min-height:340px;
    padding:32px 24px;
  }

  .employee-portal-logo{
    width:min(280px,80%);
    margin-bottom:20px;
  }

  .employee-portal-title-ar{
    font-size:26px;
  }

  .employee-portal-title-en{
    font-size:15px;
  }
}

/* === End Employee Portal Final V2 === */


/* ==========================================================
   CUSTOMER AUTHENTICATION POLICY
   ========================================================== */

.customer-auth-security-note{
  display:flex;
  align-items:flex-start;
  gap:12px;
  border:1px solid #d9e5ec;
  background:#f7fbfd;
  border-radius:14px;
  padding:14px 16px;
  margin-bottom:14px;
}

.customer-auth-security-icon{
  flex:0 0 auto;
  font-size:19px;
  line-height:1;
  margin-top:2px;
}

.customer-auth-security-note strong{
  display:block;
  font-size:12px;
  color:#314b5c;
}

.customer-auth-security-note p{
  margin:4px 0 0;
  color:#70828f;
  font-size:11px;
  line-height:1.7;
}

.customer-auth-section{
  overflow:visible;
}

.customer-auth-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
  padding:16px 17px;
}

.customer-auth-switch-card{
  min-height:90px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border:1px solid #e1e8ec;
  border-radius:13px;
  padding:14px 15px;
  background:#fff;
  cursor:pointer;
  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease;
}

.customer-auth-switch-card:hover{
  border-color:#cbd8df;
  box-shadow:0 8px 24px rgba(26,54,72,.06);
}

.customer-auth-switch-copy{
  min-width:0;
}

.customer-auth-switch-copy b{
  display:block;
  font-size:12px;
  color:#304957;
}

.customer-auth-switch-copy small{
  display:block;
  margin-top:5px;
  color:#788994;
  font-size:10.5px;
  line-height:1.55;
}

.customer-auth-switch-control{
  position:relative;
  flex:0 0 auto;
  width:44px;
  height:25px;
}

.customer-auth-switch-control input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.customer-auth-switch-track{
  display:block;
  width:44px;
  height:25px;
  border-radius:999px;
  background:#d7dfe4;
  transition:background .16s ease;
  padding:3px;
}

.customer-auth-switch-track span{
  display:block;
  width:19px;
  height:19px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 5px rgba(16,37,51,.2);
  transition:transform .16s ease;
}

.customer-auth-switch-control input:checked+
.customer-auth-switch-track{
  background:#3a956d;
}

.customer-auth-switch-control input:checked+
.customer-auth-switch-track span{
  transform:translateX(19px);
}

html[dir="rtl"]
.customer-auth-switch-control input:checked+
.customer-auth-switch-track span{
  transform:translateX(-19px);
}

.customer-auth-default-row{
  margin:0 17px 16px;
  border-top:1px solid #edf1f3;
  padding-top:15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.customer-auth-default-row b{
  display:block;
  color:#334d5c;
  font-size:12px;
}

.customer-auth-default-row small{
  display:block;
  color:#7a8b96;
  font-size:10.5px;
  margin-top:4px;
}

.customer-auth-default-row select{
  min-width:180px;
  height:39px;
  border:1px solid #dce4e8;
  border-radius:9px;
  background:#fff;
  padding:0 11px;
  font-weight:700;
  font-size:11px;
}

.customer-auth-default-row select:disabled{
  opacity:.55;
  cursor:not-allowed;
}

.customer-auth-inline-warning{
  margin:0 17px 16px;
  border:1px solid #ead4ae;
  background:#fff9ef;
  color:#835e27;
  border-radius:10px;
  padding:10px 12px;
  font-size:10.5px;
  line-height:1.6;
}

.customer-auth-inline-warning[hidden]{
  display:none;
}

.customer-auth-actions{
  margin-top:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid #dfe5ea;
  border-radius:14px;
  background:#fff;
  padding:13px 15px;
  box-shadow:0 10px 28px rgba(23,48,67,.04);
}

.customer-auth-actions strong{
  display:block;
  font-size:11px;
  color:#405866;
}

.customer-auth-actions span{
  display:block;
  margin-top:3px;
  font-size:10px;
  color:#7b8b95;
}

.customer-auth-load-error{
  display:grid;
  justify-items:center;
  gap:8px;
  padding:34px 18px;
  text-align:center;
}

.customer-auth-load-error strong{
  font-size:13px;
}

.customer-auth-load-error span{
  color:#b54a4a;
  font-size:11px;
}

@media(max-width:680px){
  .customer-auth-grid{
    grid-template-columns:1fr;
  }

  .customer-auth-default-row,
  .customer-auth-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .customer-auth-default-row select{
    width:100%;
  }

  .customer-auth-actions .toolbar{
    width:100%;
  }

  .customer-auth-actions .toolbar .btn{
    flex:1;
  }
}
