@import url("https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@400;500;600;700;800;900&display=swap");


/* V655 — customer profile: one waiver, persistent customer info, visit history, one check-in path */
.customer-profile-clean{display:grid;gap:12px}
.customer-clean-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;border:1px solid #dfe8ee;border-radius:14px;background:linear-gradient(135deg,#f5fbfb,#fff)}
.customer-clean-identity{display:flex;align-items:center;gap:11px;min-width:0}.customer-clean-identity h3{margin:0;color:var(--navy);font-size:20px}.customer-clean-contact{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:10px;margin-top:4px}.customer-clean-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.customer-clean-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.customer-clean-metrics>div{border:1px solid #dfe8ee;border-radius:12px;padding:9px 11px;background:#fff}.customer-clean-metrics b{display:block;color:var(--navy);font-size:18px}.customer-clean-metrics span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800;margin-top:2px}
.customer-clean-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.customer-clean-card{min-height:0}.customer-clean-history{overflow:hidden}.customer-clean-history .profile-card-head small{display:block;color:var(--muted);font-size:9px;margin-top:2px}
.customer-visit-row{display:grid;grid-template-columns:1.25fr .6fr .75fr 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #e8eef2}.customer-visit-row:first-of-type{border-top:0}.customer-visit-date b,.customer-visit-finance b{display:block;color:var(--navy);font-size:11px}.customer-visit-row small{display:block;color:var(--muted);font-size:8.5px;margin-top:2px}.customer-visit-children b{font-size:13px;color:var(--navy)}.customer-visit-status{min-width:0}.customer-visit-action{display:flex;justify-content:flex-end}.compact-action{padding:7px 9px!important;font-size:9px!important;white-space:nowrap}
.customer-info-disclosure{border:1px solid #dfe8ee;border-radius:12px;background:#fff;overflow:hidden}.customer-info-disclosure summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:12px;padding:11px 13px}.customer-info-disclosure summary::-webkit-details-marker{display:none}.customer-info-disclosure summary span{font-weight:850;color:var(--navy);font-size:11px}.customer-info-disclosure summary small{color:var(--muted);font-size:9px}.customer-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 13px 13px;border-top:1px solid #edf1f4}.customer-info-grid>div{padding-top:10px}.customer-info-grid small{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.customer-info-grid b{display:block;color:#29445c;font-size:10px;margin-top:3px;line-height:1.35}.customer-info-grid .full{grid-column:1/-1}
@media(max-width:720px){.customer-clean-head{align-items:flex-start;flex-direction:column}.customer-clean-actions{width:100%;justify-content:flex-end}.customer-clean-grid{grid-template-columns:1fr}.customer-visit-row{grid-template-columns:1fr 1fr;gap:8px}.customer-visit-action{grid-column:1/-1;justify-content:flex-start}.customer-info-grid{grid-template-columns:1fr}.customer-info-grid .full{grid-column:auto}}
[hidden]{display:none!important}
:root{--navy:#102a43;--teal:#20a7a5;--red:#d84b4b;--yellow:#f3c84b;--blue:#3f72d8;--bg:#f5f7fb;--text:#17212b;--muted:#708090;--line:#e5eaf0;--white:#fff}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}button,input{font:inherit}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#eef9f8,#f7f8fc 45%,#fff3ef)}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:26px;padding:34px;box-shadow:0 24px 70px rgba(16,42,67,.12)}.login-logo{display:block;max-width:230px;margin:0 auto 16px}.login-card h1{margin:0;text-align:center;color:var(--navy);font-size:34px}.login-card p{text-align:center;color:var(--muted);margin:8px 0 26px}.login-card label{display:block;font-size:13px;font-weight:700;color:var(--navy);margin:14px 0}.login-card input,.search{width:100%;margin-top:7px;padding:12px 13px;border:1px solid #d7dde5;border-radius:12px;outline:none}.login-card input:focus,.search:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(32,167,165,.12)}.login-card button{width:100%;border:0;border-radius:13px;padding:13px;background:var(--navy);color:#fff;font-weight:800;cursor:pointer}.error{color:var(--red);font-size:13px;margin-top:12px;min-height:18px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--navy);padding:22px 16px;display:flex;flex-direction:column}.brand-logo{width:185px;max-height:76px;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.12));margin:2px auto 24px}.sidebar nav{display:grid;gap:6px}.nav-btn,.signout{border:0;background:transparent;color:#cbd7e3;text-align:left;padding:12px 14px;border-radius:11px;cursor:pointer;font-weight:700}.nav-btn:hover,.nav-btn.active{background:rgba(255,255,255,.11);color:#fff}.signout{margin-top:auto;color:#fff;background:rgba(216,75,75,.18)}
.main{padding:28px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:900;color:var(--teal)}.topbar h1{margin:3px 0 0;font-size:30px;color:var(--navy)}.admin-chip{background:#fff;border:1px solid var(--line);padding:9px 13px;border-radius:13px;display:grid;box-shadow:0 8px 20px rgba(16,42,67,.05)}.admin-chip span{font-weight:800;color:var(--navy)}.admin-chip small{color:var(--muted);font-size:10px;letter-spacing:.08em}
.section{display:none!important}.section.active{display:block!important}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.metric,.panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 22px rgba(16,42,67,.05)}.metric{padding:20px}.metric span{display:block;color:var(--muted);font-size:13px;font-weight:650}.metric strong{display:block;margin-top:7px;font-size:30px;color:var(--navy)}.grid-2{display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.panel{padding:18px;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.panel h2{margin:0;color:var(--navy);font-size:18px}.link-btn{border:0;background:none;color:var(--teal);font-weight:800;cursor:pointer}.list{display:grid;gap:9px}.list-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:13px}.list-row b{display:block;color:var(--navy)}.list-row small{color:var(--muted)}.badge{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:11px;font-weight:850;background:#eef3f7;color:var(--navy)}.badge.good{background:#e8f7f2;color:#16745e}.badge.warn{background:#fff5dd;color:#9b6d00}.badge.bad{background:#fdebea;color:#a63b37}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);font-size:13px}th{background:#f8fafc;color:var(--navy);font-size:11px;text-transform:uppercase;letter-spacing:.05em}td{color:#334455}.empty{padding:28px;text-align:center;color:var(--muted)}.search{max-width:310px;margin:0;background:#fff}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.app-shell{grid-template-columns:82px 1fr}.sidebar{padding:18px 10px}.brand-logo{width:62px}.nav-btn{font-size:0;text-align:center}.nav-btn:before{font-size:18px;content:"•"}.signout{font-size:0;text-align:center}.signout:before{content:"↪";font-size:18px}.main{padding:20px}}
@media(max-width:680px){.app-shell{display:block}.sidebar{position:static;height:auto;display:block}.sidebar nav{display:flex;overflow:auto}.nav-btn{font-size:12px;white-space:nowrap}.nav-btn:before{display:none}.signout{font-size:12px;margin-top:8px}.signout:before{display:none}.brand-logo{width:150px}.cards{grid-template-columns:1fr 1fr}.main{padding:14px}.topbar{align-items:flex-start}.admin-chip{display:none}.panel-head{align-items:flex-start;flex-direction:column}.search{max-width:none}}

/* V268 action layer */
.action-btn{border:0;border-radius:10px;padding:8px 11px;font-weight:800;cursor:pointer;background:#0d3855;color:#fff}.action-btn.secondary{background:#e9f3f5;color:#0d3855}.action-btn.danger{background:#8f2630}.action-btn:disabled{opacity:.5;cursor:not-allowed}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.modal{position:fixed;inset:0;background:rgba(5,26,40,.52);display:grid;place-items:center;padding:20px;z-index:50}.modal[hidden]{display:none}.modal-close{border:0;background:#eef4f6;width:38px;height:38px;border-radius:50%;font-size:22px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}.form-grid label{display:grid;gap:6px;font-weight:700;font-size:13px}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid #cbd9df;border-radius:10px;padding:10px 12px;font:inherit}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.detail{padding:12px;background:#f6f9fa;border-radius:12px}.detail small{display:block;color:#647985;margin-bottom:4px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.notice{padding:12px 14px;border-radius:12px;background:#edf8f7;color:#174c4b;margin-bottom:14px}.notice.error{background:#fff0f1;color:#8f2630}.calendar-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}.block-list{display:grid;gap:8px;margin-top:14px}.block-item{display:flex;justify-content:space-between;gap:10px;padding:12px;border:1px solid #dbe6ea;border-radius:12px}@media(max-width:760px){.form-grid,.detail-grid,.calendar-controls{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}
/* V269 operational polish */
.filter-select{border:1px solid #d7dde5;border-radius:12px;padding:11px 12px;background:#fff;color:var(--navy);font-weight:700}.frontdesk-cards{margin-bottom:18px}.status-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#aeb9c3;margin-right:6px}.status-dot.good{background:#2e9f7d}.status-dot.warn{background:#d9a928}.quick-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:5px}.quick-meta span{font-size:11px;background:#f0f4f7;padding:3px 7px;border-radius:999px;color:#526878}
/* V270 customer profile + richer booking details */
.modal-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.muted-line{font-size:12px;color:var(--muted);margin-top:5px}.notes-box{margin-top:14px;padding:13px 14px;background:#fffaf0;border:1px solid #f0dfb9;border-radius:12px;white-space:pre-wrap}.notes-box small{display:block;color:#82671f;font-weight:800;margin-bottom:5px}.section-divider{display:flex;align-items:center;gap:10px;margin:22px 0 14px;color:#647985;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.section-divider:after{content:"";height:1px;background:#dce6ea;flex:1}.action-align{display:flex;align-items:end}.customer-hero{display:flex;gap:14px;align-items:center;padding:4px 0 18px}.customer-hero h3{margin:0 0 4px;font-size:22px;color:var(--navy)}.customer-hero small{display:block;color:var(--muted);margin-top:5px}.avatar{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:#e7f3f4;color:var(--navy);font-size:19px;font-weight:900}.profile-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:16px}.profile-metrics div{background:#f5f8fa;border-radius:12px;padding:12px;text-align:center}.profile-metrics strong{display:block;font-size:20px;color:var(--navy)}.profile-metrics span{font-size:11px;color:var(--muted)}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.profile-card{border:1px solid #dfe8eb;border-radius:15px;padding:14px;background:#fff}.profile-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.profile-card-head h4{margin:0;color:var(--navy)}.profile-card-head span{font-size:11px;color:var(--muted)}.timeline-card{margin-top:14px}.history-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 0;border-top:1px solid #edf2f4}.history-row:first-of-type{border-top:0}.history-row small{display:block;color:var(--muted);margin-top:3px}.profile-detail-list{display:grid;gap:8px}.profile-detail-list>div{display:flex;justify-content:space-between;gap:12px;font-size:13px}.profile-detail-list span{color:var(--muted)}.empty.compact{padding:12px 0}
@media(max-width:760px){.profile-metrics{grid-template-columns:repeat(2,1fr)}.profile-grid{grid-template-columns:1fr}.modal-summary{align-items:flex-start;flex-direction:column}.action-align{align-items:start}}

/* V271 reports and finance polish */
.compact-cards{margin:0 0 18px}.compact-cards .metric{min-height:105px}.compact-cards .metric strong{font-size:1.55rem}.report-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 2px;border-bottom:1px solid #e8edf4}.report-row:last-child{border-bottom:0}.report-row span{color:#5d6a7a}.report-row b{color:#102a43}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.filter-select{min-width:150px;border:1px solid #d9e1ea;border-radius:12px;background:#fff;padding:10px 12px;color:#17324d}
@media(max-width:720px){.toolbar{width:100%}.toolbar .search,.toolbar .filter-select{width:100%}.compact-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V272 rentals, inventory and protected settings */
.panel-subtitle{margin:5px 0 0;color:var(--muted);font-size:12px}.settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.settings-group{border:1px solid var(--line);border-radius:15px;padding:14px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid #edf1f4}.setting-row:first-of-type{border-top:0}.setting-row b{display:block;color:var(--navy);font-size:13px}.setting-row small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.setting-value{text-align:right}.setting-value strong{display:block;color:var(--navy);font-size:15px;margin-bottom:4px}@media(max-width:800px){.settings-list{grid-template-columns:1fr}}
.health-critical{border-left:4px solid currentColor}.health-attention{border-left:4px solid currentColor}.health-ok{border-left:4px solid currentColor}.badge.danger{font-weight:800}.settings-row .row-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}

/* V274 waivers, audit trail and safe customer editing */
.quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.quick-action{border:1px solid var(--line);background:#fff;border-radius:15px;padding:14px 15px;text-align:left;cursor:pointer;box-shadow:0 6px 18px rgba(16,42,67,.04)}.quick-action:hover{border-color:#b7d8d8;transform:translateY(-1px)}.quick-action b{display:block;color:var(--navy);margin-bottom:4px}.quick-action span{font-size:12px;color:var(--muted)}.profile-actions{display:flex;justify-content:flex-end;margin-top:14px}.check-label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;justify-content:flex-start;gap:8px!important}.check-label input{width:auto}.form-footer{display:flex;justify-content:flex-end;padding-top:4px}#activityTable small{color:var(--muted)}
@media(max-width:900px){.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.quick-actions{grid-template-columns:1fr}}

.form-grid textarea{width:100%;box-sizing:border-box;resize:vertical}.form-grid .wide{grid-column:1/-1}.form-grid select{width:100%;box-sizing:border-box}

/* V276 Communications Center */
.campaign-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.campaign-grid label,.campaign-compose label{display:flex;flex-direction:column;gap:6px;font-weight:700}.campaign-summary,.campaign-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}.recipient-list{max-height:340px;overflow:auto;border:1px solid #e5e7eb;border-radius:14px;padding:8px}.recipient-row{display:flex;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #eef2f7}.recipient-row:last-child{border-bottom:0}.recipient-row span{display:flex;flex-direction:column}.recipient-row small{opacity:.7}.recipient-disabled{opacity:.5}.campaign-compose{margin-top:18px;display:grid;gap:12px}.campaign-compose textarea{width:100%;box-sizing:border-box;border:1px solid #d7dde6;border-radius:12px;padding:12px;font:inherit;resize:vertical}.action-btn:disabled{opacity:.45;cursor:not-allowed}@media(max-width:760px){.campaign-grid{grid-template-columns:1fr}}

/* V278 Party Admin */
.table-sub{display:block;margin-top:4px;opacity:.65;font-size:.78rem}.badge.warn{background:#fff3cd;color:#795500}

/* V279 Master Calendar */
.calendar-day{border:1px solid #e5e7eb;border-radius:14px;margin:10px 0;overflow:hidden}.calendar-date{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#f7f9fc}.calendar-events{padding:4px 12px}.calendar-event{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #eef2f7}.calendar-event:last-child{border-bottom:0}.calendar-event div{display:flex;flex-direction:column}.calendar-event small{opacity:.65}.calendar-conflict{border-color:#e0a800;box-shadow:0 0 0 1px #e0a80022}@media(max-width:700px){.calendar-event{grid-template-columns:auto 1fr}.calendar-event button{grid-column:1/-1}}

/* V280 Unified Check-in */
.frontdesk-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.frontdesk-cards .metric strong{font-size:1.8rem}@media(max-width:800px){.frontdesk-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V281 Global Search + UX polish */
.topbar-tools{display:flex;align-items:center;gap:12px}
.global-search-wrap{position:relative;min-width:320px}
.global-search{width:100%}
.global-results{position:absolute;top:calc(100% + 6px);right:0;left:0;z-index:50;background:#fff;border:1px solid #dfe5ec;border-radius:14px;box-shadow:0 16px 40px rgba(15,23,42,.14);max-height:420px;overflow:auto;padding:6px}
.global-result{width:100%;display:grid;grid-template-columns:1fr auto;text-align:left;border:0;background:transparent;padding:10px 12px;border-radius:10px;cursor:pointer}
.global-result:hover{background:#f5f8fb}.global-result b,.global-result small{grid-column:1}.global-result span{grid-column:2;grid-row:1/3;align-self:center;text-transform:uppercase;font-size:.68rem;opacity:.55}.global-result small{opacity:.65;margin-top:2px}.global-result.muted{display:block;opacity:.65;cursor:default}
.global-notice{margin:0 20px 14px;padding:10px 14px;border-radius:12px;background:#eef6ff;border:1px solid #cfe3ff}.global-notice.error{background:#fff1f2;border-color:#fecdd3}.global-notice.success{background:#ecfdf3;border-color:#bbf7d0}
@media(max-width:900px){.topbar{align-items:flex-start;gap:12px}.topbar-tools{width:100%;flex-direction:column;align-items:stretch}.global-search-wrap{min-width:0;width:100%}.admin-chip{align-self:flex-end}}

/* V282 Open Play rewards */
.profile-reward-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;margin:14px 0;border:1px solid #dfe8ef;border-radius:14px;background:#f8fbfd}.profile-reward-actions>div:first-child{display:flex;flex-direction:column}.profile-reward-actions small{opacity:.65;margin-top:3px}@media(max-width:650px){.profile-reward-actions{align-items:stretch;flex-direction:column}}

/* V300 Reports + Communications */
.json-preview{max-height:460px;overflow:auto}.admin-json{white-space:pre-wrap;word-break:break-word;background:#0f172a;color:#e5eef8;padding:14px;border-radius:12px;font-size:.78rem;line-height:1.45}.align-end{align-items:flex-end}.customer-id{display:block;opacity:.55;margin-top:3px}

/* V310 master bundle polish */
#section-finance .metric strong{font-variant-numeric:tabular-nums}.customer-id{display:block;opacity:.55;margin-top:4px}.json-preview{max-height:460px;overflow:auto}.admin-json{white-space:pre-wrap;word-break:break-word}.topbar .global-search::placeholder{opacity:.7}

/* V340 daily operations */
#section-opschecklist .settings-row small{max-width:720px}.badge.warn{white-space:nowrap}#healthLastRefresh{white-space:nowrap}.table-sub{display:block;opacity:.68;margin-top:3px}

/* V350 command center polish */
.dashboard-statusbar{margin-bottom:14px}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}.dashboard-statusbar .panel-head{margin-bottom:0}#commJobSearch{min-width:180px}

/* V412 critical auth visibility */
#loginView[hidden],#recoveryView[hidden],#appView[hidden],[hidden]{display:none!important}

/* V413 — always-visible logout + sidebar overflow fix */
.sidebar nav{
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:4px;
  scrollbar-width:thin;
}
.sidebar .signout{
  flex:0 0 auto;
  margin-top:10px;
}
.top-signout{
  border:1px solid #d8e1ea;
  background:#fff;
  color:#16324f;
  font-weight:800;
  padding:11px 16px;
  border-radius:12px;
  cursor:pointer;
  white-space:nowrap;
}
.top-signout:hover{background:#f3f7fa}
@media(max-width:680px){
  .top-signout{padding:10px 12px;font-size:13px}
}


/* V415 — stable categorized sidebar (no native details/collapse repaint issues) */
.admin-nav{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:2px 4px 10px 0;
  scrollbar-width:thin;
  overscroll-behavior:contain;
}
.nav-group{
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.09);
  border-radius:12px;
  background:rgba(255,255,255,.025);
  overflow:visible;
}
.nav-group-title{
  color:#9cc0d3;
  font-size:11px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
  padding:10px 12px 8px;
  border-bottom:1px solid rgba(255,255,255,.07);
  pointer-events:none;
}
.nav-group-items{
  display:flex !important;
  flex-direction:column;
  gap:3px;
  padding:6px;
  visibility:visible !important;
  opacity:1 !important;
}
.nav-group .nav-btn{
  display:block !important;
  margin:0;
  width:100%;
  min-height:38px;
  padding:9px 12px;
  border-radius:9px;
  font-size:15px;
  visibility:visible !important;
  opacity:1 !important;
}
.nav-group .nav-btn.active{
  background:rgba(255,255,255,.14);
}

/* V416 — Business Legal Profile */
.business-profile-panel{margin-bottom:18px}.business-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.profile-field{padding:13px 14px;border:1px solid #e0e8ec;border-radius:13px;background:#f9fbfc}.profile-field small{display:block;color:#647985;font-size:12px;margin-bottom:4px}.profile-field b{display:block;color:#102a43;line-height:1.35}.profile-note{display:block;margin-top:5px;color:#7a5a00;font-size:11px;line-height:1.35}.business-profile-footer{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border-radius:12px;background:#edf8f7;color:#174c4b;font-size:13px}.compliance-grid{margin-top:0}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 2px;border-bottom:1px solid #e8edf4}.settings-row:last-child{border-bottom:0}.settings-row div{min-width:0}.settings-row b{display:block;color:#102a43}.settings-row small{display:block;color:#647985;margin-top:3px;line-height:1.45}.compact-cards .metric strong{font-size:1.35rem;word-break:break-word}@media(max-width:760px){.business-profile-grid{grid-template-columns:1fr}.business-profile-footer{display:grid;gap:6px}}

/* V420 consolidated smoke-test polish */
.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:8px}.sidebar::-webkit-scrollbar-track{background:transparent}

.customer-hero{position:relative;padding-right:130px}.customer-hero .hero-edit{position:absolute;right:0;top:0}
.template-row{padding:12px 0;border-bottom:1px solid #e5edf2}.template-row:last-child{border-bottom:0}.template-row small{display:block;margin-top:4px}.template-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}

/* V422 final finance/storage polish */
.form-grid input[type=file]{padding:.7rem;background:#fff;border:1px solid var(--line);border-radius:12px;max-width:100%}


/* V423 — Celebrate branded visual polish (presentation only; no business logic changes) */
:root{
  --celebrate-navy:#102a43;
  --celebrate-teal:#20a7a5;
  --celebrate-red:#d84b4b;
  --celebrate-yellow:#f3c84b;
  --celebrate-blue:#3f72d8;
  --soft-teal:#eaf8f7;
  --soft-blue:#edf3ff;
  --soft-red:#fff0ef;
  --soft-yellow:#fff8df;
}
body{
  background:
    radial-gradient(circle at 77% 2%, rgba(63,114,216,.07) 0 90px, transparent 91px),
    radial-gradient(circle at 67% 0%, rgba(243,200,75,.08) 0 60px, transparent 61px),
    linear-gradient(180deg,#f3f7fb 0,#f7f9fc 260px,#f5f7fb 100%);
}
.sidebar{
  background:linear-gradient(180deg,#0d2942 0%,#102f4a 58%,#0b2338 100%);
  box-shadow:10px 0 30px rgba(16,42,67,.09);
  border-right:1px solid rgba(255,255,255,.05);
}
.brand-logo{width:190px;max-height:84px;margin-bottom:20px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.22))}
.nav-group{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.10);position:relative}
.nav-group::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 4px 4px 0;background:var(--celebrate-teal);opacity:.8}
.nav-group:nth-child(2)::before{background:var(--celebrate-blue)}
.nav-group:nth-child(3)::before{background:var(--celebrate-yellow)}
.nav-group:nth-child(4)::before{background:var(--celebrate-red)}
.nav-group:nth-child(5)::before{background:var(--celebrate-teal)}
.nav-group:nth-child(6)::before{background:var(--celebrate-blue)}
.nav-group-title{color:#a9cedd;padding-left:15px}
.nav-group .nav-btn{transition:background .16s ease,transform .16s ease,color .16s ease}
.nav-group .nav-btn:hover{background:rgba(255,255,255,.08);transform:translateX(2px)}
.nav-group .nav-btn.active{background:linear-gradient(90deg,rgba(255,255,255,.19),rgba(255,255,255,.10));color:#fff;box-shadow:inset 3px 0 0 var(--celebrate-teal)}
.nav-group:nth-child(2) .nav-btn.active{box-shadow:inset 3px 0 0 var(--celebrate-blue)}
.nav-group:nth-child(3) .nav-btn.active{box-shadow:inset 3px 0 0 var(--celebrate-yellow)}
.nav-group:nth-child(4) .nav-btn.active{box-shadow:inset 3px 0 0 var(--celebrate-red)}
.signout{background:linear-gradient(90deg,rgba(216,75,75,.28),rgba(216,75,75,.16));border:1px solid rgba(255,255,255,.08)}
.main{position:relative}
.topbar{padding:3px 0 4px}
.eyebrow{display:inline-flex;align-items:center;gap:7px;color:#159a98}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--celebrate-red);box-shadow:14px 0 0 var(--celebrate-yellow),28px 0 0 var(--celebrate-blue);margin-right:28px}
.topbar h1{font-size:32px;letter-spacing:-.025em}
.admin-chip{border-top:3px solid var(--celebrate-teal);box-shadow:0 10px 28px rgba(16,42,67,.07)}
.top-signout{border-color:#d7e4ed;box-shadow:0 7px 18px rgba(16,42,67,.05)}
.global-search{border:1px solid #d7e4ed;box-shadow:0 7px 18px rgba(16,42,67,.04)}
.panel,.metric,.quick-action{border-color:#dfe7ee;box-shadow:0 10px 26px rgba(16,42,67,.055)}
.panel{position:relative}
.dashboard-statusbar{background:linear-gradient(115deg,#ffffff 0%,#f2fbfa 58%,#f3f6ff 100%);border-top:3px solid var(--celebrate-teal)}
.cards>.metric{position:relative;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease}
.cards>.metric::after{content:"";position:absolute;right:-18px;top:-22px;width:82px;height:82px;border-radius:50%;background:rgba(32,167,165,.08)}
.cards>.metric:nth-child(2)::after{background:rgba(63,114,216,.09)}
.cards>.metric:nth-child(3)::after{background:rgba(243,200,75,.13)}
.cards>.metric:nth-child(4)::after{background:rgba(216,75,75,.08)}
.cards>.metric::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--celebrate-teal)}
.cards>.metric:nth-child(2)::before{background:var(--celebrate-blue)}
.cards>.metric:nth-child(3)::before{background:var(--celebrate-yellow)}
.cards>.metric:nth-child(4)::before{background:var(--celebrate-red)}
.cards>.metric:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(16,42,67,.09)}
.metric span{position:relative;z-index:1;color:#65798a}.metric strong{position:relative;z-index:1;letter-spacing:-.035em}
.quick-action{position:relative;overflow:hidden;border-top:3px solid var(--celebrate-teal);transition:transform .16s ease,box-shadow .16s ease}
.quick-action:nth-child(2){border-top-color:var(--celebrate-blue)}
.quick-action:nth-child(3){border-top-color:var(--celebrate-yellow)}
.quick-action:nth-child(4){border-top-color:var(--celebrate-red)}
.quick-action:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(16,42,67,.09)}
.panel-head h2::after{content:"";display:block;width:34px;height:3px;margin-top:6px;border-radius:99px;background:linear-gradient(90deg,var(--celebrate-teal),var(--celebrate-blue))}
.section[id*="party"] .panel-head h2::after{background:linear-gradient(90deg,var(--celebrate-red),var(--celebrate-yellow))}
#section-openplay .panel-head h2::after,#section-frontdesk .panel-head h2::after{background:linear-gradient(90deg,var(--celebrate-teal),var(--celebrate-yellow))}
#section-finance .panel-head h2::after,#section-reports .panel-head h2::after,#section-expenses .panel-head h2::after{background:linear-gradient(90deg,var(--celebrate-blue),var(--celebrate-teal))}
.action-btn{background:linear-gradient(135deg,#123e5d,#0f6780);box-shadow:0 5px 12px rgba(16,42,67,.12);transition:transform .14s ease,box-shadow .14s ease}
.action-btn:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(16,42,67,.17)}
.action-btn.secondary{background:linear-gradient(135deg,#e9f7f6,#eef4ff);color:#123e5d;border:1px solid #d6e7e8;box-shadow:none}
.action-btn.danger{background:linear-gradient(135deg,#a6323b,#d84b4b)}
.badge.good{background:linear-gradient(135deg,#e5f7f1,#eefbf8);border:1px solid #c9ebdf}
.badge.warn{background:linear-gradient(135deg,#fff3cd,#fff9e7);border:1px solid #f3df9b}
.badge.bad{background:linear-gradient(135deg,#fde9e7,#fff3f1);border:1px solid #f1cbc7}
.table-wrap{background:#fff;box-shadow:0 8px 22px rgba(16,42,67,.035)}
th{background:linear-gradient(180deg,#f4f8fb,#eef4f8);color:#173852;border-bottom:1px solid #d8e4ec}
tbody tr{transition:background .12s ease}tbody tr:hover{background:#f8fbfd}
.notice{border:1px solid #cce8e5;background:linear-gradient(90deg,#edf8f7,#f4fbff)}
.modal{backdrop-filter:blur(3px)}

.profile-card,.profile-field,.detail{box-shadow:0 5px 14px rgba(16,42,67,.035)}
.avatar{background:linear-gradient(135deg,#ddf5f2,#e6edff);border:1px solid #d3e5e7}

.calendar-date{background:linear-gradient(90deg,#f1f8fa,#f4f6fd)}
.login-shell{background:radial-gradient(circle at 25% 20%,rgba(32,167,165,.13),transparent 24%),radial-gradient(circle at 78% 18%,rgba(243,200,75,.16),transparent 20%),radial-gradient(circle at 76% 82%,rgba(216,75,75,.10),transparent 24%),linear-gradient(145deg,#eef9f8,#f7f8fc 45%,#fff)}
.login-card{border-top:4px solid var(--celebrate-teal)}
@media(max-width:680px){
  .eyebrow::before{display:none}
  .main{background:#f6f8fb}
  .cards>.metric:hover,.quick-action:hover{transform:none}
}

/* FINAL MASTER working polish */
@media(max-width:780px){}

/* FINAL MASTER — Quiet interface / progressive disclosure */
.service-section{max-width:1500px}
.service-section>.cards,.service-section>.metrics{margin-bottom:14px}
.service-section .compact-cards{gap:10px}
.service-section .metric{min-height:86px;padding:15px 17px;border-radius:16px;box-shadow:0 5px 18px rgba(15,35,55,.055)}
.service-section .metric span{font-size:.73rem;letter-spacing:.02em;opacity:.72}
.service-section .metric strong{font-size:1.52rem}
.service-section>.panel{margin-top:12px}
.service-section .panel{border-radius:18px}
.service-section>.panel>.panel-head{padding-bottom:12px}
.service-section>.panel>.panel-head h2{font-size:1.05rem}
.service-section>.panel>.panel-head .panel-subtitle{max-width:620px;margin-top:3px;font-size:.79rem;opacity:.68}
.service-section .toolbar{gap:7px}
.service-section .toolbar .search,.service-section .toolbar .filter-select{min-height:38px}

.admin-disclosure{margin-top:12px;border:1px solid rgba(35,77,104,.10);border-radius:16px;background:rgba(255,255,255,.62);overflow:hidden;box-shadow:0 3px 14px rgba(15,35,55,.035)}
.admin-disclosure>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;font-weight:750;color:#17384d;transition:.18s ease}
.admin-disclosure>summary::-webkit-details-marker{display:none}
.admin-disclosure>summary span{display:flex;align-items:center;gap:9px}
.admin-disclosure>summary span:before{content:"+";display:grid;place-items:center;width:22px;height:22px;border-radius:8px;background:rgba(28,145,153,.10);color:#177b82;font-weight:900;font-size:1rem}
.admin-disclosure[open]>summary span:before{content:"–"}
.admin-disclosure>summary small{font-weight:550;color:#718391;font-size:.74rem}
.admin-disclosure>summary:hover{background:rgba(19,138,148,.035)}
.admin-disclosure[open]>summary{border-bottom:1px solid rgba(35,77,104,.08)}
.disclosure-body{padding:12px}
.disclosure-body.grid-2{margin:0}
.admin-disclosure .subpanel{margin:0;box-shadow:none;background:rgba(255,255,255,.72);border-color:rgba(35,77,104,.08)}

/* Keep supporting copy quiet until it matters */
.service-section .notice{font-size:.78rem;padding:10px 12px}
.service-section .empty{padding:18px 14px}

@media (max-width:900px){
  .admin-disclosure>summary{align-items:flex-start;flex-direction:column;gap:4px}
  .admin-disclosure>summary small{padding-left:31px}
}

/* FINAL MASTER — second quiet-interface pass */
#section-dashboard .quick-actions{margin-bottom:12px}
#section-dashboard>.grid-2{margin-top:12px}
#section-dashboard>.cards:not(.compact-cards) .metric{min-height:96px}
#section-dashboard .dashboard-statusbar{padding-top:14px;padding-bottom:14px}
#section-frontdesk .frontdesk-cards{margin-bottom:12px}
#section-opschecklist>.grid-2{margin-bottom:0}
.primary-metrics{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}
#section-calendar .calendar-legend{opacity:.78;font-size:.78rem}
#section-calendar>.metrics{margin-bottom:12px}
#section-calendar>.panel{margin-bottom:0}
#section-calendar .admin-disclosure{margin-top:12px}
@media(max-width:680px){.primary-metrics{grid-template-columns:1fr 1fr}}

/* Final Master — quiet interface pass */
.primary-metrics{max-width:760px}
.section>.primary-metrics{margin-bottom:14px}
.admin-disclosure{border-color:rgba(18,54,78,.10);background:rgba(255,255,255,.62)}
.admin-disclosure>summary{min-height:48px}
.admin-disclosure>summary small{opacity:.64}
.disclosure-toolbar{padding-top:4px}
.service-section .panel-subtitle{max-width:720px}
@media (min-width:1100px){.service-section .compact-cards.primary-metrics,.section .compact-cards.primary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Final Master — calm interface refinements */
.admin-disclosure>summary:focus-visible,.nav-btn:focus-visible,.action-btn:focus-visible,.signout:focus-visible{outline:3px solid rgba(28,145,153,.28);outline-offset:2px}
.section>.panel:first-child,.section>.cards:first-child{margin-top:0}
.service-section .panel-subtitle{max-width:760px}
.empty{background:linear-gradient(180deg,rgba(248,251,252,.72),rgba(255,255,255,.35));border-radius:12px}
@media(max-width:680px){
  .sidebar{padding:12px 10px 10px}
  .brand-logo{width:128px;max-height:52px;margin:0 auto 10px}
  .sidebar nav{gap:5px;padding-bottom:4px;scrollbar-width:none}
  .sidebar nav::-webkit-scrollbar{display:none}
  .nav-btn{padding:9px 11px;border-radius:10px}
  .main{padding:12px}
  .topbar{margin-bottom:14px}
  .topbar h1{font-size:25px}
  .panel{padding:14px}
  .metric{padding:13px}
  .metric strong{font-size:1.45rem}
  .admin-disclosure>summary{padding:11px 13px}
}
@media(max-width:430px){.cards,.compact-cards,.primary-metrics,.frontdesk-cards{grid-template-columns:1fr 1fr}.metric span{font-size:10px}.metric strong{font-size:1.3rem}}

/* FINAL MASTER — navigation hierarchy polish */
.nav-group-title{font-size:.66rem;letter-spacing:.105em;text-transform:uppercase;opacity:.62;margin:15px 10px 6px;font-weight:800}
.nav-group:first-child .nav-group-title{margin-top:4px}
.nav-group-items{display:grid;gap:3px}
.nav-btn{font-size:.86rem;font-weight:650;min-height:38px}
.nav-btn.active{font-weight:800}
/* System pages should visually recede behind daily operations. */
.nav-group:last-child{margin-top:6px;padding-top:7px;border-top:1px solid rgba(255,255,255,.09)}
.nav-group:last-child .nav-btn{opacity:.78}
.nav-group:last-child .nav-btn:hover,.nav-group:last-child .nav-btn.active{opacity:1}
/* Tables stay compact until there is something to inspect. */
.table-wrap{border-radius:14px;overflow:auto}
table th{font-size:.69rem;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap}
table td{font-size:.82rem}
table th,table td{padding-top:10px;padding-bottom:10px}
/* Quiet toolbars: controls should not dominate the content. */
.toolbar .search,.toolbar .filter-select{font-size:.8rem}
.toolbar .action-btn.secondary{box-shadow:none}
@media(max-width:680px){
 .nav-group-title{margin:11px 8px 4px;font-size:.6rem}
 .nav-group-items{display:flex;gap:5px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
 .nav-group-items::-webkit-scrollbar{display:none}
 .nav-group{min-width:max-content}
 .nav-btn{min-height:34px;white-space:nowrap;font-size:.78rem}
}

/* Final master — quiet-first workflow polish */
#section-customers .primary-metrics,#section-inventory .primary-metrics,#section-expenses .primary-metrics{max-width:720px}
#section-inventory>.panel .toolbar,#section-expenses>.panel .toolbar,#section-communications>.panel .toolbar{justify-content:flex-end}
#section-inventory>.panel .search,#section-expenses>.panel .search,#section-communications>.panel .search{min-width:220px}
.admin-disclosure .disclosure-toolbar{margin:0 0 14px}
#section-communications>.admin-disclosure+details.admin-disclosure{margin-top:8px}
@media(max-width:720px){
  #section-inventory>.panel .toolbar,#section-expenses>.panel .toolbar,#section-communications>.panel .toolbar{justify-content:flex-start}
  #section-inventory>.panel .search,#section-expenses>.panel .search,#section-communications>.panel .search{min-width:0;width:100%}
}

/* FINAL MASTER — essentials-first dashboard + quieter chrome */
#section-dashboard>.primary-metrics{max-width:720px}
#section-dashboard>.quick-actions{margin-top:4px}
#section-dashboard>.grid-2{margin-top:14px}
.global-search-wrap{max-width:390px}
@media(max-width:760px){
  .admin-chip{display:none}
  .topbar-tools{gap:7px}
  .global-search-wrap{min-width:0;flex:1}
  .global-search{width:100%}
  .top-signout{padding-inline:10px}
}

/* Final declutter pass: advanced filters stay available without living in the header. */
.inline-tools{position:relative;margin-left:auto}
.inline-tools>summary{list-style:none;cursor:pointer;user-select:none;border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:10px;padding:8px 11px;font-size:.76rem;font-weight:800;line-height:1;box-shadow:0 2px 8px rgba(15,35,55,.04)}
.inline-tools>summary::-webkit-details-marker{display:none}
.inline-tools>summary::before{content:"⌄";display:inline-block;margin-right:6px;color:var(--celebrate-teal);font-size:.9rem;transform:translateY(-1px)}
.inline-tools[open]>summary::before{transform:rotate(180deg) translateY(1px)}
.inline-tools>.toolbar{position:absolute;right:0;top:calc(100% + 8px);z-index:8;min-width:min(680px,80vw);padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 46px rgba(15,35,55,.15)}
.service-section>.panel>.panel-head{align-items:flex-start}
.service-section>.panel>.panel-head>.inline-tools{align-self:flex-start}
/* Main service subtitles are context, not primary content. Keep them quiet. */
.service-section>.panel>.panel-head .panel-subtitle{font-size:.72rem;opacity:.55;max-width:540px}
@media(max-width:760px){
  .inline-tools{margin-left:0;width:100%}
  .inline-tools>summary{width:max-content;margin-left:auto}
  .inline-tools>.toolbar{position:static;min-width:0;width:100%;margin-top:8px;box-shadow:none;background:#f8fbfc}
  .service-section>.panel>.panel-head{gap:8px}
}

/* FINAL MASTER — micro-help + hidden secondary controls */
.micro-help{display:inline-block;position:relative;margin-top:3px;vertical-align:middle}
.micro-help>summary{list-style:none;display:grid;place-items:center;width:18px;height:18px;border:1px solid rgba(18,54,78,.14);border-radius:50%;cursor:pointer;color:rgba(18,54,78,.58);font-size:.68rem;font-weight:850;line-height:1;background:rgba(255,255,255,.7);user-select:none}
.micro-help>summary::-webkit-details-marker{display:none}
.micro-help>summary:hover,.micro-help[open]>summary{color:var(--celebrate-teal);border-color:rgba(28,145,153,.32);background:#fff}
.micro-help>summary:focus-visible{outline:3px solid rgba(28,145,153,.22);outline-offset:2px}
.micro-help-body{position:absolute;left:0;top:25px;z-index:12;width:min(320px,72vw);padding:9px 11px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:0 14px 34px rgba(15,35,55,.13);font-size:.72rem;line-height:1.45;color:rgba(18,54,78,.75);font-weight:500}
/* Do not let finance/report/calendar controls dominate page headers. */
#section-finance>.panel:first-of-type .inline-tools>.toolbar,#section-reports>.panel:first-child .inline-tools>.toolbar,#section-calendar>.panel .inline-tools>.toolbar{align-items:center;flex-wrap:wrap}
#section-finance>.panel:first-of-type .inline-tools>.toolbar{min-width:min(760px,82vw)}
#section-reports>.panel:first-child .inline-tools>.toolbar{min-width:min(610px,82vw)}
#section-calendar>.panel .inline-tools>.toolbar{min-width:min(650px,82vw)}
@media(max-width:760px){
 .micro-help-body{position:fixed;left:14px;right:14px;top:auto;width:auto;max-width:none}
 #section-finance>.panel:first-of-type .inline-tools>.toolbar,#section-reports>.panel:first-child .inline-tools>.toolbar,#section-calendar>.panel .inline-tools>.toolbar{min-width:0}
}

/* Final-master minimal UI pass */
.inline-tools.compact-tool{margin:0}
.inline-tools.compact-tool>summary{padding:.48rem .65rem}
.calendar-legend-toggle{margin:.15rem 0 .55rem}
.calendar-legend-toggle>summary{width:max-content}
.calendar-legend-toggle .calendar-legend{padding:.45rem 0 .1rem;margin:0}
@media (max-width:720px){
  .panel-head>.toolbar{width:100%}
  #frontDeskSearch{min-width:0;flex:1 1 180px}
  .inline-tools.compact-tool{flex:0 0 auto}
}

/* FINAL MASTER — modal progressive disclosure */
.modal-disclosure{margin-top:14px;border:1px solid rgba(18,54,78,.10);border-radius:14px;background:rgba(248,251,252,.72);overflow:hidden}
.modal-disclosure>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 13px;color:var(--navy);font-size:.8rem;font-weight:850}
.modal-disclosure>summary::-webkit-details-marker{display:none}
.modal-disclosure>summary span:before{content:"+";display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:7px;background:rgba(28,145,153,.10);color:var(--celebrate-teal);font-weight:900}
.modal-disclosure[open]>summary span:before{content:"–"}
.modal-disclosure>summary small{font-size:.69rem;color:var(--muted);font-weight:600}
.modal-disclosure[open]>summary{border-bottom:1px solid rgba(18,54,78,.08)}
.modal-disclosure-body{padding:13px}
.modal-disclosure-body>.profile-card+.profile-card{margin-top:10px}
.profile-metrics-primary{grid-template-columns:repeat(2,minmax(0,1fr));max-width:440px}
.protected-disclosure{border-color:rgba(197,145,35,.18);background:rgba(255,250,240,.55)}
.protected-disclosure>summary span:before{background:rgba(219,168,45,.12);color:#8a6514}
.compact-notice{padding:9px 11px;margin-bottom:12px;font-size:.75rem}
@media(max-width:760px){.modal-disclosure>summary{align-items:flex-start;flex-direction:column;gap:3px}.modal-disclosure>summary small{padding-left:28px}.profile-metrics-primary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* FINAL MASTER — modal calm + keyboard polish */
body.modal-open{overflow:hidden}



.modal-close{transition:transform .14s ease,background .14s ease}
.modal-close:hover{transform:rotate(4deg);background:#e4eef1}
.modal-close:focus-visible{outline:3px solid rgba(28,145,153,.28);outline-offset:2px}
@media(max-width:760px){
  .modal{padding:8px;align-items:end}
  
  
  
}

/* FINAL visual smoke polish */
@media (min-width:1100px){#section-compliance .compliance-summary{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}#section-partyadmin>.primary-metrics{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}}
#section-partyadmin .empty,#section-openplay .empty{padding:14px 12px;min-height:0}

.nested-disclosure{margin-top:10px;border-top:1px solid var(--line)}.nested-disclosure>summary{cursor:pointer;list-style:none;padding:13px 2px;font-weight:800;color:var(--navy);font-size:13px}.nested-disclosure>summary::-webkit-details-marker{display:none}.nested-disclosure>summary:before{content:"+";display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:50%;background:#edf6f6;color:var(--teal);font-weight:900}.nested-disclosure[open]>summary:before{content:"–"}.nested-disclosure-body{padding:0 0 8px 28px}
@media(max-width:760px){#section-compliance .compliance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V321 HQ PHOTO FIX: preserve source detail, no low-quality raster scaling */
.v315-slide img,.v315-photo-open img{
  image-rendering: auto;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

/* V329 — Event signup admin */
.event-signup-admin-row{align-items:flex-start!important;gap:18px!important;padding:18px 0!important}
.event-capacity-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.event-capacity-input{width:110px!important;min-width:110px!important}
.event-capacity-track{width:min(460px,100%);height:9px;margin:10px 0 5px;border-radius:999px;background:#e7edf4;overflow:hidden}
.event-capacity-track span{display:block;height:100%;border-radius:inherit;background:#0b8f91}
@media(max-width:760px){.event-signup-admin-row{display:block!important}.event-capacity-actions{justify-content:flex-start!important;margin-top:12px!important}.event-capacity-input{width:120px!important}}

/* V335 — customer profile Open Play checkout */
.profile-openplay-checkout{margin:14px 0 18px}.profile-openplay-checkout .profile-card-head{align-items:center}.profile-openplay-checkout .profile-card-head>div small{display:block;margin-top:3px;color:var(--muted,#65778a)}.openplay-child-list{display:grid;gap:8px}.openplay-child-choice{padding:10px 12px;border:1px solid rgba(1,30,72,.12);border-radius:12px;background:#fff}.openplay-child-choice input{margin-right:8px}

/* V337 — Square gross / fee / net visibility */

.square-net-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 6px}
.square-net-strip>div{background:#f5f8fa;border:1px solid #e2eaee;border-radius:13px;padding:12px 13px}
.square-net-strip small{display:block;font-size:10px;font-weight:900;letter-spacing:.06em;color:#6b7d89;margin-bottom:5px}
.square-net-strip b{font-size:17px;color:#102a43}
.square-net-strip .square-net-highlight{background:#eaf8f3;border-color:#c7eadc}
.square-net-strip .square-net-highlight small,.square-net-strip .square-net-highlight b{color:#087b58}
.square-net-note{margin-bottom:10px}
.net-received-row{background:#f1faf6;padding-left:10px;padding-right:10px;border-radius:10px}.net-received-row span,.net-received-row b{color:#087b58!important}
@media(max-width:620px){.square-net-strip{grid-template-columns:1fr}}

/* V340 — Front Desk party calendar */
.fd-party-calendar-panel{overflow:hidden}
.fd-party-calendar-head{align-items:flex-start}
.fd-party-calendar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.fd-party-calendar-actions>strong{min-width:132px;text-align:center;color:var(--navy);font-size:14px}
.fd-party-month-nav{min-width:40px;padding-left:12px;padding-right:12px;font-size:20px;line-height:1}
.fd-party-calendar-layout{display:grid;grid-template-columns:minmax(430px,1.08fr) minmax(360px,.92fr);gap:16px;align-items:start}
.fd-party-month-shell,.fd-party-day-shell{border:1px solid var(--line);border-radius:18px;background:#fff;padding:16px}
.fd-party-weekdays,.fd-party-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.fd-party-weekdays{margin-bottom:7px}
.fd-party-weekdays span{text-align:center;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.fd-party-day{min-height:61px;border:1px solid transparent;border-radius:12px;background:#f7f9fb;color:#19324f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:inherit}
.fd-party-day b{font-size:13px}
.fd-party-day small{max-width:100%;font-size:8.5px;line-height:1.15;color:#77869a;text-align:center;white-space:normal}
button.fd-party-day{cursor:pointer}
.fd-party-day.is-selectable{background:#fbfdff;border-color:#dce6ef}
.fd-party-day.is-selectable:hover{border-color:#79c6c4;box-shadow:0 5px 14px rgba(16,42,67,.08)}
.fd-party-day.is-saturday.is-selectable{border-color:#8dd0ce}
.fd-party-day.has-booking{background:#fff4f3;border-color:#f3a3a0}
.fd-party-day.is-blocked,.fd-party-day.is-full{background:#f3f5f7;border-color:#cfd7df}
.fd-party-day.is-selected{background:#0f3764;color:#fff;border-color:#0f3764;box-shadow:0 7px 18px rgba(15,55,100,.18)}
.fd-party-day.is-selected small{color:#eaf3ff}
.fd-party-day.is-empty{background:transparent}
.fd-party-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid #edf1f4;color:#66788b;font-size:11px;font-weight:700}
.fd-party-legend span{display:inline-flex;align-items:center;gap:6px}
.fd-legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#89cfc9}
.fd-legend-dot.booked{background:#e85151}
.fd-legend-dot.blocked{background:#9aa7b4}
.fd-party-selected-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:13px;margin-bottom:12px;border-bottom:1px solid #e8eef3}
.fd-party-selected-head span{display:block;color:#d64343;font-size:9px;font-weight:900;letter-spacing:.12em;margin-bottom:5px}
.fd-party-selected-head h3{margin:0;color:var(--navy);font-size:16px}
.fd-party-selected-head>small{color:var(--muted);font-size:11px;text-align:right;max-width:180px}
.fd-party-slots{display:grid;gap:10px}
.fd-party-slot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:center;padding:13px 14px;border:1px solid #dde6ee;border-radius:14px;background:#fff}
.fd-party-slot-main{display:flex;flex-direction:column;gap:3px}
.fd-party-slot-main strong{color:var(--navy);font-size:14px}
.fd-party-slot-main small{color:var(--muted);font-size:10px}
.fd-party-slot-offer{color:#60748a;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.fd-party-slot-status{justify-self:end;display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border-radius:999px;background:#eef3f6;color:#566778;font-size:9px;font-weight:900;letter-spacing:.06em;white-space:nowrap}
.fd-party-slot.is-available{border-color:#8bcfc9;background:#f6fcfb}
.fd-party-slot.is-available .fd-party-slot-status{background:#dff5f1;color:#176a64}
.fd-party-slot.is-booked{border-color:#efaaa7;background:#fff8f7}
.fd-party-slot.is-booked .fd-party-slot-status{background:#fee5e3;color:#b72f2f}
.fd-party-slot.is-unavailable,.fd-party-slot.is-reserved,.fd-party-slot.is-closed{background:#f7f8fa;border-color:#d9e0e6}
.fd-party-slot.is-held{background:#fffaf0;border-color:#eed79a}
.fd-party-slot.is-held .fd-party-slot-status{background:#fff0c7;color:#85621a}
.fd-party-booked-customer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid rgba(16,42,67,.08);padding-top:9px}
.fd-party-booked-customer b{color:var(--navy);font-size:12px}
.fd-party-booked-customer small{color:var(--muted);font-size:9.5px;text-align:right}
.fd-party-slot-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.fd-party-slot-actions .action-btn{padding:8px 11px;font-size:11px}
@media(max-width:1050px){.fd-party-calendar-layout{grid-template-columns:1fr}.fd-party-day-shell{order:-1}}
@media(max-width:700px){.fd-party-calendar-actions{width:100%;justify-content:flex-start}.fd-party-calendar-actions>strong{order:-1;width:100%;text-align:left}.fd-party-month-shell,.fd-party-day-shell{padding:12px}.fd-party-weekdays,.fd-party-month-grid{gap:4px}.fd-party-day{min-height:52px;border-radius:9px}.fd-party-day small{font-size:7.5px}.fd-party-slot{grid-template-columns:1fr}.fd-party-slot-status{justify-self:start}.fd-party-selected-head{flex-direction:column}.fd-party-selected-head>small{text-align:left;max-width:none}.fd-party-booked-customer{align-items:flex-start;flex-direction:column}.fd-party-booked-customer small{text-align:left}.fd-party-slot-actions{justify-content:flex-start}}


/* V341 — unified Front Desk + interactive party calendar */
.frontdesk-command-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:16px 18px;background:linear-gradient(135deg,#ffffff 0%,#f7fbfc 62%,#fff8f5 100%)}
.fd-command-copy h2{font-size:21px;margin:2px 0 0}.fd-command-kicker{font-size:9px;font-weight:900;letter-spacing:.16em;color:var(--teal)}
.fd-command-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.fd-command-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.fd-command-metrics .metric{min-height:96px;padding:16px 18px}.fd-command-metrics .metric strong{font-size:1.45rem}.fd-command-metrics .metric small{display:block;color:var(--muted);font-size:9.5px;margin-top:4px}
.fd-party-calendar-panel{padding:20px;margin-bottom:18px;border-color:#dbe6ee;box-shadow:0 12px 32px rgba(16,42,67,.07)}
.fd-calendar-title-row{display:flex;align-items:center;gap:11px}.fd-calendar-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#e9f7f6;color:#167b79;font-size:21px;font-weight:900}.fd-calendar-title-row h2{font-size:20px}
.fd-party-calendar-head{align-items:center;margin-bottom:16px}.fd-party-calendar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.fd-month-switcher{display:grid;grid-template-columns:34px minmax(142px,auto) 34px;align-items:center;border:1px solid #dbe5ec;border-radius:12px;background:#fff;overflow:hidden;height:38px}.fd-month-switcher strong{text-align:center;color:var(--navy);font-size:12px;padding:0 8px}.fd-month-arrow{height:100%;border:0;background:#f7fafc;color:var(--navy);font-size:22px;font-weight:800;cursor:pointer}.fd-month-arrow:hover{background:#eaf5f5}.fd-month-arrow:disabled{opacity:.35;cursor:not-allowed}.fd-icon-btn{min-width:38px;font-size:17px;padding:8px 10px}
.fd-party-calendar-layout{display:grid;grid-template-columns:minmax(510px,1.22fr) minmax(350px,.78fr);gap:18px;align-items:stretch}.fd-party-month-shell,.fd-party-day-shell{border:1px solid #e0e7ed;border-radius:19px;background:#fff;padding:15px}.fd-party-month-shell{background:linear-gradient(180deg,#fbfdff 0%,#fff 32%)}
.fd-party-weekdays,.fd-party-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.fd-party-weekdays{margin-bottom:7px}.fd-party-weekdays span{text-align:center;color:#8390a0;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em;padding:4px 0}
.fd-party-day{position:relative;min-height:76px;border:1px solid transparent;border-radius:13px;background:#f8fafc;color:#42566b;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:5px;padding:9px 8px;font:inherit;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.fd-party-day-top{display:flex;align-items:center;justify-content:space-between;gap:4px}.fd-party-day b{font-size:12px;color:#526477}.fd-party-day em{font-style:normal;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#9aa6b3}.fd-party-day small{font-size:8.5px;line-height:1.15;color:#718196;text-align:left;white-space:normal;margin-top:auto}.fd-party-day.is-past{opacity:.62}.fd-party-day.is-today:not(.is-selected){box-shadow:inset 0 0 0 1.5px #3f72d8}.fd-party-day.is-today .fd-party-day-top b{color:#2858b7}.fd-party-day.is-empty{background:transparent;border-color:transparent;box-shadow:none}
button.fd-party-day{cursor:pointer}.fd-party-day.is-selectable{background:#fff;border-color:#dce5ed}.fd-party-day.is-saturday.is-selectable{border-color:#bddbd9;background:linear-gradient(180deg,#fbfffe,#fff)}.fd-party-day.is-selectable:hover{transform:translateY(-2px);border-color:#56b8b5;box-shadow:0 9px 20px rgba(16,42,67,.10)}.fd-party-day.has-booking{background:linear-gradient(180deg,#fffafa,#fff);border-color:#efb0ad}.fd-party-day.is-blocked{background:#f3f5f7;border-color:#d4dbe2}.fd-party-day.is-full{background:#fff7f6;border-color:#efa7a3}.fd-party-day.is-selected{opacity:1;background:linear-gradient(145deg,#10395f,#164b78);color:#fff;border-color:#10395f;box-shadow:0 10px 24px rgba(15,55,100,.23);transform:translateY(-1px)}.fd-party-day.is-selected b,.fd-party-day.is-selected em,.fd-party-day.is-selected small{color:#fff}.fd-party-day.is-selected small{opacity:.9}
.fd-party-mini-dots{display:flex;gap:3px;align-items:center;min-height:6px}.fd-party-mini-dots i{width:6px;height:6px;border-radius:50%;background:#dbe2e8}.fd-party-mini-dots i.is-available{background:#41b5a9}.fd-party-mini-dots i.is-booked{background:#e75a57}.fd-party-mini-dots i.is-held{background:#e4b647}.fd-party-mini-dots i.is-closed,.fd-party-mini-dots i.is-unavailable,.fd-party-mini-dots i.is-reserved{background:#aab4bf}.fd-party-day.is-selected .fd-party-mini-dots i{box-shadow:0 0 0 1px rgba(255,255,255,.28)}
.fd-party-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:13px;padding-top:11px;border-top:1px solid #edf1f4;color:#66788b;font-size:10px;font-weight:800}.fd-party-legend span{display:inline-flex;align-items:center;gap:6px}.fd-legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:#41b5a9}.fd-legend-dot.booked{background:#e75a57}.fd-legend-dot.held{background:#e4b647}.fd-legend-dot.blocked{background:#aab4bf}
.fd-party-day-shell{display:flex;flex-direction:column;background:linear-gradient(180deg,#fff,#fbfcfe)}.fd-party-selected-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid #e8eef3}.fd-party-selected-head span{display:block;color:#d84b4b;font-size:8px;font-weight:900;letter-spacing:.14em;margin-bottom:5px}.fd-party-selected-head h3{margin:0;color:var(--navy);font-size:15px}.fd-party-selected-head>small{color:var(--muted);font-size:10px;text-align:right;max-width:180px;line-height:1.35}
.fd-party-selected-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:11px}.fd-party-selected-stats>div{border-radius:11px;padding:8px 9px;background:#f6f8fa;border:1px solid #e5eaef}.fd-party-selected-stats strong{display:block;font-size:16px;color:var(--navy);line-height:1}.fd-party-selected-stats span{display:block;margin-top:4px;font-size:8px;font-weight:800;color:#7b8998}.fd-party-selected-stats .is-booked{background:#fff6f5;border-color:#f2d0ce}.fd-party-selected-stats .is-available{background:#f2fbf9;border-color:#caeae5}
.fd-party-slots{display:grid;gap:9px}.fd-party-slot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;padding:12px 13px;border:1px solid #dde6ee;border-radius:14px;background:#fff;position:relative;overflow:hidden}.fd-party-slot:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#cbd5df}.fd-party-slot-main{display:flex;flex-direction:column;gap:3px}.fd-party-slot-main strong{color:var(--navy);font-size:13.5px}.fd-party-slot-main small{color:var(--muted);font-size:9px}.fd-party-slot-offer{color:#60748a;font-size:8px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.fd-party-slot-status{justify-self:end;display:inline-flex;align-items:center;min-height:23px;padding:4px 8px;border-radius:999px;background:#eef3f6;color:#566778;font-size:8px;font-weight:900;letter-spacing:.07em;white-space:nowrap}.fd-party-slot.is-available{border-color:#b9e0dc;background:#f8fdfc}.fd-party-slot.is-available:before{background:#41b5a9}.fd-party-slot.is-available .fd-party-slot-status{background:#dff5f1;color:#176a64}.fd-party-slot.is-booked{border-color:#efc0bd;background:#fffafa}.fd-party-slot.is-booked:before{background:#e75a57}.fd-party-slot.is-booked .fd-party-slot-status{background:#fee5e3;color:#b72f2f}.fd-party-slot.is-held{background:#fffaf0;border-color:#eed79a}.fd-party-slot.is-held:before{background:#e4b647}.fd-party-slot.is-held .fd-party-slot-status{background:#fff0c7;color:#85621a}.fd-party-slot.is-unavailable,.fd-party-slot.is-reserved,.fd-party-slot.is-closed{background:#f7f8fa;border-color:#d9e0e6}
.fd-party-booked-customer{grid-column:1/-1;width:100%;display:grid;grid-template-columns:1fr auto 16px;align-items:center;gap:10px;border:0;border-top:1px solid rgba(16,42,67,.08);padding:9px 0 0;background:transparent;text-align:left;cursor:pointer}.fd-party-booked-customer:hover b{text-decoration:underline}.fd-party-booked-customer span{min-width:0}.fd-party-booked-customer b{display:block;color:var(--navy);font-size:11px}.fd-party-booked-customer small{color:var(--muted);font-size:8.5px}.fd-party-booked-customer>small{text-align:right}.fd-party-booked-customer i{font-style:normal;color:#7a8da0;font-size:18px}.fd-party-slot-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.fd-party-slot-actions .action-btn{padding:7px 10px;font-size:10px}
.fd-calendar-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:120px;color:var(--muted);font-size:11px}.fd-calendar-loading i{width:18px;height:18px;border:2px solid #dce6ed;border-top-color:var(--teal);border-radius:50%;animation:fdSpin .7s linear infinite}@keyframes fdSpin{to{transform:rotate(360deg)}}
.fd-checkin-panel{margin-bottom:14px}.fd-checkin-toolbar{justify-content:flex-end}.fd-operations-disclosure{margin-top:0}.fd-operations-disclosure>summary{padding:14px 16px}.fd-operations-disclosure>summary small b{color:var(--navy)}.fd-operations-body{display:grid;gap:14px}.fd-dashboard-detail-grid{margin-top:0}.fd-more-details{margin-top:0}.fd-secondary-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.fd-secondary-metrics .metric{min-height:90px}
@media(max-width:1120px){.fd-party-calendar-layout{grid-template-columns:1fr}.fd-party-day-shell{min-height:0}.fd-command-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.frontdesk-command-head{align-items:flex-start;flex-direction:column}.fd-command-actions{width:100%}.fd-command-actions .action-btn{flex:1}.fd-party-calendar-head{align-items:flex-start}.fd-party-calendar-actions{width:100%;justify-content:flex-start}.fd-month-switcher{flex:1;max-width:240px}.fd-party-month-shell,.fd-party-day-shell{padding:11px}.fd-party-weekdays,.fd-party-month-grid{gap:4px}.fd-party-day{min-height:61px;padding:7px 6px;border-radius:10px}.fd-party-day small{font-size:7px}.fd-party-day em{font-size:6px}.fd-party-mini-dots i{width:5px;height:5px}.fd-party-selected-head{flex-direction:column}.fd-party-selected-head>small{text-align:left;max-width:none}.fd-party-booked-customer{grid-template-columns:1fr 16px}.fd-party-booked-customer>small{grid-column:1/-1;text-align:left}.fd-party-slot{grid-template-columns:1fr}.fd-party-slot-status{justify-self:start}.fd-party-slot-actions{justify-content:flex-start}.fd-checkin-toolbar{width:100%;justify-content:flex-start}.fd-checkin-toolbar .search{width:100%;max-width:none}.fd-command-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.fd-party-calendar-panel{padding:14px}.fd-party-calendar-actions{display:grid;grid-template-columns:1fr auto;width:100%}.fd-month-switcher{grid-column:1/-1;max-width:none}.fd-party-day{min-height:54px}.fd-party-day small{display:none}.fd-party-mini-dots{margin-top:auto}.fd-party-selected-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.fd-command-metrics{grid-template-columns:1fr 1fr}.fd-command-metrics .metric{padding:14px}.fd-command-metrics .metric strong{font-size:1.25rem}}

/* V342 — Mobile Light across every Admin tab */
.mobile-nav-toggle{display:none}
.mobile-result-cap{margin:0 0 8px;padding:9px 11px;border:1px solid #d8e8e7;border-radius:10px;background:#f3fbfa;color:#48636f;font-size:.72rem;line-height:1.35}
.mobile-panel-disclosure{margin:10px 0;border:1px solid rgba(18,54,78,.11);border-radius:14px;background:#fff;overflow:hidden}
.mobile-panel-disclosure>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 14px;cursor:pointer;color:var(--navy);font-weight:850}
.mobile-panel-disclosure>summary::-webkit-details-marker{display:none}
.mobile-panel-disclosure>summary:before{content:"+";display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#eaf8f7;color:#167d7a;font-size:16px}
.mobile-panel-disclosure[open]>summary:before{content:"–"}
.mobile-panel-disclosure>summary span{flex:1}
.mobile-panel-disclosure>summary small{font-weight:650;color:var(--muted);font-size:.69rem}
.mobile-panel-disclosure>.mobile-nested-panel{margin:0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none}
@media(max-width:760px){
  body{background:#f6f8fb}
  .sidebar{position:sticky;top:0;z-index:45;padding:7px 10px 8px;background:#102a43;box-shadow:0 8px 24px rgba(16,42,67,.16)}
  .brand-logo{width:94px;max-height:38px;margin:0 auto 5px}
  .mobile-nav-toggle{display:flex;width:100%;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.13);border-radius:11px;background:rgba(255,255,255,.08);color:#fff;padding:9px 11px;font-size:.78rem;font-weight:750;cursor:pointer}
  .mobile-nav-toggle b{font-weight:900}
  .mobile-nav-icon{font-size:1rem;line-height:1}
  .sidebar .admin-nav,.sidebar .signout{display:none}
  .sidebar.mobile-nav-open .admin-nav{display:flex;max-height:68vh;overflow-y:auto;margin-top:7px;padding-right:0}
  .sidebar.mobile-nav-open .signout{display:block;width:100%;margin-top:6px;text-align:center}
  .sidebar.mobile-nav-open .nav-group{min-width:0;width:100%}
  .sidebar.mobile-nav-open .nav-group-items{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding:5px}
  .sidebar.mobile-nav-open .nav-btn{font-size:.74rem!important;white-space:normal!important;min-height:36px;padding:8px 9px;text-align:left}
  .sidebar.mobile-nav-open .nav-group-title{margin:0;padding:7px 9px 5px;font-size:.56rem}
  .main{padding:10px}
  .topbar{margin-bottom:10px;gap:8px}
  .eyebrow{display:none}
  .topbar h1{font-size:22px;margin:0}
  .topbar-tools{gap:6px}
  .global-search{padding:9px 10px;font-size:.78rem}
  .top-signout{padding:9px 10px;font-size:.74rem}
  .panel{padding:12px;border-radius:14px;box-shadow:0 5px 14px rgba(16,42,67,.04)}
  .metric{padding:11px;border-radius:14px;box-shadow:0 5px 14px rgba(16,42,67,.035)}
  .metric span{font-size:9px;text-transform:uppercase;letter-spacing:.04em}
  .metric strong{font-size:1.2rem;margin-top:4px}
  .metric small{display:none}
  .cards,.compact-cards,.primary-metrics,.frontdesk-cards{gap:7px;margin-bottom:9px}
  .section>.primary-metrics{margin-bottom:9px}
  .panel-head{margin-bottom:8px;gap:6px}
  .panel-head h2,.panel h2{font-size:1rem}
  .panel-head h2::after{width:24px;height:2px;margin-top:4px}
  .service-section>.panel>.panel-head .panel-subtitle,.panel-subtitle{display:none}
  .action-btn{padding:7px 9px;font-size:.74rem}
  .badge{padding:4px 6px;font-size:9px}
  .table-wrap{border-radius:10px;-webkit-overflow-scrolling:touch}
  table{min-width:660px}
  table th,table td{padding:8px 9px;font-size:.75rem}
  table th{font-size:.61rem}
  .admin-disclosure{margin-top:8px}
  .admin-disclosure>summary{min-height:42px;padding:9px 11px;font-size:.76rem}
  .disclosure-body{padding:9px}
  .settings-row{padding:10px 1px}
  .settings-row small{font-size:.72rem}
  .notice{padding:9px 10px;margin-bottom:9px;font-size:.73rem}
  .mobile-panel-disclosure{display:block}
  .mobile-panel-disclosure>.mobile-nested-panel{padding:11px}
  .fd-party-calendar-panel{padding:11px}
  .fd-party-day{box-shadow:none!important}
}
@media(min-width:761px){.mobile-panel-disclosure{display:contents}.mobile-panel-disclosure>summary{display:none}.mobile-panel-disclosure>.mobile-nested-panel{border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 26px rgba(16,42,67,.055)}}


/* V343 — consolidated Admin pages */
.admin-group-page{display:none;gap:14px}
.admin-group-page.active{display:block!important}
.admin-group-intro{padding:18px 18px 14px}
.admin-group-page-head{margin-bottom:10px}
.admin-group-page-head h2{margin-bottom:3px}
.admin-group-jumps{display:flex;gap:8px;overflow-x:auto;padding:2px 0 4px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.admin-group-jump{flex:0 0 auto;border:1px solid var(--line,#d9e1e8);background:#fff;color:var(--navy,#102a43);border-radius:999px;padding:8px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.admin-group-jump:hover,.admin-group-jump.active{border-color:var(--navy,#102a43);background:var(--navy,#102a43);color:#fff}
.admin-group-module{border:1px solid var(--line,#d9e1e8);border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(15,42,67,.045);overflow:hidden;scroll-margin-top:90px}
.admin-group-module>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;cursor:pointer;user-select:none;background:#fff}
.admin-group-module>summary::-webkit-details-marker{display:none}
.admin-group-module[open]>summary{border-bottom:1px solid var(--line,#e5ebf0);background:#fbfcfd}
.admin-group-module-title{display:grid;gap:2px;min-width:0}
.admin-group-module-title b{font-size:15px;color:var(--navy,#102a43)}
.admin-group-module-title small{font-size:12px;color:var(--muted,#6b7c8f);font-weight:500}
.admin-group-module-chevron{font-size:20px;line-height:1;color:var(--muted,#6b7c8f);transition:transform .18s ease}
.admin-group-module[open] .admin-group-module-chevron{transform:rotate(180deg)}
.admin-group-module-body{padding:14px;display:grid;gap:14px;content-visibility:auto;contain-intrinsic-size:1px 700px}
.admin-group-module-body>.cards:first-child,.admin-group-module-body>.metrics:first-child{margin-top:0}
@media(max-width:760px){
 .admin-group-page{gap:10px}.admin-group-intro{padding:14px 12px 10px;border-radius:14px}.admin-group-page-head{margin-bottom:8px}
 .admin-group-jumps{margin:0 -2px;padding-bottom:5px}.admin-group-jump{padding:7px 10px;font-size:12px}
 .admin-group-module{border-radius:14px;box-shadow:none}.admin-group-module>summary{padding:13px 12px}
 .admin-group-module-title b{font-size:14px}.admin-group-module-title small{font-size:11px;line-height:1.25}.admin-group-module-body{padding:10px;gap:10px}
 .sidebar .nav-group-title{font-size:10px;opacity:.7}.sidebar .nav-group{margin-bottom:8px}
}


/* V344 — flat six-item sidebar: remove category cards, keep only primary pages */
.admin-nav.admin-nav-flat{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:6px 2px 12px;
  scrollbar-width:thin;
}
.admin-nav-flat .nav-btn{
  position:relative;
  display:block!important;
  width:100%;
  min-height:44px;
  margin:0;
  padding:11px 14px 11px 18px;
  border:0;
  border-radius:0;
  background:transparent;
  color:#cbd9e5;
  box-shadow:none!important;
  text-align:left;
  font-size:15px;
  font-weight:750;
  letter-spacing:0;
  transition:color .15s ease,background .15s ease,transform .15s ease;
}
.admin-nav-flat .nav-btn::before{
  content:"";
  position:absolute;
  left:3px;
  top:50%;
  width:3px;
  height:0;
  border-radius:3px;
  background:var(--celebrate-teal,#20a7a5);
  transform:translateY(-50%);
  transition:height .16s ease;
}
.admin-nav-flat .nav-btn:hover{
  background:rgba(255,255,255,.045);
  color:#fff;
  transform:none;
}
.admin-nav-flat .nav-btn.active{
  background:transparent;
  color:#fff;
  box-shadow:none!important;
}
.admin-nav-flat .nav-btn.active::before{height:24px}
.admin-nav-flat .nav-btn:nth-child(2)::before{background:var(--celebrate-blue,#3f72d8)}
.admin-nav-flat .nav-btn:nth-child(3)::before{background:var(--celebrate-yellow,#f3c84b)}
.admin-nav-flat .nav-btn:nth-child(4)::before{background:var(--celebrate-red,#d84b4b)}
.admin-nav-flat .nav-btn:nth-child(5)::before{background:var(--celebrate-teal,#20a7a5)}
.admin-nav-flat .nav-btn:nth-child(6)::before{background:var(--celebrate-blue,#3f72d8)}
.sidebar .signout{
  margin-top:auto;
  border:0;
  border-top:1px solid rgba(255,255,255,.10);
  border-radius:0;
  background:transparent;
  color:#d9cbd2;
  box-shadow:none;
  padding:14px 14px 10px 18px;
}
.sidebar .signout:hover{background:transparent;color:#fff}

@media(max-width:760px){
  .sidebar.mobile-nav-open .admin-nav.admin-nav-flat{
    display:flex;
    flex-direction:column;
    gap:0;
    max-height:68vh;
    overflow-y:auto;
    margin-top:7px;
    padding:5px 0 4px;
  }
  .sidebar.mobile-nav-open .admin-nav-flat .nav-btn{
    width:100%;
    min-height:42px;
    padding:10px 13px 10px 20px;
    font-size:.83rem!important;
    white-space:normal!important;
    text-align:left;
    border-bottom:1px solid rgba(255,255,255,.055);
  }
  .sidebar.mobile-nav-open .admin-nav-flat .nav-btn:last-child{border-bottom:0}
  .sidebar.mobile-nav-open .admin-nav-flat .nav-btn::before{
    display:block;
    left:5px;
    font-size:0;
  }
  .sidebar.mobile-nav-open .admin-nav-flat .nav-btn.active::before{height:22px}
  .sidebar.mobile-nav-open .signout{
    display:block;
    width:100%;
    margin-top:4px;
    padding:11px 13px 8px 20px;
    text-align:left;
    border-top:1px solid rgba(255,255,255,.10);
    border-radius:0;
    background:transparent;
  }
}

/* Gift Cards — intentionally flat and simple; this is a top-level admin area. */
.barcode-wrap{display:flex;align-items:center;justify-content:center;padding:12px 10px;border:1px solid var(--line);border-radius:12px;background:#fff}.barcode-wrap svg{max-width:100%;height:72px}@media(max-width:700px){}


/* V360 — Front Desk simplified: action-first, details on demand */
#section-frontdesk{display:flex;flex-direction:column;gap:14px}
#section-frontdesk>.frontdesk-command-head{order:1}
#section-frontdesk>.fd-command-metrics{order:2}
#section-frontdesk>.fd-checkin-panel{order:3}
#section-frontdesk>.fd-party-calendar-disclosure{order:4}
#section-frontdesk>.fd-operations-disclosure{order:5}
.fd-party-calendar-disclosure{margin:0;border-radius:16px}
.fd-party-calendar-disclosure>summary{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.fd-party-calendar-disclosure>summary span:first-child{display:flex;flex-direction:column;gap:3px}
.fd-party-calendar-disclosure>summary b{color:var(--navy);font-size:14px}
.fd-party-calendar-disclosure>summary small{color:var(--muted);font-size:11px;font-weight:500}
.fd-party-calendar-disclosure>.fd-party-calendar-panel{margin:0;border:0;border-top:1px solid #e1e9ef;border-radius:0;box-shadow:none}
.fd-command-actions .action-btn{min-width:132px}
@media(max-width:760px){.fd-command-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.fd-command-actions .action-btn:last-child{grid-column:1/-1}.fd-command-actions .action-btn{min-width:0}}
/* Sidebar order is now Front Desk, Gift Cards, then the operational areas. */
.admin-nav-flat .nav-btn[data-section="frontdesk"]::before{background:var(--celebrate-teal,#20a7a5)}
.admin-nav-flat .nav-btn[data-section="giftcards"]::before{background:var(--celebrate-yellow,#f3c84b)}
.admin-nav-flat .nav-btn[data-section="services"]::before{background:var(--celebrate-blue,#3f72d8)}
.admin-nav-flat .nav-btn[data-section="people"]::before{background:var(--celebrate-red,#d84b4b)}
.admin-nav-flat .nav-btn[data-section="business"]::before{background:var(--celebrate-teal,#20a7a5)}
.admin-nav-flat .nav-btn[data-section="marketing"]::before{background:var(--celebrate-blue,#3f72d8)}
.admin-nav-flat .nav-btn[data-section="system"]::before{background:var(--celebrate-yellow,#f3c84b)}

/* V361 — Calm Admin: visible information, no nested tabs */
:root{--admin-gap:18px;}
.admin-nav-flat{gap:6px!important;}
.admin-nav-flat .nav-btn{min-height:44px;text-align:left;padding:11px 14px;}
.admin-group-page{display:none!important;}
.admin-group-intro{position:sticky;top:0;z-index:5;backdrop-filter:blur(12px);}
.admin-group-jumps{display:none!important;}
.admin-module-card{display:block!important;margin:0 0 var(--admin-gap);border:1px solid #dbe5ee;border-radius:18px;background:#fff;overflow:visible;box-shadow:0 5px 18px rgba(16,42,67,.045);}
.admin-module-heading{padding:17px 20px 13px;border-bottom:1px solid #e7edf3;background:linear-gradient(180deg,#fff,#fbfdff);border-radius:18px 18px 0 0;}
.admin-module-heading h2{margin:0 0 3px;font-size:20px;color:#102a43;}
.admin-module-heading .panel-subtitle{margin:0;}
.admin-group-module-body{padding:0;}
.admin-module-card>.admin-group-module-body{display:block!important;}
.admin-module-card .admin-disclosure{margin-left:18px;margin-right:18px;}
.admin-disclosure[open]{display:block;}
.admin-disclosure[open]>summary{border-radius:12px 12px 0 0;}
.admin-disclosure>summary{cursor:default;}
.admin-disclosure>summary::-webkit-details-marker{display:none;}
.admin-disclosure>summary:after{content:""!important;}
.fd-party-calendar-disclosure,.fd-operations-disclosure{margin-top:18px;}
.fd-party-calendar-disclosure>summary,.fd-operations-disclosure>summary{background:#f7fafc;border:1px solid #dbe5ee;padding:14px 16px;font-weight:800;}
.fd-party-calendar-disclosure .fd-party-calendar-panel{border-top:0;border-radius:0 0 16px 16px;}
.fd-operations-body{padding-top:16px;}
/* Keep utility controls compact; only filters/view drawers remain collapsible. */
.inline-tools>summary{cursor:pointer;}
/* Avoid excessive accordion chrome on visible content. */
.admin-module-card details.admin-disclosure{border-top:1px solid #e7edf3;padding-top:0;margin-top:16px;}
.admin-module-card details.admin-disclosure:first-child{margin-top:0;}
/* Better scanning: sections breathe, controls stay aligned. */
.admin-group-page>.admin-module-card{scroll-margin-top:90px;}
.admin-group-page>.admin-module-card .panel{box-shadow:none;}
@media (min-width:900px){
  .admin-group-page>.admin-module-card{margin-bottom:20px;}
  .admin-module-card .primary-metrics{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (max-width:899px){
  .admin-group-intro{position:static;}
  .admin-module-heading{padding:15px 16px 11px;}
  .admin-module-card .admin-disclosure{margin-left:12px;margin-right:12px;}
}
/* V363 calmer Front Desk */
.fd-schedule-panel{margin-bottom:14px}.fd-schedule-head{align-items:flex-start;gap:18px}.fd-schedule-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.view-switch{display:flex;background:#eef4f7;border:1px solid #d8e3ea;border-radius:12px;padding:3px}.view-switch button{border:0;background:transparent;color:#385066;font:inherit;font-weight:700;padding:8px 14px;border-radius:9px;cursor:pointer}.view-switch button.active{background:#103652;color:white;box-shadow:0 2px 8px rgba(16,54,82,.12)}.fd-period-nav{display:flex;gap:6px}.fd-period-nav .action-btn{min-width:42px;padding:8px 12px}.fd-schedule-label{font-weight:800;color:#17334d;margin:4px 0 12px}.fd-day-list{display:grid;gap:8px}.fd-day-event{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:1px solid #e4ebf0;border-radius:12px;padding:10px 12px;background:#fff}.fd-day-event small{display:block;color:#6a7e90;margin-top:2px}.fd-week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px;overflow:auto}.fd-week-day{border:1px solid #e2e9ef;border-radius:12px;padding:10px;min-height:118px;background:#fff}.fd-week-day.is-today{border-color:#13aeb5;box-shadow:inset 0 0 0 1px #13aeb5}.fd-week-day h4{margin:0 0 8px;font-size:13px}.fd-week-day h4 span{display:block;color:#728596;font-weight:500;font-size:11px}.fd-week-item{font-size:11px;padding:5px 0;border-top:1px solid #edf1f4}.fd-month-grid-simple{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.fd-month-weekday{text-align:center;font-size:11px;color:#7a8b9a;font-weight:700;padding:4px}.fd-month-cell{min-height:78px;border:1px solid #e2e9ef;border-radius:10px;padding:8px;background:#fff}.fd-month-cell.is-empty{visibility:hidden}.fd-month-cell.is-today{border-color:#13aeb5}.fd-month-cell b{font-size:12px}.fd-month-count{margin-top:8px;font-size:11px;color:#51687b}.fd-month-dots{display:flex;gap:3px;margin-top:6px;flex-wrap:wrap}.fd-month-dots i{width:7px;height:7px;border-radius:50%;background:#13aeb5}.fd-summary-metrics{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.frontdesk-command-head{display:none!important}.fd-party-calendar-disclosure{display:none!important}@media(max-width:900px){.fd-week-grid{grid-template-columns:repeat(7,minmax(150px,1fr))}.fd-summary-metrics{grid-template-columns:1fr}.fd-schedule-head{display:block}.fd-schedule-controls{margin-top:12px}}

/* Page isolation: Front Desk schedule belongs only to Front Desk. */
#appView > .section{display:none!important}
#appView > .section.active{display:block!important}
#appView > .section:not(#section-frontdesk) .fd-schedule-panel{display:none!important}

/* V367 — absolute page isolation: Front Desk calendar belongs ONLY to Front Desk. */
#appView .section:not(#section-frontdesk) .fd-schedule-panel{display:none!important}
#appView .section:not(#section-frontdesk) .fd-command-metrics{display:none!important}
#appView .section:not(#section-frontdesk) .fd-checkin-panel{display:none!important}
@media(max-width:900px){}

.gc-search-result{margin:0 0 14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;display:grid;grid-template-columns:1.4fr .7fr .8fr auto;gap:14px;align-items:center}.gc-search-result small{display:block;color:var(--muted,#687d91);font-size:11px;font-weight:700;margin-bottom:3px}.gc-search-result b{display:block}.gc-result-action{justify-self:end}@media(max-width:700px){.gc-search-result{grid-template-columns:1fr 1fr}.gc-result-action{justify-self:start}}


/* V378 — Front Desk live child capacity */
.fd-capacity-panel{margin-bottom:14px}
.fd-capacity-head{align-items:flex-start;gap:16px}
.fd-capacity-status{font-size:11px;font-weight:900;letter-spacing:.08em;border:1px solid #dbe5ee;border-radius:999px;padding:7px 10px;white-space:nowrap}
.fd-capacity-status.is-live{background:#eefaf9;color:#087f7c;border-color:#bce8e5}
.fd-capacity-status.is-full{background:#fff3f3;color:#b73737;border-color:#efc2c2}
.fd-capacity-status.is-error{background:#fff7ed;color:#9a5a00;border-color:#f1d3a8}
.fd-capacity-grid{display:grid;grid-template-columns:1.2fr 1fr 1.35fr;gap:14px;align-items:stretch}
.fd-capacity-main,.fd-capacity-stats,.fd-expirations{border:1px solid #e2e9ef;border-radius:14px;background:#fff;padding:14px}
.fd-capacity-number{display:flex;align-items:baseline;gap:7px}.fd-capacity-number strong{font-size:42px;line-height:1;color:#102a43}.fd-capacity-number span{font-size:15px;color:#687d91}.fd-capacity-bar{height:10px;background:#edf2f5;border-radius:999px;overflow:hidden;margin:14px 0 8px}.fd-capacity-bar i{display:block;height:100%;width:0;background:#13aeb5;border-radius:999px;transition:width .25s ease}.fd-capacity-available{font-size:13px;color:#51687b}.fd-capacity-available b{color:#102a43}
.fd-capacity-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fd-capacity-stats>div{display:flex;flex-direction:column;justify-content:center;min-width:0}.fd-capacity-stats small{font-size:9px;font-weight:850;letter-spacing:.07em;color:#7a8b9a}.fd-capacity-stats b{font-size:24px;color:#102a43;margin-top:4px}.fd-capacity-stats span{font-size:10px;color:#7a8b9a}
.fd-capacity-subhead{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:8px}.fd-capacity-subhead b{color:#17334d}.fd-capacity-subhead small{color:#7a8b9a;font-size:10px}.fd-expiration-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 0;border-top:1px solid #edf1f4}.fd-expiration-row:first-child{border-top:0}.fd-expiration-row b{font-size:12px;color:#17334d}.fd-expiration-row small{display:block;color:#7a8b9a;font-size:10px;margin-top:2px}.fd-expiration-row>strong{font-size:12px;white-space:nowrap;color:#102a43}
@media(max-width:900px){.fd-capacity-grid{grid-template-columns:1fr}.fd-capacity-stats{min-height:105px}}
@media(max-width:600px){.fd-capacity-head{display:block}.fd-capacity-status{display:inline-block;margin-top:8px}.fd-capacity-stats{grid-template-columns:repeat(3,1fr)}.fd-capacity-number strong{font-size:36px}}

/* V381 — Mobile hamburger reliability: explicit open/close state */
@media(max-width:760px){
  .mobile-nav-toggle{position:relative;z-index:60;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
  .sidebar:not(.mobile-nav-open) .admin-nav,.sidebar:not(.mobile-nav-open) .signout{display:none!important}
  .sidebar.mobile-nav-open .admin-nav,.sidebar.mobile-nav-open .signout{display:flex!important}
  .sidebar.mobile-nav-open .signout{display:block!important}
}

/* V386 Front Desk safe layout: visual-only changes; legacy DOM remains intact. */
#section-frontdesk .fd-openplay-front-panel{ margin-top: 0; }
#section-frontdesk .fd-openplay-front-panel .panel-head{ align-items: center; gap: 18px; }
#section-frontdesk .fd-openplay-front-panel .toolbar{ margin-left: auto; }
#section-frontdesk .fd-openplay-front-panel .search{ min-width: 260px; }
@media (max-width: 700px){
  #section-frontdesk .fd-openplay-front-panel .panel-head{ align-items: stretch; flex-direction: column; }
  #section-frontdesk .fd-openplay-front-panel .toolbar{ margin-left: 0; }
  #section-frontdesk .fd-openplay-front-panel .search{ min-width: 0; width: 100%; }
}

/* V388: Front Desk calendar events are fully clickable */
.fd-calendar-clickable{cursor:pointer!important;text-align:left;width:100%;color:inherit!important;}
button.fd-calendar-clickable{appearance:none;-webkit-appearance:none;}
.fd-calendar-clickable:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(16,54,82,.10);}
.fd-event-open{font-size:22px;font-weight:800;color:#167b79;align-self:center;}

.party-guests-card{margin-top:16px}.party-guest-list{display:grid;gap:8px}.party-guest-list .history-row{margin:0}.party-guests-card .profile-card-head{align-items:center}

/* V391 — cleaner operations calendar + standardized customer/waiver surfaces */
.booking-inline-metrics{display:flex;align-items:center;gap:8px;margin:0 0 10px}
.booking-inline-metrics>div{display:flex;align-items:baseline;gap:7px;padding:6px 10px;border:1px solid #e1e9ed;border-radius:10px;background:#f7fafb}
.booking-inline-metrics span{font-size:11px;color:var(--muted);font-weight:700}.booking-inline-metrics strong{font-size:16px;color:var(--navy)}
.fd-waiver-received{margin-top:12px;border-top:1px solid #e7eef1;padding-top:12px}.fd-waiver-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}.fd-waiver-head b{display:block;color:var(--navy);font-size:13px}.fd-waiver-head small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.fd-waiver-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #edf2f4}.fd-waiver-row b{font-size:12px}.fd-waiver-row small{display:block;color:var(--muted);margin-top:2px;font-size:11px}
.fd-schedule-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.fd-schedule-label small{font-size:11px;color:var(--muted);font-weight:600}
.fd-day-timeline{position:relative;display:grid;gap:7px;padding-left:2px}.fd-calendar-item{width:100%;display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:11px;text-align:left;border:1px solid #e1e9ed;border-left:4px solid #9bb9c4;border-radius:12px;padding:10px 12px;background:#fff;color:var(--navy);cursor:pointer;transition:.14s ease}.fd-calendar-item:hover{border-color:#c9d9df;box-shadow:0 4px 14px rgba(15,45,65,.08);transform:translateY(-1px)}.fd-calendar-item:not(button){cursor:default}.fd-cal-time{font-size:11px;font-weight:850;color:#5d7180}.fd-cal-main{min-width:0;display:flex;flex-direction:column;gap:2px}.fd-cal-main b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fd-cal-main small{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fd-cal-arrow{font-size:21px;color:#167b79;font-weight:800}.svc-party{border-left-color:#d14b55}.svc-open-play{border-left-color:#1c9199}.svc-rental{border-left-color:#d5a52a}.svc-workout{border-left-color:#7186b4}.svc-closed{border-left-color:#8c9297}
.fd-calendar-empty{display:grid;place-items:center;gap:3px;padding:30px;border:1px dashed #d6e2e7;border-radius:13px;background:#fbfcfd;color:var(--navy)}.fd-calendar-empty span{font-size:11px;color:var(--muted)}
.fd-week-grid-enhanced{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));gap:7px;overflow:auto;padding-bottom:3px}.fd-week-day-enhanced{border:1px solid #e1e9ed;border-radius:12px;background:#fff;min-height:230px;overflow:hidden}.fd-week-day-enhanced.is-today{border-color:#13aeb5;box-shadow:inset 0 0 0 1px #13aeb5}.fd-week-day-head{width:100%;border:0;background:#f7fafb;padding:9px 10px;text-align:left;cursor:pointer;border-bottom:1px solid #e6edf0}.fd-week-day-head span{display:block;font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}.fd-week-day-head b{display:block;margin-top:2px;font-size:12px;color:var(--navy)}.fd-week-events{display:grid;gap:5px;padding:7px}.fd-week-events .fd-calendar-item{grid-template-columns:52px minmax(0,1fr);gap:7px;padding:7px 8px;border-left-width:3px}.fd-week-events .fd-cal-arrow{display:none}.fd-week-events .fd-cal-time{font-size:10px}.fd-week-events .fd-cal-main b{font-size:11px}.fd-week-events .fd-cal-main small{font-size:10px}.fd-week-empty{font-size:11px;color:#a0adb6;padding:10px 4px;text-align:center}.fd-week-more{font-size:10px;color:#5e7584;padding:4px;text-align:center}
.fd-month-grid-enhanced{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));gap:5px;overflow:auto}.fd-month-weekday-enhanced{text-align:center;font-size:10px;color:#748796;font-weight:800;padding:4px;text-transform:uppercase}.fd-month-cell-enhanced{min-height:105px;border:1px solid #e1e9ed;border-radius:10px;background:#fff;padding:6px;overflow:hidden}.fd-month-cell-enhanced.is-today{border-color:#13aeb5;box-shadow:inset 0 0 0 1px #13aeb5}.fd-month-cell-enhanced.is-empty{visibility:hidden}.fd-month-date-button{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;background:transparent;padding:0 1px 5px;cursor:pointer;color:var(--navy)}.fd-month-date-button b{font-size:12px}.fd-month-date-button span{font-size:9px;color:var(--muted)}.fd-month-events{display:grid;gap:3px}.fd-month-event{width:100%;display:flex;gap:4px;align-items:center;text-align:left;border:0;border-radius:6px;padding:4px 5px;background:#f5f8fa;color:var(--navy);font-size:9px;cursor:pointer;min-width:0}.fd-month-event b{font-size:8px;flex:0 0 auto}.fd-month-event span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fd-month-more{font-size:9px;color:#5e7584;padding:2px 4px}
.booking-drawer{width:min(680px,96vw)!important;max-height:100vh!important;height:100vh;border-radius:0!important;margin-left:auto;overflow:auto}.modal:has(.booking-drawer){place-items:stretch end;padding:0}
.customer-standard-grid{margin-bottom:14px}.customer-standard-grid .profile-card{min-height:135px}
@media(max-width:900px){.fd-week-grid-enhanced{grid-template-columns:repeat(7,minmax(170px,1fr))}.fd-month-grid-enhanced{grid-template-columns:repeat(7,minmax(120px,1fr))}}
@media(max-width:760px){.booking-inline-metrics{width:100%}.fd-waiver-row{align-items:flex-start}.fd-waiver-row .row-actions{flex-shrink:0}.fd-calendar-item{grid-template-columns:60px minmax(0,1fr) auto}.booking-drawer{width:100vw!important}.modal:has(.booking-drawer){place-items:stretch;padding:0}.customer-standard-grid{grid-template-columns:1fr}}

/* V392 — tighter service landing + compact operational surface + colored customer profile cards */
#section-services > .admin-group-intro{display:none!important;}
.fd-operations-disclosure.legacy-hidden-ops{display:none!important;}
#section-frontdesk .fd-dashboard-detail-grid{display:none!important;}
#section-frontdesk .fd-secondary-metrics{display:none!important;}
.booking-inline-metrics{margin:0 0 8px;min-height:0;}
.booking-inline-metrics .metric{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;}
.booking-inline-metrics .metric span{font-size:10px;}
.booking-inline-metrics .metric strong{font-size:15px;}
.profile-metrics-primary{gap:10px;}
.profile-metrics-primary .profile-stat{border:1px solid #e2e9ef;border-radius:14px;padding:11px 12px;transition:transform .15s ease,box-shadow .15s ease;}
.profile-metrics-primary .profile-stat strong{display:block;font-size:1.35rem;}
.profile-metrics-primary .profile-stat span{display:block;margin-top:2px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.profile-metrics-primary .stat-bookings{background:#eef7fb;border-color:#b9dbe9;}
.profile-metrics-primary .stat-bookings strong{color:#176b86;}
.profile-metrics-primary .stat-openplay{background:#fff8e8;border-color:#f0d58b;}
.profile-metrics-primary .stat-openplay strong{color:#9a6b00;}
.profile-metrics-primary .stat-rentals{background:#fff0f0;border-color:#efc0c0;}
.profile-metrics-primary .stat-rentals strong{color:#b34747;}
.profile-metrics-primary .stat-passes{background:#edf8f1;border-color:#bfe1c9;}
.profile-metrics-primary .stat-passes strong{color:#34784a;}
.customer-card{border-left:4px solid #d7e2e9!important;}
.customer-card-bookings{border-left-color:#42a6c5!important;background:linear-gradient(90deg,#f5fbfd 0,#fff 32%);} 
.customer-card-waivers{border-left-color:#e2b53e!important;background:linear-gradient(90deg,#fffaf0 0,#fff 32%);}
.customer-card-openplay{border-left-color:#35a7a4!important;background:linear-gradient(90deg,#f1fbfa 0,#fff 32%);}
.customer-card-children{border-left-color:#d65a5a!important;background:linear-gradient(90deg,#fff5f5 0,#fff 32%);}
.customer-card-details{border-left-color:#657d92!important;background:linear-gradient(90deg,#f5f8fa 0,#fff 32%);}
.customer-card-payments{border-left-color:#496e9c!important;background:linear-gradient(90deg,#f4f7fc 0,#fff 32%);}
.customer-card-comms{border-left-color:#7d68a7!important;background:linear-gradient(90deg,#f7f4fc 0,#fff 32%);}
.customer-card-timeline{border-left-color:#5d8791!important;background:linear-gradient(90deg,#f3f8f9 0,#fff 32%);}
.customer-card .profile-card-head h4{font-weight:850;}
@media(max-width:760px){.profile-metrics-primary{grid-template-columns:repeat(2,minmax(0,1fr));}.profile-metrics-primary .profile-stat{padding:9px 10px;}}


/* V393 — one compact metric card per service, matching All Bookings */
.service-inline-metrics{display:flex;align-items:stretch;gap:0;margin:0 0 10px;border:1px solid #dfe8ed;border-radius:12px;background:#f8fbfc;overflow:hidden;width:max-content;max-width:100%;}
.service-inline-metrics .metric{display:flex;align-items:center;gap:8px;padding:7px 14px;border:0;border-radius:0;background:transparent;min-width:145px;}
.service-inline-metrics .metric + .metric{border-left:1px solid #dfe8ed;}
.service-inline-metrics .metric span{font-size:10px;color:var(--muted);font-weight:800;}
.service-inline-metrics .metric strong{font-size:15px;color:var(--navy);line-height:1;}
@media(max-width:520px){.service-inline-metrics{width:100%;}.service-inline-metrics .metric{min-width:0;flex:1;padding:7px 9px;gap:6px;}.service-inline-metrics .metric span{font-size:9px;}.service-inline-metrics .metric strong{font-size:14px;}}


/* V394 — one compact service bar: title + subtitle + metrics + Details */
.admin-module-heading.service-bar-heading{display:grid;grid-template-columns:minmax(190px,1fr) auto auto;align-items:center;gap:14px;padding:13px 18px;}
.admin-module-heading.service-bar-heading h2{margin:0;grid-column:1;grid-row:1;}
.admin-module-heading.service-bar-heading .panel-subtitle{grid-column:1;grid-row:2;}
.admin-module-heading.service-bar-heading .service-inline-metrics{grid-column:2;grid-row:1 / span 2;margin:0;align-self:center;}
.admin-module-heading.service-bar-heading .service-details-btn{grid-column:3;grid-row:1 / span 2;white-space:nowrap;align-self:center;}
.admin-module-heading.service-bar-heading .service-inline-metrics .metric{min-width:132px;padding:6px 12px;}
@media(max-width:900px){.admin-module-heading.service-bar-heading{grid-template-columns:1fr auto;}.admin-module-heading.service-bar-heading h2{grid-column:1;grid-row:1}.admin-module-heading.service-bar-heading .panel-subtitle{grid-column:1;grid-row:2}.admin-module-heading.service-bar-heading .service-inline-metrics{grid-column:1;grid-row:3;width:max-content;max-width:100%}.admin-module-heading.service-bar-heading .service-details-btn{grid-column:2;grid-row:1 / span 3;}}
@media(max-width:520px){.admin-module-heading.service-bar-heading{display:flex;flex-wrap:wrap;gap:8px;}.admin-module-heading.service-bar-heading h2{width:100%}.admin-module-heading.service-bar-heading .panel-subtitle{width:100%}.admin-module-heading.service-bar-heading .service-inline-metrics{width:100%;order:3}.admin-module-heading.service-bar-heading .service-details-btn{order:2;margin-left:auto;}}

/* V395 — one compact information bar for Customers/Waivers, Business, Marketing and System */
.admin-module-heading.admin-compact-bar{display:grid;grid-template-columns:minmax(190px,1fr) auto auto;align-items:center;gap:12px;padding:12px 18px;}
.admin-module-heading.admin-compact-bar h2{grid-column:1;grid-row:1;margin:0;}
.admin-module-heading.admin-compact-bar .panel-subtitle{grid-column:1;grid-row:2;margin:0;}
.admin-module-heading.admin-compact-bar .admin-bar-metrics{grid-column:2;grid-row:1 / span 2;display:flex;align-items:stretch;gap:0;margin:0;border:1px solid #dfe8ed;border-radius:11px;background:#f8fbfc;overflow:hidden;width:max-content;max-width:100%;}
.admin-module-heading.admin-compact-bar .admin-bar-metrics .metric{display:flex;align-items:center;gap:7px;padding:6px 12px;border:0;border-radius:0;background:transparent;min-width:110px;}
.admin-module-heading.admin-compact-bar .admin-bar-metrics .metric + .metric{border-left:1px solid #dfe8ed;}
.admin-module-heading.admin-compact-bar .admin-bar-metrics .metric span{font-size:10px;color:var(--muted);font-weight:800;}
.admin-module-heading.admin-compact-bar .admin-bar-metrics .metric strong{font-size:15px;color:var(--navy);line-height:1;}
.admin-module-heading.admin-compact-bar .admin-details-btn{grid-column:3;grid-row:1 / span 2;white-space:nowrap;align-self:center;}
@media(max-width:900px){.admin-module-heading.admin-compact-bar{grid-template-columns:1fr auto;}.admin-module-heading.admin-compact-bar h2{grid-column:1;grid-row:1}.admin-module-heading.admin-compact-bar .panel-subtitle{grid-column:1;grid-row:2}.admin-module-heading.admin-compact-bar .admin-bar-metrics{grid-column:1;grid-row:3;width:max-content;max-width:100%;}.admin-module-heading.admin-compact-bar .admin-details-btn{grid-column:2;grid-row:1 / span 3;}}
@media(max-width:520px){.admin-module-heading.admin-compact-bar{display:flex;flex-wrap:wrap;gap:8px;}.admin-module-heading.admin-compact-bar h2{width:100%;}.admin-module-heading.admin-compact-bar .panel-subtitle{width:100%;}.admin-module-heading.admin-compact-bar .admin-details-btn{order:2;margin-left:auto;}.admin-module-heading.admin-compact-bar .admin-bar-metrics{width:100%;order:3;}.admin-module-heading.admin-compact-bar .admin-bar-metrics .metric{min-width:0;flex:1;padding:7px 8px;gap:5px;}.admin-module-heading.admin-compact-bar .admin-bar-metrics .metric span{font-size:9px;}}

/* V396 — metric cards: number first, subtitle second */
.metric{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;min-width:0}
.metric strong{order:1;font-size:1.55rem;line-height:1.05;font-weight:800}
.metric span{order:2;font-size:.78rem;line-height:1.25;color:var(--muted,#64748b);font-weight:600}
.metric small{order:3;font-size:.72rem;line-height:1.25;color:var(--muted,#64748b)}
.metric strong + span{margin-top:1px}
.metric span + strong{margin-top:0}
.booking-inline-metrics .metric,.service-inline-metrics .metric{align-items:center;text-align:center}
.compact-cards .metric{min-height:72px}

/* V397 simplification pass */





.reports-tax-card{ margin-top: 14px; }
#expensesTable,#inventoryTable,#financeByService{ width:100%; min-width:0; overflow-x:auto; }
#expensesTable table,#inventoryTable table,#financeByService table{ width:100%; }
@media (max-width: 760px){  }
.report-advanced-panel[hidden]{display:none !important;}

/* V398 — consistent Admin data typography + form normalization */
.form-grid input,.form-grid select,.form-grid textarea,.search,.filter-select{font-size:13px;line-height:1.35;}
.form-grid textarea{min-height:108px;line-height:1.45;}
.form-grid label{font-size:12px;line-height:1.25;}
.detail b,.profile-detail-list b,.history-row b{font-size:13px;line-height:1.35;word-break:break-word;}
.detail small,.profile-detail-list span,.history-row small{font-size:11px;line-height:1.3;}
.table-wrap th{font-size:10px;line-height:1.2;white-space:nowrap;}
.table-wrap td{font-size:12px;line-height:1.35;vertical-align:top;}
.admin-group-module-body .settings-row b{font-size:13px;line-height:1.3;}
.admin-group-module-body .settings-row small{font-size:11px;line-height:1.35;}
.service-inline-metrics .metric strong,.admin-bar-metrics .metric strong{font-size:18px;}
.service-inline-metrics .metric span,.admin-bar-metrics .metric span{font-size:10px;line-height:1.2;}
.waiver-detail,.waiver-detail *{font-size:13px;line-height:1.45;}


@media(max-width:760px){
  .modal{padding:10px;}
  
  
  
  .form-grid input,.form-grid select,.form-grid textarea{font-size:14px;}
  .service-inline-metrics .metric strong,.admin-bar-metrics .metric strong{font-size:16px;}
}

/* V400 — make linked children names immediately visible in Customer Profile */
.customer-children-primary{grid-column:1/-1;border-left-color:#d65a5a!important;background:linear-gradient(90deg,#fff7f7 0,#fff 38%);}
.customer-children-primary .profile-card-head{align-items:center;}
.children-count-badge{min-width:34px;height:34px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;background:#fff;border:1px solid rgba(0,0,0,.08);}
.children-profile-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-top:4px;}
.child-profile-row{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid rgba(0,0,0,.07);border-radius:12px;background:#fff;}
.child-profile-index{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;background:#f4f4f4;}
.child-profile-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;}
.child-profile-main b{font-size:15px;}
.child-profile-main small{font-size:12px;opacity:.68;}
@media(max-width:700px){.children-profile-list{grid-template-columns:1fr;}.customer-children-primary{grid-column:auto;}}

/* V401 — Front Desk quick customer check-in */
.fd-quick-checkin{margin:0 0 18px;padding:16px;border:1px solid var(--border,#d9dee7);border-radius:16px;background:var(--surface,#fff)}
.fd-quick-head{margin-bottom:10px}.fd-quick-head b{display:block;letter-spacing:.08em;font-size:.78rem}.fd-quick-head small{display:block;margin-top:4px;color:var(--muted,#667085)}
.fd-quick-search{max-width:520px}.fd-quick-search input{width:100%}
.fd-quick-customer{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:13px 0;border-top:1px solid var(--border,#e5e7eb)}
.fd-quick-customer-main{display:flex;gap:12px;min-width:0}.fd-quick-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#eef2f7;font-weight:700;flex:0 0 38px}.fd-quick-customer-main small{display:block;color:var(--muted,#667085);margin-top:2px}.fd-quick-children{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;align-items:center}.fd-quick-children span{font-size:.65rem;letter-spacing:.07em;color:var(--muted,#667085);margin-right:3px}.fd-quick-children b{font-size:.82rem;padding:3px 7px;border-radius:7px;background:#f3f5f8}.fd-quick-children em{font-size:.8rem;color:var(--muted,#667085)}
.fd-quick-status{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.fd-quick-actions{display:flex;gap:7px;flex:0 0 auto}.fd-quick-actions .action-btn{white-space:nowrap}
@media(max-width:700px){.fd-quick-customer{align-items:flex-start;flex-direction:column}.fd-quick-actions{width:100%}.fd-quick-actions .action-btn{flex:1}.fd-quick-customer-main{width:100%}}

/* V403 — ultra-lean Admin navigation: service detail pages remain available to code/profile actions but are no longer top-level tabs. */
#section-services{display:none!important}
#section-people .admin-group-module[data-module="waivers"]{display:none!important}

#section-system .admin-group-module[data-module="calendar"],#section-system .admin-group-module[data-module="health"],#section-system .admin-group-module[data-module="qa"],#section-system .admin-group-module[data-module="activity"]{display:none!important}
.global-search-wrap{display:none!important}
.fd-openplay-bar{align-items:center}.fd-openplay-search{width:min(520px,100%)}.fd-openplay-search .search{min-height:48px;font-size:16px}.fd-quick-checkin{margin-top:18px}
.fd-quick-search .search{min-height:48px;font-size:16px}
.fd-quick-customer{border-radius:16px}


/* V404 — Front Desk Open Play single-row operational view */
.fd-openplay-list-head{display:flex;justify-content:space-between;align-items:center;padding:10px 2px 8px;border-top:1px solid #e8edf1;margin-top:10px}
.fd-openplay-list-head b{display:block;color:var(--navy);font-size:13px;letter-spacing:.06em}
.fd-openplay-list-head small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.fd-openplay-rows{display:flex;flex-direction:column;border:1px solid #dfe7eb;border-radius:14px;overflow:hidden;background:#fff}
.fd-openplay-row{display:grid;grid-template-columns:minmax(210px,1.7fr) 125px 150px 145px 190px;gap:10px;align-items:center;padding:10px 12px;border-top:1px solid #e8edf1;min-height:58px}
.fd-openplay-row:first-child{border-top:0}
.fd-op-guest{min-width:0}.fd-op-guest b{display:block;font-size:13px;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fd-op-guest small{display:block;color:var(--muted);font-size:10px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fd-op-cell{display:flex;align-items:center;justify-content:flex-start;min-width:0}.fd-op-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}.fd-op-actions .action-btn,.fd-inline-pay,.fd-inline-check{min-height:34px;padding:7px 10px;font-size:11px;white-space:nowrap}
.action-btn.danger{background:#fff1f1;color:#b42318;border:1px solid #f2b8b5}.action-btn.danger:hover{background:#ffe4e2}
.hero-actions{display:flex;gap:7px;position:absolute;right:16px;top:16px}.customer-hero{position:relative;padding-right:230px}
@media(max-width:1050px){.fd-openplay-row{grid-template-columns:minmax(180px,1.4fr) 110px 125px 125px 160px;gap:7px}.fd-op-actions{justify-content:flex-start}}
@media(max-width:760px){.fd-openplay-row{grid-template-columns:1fr 1fr;gap:8px;padding:11px}.fd-op-guest{grid-column:1/-1}.fd-op-actions{grid-column:1/-1;justify-content:flex-start}.fd-op-cell{min-height:30px}.customer-hero{padding-right:0;padding-top:56px}.hero-actions{left:16px;right:auto;top:12px}}

/* SEARCH MASTER — one clean interaction layer. */
#appView input.search,#appView input[id*="Search"],#appView input[id*="search"]{position:relative;z-index:2;pointer-events:auto;user-select:text;-webkit-user-select:text;cursor:text;caret-color:currentColor;opacity:1;touch-action:auto}
#section-frontdesk .fd-openplay-front-panel{position:relative;overflow:visible}
#section-frontdesk .fd-openplay-search{position:relative;width:min(520px,100%);z-index:3}
#section-frontdesk #fdQuickCustomerSearch{display:block;width:100%;min-width:260px;min-height:46px}
#section-people #customerSearch{min-height:42px}
.toolbar,.panel-head,.admin-group-module-body{overflow:visible}

/* Finance: make the first block read as one clean financial snapshot. */






/* Settings: quieter cards and clearer separation. */
#section-system{gap:12px;}
#section-system .admin-group-module{border-radius:16px;}
#section-system .admin-module-heading{min-height:58px;}
#section-system .admin-group-module-body{padding-top:10px;}
#section-system .admin-disclosure:not([open]){margin-top:4px;}
#section-system .admin-disclosure[open]{box-shadow:none;}
#section-system .settings-list{display:flex;flex-direction:column;gap:8px;}
#section-system .settings-group{border:1px solid var(--line,#dfe3ea);border-radius:12px;background:#fff;overflow:hidden;}
#section-system .settings-group-head{padding:11px 14px;background:#f7f9fb;border-bottom:1px solid var(--line,#dfe3ea);display:flex;justify-content:space-between;gap:10px;}
#section-system .settings-group .settings-row{padding:11px 14px;}

/* Events gets its own clean page rather than living inside Services. */
#section-events .admin-group-module{margin:0;}
#section-events .admin-group-module-body{padding-top:10px;}
#section-events .event-signup-admin-row{background:#fff;border:1px solid var(--line,#dfe3ea);border-radius:12px;margin:8px 0;padding:12px 14px;}
/* V421 visual cleanup */







.expense-month-folder{border:1px solid var(--line);border-radius:15px;background:#fff;margin:10px 0;overflow:hidden}
.expense-month-folder>summary{padding:13px 15px;font-weight:850;color:var(--navy);cursor:pointer;display:flex;justify-content:space-between;gap:12px}
.event-signup-admin-row{padding:16px 0;border-bottom:1px solid var(--line)}
.event-signup-admin-row:last-child{border-bottom:0}
#section-events .admin-module-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
#section-events .admin-group-module-body{padding-top:12px}
#section-events .service-inline-metrics{margin-bottom:12px}


#section-marketing [data-module="promos"]{margin-bottom:12px}
#section-marketing [data-module="communications"]{margin-top:12px}
#section-system .admin-group-module{margin-bottom:12px}
@media(max-width:760px){}

/* V422 cleanup */
.admin-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:4px 2px}
.admin-page-header h2{margin:0 0 4px;font-size:24px}.admin-page-header .panel-subtitle{margin:0}

.event-signup-admin-row{gap:18px;padding:18px 0}.event-signup-admin-row .row-actions{flex-wrap:wrap;justify-content:flex-end}.event-signup-admin-row .event-capacity-input{width:115px;min-width:115px}.event-capacity-track{height:8px;border-radius:999px;background:#e8edf2;overflow:hidden;margin:9px 0 5px}.event-capacity-track span{display:block;height:100%;background:currentColor;border-radius:999px}
@media(max-width:760px){.admin-page-header{align-items:flex-start}.event-signup-admin-row{display:block}.event-signup-admin-row .row-actions{justify-content:flex-start;margin-top:12px}}

/* V422: Inventory is a visible Business module; Finance links directly to it. */



/* V431 SURGICAL CLEANUP — one heading, one data surface, no stacked summaries */
.section-actions-only{display:flex;justify-content:flex-end;margin:0 0 10px}
.customer-control-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.customer-control-row .primary-metrics{margin:0;flex:1}
.customers-clean-module>.admin-group-module-body{padding-top:0}









.expenses-clean-metrics{max-width:520px}
#section-events .admin-group-module+.admin-group-module{margin-top:14px}
#section-events .admin-group-module .admin-module-heading,#section-people .admin-group-module .admin-module-heading{padding-top:12px}
/* Prevent browser/autofill/search overlays from looking like admin cards inside modals */


@media(max-width:760px){
 
 .customer-control-row .action-btn{width:100%}
 
 
}

/* V437 surgical cleanup: keep the existing Admin layout; only compress Finance into information-dense rows. */








@media(max-width:760px){}

/* V438 — Finance integrated summary: one line instead of repeated metric cards. */











@media(max-width:760px){}

/* V442 — integrated Events + clearly separated Finance / Tax blocks */
.event-admin-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;margin:0 0 14px;box-shadow:0 6px 20px rgba(16,42,67,.05)}
.event-admin-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.event-admin-card-head h3{margin:0;color:var(--navy);font-size:18px}.event-admin-card-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.event-admin-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0;padding:10px 12px;background:#f8fafc;border-radius:12px;font-size:12px}.event-admin-edit-row{display:flex;align-items:end;gap:8px;margin:10px 0 16px}.event-admin-edit-row label{font-size:11px;font-weight:800;color:var(--navy)}.event-admin-edit-row input{display:block;width:140px;margin-top:5px}.event-admin-customers{border-top:1px solid var(--line);padding-top:14px}.event-admin-customers-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.event-admin-customers-head h4{margin:0;font-size:13px;color:var(--navy)}.event-admin-customers-head span{font-size:11px;color:var(--muted)}.event-customer-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #edf1f5}.event-customer-row:last-child{border-bottom:0}.event-customer-row b{font-size:12px}.event-customer-row small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.event-children-line{font-size:11px;margin-top:6px}.event-customer-actions{display:flex;align-items:center;gap:8px}.event-customer-actions>b{font-family:ui-monospace,monospace;font-size:11px}.event-admin-note{padding:10px 12px;color:var(--muted);font-size:11px;border-top:1px solid var(--line)}

@media(max-width:700px){.event-admin-card-head,.event-admin-customers-head,.event-customer-row{flex-direction:column}.event-admin-edit-row{flex-wrap:wrap}.event-admin-edit-row input{width:100%}.event-admin-edit-row label{width:100%}.event-customer-actions{justify-content:space-between}}
/* V443 — final admin cleanup */






.event-admin-edit-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 16px;padding-top:10px;border-top:1px solid #edf1f4}
.event-admin-edit-row .action-btn{margin:0}
.event-admin-card{border-left:4px solid #13aeb5}
.event-admin-card.inactive{opacity:.72}






/* Celebrate Admin — consolidated operations UI */
.clean-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 0 16px}.clean-page-head.compact{align-items:center}.clean-page-head h2{margin:2px 0 4px;font-size:28px}.clean-page-head .eyebrow{letter-spacing:.14em;font-size:11px;font-weight:900;color:#13a7aa}.inline-metrics{display:flex;align-items:center;gap:0;border:1px solid #dbe6ee;border-radius:14px;background:#fff;box-shadow:0 6px 20px rgba(16,42,67,.05);overflow:hidden;margin-bottom:16px}.inline-metrics>span{padding:12px 18px;border-right:1px solid #e4ebf1;color:#6b7f91;font-size:12px;white-space:nowrap}.inline-metrics>span:last-child{border-right:0}.inline-metrics b{color:#102a43;font-size:18px;margin-right:4px}.clean-list-panel{overflow:hidden}.clean-list-panel>.panel-head{align-items:center}.clean-list-panel>.panel-head h2{margin:0}.event-row-card{border-top:1px solid #e5edf3;padding:16px 2px}.event-row-card:first-child{border-top:0}.event-row-main{min-width:0}.event-row-title{display:flex;align-items:center;gap:10px}.event-row-title h3{margin:0;font-size:18px;color:#102a43}.event-row-info{margin-top:5px;color:#65798c;font-size:13px}.event-row-desc{margin-top:5px;color:#73879a;font-size:12px}.event-row-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.event-row-registrations{margin-top:12px;border:1px solid #dfe8ef;border-radius:12px;background:#f8fafc;padding:4px 12px}.event-registration{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid #e6edf2}.event-registration:first-child{border-top:0}.event-registration small{display:block;color:#718396;margin:2px 0 5px}.event-registration-actions{display:flex;align-items:center;gap:9px}.event-form-actions{display:flex;gap:8px;align-items:center}.action-btn.danger{border-color:#e8b5b5;background:#fff5f5;color:#a22}.customer-control-row{display:none}.fd-schedule-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:16px;align-items:start}.fd-mini-month{border:1px solid #dce7ee;border-radius:14px;background:#fbfdfe;padding:12px;position:sticky;top:16px}.fd-mini-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.fd-mini-head b{font-size:13px;color:#102a43}.fd-mini-head span{font-size:10px;color:#7a8b9a}.fd-mini-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}.fd-mini-grid>b{font-size:9px;color:#8a99a7;padding:3px}.fd-mini-grid button,.fd-mini-grid span{height:27px;border:0;background:transparent;border-radius:7px;font-size:11px;color:#30485c}.fd-mini-grid button{cursor:pointer}.fd-mini-grid button:hover{background:#edf5f8}.fd-mini-grid button.today{background:#10324d;color:#fff;font-weight:800}.fd-mini-grid button.has-events:not(.today){box-shadow:inset 0 -2px 0 #16a7a9;font-weight:800}.fd-week-grid-enhanced{min-width:720px}.fd-schedule-panel{overflow:hidden}
@media(max-width:900px){.clean-page-head{align-items:flex-start;flex-direction:column}.inline-metrics{width:100%;overflow:auto}.fd-schedule-layout{grid-template-columns:1fr}.fd-mini-month{position:static;order:-1}.event-row-actions{margin-top:9px}.event-registration{flex-direction:column}.event-registration-actions{justify-content:space-between}}
.fd-snack-group{grid-column:1/-1}.fd-snack-group-title{font-size:10px;font-weight:900;letter-spacing:.12em;color:#718496;margin:4px 0 7px;padding:0 2px}.fd-snack-group-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fd-snack-panel{margin-top:16px}.fd-snack-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fd-snack-item{display:flex;align-items:center;gap:10px;border:1px solid #dce6ed;border-radius:11px;padding:10px 12px;background:#fff;cursor:pointer}.fd-snack-item>input{width:17px;height:17px}.fd-snack-item>span:nth-child(2){flex:1;min-width:0}.fd-snack-item b{display:block;color:#17344c}.fd-snack-item small{display:block;color:#718496;font-size:11px;margin-top:2px}.fd-snack-qty{display:flex!important;align-items:center;gap:6px}.fd-snack-qty button{width:25px;height:25px;border:1px solid #d6e2e9;background:#f7fafc;border-radius:6px;font-weight:800;cursor:pointer}.fd-snack-qty b{min-width:18px;text-align:center}.fd-snack-checkout{display:grid;grid-template-columns:1fr 300px;gap:16px;border-top:1px solid #e3ebf1;margin-top:14px;padding-top:14px}.fd-snack-cart{margin-top:7px;color:#65798c;font-size:12px}.fd-snack-cart>div{display:flex;justify-content:space-between;padding:3px 0}.fd-snack-total{display:grid;grid-template-columns:1fr 1fr;gap:7px;align-items:center}.fd-snack-total small{grid-column:1/-1;color:#718496;font-size:10px;font-weight:800}.fd-snack-total>b{font-size:22px;color:#102a43}.fd-snack-total select{padding:9px;border:1px solid #d5e1e8;border-radius:8px}.fd-snack-total button{grid-column:1/-1}@media(max-width:700px){.fd-snack-items,.fd-snack-checkout{grid-template-columns:1fr}.fd-snack-total{grid-template-columns:1fr 1fr}}

/* Business workspaces: one card, tabs swap the content in place. */
.business-workspace-card{overflow:hidden}
.business-workspace-card .admin-module-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.workspace-tabs{display:flex;gap:4px;align-items:flex-end;border-bottom:1px solid var(--border,#dfe5ea);padding:0 4px;margin:0 0 0}
.workspace-tab{appearance:none;border:0;background:transparent;padding:11px 14px;margin:0;color:var(--muted,#667085);font:inherit;font-weight:700;border-bottom:3px solid transparent;cursor:pointer}
.workspace-tab:hover{color:var(--text,#172033)}
.workspace-tab.active{color:var(--text,#172033);border-bottom-color:var(--accent,#0f8f88)}
.workspace-pane{padding-top:16px}
.workspace-pane[hidden]{display:none!important}
.workspace-toolbar{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-bottom:12px}











.expenses-clean-metrics{margin-bottom:12px}
@media(max-width:1000px){}
@media(max-width:620px){.workspace-tab{padding:9px 9px;font-size:12px}.workspace-toolbar{justify-content:stretch}.workspace-toolbar .search{flex:1;min-width:160px}}

/* V502 BUSINESS SINGLE WORKSPACE */
@media(max-width:760px){}
/* V502 BUSINESS SINGLE WORKSPACE */
@media(max-width:760px){}

/* V505: one page surface — section content owns its title; remove duplicate global page title */
.topbar > div:first-child{display:none!important;}
/* V505: only the selected Business pane is rendered */



/* V506 Front Desk calendar containment + snack visibility fixes */
.fd-schedule-layout{min-width:0;}
.fd-schedule-layout > #fdScheduleView{min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;}
.fd-week-grid-enhanced{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0;width:100%;overflow:visible;}
@media(max-width:900px){.fd-schedule-layout > #fdScheduleView{overflow-x:auto}.fd-week-grid-enhanced{grid-template-columns:repeat(7,minmax(150px,1fr));min-width:1050px;width:1050px;}}
.fd-snack-items{min-width:0;overflow:visible;}

/* CELEBRATE TYPOGRAPHY CLEANUP — V507 */
html,body,#app,.app-shell,.main,.section,.panel,.metric,.topbar,.sidebar,nav,header,footer,main,section,article,div,span,p,small,strong,b,h1,h2,h3,h4,h5,h6,label,button,input,select,textarea,table,th,td,a,li,summary,.badge,.action-btn,.nav-btn,.signout,.admin-chip,.eyebrow,.muted-line,.notice,.toolbar,.filter-select{font-family:Arial,Helvetica,sans-serif !important;}
body{font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
h1,h2,h3,h4,h5,h6{font-family:Arial,Helvetica,sans-serif !important;}
button,input,select,textarea{font-family:Arial,Helvetica,sans-serif !important;}
.event-customer-actions>b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace !important;}
.topbar h1{font-weight:700;letter-spacing:-.02em;}
.panel h2,.panel-head h2{font-weight:700;}

/* V508 — BUSINESS CLEAN WORKSPACE
   One visual card, one primary tab row, no nested module card treatment. */




















@media(max-width:760px){
 
 
 
 
 
}

/* V509 BUSINESS ACTION CLEANUP */









@media(max-width:760px){}


/* V510 BUSINESS — compact operating workspace */






































@media(max-width:900px){}
@media(max-width:650px){}
/* V511 — keep Expenses and Inventory on one workspace surface */
.business-single-pane{padding-top:8px}





@media(max-width:800px){}
/* V512: plain-language Finance single-page workspace */
















/* V513 simple business forms */
.compact-business-form{gap:12px!important}
.compact-business-form .field-label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#647b90;margin-bottom:6px}
.payment-choice{display:flex;gap:8px;align-items:center}
.payment-choice-btn{border:1px solid #d7e2ea;background:#fff;border-radius:10px;padding:9px 14px;font-weight:800;color:#27435d;cursor:pointer;display:inline-flex;align-items:center;gap:7px}
.payment-choice-btn.active{border-color:#0aa7a8;background:#eafafa;box-shadow:0 0 0 1px #0aa7a8 inset;color:#123c53}
.payment-choice-btn:hover{border-color:#0aa7a8}
.compact-business-form .form-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}
@media(max-width:700px){.compact-business-form .form-footer{flex-direction:column;align-items:stretch}.payment-choice{width:100%}.payment-choice-btn{flex:1;justify-content:center}}


/* V515 — Business compact information density + restore nested Admin pages */
#appView > .section{display:none!important;}
#appView > .section.active{display:block!important;}















@media(max-width:760px){}

/* V515: hard-isolate top-level pages so Gift Cards, Marketing and Settings cannot disappear behind hidden-section rules. */
#appView > .section.active{display:block!important;visibility:visible!important;opacity:1!important;}
#appView > .section:not(.active){display:none!important;}
/* V521 — keep every primary Admin page inside the app shell; improve Finance summary readability */
#appView > .main > .section{display:none!important;}
#appView > .main > .section.active{display:block!important;visibility:visible!important;opacity:1!important;}





/* V523 — Business Finance alignment cleanup */























@media(max-width:900px){
  
}
@media(max-width:650px){
  
  
  
  
  
  
}

/* V524 — Business table-first workspace for Expenses + Inventory */
















@media(max-width:1000px){}
@media(max-width:650px){}

/* V525 — force Business Expenses + Inventory to use the same table-first layout even if legacy markup is present */









@media(max-width:900px){}

/* V527 — Business final cleanup: one expense table + visible finance summary surfaces */
















/* Finance: the three breakdown areas are visible as compact bordered surfaces. */












@media(max-width:900px){}
@media(max-width:650px){}

/* V528 — restore visible Expenses table after the compact Business cleanup */




/* V530 — hard guarantee that the Expenses table is visible */






/* V531 — Expenses final table: one total in header, real line items in table. */













/* V532 — Expenses modal form cleanup */




















@media(max-width:820px){
  
  
  
  
  
}
@media(max-width:560px){
  
  
  
  
}

/* V536 — Finance compact / single-workspace cleanup */
























@media(max-width:850px){}
@media(max-width:650px){}
/* V537 — expense tax / charge schedule + inventory photos */












@media(max-width:700px){}

/* V539 — inventory compact table + stock status dots */







/* Events — compact, table-first layout */
#section-events .events-page-head{margin-bottom:12px}
#section-events .events-list-panel{margin-top:0}
#section-events .events-list-panel>.panel-head{padding-bottom:10px}
#section-events .events-table-wrap{width:100%;overflow-x:auto}
#section-events .events-table-head,#section-events .event-table-row{display:grid;grid-template-columns:minmax(220px,2.1fr) minmax(145px,1fr) minmax(115px,.7fr) minmax(90px,.55fr) minmax(300px,1.55fr);align-items:center;gap:14px;min-width:900px}
#section-events .events-table-head{padding:9px 14px;border-bottom:1px solid #dfe8ef;background:#f6f9fb;color:#718396;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
#section-events .event-table-row{padding:12px 14px;border-bottom:1px solid #e5edf3;background:#fff}
#section-events .event-table-row:last-of-type{border-bottom:0}
#section-events .event-cell{min-width:0;color:#30485c;font-size:13px}
#section-events .event-cell strong{display:block;color:#102a43;font-size:14px}
#section-events .event-cell small{display:block;margin-top:3px;color:#7a8b9a;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#section-events .event-count{font-weight:800;color:#102a43}
#section-events .event-actions-cell{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:nowrap}
#section-events .event-actions-cell .action-btn{white-space:nowrap;padding:7px 10px}
#section-events .event-inline-registrations{grid-column:1 / -1;margin:0 14px 10px;border:1px solid #dfe8ef;border-radius:10px;background:#f8fafc;padding:4px 12px}
#section-events .event-inline-registrations[hidden]{display:none}
#section-events .event-registration{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #e6edf2}
#section-events .event-registration:first-child{border-top:0}
#section-events .event-registration small{display:block;color:#718396;margin:2px 0 5px}
#section-events .event-registration-actions{display:flex;align-items:center;gap:9px}
#section-events .badge.warning{background:#fff7df;border-color:#ead28b;color:#8a6400}
@media(max-width:900px){#section-events .events-table-head{display:none}#section-events .event-table-row{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;min-width:0;gap:8px;padding:12px 10px}#section-events .event-date-cell{grid-column:2}.event-actions-cell{grid-column:1 / -1;justify-content:flex-start!important}.event-inline-registrations{margin-left:0!important;margin-right:0!important}}
/* V542: Gift card values are edited directly in the table. */






@media(max-width:700px){}

/* V547: Expenses header — separate the summary from the filter/action toolbar so it stays readable. */








@media(max-width:900px){
  
  
}
@media(max-width:650px){
  
  
  
  
}

/* V554 — cleaner admin hierarchy: keep primary titles, remove repetitive helper subtitles/eyebrows */
.panel-subtitle,.admin-module-heading > .panel-subtitle,.admin-module-heading p.panel-subtitle,.admin-page-header > .panel-subtitle,.clean-page-head > .panel-subtitle,.eyebrow,.admin-module-heading.service-bar-heading .panel-subtitle,.admin-module-heading.admin-compact-bar .panel-subtitle,.admin-group-intro .panel-subtitle{
  display: none !important;
}

/* Keep module headers compact after removing secondary text. */
.admin-module-heading{
  min-height: 0 !important;
}
.admin-module-heading.service-bar-heading,.admin-module-heading.admin-compact-bar{
  padding-top: 12px;
  padding-bottom: 12px;
}

/* V555: remove secondary section subtitles/kickers for a cleaner admin */
.panel-subtitle{display:none!important;}

/* V558 — manual customer creation + printed waiver photo archive */
.customer-card-printed-waivers{border-left-color:#1f9ca8!important;background:linear-gradient(90deg,#f1fbfc 0,#fff 34%);}
.printed-waiver-photo-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--border,#e5e7eb);}
.printed-waiver-thumb{width:58px;height:58px;border-radius:10px;overflow:hidden;background:#eef2f7;display:grid;place-items:center;flex:0 0 58px;font-size:.65rem;font-weight:800;color:#667085;}
.printed-waiver-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.printed-waiver-photo-meta{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px;}
.printed-waiver-photo-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.printed-waiver-photo-meta small{color:var(--muted,#667085);}
@media(max-width:700px){.printed-waiver-photo-row{align-items:flex-start;flex-wrap:wrap}.printed-waiver-photo-meta{min-width:calc(100% - 74px)}.printed-waiver-photo-row .row-actions{width:100%;margin-left:70px}.printed-waiver-photo-row .row-actions .action-btn{flex:1}}

.printed-waiver-upload-card{display:flex;align-items:center;gap:14px;padding:16px;border:2px dashed #1f9ca8;border-radius:14px;background:#f1fbfc;cursor:pointer;transition:.15s ease;}
.printed-waiver-upload-card:hover{background:#e8f8fa;transform:translateY(-1px);}
.printed-waiver-upload-card input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;}
.printed-waiver-upload-icon{width:48px;height:48px;border-radius:12px;background:#fff;display:grid;place-items:center;font-size:1.5rem;box-shadow:0 1px 4px rgba(0,0,0,.08);flex:0 0 48px;}
.printed-waiver-upload-card span:nth-child(2){display:flex;flex-direction:column;gap:3px;}
.printed-waiver-upload-card small{color:var(--muted,#667085);}
.printed-waiver-upload-preview{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid var(--border,#e5e7eb);border-radius:12px;background:#fff;}
.printed-waiver-upload-preview img{width:84px;height:84px;object-fit:cover;border-radius:8px;display:block;}
.printed-waiver-upload-preview div{display:flex;flex-direction:column;gap:4px;}
.printed-waiver-upload-preview small{color:var(--muted,#667085);}

/* V560 — Celebrate visual refresh: brighter, friendlier, still clean */
:root{
  --celebrate-coral:#ff5d68;
  --celebrate-pink:#ff86a5;
  --celebrate-sky:#65d6df;
  --celebrate-gold:#ffd45a;
  --celebrate-purple:#9b7bea;
}
body{background:linear-gradient(135deg,#f4fbfc 0%,#fff8f7 48%,#f7f4ff 100%);}
.main{position:relative;padding:28px 30px 36px;overflow:hidden;}
.main:before{content:"";position:absolute;z-index:-1;right:-90px;top:-120px;width:360px;height:280px;border-radius:48% 52% 55% 45%;background:linear-gradient(135deg,rgba(101,214,223,.22),rgba(255,212,90,.20),rgba(255,134,165,.18));transform:rotate(-8deg);}
.main:after{content:"";position:absolute;z-index:-1;left:-120px;bottom:-150px;width:340px;height:260px;border-radius:50%;background:radial-gradient(circle at 35% 40%,rgba(255,93,104,.13),rgba(155,123,234,.08) 55%,transparent 72%);}
.topbar{margin:-28px -30px 24px;padding:18px 30px 17px;background:linear-gradient(100deg,rgba(224,250,251,.92),rgba(255,247,235,.9) 55%,rgba(255,235,242,.92));border-bottom:1px solid rgba(211,225,232,.9);position:relative;overflow:hidden;}
.topbar:after{content:"";position:absolute;right:18%;top:-58px;width:170px;height:120px;border-radius:50%;background:rgba(255,212,90,.18);box-shadow:105px 28px 0 15px rgba(101,214,223,.11),205px -8px 0 6px rgba(255,134,165,.10);pointer-events:none;}
.topbar>div,.topbar-tools{position:relative;z-index:1;}
.topbar h1{font-size:28px;letter-spacing:-.03em;}
.topbar .eyebrow{color:var(--celebrate-coral);}
.admin-chip{border-color:#dce8ee;box-shadow:0 8px 22px rgba(16,42,67,.07);}
.top-signout{border-radius:13px!important;background:#fff!important;color:var(--navy)!important;border:1px solid #dce8ee!important;box-shadow:0 6px 18px rgba(16,42,67,.06);}
.sidebar{background:linear-gradient(180deg,#0c2943 0%,#102f4d 62%,#0c2741 100%);box-shadow:8px 0 30px rgba(16,42,67,.08);}
.brand-logo{margin-bottom:28px;}
.admin-nav-flat .nav-btn{position:relative;border:1px solid transparent;transition:.18s ease;}
.admin-nav-flat .nav-btn:hover{background:rgba(255,255,255,.10);transform:translateX(2px);}
.admin-nav-flat .nav-btn.active{background:linear-gradient(90deg,rgba(32,167,165,.98),rgba(51,195,201,.88));box-shadow:0 8px 20px rgba(32,167,165,.22);}
.admin-nav-flat .nav-btn:before{width:5px!important;border-radius:99px;}
.admin-nav-flat .nav-btn[data-section="frontdesk"]:after{content:"⌂";}
.admin-nav-flat .nav-btn[data-section="events"]:after{content:"★";}
.admin-nav-flat .nav-btn[data-section="people"]:after{content:"●";}
.admin-nav-flat .nav-btn[data-section="giftcards"]:after{content:"◆";}
.admin-nav-flat .nav-btn[data-section="business"]:after{content:"▣";}
.admin-nav-flat .nav-btn[data-section="marketing"]:after{content:"➤";}
.admin-nav-flat .nav-btn[data-section="system"]:after{content:"⚙";}
.admin-nav-flat .nav-btn:after{position:absolute;right:14px;font-size:12px;opacity:.8;color:var(--celebrate-gold);}
.admin-nav-flat .nav-btn.active:after{color:#fff;}
.panel,.metric{border-color:#e1eaf0;box-shadow:0 10px 28px rgba(16,42,67,.055);}
.panel{border-radius:20px;}
.metric{border-radius:18px;position:relative;overflow:hidden;}
.metric:after{content:"";position:absolute;right:-24px;top:-28px;width:78px;height:78px;border-radius:50%;background:rgba(101,214,223,.10);}
.action-btn{background:linear-gradient(135deg,#0d5774,#117e91)!important;box-shadow:0 6px 14px rgba(13,87,116,.14);}
.action-btn.secondary{background:#eef8fa!important;color:#0d5774!important;box-shadow:none;}
.action-btn.danger{background:linear-gradient(135deg,#d84b4b,#ff6470)!important;}
.action-btn:hover{filter:brightness(1.03);transform:translateY(-1px);}
.clean-page-head{padding:4px 2px 4px;}
.clean-page-head h2{font-size:36px;letter-spacing:-.035em;}
.clean-page-head .eyebrow{color:var(--celebrate-coral);}
.inline-metrics{border:0;background:transparent;gap:10px;}
.inline-metrics>span{padding:14px 18px;border:1px solid #dce9ef;border-radius:15px;background:#fff;box-shadow:0 7px 18px rgba(16,42,67,.045);color:#61778a;}
.inline-metrics>span:first-child{background:linear-gradient(135deg,#e9fbfa,#f6ffff);border-color:#c9eeee;}
.inline-metrics>span:nth-child(2){background:linear-gradient(135deg,#fff0f2,#fff9f9);border-color:#ffd8dc;}
.inline-metrics b{color:var(--navy);font-size:18px;}
.clean-list-panel{border-radius:22px;padding:20px;}
.clean-list-panel .panel-head{padding-bottom:12px;align-items:center;}
.clean-list-panel .panel-head h2{font-size:22px;}
.clean-list-panel .panel-head h2:after{content:"";display:block;width:52px;height:4px;border-radius:9px;background:linear-gradient(90deg,var(--teal),var(--celebrate-sky));margin-top:8px;}
.clean-list-panel .row-actions{align-items:center;}
.clean-list-panel #addCustomerBtn{background:linear-gradient(135deg,#ff5d68,#ff3f79)!important;color:#fff!important;border-radius:13px;padding:10px 16px;font-size:14px;box-shadow:0 8px 18px rgba(255,93,104,.2);}
.clean-list-panel #customerSearch{border-radius:13px;border-color:#cfdfe8;min-width:310px;}
.clean-list-panel #customersTable{margin-top:5px;}
.clean-list-panel table{border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid #e0e9ef;border-radius:16px;}
.clean-list-panel th{background:linear-gradient(90deg,#eef8fb,#f7f8fc);color:#496177;padding:12px 13px;}
.clean-list-panel td{padding:13px;border-bottom-color:#edf2f5;}
.clean-list-panel tr:last-child td{border-bottom:0;}
.clean-list-panel tbody tr:hover td{background:#fbfdfe;}
.badge.good{background:#dff8ed;color:#08775d;}
.badge.warn{background:#fff1cc;color:#9a6900;}
.badge.bad{background:#ffe2e5;color:#c23c4b;}
.search{border-color:#cfdee6;}
.search:focus{border-color:var(--celebrate-sky);box-shadow:0 0 0 3px rgba(101,214,223,.15);}
.customers-clean-module .admin-group-module-body{padding-top:2px;}
.customer-card-printed-waivers{border-color:#d7edf0;background:linear-gradient(135deg,#fbffff,#f7fbfc);}
.printed-waiver-upload-card{border:2px dashed #8fd9dc!important;background:linear-gradient(135deg,#f1fcfc,#fff7f7);border-radius:16px!important;padding:18px!important;cursor:pointer;display:flex!important;align-items:center;gap:14px;}
.printed-waiver-upload-card:hover{border-color:var(--celebrate-coral)!important;background:#fffafa;}
.printed-waiver-upload-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:#fff0f2;font-size:22px;}
.printed-waiver-upload-card small{display:block;color:var(--muted);font-weight:500;margin-top:4px;}
.printed-waiver-upload-preview{margin-top:10px;padding:10px;border:1px solid #dce8ed;border-radius:14px;background:#fff;display:flex;gap:12px;align-items:center;}
.printed-waiver-upload-preview img{width:110px;height:80px;object-fit:cover;border-radius:10px;border:1px solid #e0e8ec;}

@media(max-width:900px){.main{padding:20px}.topbar{margin:-20px -20px 18px;padding:15px 20px}.clean-page-head{align-items:flex-start!important;flex-direction:column}.inline-metrics{width:100%;}.inline-metrics>span{flex:1;}.clean-list-panel #customerSearch{min-width:0;}.clean-list-panel .panel-head{align-items:flex-start;}}
@media(max-width:680px){.main{padding:14px}.topbar{margin:-14px -14px 14px;padding:12px 14px}.topbar .eyebrow{display:none}.topbar h1{font-size:23px}.topbar-tools{flex-direction:row!important;align-items:center!important}.global-search-wrap{display:none}.clean-page-head h2{font-size:30px}.inline-metrics{flex-wrap:wrap}.inline-metrics>span{min-width:130px}.clean-list-panel .row-actions{width:100%;}.clean-list-panel #customerSearch{width:100%;}.clean-list-panel #addCustomerBtn{width:100%;}}

/* V561 — customer profile visual cleanup */
.customer-profile-v2{display:grid;gap:14px}
.customer-profile-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:4px 0 8px}
.customer-profile-identity{display:flex;align-items:center;gap:14px;min-width:0}
.customer-profile-avatar{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(135deg,#c9f4f1,#e6ddff);color:#10365a;font-size:21px;font-weight:950;box-shadow:0 8px 22px rgba(16,42,67,.10);border:2px solid #fff}
.customer-profile-name h3{margin:0;color:var(--navy);font-size:24px;line-height:1.05}
.customer-contact-line{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;color:#536d7b;font-size:13px;font-weight:650}
.customer-profile-name>small{display:block;margin-top:6px;color:#748692;font-size:12px}
.customer-profile-hero-actions{display:flex;gap:8px;flex-wrap:wrap}
.customer-profile-stats{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none;margin:0}
.customer-profile-stats .profile-stat{min-height:70px;display:flex;flex-direction:column;justify-content:center}
.customer-quick-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.customer-quick-action{display:flex;align-items:center;gap:11px;border:1px solid #dce7eb;border-radius:15px;padding:12px 13px;text-align:left;cursor:pointer;background:#fff;box-shadow:0 6px 18px rgba(16,42,67,.05);transition:.15s ease}
.customer-quick-action:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(16,42,67,.08)}
.customer-quick-action:disabled{opacity:.5;cursor:not-allowed;transform:none}
.customer-quick-action>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font-weight:950;font-size:16px;flex:0 0 auto}
.customer-quick-action b{display:block;color:var(--navy);font-size:13px}
.customer-quick-action small{display:block;margin-top:3px;color:#71838d;font-size:10px;line-height:1.25}
.customer-quick-action.teal>span{background:#d9f6f3;color:#078a8e}.customer-quick-action.coral>span{background:#ffe1e5;color:#ed3e58}.customer-quick-action.yellow>span{background:#fff0c7;color:#a16a00}.customer-quick-action.navy>span{background:#e3edf7;color:#174f7b}
.customer-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.customer-profile-section{position:relative;overflow:hidden;padding:15px}
.customer-profile-section:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:4px}
.customer-profile-section.accent-teal:before{background:#13b4ad}.customer-profile-section.accent-yellow:before{background:#f1bb32}.customer-profile-section.accent-coral:before{background:#f45b68}.customer-profile-section.accent-blue:before{background:#4ba9d2}.customer-profile-section.accent-purple:before{background:#9a73e8}
.profile-card-head{margin-bottom:11px}.profile-card-head h4{font-size:14px}.profile-card-head small{display:block;color:#71838d;margin-top:3px;font-size:11px}.section-count{min-width:28px;height:28px;padding:0 8px;display:grid;place-items:center;border-radius:10px;background:#f1f6f8;color:var(--navy);font-weight:900}
.profile-highlight{padding:11px 12px;border-radius:12px;background:linear-gradient(135deg,#eefbfa,#f6fbff);border:1px solid #d6efed;margin-bottom:10px}.profile-highlight span{display:block;color:#6a7e89;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.profile-highlight b{display:block;margin-top:4px;color:#123a59;font-size:14px}
.compact-action{padding:6px 9px!important;font-size:11px!important}
.printed-waiver-section{padding:15px}.printed-waiver-section .profile-card-head{align-items:center}.coral-btn{background:#f04f67!important;color:#fff!important}.coral-btn:hover{background:#df3d56!important}
.customer-secondary-details{margin-top:0}
.customer-secondary-details>summary{background:#f8fafb}
@media(max-width:760px){.customer-profile-hero{align-items:flex-start;flex-direction:column}.customer-profile-hero-actions{width:100%}.customer-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-quick-actions{grid-template-columns:1fr 1fr}.customer-profile-grid{grid-template-columns:1fr}}


/* V563 — Celebrate customer profile visual rebuild */




.customer-profile-v2{display:grid;gap:16px}
.customer-profile-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;border-radius:22px;background:linear-gradient(115deg,#ffffff 0%,#eaf9f9 55%,#fff1f3 100%);border:1px solid #d7eaed;box-shadow:0 8px 24px rgba(10,55,75,.07);position:relative;overflow:hidden}
.customer-profile-hero:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-70px;top:-100px;background:rgba(255,210,77,.22);pointer-events:none}
.customer-profile-identity{display:flex;align-items:center;gap:15px;position:relative;z-index:1}
.customer-profile-avatar{width:68px;height:68px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#19aeb0,#08779b);color:white;font-size:22px;font-weight:950;box-shadow:0 8px 18px rgba(15,131,150,.22)}
.customer-profile-name h3{margin:0 0 7px!important;font-size:26px!important;line-height:1;color:#0b3150!important}
.customer-contact-line{display:flex;flex-wrap:wrap;gap:7px 15px;color:#456578;font-size:13px;font-weight:700}
.customer-profile-name>small{display:block;margin-top:7px;color:#718795;font-size:12px}
.customer-profile-hero-actions{display:flex;gap:8px;position:relative;z-index:1}
.customer-profile-hero-actions .action-btn{padding:10px 15px;border-radius:12px}
.customer-profile-stats{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:10px!important;margin:0!important}
.customer-profile-stats .profile-stat{padding:16px 12px!important;border-radius:17px!important;border:1px solid transparent!important;box-shadow:0 5px 15px rgba(10,50,70,.05);text-align:left!important;position:relative}
.customer-profile-stats .profile-stat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;border-radius:17px 0 0 17px}
.customer-profile-stats .profile-stat strong{font-size:27px!important;margin-bottom:3px}
.customer-profile-stats .profile-stat span{font-size:11px!important;font-weight:850!important;text-transform:uppercase;letter-spacing:.05em}
.customer-profile-stats .stat-bookings{background:#eaf8fc!important;border-color:#cbe8f0!important}.stat-bookings:before{background:#1598b2}.customer-profile-stats .stat-openplay{background:#fff7df!important;border-color:#f3e2ae!important}.stat-openplay:before{background:#f1b92f}.customer-profile-stats .stat-rentals{background:#fff0f2!important;border-color:#f5d0d5!important}.stat-rentals:before{background:#f05b70}.customer-profile-stats .stat-passes{background:#ebfaf1!important;border-color:#cdebd9!important}.stat-passes:before{background:#39a66a}
.customer-quick-actions{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:10px!important}
.customer-quick-action{border:1px solid #d9e6ea!important;border-radius:17px!important;padding:13px 14px!important;display:flex!important;align-items:center!important;gap:11px!important;text-align:left!important;background:white!important;box-shadow:0 5px 15px rgba(10,50,70,.05);cursor:pointer!important;transition:.15s ease}
.customer-quick-action:hover{transform:translateY(-1px);box-shadow:0 9px 20px rgba(10,50,70,.10)}
.customer-quick-action>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:18px;flex:none}
.customer-quick-action b{display:block;color:#123957;font-size:12px}.customer-quick-action small{display:block;color:#718795;margin-top:3px;font-size:10px;line-height:1.25}
.customer-quick-action.teal>span{background:#dff7f6;color:#078c91}.customer-quick-action.coral>span{background:#ffe5e9;color:#e64d63}.customer-quick-action.yellow>span{background:#fff2c9;color:#c58a00}.customer-quick-action.navy>span{background:#e6eef8;color:#123d64}
.customer-profile-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important}
.customer-profile-section{border-radius:19px!important;padding:16px!important;box-shadow:0 5px 16px rgba(10,50,70,.045)!important;background:#fff!important}
.customer-profile-section.accent-teal{border:1px solid #ccebee!important;border-top:4px solid #20a8aa!important}.customer-profile-section.accent-yellow{border:1px solid #f0dfad!important;border-top:4px solid #f2bd35!important}.customer-profile-section.accent-coral{border:1px solid #f2d0d5!important;border-top:4px solid #ef6174!important}.customer-profile-section.accent-blue{border:1px solid #d1e0ee!important;border-top:4px solid #377ba7!important}.customer-profile-section.accent-purple{border:1px solid #ded5f2!important;border-top:4px solid #8668c5!important}
.profile-card-head h4{font-size:14px!important}.profile-card-head>div>small{display:block;color:#7a8e99;font-size:10px;margin-top:3px}.section-count{background:#f1f6f8;border-radius:999px;padding:5px 9px;font-weight:900!important;color:#496777!important}
.profile-highlight{background:#f2fafb!important;border-radius:12px!important;padding:11px 12px!important;border:1px solid #dceef0!important;margin-bottom:10px}.profile-highlight span{display:block;color:#7a8e99;font-size:10px;text-transform:uppercase;font-weight:900;letter-spacing:.05em}.profile-highlight b{display:block;color:#123957;font-size:13px;margin-top:3px}
.profile-detail-list>div{padding:5px 0}.history-row{padding:9px 0!important}.children-profile-list{display:grid;gap:7px}.child-profile-row{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:11px;background:#fff8f9;border:1px solid #f6dfe3}.child-profile-index{width:26px;height:26px;border-radius:9px;background:#ffe3e8;color:#e04e64;display:grid;place-items:center;font-weight:900;font-size:11px}.child-profile-main{flex:1}.child-profile-main b{font-size:12px;color:#173a55}.child-profile-main small{display:block;font-size:10px;color:#7a8e99;margin-top:2px}
.printed-waiver-section{grid-column:1/-1!important}.printed-waiver-section .profile-card-head{align-items:center}.printed-waiver-section .profile-card-head .coral-btn{background:#ef5b70!important;color:white!important;border:0!important;border-radius:11px!important;padding:9px 13px!important}.printed-waiver-section [data-printed-waiver-photos]{min-height:72px}.printed-waiver-section [data-printed-waiver-photos] .empty{background:#fafcfd;border:1px dashed #cbdde3;border-radius:12px;padding:16px!important;text-align:center}
.customer-secondary-details{background:#fff!important;border:1px solid #dce7eb!important;border-radius:16px!important;box-shadow:0 4px 14px rgba(10,50,70,.04)}
.customer-secondary-details>summary{padding:13px 15px!important}.customer-secondary-details[open] .modal-disclosure-body{padding:14px!important;background:#fbfdfe}
@media(max-width:820px){.customer-profile-stats{grid-template-columns:repeat(2,1fr)!important}.customer-quick-actions{grid-template-columns:repeat(2,1fr)!important}.customer-profile-grid{grid-template-columns:1fr!important}.printed-waiver-section{grid-column:auto!important}.customer-profile-hero{align-items:flex-start;flex-direction:column}.customer-profile-hero-actions{width:100%}.customer-profile-hero-actions .action-btn{flex:1}}

/* V565 — CELEBRATE personality pass: stronger hierarchy, color, rhythm */
:root{
  --celebrate-navy:#0d2f4a;
  --celebrate-teal:#18aaa9;
  --celebrate-coral:#f45168;
  --celebrate-yellow:#f4c64b;
  --celebrate-purple:#8b73df;
  --celebrate-sky:#55b8d5;
  --display-size:34px;
}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.45;letter-spacing:-.005em}
.main{padding:28px 32px 44px;background:
 radial-gradient(circle at 96% 5%,rgba(244,81,104,.08) 0 95px,transparent 96px),
 radial-gradient(circle at 91% 16%,rgba(244,198,75,.10) 0 62px,transparent 63px),
 radial-gradient(circle at 3% 96%,rgba(24,170,169,.07) 0 110px,transparent 111px),
 linear-gradient(180deg,#f7fafc 0,#f8fafc 42%,#f7f8fb 100%)}
.topbar{margin-bottom:22px;min-height:54px}
.topbar h1{font-size:var(--display-size);font-weight:900;line-height:1.05;letter-spacing:-.045em;color:#0b3150}
.eyebrow{font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.eyebrow::before{width:7px;height:7px;box-shadow:12px 0 0 var(--celebrate-yellow),24px 0 0 var(--celebrate-blue);margin-right:25px}

/* Make the page's main title unmistakable and stop repeating explanatory copy. */
.panel-subtitle,.admin-module-heading .panel-subtitle,.admin-group-intro .panel-subtitle{display:none!important}
.admin-module-heading{margin:0 0 12px;padding:0 2px}
.admin-module-heading h2{font-size:23px!important;font-weight:900!important;letter-spacing:-.025em!important;color:#0b3150!important;margin:0!important}

/* Panels feel like deliberate sections rather than generic white boxes. */
.panel{border:1px solid #dce7ed;border-radius:20px;box-shadow:0 10px 28px rgba(13,47,74,.055);background:rgba(255,255,255,.96)}
.panel-head{margin-bottom:15px;align-items:center}
.panel-head h2{font-size:21px!important;font-weight:900!important;letter-spacing:-.025em!important;color:#0b3150!important}
.panel-head h2::after{height:4px;width:42px;margin-top:7px;background:linear-gradient(90deg,var(--celebrate-teal),var(--celebrate-coral))}
.section>.panel:first-child .panel-head h2{font-size:22px!important}

/* Metrics: more visual distinction without becoming noisy. */
.metric{border-radius:17px!important;padding:17px 18px!important;min-height:92px;box-shadow:0 8px 22px rgba(13,47,74,.055)!important}
.metric span{font-size:11px!important;font-weight:850!important;text-transform:uppercase;letter-spacing:.055em;color:#6b8090!important}
.metric strong{font-size:29px!important;font-weight:900!important;line-height:1.05;color:#0b3150!important}
.cards>.metric:nth-child(1){background:linear-gradient(145deg,#fff,#eefbfa)!important}
.cards>.metric:nth-child(2){background:linear-gradient(145deg,#fff,#f0f5ff)!important}
.cards>.metric:nth-child(3){background:linear-gradient(145deg,#fff,#fff8e7)!important}
.cards>.metric:nth-child(4){background:linear-gradient(145deg,#fff,#fff0f3)!important}

/* Buttons: clear primary vs secondary hierarchy. */
.action-btn{border-radius:12px!important;font-weight:850!important;min-height:38px;padding:9px 14px!important}
.action-btn:not(.secondary):not(.danger){background:linear-gradient(135deg,#0d7285,#159fa2)!important;box-shadow:0 7px 16px rgba(17,126,143,.18)!important}
.action-btn.secondary{background:#fff!important;color:#12607b!important;border:1px solid #cfe1e8!important}
.action-btn.danger{background:linear-gradient(135deg,#df3f58,#f45168)!important}

/* Tables: stronger headers and easier scanning. */
th{font-size:10px!important;font-weight:900!important;letter-spacing:.075em!important;color:#4d6b7d!important;background:#f2f7fa!important;padding:12px!important}
td{font-size:13px!important;color:#29465b!important;padding:13px 12px!important}
tbody tr:hover{background:#f3fbfb!important}

/* Navigation gets a little more Celebrate character. */
.sidebar{padding-top:20px;background:linear-gradient(180deg,#0b2942 0%,#103752 55%,#0a2439 100%)}
.brand-logo{width:194px;max-height:88px;margin-bottom:26px}
.nav-group{background:transparent;border:0}
.nav-group::before{display:none}
.nav-group-title{font-size:10px!important;letter-spacing:.13em!important;color:#8db4c4!important}
.nav-btn{min-height:42px!important;border-radius:13px!important;font-size:13px!important;font-weight:700!important;color:#c7d8e4!important;padding:11px 13px!important}
.nav-btn.active{background:linear-gradient(90deg,#21afb0,#2db3c0)!important;color:#fff!important;box-shadow:0 8px 18px rgba(20,167,169,.20),inset 4px 0 0 #f4c64b!important}
.nav-btn:hover:not(.active){background:rgba(255,255,255,.07)!important;color:#fff!important;transform:none!important}
.signout{border-radius:12px!important;background:rgba(244,81,104,.12)!important;color:#fff!important}

/* Give each major area a subtle identity stripe. */
#section-events>.panel:first-child{border-top:4px solid var(--celebrate-coral)}
#section-customers>.panel:first-child{border-top:4px solid var(--celebrate-teal)}


#section-marketing>.panel:first-child{border-top:4px solid var(--celebrate-coral)}

/* Remove duplicate-looking headings where a page title already says the same thing. */
#section-events>.panel:first-child .panel-head h2{font-size:20px!important}

/* Customer directory and other list controls breathe more. */
.toolbar{gap:9px!important}
.search,.filter-select{min-height:40px!important;border-radius:12px!important;border-color:#cfdfe7!important;background:#fff!important;font-size:13px!important}

/* Marketing cards: less spreadsheet, more campaign dashboard. */
#section-marketing .panel{border-radius:19px}
#section-marketing .metric strong{font-size:30px!important}

/* Business: make the finance strip readable at a glance. */


@media(max-width:900px){
 .main{padding:22px 20px 34px}
 .topbar h1{font-size:30px}
}
@media(max-width:680px){
 .main{padding:14px 14px 28px}
 .topbar{min-height:48px}
 .topbar h1{font-size:27px}
 .panel-head h2{font-size:19px!important}
 .admin-module-heading h2{font-size:21px!important}
}

/* =========================================================
   V566 — CELEBRATE REAL VISUAL REBUILD
   Not a typography patch. This is the actual UI personality layer.
   ========================================================= */

/* Brand type: consistent, rounded, friendly, but still operational. */
body,body *{font-family:"Nunito Sans","Trebuchet MS",Arial,sans-serif !important;}
.event-customer-actions>b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace !important;}

:root{
  --c-navy:#0d304c;
  --c-navy-2:#123d5d;
  --c-teal:#18aaa9;
  --c-teal-dark:#087f88;
  --c-coral:#f45168;
  --c-yellow:#f4c64b;
  --c-purple:#8172d9;
  --c-sky:#5bb9d5;
  --c-cream:#fffaf3;
  --c-bg:#f5f8fb;
  --c-line:#dce8ee;
  --c-text:#17344d;
  --c-muted:#72879a;
}

html,body{background:var(--c-bg)!important;color:var(--c-text)!important;}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}

/* ---------- APP FRAME ---------- */
.app-shell{grid-template-columns:258px minmax(0,1fr)!important;background:var(--c-bg)!important;}
.sidebar{
  background:linear-gradient(180deg,#0b2c47 0%,#103a59 48%,#0b2942 100%)!important;
  padding:24px 15px 16px!important;
  box-shadow:8px 0 30px rgba(9,40,64,.10)!important;
  border-right:0!important;
}
.brand-logo{width:188px!important;max-height:94px!important;margin:0 auto 30px!important;filter:drop-shadow(0 7px 12px rgba(0,0,0,.18))!important;}
.admin-nav{gap:7px!important;}
.nav-btn{
  position:relative!important;min-height:46px!important;padding:12px 14px 12px 17px!important;
  border-radius:14px!important;font-size:14px!important;font-weight:800!important;
  color:#c9dbe7!important;letter-spacing:-.01em!important;
  transition:background .18s ease,transform .18s ease!important;
}
.nav-btn::before{display:block!important;position:absolute!important;left:0!important;top:9px!important;bottom:9px!important;width:4px!important;border-radius:0 5px 5px 0!important;background:transparent!important;content:""!important;}
.nav-btn:nth-child(1)::after{content:"⌂"!important}.nav-btn:nth-child(2)::after{content:"✦"!important}.nav-btn:nth-child(3)::after{content:"●"!important}.nav-btn:nth-child(4)::after{content:"◆"!important}.nav-btn:nth-child(5)::after{content:"▣"!important}.nav-btn:nth-child(6)::after{content:"➤"!important}.nav-btn:nth-child(7)::after{content:"⚙"!important}
.nav-btn::after{position:absolute!important;right:14px!important;font-size:11px!important;opacity:.9!important;}
.nav-btn:hover:not(.active){background:rgba(255,255,255,.075)!important;color:#fff!important;transform:translateX(2px)!important;}
.nav-btn.active{
  background:linear-gradient(90deg,#25adb0,#2eb5bd)!important;color:#fff!important;
  box-shadow:0 9px 22px rgba(21,168,171,.22)!important;
}
.nav-btn.active::before{background:var(--c-yellow)!important;}
.nav-btn:nth-child(2).active::before,.nav-btn:nth-child(6).active::before{background:var(--c-coral)!important;}
.nav-btn:nth-child(4).active::before{background:var(--c-yellow)!important;}
.signout{border-radius:13px!important;background:rgba(244,81,104,.13)!important;font-weight:800!important;padding:12px 14px!important;}

/* ---------- MAIN CANVAS ---------- */
.main{
  padding:28px 34px 48px!important;min-width:0!important;
  background:
   radial-gradient(circle at 97% 0%,rgba(244,81,104,.12) 0 105px,transparent 106px),
   radial-gradient(circle at 91% 1%,rgba(244,198,75,.16) 0 72px,transparent 73px),
   radial-gradient(circle at 2% 98%,rgba(24,170,169,.08) 0 135px,transparent 136px),
   linear-gradient(180deg,#f8fbfc 0%,#f7f7fb 65%,#fffaf7 100%)!important;
}
.topbar{min-height:54px!important;margin-bottom:22px!important;padding:0!important;}
.topbar-tools{gap:10px!important;}
.global-search{height:43px!important;border-radius:13px!important;border:1px solid #d5e3e9!important;box-shadow:0 5px 18px rgba(13,48,76,.04)!important;}
.admin-chip{border:1px solid #d9e7ed!important;border-radius:14px!important;padding:9px 13px!important;box-shadow:0 7px 20px rgba(13,48,76,.05)!important;background:rgba(255,255,255,.92)!important;}
.top-signout{border-radius:13px!important;min-height:43px!important;font-weight:850!important;}

/* Hide repetitive eyebrow/header copies; page content owns the title. */
.topbar>div:first-child{display:none!important;}
.panel-subtitle{display:none!important;}
.admin-group-intro{display:none!important;}

/* ---------- PAGE TITLES ---------- */
.clean-page-head{margin:0 0 18px!important;align-items:center!important;}
.clean-page-head h2{font-size:34px!important;line-height:1!important;font-weight:950!important;letter-spacing:-.045em!important;color:var(--c-navy)!important;margin:0!important;}
.clean-page-head .eyebrow{font-size:10px!important;font-weight:950!important;letter-spacing:.16em!important;color:var(--c-teal)!important;margin-bottom:7px!important;}
.clean-page-head h2::after{content:"";display:block;width:46px;height:5px;border-radius:5px;background:linear-gradient(90deg,var(--c-teal),var(--c-coral));margin-top:11px;}

.admin-module-heading{margin:0 0 12px!important;padding:0!important;}
.admin-module-heading h2,.panel-head h2{font-size:22px!important;font-weight:950!important;letter-spacing:-.025em!important;color:var(--c-navy)!important;}
.admin-module-heading h2::after,.panel-head h2::after{content:"";display:block;width:34px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--c-teal),var(--c-yellow));margin-top:7px;}

/* ---------- PANELS ---------- */
.panel,.admin-group-module,.admin-module-card{
  border:1px solid var(--c-line)!important;border-radius:21px!important;
  box-shadow:0 12px 32px rgba(13,48,76,.055)!important;
  background:rgba(255,255,255,.97)!important;
}
.panel{padding:20px!important;}

/* Make the first visible card of each section feel like a designed hero. */

#section-events>.admin-group-module:first-child{border-top:5px solid var(--c-coral)!important;}
#section-people>.admin-group-module:first-child{border-top:5px solid var(--c-teal)!important;}

#section-marketing>.admin-group-module:first-child{border-top:5px solid var(--c-purple)!important;}


/* ---------- METRICS ---------- */
.cards{gap:13px!important;}
.metric{
  position:relative!important;overflow:hidden!important;border-radius:18px!important;
  padding:18px 18px 17px!important;min-height:94px!important;
  box-shadow:0 8px 22px rgba(13,48,76,.055)!important;
}
.metric::after{content:"";position:absolute;right:-23px;top:-23px;width:78px;height:78px;border-radius:50%;background:rgba(24,170,169,.09);}
.metric:nth-child(2)::after{background:rgba(129,114,217,.10)}
.metric:nth-child(3)::after{background:rgba(244,198,75,.13)}
.metric:nth-child(4)::after{background:rgba(244,81,104,.10)}
.metric span{font-size:10px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.075em!important;color:#73899a!important;}
.metric strong{font-size:30px!important;font-weight:950!important;line-height:1.02!important;color:var(--c-navy)!important;}
.metric small{font-size:11px!important;color:#8a9aaa!important;}

/* ---------- BUTTONS ---------- */
.action-btn{min-height:40px!important;border-radius:12px!important;padding:9px 15px!important;font-weight:900!important;letter-spacing:-.01em!important;}
.action-btn:not(.secondary):not(.danger){background:linear-gradient(135deg,#087d89,#18aaa9)!important;border:0!important;box-shadow:0 8px 18px rgba(24,170,169,.18)!important;color:#fff!important;}
.action-btn.secondary{background:#fff!important;color:#14546e!important;border:1px solid #cfe1e8!important;box-shadow:none!important;}
.action-btn.danger{background:linear-gradient(135deg,#e5455e,#f45168)!important;color:#fff!important;border:0!important;}

/* ---------- TABLES / DIRECTORIES ---------- */
.table-wrap{border:1px solid #dce8ee!important;border-radius:16px!important;overflow:hidden!important;}
table{min-width:0!important;}
th{background:#f0f7f8!important;color:#587185!important;font-size:10px!important;font-weight:950!important;letter-spacing:.09em!important;padding:13px 14px!important;border-bottom:1px solid #d8e6eb!important;}
td{padding:15px 14px!important;font-size:13px!important;color:#2d4a60!important;border-bottom:1px solid #edf2f4!important;}
tbody tr:nth-child(even){background:#fbfdfe!important;}
tbody tr:hover{background:#eef9f8!important;}

/* Customers: directory gets a stronger visual frame. */
#section-people .clean-list-panel{border-radius:21px!important;}
#section-people .customer-control-row{display:flex!important;}
#section-people .search{height:42px!important;border-radius:12px!important;}
#section-people .action-btn{box-shadow:0 7px 16px rgba(244,81,104,.17)!important;}
#section-people .action-btn:not(.secondary):not(.danger){background:linear-gradient(135deg,#f45168,#f76b7e)!important;}

/* Profile: make the customer name the visual anchor. */
.customer-profile-hero,.customer-hero{padding:18px!important;border-radius:18px!important;background:linear-gradient(135deg,#eefafa,#fff7f2)!important;border:1px solid #dbe9ed!important;}
.customer-profile-hero h2,.customer-hero h3{font-size:28px!important;font-weight:950!important;letter-spacing:-.035em!important;}
.avatar{width:62px!important;height:62px!important;border-radius:19px!important;background:linear-gradient(135deg,#18aaa9,#5bb9d5)!important;color:#fff!important;box-shadow:0 8px 18px rgba(24,170,169,.18)!important;}

/* ---------- EVENTS ---------- */
#section-events .event-row-card{padding:18px 6px!important;}
#section-events .event-row-title h3{font-size:19px!important;font-weight:950!important;}
#section-events .event-row-info{font-size:13px!important;font-weight:700!important;color:#5d7588!important;}
#section-events .event-row-card:nth-child(odd){background:linear-gradient(90deg,rgba(24,170,169,.035),transparent)!important;}
#section-events .badge.good{background:#dff7ef!important;color:#14735d!important;}

/* ---------- GIFT CARDS ---------- */








/* ---------- BUSINESS ---------- */

















/* ---------- MARKETING ---------- */
#section-marketing .admin-group-module{border-radius:21px!important;}
#section-marketing .admin-module-heading h2{font-size:24px!important;}
#section-marketing .campaign-summary,.campaign-grid{gap:13px!important;}
#section-marketing .metric{min-height:102px!important;}
#section-marketing .metric:first-child{background:linear-gradient(135deg,#edfbfa,#fff)!important;border-top:4px solid var(--c-teal)!important;}
#section-marketing .metric:nth-child(2){background:linear-gradient(135deg,#f3f0ff,#fff)!important;border-top:4px solid var(--c-purple)!important;}
#section-marketing .metric:nth-child(3){background:linear-gradient(135deg,#fff1f3,#fff)!important;border-top:4px solid var(--c-coral)!important;}
#section-marketing .metric:nth-child(4){background:linear-gradient(135deg,#fff8e5,#fff)!important;border-top:4px solid var(--c-yellow)!important;}

/* ---------- FRONT DESK ---------- */
#section-frontdesk .fd-schedule-panel{border-top:5px solid var(--c-teal)!important;}
#section-frontdesk .fd-openplay-front-panel{border-top:5px solid var(--c-coral)!important;}
#section-frontdesk .fd-snack-panel{border-top:5px solid var(--c-yellow)!important;}
.fd-command-kicker{font-size:10px!important;font-weight:950!important;letter-spacing:.14em!important;color:var(--c-teal)!important;}
.fd-schedule-head h2{font-size:25px!important;font-weight:950!important;}
.view-switch{background:#edf5f7!important;border-radius:12px!important;padding:3px!important;}
.view-switch button.active{background:var(--c-navy)!important;border-radius:9px!important;color:#fff!important;box-shadow:0 5px 12px rgba(13,48,76,.18)!important;}
.fd-mini-month{border-radius:17px!important;background:linear-gradient(180deg,#f8fcfc,#fff)!important;}

/* ---------- SETTINGS ---------- */
#section-system .admin-group-module{border-radius:21px!important;}
#section-system .settings-group{border-radius:17px!important;background:linear-gradient(145deg,#fff,#f8fbfc)!important;}
#section-system .setting-row b{font-weight:900!important;}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
 .main{padding:22px 20px 38px!important;}
 .clean-page-head h2{font-size:30px!important;}
 .app-shell{grid-template-columns:225px minmax(0,1fr)!important;}
}
@media(max-width:680px){
 .app-shell{display:block!important;}
 .sidebar{position:static!important;height:auto!important;}
 .main{padding:16px 14px 30px!important;}
 .brand-logo{width:155px!important;margin-bottom:18px!important;}
 .clean-page-head h2{font-size:27px!important;}
 .panel{padding:15px!important;border-radius:17px!important;}
 .cards{grid-template-columns:1fr 1fr!important;}
 
 
}

/* V567 — FULL CELEBRATE VISUAL SYSTEM: apply the Front Desk language to EVERY section */
:root{
  --ui-navy:#0d304c;--ui-teal:#18aaa9;--ui-coral:#f45168;--ui-yellow:#f4c64b;--ui-purple:#8d72df;--ui-sky:#61cbd5;
  --ui-bg:#f5f8fb;--ui-card:#ffffff;--ui-line:#dce7ed;--ui-muted:#718596;
}
html,body{font-family:"Nunito Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;background:var(--ui-bg)!important;color:#18364d!important}
body{background:radial-gradient(circle at 88% 5%,rgba(244,198,75,.12) 0 95px,transparent 96px),radial-gradient(circle at 96% 15%,rgba(255,134,165,.10) 0 110px,transparent 111px),linear-gradient(135deg,#f3fbfc 0%,#fff9f7 52%,#f7f4ff 100%)!important}
.main{padding:30px 32px 44px!important}
.topbar{margin:-30px -32px 28px!important;padding:18px 32px!important;background:linear-gradient(100deg,#e6f8f7 0%,#fff8ed 55%,#fff0f4 100%)!important;border-bottom:1px solid #d9e7ec!important}
.topbar h1{font-size:30px!important;font-weight:950!important;color:var(--ui-navy)!important}
.admin-chip,.top-signout{border:1px solid #d6e4eb!important;box-shadow:0 7px 18px rgba(13,48,76,.06)!important;background:#fff!important}

/* Every major page gets the same visual grammar */
.admin-group-page{gap:20px!important}

.admin-module-heading{padding:20px 22px 15px!important;background:linear-gradient(135deg,#fff,#f8fcfc)!important;border-bottom:1px solid #e5edf1!important}
.admin-module-heading h2{font-size:24px!important;font-weight:950!important;letter-spacing:-.03em!important;color:var(--ui-navy)!important;margin:0!important}
.admin-module-heading h2:after{content:"";display:block;width:42px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--ui-teal),var(--ui-sky));margin-top:8px}
.admin-group-module-body{padding:18px 22px 22px!important}
.panel{border:1px solid #dfe9ee!important;border-radius:18px!important;box-shadow:0 7px 20px rgba(13,48,76,.045)!important;background:#fff!important}
.panel-head{padding-bottom:10px!important}
.panel-head h2{font-size:20px!important;font-weight:950!important;color:var(--ui-navy)!important}
.panel-head h2:after{content:"";display:block;width:34px;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--ui-teal),var(--ui-yellow));margin-top:7px}

/* Metrics: same treatment everywhere */
.cards,.compact-cards,.primary-metrics{gap:12px!important}
.metric{border:1px solid #dbe7ed!important;border-radius:17px!important;box-shadow:0 8px 20px rgba(13,48,76,.05)!important;padding:17px 18px!important;background:#fff!important;min-height:94px!important}
.metric:nth-child(4n/**/+1){border-top:4px solid var(--ui-teal)!important;background:linear-gradient(135deg,#edfbfa,#fff)!important}
.metric:nth-child(4n/**/+2){border-top:4px solid var(--ui-sky)!important;background:linear-gradient(135deg,#eef9fb,#fff)!important}
.metric:nth-child(4n/**/+3){border-top:4px solid var(--ui-yellow)!important;background:linear-gradient(135deg,#fff8e7,#fff)!important}
.metric:nth-child(4n/**/+4){border-top:4px solid var(--ui-coral)!important;background:linear-gradient(135deg,#fff1f3,#fff)!important}
.metric span{font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.07em!important;color:#718596!important}
.metric strong{font-size:29px!important;font-weight:950!important;color:var(--ui-navy)!important;letter-spacing:-.035em!important}

/* Events */
#section-events>.admin-module-card:first-child{border-top:5px solid var(--ui-coral)!important}
#section-events .admin-module-heading{background:linear-gradient(135deg,#fff6f7,#fff)!important}
#section-events .event-row-card{padding:17px 10px!important;border-bottom:1px solid #e9eff2!important}
#section-events .event-row-title h3{font-size:19px!important;font-weight:950!important;color:var(--ui-navy)!important}

/* Customers */
#section-people>.admin-module-card:first-child{border-top:5px solid var(--ui-teal)!important}
#section-people .clean-page-head{padding:4px 2px 18px!important}
#section-people .clean-page-head h2{font-size:36px!important;font-weight:950!important;color:var(--ui-navy)!important}
#section-people .clean-list-panel{border-radius:20px!important;padding:20px!important}
#section-people .clean-list-panel .panel-head{padding-bottom:14px!important}
#section-people #addCustomerBtn{background:linear-gradient(135deg,#f45168,#ff7181)!important;color:#fff!important;border:0!important;box-shadow:0 8px 18px rgba(244,81,104,.18)!important}

/* Gift cards */




/* Business */










/* Marketing */
#section-marketing>.admin-module-card:first-child{border-top:5px solid var(--ui-purple)!important}
#section-marketing .admin-module-heading{background:linear-gradient(135deg,#f7f3ff,#fff)!important}
#section-marketing .admin-module-heading h2{font-size:25px!important}
#section-marketing .panel{border-radius:19px!important}
#section-marketing .campaign-compose,.campaign-grid{gap:14px!important}

/* Settings / system */
#section-system>.admin-module-card:first-child{border-top:5px solid var(--ui-sky)!important}
#section-system .admin-module-heading{background:linear-gradient(135deg,#f1fbfc,#fff)!important}
#section-system .settings-group{border-radius:17px!important;box-shadow:0 5px 15px rgba(13,48,76,.035)!important}

/* Tables get the same polished language */
.table-wrap{border:1px solid #dce7ed!important;border-radius:16px!important;box-shadow:none!important}
table th{background:#f1f7f9!important;color:#5d7588!important;font-size:10px!important;font-weight:950!important;letter-spacing:.09em!important;padding:13px 14px!important}
table td{padding:14px!important;font-size:13px!important}
tbody tr:nth-child(even){background:#fbfdfe!important}
tbody tr:hover{background:#eef9f8!important}

/* Remove remaining low-value helper copy, but keep actual status/data text */
.admin-module-heading .panel-subtitle,.panel-subtitle,.admin-group-intro{display:none!important}

@media(max-width:900px){.main{padding:22px 20px 38px!important}.topbar{margin:-22px -20px 22px!important;padding:15px 20px!important}.admin-group-module-body{padding:15px!important}}
@media(max-width:680px){.main{padding:16px 14px 30px!important}.topbar{margin:-16px -14px 18px!important;padding:13px 14px!important}.admin-module-heading{padding:17px 16px 13px!important}.admin-group-module-body{padding:14px!important}.admin-module-heading h2{font-size:21px!important}.metric strong{font-size:25px!important}}

/* V568 — FRONT DESK VISUAL LANGUAGE APPLIED TO EVERY PAGE */
:root{
  --fd-navy:#103652;
  --fd-teal:#16a7a9;
  --fd-coral:#f45168;
  --fd-yellow:#f3c64b;
  --fd-sky:#63cbd5;
  --fd-purple:#8b73df;
  --fd-line:#dfe9ef;
  --fd-muted:#718496;
}

/* Same canvas rhythm as Front Desk */
#appView>.section:not(#section-frontdesk){
  display:none;
}
#appView>.section.active:not(#section-frontdesk){
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
}

/* Every major module becomes a Front Desk-style command panel */


/* Page/module headers use the exact Front Desk hierarchy */




/* Section page titles follow Front Desk title weight */
#appView>.section:not(#section-frontdesk)>.clean-page-head{
  margin:0!important;
  padding:4px 2px 2px!important;
}
#appView>.section:not(#section-frontdesk)>.clean-page-head h2{
  font-size:32px!important;
  line-height:1.05!important;
  font-weight:950!important;
  letter-spacing:-.045em!important;
  color:var(--fd-navy)!important;
}

/* Stat cards: same compact, colorful Front Desk treatment */
#appView>.section:not(#section-frontdesk) .metric,#appView>.section:not(#section-frontdesk) .inline-metrics>span{
  border:1px solid #dbe7ed!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 6px 18px rgba(16,54,82,.045)!important;
}
#appView>.section:not(#section-frontdesk) .metric{
  min-height:92px!important;
  padding:15px 17px!important;
}
#appView>.section:not(#section-frontdesk) .metric strong{
  font-size:27px!important;
  line-height:1!important;
  font-weight:950!important;
  color:var(--fd-navy)!important;
}
#appView>.section:not(#section-frontdesk) .metric span{
  font-size:10px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  color:var(--fd-muted)!important;
}
#appView>.section:not(#section-frontdesk) .metric:nth-child(4n/**/+1){border-top:4px solid var(--fd-teal)!important;background:linear-gradient(135deg,#effafa,#fff)!important}
#appView>.section:not(#section-frontdesk) .metric:nth-child(4n/**/+2){border-top:4px solid var(--fd-sky)!important;background:linear-gradient(135deg,#f0fbfc,#fff)!important}
#appView>.section:not(#section-frontdesk) .metric:nth-child(4n/**/+3){border-top:4px solid var(--fd-yellow)!important;background:linear-gradient(135deg,#fff9ea,#fff)!important}
#appView>.section:not(#section-frontdesk) .metric:nth-child(4n/**/+4){border-top:4px solid var(--fd-coral)!important;background:linear-gradient(135deg,#fff2f4,#fff)!important}

/* Tables/list areas become clean inner surfaces instead of another heavy card */
#appView>.section:not(#section-frontdesk) .clean-list-panel,#appView>.section:not(#section-frontdesk) .panel.subpanel{
  box-shadow:none!important;
}
#appView>.section:not(#section-frontdesk) .panel-head h2{
  font-size:20px!important;
  font-weight:950!important;
  color:var(--fd-navy)!important;
}
#appView>.section:not(#section-frontdesk) .panel-head h2:after{
  content:""!important;display:block!important;width:40px!important;height:4px!important;border-radius:9px!important;margin-top:7px!important;
  background:linear-gradient(90deg,var(--fd-teal),var(--fd-yellow))!important;
}
#appView>.section:not(#section-frontdesk) table{
  border:1px solid var(--fd-line)!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
#appView>.section:not(#section-frontdesk) th{
  background:#f3f8fa!important;
  color:#5f7485!important;
  font-size:10px!important;
  font-weight:900!important;
}
#appView>.section:not(#section-frontdesk) td{font-size:13px!important;padding:13px 14px!important}
#appView>.section:not(#section-frontdesk) tbody tr:hover td{background:#f2faf9!important}

/* Buttons match Front Desk controls */
#appView>.section:not(#section-frontdesk) .action-btn{
  border-radius:10px!important;
  padding:9px 13px!important;
  font-weight:850!important;
  box-shadow:none!important;
}
#appView>.section:not(#section-frontdesk) .action-btn:not(.secondary):not(.danger){background:var(--fd-teal)!important;color:#fff!important}
#appView>.section:not(#section-frontdesk) .action-btn.secondary{background:#eef5f7!important;color:var(--fd-navy)!important;border:1px solid #d7e4ea!important}
#appView>.section:not(#section-frontdesk) .action-btn.danger{background:#fff3f4!important;color:#b73e4e!important;border:1px solid #f1c6cc!important}

/* EVENTS — same strong top accent and compact rows as Front Desk */
#section-events>.admin-group-module:first-child{
  border-top:5px solid var(--fd-coral)!important;
}
#section-events .events-list-panel{padding:18px 20px!important}
#section-events .events-table-head{background:#f3f8fa!important;border:0!important;border-radius:10px!important}
#section-events .event-row-card{padding:15px 8px!important}

/* CUSTOMERS — one cohesive command surface */
#section-people>.admin-group-module:first-child{border-top:5px solid var(--fd-teal)!important}
#section-people .customers-clean-module-body,#section-people .admin-group-module-body{padding:16px 20px 20px!important}
#section-people .clean-list-panel{border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}
#section-people .clean-list-panel .panel-head{padding-top:4px!important}
#section-people #addCustomerBtn{background:var(--fd-coral)!important;border-radius:10px!important;padding:9px 14px!important;box-shadow:none!important}

/* GIFT CARDS — yellow Front Desk accent, not a generic page */




/* BUSINESS — simplify nested layers and give the workspace the Front Desk feel */








/* MARKETING — same card rhythm, purple only as accent */
#section-marketing>.admin-group-module:first-child{border-top:5px solid var(--fd-purple)!important}
#section-marketing .admin-module-heading{background:linear-gradient(135deg,#f8f5ff,#fff)!important}
#section-marketing .admin-group-module-body{padding:16px 20px 20px!important}
#section-marketing .admin-group-module-body>.panel{border:0!important;box-shadow:none!important;padding:10px 0!important}

/* SETTINGS — same shell, no old boxed-in feeling */
#section-system>.admin-group-module:first-child{border-top:5px solid var(--fd-sky)!important}
#section-system .admin-group-module-body{padding:16px 20px 20px!important}
#section-system .settings-list{gap:10px!important}
#section-system .settings-group{border:1px solid var(--fd-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important}

/* Keep Front Desk as the reference: compact whitespace, clear hierarchy. */
#appView>.section:not(#section-frontdesk) .toolbar{gap:8px!important}
#appView>.section:not(#section-frontdesk) .search,#appView>.section:not(#section-frontdesk) .filter-select{border-radius:10px!important;min-height:40px!important}

@media(max-width:900px){
  
}

/* =========================================================
   V569 — ONE CELEBRATE VISUAL LANGUAGE
   Front Desk is the source of truth for the rest of Admin.
   ========================================================= */
:root{
  --fd-ink:#103652;
  --fd-muted:#718497;
  --fd-line:#dce6ed;
  --fd-bg:#f7fafb;
  --fd-teal:#13aeb5;
  --fd-coral:#ef5a69;
  --fd-yellow:#e7bd3f;
  --fd-blue:#4b79d8;
  --fd-purple:#7b70dc;
}

/* Every secondary page becomes one Front-Desk-style command surface. */
.section.admin-group-page{
  max-width:none;
  margin:0;
  padding:22px;
  border:1px solid #dbe6ed;
  border-top:4px solid var(--fd-teal);
  border-radius:20px;
  background:linear-gradient(145deg,#ffffff 0%,#fbfdfe 72%,#fffaf7 100%);
  box-shadow:0 12px 34px rgba(16,54,82,.07);
}
#section-events{border-top-color:var(--fd-coral)}
#section-people{border-top-color:var(--fd-teal)}


#section-marketing{border-top-color:var(--fd-purple)}
#section-system{border-top-color:#63b9df}

/* The page heading now behaves like Front Desk's command heading. */
.admin-group-page .clean-page-head,.admin-group-page>.admin-group-module>.admin-group-module-body>.clean-page-head{
  margin:0 0 16px;
  padding:0 2px 14px;
  border:0;
  background:transparent;
  align-items:flex-end;
}
.admin-group-page .clean-page-head h2,.admin-group-page>.admin-group-module>.admin-group-module-body>.clean-page-head h2{
  margin:0;
  color:var(--fd-ink);
  font-size:27px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.035em;
}
.admin-group-page .clean-page-head h2:after,.admin-group-page>.admin-group-module>.admin-group-module-body>.clean-page-head h2:after{
  content:"";
  display:block;
  width:48px;
  height:4px;
  margin-top:9px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--fd-teal),var(--fd-coral));
}
.admin-group-page .eyebrow{display:none!important}
.admin-group-page .clean-page-head .panel-subtitle,.admin-group-page .admin-module-heading>.panel-subtitle,.admin-group-page .panel-subtitle{display:none!important}

/* Module headings use the same compact rhythm as Front Desk. */
.admin-group-page .admin-group-module,.admin-group-page .admin-module-card{
  margin:0 0 14px;
  border:0;
  background:transparent;
  box-shadow:none;
}
.admin-group-page .admin-group-module:last-child{margin-bottom:0}
.admin-group-page .admin-module-heading{
  padding:2px 2px 11px;
  margin:0;
  border:0;
  background:transparent;
}
.admin-group-page .admin-module-heading h2,.admin-group-page .panel-head h2{
  color:var(--fd-ink);
  font-size:18px;
  line-height:1.15;
  font-weight:900;
  letter-spacing:-.018em;
  margin:0;
}
.admin-group-page .admin-module-heading h2:after,.admin-group-page .panel-head h2:after{
  content:"";
  display:block;
  width:36px;
  height:3px;
  margin-top:7px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--fd-teal),var(--fd-yellow));
}

/* Kill the old "box inside box" feeling. */
.admin-group-page .panel,.admin-group-page .clean-list-panel,.admin-group-page .admin-group-module-body>.panel,.admin-group-page .admin-group-module-body>.admin-disclosure,.admin-group-page .admin-disclosure{
  border:1px solid var(--fd-line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 5px 18px rgba(16,54,82,.045);
}
.admin-group-page .panel{padding:16px}
.admin-group-page .panel-head{padding:0 0 12px;border:0;background:transparent}

/* Same compact controls Front Desk uses. */
.admin-group-page .toolbar{gap:8px}
.admin-group-page input.search,.admin-group-page select,.admin-group-page .filter-select{
  min-height:38px;
  border:1px solid #cfdee7;
  border-radius:11px;
  background:#fff;
  color:var(--fd-ink);
  box-shadow:none;
}
.admin-group-page .action-btn,.admin-group-page button:not(.nav-btn){
  border-radius:11px;
}

/* Metrics: same shape, density and visual language as Front Desk. */
.admin-group-page .cards,.admin-group-page .primary-metrics,.admin-group-page .inline-metrics{
  gap:10px;
}
.admin-group-page .metric{
  min-height:82px;
  padding:14px 16px;
  border:1px solid #dce7ed;
  border-radius:15px;
  background:#fff;
  box-shadow:0 5px 16px rgba(16,54,82,.045);
}
.admin-group-page .metric strong{font-size:1.55rem;line-height:1;color:var(--fd-ink)}
.admin-group-page .metric span,.admin-group-page .metric small{font-size:10px;color:#718497;font-weight:800;letter-spacing:.02em}

/* Tables stop looking like spreadsheets. */
.admin-group-page table,.admin-group-page .events-table-wrap,.admin-group-page .table-wrap{
  border-radius:14px;
  overflow:hidden;
}
.admin-group-page th,.admin-group-page .events-table-head{
  background:#f5f9fb;
  color:#6b8091;
  font-size:9px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.admin-group-page td{color:#29445d}

/* Events gets the Front Desk command treatment. */
#section-events .events-page-head{padding-bottom:14px}
#section-events .events-list-panel{margin-top:0}
#section-events .events-table-head{border-bottom:1px solid var(--fd-line)}

/* Customers: directory is the working area, not a second giant page. */
#section-people .customers-clean-module{margin:0}
#section-people .customers-clean-module>.admin-group-module-body{padding:0}
#section-people .clean-list-panel{margin-top:0}
#section-people .inline-metrics>span{
  border:1px solid #dce7ed;
  border-radius:12px;
  padding:10px 13px;
  background:#fff;
  box-shadow:0 4px 14px rgba(16,54,82,.04);
}

/* Gift Cards: keep inventory as one clean working panel. */



/* Business: tabs, metrics and transactions belong to one surface. */








/* Marketing: cards are sections, not floating unrelated boxes. */
#section-marketing .admin-module-heading{padding-bottom:10px}
#section-marketing .metric:first-child{border-top:3px solid var(--fd-teal)}
#section-marketing .metric:nth-child(2){border-top:3px solid var(--fd-purple)}
#section-marketing .admin-disclosure>summary{border-radius:13px}

/* Settings: calm, compact, same shell. */
#section-system .admin-group-module{margin-bottom:12px}
#section-system .settings-row{padding:12px 2px}
#section-system .settings-row small{display:none}

/* Consistent action hierarchy. */
.admin-group-page .action-btn,.admin-group-page .primary-btn{font-weight:850}
.admin-group-page .action-btn.primary,.admin-group-page .primary-btn{box-shadow:0 6px 16px rgba(19,174,181,.16)}

@media(max-width:800px){
  .section.admin-group-page{padding:16px;border-radius:16px}
  .admin-group-page .clean-page-head h2{font-size:23px}
  .admin-group-page .panel{padding:13px}
}

/* V570 — Expense line amount validation: clear inline feedback, no browser popup */



@media(max-width:820px){}

/* Expense form styles */































@media(max-width:900px){.expense-line-labels{display:none!important}.expense-line-item .expense-line-name{grid-column:1/-1}.expense-line-item .expense-remove-line{grid-column:2;justify-self:end}.expense-summary-grid{grid-template-columns:1fr 1fr!important}.expense-total-card{grid-column:1/-1;border-left:0!important;border-top:1px solid #e5edf2;padding-top:14px;align-items:flex-start!important}}
@media(max-width:600px){.expense-line-item{grid-template-columns:1fr!important}.expense-line-item .expense-remove-line{grid-column:1;justify-self:start}}

/* V572 — Gift Cards cleanup */






/* V573 — Celebrate account profile lives in the sidebar; topbar stays clean */
.celebrate-profile-card{
  position:relative;
  margin:0 0 22px;
  padding:12px 12px 14px;
  border:1px solid rgba(84,214,220,.24);
  border-radius:18px;
  background:linear-gradient(160deg,rgba(4,45,72,.96),rgba(10,65,91,.78));
  box-shadow:0 12px 28px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.05);
  overflow:hidden;
  cursor:default;
}
.celebrate-profile-card:before{
  content:"";position:absolute;inset:auto -20px -38px auto;width:110px;height:110px;border-radius:50%;
  background:rgba(255,211,75,.08);pointer-events:none;
}
.celebrate-profile-card .brand-logo{
  display:block;width:164px;max-height:82px;margin:0 auto 8px;filter:drop-shadow(0 6px 12px rgba(0,0,0,.24));
}
.celebrate-profile-info{position:relative;z-index:1;display:flex;flex-direction:column;gap:2px;padding:0 4px;min-width:0}
.celebrate-profile-info strong{font-size:18px;line-height:1.15;color:#fff;letter-spacing:-.02em}
.celebrate-profile-info span{font-size:11px;line-height:1.35;color:#d9edf2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:18px}
.celebrate-profile-info small{display:inline-flex;align-self:flex-start;margin-top:5px;padding:5px 10px;border-radius:999px;background:rgba(37,185,193,.22);color:#fff;font-size:10px;font-weight:900;letter-spacing:.09em}
.celebrate-profile-arrow{position:absolute;right:13px;bottom:34px;color:#fff;font-size:28px;line-height:1;font-weight:300;opacity:.9}
.sidebar .admin-nav{margin-top:0}
.topbar-tools{min-height:1px}
@media(max-width:1000px){
  .celebrate-profile-card{padding:8px;margin-bottom:14px;border-radius:14px}
  .celebrate-profile-card .brand-logo{width:110px;max-height:54px}
  .celebrate-profile-info strong,.celebrate-profile-info span,.celebrate-profile-info small,.celebrate-profile-arrow{display:none}
}
@media(max-width:680px){
  .celebrate-profile-card{display:flex;align-items:center;gap:10px;padding:8px 10px;margin-bottom:8px}
  .celebrate-profile-card .brand-logo{width:110px;max-height:42px;margin:0 auto}
}

/* V574 — unified Celebrate visual system: colorful, lighter, less nested, title-first */
:root{
  --celebrate-navy:#0f2d4a;
  --celebrate-teal:#18b7b4;
  --celebrate-coral:#ff5871;
  --celebrate-yellow:#ffc83d;
  --celebrate-purple:#7b68ee;
  --celebrate-pink:#ff78a1;
  --celebrate-mint:#dff8f4;
  --celebrate-lavender:#f0ecff;
  --celebrate-cream:#fff7dc;
  --celebrate-line:#d7e5ec;
}
html,body,#appView,.app-shell,.main,.section,button,input,select,textarea,table,th,td,h1,h2,h3,h4,h5,h6,label,p,span,small,strong,b,.nav-btn,.signout,.action-btn{font-family:"Nunito Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
body{background:linear-gradient(135deg,#eefbfa 0%,#fff9f5 46%,#f7f1ff 100%)!important}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 82% 0%,rgba(255,200,61,.18) 0 90px,transparent 91px),radial-gradient(circle at 94% 4%,rgba(255,88,113,.13) 0 110px,transparent 111px),radial-gradient(circle at 15% 100%,rgba(24,183,180,.10) 0 130px,transparent 131px)}
.topbar{display:none!important}
.main{padding:28px 30px 36px!important}
.sidebar{background:linear-gradient(180deg,#092b47 0%,#0e3855 55%,#08253d 100%)!important;box-shadow:12px 0 34px rgba(9,43,71,.18)!important}
.celebrate-profile-card{border-color:rgba(24,183,180,.7)!important;background:linear-gradient(155deg,#0b3150,#0a4160)!important;box-shadow:0 14px 30px rgba(0,0,0,.20)!important}
.celebrate-profile-card .brand-logo{width:172px!important;max-height:88px!important;margin-bottom:10px!important}
.celebrate-profile-info strong{font-size:18px!important}.celebrate-profile-info span{font-size:11px!important}.celebrate-profile-info small{background:linear-gradient(90deg,#16b9b4,#477eea)!important}
.sidebar .signout{margin:12px 0 0!important;border:0!important;border-top:1px solid rgba(255,255,255,.16)!important;border-radius:14px!important;background:linear-gradient(90deg,rgba(255,88,113,.18),rgba(123,104,238,.25))!important;color:#fff!important;padding:13px 16px!important;font-size:14px!important}
.nav-btn{min-height:46px!important;border-radius:14px!important;margin:2px 0!important}
.nav-btn:nth-child(1)::after{color:#ff657a!important}.nav-btn:nth-child(2)::after{color:#ffd04a!important}.nav-btn:nth-child(3)::after{color:#62e0dd!important}.nav-btn:nth-child(4)::after{color:#ff78a1!important}.nav-btn:nth-child(5)::after{color:#7fb1ff!important}.nav-btn:nth-child(6)::after{color:#ffc83d!important}.nav-btn:nth-child(7)::after{color:#74e6e2!important}
.nav-btn.active{background:linear-gradient(90deg,#1bb7b7,#28b8c3)!important;box-shadow:0 9px 22px rgba(24,183,180,.25)!important}
.section{max-width:1280px;margin:0 auto!important}

.clean-page-head,.customer-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:0 0 18px!important;padding:2px 4px 0!important}


.panel-subtitle,.clean-page-head .panel-subtitle,.admin-module-heading .panel-subtitle,.panel-head .panel-subtitle{display:none!important}
/* one surface instead of page-shell > card > card */
.admin-group-page{background:transparent!important}
.admin-group-module.admin-module-card{border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;margin:0 0 18px!important}
.admin-group-module.admin-module-card>.admin-group-module-body{padding:0!important}
.admin-module-heading{padding:0 4px 12px!important;border:0!important;background:transparent!important}
.admin-module-heading h2{font-size:24px!important;font-weight:900!important}

#section-events .clean-page-head{margin-bottom:18px!important}
#section-events .events-list-panel .panel-head{display:none!important}
#section-marketing .admin-group-module[data-module="promos"] .panel:first-of-type .panel-head{display:none!important}
#section-marketing .admin-group-module[data-module="promos"] .admin-module-heading{padding-bottom:6px!important}
#section-marketing .admin-group-module[data-module="promos"] .panel{border-radius:18px!important}
#section-system .admin-group-module[data-module="settings"] .admin-module-heading{padding-bottom:12px!important}
#section-system .admin-group-module[data-module="settings"] .admin-group-module-body{background:transparent!important}

/* Customers — based on the approved colorful render */
.customer-workspace{padding:8px 4px 24px!important}
.customer-page-head{align-items:flex-start!important}
.customer-title-wrap{padding:4px 0 0}.customer-title-wrap h2{font-size:42px!important}
.customer-stats{display:grid;grid-template-columns:repeat(3,minmax(155px,1fr));gap:12px;max-width:560px;width:48%}
.customer-stat{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--celebrate-line);border-radius:16px;min-height:76px;box-shadow:0 9px 24px rgba(15,45,74,.06)}
.customer-stat-teal{background:linear-gradient(135deg,#e8fbf8,#f9fffe)}.customer-stat-coral{background:linear-gradient(135deg,#fff0f3,#fffafa)}.customer-stat-yellow{background:linear-gradient(135deg,#fff8df,#fffdf4)}
.customer-stat .stat-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:20px;font-weight:900}.customer-stat-teal .stat-icon{background:#c9f3ed;color:#13aaa6}.customer-stat-coral .stat-icon{background:#ffd9e1;color:#ed3f5b}.customer-stat-yellow .stat-icon{background:#ffe9a5;color:#e7a800}
.customer-stat strong{display:block;font-size:24px;color:var(--celebrate-navy);line-height:1}.customer-stat small{display:block;margin-top:4px;color:#62788b;font-size:11px;font-weight:800}
.customer-directory-card{background:#fff;border:1px solid var(--celebrate-line);border-radius:22px;box-shadow:0 14px 34px rgba(15,45,74,.07);padding:24px!important}
.directory-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.directory-head h2{font-size:25px!important;margin:0!important;color:var(--celebrate-navy)!important;font-weight:950!important}.title-accent{height:4px;width:52px;border-radius:999px;background:linear-gradient(90deg,var(--celebrate-teal),var(--celebrate-yellow));margin-top:7px}
.customer-add-btn{background:linear-gradient(100deg,#15aaa9,#ff5871)!important;color:#fff!important;padding:12px 18px!important;border-radius:13px!important;box-shadow:0 9px 20px rgba(255,88,113,.18)!important}
.customer-filters{display:grid;grid-template-columns:minmax(280px,1.8fr) minmax(150px,.55fr) minmax(160px,.65fr) auto;gap:10px;margin-bottom:16px;align-items:center}
.customer-search-wrap{position:relative}.customer-search-wrap>span{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:23px;color:#173b58;z-index:2}.customer-search-wrap .search{padding-left:42px!important;max-width:none!important;margin:0!important;height:46px!important;border-radius:12px!important;border-color:#cbdfe8!important}
.customer-filter{height:46px;border:1px solid #cbdfe8;border-radius:12px;background:#fff;color:#173b58;padding:0 12px;font-weight:800}
.customer-clear{height:46px;background:#f4f8fb!important;color:#49637a!important;border:1px solid #d6e4eb!important}
.customer-table-wrap{overflow:auto;border:1px solid #dbe7ed;border-radius:16px}.customer-table{width:100%;min-width:940px;border-collapse:collapse}.customer-table th{background:#f1f7fa!important;color:#567087!important;font-size:10px!important;letter-spacing:.08em!important;padding:12px 14px!important}.customer-table td{padding:12px 14px!important;border-bottom:1px solid #e4edf1!important;font-size:13px!important;color:#284761!important}.customer-row:hover{background:#fbfeff}.customer-cell{display:flex;align-items:center;gap:11px}.customer-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:950;font-size:12px;flex:0 0 auto}.customer-avatar.pink{background:#ffdce5;color:#df3d5c}.customer-avatar.blue{background:#d7efff;color:#1597c5}.customer-avatar.yellow{background:#ffedb5;color:#d99400}.customer-avatar.mint{background:#d5f6ef;color:#139b8e}.customer-avatar.purple{background:#eadfff;color:#7958d9}.customer-cell b{display:block;color:#102f4c;font-size:13px}.customer-cell small{display:block;color:#7b8f9f;font-size:10px;margin-top:2px}.contact-cell{display:grid;gap:3px;color:#4d6780;font-size:12px}.customer-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}.customer-actions .action-btn{padding:9px 13px!important}.customer-view{background:#0f8ba6!important}.customer-more{border:0;background:transparent;color:#0f3654;font-size:22px;cursor:pointer;padding:2px 5px}.customer-table-footer{padding:14px 4px 0;color:#62798c;font-size:12px}

/* Gift Cards — colorful workspace */



/* Business / Marketing / Settings: same language, less nesting */

#section-marketing .admin-group-module,#section-system .admin-group-module{background:transparent!important}.admin-module-card .panel{border-color:var(--celebrate-line)!important;border-radius:18px!important;box-shadow:0 9px 24px rgba(15,45,74,.055)!important}.admin-module-card .metric{border-color:var(--celebrate-line)!important}.admin-module-card .metric strong{font-size:24px!important}.admin-module-card .metric:nth-child(1){border-top:4px solid var(--celebrate-teal)!important;background:linear-gradient(135deg,#f0fbfa,#fff)!important}.admin-module-card .metric:nth-child(2){border-top:4px solid var(--celebrate-purple)!important;background:linear-gradient(135deg,#f6f2ff,#fff)!important}.admin-module-card .metric:nth-child(3){border-top:4px solid var(--celebrate-coral)!important;background:linear-gradient(135deg,#fff2f5,#fff)!important}.admin-module-card .metric:nth-child(4){border-top:4px solid var(--celebrate-yellow)!important;background:linear-gradient(135deg,#fff9e8,#fff)!important}
#section-system .admin-module-heading h2{font-size:26px!important}.settings-list{border:1px solid var(--celebrate-line)!important;border-radius:16px!important;overflow:hidden;background:#fff}.settings-row{padding:14px 16px!important;border-bottom:1px solid #e7eff3!important}.settings-row:last-child{border-bottom:0}

/* Remove unnecessary duplicate page headings */


@media(max-width:980px){.customer-stats{width:100%;max-width:none}.customer-page-head{display:block}.customer-filters{grid-template-columns:1fr 1fr}.customer-search-wrap{grid-column:1/-1}.customer-clear{width:100%}}
@media(max-width:680px){.main{padding:16px!important}.clean-page-head{display:block}.customer-stats{grid-template-columns:1fr}.customer-directory-card{padding:14px!important}.directory-head{display:block}.customer-add-btn{margin-top:10px}.customer-filters{grid-template-columns:1fr}.customer-search-wrap{grid-column:auto}}

/* V575 — unified Celebrate visual cleanup */
:root{
  --celebrate-coral:#f45168;
  --celebrate-pink:#ff6f91;
  --celebrate-purple:#8b73df;
  --celebrate-gold:#f4c64b;
}

/* Sidebar: profile first, navigable list, colorful left icons. */
.sidebar{overflow:hidden!important;display:flex!important;flex-direction:column!important}
.admin-nav-flat{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:8px 2px 10px!important;scrollbar-width:thin}
.admin-nav-flat::-webkit-scrollbar{width:5px}.admin-nav-flat::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border-radius:9px}
.admin-nav-flat .nav-btn{padding-left:48px!important;min-height:46px!important;font-size:14px!important;font-weight:750!important;position:relative!important;border-radius:13px!important}
.admin-nav-flat .nav-btn:before{left:5px!important;width:4px!important;height:0!important}
.admin-nav-flat .nav-btn:after{left:16px!important;right:auto!important;width:24px!important;text-align:center!important;font-size:17px!important;line-height:1!important;opacity:1!important;color:#f4c64b!important}
.admin-nav-flat .nav-btn[data-section="frontdesk"]:after{content:"⌂";color:#ffcf4a!important}
.admin-nav-flat .nav-btn[data-section="events"]:after{content:"✦";color:#f4c64b!important}
.admin-nav-flat .nav-btn[data-section="people"]:after{content:"●";color:#7ed9d2!important}
.admin-nav-flat .nav-btn[data-section="giftcards"]:after{content:"◆";color:#ff6f91!important}
.admin-nav-flat .nav-btn[data-section="business"]:after{content:"▣";color:#69a8f6!important}
.admin-nav-flat .nav-btn[data-section="marketing"]:after{content:"➤";color:#f4c64b!important}
.admin-nav-flat .nav-btn[data-section="system"]:after{content:"⚙";color:#83c8d8!important}
.admin-nav-flat .nav-btn.active{background:linear-gradient(90deg,#22b7b5,#2eb6c7)!important;box-shadow:0 8px 20px rgba(32,167,165,.18)!important}
.admin-nav-flat .nav-btn.active:after{color:#fff!important}
.sidebar .signout{flex:0 0 auto!important;margin-top:4px!important;margin-bottom:2px!important;border-radius:14px!important;background:linear-gradient(90deg,rgba(139,115,223,.30),rgba(139,115,223,.18))!important;border:1px solid rgba(255,255,255,.08)!important;padding:13px 16px!important;color:#fff!important}
.celebrate-profile-card{flex:0 0 auto!important;margin-bottom:8px!important}

/* Remove redundant page/module subtitles while preserving genuinely useful descriptions. */



/* Business tables: clean, intentional toolbars instead of squeezed controls. */



















/* Customer profile: align the modal with the polished Customers page. */




.customer-profile-hero{padding:18px 20px!important;border-radius:20px!important}
.customer-profile-name h3{font-size:25px!important}
.customer-profile-stats .profile-stat{min-height:84px!important}
.customer-quick-actions{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.customer-profile-section{min-width:0!important}

/* Add Customer: physical waiver is a real, visible optional action. */
.customer-add-section-title{display:flex;align-items:center;gap:10px;padding:2px 0 2px;color:#123957}
.customer-add-section-title small{display:block;margin-top:2px;color:#748895;font-size:10px}
.customer-add-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#e5f8f7;font-size:17px}
.physical-waiver-add-card{display:flex!important;align-items:center!important;gap:12px!important;padding:14px 15px!important;border:1px dashed #b9d9df!important;border-radius:15px!important;background:linear-gradient(90deg,#f5fcfc,#fffaf8)!important;cursor:pointer!important}
.physical-waiver-add-card:hover,.physical-waiver-add-card.has-file{border-color:#20a8aa!important;background:#edfafa!important}
.physical-waiver-add-card input[type=file]{display:none!important}
.physical-waiver-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#ffe6ea;font-size:20px;flex:none}
.physical-waiver-add-card b{display:block;color:#123957;font-size:12px}.physical-waiver-add-card b em{font-style:normal;color:#7c8e9a;font-weight:700;font-size:9px;margin-left:5px}.physical-waiver-add-card small{display:block;color:#728694;font-size:10px;line-height:1.35;margin-top:3px}

/* Gift card payment choice: Cash + Card/Square, visually obvious. */
#gcPaymentMethod{font-weight:800}
#giftCardSaleForm label:has(#gcPaymentMethod){min-width:190px}

@media(max-width:1050px){
  
  
  
  
}
@media(max-width:760px){
  .admin-nav-flat{max-height:none!important}
  
  
  
  .customer-quick-actions{grid-template-columns:1fr 1fr!important}
}

/* V576 — Business workspaces: turn Expenses + Inventory controls into a real Celebrate command bar */


















/* V576 — Edit Customer modal gets the same polished language as Customer Profile */









.customer-edit-icon.coral{background:#ffe2e7}








.customer-consent-card b{font-size:11px;color:#173c58}.customer-consent-card small{font-size:9px;color:#8294a1}



@media(max-width:680px){.customer-edit-grid label.full{grid-column:auto!important}.customer-edit-footer{justify-content:stretch!important}.customer-edit-footer .action-btn{flex:1!important}}

/* V577 — CELEBRATE CUSTOMER LANGUAGE APPLIED ACROSS ADMIN
   Customers is the visual source of truth. Keep Front Desk untouched. */

:root{
  --celebrate-surface:#ffffff;
  --celebrate-soft:#f4fafb;
  --celebrate-soft-warm:#fff9f1;
  --celebrate-line:#d8e7ed;
  --celebrate-shadow:0 14px 34px rgba(15,45,74,.065);
}

/* Shared page rhythm */
.admin-group-page{padding:8px 4px 28px!important;}
.admin-group-page > .clean-page-head,.admin-group-page > .admin-group-intro + .admin-group-module,.admin-group-page > .admin-module-card:first-child{margin-top:0!important;}
.clean-page-head{padding:4px 4px 14px!important;align-items:center!important;}
.clean-page-head h2{font-size:42px!important;line-height:1!important;letter-spacing:-.045em!important;font-weight:950!important;color:var(--celebrate-navy)!important;}


/* Shared Celebrate cards for every non-Front-Desk page */
.admin-group-page .admin-module-card,.admin-group-page .clean-list-panel,.admin-group-page .panel:not(.fd-schedule-panel):not(.fd-openplay-front-panel):not(.fd-snack-panel),.admin-group-page .admin-disclosure:not(.fd-operations-disclosure){
  border-color:var(--celebrate-line)!important;
  border-radius:20px!important;
  box-shadow:var(--celebrate-shadow)!important;
}

/* Events: Customer-style page + directory card */
#section-events .events-list-panel{
  background:var(--celebrate-surface)!important;
  border:1px solid var(--celebrate-line)!important;
  border-top:4px solid #f45168!important;
  border-radius:22px!important;
  box-shadow:var(--celebrate-shadow)!important;
  padding:18px!important;
  overflow:hidden!important;
}
#section-events .events-table-wrap{border:1px solid #dce9ee!important;border-radius:16px!important;overflow:hidden;background:#fff;}
#section-events .events-table-head{
  background:#eef7f9!important;color:#587287!important;border-bottom:1px solid #d9e7ec!important;
  padding:12px 14px!important;font-size:10px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important;
}
#section-events #eventSignupSummary > *{border-bottom:1px solid #e7eff2!important;background:#fff!important;}
#section-events #eventSignupSummary > *:hover{background:#fbfeff!important;}
#section-events .action-btn{border-radius:11px!important;min-height:38px!important;font-weight:850!important;}

/* Business: keep tabs, but make each workspace feel like a Customer directory */



















/* Finance overview adopts the same colorful metric language */







/* Marketing: same page-head + stat-card + directory rhythm */
#section-marketing .admin-module-card{
  background:#fff!important;border:1px solid var(--celebrate-line)!important;border-radius:22px!important;
  box-shadow:var(--celebrate-shadow)!important;overflow:hidden!important;margin-bottom:18px!important;
}
#section-marketing .admin-module-heading{
  padding:22px 22px 14px!important;background:linear-gradient(135deg,#f5fbfc,#fff9f3)!important;
  border-bottom:1px solid #e1ebef!important;
}
#section-marketing .admin-module-heading h2{font-size:26px!important;font-weight:950!important;color:var(--celebrate-navy)!important;margin:0!important;}
#section-marketing .admin-group-module-body{padding:16px 20px 20px!important;}
#section-marketing .primary-metrics{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin:0 0 16px!important;}
#section-marketing .primary-metrics .metric{min-height:86px!important;border-radius:17px!important;padding:15px 17px!important;}
#section-marketing .primary-metrics .metric strong{font-size:30px!important;}
#section-marketing .primary-metrics .metric span{font-size:11px!important;text-transform:uppercase!important;letter-spacing:.07em!important;}
#section-marketing .admin-group-module-body > .panel{background:#fff!important;border:1px solid var(--celebrate-line)!important;border-radius:18px!important;box-shadow:none!important;padding:16px!important;}

/* Settings: same card system, but quieter than Customers */
#section-system .admin-module-card{
  background:#fff!important;border:1px solid var(--celebrate-line)!important;border-radius:22px!important;
  box-shadow:var(--celebrate-shadow)!important;overflow:hidden!important;margin-bottom:18px!important;
}
#section-system .admin-module-heading{padding:22px 22px 14px!important;background:linear-gradient(135deg,#f2fbfb,#fffaf3)!important;border-bottom:1px solid #e1ebef!important;}
#section-system .admin-module-heading h2{font-size:27px!important;font-weight:950!important;color:var(--celebrate-navy)!important;margin:0!important;}
#section-system .admin-group-module-body{padding:16px 20px 20px!important;}
#section-system .primary-metrics{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin:0 0 16px!important;}
#section-system .primary-metrics .metric{min-height:84px!important;border-radius:17px!important;padding:15px 17px!important;}
#section-system .primary-metrics .metric strong{font-size:28px!important;}
#section-system .settings-list{border-radius:17px!important;box-shadow:0 6px 18px rgba(15,45,74,.035)!important;}
#section-system .settings-row:hover{background:#fbfeff!important;}

/* Shared filters and action controls */
.admin-group-page .toolbar .search,.admin-group-page .toolbar .filter-select,.admin-group-page .toolbar input,.admin-group-page .toolbar select{
  min-height:42px!important;border:1px solid #cbdfe8!important;border-radius:12px!important;background:#fff!important;color:#173b58!important;
}
.admin-group-page .action-btn{border-radius:12px!important;font-weight:850!important;}
.admin-group-page .action-btn.secondary{background:#fff!important;border-color:#cbdfe8!important;color:#15506b!important;}
.admin-group-page .badge{border-radius:999px!important;font-weight:850!important;}

/* Remove redundant explanatory copy outside Front Desk */


/* Customer profile / edit modal uses the same page language */




@media(max-width:900px){
  #section-marketing .primary-metrics,#section-system .primary-metrics{grid-template-columns:1fr!important;}
  
}
@media(max-width:680px){
  .clean-page-head h2{font-size:34px!important;}
  
  
}

/* V578 — CUSTOMER VISUAL LANGUAGE FOR BUSINESS / MARKETING / SETTINGS */
:root{
  --celebrate-navy:#103653;
  --celebrate-deep:#0b2c46;
  --celebrate-teal:#19aeb3;
  --celebrate-coral:#f45b70;
  --celebrate-yellow:#f6bf35;
  --celebrate-purple:#8170e8;
  --celebrate-mint:#eaf9f7;
  --celebrate-line:#d7e5ee;
  --celebrate-bg:#f7fafb;
}

/* Shared page language */



/* BUSINESS */








































/* MARKETING */
#section-marketing{border-top:5px solid var(--celebrate-purple)!important}
#section-marketing>.admin-group-module{
  margin-bottom:18px!important;border-top:0!important;
}
#section-marketing .admin-module-heading{
  padding:24px 26px 18px!important;background:linear-gradient(135deg,#f7f4ff,#fff)!important;border-bottom:1px solid var(--celebrate-line)!important;
}
#section-marketing .admin-module-heading h2{
  color:var(--celebrate-navy)!important;font-size:30px!important;font-weight:950!important;margin:0!important;
}
#section-marketing .admin-group-module-body{padding:22px 26px 28px!important;background:#fff!important}
#section-marketing .primary-metrics{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin:0 0 22px!important}
#section-marketing .primary-metrics .metric{
  min-height:94px!important;padding:18px 20px!important;border:1px solid var(--celebrate-line)!important;border-radius:17px!important;box-shadow:0 7px 20px rgba(16,54,83,.05)!important;background:#fff!important;
}
#section-marketing .primary-metrics .metric:first-child{border-top:4px solid var(--celebrate-teal)!important;background:linear-gradient(135deg,#effbf9,#fff)!important}
#section-marketing .primary-metrics .metric:nth-child(2){border-top:4px solid var(--celebrate-purple)!important;background:linear-gradient(135deg,#f5f2ff,#fff)!important}
#section-marketing .primary-metrics .metric strong{font-size:30px!important;color:var(--celebrate-navy)!important}
#section-marketing .primary-metrics .metric span{font-size:10px!important;font-weight:800!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:#718398!important}
#section-marketing .admin-group-module-body>.panel{
  border:1px solid var(--celebrate-line)!important;border-radius:17px!important;box-shadow:none!important;background:#fff!important;padding:0!important;overflow:hidden!important;
}
#section-marketing .admin-group-module-body>.panel+.panel{margin-top:18px!important}
#section-marketing .settings-row{padding:16px 18px!important;border-bottom:1px solid #e7eef3!important}
#section-marketing .settings-row:last-child{border-bottom:0!important}
#section-marketing .settings-row b{color:var(--celebrate-navy)!important}

/* SETTINGS */
#section-system{border-top:5px solid #58b9df!important}
#section-system>.admin-group-module{margin-bottom:18px!important}
#section-system .admin-module-heading{
  padding:24px 26px 18px!important;background:linear-gradient(135deg,#eefafd,#fff)!important;border-bottom:1px solid var(--celebrate-line)!important;
}
#section-system .admin-module-heading h2{
  color:var(--celebrate-navy)!important;font-size:30px!important;font-weight:950!important;margin:0!important;
}
#section-system .admin-group-module-body{padding:22px 26px 28px!important;background:#fff!important}
#section-system .primary-metrics{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin-bottom:22px!important}
#section-system .primary-metrics .metric{
  min-height:94px!important;padding:18px 20px!important;border:1px solid var(--celebrate-line)!important;border-radius:17px!important;box-shadow:0 7px 20px rgba(16,54,83,.05)!important;
}
#section-system .primary-metrics .metric:first-child{border-top:4px solid var(--celebrate-teal)!important;background:linear-gradient(135deg,#effbf9,#fff)!important}
#section-system .primary-metrics .metric:nth-child(2){border-top:4px solid #58b9df!important;background:linear-gradient(135deg,#eef8ff,#fff)!important}
#section-system .primary-metrics .metric strong{font-size:30px!important;color:var(--celebrate-navy)!important}
#section-system .primary-metrics .metric span{font-size:10px!important;font-weight:800!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:#718398!important}
#section-system .settings-list{display:flex!important;flex-direction:column!important;gap:16px!important}
#section-system .settings-group{
  border:1px solid var(--celebrate-line)!important;border-radius:17px!important;background:#fff!important;overflow:hidden!important;box-shadow:none!important;
}
#section-system .settings-group-head,#section-system .profile-card-head{
  padding:15px 18px!important;background:#eef6f8!important;border-bottom:1px solid var(--celebrate-line)!important;color:var(--celebrate-navy)!important;
}
#section-system .settings-row,#section-system .setting-row{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:15px 18px!important;border-bottom:1px solid #e8eef3!important;background:#fff!important;
}
#section-system .settings-row:last-child,#section-system .setting-row:last-child{border-bottom:0!important}
#section-system .settings-row b,#section-system .setting-row b{color:#183b57!important}
#section-system .settings-row small,#section-system .setting-row small{color:#718398!important}
#section-system .row-actions{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important}
#section-system .badge{border-radius:999px!important}

/* Shared responsive */
@media(max-width:900px){
 
 
 
 
}
@media(max-width:680px){
 #section-marketing .primary-metrics,#section-system .primary-metrics{grid-template-columns:1fr!important}
 
 
 
 
 
 
 #section-system .settings-row,#section-system .setting-row{align-items:flex-start!important;flex-direction:column!important}
}

/* V579 — CUSTOMER PROFILE + EDIT FINAL POLISH / BUSINESS TABLE SAFETY */

/* Customer profile: use the same visual hierarchy as the approved Customers page. */
























/* Edit customer: make it feel like a real Celebrate profile editor, not a generic form. */


















/* Business tables: never let the right edge of the table get visually chopped. */





@media(max-width:820px){
  
  
  
  
}
@media(max-width:600px){
  
  
  
}


/* V580 — Customer profile cleanup + edit modal polish */























/* There is intentionally only one customer-edit entry point on the profile. */


/* V580 — party guests belong to the booking, not the permanent customer profile */
.party-guests-v2{border-top:4px solid #20a8aa!important;background:#fff!important}
.party-guests-v2 .profile-card-head{align-items:center;gap:12px}
.party-guest-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}
.party-guest-metrics>div{padding:13px 14px;border-radius:14px;border:1px solid #dce9ed;background:#f7fbfc}
.party-guest-metrics>div:nth-child(1){background:#eaf8fc;border-color:#cbe8f0}
.party-guest-metrics>div:nth-child(2){background:#ebfaf1;border-color:#cdebd9}
.party-guest-metrics>div:nth-child(3){background:#fff7df;border-color:#f3e2ae}
.party-guest-metrics strong{display:block;font-size:22px;color:#123957;line-height:1}
.party-guest-metrics span{display:block;margin-top:5px;font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:850;color:#718795}
.party-guests-empty{padding:16px;border:1px dashed #cbdde3;border-radius:13px;background:#fafcfd}
.party-guests-empty b{display:block;color:#173a55;font-size:12px}.party-guests-empty small{display:block;color:#718795;font-size:10px;line-height:1.45;margin-top:4px}
@media(max-width:700px){.party-guest-metrics{grid-template-columns:1fr}.party-guests-v2 .profile-card-head{align-items:flex-start;flex-direction:column}.party-guests-v2 .profile-card-head .row-actions{width:100%}}












.address-panel{border-top:3px solid #f2bd36!important}.notes-panel{border-top:3px solid #f15a6b!important}


.customer-edit-panel-head small{font-size:9.5px!important;color:#7b8e9d!important}
.edit-panel-icon.teal{background:#e1f7f5;color:#10979b}.edit-panel-icon.yellow{background:#fff2c9;color:#b47c00}.edit-panel-icon.coral{background:#ffe4e8;color:#d34d61}








.customer-consent-card span{display:flex!important;flex-direction:column!important;gap:1px!important}.customer-consent-card b{font-size:10px!important;color:#173c58}.customer-consent-card small{font-size:8.5px!important;color:#8294a1}







@media(max-width:700px){}

/* V583 — Front Desk Week View: readable agenda instead of cramped 7-column cards */
.fd-week-agenda{display:grid;gap:10px;min-width:0}
.fd-week-agenda-day{border:1px solid #dfe8ee;border-radius:15px;background:#fff;overflow:hidden}
.fd-week-agenda-day.is-today{border-color:#13a7aa;box-shadow:0 0 0 1px rgba(19,167,170,.14)}
.fd-week-agenda-head{width:100%;display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:12px;border:0;border-bottom:1px solid #e7eef2;background:#f7fafb;padding:11px 14px;text-align:left;cursor:pointer;color:var(--navy)}
.fd-week-agenda-head span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#63798a}
.fd-week-agenda-head b{font-size:15px;font-weight:950}
.fd-week-agenda-head em{font-style:normal;font-size:10px;font-weight:800;color:#7a8c9a}
.fd-week-agenda-events{display:grid;gap:7px;padding:9px}
.fd-week-agenda-events .fd-calendar-item{grid-template-columns:105px minmax(0,1fr) auto;padding:11px 13px;border-left-width:4px}
.fd-week-agenda-events .fd-cal-time{font-size:11px;font-weight:900}
.fd-week-agenda-events .fd-cal-main b{font-size:13px;white-space:normal;overflow:visible;text-overflow:clip}
.fd-week-agenda-events .fd-cal-main small{font-size:11px;white-space:normal;overflow:visible;text-overflow:clip}
.fd-week-agenda-events .fd-cal-arrow{display:block}
@media(max-width:760px){.fd-week-agenda-head{grid-template-columns:1fr auto}.fd-week-agenda-head b{grid-column:1}.fd-week-agenda-head em{grid-column:2;grid-row:1/3}.fd-week-agenda-events .fd-calendar-item{grid-template-columns:75px minmax(0,1fr) auto}}

/* V584 — Customer profile modal: keep header fixed and make the profile body actually scrollable */








/* CLEAN — Expenses workspace (single consolidated layout block)
   The expense modal/form styles remain in the base Admin CSS above. This block
   owns only the Business > Expenses workspace so there is one source of truth.
*/



























@media(max-width:1180px){
  
  
  
}
@media(max-width:900px){
  
  
  
  
}
@media(max-width:620px){
  
  
  
}

/* V592 — Expense editor: restore scrolling + keep Save accessible */





@media(max-width:760px){
  
  
}

/* V593 — clean admin typography: remove explanatory subtitles while preserving functional labels/status text. */
.panel-subtitle,.expense-section-title small,.expense-lines-head small,.profile-card-head small,.customer-quick-action small,.admin-disclosure > summary small,.admin-module-heading > p.panel-subtitle,.section-head > p.panel-subtitle,.section-title > p.panel-subtitle,.module-heading > p.panel-subtitle{
  display: none !important;
}

/* V597 — Business workspace uses the approved Customers visual language.
   One clean surface, soft Celebrate cards, stronger headings, restrained color,
   and no nested/oversized containers. */



























/* Finance — same card language as Customers, with KPI color coding only where useful. */

























/* Expenses and Inventory — same directory/card treatment as Customers. */









/* Expense item photo control — last column, compact and optional. */
.expense-line-photo{height:38px!important;min-width:92px!important;padding:0 10px!important;border:1px dashed #b9d4df!important;border-radius:10px!important;background:#f8fbfc!important;color:#0f6f86!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;font-size:11px!important;font-weight:900!important;white-space:nowrap!important}
.expense-line-photo:hover{background:#eaf8f7!important;border-color:#63bfc3!important}
.expense-line-item{grid-template-columns:minmax(150px,1.5fr) 115px 120px 68px 110px 105px 82px!important;align-items:center!important}
.expense-line-item .expense-line-photo-file{display:none!important}
.expense-line-photo-url{display:none!important}

/* Modal: Edit Expense follows the same clean card language and always has an accessible footer. */







@media(max-width:900px){
  
  
  
}
@media(max-width:680px){
  
  
  
  
  
  
}

/* V598 — Business final cleanup: one hierarchy, compact finance KPIs, no clipped/duplicate-looking surfaces */



















/* Expenses / Inventory: remove accidental nested framing and keep tables readable without clipping. */






/* Keep item photos inside their controls instead of being cropped by a parent surface. */


@media(max-width:1100px){
  
}
@media(max-width:760px){
  
  
  
}

/* V599 — BUSINESS CLEAN MASTER / remove stacked-card overrides */










/* Finance: seven compact KPI cards, never giant/nested */
















/* Expenses / Inventory: one clean surface, no card-inside-card */










/* Never crop inventory / business photos */



/* Remove explanatory subtitles throughout Business */


@media(max-width:1050px){
  
}
@media(max-width:720px){
  
  
  
}

/* CELEBRATE CLEAN MASTER — canonical Business workspace + modal system. */
.modal{position:fixed!important;inset:0!important;display:grid!important;place-items:center!important;padding:16px!important;background:rgba(5,26,40,.52)!important;backdrop-filter:blur(3px)!important;z-index:100!important;overflow:hidden!important}
.modal[hidden]{display:none!important}
.modal-card{width:min(920px,94vw)!important;height:min(88vh,820px)!important;max-height:88vh!important;display:flex!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important;background:#fff!important;border:1px solid #d8e7ed!important;border-top:4px solid #16aaa8!important;border-radius:22px!important;box-shadow:0 28px 90px rgba(4,30,48,.30)!important}
.modal-head{flex:0 0 auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:64px!important;padding:14px 22px!important;background:linear-gradient(135deg,#f4fbfb,#fffaf5)!important;border-bottom:1px solid #dce8ed!important}
.modal-head h2,.modal-head h3{margin:0!important;color:#123957!important;font-weight:950!important}
.modal-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;padding:20px 22px 28px!important;background:#fff!important}
.modal-body::-webkit-scrollbar{width:9px}.modal-body::-webkit-scrollbar-track{background:#edf4f6;border-radius:999px}.modal-body::-webkit-scrollbar-thumb{background:#bfd3dc;border-radius:999px}
.modal-body form{min-height:0!important}.modal-body .form-footer{position:sticky!important;bottom:-1px!important;z-index:5!important;display:flex!important;justify-content:flex-end!important;gap:10px!important;padding:12px 0 0!important;margin-top:16px!important;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 35%)!important}
.modal-body .form-footer .action-btn{min-height:42px!important}.modal-close{flex:0 0 auto!important}

/* Business is one surface. Finance KPIs are compact; Expenses and Inventory are table workspaces. */




































/* Gift card sale: payment is a real, visible choice and is persisted by the existing RPC. */


@media(max-width:1100px){}
@media(max-width:760px){.modal{padding:8px!important}.modal-card{width:96vw!important;height:92dvh!important;max-height:92dvh!important;border-radius:18px!important}.modal-head{min-height:58px!important;padding:12px 16px!important}.modal-body{padding:16px!important}}

/* Front Desk — Week view intentionally shows Saturdays only. */
.fd-week-agenda-saturdays-only{grid-template-columns:minmax(0,1fr)!important}.fd-week-agenda-saturdays-only .fd-week-agenda-day{min-width:0}


/* ========================================================================
   V603 — CANONICAL BUSINESS + GIFT CARD STYLES
   One source of truth for these workspaces. Older Business/Gift overrides
   were removed from this stylesheet instead of stacking another patch.
   ======================================================================== */
#section-business{padding:0 0 24px!important;background:transparent!important}
#section-business .business-master-card{width:100%;box-sizing:border-box;background:#fff;border:1px solid #dfe8ee;border-top:4px solid #43c4c9;border-radius:22px;box-shadow:0 8px 24px rgba(16,42,67,.055);overflow:hidden}
#section-business .business-master-head{padding:22px 24px 10px;background:linear-gradient(135deg,#f5fbfb,#fffdf9)}
#section-business .business-master-head h2{margin:0;font-size:32px;line-height:1.05;color:#123957}
#section-business .business-master-tabs{display:flex;align-items:stretch;gap:0;padding:0 18px;border-bottom:1px solid #dbe7ed;background:#fff}
#section-business .business-master-tab{appearance:none;border:0;border-bottom:4px solid transparent;padding:13px 18px;margin:0;background:#fff;color:#173852;font:800 13px/1.2 inherit;cursor:pointer;border-radius:12px 12px 0 0}
#section-business .business-master-tab.active{background:#e3f8f6;color:#0d9c99;border-bottom-color:#16aaa8}
#section-business .business-master-content{background:#fff}
#section-business .business-master-pane{background:#fff;padding:0}
#section-business .business-master-pane>.admin-module-heading{padding:16px 20px 6px;margin:0;border:0;background:#fff}
#section-business .business-master-pane>.admin-module-heading h2{margin:0;font-size:24px;line-height:1.1;color:#123957}
#section-business .business-table-workspace{width:100%;box-sizing:border-box;margin:0;padding:8px 20px 22px;background:#fff}
#section-business .business-table-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 0 12px;margin:0 0 10px;border-bottom:1px solid #dce7ee}
#section-business .business-table-title{display:flex;align-items:baseline;gap:8px;min-width:0;white-space:nowrap;color:#173852}
#section-business .business-table-title b{font-size:15px;letter-spacing:.035em}
#section-business .business-table-title strong{font-size:13px;color:#173852}
#section-business .business-table-title span{font-size:12px;color:#708394}
#section-business .business-table-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0}
#section-business .business-table-actions .search{min-height:40px;min-width:210px}
#section-business .business-table-actions .filter-select{min-height:40px}
#section-business .business-table-workspace #expensesTable .table-wrap,#section-business .business-table-workspace #inventoryTable .table-wrap{width:100%;max-width:100%;border:1px solid #dce7ee;border-radius:14px;box-shadow:none;background:#fff;overflow:auto}
#section-business .business-table-workspace #expensesTable table,#section-business .business-table-workspace #inventoryTable table{width:100%;min-width:0;border:0;border-radius:0}
#section-business .business-table-workspace #expensesTable th,#section-business .business-table-workspace #inventoryTable th{padding:10px 12px;font-size:9px;white-space:nowrap}
#section-business .business-table-workspace #expensesTable td,#section-business .business-table-workspace #inventoryTable td{padding:11px 12px;font-size:12px;vertical-align:middle}
#section-business .business-table-workspace #expensesTable td:last-child,#section-business .business-table-workspace #inventoryTable td:last-child{white-space:nowrap;width:1%}
#section-business .business-table-workspace .inventory-thumb,#section-business .business-table-workspace .expense-item-thumb{object-fit:contain;object-position:center;background:#f7fafb}



/* V658 — FINANCE CLEAN MASTER
   One isolated namespace. No dependency on the previous Finance layout classes. */
.finance-v658{box-sizing:border-box;background:#fff!important;padding:0 20px 24px!important;border:0!important;overflow:visible!important}
.finance-v658 *{box-sizing:border-box}
.finance-v658-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:22px 0 16px;border-bottom:1px solid #dfe9ee}
.finance-eyebrow{font-size:9px;font-weight:900;letter-spacing:.18em;color:#0ca7a5;margin-bottom:5px}
.finance-v658-head h2{margin:0;color:#123957;font-size:30px;line-height:1.05;font-weight:900}
.finance-v658-head p{margin:7px 0 0;color:#718596;font-size:12px;line-height:1.35}
.finance-v658-period{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.finance-v658-period label{display:grid;gap:5px;min-width:108px}
.finance-v658-period label span{font-size:8px;font-weight:900;letter-spacing:.09em;color:#718596}
.finance-v658-period select,.finance-v658-period input{height:38px;border:1px solid #cbdde6;border-radius:10px;background:#fff;color:#173852;padding:0 10px;font:700 11px/1 inherit;outline:none}
.finance-v658-period select{min-width:122px}
.finance-v658-period input{width:145px}
.finance-v658-period select:focus,.finance-v658-period input:focus{border-color:#13aaa8;box-shadow:0 0 0 2px rgba(19,170,168,.10)}
.finance-v658-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px 0}
.finance-kpi{min-width:0;min-height:94px;border:1px solid #dce7ed;border-radius:15px;padding:14px;display:flex;align-items:center;gap:12px;background:#fff;box-shadow:0 5px 15px rgba(16,42,67,.045)}
.finance-kpi-icon{width:42px;height:42px;flex:0 0 42px;border-radius:12px;display:grid;place-items:center;font-size:20px;font-weight:900;color:#173852}
.finance-kpi span{display:block;color:#5f7587;font-size:10px;font-weight:850;line-height:1.15}
.finance-kpi strong{display:block;margin-top:4px;color:#173852;font-size:22px;line-height:1.05;font-weight:900;white-space:nowrap}
.finance-kpi small{display:block;margin-top:5px;color:#899aa6;font-size:9px;line-height:1.1}
.finance-kpi-revenue{border-top:4px solid #19aaa7;background:linear-gradient(180deg,#f7fffe,#fff)}
.finance-kpi-revenue .finance-kpi-icon{background:#dff7f5;color:#0b9694}
.finance-kpi-expense{border-top:4px solid #f15a70;background:linear-gradient(180deg,#fff9fa,#fff)}
.finance-kpi-expense .finance-kpi-icon{background:#ffe7eb;color:#d7475e}
.finance-kpi-transfer{border-top:4px solid #f2c44c;background:linear-gradient(180deg,#fffdf5,#fff)}
.finance-kpi-transfer .finance-kpi-icon{background:#fff2c9;color:#a87809}
.finance-kpi-income{border-top:4px solid #5aaed0;background:linear-gradient(180deg,#f7fcff,#fff)}
.finance-kpi-income .finance-kpi-icon{background:#e3f3fa;color:#2c82a7}
.finance-v658-main-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.8fr);gap:14px}
.finance-v658-panel,.finance-v658-actions{min-width:0;border:1px solid #dce7ed;border-radius:16px;background:#fff;box-shadow:0 5px 15px rgba(16,42,67,.04);overflow:hidden}
.finance-v658-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px 12px;border-bottom:1px solid #e5edf1}
.finance-v658-panel-head h3{margin:0;color:#173852;font-size:15px;line-height:1.15;font-weight:900}
.finance-v658-panel-head p{margin:4px 0 0;color:#81929f;font-size:9px;line-height:1.2}
.finance-v658-search{min-width:210px;max-width:280px}
.finance-v658-search .search{width:100%;height:36px;border:1px solid #cbdde6;border-radius:9px;padding:0 10px;font-size:11px}
.finance-v658-transactions #financeTransactionsTable{overflow:auto}
.finance-v658-transactions #financeTransactionsTable .table-wrap{border:0;border-radius:0;box-shadow:none;min-width:0}
.finance-v658-transactions #financeTransactionsTable table{width:100%;min-width:590px;border-collapse:collapse}
.finance-v658-transactions #financeTransactionsTable th{background:#f5f9fb;color:#708394;font-size:8px;letter-spacing:.07em;text-transform:uppercase;padding:9px 12px;white-space:nowrap}
.finance-v658-transactions #financeTransactionsTable td{padding:10px 12px;border-bottom:1px solid #e6edf1;color:#425e71;font-size:11px;vertical-align:middle}
.finance-v658-transactions #financeTransactionsTable tr:last-child td{border-bottom:0}
.finance-type{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900;line-height:1;white-space:nowrap}
.finance-type.good{background:#e1f7ed;color:#19754d}.finance-type.warn{background:#ffe8ed;color:#b93c52}.finance-type.info{background:#e5f3fa;color:#2d7190}
.finance-amount{font-weight:900;white-space:nowrap;text-align:right}.finance-amount.positive{color:#13815d}.finance-amount.negative{color:#b93c52}
.finance-v658-sources{display:flex;flex-direction:column}
.finance-v658-source-list{padding:4px 16px 8px}
.finance-v658-source-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #e6edf1}
.finance-v658-source-row:last-child{border-bottom:0}
.finance-v658-source-name{min-width:0;color:#405c70;font-size:11px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.finance-v658-source-amount{color:#173852;font-size:12px;font-weight:900;white-space:nowrap}
.finance-v658-source-pct{color:#81929f;font-size:9px;font-weight:800;min-width:30px;text-align:right}
.finance-v658-mini-block{margin:4px 16px 16px;padding-top:12px;border-top:1px solid #dfe9ee}
.finance-v658-mini-title{margin-bottom:4px;color:#173852;font-size:11px;font-weight:900}
.finance-v658-mini-block .report-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #edf2f4}
.finance-v658-mini-block .report-row:last-child{border-bottom:0}
.finance-v658-mini-block .report-row span{color:#718596;font-size:10px}.finance-v658-mini-block .report-row b{color:#173852;font-size:10px}
.finance-v658-actions{margin-top:14px;padding-bottom:14px}
.finance-v658-actions>.finance-v658-panel-head{border-bottom:0;padding-bottom:8px}
.finance-v658-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 16px}
.finance-action{min-height:62px;border:1px solid #dce7ed;border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:9px;text-align:left;cursor:pointer;color:#173852;font:800 11px/1.15 inherit;transition:transform .12s ease,box-shadow .12s ease}
.finance-action:hover{transform:translateY(-1px);box-shadow:0 5px 12px rgba(16,42,67,.08)}
.finance-action span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;font-size:17px;font-weight:900;flex:0 0 30px}
.finance-action-expense{background:#fff3f5}.finance-action-expense span{background:#ffdce3;color:#cf3e57}
.finance-action-inventory{background:#fffaf0}.finance-action-inventory span{background:#ffefc0;color:#a47709}
.finance-action-report{background:#f3faff}.finance-action-report span{background:#dceff8;color:#2a7e9f}
.finance-action-tax{background:#f1fbf6}.finance-action-tax span{background:#d8f3e6;color:#2d7e59}
.finance-v658-hidden{display:none!important}
@media(max-width:1050px){.finance-v658-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-v658-main-grid{grid-template-columns:1fr}.finance-v658-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.finance-v658{padding:0 12px 18px!important}.finance-v658-head{align-items:stretch;flex-direction:column}.finance-v658-period{justify-content:flex-start}.finance-v658-period label{flex:1;min-width:0}.finance-v658-period input,.finance-v658-period select{width:100%;min-width:0}.finance-v658-kpis{grid-template-columns:1fr}.finance-v658-panel-head{align-items:stretch;flex-direction:column}.finance-v658-search{min-width:0;max-width:none;width:100%}.finance-v658-action-grid{grid-template-columns:1fr}.finance-v658-head h2{font-size:27px}}

/* Gift Cards — single clean workspace */
#section-giftcards{padding-bottom:24px!important}
#section-giftcards .gift-workspace{width:100%;box-sizing:border-box;background:#fff;border:1px solid #dfe8ee;border-top:4px solid #f4c64b;border-radius:22px;box-shadow:0 8px 24px rgba(16,42,67,.055);padding:20px}
#section-giftcards .gift-page-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
#section-giftcards .gift-page-head h2{margin:0;color:#123957;font-size:30px}
#section-giftcards .gift-page-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
#section-giftcards .gift-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
#section-giftcards .gift-stat{min-width:0;display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #dce7ee;border-radius:14px;background:#fff}
#section-giftcards .gift-stat strong{display:block;font-size:20px;color:#173852;line-height:1.05}
#section-giftcards .gift-stat small{display:block;color:#708394;font-size:10px;margin-top:3px}
#section-giftcards .gift-directory-card{border:1px solid #dce7ee;border-radius:15px;background:#fff;overflow:hidden}
#section-giftcards .gift-filters{display:flex;align-items:center;gap:8px;padding:12px;border-bottom:1px solid #e1e9ed;flex-wrap:wrap}
#section-giftcards .gift-search-wrap{display:flex;align-items:center;gap:7px;min-width:260px;flex:1}
#section-giftcards .gift-search-wrap .search{width:100%}
#section-giftcards .gift-filter{height:40px;border:1px solid #cbdde6;border-radius:10px;background:#fff;color:#173852;padding:0 10px;font:inherit}
#section-giftcards #giftCardsTable{overflow:auto}
#section-giftcards #giftCardsTable table{width:100%;min-width:720px;border-collapse:collapse}
#section-giftcards #giftCardsTable th,#section-giftcards #giftCardsTable td{padding:11px 12px;border-bottom:1px solid #e3ebef;text-align:left;font-size:12px;vertical-align:middle}
#section-giftcards #giftCardsTable th{background:#f5f9fb;color:#708394;font-size:9px;text-transform:uppercase;letter-spacing:.04em}
#section-giftcards .gift-card-value-edit{display:inline-flex;align-items:center;gap:4px;min-width:112px}
#section-giftcards .gift-card-value-input{width:105px;height:36px;padding:7px 9px;border:1px solid #cbd9e3;border-radius:9px;background:#fff;color:#173852;font-weight:800;font-size:13px;box-sizing:border-box}
#section-giftcards .gift-card-actions{display:flex;gap:6px;flex-wrap:wrap}
.gift-payment-choice{display:flex;gap:8px;margin-top:7px}
.gift-payment-btn{min-height:42px;padding:9px 14px;border:1px solid #cbdde6;border-radius:11px;background:#fff;color:#173b58;font-weight:850;cursor:pointer}
.gift-payment-btn.active{border-color:#12aaa9;background:#e6f8f7;color:#087e82;box-shadow:0 0 0 2px rgba(18,170,169,.10)}
.gift-card-sale-form .form-footer{margin-top:12px}

@media(max-width:1100px){#section-business .business-table-head{align-items:flex-start;flex-direction:column}#section-business .business-table-actions{width:100%;justify-content:flex-start}#section-giftcards .gift-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){#section-business .business-table-workspace{padding-left:12px;padding-right:12px}#section-business .business-table-actions{width:100%}#section-business .business-table-actions .search{width:100%;min-width:0}#section-giftcards .gift-workspace{padding:14px}#section-giftcards .gift-page-head{align-items:flex-start;flex-direction:column}#section-giftcards .gift-stats{grid-template-columns:1fr 1fr}#section-giftcards .gift-search-wrap{min-width:100%}}

.birthday-age-pending{display:inline-flex;align-items:center;padding:2px 6px;border-radius:999px;background:#fff2d6;color:#8a6418;font-size:9px;font-weight:800;letter-spacing:.04em}


/* V659 — FRONT DESK CLEAN MASTER
   One authoritative Front Desk layer. Replaces the old V608–V657 visual stack.
   Finance and all non-Front-Desk styles above remain untouched. */
#section-frontdesk{display:block!important;}
#section-frontdesk .fd-hero-head{display:flex!important;justify-content:space-between!important;align-items:flex-end!important;gap:20px!important;margin-bottom:16px!important}
#section-frontdesk .fd-hero-head h1{font-size:34px!important;line-height:1.05!important;margin:3px 0 4px!important;color:var(--navy)!important}
#section-frontdesk .fd-hero-head p{margin:0!important;color:#64798a!important;font-size:13px!important}
#section-frontdesk .fd-hero-kicker{font-size:10px!important;font-weight:950!important;letter-spacing:.16em!important;color:var(--teal)!important}
#section-frontdesk .fd-hero-date{display:grid!important;justify-items:end!important;gap:2px!important}
#section-frontdesk .fd-hero-date b{font-size:12px!important;color:#6d8190!important}
#section-frontdesk .fd-hero-date strong{font-size:25px!important;color:var(--navy)!important}

#section-frontdesk .fd-command-layout{display:block!important;margin:0!important}
#section-frontdesk .fd-calendar-column{display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(320px,.9fr)!important;gap:14px!important;align-items:stretch!important;width:100%!important}
#section-frontdesk .fd-schedule-panel,#section-frontdesk .fd-saturday-column{min-width:0!important;height:430px!important}
#section-frontdesk .fd-schedule-panel{padding:18px!important;border-radius:18px!important;border:1px solid #dce7ed!important;border-top:5px solid var(--teal)!important;background:#fff!important;box-shadow:0 8px 22px rgba(16,42,67,.055)!important;overflow:hidden!important}
#section-frontdesk .fd-schedule-head{align-items:center!important;margin-bottom:8px!important;padding-bottom:8px!important;border-bottom:1px solid #e7edf1!important}
#section-frontdesk .fd-command-kicker{font-size:10px!important;font-weight:950!important;letter-spacing:.15em!important;color:var(--teal)!important}
#section-frontdesk .fd-schedule-head h2{font-size:25px!important;line-height:1.05!important;margin:4px 0 0!important;color:var(--navy)!important;font-weight:950!important}
#section-frontdesk .fd-schedule-controls{display:flex!important;align-items:center!important;gap:8px!important}
#section-frontdesk .view-switch{display:flex!important;gap:2px!important;padding:3px!important;border:1px solid #dce7ed!important;border-radius:11px!important;background:#eef5f7!important}
#section-frontdesk .view-switch button{padding:8px 13px!important;border-radius:9px!important;border:0!important;font-size:11px!important;font-weight:800!important}
#section-frontdesk .view-switch button.active{background:var(--navy)!important;color:#fff!important;box-shadow:0 4px 10px rgba(16,42,67,.16)!important}
#section-frontdesk .fd-period-nav{display:flex!important;gap:6px!important}
#section-frontdesk .fd-period-nav .action-btn{height:36px!important;min-width:38px!important;padding:7px 11px!important}
#section-frontdesk .fd-schedule-label{margin:7px 0 6px!important;padding:0!important;border:0!important;background:transparent!important;color:#657b8c!important;font-size:12px!important;font-weight:850!important}
#section-frontdesk .fd-month-calendar{height:344px!important;overflow:hidden!important}
#section-frontdesk .fd-month-weekdays{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:6px!important;margin-bottom:6px!important}
#section-frontdesk .fd-month-weekdays span{text-align:center!important;color:#8192a0!important;font-size:9px!important;font-weight:900!important;letter-spacing:.06em!important}
#section-frontdesk .fd-month-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:6px!important;height:318px!important;overflow:hidden!important}
#section-frontdesk .fd-month-grid.fd-weeks-5{grid-template-rows:repeat(5,minmax(0,1fr))!important}
#section-frontdesk .fd-month-grid.fd-weeks-6{grid-template-rows:repeat(6,minmax(0,1fr))!important}
#section-frontdesk .fd-month-cell{min-width:0!important;min-height:0!important;height:auto!important;padding:8px!important;border:1px solid #dce7ed!important;border-radius:11px!important;background:#fff!important;color:#8798a6!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;cursor:pointer!important;box-shadow:none!important}
#section-frontdesk .fd-month-cell.is-empty{visibility:hidden!important;pointer-events:none!important}
#section-frontdesk .fd-month-cell.is-saturday{background:#fbfefe!important;border-color:#b8dfe1!important}
#section-frontdesk .fd-month-cell.is-selected{background:#fff!important;border:2px solid var(--teal)!important;color:var(--navy)!important;box-shadow:0 0 0 2px rgba(32,167,165,.10)!important}
#section-frontdesk .fd-month-cell.is-selected .fd-day-number{color:var(--navy)!important;font-weight:950!important}
#section-frontdesk .fd-month-cell.is-today:not(.is-selected){border-color:var(--yellow)!important;box-shadow:inset 0 0 0 1px var(--yellow)!important}
#section-frontdesk .fd-day-number{font-size:15px!important;line-height:1!important;font-weight:800!important;color:#8a9aa7!important}
#section-frontdesk .fd-month-cell.is-saturday .fd-day-number{font-size:17px!important;color:var(--navy)!important;font-weight:900!important}
#section-frontdesk .fd-month-dot{width:6px!important;height:6px!important;border-radius:50%!important;background:var(--teal)!important;margin-top:auto!important}

/* Selected-day card: it always follows the calendar selection. No Saturday list. */
#section-frontdesk .fd-saturday-column{display:block!important}
#section-frontdesk .fd-booking-rail{height:430px!important;min-height:430px!important;padding:18px!important;border:1px solid #dce7ed!important;border-top:5px solid #ef5a67!important;border-radius:18px!important;background:#fff!important;box-shadow:0 8px 22px rgba(16,42,67,.055)!important;overflow:auto!important}
#section-frontdesk .fd-selected-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;margin:0 0 12px!important;padding:0 0 12px!important;border-bottom:1px solid #e7edf1!important}
#section-frontdesk .fd-selected-head>div>span{display:block!important;font-size:9px!important;font-weight:950!important;letter-spacing:.15em!important;color:#0b9da5!important}
#section-frontdesk .fd-selected-head h3{font-size:20px!important;line-height:1.15!important;margin:4px 0 0!important;color:var(--navy)!important}
#section-frontdesk .fd-selected-head>b{min-width:36px!important;height:36px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:#eef5f7!important;color:var(--navy)!important;font-size:13px!important}
#section-frontdesk .fd-selected-list{display:grid!important;gap:8px!important}
#section-frontdesk .fd-selected-booking{display:grid!important;grid-template-columns:52px minmax(0,1fr) 16px!important;align-items:center!important;gap:9px!important;width:100%!important;padding:11px 10px!important;border:1px solid #dce7ed!important;border-radius:11px!important;background:#fff!important;color:var(--navy)!important;text-align:left!important;cursor:pointer!important}
#section-frontdesk .fd-selected-booking:hover{border-color:#9fd6d5!important;background:#f9fdfd!important}
#section-frontdesk .fd-selected-time{font-size:11px!important;font-weight:950!important;color:var(--navy)!important}
#section-frontdesk .fd-selected-main{min-width:0!important;display:flex!important;flex-direction:column!important;gap:2px!important}
#section-frontdesk .fd-selected-main b{font-size:12px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#section-frontdesk .fd-selected-main small{font-size:9px!important;color:#7c8e9b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#section-frontdesk .fd-selected-booking em{font-size:18px!important;font-style:normal!important;color:#12979b!important}
#section-frontdesk .fd-selected-empty{padding:18px 12px!important;border:1px dashed #d7e2e8!important;border-radius:11px!important;background:#fbfcfd!important;text-align:center!important}
#section-frontdesk .fd-selected-empty b{display:block!important;font-size:12px!important;color:var(--navy)!important}
#section-frontdesk .fd-selected-empty span{display:block!important;font-size:10px!important;color:#8999a5!important;margin-top:3px!important}

/* Quick Sale: readable, compact, not microscopic. */
#section-frontdesk .fd-quick-column{width:100%!important;margin-top:14px!important}
#section-frontdesk .fd-snack-panel{width:100%!important;padding:16px 16px 15px!important;border-radius:18px!important;border:1px solid #dce7ed!important;border-top:5px solid var(--yellow)!important;background:#fff!important;box-shadow:0 8px 22px rgba(16,42,67,.055)!important;overflow:visible!important}
#section-frontdesk .fd-snack-panel .panel-head{margin:0 0 10px!important;padding:0 2px 9px!important;border-bottom:1px solid #e7edf1!important}
#section-frontdesk .fd-snack-panel .panel-head h2{font-size:24px!important;line-height:1!important;margin:4px 0 0!important;color:var(--navy)!important}
#section-frontdesk .fd-snack-items{display:block!important;padding:0!important;border:0!important;overflow:visible!important}
#section-frontdesk .fd-snack-group{margin-top:10px!important}
#section-frontdesk .fd-snack-group:first-child{margin-top:0!important}
#section-frontdesk .fd-snack-group-title{font-size:10px!important;font-weight:900!important;letter-spacing:.14em!important;color:#718496!important;margin:0 0 7px!important;padding:0 2px!important}
#section-frontdesk .fd-snack-group-items{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
#section-frontdesk .fd-snack-item{display:grid!important;grid-template-columns:18px minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important;min-width:0!important;min-height:58px!important;height:58px!important;padding:8px 10px!important;border:1px solid #dce7ed!important;border-radius:10px!important;background:#fff!important}
#section-frontdesk .fd-snack-item>input{width:17px!important;height:17px!important;margin:0!important}
#section-frontdesk .fd-snack-item>span:nth-child(2){min-width:0!important;display:block!important}
#section-frontdesk .fd-snack-item>span:nth-child(2) b{display:block!important;font-size:11px!important;line-height:1.15!important;color:var(--navy)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#section-frontdesk .fd-snack-item>span:nth-child(2) small{display:block!important;font-size:9px!important;line-height:1.2!important;color:#758998!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#section-frontdesk .fd-snack-qty{display:flex!important;align-items:center!important;gap:5px!important;white-space:nowrap!important}
#section-frontdesk .fd-snack-qty button{width:25px!important;height:25px!important;padding:0!important;border:1px solid #d3e0e7!important;border-radius:8px!important;background:#f9fbfc!important;font-size:14px!important;font-weight:900!important;color:var(--navy)!important}
#section-frontdesk .fd-snack-qty b{min-width:11px!important;font-size:11px!important;text-align:center!important;color:var(--navy)!important}
#section-frontdesk .fd-snack-checkout{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;margin:11px 0 0!important;padding:11px 13px!important;border-radius:14px!important;background:#123a59!important;color:#fff!important}
#section-frontdesk .fd-snack-checkout>div:first-child>b{font-size:13px!important}
#section-frontdesk .fd-snack-cart{font-size:10px!important;color:#dbe7ee!important;margin-top:2px!important;min-height:14px!important}
#section-frontdesk .fd-snack-total{display:flex!important;align-items:center!important;gap:10px!important}
#section-frontdesk .fd-snack-total small{font-size:9px!important;color:#c8d6df!important;font-weight:900!important}
#section-frontdesk .fd-snack-total>b{font-size:24px!important;color:#fff!important;white-space:nowrap!important}
#section-frontdesk .fd-snack-total select{min-width:120px!important;height:38px!important;padding:7px 9px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:9px!important;background:#173f5e!important;color:#fff!important;font-size:11px!important}
#section-frontdesk .fd-snack-total button{height:38px!important;padding:8px 13px!important;font-size:11px!important;white-space:nowrap!important}

/* Open Play front desk list. */
#section-frontdesk .fd-openplay-front-panel{width:100%!important;margin-top:14px!important;padding:16px 18px 18px!important;border:1px solid #dce7ed!important;border-top:5px solid var(--teal)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 8px 22px rgba(16,42,67,.055)!important;overflow:visible!important}
#section-frontdesk .fd-openplay-bar{align-items:center!important;margin:0!important;padding-bottom:10px!important;border-bottom:1px solid #e7edf1!important}
#section-frontdesk .fd-openplay-title{display:flex!important;align-items:center!important;gap:12px!important;min-width:0!important}
#section-frontdesk .fd-openplay-title h2{font-size:28px!important;line-height:1!important;margin:0!important;color:var(--navy)!important}
#section-frontdesk .fd-openplay-capacity{display:flex!important;align-items:center!important;gap:8px!important;padding:7px 11px!important;border:1px solid #cde8e6!important;border-radius:12px!important;background:#f0faf9!important}
#section-frontdesk .fd-openplay-capacity b{font-size:22px!important;color:var(--navy)!important}
#section-frontdesk .fd-openplay-capacity small{font-size:9px!important;color:#728796!important}
#section-frontdesk .fd-openplay-search{position:relative!important;width:360px!important;max-width:40%!important;z-index:100!important}
#section-frontdesk #fdQuickCustomerSearch{height:44px!important;min-height:44px!important;padding:10px 13px!important;font-size:14px!important;border-radius:11px!important}
#section-frontdesk #fdQuickCustomerResults{position:absolute!important;left:0!important;right:0!important;top:calc(100% + 7px)!important;width:100%!important;max-height:330px!important;overflow:auto!important;z-index:99999!important;border:1px solid #d5e1e8!important;border-radius:13px!important;background:#fff!important;box-shadow:0 18px 45px rgba(16,42,67,.18)!important}
#section-frontdesk .fd-search-results{display:grid!important;gap:0!important}
#section-frontdesk .fd-quick-customer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:11px 12px!important;border-bottom:1px solid #e8eef2!important;background:#fff!important}
#section-frontdesk .fd-quick-customer:last-child{border-bottom:0!important}
#section-frontdesk .fd-quick-customer-main{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;flex:1 1 auto!important}
#section-frontdesk .fd-quick-avatar{width:36px!important;height:36px!important;flex:0 0 36px!important;border-radius:50%!important;background:#edf5f6!important;color:var(--navy)!important;font-weight:900!important}
#section-frontdesk .fd-quick-customer-main>div:last-child{min-width:0!important}
#section-frontdesk .fd-quick-customer-main b{display:block!important;font-size:12px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;color:var(--navy)!important}
#section-frontdesk .fd-quick-customer-main small{display:block!important;font-size:9px!important;color:#758997!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;margin-top:2px!important}
#section-frontdesk .fd-quick-status{display:none!important}
#section-frontdesk .fd-quick-actions{display:flex!important;align-items:center!important;gap:6px!important;flex:0 0 auto!important}
#section-frontdesk .fd-quick-actions .action-btn{min-height:34px!important;padding:7px 9px!important;font-size:9px!important;white-space:nowrap!important}
#section-frontdesk .fd-openplay-table{margin-top:9px!important;border:1px solid #dce7ed!important;border-radius:13px!important;overflow:hidden!important;background:#fff!important}
#section-frontdesk .fd-openplay-table-head,#section-frontdesk .fd-openplay-row{display:grid!important;grid-template-columns:minmax(210px,1.55fr) 80px minmax(150px,1.1fr) 100px 130px 150px!important;column-gap:10px!important;align-items:center!important}
#section-frontdesk .fd-openplay-table-head{min-height:38px!important;padding:0 12px!important;background:#f3f7f9!important;color:#637786!important;font-size:9px!important;font-weight:900!important;letter-spacing:.06em!important}
#section-frontdesk .fd-openplay-row{min-height:78px!important;padding:10px 12px!important;border-top:1px solid #e8eef1!important;background:#fff!important}
#section-frontdesk .fd-op-guest b{font-size:13px!important;color:var(--navy)!important}
#section-frontdesk .fd-op-guest small,#section-frontdesk .fd-op-cell small{display:block!important;margin-top:3px!important;font-size:9px!important;line-height:1.25!important;color:#7a8c99!important}
#section-frontdesk .fd-op-cell>b{font-size:14px!important;color:var(--navy)!important}
#section-frontdesk .fd-op-time b{font-size:10px!important;color:var(--navy)!important;white-space:nowrap!important}
#section-frontdesk .fd-op-time small{font-size:9px!important}
#section-frontdesk .fd-op-payment{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important}
#section-frontdesk .fd-op-payment .action-btn{font-size:10px!important;padding:7px 10px!important;white-space:nowrap!important}
#section-frontdesk .fd-op-status .badge{font-size:9px!important}
#section-frontdesk .fd-op-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:wrap!important}
#section-frontdesk .fd-op-actions .action-btn{font-size:10px!important;padding:8px 10px!important;white-space:nowrap!important}

/* Child check-in list: one selection step + one action, with a live 2-hour countdown per child. */
#section-frontdesk .fd-openplay-inline{padding:0!important;background:#f7fafb!important;border-top:1px solid #dce7ed!important}
#section-frontdesk .openplay-inline-panel{padding:14px 16px 15px!important}
#section-frontdesk .openplay-inline-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:11px!important}
#section-frontdesk .openplay-inline-head h4{font-size:16px!important;margin:0!important;color:var(--navy)!important}
#section-frontdesk .openplay-inline-head small{font-size:10px!important;color:#718493!important;margin-top:3px!important;display:block!important}
#section-frontdesk .openplay-inline-children{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
#section-frontdesk .openplay-inline-child{min-height:62px!important;display:grid!important;grid-template-columns:20px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;border:1px solid #dce7ed!important;border-radius:11px!important;background:#fff!important;padding:10px 11px!important;cursor:pointer!important}
#section-frontdesk .openplay-inline-child.is-checked{background:#f2fbf8!important;border-color:#bfe4dc!important}
#section-frontdesk .openplay-inline-child input{width:18px!important;height:18px!important;margin:0!important}
#section-frontdesk .openplay-inline-child span:nth-child(2){min-width:0!important;display:flex!important;flex-direction:column!important;gap:3px!important}
#section-frontdesk .openplay-inline-child b{font-size:13px!important;color:var(--navy)!important}
#section-frontdesk .openplay-inline-child small{font-size:10px!important;color:#748796!important}
#section-frontdesk .openplay-child-countdown{font-variant-numeric:tabular-nums!important;min-width:82px!important;text-align:right!important;font-size:12px!important;font-weight:950!important;color:#16745e!important}
#section-frontdesk .openplay-child-countdown.is-expired{color:#b33b3b!important}
#section-frontdesk .openplay-inline-foot{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-top:12px!important;padding-top:11px!important;border-top:1px solid #dce7ed!important}
#section-frontdesk .openplay-inline-total{font-size:11px!important;font-weight:850!important;color:var(--navy)!important}
#section-frontdesk .openplay-inline-actions{display:flex!important;gap:8px!important}

/* Customer profile: keep the clean structure, bring back Celebrate color and readable type. */
.customer-profile-clean{gap:14px!important}
.customer-clean-head{padding:14px 15px!important;border-radius:15px!important;background:linear-gradient(135deg,#eef9f8 0%,#fff 65%,#fff7e8 100%)!important;border-color:#cfe3e5!important}
.customer-clean-identity{gap:13px!important}
.customer-minimal-avatar{width:48px!important;height:48px!important;border-radius:14px!important;background:linear-gradient(145deg,#18a7a8,#0d8790)!important;font-size:17px!important}
.customer-clean-identity h3{font-size:23px!important;line-height:1.1!important}
.customer-clean-contact{font-size:12px!important;gap:12px!important;margin-top:6px!important}
.customer-clean-actions .badge{font-size:9px!important;padding:6px 9px!important}
.customer-clean-actions .action-btn{font-size:11px!important;padding:8px 11px!important}
.customer-clean-metrics{gap:10px!important}
.customer-clean-metrics>div{padding:12px 13px!important;border-radius:13px!important}
.customer-clean-metrics>div:nth-child(1){background:#eef9fb!important;border-color:#c7e8eb!important}
.customer-clean-metrics>div:nth-child(2){background:#fff8e5!important;border-color:#f0dfad!important}
.customer-clean-metrics>div:nth-child(3){background:#fff1f3!important;border-color:#f1cbd1!important}
.customer-clean-metrics b{font-size:23px!important}
.customer-clean-metrics span{font-size:10px!important;margin-top:3px!important}
.customer-clean-grid{gap:11px!important}
.customer-clean-card{padding:13px!important;border-radius:14px!important}
.customer-clean-card .profile-card-head h4{font-size:14px!important}
.customer-minimal-children>div{padding:9px 10px!important;font-size:12px!important}
.customer-minimal-children .badge{font-size:8px!important}
.customer-minimal-next{padding:10px!important}
.customer-minimal-next b{font-size:12px!important}
.customer-minimal-next small{font-size:10px!important}
.customer-clean-history .profile-card-head h4{font-size:14px!important}
.customer-clean-history .profile-card-head small{font-size:10px!important}
.customer-visit-row{grid-template-columns:1.25fr .55fr .75fr 1fr auto!important;gap:11px!important;padding:12px 0!important}
.customer-visit-date b,.customer-visit-finance b{font-size:13px!important}
.customer-visit-row small{font-size:10px!important}
.customer-visit-children b{font-size:15px!important}
.compact-action{padding:8px 10px!important;font-size:10px!important}
.customer-info-disclosure summary span{font-size:13px!important}
.customer-info-disclosure summary small{font-size:10px!important}
.customer-info-grid small{font-size:9px!important}
.customer-info-grid b{font-size:11px!important}

/* Check-in modal uses the same simple child selection language as the inline list. */
.openplay-child-choice{min-height:62px!important;padding:11px 12px!important;border-radius:11px!important}
.openplay-child-choice b{font-size:13px!important;color:var(--navy)!important}
.openplay-child-choice .table-sub{font-size:10px!important}

@media(max-width:1180px){
  #section-frontdesk .fd-calendar-column{grid-template-columns:minmax(0,1fr) minmax(285px,.72fr)!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #section-frontdesk .fd-openplay-table-head,#section-frontdesk .fd-openplay-row{grid-template-columns:minmax(190px,1.5fr) 70px 140px 90px 115px 130px!important}
}
@media(max-width:900px){
  #section-frontdesk .fd-calendar-column{grid-template-columns:1fr!important}
  #section-frontdesk .fd-schedule-panel,#section-frontdesk .fd-saturday-column,#section-frontdesk .fd-booking-rail{height:auto!important;min-height:0!important}
  #section-frontdesk .fd-month-calendar{height:auto!important}
  #section-frontdesk .fd-month-grid{height:auto!important;grid-auto-rows:74px!important;grid-template-rows:none!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #section-frontdesk .fd-snack-checkout{grid-template-columns:1fr!important}
  #section-frontdesk .fd-snack-total{justify-content:flex-start!important;flex-wrap:wrap!important}
  #section-frontdesk .fd-openplay-search{width:360px!important;max-width:48%!important}
}
@media(max-width:760px){
  #section-frontdesk .fd-hero-head{align-items:flex-start!important;flex-direction:column!important}
  #section-frontdesk .fd-hero-date{justify-items:start!important}
  #section-frontdesk .fd-schedule-head{align-items:flex-start!important;flex-direction:column!important}
  #section-frontdesk .fd-schedule-controls{width:100%!important;justify-content:space-between!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:1fr 1fr!important}
  #section-frontdesk .fd-openplay-bar{align-items:stretch!important;flex-direction:column!important}
  #section-frontdesk .fd-openplay-search{width:100%!important;max-width:none!important}
  #section-frontdesk .fd-openplay-table{overflow-x:auto!important}
  #section-frontdesk .fd-openplay-table-head,#section-frontdesk .fd-openplay-row{min-width:900px!important}
  #section-frontdesk .openplay-inline-children{grid-template-columns:1fr!important}
  .customer-clean-grid{grid-template-columns:1fr!important}
  .customer-visit-row{grid-template-columns:1fr 1fr!important}
  .customer-visit-action{grid-column:1/-1!important;justify-content:flex-start!important}
}
@media(max-width:520px){
  #section-frontdesk .fd-snack-group-items{grid-template-columns:1fr!important}
  #section-frontdesk .fd-month-grid{grid-auto-rows:66px!important;grid-template-rows:none!important}
}

/* V708 — approved V659 visual base + modal/forms hardening. */
html,body,#appView{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
#appView *{box-sizing:border-box}
.modal{z-index:10000!important}
.modal-card{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;width:min(980px,94vw)!important;height:min(88vh,860px)!important;max-height:88vh!important}
.modal-body{font-size:14px!important;line-height:1.4!important}
.modal-body label{font-size:13px!important;color:#123957!important;font-weight:800!important}
.modal-body input,.modal-body select,.modal-body textarea{font-family:inherit!important;font-size:14px!important;line-height:1.35!important;min-height:42px!important;color:#123957!important;background:#fff!important}
.modal-body textarea{min-height:90px!important;resize:vertical!important}
.modal-body .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px 16px!important}
.modal-body .form-grid .wide,.modal-body .form-grid .full{grid-column:1/-1!important}
.modal-body .notice{font-size:13px!important;line-height:1.45!important}
.modal-body .section-divider{font-size:11px!important;margin:20px 0 12px!important}
.modal-body .action-btn{font-size:13px!important;min-height:42px!important;padding:9px 15px!important}
.modal-body .form-footer{position:sticky!important;bottom:0!important;padding:14px 0 2px!important;margin-top:18px!important;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 28%)!important}

/* Customer Add/Edit: one clean two-column form, no compressed browser-default controls. */
.customer-add-form,.customer-edit-form{width:100%!important;max-width:900px!important;margin:0 auto!important}
.customer-add-form .customer-add-section-title{grid-column:1/-1!important;display:flex!important;align-items:center!important;gap:11px!important;padding:12px 14px!important;border:1px solid #dbe7ed!important;border-radius:14px!important;background:#f7fbfc!important}
.customer-add-form .customer-add-section-title b{display:block!important;font-size:15px!important;color:#123957!important}
.customer-add-form .customer-add-section-title small{display:block!important;margin-top:2px!important;font-size:11px!important;color:#718493!important}
.customer-add-form .physical-waiver-add-card{display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:10px!important;padding:13px 14px!important;border:1px solid #dbe7ed!important;border-radius:14px!important;background:#fff!important}
.customer-add-form .physical-waiver-add-card small{display:block!important;margin-top:3px!important;font-size:11px!important;color:#718493!important}
.customer-edit-form{display:flex!important;flex-direction:column!important;gap:14px!important}
.customer-edit-form .customer-edit-panel{width:100%!important;padding:16px!important;border:1px solid #dbe7ed!important;border-radius:16px!important;background:#fff!important}
.customer-edit-form .customer-edit-panel-head{display:flex!important;align-items:center!important;gap:10px!important;margin-bottom:13px!important}
.customer-edit-form .customer-edit-panel-head strong{font-size:15px!important;color:#123957!important}
.customer-edit-form .customer-edit-panel-head small{display:block!important;margin-top:2px!important;font-size:11px!important;color:#718493!important}
.customer-edit-form .customer-edit-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px 16px!important}
.customer-edit-form .customer-edit-grid .full{grid-column:1/-1!important}
.customer-edit-form .customer-edit-footer{position:sticky!important;bottom:0!important;z-index:6!important;display:flex!important;justify-content:flex-end!important;gap:10px!important;padding:14px 0 2px!important;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 28%)!important}

/* Expense Add/Edit: receipt header + item grid remain readable instead of collapsing. */
.expense-entry-form{width:100%!important;max-width:1000px!important;margin:0 auto!important}
.expense-step{width:100%!important;padding:15px!important;margin:0 0 13px!important;border:1px solid #dbe7ed!important;border-radius:15px!important;background:#fff!important}
.expense-section-title,.expense-lines-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:12px!important}
.expense-section-title strong,.expense-lines-head b{font-size:15px!important;color:#123957!important}
.expense-section-title small,.expense-lines-head small{display:block!important;margin-top:2px!important;font-size:11px!important;color:#718493!important}
.expense-header-fields{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:13px 15px!important}
.expense-line-labels,.expense-line-item{display:grid!important;grid-template-columns:minmax(170px,1.6fr) minmax(130px,1fr) minmax(120px,1fr) 70px 110px 88px 84px!important;gap:8px!important;align-items:center!important}
.expense-line-labels{padding:0 8px 6px!important;color:#718493!important;font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.expense-line-item{padding:8px!important;border-top:1px solid #edf2f4!important}
.expense-line-item input,.expense-line-item select{width:100%!important;min-width:0!important;min-height:40px!important}
.expense-line-item .expense-line-photo{min-height:40px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:7px 8px!important;border:1px solid #d3e0e7!important;border-radius:9px!important;font-size:10px!important;font-weight:800!important;color:#456579!important;cursor:pointer!important}
.expense-summary-grid{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:14px!important;align-items:end!important}
.expense-total-card{min-height:72px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;padding:11px 13px!important;border-radius:13px!important;background:#123a59!important;color:#fff!important}
.expense-total-card span{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.05em!important;opacity:.8!important}
.expense-total-card strong{font-size:24px!important;margin-top:3px!important}

/* Finance edit/detail dialogs: keep the financial summary visually separated from controls. */
.finance-edit-modal,.finance-detail-modal{max-width:900px!important}
.finance-edit-modal .detail-grid,.finance-detail-modal .detail-grid{gap:10px!important}
.finance-edit-modal .detail,.finance-detail-modal .detail{padding:12px!important;border:1px solid #e0e9ed!important;background:#f7fafb!important;border-radius:12px!important}

@media(max-width:760px){
  .modal{padding:8px!important}
  .modal-card{width:96vw!important;height:92dvh!important;max-height:92dvh!important}
  .modal-body{padding:16px!important}
  .modal-body .form-grid,.customer-edit-form .customer-edit-grid,.expense-header-fields,.expense-summary-grid{grid-template-columns:1fr!important}
  .modal-body .form-grid .wide,.modal-body .form-grid .full,.customer-edit-form .customer-edit-grid .full{grid-column:auto!important}
  .expense-line-labels{display:none!important}
  .expense-line-item{grid-template-columns:1fr 1fr!important}
  .expense-line-item .expense-line-name{grid-column:1/-1!important}
}

/* V709 — FINAL UI REPAIR PASS (based on 2026-10-02 screenshots)
   Fixes browser-default form controls, customer edit layout, Open Play detail,
   expense form, Business header/tabs, and Marketing/Settings card typography.
*/

/* ---------- GLOBAL MODAL / FORM RESET ---------- */
.modal-card{overflow:hidden!important}
.modal-head{flex:0 0 auto!important}
.modal-body{display:block!important;overflow:auto!important;padding:20px 22px 24px!important;box-sizing:border-box!important}
.modal-body form{box-sizing:border-box!important}
.modal-body label{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;align-items:start!important;line-height:1.25!important;color:#123957!important;font-size:12px!important;font-weight:800!important}
.modal-body label>input,.modal-body label>select,.modal-body label>textarea{display:block!important;width:100%!important;box-sizing:border-box!important;border:1px solid #cbdce5!important;border-radius:10px!important;outline:none!important;background:#fff!important;color:#123957!important;padding:10px 12px!important;min-height:42px!important;box-shadow:inset 0 1px 2px rgba(16,42,67,.025)!important}
.modal-body label>input:focus,.modal-body label>select:focus,.modal-body label>textarea:focus{border-color:#20a8aa!important;box-shadow:0 0 0 3px rgba(32,168,170,.12)!important}
.modal-body label>textarea{min-height:96px!important}
.modal-body .field-label{display:block!important;margin-bottom:6px!important;color:#123957!important;font-size:12px!important;font-weight:800!important}
.modal-body .full{grid-column:1/-1!important}
.modal-body .form-footer{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important}

/* ---------- CUSTOMER PROFILE / OPEN PLAY ---------- */
.customer-profile-clean{display:grid!important;gap:14px!important;width:100%!important}
.customer-clean-head{min-height:76px!important}
.customer-clean-contact{font-size:11px!important}
.customer-clean-actions{flex-wrap:wrap!important}
.customer-clean-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
.customer-clean-card{min-width:0!important}
.customer-visit-row{grid-template-columns:minmax(170px,1.3fr) 72px minmax(90px,.75fr) minmax(120px,1fr) auto!important}
.customer-visit-action{min-width:130px!important}

.customer-visit-detail{width:100%!important;display:grid!important;gap:14px!important}
.customer-visit-detail .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.customer-visit-detail .profile-card{margin:0!important}
.customer-history-children{display:grid!important;gap:8px!important}
.customer-history-children>div{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;padding:10px 0!important;border-top:1px solid #edf2f4!important}
.customer-history-children>div:first-child{border-top:0!important}
.customer-history-children b{font-size:12px!important;color:#123957!important}
.customer-history-children small{display:block!important;margin-top:3px!important;color:#7b8d9b!important;font-size:10px!important}

/* ---------- EDIT CUSTOMER: FIX THE ACTUAL CLASS USED BY THE JS ---------- */
.customer-edit-v3{display:flex!important;flex-direction:column!important;gap:14px!important;width:100%!important;max-width:900px!important;margin:0 auto!important}
.customer-edit-v3 .customer-edit-identity{display:flex!important;align-items:center!important;gap:13px!important;padding:13px 15px!important;border:1px solid #dbe7ed!important;border-radius:15px!important;background:linear-gradient(135deg,#f6fbfc,#fff)!important}
.customer-edit-v3 .customer-edit-avatar{width:48px!important;height:48px!important;flex:0 0 48px!important;display:grid!important;place-items:center!important;border-radius:13px!important;background:#e7f5f5!important;color:#123957!important;font-size:17px!important;font-weight:900!important}
.customer-edit-v3 .customer-edit-identity h3{margin:0!important;color:#123957!important;font-size:19px!important;line-height:1.15!important}
.customer-edit-v3 .customer-edit-identity p{margin:4px 0 0!important;color:#718493!important;font-size:11px!important;line-height:1.35!important}
.customer-edit-v3 .customer-edit-panels{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
.customer-edit-v3 .customer-edit-panel{width:100%!important;padding:16px!important;border:1px solid #dbe7ed!important;border-radius:16px!important;background:#fff!important;box-sizing:border-box!important}
.customer-edit-v3 .customer-edit-panel-head{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 14px!important;padding-bottom:10px!important;border-bottom:1px solid #edf2f4!important}
.customer-edit-v3 .customer-edit-panel-head strong{display:block!important;color:#123957!important;font-size:14px!important;line-height:1.15!important}
.customer-edit-v3 .customer-edit-panel-head small{display:block!important;margin-top:3px!important;color:#718493!important;font-size:10px!important;line-height:1.3!important}
.customer-edit-v3 .edit-panel-icon{width:28px!important;height:28px!important;flex:0 0 28px!important;display:grid!important;place-items:center!important;border-radius:9px!important;font-size:13px!important;font-weight:900!important}
.customer-edit-v3 .customer-edit-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px 16px!important}
.customer-edit-v3 .customer-edit-grid .full{grid-column:1/-1!important}
.customer-edit-v3 .customer-edit-notes{display:grid!important;gap:6px!important}
.customer-edit-v3 .customer-edit-consents{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-top:12px!important}
.customer-edit-v3 .customer-consent-card{display:grid!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:9px!important;padding:11px 12px!important;border:1px solid #dbe7ed!important;border-radius:12px!important;background:#f9fbfc!important}
.customer-edit-v3 .customer-consent-card>input{width:17px!important;min-height:17px!important;margin:0!important}
.customer-edit-v3 .customer-consent-card span{display:flex!important;flex-direction:column!important;gap:2px!important}
.customer-edit-v3 .customer-consent-card b{font-size:10px!important;color:#173c58!important}
.customer-edit-v3 .customer-consent-card small{font-size:8.5px!important;color:#8294a1!important;line-height:1.25!important}
.customer-edit-v3 .customer-edit-footer{position:sticky!important;bottom:0!important;z-index:8!important;display:flex!important;justify-content:flex-end!important;gap:10px!important;padding:14px 0 2px!important;margin-top:0!important;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 30%)!important}

/* ---------- EXPENSE FORM ---------- */
.expense-entry-form{display:flex!important;flex-direction:column!important;gap:0!important;width:100%!important;max-width:1000px!important;margin:0 auto!important}
.expense-step{box-sizing:border-box!important}
.expense-header-fields{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:end!important}
.expense-header-fields>label,.expense-header-fields>div{min-width:0!important}
.expense-payment-icons{display:flex!important;gap:7px!important;align-items:center!important}
.expense-pay-icon,.expense-frequency-btn{min-height:40px!important;padding:8px 11px!important;border:1px solid #cbdce5!important;border-radius:9px!important;background:#fff!important;color:#123957!important;font:inherit!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important}
.expense-pay-icon.active,.expense-frequency-btn.active{border-color:#19aeb3!important;background:#eaf9f7!important;color:#087e83!important}
.expense-line-labels,.expense-line-item{grid-template-columns:minmax(150px,1.55fr) minmax(110px,1fr) minmax(110px,1fr) 60px 105px 92px 76px!important}
.expense-line-item>input,.expense-line-item>select{box-sizing:border-box!important}
.expense-line-item .expense-remove-line{min-height:40px!important;padding:7px 8px!important;font-size:10px!important;white-space:nowrap!important}
.expense-summary-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(180px,.8fr)!important}
.expense-frequency{display:flex!important;gap:7px!important;flex-wrap:wrap!important}

/* ---------- BUSINESS HEADER / TABS ---------- */
.business-master-card{width:100%!important;overflow:hidden!important;border-radius:22px!important}
.business-redesign-head{display:flex!important;justify-content:space-between!important;align-items:flex-end!important;gap:24px!important;padding:22px 26px 16px!important}
.business-redesign-head h2{margin:4px 0 0!important;color:#123957!important;font-size:30px!important;line-height:1.05!important;font-weight:950!important}
.business-redesign-head p{margin:7px 0 0!important;color:#718493!important;font-size:12px!important;line-height:1.4!important}
.business-month-select{display:flex!important;align-items:center!important;gap:7px!important;min-width:145px!important}
.business-month-select select{height:40px!important;width:100%!important;border:1px solid #cbdce5!important;border-radius:10px!important;background:#fff!important;color:#123957!important;padding:8px 11px!important;font:inherit!important;font-size:12px!important}
.business-master-tabs{display:flex!important;align-items:stretch!important;gap:0!important;padding:0 18px!important;border-bottom:1px solid #dce7ed!important;background:#fff!important;overflow:auto!important}
.business-master-tab{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:48px!important;padding:10px 16px!important;border:0!important;border-bottom:3px solid transparent!important;background:transparent!important;color:#536b7b!important;font:inherit!important;font-size:12px!important;font-weight:800!important;white-space:nowrap!important;cursor:pointer!important}
.business-master-tab .tab-icon{font-size:13px!important;color:#6c8290!important}
.business-master-tab.active{color:#0c8f93!important;border-bottom-color:#19aeb3!important;background:#eef9f8!important}
.business-master-tab.active .tab-icon{color:#0c8f93!important}
.business-master-content{background:#f9fbfc!important}
.business-master-pane{margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.finance-v658-head{padding:20px 20px 14px!important}
.finance-v658-head h2{font-size:27px!important;line-height:1.05!important}

/* ---------- MARKETING / SETTINGS TYPOGRAPHY ---------- */
#section-marketing,#section-system{width:100%!important}
#section-marketing .admin-module-heading h2,#section-system .admin-module-heading h2{line-height:1.05!important;letter-spacing:-.02em!important}
#section-marketing .admin-module-heading p,#section-system .admin-module-heading p{margin:5px 0 0!important;color:#718493!important;font-size:11px!important;line-height:1.35!important}
#section-marketing .primary-metrics,#section-system .primary-metrics{width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
#section-marketing .primary-metrics .metric,#section-system .primary-metrics .metric{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important}
#section-marketing .primary-metrics .metric span,#section-system .primary-metrics .metric span{display:block!important;line-height:1.2!important}
#section-marketing .primary-metrics .metric strong,#section-system .primary-metrics .metric strong{display:block!important;line-height:1!important;margin-top:7px!important;word-break:normal!important}
#section-marketing .admin-group-module-body>.panel,#section-system .admin-group-module-body>.panel{min-width:0!important}
#section-marketing .settings-row,#section-system .settings-row{min-width:0!important}
#section-marketing .settings-row>div:first-child,#section-system .settings-row>div:first-child{min-width:0!important;flex:1 1 auto!important}
#section-marketing .settings-row b,#section-system .settings-row b{font-size:12px!important;line-height:1.25!important}
#section-marketing .settings-row small,#section-system .settings-row small{font-size:10px!important;line-height:1.35!important}
#section-marketing .row-actions,#section-system .row-actions{flex:0 0 auto!important}

/* ---------- FRONT DESK CALENDAR SAFETY ---------- */
#section-frontdesk .fd-calendar-column{min-width:0!important}
#section-frontdesk .fd-schedule-panel{min-width:0!important}
#section-frontdesk .fd-month-calendar{width:100%!important}
#section-frontdesk .fd-month-grid{width:100%!important;min-width:0!important}
#section-frontdesk .fd-month-cell{overflow:hidden!important}
#section-frontdesk .fd-day-number{display:block!important}

@media(max-width:900px){
  .business-redesign-head{align-items:flex-start!important;flex-direction:column!important}
  .business-month-select{width:220px!important;max-width:100%!important}
  .customer-edit-v3 .customer-edit-consents{grid-template-columns:1fr!important}
  .expense-header-fields,.expense-summary-grid{grid-template-columns:1fr!important}
  #section-marketing .primary-metrics,#section-system .primary-metrics{grid-template-columns:1fr 1fr!important}
}
@media(max-width:700px){
  .modal-body{padding:16px!important}
  .customer-edit-v3 .customer-edit-grid,.customer-clean-grid,.customer-visit-detail .detail-grid{grid-template-columns:1fr!important}
  .customer-edit-v3 .customer-edit-grid .full{grid-column:auto!important}
  .customer-visit-row{grid-template-columns:1fr 1fr!important}
  .customer-visit-action{grid-column:1/-1!important;min-width:0!important;justify-content:flex-start!important}
  .expense-line-labels{display:none!important}
  .expense-line-item{grid-template-columns:1fr 1fr!important}
  .expense-line-item .expense-line-name{grid-column:1/-1!important}
  .business-master-tabs{padding:0 8px!important}
  .business-master-tab{padding:10px 12px!important}
}


/* V710 — finance/data QA hardening */
.finance-v658-transactions #financeTransactionsTable table{min-width:760px!important}
.finance-v658-transactions #financeTransactionsTable th:last-child,.finance-v658-transactions #financeTransactionsTable td:last-child{width:1%;white-space:nowrap!important}
.finance-v658-transactions #financeTransactionsTable .row-actions{display:flex!important;gap:6px!important;align-items:center!important;flex-wrap:nowrap!important}
.waiver-participant-list{display:grid!important;gap:7px!important}
.waiver-participant-list .history-row{min-width:0!important}


/* V711 — Open Play check-in: repair checkbox sizing and compact child rows. */
#section-frontdesk .fd-openplay-inline,
#section-frontdesk .fd-openplay-inline * { box-sizing:border-box!important; }

/* The global modal input rule must never size native checkboxes like text fields. */
.modal-body input[type="checkbox"],
.modal-body input[type="radio"] {
  appearance:auto!important;
  -webkit-appearance:auto!important;
  width:18px!important;
  min-width:18px!important;
  max-width:18px!important;
  height:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:3px!important;
  box-shadow:none!important;
  display:block!important;
  flex:0 0 18px!important;
  align-self:center!important;
}

.modal-body .openplay-child-choice {
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  min-height:64px!important;
  margin:0 0 8px!important;
  padding:12px 14px!important;
  border:1px solid #dce7ed!important;
  border-radius:12px!important;
  background:#fff!important;
  cursor:pointer!important;
  line-height:1.2!important;
}
.modal-body .openplay-child-choice > span:not(.openplay-child-countdown) {
  min-width:0!important;
  display:block!important;
}
.modal-body .openplay-child-choice > span b {
  display:block!important;
  font-size:14px!important;
  line-height:1.2!important;
  color:#123957!important;
}
.modal-body .openplay-child-choice > span small {
  display:block!important;
  margin-top:4px!important;
  font-size:11px!important;
  line-height:1.2!important;
  color:#718493!important;
}
.modal-body .openplay-child-countdown {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:66px!important;
  padding:6px 8px!important;
  border-radius:999px!important;
  background:#edf8f7!important;
  color:#087f83!important;
  font-size:11px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

/* Customer profile consent checkboxes stay compact too. */
.modal-body .customer-consent-card {
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}
.modal-body .customer-consent-card > input[type="checkbox"] {
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
  min-height:18px!important;
  margin:0!important;
  padding:0!important;
}

/* Customer search dropdown should sit over the table instead of changing card geometry. */
#section-frontdesk .fd-openplay-search,
#section-frontdesk .fd-openplay-bar,
#section-frontdesk .fd-openplay-front-panel { overflow:visible!important; }
#section-frontdesk #fdQuickCustomerResults { box-sizing:border-box!important; }

@media(max-width:760px){
  .modal-body .openplay-child-choice { grid-template-columns:18px minmax(0,1fr)!important; }
  .modal-body .openplay-child-countdown { grid-column:2!important; justify-self:start!important; margin-top:2px!important; }
}


/* ==========================================================
   V713 — FINAL FRONT DESK/OPEN PLAY LAYOUT AUTHORITY
   These rules intentionally appear last so legacy overrides cannot
   collapse the approved structure.
   ========================================================== */
#section-frontdesk .fd-command-layout{display:block!important;width:100%!important;margin:0!important}
#section-frontdesk .fd-calendar-column{display:grid!important;grid-template-columns:minmax(0,1.45fr) minmax(330px,.75fr)!important;gap:16px!important;align-items:start!important;width:100%!important}
#section-frontdesk .fd-calendar-column>*{min-width:0!important}
#section-frontdesk .fd-schedule-panel{width:100%!important;margin:0!important}
#section-frontdesk .fd-saturday-column{display:block!important;width:100%!important;margin:0!important}
#section-frontdesk .fd-booking-rail{height:430px!important;min-height:430px!important;width:100%!important;overflow-y:auto!important;overflow-x:hidden!important;padding:18px!important}

#section-frontdesk .fd-month-calendar{width:100%!important;height:340px!important;padding:0!important}
#section-frontdesk .fd-month-weekdays{width:100%!important;display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:7px!important}
#section-frontdesk .fd-month-grid{width:100%!important;height:286px!important;display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:7px!important;overflow:hidden!important}
#section-frontdesk .fd-month-grid.fd-weeks-5{grid-template-rows:repeat(5,minmax(0,1fr))!important}
#section-frontdesk .fd-month-grid.fd-weeks-6{grid-template-rows:repeat(6,minmax(0,1fr))!important}
#section-frontdesk .fd-month-cell{width:100%!important;min-width:0!important;min-height:0!important;height:auto!important;padding:10px!important;display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;background:#fff!important;border:1px solid #dbe6eb!important;border-radius:11px!important;color:#78909e!important}
#section-frontdesk .fd-month-cell.is-selected{border:2px solid #19aeb3!important;background:#effaf9!important;color:#123957!important;box-shadow:0 0 0 2px rgba(25,174,179,.08)!important}
#section-frontdesk .fd-day-number{display:block!important;font-size:16px!important;line-height:1!important;font-weight:850!important}
#section-frontdesk .fd-month-cell.is-saturday .fd-day-number{font-size:17px!important;color:#123957!important;font-weight:950!important}
#section-frontdesk .fd-month-dot{margin-top:auto!important}

/* Selected Day is a real information card, not a loose line of text. */
#section-frontdesk .fd-selected-summary{display:grid!important;grid-template-columns:1fr auto!important;gap:4px 12px!important;padding:13px!important;margin:0 0 10px!important;border:1px solid #cde7e6!important;border-radius:13px!important;background:linear-gradient(135deg,#effaf9,#fff)!important}
#section-frontdesk .fd-selected-summary span{grid-column:1/-1!important;font-size:10px!important;font-weight:950!important;letter-spacing:.12em!important;color:#0b9da5!important}
#section-frontdesk .fd-selected-summary b{font-size:15px!important;color:#123957!important}
#section-frontdesk .fd-selected-summary small{font-size:10px!important;color:#718493!important;align-self:center!important;white-space:nowrap!important}
#section-frontdesk .fd-selected-openplay-stack{display:grid!important;gap:9px!important;margin-bottom:10px!important}
#section-frontdesk .fd-selected-openplay-card{display:flex!important;flex-direction:column!important;gap:9px!important;padding:13px!important;border:1px solid #cfe2e6!important;border-left:4px solid #19aeb3!important;border-radius:13px!important;background:#fff!important}
#section-frontdesk .fd-selected-openplay-top{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:10px!important}
#section-frontdesk .fd-selected-openplay-top>div{min-width:0!important}
#section-frontdesk .fd-selected-kicker{display:block!important;font-size:9px!important;font-weight:950!important;letter-spacing:.14em!important;color:#0b9da5!important;margin-bottom:3px!important}
#section-frontdesk .fd-selected-openplay-top b{display:block!important;font-size:14px!important;line-height:1.15!important;color:#123957!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#section-frontdesk .fd-selected-openplay-meta{display:grid!important;grid-template-columns:1fr auto!important;gap:4px 8px!important;font-size:10px!important;color:#718493!important}
#section-frontdesk .fd-selected-openplay-meta span:last-child{grid-column:1/-1!important}
#section-frontdesk .fd-selected-openplay-meta b{color:#123957!important}
#section-frontdesk .fd-selected-openplay-actions{display:flex!important;gap:7px!important}
#section-frontdesk .fd-selected-openplay-actions .action-btn{flex:1 1 0!important;min-height:36px!important;font-size:10px!important;padding:8px 9px!important}

/* Open Play operational table: explicit columns + no overflow/stacking. */
#section-frontdesk .fd-openplay-table{width:100%!important;overflow-x:auto!important;overflow-y:visible!important}
#section-frontdesk .fd-openplay-table-head,#section-frontdesk .fd-openplay-row{width:100%!important;min-width:980px!important;display:grid!important;grid-template-columns:minmax(220px,1.55fr) 76px 155px 105px 140px 138px!important;column-gap:10px!important;align-items:center!important}
#section-frontdesk .fd-openplay-table-head{min-height:40px!important}
#section-frontdesk .fd-openplay-row{min-height:74px!important}
#section-frontdesk .fd-op-guest,.fd-op-cell,.fd-op-actions{min-width:0!important}
#section-frontdesk .fd-op-guest small,#section-frontdesk .fd-op-cell small{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#section-frontdesk .fd-op-time b{display:block!important;font-size:10px!important;line-height:1.2!important}
#section-frontdesk .fd-op-time small{display:block!important;font-size:9px!important;margin-top:3px!important}
#section-frontdesk .fd-op-payment,.fd-op-status{min-width:0!important}
#section-frontdesk .fd-op-actions{justify-content:flex-end!important;display:flex!important;flex-wrap:nowrap!important}
#section-frontdesk .fd-op-actions .action-btn{min-width:0!important}

/* Quick Sale approved wide grid. */
#section-frontdesk .fd-quick-column{width:100%!important;margin-top:14px!important}
#section-frontdesk .fd-snack-panel{width:100%!important}
#section-frontdesk .fd-snack-items{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
#section-frontdesk .fd-snack-item{min-width:0!important;min-height:62px!important;height:62px!important}
#section-frontdesk .fd-snack-checkout{grid-template-columns:minmax(0,1fr) auto!important}
#section-frontdesk .fd-snack-total{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:nowrap!important}

/* Inline check-in: readable, compact, one interaction surface. */
#section-frontdesk .fd-openplay-inline{width:100%!important;border-top:1px solid #dce7ed!important;background:#f7fafb!important}
#section-frontdesk .openplay-inline-panel{width:100%!important}
#section-frontdesk .openplay-inline-children{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
#section-frontdesk .openplay-inline-child{min-height:62px!important;height:62px!important;grid-template-columns:20px minmax(0,1fr) auto!important;padding:10px 11px!important}
#section-frontdesk .openplay-inline-child input[type="checkbox"]{width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;max-height:18px!important;padding:0!important;margin:0!important}
#section-frontdesk .openplay-child-countdown{min-width:82px!important;font-size:12px!important;font-variant-numeric:tabular-nums!important}

/* Modal controls: ONLY text/date/select controls get the 42px input height. */
.modal-body input:not([type="checkbox"]):not([type="radio"]),.modal-body select{min-height:42px!important}
.modal-body input[type="checkbox"],.modal-body input[type="radio"]{width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;max-height:18px!important}
.modal-body .check-label{min-height:44px!important;display:flex!important;align-items:center!important;gap:10px!important}

/* Keep modal search behind the modal and never let global results paint over it. */
body.modal-open #globalSearchResults,body.modal-open .global-search-results,body.modal-open .global-search-dropdown{display:none!important;visibility:hidden!important;pointer-events:none!important}
.modal{z-index:100000!important}

@media(max-width:1180px){
  #section-frontdesk .fd-calendar-column{grid-template-columns:minmax(0,1fr) minmax(290px,.78fr)!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  #section-frontdesk .fd-calendar-column{grid-template-columns:1fr!important}
  #section-frontdesk .fd-booking-rail{height:auto!important;min-height:260px!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #section-frontdesk .fd-snack-checkout{grid-template-columns:1fr!important}
  #section-frontdesk .fd-snack-total{flex-wrap:wrap!important}
}
@media(max-width:760px){
  #section-frontdesk .fd-month-grid{height:auto!important;grid-auto-rows:66px!important;grid-template-rows:none!important}
  #section-frontdesk .fd-openplay-table{overflow-x:auto!important}
  #section-frontdesk .openplay-inline-children{grid-template-columns:1fr!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:1fr 1fr!important}
}
@media(max-width:520px){
  #section-frontdesk .fd-snack-group-items{grid-template-columns:1fr!important}
}


/* V716 — consolidated mobile + layout repair. */

/* V714 — MOBILE BUSINESS WORKSPACE REPAIR
   The desktop tables are intentionally wide, but on phones they must become
   usable cards so actions never disappear off-screen. */
@media (max-width:700px){
  html,body{max-width:100%;overflow-x:hidden!important}
  #section-business{width:100%!important;min-width:0!important;overflow-x:hidden!important}
  #section-business .business-master-card,
  #section-business .business-master-content,
  #section-business .business-master-pane,
  #section-business .admin-module-card,
  #section-business .panel,
  #section-business .table-wrap{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
  #section-business .business-redesign-head{padding:16px 14px 12px!important;gap:12px!important}
  #section-business .business-redesign-head h2{font-size:27px!important}
  #section-business .business-redesign-head p{font-size:11px!important}
  #section-business .business-month-select{width:100%!important;max-width:none!important}
  #section-business .business-master-tabs{padding:0!important;overflow-x:auto!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important}
  #section-business .business-master-tabs::-webkit-scrollbar{display:none}
  #section-business .business-master-tab{flex:0 0 auto!important;min-height:48px!important;padding:10px 13px!important;font-size:11px!important}

  /* Inventory: convert the four-column desktop table into readable mobile cards. */
  #section-business #inventoryTable .table-wrap{overflow:visible!important;border:0!important}
  #section-business #inventoryTable table{display:block!important;width:100%!important;min-width:0!important;border:0!important}
  #section-business #inventoryTable thead{display:none!important}
  #section-business #inventoryTable tbody{display:grid!important;gap:9px!important}
  #section-business #inventoryTable tr{display:grid!important;grid-template-columns:1fr auto!important;gap:8px 12px!important;padding:13px!important;border:1px solid #dce7ed!important;border-radius:13px!important;background:#fff!important;box-shadow:0 3px 10px rgba(16,42,67,.035)!important}
  #section-business #inventoryTable td{display:block!important;padding:0!important;border:0!important;min-width:0!important;font-size:11px!important;line-height:1.3!important}
  #section-business #inventoryTable td:nth-child(1){grid-column:1/-1!important}
  #section-business #inventoryTable td:nth-child(1) b{display:block!important;font-size:14px!important;color:#173852!important;line-height:1.2!important}
  #section-business #inventoryTable td:nth-child(1) .quick-meta{margin-top:4px!important}
  #section-business #inventoryTable td:nth-child(2),
  #section-business #inventoryTable td:nth-child(3){padding-top:2px!important}
  #section-business #inventoryTable td:nth-child(2)::before{content:'CATEGORY';display:block!important;margin-bottom:3px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-business #inventoryTable td:nth-child(3)::before{content:'STOCK';display:block!important;margin-bottom:3px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-business #inventoryTable td:nth-child(4){grid-column:2!important;grid-row:2/span 1!important;justify-self:end!important;align-self:end!important}
  #section-business #inventoryTable td:nth-child(4) .action-btn{min-height:38px!important;padding:8px 14px!important;font-size:11px!important;white-space:nowrap!important}

  /* Expenses: every saved line remains editable without horizontal scrolling. */
  #section-business #expensesTable .table-wrap{overflow:visible!important;border:0!important}
  #section-business #expensesTable table{display:block!important;width:100%!important;min-width:0!important;border:0!important}
  #section-business #expensesTable thead{display:none!important}
  #section-business #expensesTable tbody{display:grid!important;gap:9px!important}
  #section-business #expensesTable tr{display:grid!important;grid-template-columns:1fr auto!important;gap:7px 12px!important;padding:13px!important;border:1px solid #dce7ed!important;border-radius:13px!important;background:#fff!important;box-shadow:0 3px 10px rgba(16,42,67,.035)!important}
  #section-business #expensesTable td{display:block!important;padding:0!important;border:0!important;min-width:0!important;font-size:11px!important;line-height:1.3!important}
  #section-business #expensesTable td:nth-child(1){grid-column:1!important}
  #section-business #expensesTable td:nth-child(2){grid-column:1/-1!important;font-size:12px!important;font-weight:800!important;color:#173852!important}
  #section-business #expensesTable td:nth-child(3){grid-column:1/-1!important;font-size:14px!important;font-weight:800!important;color:#173852!important}
  #section-business #expensesTable td:nth-child(4),
  #section-business #expensesTable td:nth-child(5),
  #section-business #expensesTable td:nth-child(6){padding-top:2px!important}
  #section-business #expensesTable td:nth-child(4)::before{content:'QUANTITY';display:block!important;margin-bottom:2px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-business #expensesTable td:nth-child(5)::before{content:'CATEGORY';display:block!important;margin-bottom:2px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-business #expensesTable td:nth-child(6)::before{content:'PAYMENT';display:block!important;margin-bottom:2px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-business #expensesTable td:nth-child(7){justify-self:end!important;grid-column:2!important;grid-row:4!important;font-weight:900!important;font-size:14px!important;color:#173852!important;align-self:end!important}
  #section-business #expensesTable td:nth-child(8){grid-column:1/-1!important;display:flex!important;gap:7px!important;flex-wrap:wrap!important;padding-top:5px!important;border-top:1px solid #edf2f4!important}
  #section-business #expensesTable td:nth-child(8) .action-btn{min-height:36px!important;padding:8px 12px!important;font-size:10px!important}

  /* Finance: keep the table horizontally contained; the important controls stay visible. */
  #section-business .finance-v658-transactions #financeTransactionsTable{overflow-x:auto!important;max-width:100%!important}
  #section-business .finance-v658-transactions #financeTransactionsTable table{min-width:590px!important}

  /* Business action/toolbar rows must wrap instead of forcing page overflow. */
  #section-business .toolbar,
  #section-business .panel-head,
  #section-business .row-actions{max-width:100%!important}
  #section-business .row-actions{flex-wrap:wrap!important}
  #section-business input,#section-business select,#section-business button{max-width:100%!important}
}

/* V716 FINAL SAFETY: no page-level horizontal overflow; controls may wrap. */
html, body { max-width:100%; overflow-x:hidden; }
@media (max-width: 900px) {
  .main, .section, .panel, .admin-group-page, .admin-group-module, .admin-group-module-body { min-width:0 !important; max-width:100% !important; box-sizing:border-box !important; }
  .panel-head, .toolbar, .row-actions, .campaign-actions { flex-wrap:wrap !important; }
  .panel-head > *, .toolbar > *, .row-actions > *, .campaign-actions > * { max-width:100% !important; }
}
@media (max-width: 700px) {
  .topbar { display:none !important; }
  .main { padding-left:0 !important; padding-right:0 !important; }
  .section { width:100% !important; }
  input, select, textarea, button { max-width:100%; box-sizing:border-box; }
  .table-wrap { max-width:100% !important; }
}


/* V717 — FINAL MOBILE WORKSPACE REPAIR
   Mobile is a working Admin surface, not a shrunken desktop. Business controls,
   Open Play operations and action columns must remain usable without page-level
   horizontal scrolling or clipped buttons. */
@media (max-width:760px){
  html,body,#appView,.app-shell,.main,.section,#section-business,#section-frontdesk{min-width:0!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important}

  /* Business: keep the toolbar readable and every filter/edit control reachable. */
  #section-business .business-table-workspace,
  #section-business .business-table-head,
  #section-business .business-table-title,
  #section-business .business-table-actions,
  #section-business .workspace-pane,
  #section-business .business-single-pane{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
  #section-business .business-table-head{display:grid!important;gap:10px!important}
  #section-business .business-table-title{display:flex!important;align-items:baseline!important;gap:8px!important;flex-wrap:wrap!important}
  #section-business .business-table-title b{font-size:19px!important}
  #section-business .business-table-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;align-items:stretch!important}
  #section-business .business-table-actions > *{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
  #section-business .business-table-actions .search,
  #section-business .business-table-actions .expense-search-wrap{grid-column:1/-1!important;width:100%!important}
  #section-business .expense-date-field{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:7px!important;width:100%!important}
  #section-business .expense-date-field input{width:100%!important;min-width:0!important;background:#fff!important;color:#173852!important;color-scheme:light!important}
  #section-business .expense-pdf-btn{width:100%!important}

  /* Search/dropdowns must paint over cards instead of being clipped by panels. */
  #section-business .business-table-head,
  #section-business .business-table-actions,
  #section-business .expense-search-wrap{overflow:visible!important}
  #section-business .table-wrap{overflow:visible!important}

  /* Front Desk Open Play: cards on phone, never a 980px desktop table. */
  #section-frontdesk .fd-openplay-table{width:100%!important;overflow:visible!important}
  #section-frontdesk .fd-openplay-table-head{display:none!important}
  #section-frontdesk .fd-openplay-rows{display:grid!important;gap:9px!important}
  #section-frontdesk .fd-openplay-row{width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:1fr auto!important;gap:9px 12px!important;align-items:start!important;padding:13px!important;border:1px solid #d8e5eb!important;border-radius:14px!important;background:#fff!important;box-sizing:border-box!important}
  #section-frontdesk .fd-op-guest{grid-column:1/-1!important;min-width:0!important}
  #section-frontdesk .fd-op-guest b{font-size:14px!important;display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  #section-frontdesk .fd-op-guest small{font-size:9px!important}
  #section-frontdesk .fd-op-cell{min-width:0!important}
  #section-frontdesk .fd-op-cell:nth-child(2)::before{content:'CHILDREN';display:block!important;margin-bottom:3px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-frontdesk .fd-op-time::before{content:'VISIT';display:block!important;margin-bottom:3px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-frontdesk .fd-op-payment::before{content:'PAYMENT';display:block!important;margin-bottom:3px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-frontdesk .fd-op-status{grid-column:1/-1!important}
  #section-frontdesk .fd-op-status::before{content:'STATUS';display:block!important;margin-bottom:3px!important;color:#7a8d9c!important;font-size:8px!important;font-weight:900!important;letter-spacing:.07em!important}
  #section-frontdesk .fd-op-actions{grid-column:1/-1!important;width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:7px!important;justify-content:stretch!important}
  #section-frontdesk .fd-op-actions .action-btn{width:100%!important;min-height:40px!important}
  #section-frontdesk .fd-inline-pay{width:100%!important}
  #section-frontdesk .fd-openplay-inline{grid-column:1/-1!important;width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:visible!important}
  #section-frontdesk .openplay-inline-panel{width:100%!important;min-width:0!important;box-sizing:border-box!important}
  #section-frontdesk .openplay-inline-head{align-items:flex-start!important;flex-wrap:wrap!important}
  #section-frontdesk .openplay-inline-head .action-btn{margin-left:auto!important}
  #section-frontdesk .openplay-inline-children{display:grid!important;gap:7px!important}
  #section-frontdesk .openplay-inline-child{min-width:0!important}
  #section-frontdesk .openplay-inline-foot{display:grid!important;gap:9px!important}
  #section-frontdesk .openplay-inline-actions{width:100%!important}
  #section-frontdesk .openplay-inline-actions .action-btn{width:100%!important;min-height:40px!important}

  /* Front Desk quick sale controls remain tappable. */
  #section-frontdesk .fd-snack-group-items{grid-template-columns:1fr!important}
  #section-frontdesk .fd-snack-checkout{grid-template-columns:1fr!important}
  #section-frontdesk .fd-snack-total{grid-template-columns:1fr 1fr!important}
  #section-frontdesk .fd-snack-total button{grid-column:1/-1!important;width:100%!important}
}

@media (max-width:420px){
  #section-business .business-table-actions{grid-template-columns:1fr!important}
  #section-business .business-table-actions .search,
  #section-business .business-table-actions .expense-search-wrap{grid-column:auto!important}
  #section-business .expense-date-field{grid-template-columns:1fr!important;gap:3px!important}
  #section-frontdesk .fd-op-payment,.fd-op-status{grid-column:1/-1!important}
  #section-frontdesk .fd-snack-total{grid-template-columns:1fr!important}
}

/* V719 — Open Play is a dedicated operational surface, not a calendar item. */
.fd-selected-openplay-link{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;padding:12px 13px;border:1px solid #cfe3ea;border-left:4px solid #18a7a6;border-radius:13px;background:#f7fcfd}
.fd-selected-openplay-link>div{min-width:0;display:flex;flex-direction:column;gap:3px}
.fd-selected-openplay-link b{font-size:13px;color:var(--navy,#123957)}
.fd-selected-openplay-link small{font-size:10px;color:#718596}
@media(max-width:700px){.fd-selected-openplay-link{align-items:stretch;flex-direction:column}.fd-selected-openplay-link .action-btn{width:100%}}

.finance-booked-sales{font-weight:800!important;color:#0b9694!important;margin-top:4px!important}

/* FINANCE BUILD 722 — intentionally simple: cash in, card in, total in, spent, Square. */
.finance-simple-v722{box-sizing:border-box;background:#fff!important;padding:0 20px 28px!important;border:0!important;overflow:visible!important}
.finance-simple-v722 *{box-sizing:border-box}
.finance-simple-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:24px 0 18px;border-bottom:1px solid #dfe9ee}
.finance-simple-eyebrow{font-size:9px;font-weight:900;letter-spacing:.12em;color:#0b8f93;margin-bottom:6px}
.finance-simple-head h2{margin:0;color:#123957;font-size:30px;line-height:1.05;font-weight:900}
.finance-simple-head p{margin:7px 0 0;color:#718596;font-size:12px;line-height:1.4}
.finance-simple-card{margin-top:18px;border:1px solid #dfe9ee;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(18,57,87,.05)}
.finance-simple-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #e8eef2}
.finance-simple-card-head h3{margin:0;color:#123957;font-size:17px;font-weight:900}
.finance-simple-card-head p{margin:5px 0 0;color:#718596;font-size:11px}
.finance-build-badge{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#edf8f8;color:#087c80;font-size:8px;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.finance-monthly-table-wrap{overflow-x:auto}
.finance-monthly-table{width:100%;border-collapse:collapse;min-width:650px}
.finance-monthly-table th{padding:12px 20px;text-align:left;background:#f7fafb;color:#718596;font-size:8px;font-weight:900;letter-spacing:.1em;border-bottom:1px solid #e2ebef}
.finance-monthly-table td{padding:15px 20px;border-bottom:1px solid #edf2f4;color:#28455b;font-size:12px;font-weight:700;white-space:nowrap}
.finance-monthly-table tbody tr:last-child td{border-bottom:0}
.finance-monthly-table .num{text-align:right;font-variant-numeric:tabular-nums}
.finance-monthly-table .cash-col{color:#167b55}
.finance-monthly-table .card-col{color:#315e96}
.finance-monthly-table .total-col{color:#123957;font-weight:900}
.finance-monthly-table .spent-col{color:#9b4c3e}
.finance-simple-loading,.finance-simple-empty,.finance-simple-error{padding:26px 20px;color:#718596;font-size:12px}
.finance-simple-error{color:#a53d32;background:#fff6f4}
.finance-v722-hidden{display:none!important}
@media(max-width:760px){
  .finance-simple-v722{padding:0 12px 22px!important}
  .finance-simple-head{align-items:flex-start;flex-direction:column;gap:14px}
  .finance-simple-head .action-btn{width:100%}
  .finance-simple-card-head{align-items:flex-start;flex-direction:column}
  .finance-monthly-table{min-width:600px}
}

/* Front Desk Open Play spacing repair — the time/status cells must be vertical. */
.fd-op-time,.fd-op-status{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:3px!important;min-width:0}
.fd-op-time b,.fd-op-time small,.fd-op-status b,.fd-op-status small{display:block!important;line-height:1.2!important;white-space:normal!important}


/* V723 — AUTHORITATIVE FRONT DESK FINAL LAYER
   Keep all legacy CSS intact above; these rules are the final cascade for launch UI. */
#section-frontdesk .fd-command-layout{display:block!important;width:100%!important;margin:0!important}
#section-frontdesk .fd-calendar-column{display:grid!important;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr)!important;gap:16px!important;align-items:stretch!important}
#section-frontdesk .fd-schedule-panel,#section-frontdesk .fd-saturday-column{height:390px!important;min-height:390px!important}
#section-frontdesk .fd-schedule-panel{padding:16px!important;overflow:hidden!important}
#section-frontdesk .fd-month-calendar{height:322px!important}
#section-frontdesk .fd-month-grid{height:274px!important;gap:6px!important}
#section-frontdesk .fd-month-cell{padding:8px!important;border-radius:10px!important}
#section-frontdesk .fd-day-number{font-size:15px!important}
#section-frontdesk .fd-booking-rail{height:390px!important;min-height:390px!important;overflow:auto!important;padding:16px!important}
#section-frontdesk .fd-selected-head{margin-bottom:10px!important;padding-bottom:10px!important}
#section-frontdesk .fd-selected-head h3{font-size:19px!important}
#section-frontdesk .fd-selected-list{gap:7px!important}
#section-frontdesk .fd-selected-booking{padding:9px 10px!important}
#section-frontdesk .fd-selected-time{font-size:10px!important}
#section-frontdesk .fd-selected-main b{font-size:11px!important}
#section-frontdesk .fd-selected-main small{font-size:9px!important}
#section-frontdesk .fd-selected-openplay-stack{display:grid!important;gap:8px!important;margin:0 0 10px!important}
#section-frontdesk .fd-selected-summary{grid-template-columns:1fr auto!important;gap:3px 10px!important;padding:10px 11px!important;margin:0!important;border:1px solid #cde7e6!important;border-radius:11px!important;background:#effaf9!important}
#section-frontdesk .fd-selected-summary span{font-size:9px!important}
#section-frontdesk .fd-selected-summary b{font-size:13px!important}
#section-frontdesk .fd-selected-summary small{font-size:9px!important}
#section-frontdesk .fd-selected-openplay-card{gap:7px!important;padding:10px 11px!important;border-radius:11px!important}
#section-frontdesk .fd-selected-openplay-top{gap:8px!important}
#section-frontdesk .fd-selected-kicker{font-size:8px!important;margin-bottom:2px!important}
#section-frontdesk .fd-selected-openplay-top b{font-size:12px!important}
#section-frontdesk .fd-selected-openplay-meta{font-size:9px!important}
#section-frontdesk .fd-selected-openplay-actions{gap:6px!important}
#section-frontdesk .fd-selected-openplay-actions .action-btn{min-height:30px!important;font-size:9px!important;padding:7px 8px!important}

/* Customer search dropdown: never clip its action buttons. */
#section-frontdesk .fd-openplay-search{position:relative!important;z-index:100!important;width:min(390px,42%)!important;max-width:none!important}
#section-frontdesk #fdQuickCustomerSearch{width:100%!important;min-width:0!important}
#section-frontdesk #fdQuickCustomerResults{left:auto!important;right:0!important;width:min(520px,calc(100vw - 380px))!important;min-width:360px!important;max-width:520px!important;overflow-x:hidden!important}
#section-frontdesk .fd-quick-customer{gap:9px!important}
#section-frontdesk .fd-quick-customer-main{min-width:0!important;overflow:hidden!important}
#section-frontdesk .fd-quick-actions{flex:0 0 auto!important}
#section-frontdesk .fd-quick-actions .action-btn{padding:7px 8px!important;font-size:9px!important}

/* Quick Sale: nine products = three clean columns, not an orphan last card. */
#section-frontdesk .fd-snack-panel{margin-top:14px!important}
#section-frontdesk .fd-snack-items{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
#section-frontdesk .fd-snack-item{position:relative!important;min-height:64px!important;height:64px!important;padding:9px 10px!important;gap:8px!important;overflow:hidden!important}
#section-frontdesk .fd-snack-main{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important}
#section-frontdesk .fd-snack-main b{font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#section-frontdesk .fd-snack-main small{font-size:9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#section-frontdesk .fd-snack-item>input{width:17px!important;min-width:17px!important;height:17px!important;min-height:17px!important;margin:0!important}
#section-frontdesk .fd-snack-qty{gap:4px!important;flex:0 0 auto!important}
#section-frontdesk .fd-snack-qty button{width:24px!important;height:24px!important}
#section-frontdesk .fd-snack-low-stock{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;padding:2px 5px!important;border-radius:999px!important;background:#fff1e7!important;color:#a64918!important;font-size:7px!important;font-weight:900!important;letter-spacing:.04em!important}
#section-frontdesk .fd-snack-item.is-low-stock{border-color:#efc5ac!important;background:#fffaf6!important}
#section-frontdesk .fd-snack-checkout{grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important}
#section-frontdesk .fd-snack-total{display:grid!important;grid-template-columns:auto 120px auto!important;gap:8px!important;align-items:center!important}
#section-frontdesk .fd-snack-total small{grid-column:1!important;margin:0!important}
#section-frontdesk .fd-snack-total>b{font-size:21px!important;white-space:nowrap!important}
#section-frontdesk .fd-snack-total select{min-width:110px!important;height:38px!important;padding:8px 10px!important}
#section-frontdesk .fd-snack-total button{grid-column:3!important;min-height:38px!important;padding:9px 13px!important;white-space:nowrap!important}

/* Open Play operational table: keep time/status stacked and actions readable. */
#section-frontdesk .fd-openplay-table{overflow-x:auto!important}
#section-frontdesk .fd-openplay-table-head,#section-frontdesk .fd-openplay-row{min-width:960px!important;grid-template-columns:minmax(200px,1.55fr) 68px 145px 105px 135px 140px!important}
#section-frontdesk .fd-op-time,#section-frontdesk .fd-op-payment,#section-frontdesk .fd-op-status{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:3px!important}
#section-frontdesk .fd-op-time b,#section-frontdesk .fd-op-time small,#section-frontdesk .fd-op-payment small,#section-frontdesk .fd-op-status small{display:block!important;white-space:nowrap!important}
#section-frontdesk .fd-op-actions{justify-content:flex-end!important;flex-wrap:wrap!important}

/* Modal checkboxes: launch-safe, never inherit text-input sizing. */
.modal-body input[type="checkbox"],.modal-body input[type="radio"]{appearance:auto!important;width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;max-height:18px!important;margin:0!important;padding:0!important}

@media(max-width:1180px){
  #section-frontdesk .fd-snack-group-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #section-frontdesk #fdQuickCustomerResults{width:min(460px,calc(100vw - 300px))!important;min-width:320px!important}
  #section-frontdesk .fd-snack-total{grid-template-columns:auto 110px auto!important}
}
@media(max-width:900px){
  #section-frontdesk .fd-calendar-column{grid-template-columns:1fr!important}
  #section-frontdesk .fd-schedule-panel,#section-frontdesk .fd-saturday-column,#section-frontdesk .fd-booking-rail{height:auto!important;min-height:0!important}
  #section-frontdesk .fd-booking-rail{min-height:230px!important}
  #section-frontdesk .fd-openplay-search{width:100%!important}
  #section-frontdesk #fdQuickCustomerResults{left:0!important;right:auto!important;width:100%!important;min-width:0!important;max-width:100%!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #section-frontdesk .fd-snack-checkout{grid-template-columns:1fr!important}
  #section-frontdesk .fd-snack-total{grid-template-columns:1fr 1fr!important}
  #section-frontdesk .fd-snack-total small{grid-column:1/-1!important}
  #section-frontdesk .fd-snack-total>b{grid-column:1!important}
  #section-frontdesk .fd-snack-total select{grid-column:2!important}
  #section-frontdesk .fd-snack-total button{grid-column:1/-1!important}
}
@media(max-width:620px){
  #section-frontdesk .fd-snack-group-items{grid-template-columns:1fr!important}
  #section-frontdesk .fd-openplay-table-head,#section-frontdesk .fd-openplay-row{min-width:920px!important}
  #section-frontdesk .fd-selected-openplay-actions{flex-direction:column!important}
}


/* V724 Front Desk final visual hardening */
#section-frontdesk .fd-op-time{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:3px!important;
}
#section-frontdesk .fd-op-status{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:3px!important;
}
#section-frontdesk .fd-snack-items{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
#section-frontdesk .fd-snack-checkout{
  grid-template-columns:minmax(0,1fr) 280px!important;
}
@media(max-width:900px){
  #section-frontdesk .fd-snack-items{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:700px){
  #section-frontdesk .fd-snack-items,
  #section-frontdesk .fd-snack-checkout{grid-template-columns:1fr!important;}
}

/* ==============================================================
   V725 — FRONT DESK VISUAL REDESIGN
   Purpose: make Front Desk feel like a real operations console,
   not a stack of generic admin cards. Functional markup unchanged.
   ============================================================== */

:root{
  --fd-navy:#0b2e4a;
  --fd-navy-2:#104c66;
  --fd-teal:#1ca8a8;
  --fd-teal-soft:#e7f8f7;
  --fd-coral:#f2556d;
  --fd-yellow:#f6c84c;
  --fd-ink:#17344b;
  --fd-muted:#708496;
  --fd-line:#dbe7ee;
  --fd-bg:#f4f7fa;
}

body{background:var(--fd-bg)!important;color:var(--fd-ink)!important}
.app-shell{grid-template-columns:250px minmax(0,1fr)!important;background:var(--fd-bg)!important}
.sidebar{background:linear-gradient(180deg,#082b47 0%,#0d3e58 52%,#09283f 100%)!important;box-shadow:14px 0 42px rgba(7,39,62,.14)!important}
.main{padding:24px 30px 42px!important;background:linear-gradient(180deg,#f7fafc 0%,#f4f7fa 100%)!important;overflow:auto!important}
.topbar{display:none!important}

/* Front Desk hero — a clear daily command header. */
#section-frontdesk .fd-hero-head{
  position:relative!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:28px!important;
  padding:26px 30px!important;
  margin:0 0 18px!important;
  border-radius:24px!important;
  background:linear-gradient(125deg,#0a2944 0%,#0e4660 58%,#159e9f 100%)!important;
  box-shadow:0 18px 38px rgba(11,46,74,.17)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
#section-frontdesk .fd-hero-head:before,
#section-frontdesk .fd-hero-head:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
#section-frontdesk .fd-hero-head:before{width:260px;height:260px;right:-80px;top:-160px;background:rgba(246,200,76,.16)}
#section-frontdesk .fd-hero-head:after{width:180px;height:180px;right:120px;bottom:-145px;background:rgba(255,255,255,.07)}
#section-frontdesk .fd-hero-head>div{position:relative;z-index:1}
#section-frontdesk .fd-hero-kicker{display:inline-flex!important;align-items:center!important;gap:7px!important;color:#f7d25e!important;font-size:10px!important;font-weight:950!important;letter-spacing:.18em!important}
#section-frontdesk .fd-hero-kicker:before{content:"";width:22px;height:3px;border-radius:999px;background:#f7d25e}
#section-frontdesk .fd-hero-head h1{margin:5px 0 6px!important;color:#fff!important;font-size:40px!important;line-height:1!important;letter-spacing:-.045em!important;font-weight:950!important}
#section-frontdesk .fd-hero-head p{margin:0!important;color:rgba(255,255,255,.72)!important;font-size:13px!important;font-weight:650!important}
#section-frontdesk .fd-hero-date{
  display:grid!important;gap:4px!important;justify-items:end!important;
  padding:13px 16px!important;border-radius:17px!important;
  background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.16)!important;
  backdrop-filter:blur(10px)!important;min-width:175px!important
}
#section-frontdesk .fd-hero-date b{font-size:11px!important;color:rgba(255,255,255,.78)!important;font-weight:800!important}
#section-frontdesk .fd-hero-date strong{font-size:25px!important;color:#fff!important;line-height:1!important;letter-spacing:-.02em!important}

/* Main command area: schedule left, POS right. */
#section-frontdesk .fd-command-layout{display:grid!important;grid-template-columns:minmax(0,1.72fr) minmax(350px,.84fr)!important;gap:18px!important;align-items:start!important}
#section-frontdesk .fd-calendar-column{display:grid!important;grid-template-columns:minmax(0,1.55fr) minmax(280px,.72fr)!important;gap:14px!important;min-width:0!important}
#section-frontdesk .fd-quick-column{min-width:0!important;position:sticky!important;top:18px!important}

/* Calendar card */
#section-frontdesk .fd-schedule-panel{
  padding:18px!important;border-radius:20px!important;border:1px solid var(--fd-line)!important;
  background:#fff!important;box-shadow:0 12px 30px rgba(20,59,83,.07)!important;min-height:438px!important;height:auto!important;overflow:hidden!important
}
#section-frontdesk .fd-schedule-head{margin-bottom:14px!important;align-items:center!important}
#section-frontdesk .fd-schedule-head h2{font-size:21px!important;letter-spacing:-.025em!important}
#section-frontdesk .fd-command-kicker{font-size:9px!important;letter-spacing:.15em!important;color:var(--fd-teal)!important;font-weight:950!important}
#section-frontdesk .fd-schedule-controls{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
#section-frontdesk .view-switch{padding:3px!important;background:#edf4f7!important;border:1px solid #dde8ed!important;border-radius:11px!important}
#section-frontdesk .view-switch button{border:0!important;border-radius:8px!important;padding:7px 11px!important;background:transparent!important;color:#6e8090!important;font-size:11px!important;font-weight:850!important}
#section-frontdesk .view-switch button.active{background:#fff!important;color:var(--fd-navy)!important;box-shadow:0 4px 11px rgba(17,49,72,.08)!important}
#section-frontdesk .fd-period-nav{display:flex!important;gap:5px!important}
#section-frontdesk .fd-period-nav .action-btn{height:32px!important;min-width:32px!important;padding:7px 9px!important;border-radius:9px!important;font-size:11px!important}
#section-frontdesk .fd-period-nav #fdCalToday{min-width:54px!important}
#section-frontdesk .fd-schedule-label{font-size:9px!important;font-weight:900!important;color:#91a1ae!important;letter-spacing:.12em!important;text-transform:uppercase!important;margin:0 0 8px!important}

#section-frontdesk .fd-month-calendar{height:auto!important;min-height:348px!important;padding:2px!important;background:#fff!important}
#section-frontdesk .fd-month-grid{height:auto!important;min-height:294px!important;gap:6px!important}
#section-frontdesk .fd-month-cell{padding:8px!important;border:1px solid #edf2f5!important;border-radius:11px!important;background:#fbfcfd!important;transition:.15s ease!important}
#section-frontdesk .fd-month-cell:hover{border-color:#b8dfe0!important;background:#f6fcfc!important}
#section-frontdesk .fd-month-cell.is-today{border-color:#7dd4d1!important;background:#effafa!important;box-shadow:inset 0 0 0 1px rgba(28,168,168,.08)!important}
#section-frontdesk .fd-month-cell.is-selected{border-color:var(--fd-teal)!important;background:linear-gradient(145deg,#e7f9f8,#fff)!important;box-shadow:0 5px 14px rgba(28,168,168,.10)!important}
#section-frontdesk .fd-day-number{font-size:14px!important;font-weight:900!important;color:#26465d!important}
#section-frontdesk .fd-month-weekday{font-size:8px!important;letter-spacing:.1em!important;color:#93a3af!important;font-weight:900!important}

/* Selected day rail — deliberately looks like today's agenda. */
#section-frontdesk .fd-saturday-column{height:auto!important;min-height:438px!important;padding:0!important}
#section-frontdesk .fd-booking-rail{
  height:100%!important;min-height:438px!important;padding:18px!important;border-radius:20px!important;
  border:1px solid #dbe6eb!important;background:linear-gradient(180deg,#fff 0%,#fbfdfe 100%)!important;
  box-shadow:0 12px 30px rgba(20,59,83,.06)!important;overflow:auto!important
}
#section-frontdesk .fd-selected-head{padding-bottom:12px!important;margin-bottom:12px!important;border-bottom:1px solid #edf2f5!important}
#section-frontdesk .fd-selected-head h3{font-size:16px!important;color:var(--fd-coral)!important;letter-spacing:.02em!important}
#section-frontdesk .fd-selected-list{gap:8px!important}
#section-frontdesk .fd-selected-booking{border-radius:12px!important;border:1px solid #e4edf1!important;background:#fff!important;box-shadow:none!important;padding:10px 11px!important}
#section-frontdesk .fd-selected-summary{border-radius:13px!important;background:#eff9f8!important;border-color:#cde8e5!important}

/* Quick Sale = proper POS card. */
#section-frontdesk .fd-snack-panel{
  margin:0!important;padding:18px!important;border-radius:20px!important;border:1px solid #dbe6eb!important;
  background:#fff!important;box-shadow:0 16px 34px rgba(20,59,83,.09)!important
}
#section-frontdesk .fd-snack-panel .panel-head{margin-bottom:12px!important}
#section-frontdesk .fd-snack-panel h2{font-size:22px!important;letter-spacing:-.03em!important}
#section-frontdesk #fdSnackStatus{background:#e6f7ef!important;color:#16765d!important;border:1px solid #ccecdf!important;padding:6px 9px!important}
#section-frontdesk .fd-snack-items{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
#section-frontdesk .fd-snack-item{
  min-height:67px!important;height:67px!important;padding:8px 9px!important;border-radius:12px!important;
  border:1px solid #e1eaee!important;background:#fbfdfe!important
}
#section-frontdesk .fd-snack-item:hover{border-color:#b8dcdd!important;background:#f5fbfb!important}
#section-frontdesk .fd-snack-item>input{width:17px!important;height:17px!important;min-width:17px!important;max-width:17px!important}
#section-frontdesk .fd-snack-main b{font-size:10px!important;color:#1c3d55!important}
#section-frontdesk .fd-snack-main small{font-size:8px!important;color:#7c8d99!important}
#section-frontdesk .fd-snack-qty{gap:3px!important}
#section-frontdesk .fd-snack-qty button{width:22px!important;height:22px!important;border-radius:7px!important;background:#fff!important;color:#31526a!important;border-color:#d3e0e7!important}
#section-frontdesk .fd-snack-qty b{font-size:10px!important;min-width:13px!important}
#section-frontdesk .fd-snack-checkout{
  display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-top:14px!important;padding-top:14px!important;
  border-top:1px dashed #d9e5ea!important
}
#section-frontdesk .fd-snack-cart{min-height:30px!important;margin-top:5px!important;padding:8px 10px!important;border-radius:10px!important;background:#f6f9fb!important;color:#6d8190!important}
#section-frontdesk .fd-snack-total{
  display:grid!important;grid-template-columns:minmax(80px,1fr) 92px!important;gap:8px!important;align-items:center!important;
  padding:12px!important;border-radius:13px!important;background:#0b2f4b!important
}
#section-frontdesk .fd-snack-total small{grid-column:1!important;color:#8fcfd0!important;font-size:8px!important;letter-spacing:.12em!important}
#section-frontdesk .fd-snack-total>b{grid-column:1!important;color:#fff!important;font-size:25px!important;letter-spacing:-.03em!important}
#section-frontdesk .fd-snack-total select{grid-column:2!important;grid-row:1 / span 2!important;min-width:0!important;width:100%!important;height:38px!important;border-radius:9px!important;border:1px solid rgba(255,255,255,.18)!important;background:#fff!important;color:#163a55!important;font-weight:900!important;font-size:10px!important}
#section-frontdesk .fd-snack-total button{grid-column:1/-1!important;min-height:40px!important;border-radius:10px!important;background:linear-gradient(100deg,#1bb0ac,#37c7bb)!important;box-shadow:none!important;font-size:11px!important}

/* Open Play — clear occupancy + check-in workstation. */
#section-frontdesk .fd-openplay-front-panel{
  margin-top:18px!important;padding:0!important;border-radius:22px!important;overflow:visible!important;
  border:1px solid #dce8ed!important;background:#fff!important;box-shadow:0 14px 32px rgba(20,59,83,.07)!important
}
#section-frontdesk .fd-openplay-bar{
  margin:0!important;padding:16px 18px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(330px,.85fr)!important;gap:18px!important;
  border-bottom:1px solid #e6eef2!important;align-items:center!important
}
#section-frontdesk .fd-openplay-title{display:flex!important;align-items:center!important;gap:16px!important}
#section-frontdesk .fd-openplay-title h2{font-size:21px!important;letter-spacing:-.02em!important}
#section-frontdesk .fd-openplay-capacity{
  display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:9px!important;
  padding:7px 10px!important;border-radius:11px!important;background:#f1fbfa!important;border:1px solid #d8eeec!important
}
#section-frontdesk .fd-openplay-capacity #fdCapacityStatus{font-size:8px!important;font-weight:950!important;letter-spacing:.08em!important;color:#18847e!important;padding:4px 6px!important;border-radius:7px!important;background:#d8f5f0!important}
#section-frontdesk .fd-openplay-capacity b{font-size:14px!important;color:#183c56!important}
#section-frontdesk .fd-openplay-capacity small{font-size:8px!important;color:#738794!important;white-space:nowrap!important}
#section-frontdesk .fd-openplay-search{width:auto!important;max-width:none!important}
#section-frontdesk #fdQuickCustomerSearch{height:42px!important;margin:0!important;max-width:none!important;border-radius:12px!important;background:#f9fbfc!important;border-color:#d3e1e7!important;padding:11px 13px 11px 40px!important}
#section-frontdesk #fdQuickCustomerSearch:focus{background:#fff!important;border-color:var(--fd-teal)!important}
#section-frontdesk .fd-openplay-search:before{content:"⌕";position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:2;color:#6e8797;font-size:19px;pointer-events:none}
#section-frontdesk #fdQuickCustomerResults{top:48px!important;border-radius:14px!important;border:1px solid #d7e5eb!important;box-shadow:0 18px 35px rgba(20,59,83,.14)!important;background:#fff!important}

/* Hide obsolete compressed blocks from the visual surface. */
#section-frontdesk .fd-command-metrics,
#section-frontdesk .fd-checkin-panel,
#section-frontdesk .fd-operations-disclosure{display:none!important}

@media(max-width:1280px){
  #section-frontdesk .fd-command-layout{grid-template-columns:1fr!important}
  #section-frontdesk .fd-quick-column{position:static!important}
  #section-frontdesk .fd-snack-items{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1060px){
  #section-frontdesk .fd-calendar-column{grid-template-columns:1fr!important}
  #section-frontdesk .fd-schedule-panel,#section-frontdesk .fd-booking-rail{min-height:0!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #section-frontdesk .fd-openplay-bar{grid-template-columns:1fr!important}
}
@media(max-width:700px){
  .main{padding:14px 14px 28px!important}
  #section-frontdesk .fd-hero-head{grid-template-columns:1fr!important;padding:22px!important;border-radius:20px!important}
  #section-frontdesk .fd-hero-head h1{font-size:34px!important}
  #section-frontdesk .fd-hero-date{justify-items:start!important;width:max-content!important;min-width:0!important}
  #section-frontdesk .fd-openplay-title{align-items:flex-start!important;flex-direction:column!important;gap:9px!important}
  #section-frontdesk .fd-openplay-capacity{width:max-content!important}
  #section-frontdesk .fd-snack-group-items{grid-template-columns:1fr!important}
}


/* V726 — Front Desk final visual + check-in authority. */
#section-frontdesk .fd-command-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
}
#section-frontdesk .fd-calendar-column{
  display:grid!important;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)!important;
  gap:16px!important;
  align-items:stretch!important;
}
#section-frontdesk .fd-schedule-panel,
#section-frontdesk .fd-booking-rail{
  min-height:405px!important;
  height:405px!important;
  box-sizing:border-box!important;
}
#section-frontdesk .fd-schedule-panel{overflow:hidden!important;}
#section-frontdesk .fd-booking-rail{overflow:auto!important;}
#section-frontdesk .fd-quick-column{grid-column:1/-1!important;min-width:0!important;}
#section-frontdesk .fd-snack-panel{height:auto!important;min-height:0!important;}
#section-frontdesk .fd-snack-items{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(210px,1fr))!important;
  gap:10px!important;
}
#section-frontdesk .fd-snack-item{
  min-height:76px!important;
  height:auto!important;
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:9px!important;
  padding:11px 12px!important;
  border-radius:14px!important;
}
#section-frontdesk .fd-snack-main{min-width:0!important;display:flex!important;flex-direction:column!important;gap:4px!important;}
#section-frontdesk .fd-snack-main b{font-size:12px!important;line-height:1.15!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;color:#173b57!important;}
#section-frontdesk .fd-snack-main small{font-size:9.5px!important;line-height:1.25!important;white-space:normal!important;color:#7b8d9a!important;}
#section-frontdesk .fd-snack-qty{display:flex!important;align-items:center!important;gap:5px!important;white-space:nowrap!important;}
#section-frontdesk .fd-snack-qty button{width:28px!important;height:28px!important;min-width:28px!important;padding:0!important;border-radius:8px!important;}
#section-frontdesk .fd-snack-qty b{min-width:12px!important;text-align:center!important;font-size:11px!important;}
#section-frontdesk .fd-snack-low-stock{grid-column:2/-1!important;grid-row:2!important;justify-self:start!important;font-size:8px!important;}
#section-frontdesk .fd-snack-checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(430px,.7fr)!important;
  gap:14px!important;
  align-items:stretch!important;
  margin-top:12px!important;
}
#section-frontdesk .fd-snack-total{display:grid!important;grid-template-columns:1fr 150px!important;gap:8px!important;align-items:center!important;}
#section-frontdesk #fdSnackComplete{grid-column:1/-1!important;min-height:42px!important;}
#section-frontdesk .fd-snack-cart{min-height:50px!important;}
#section-frontdesk .fd-openplay-capacity{grid-template-columns:auto auto auto!important;}
#section-frontdesk .fd-openplay-capacity b{white-space:nowrap!important;}

/* Keep Customer Profile/Edit dialogs usable at desktop heights. */
#adminModal .modal-card:has(.customer-profile-clean),
#adminModal .modal-card:has(.customer-edit-v3){
  width:min(960px,calc(100vw - 40px))!important;
  max-height:88vh!important;
  overflow:hidden!important;
}
#adminModal .modal-card:has(.customer-profile-clean) #modalBody,
#adminModal .modal-card:has(.customer-edit-v3) #modalBody{
  overflow:auto!important;
  max-height:calc(88vh - 74px)!important;
  padding:20px!important;
}
#adminModal .modal-card:has(.customer-edit-v3) .customer-edit-panels{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
#adminModal .modal-card:has(.customer-edit-v3) .customer-edit-panel{
  padding:14px!important;
}
#adminModal .customer-edit-intake-note{
  display:flex!important;align-items:flex-start!important;gap:10px!important;
  padding:11px 13px!important;border:1px solid #cde9e5!important;
  border-radius:12px!important;background:#f3fbfa!important;color:#195a5c!important;
}
#adminModal .customer-edit-intake-note>span{
  width:22px!important;height:22px!important;display:grid!important;place-items:center!important;
  border-radius:7px!important;background:#d7f3ef!important;color:#087e83!important;font-weight:950!important;
}
#adminModal .customer-edit-intake-note b{display:block!important;font-size:11px!important;line-height:1.25!important;}
#adminModal .customer-edit-intake-note small{display:block!important;margin-top:3px!important;font-size:9px!important;line-height:1.35!important;color:#66818c!important;}
#adminModal .modal-card:has(.customer-profile-clean) .customer-clean-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
#adminModal .modal-card:has(.customer-profile-clean) .customer-clean-card{min-height:0!important;}

@media(max-width:1100px){
  #section-frontdesk .fd-calendar-column{grid-template-columns:minmax(0,1fr) minmax(300px,.85fr)!important;}
  #section-frontdesk .fd-snack-items{grid-template-columns:repeat(2,minmax(220px,1fr))!important;}
}
@media(max-width:760px){
  #section-frontdesk .fd-calendar-column{grid-template-columns:1fr!important;}
  #section-frontdesk .fd-schedule-panel,
  #section-frontdesk .fd-booking-rail{height:auto!important;min-height:0!important;}
  #section-frontdesk .fd-snack-items{grid-template-columns:1fr!important;}
  #section-frontdesk .fd-snack-checkout{grid-template-columns:1fr!important;}
  #adminModal .modal-card:has(.customer-edit-v3),
  #adminModal .modal-card:has(.customer-profile-clean){width:calc(100vw - 24px)!important;max-height:92vh!important;}
  #adminModal .modal-card:has(.customer-edit-v3) .customer-edit-panels{grid-template-columns:1fr!important;}
}


/* V727 final Front Desk / check-in polish. */
#section-frontdesk .fd-schedule-panel,
#section-frontdesk .fd-booking-rail{
  min-height:382px!important;
  height:382px!important;
}
#section-frontdesk .fd-schedule-panel{overflow:hidden!important;}
#section-frontdesk .fd-booking-rail{overflow:auto!important;}
#section-frontdesk .fd-month-calendar{min-height:326px!important;}
#section-frontdesk .fd-month-grid{min-height:275px!important;gap:5px!important;}
#section-frontdesk .fd-month-cell{min-height:49px!important;padding:7px!important;}
#section-frontdesk .fd-snack-panel{padding:20px!important;}
#section-frontdesk .fd-snack-items{grid-template-columns:repeat(3,minmax(245px,1fr))!important;gap:12px!important;}
#section-frontdesk .fd-snack-item{min-height:88px!important;padding:12px 13px!important;grid-template-columns:20px minmax(0,1fr) auto!important;}
#section-frontdesk .fd-snack-main b{font-size:13px!important;line-height:1.18!important;}
#section-frontdesk .fd-snack-main small{font-size:10px!important;line-height:1.25!important;}
#section-frontdesk .fd-snack-qty button{width:30px!important;height:30px!important;min-width:30px!important;font-size:14px!important;}
#section-frontdesk .fd-snack-qty b{font-size:12px!important;}
#section-frontdesk .fd-snack-checkout{grid-template-columns:minmax(0,1.1fr) minmax(420px,.75fr)!important;}
#section-frontdesk .fd-snack-total{grid-template-columns:1fr 160px!important;padding:14px!important;}
#section-frontdesk .fd-snack-total>b{font-size:28px!important;}
#section-frontdesk .fd-snack-total select{height:42px!important;font-size:11px!important;}
#section-frontdesk .fd-snack-total button{min-height:44px!important;font-size:12px!important;}
#section-frontdesk .fd-openplay-bar{padding:18px 20px!important;}
#section-frontdesk .fd-openplay-capacity{padding:8px 11px!important;}
#section-frontdesk .fd-openplay-capacity b{font-size:15px!important;}
#section-frontdesk .fd-openplay-capacity small{font-size:9px!important;}
#section-frontdesk .fd-openplay-row{min-height:78px!important;}
#section-frontdesk .fd-op-guest b{font-size:12px!important;}
#section-frontdesk .fd-op-cell b{font-size:13px!important;}
#section-frontdesk .fd-op-cell small{font-size:9px!important;}

#adminModal .modal-card:has(.openplay-checkin-modal){
  width:min(720px,calc(100vw - 36px))!important;
  height:auto!important;
  max-height:82vh!important;
}
#adminModal .modal-card:has(.openplay-checkin-modal) #modalBody{
  max-height:calc(82vh - 76px)!important;
  overflow:auto!important;
  padding:18px 20px 20px!important;
}
.openplay-checkin-modal{display:grid!important;gap:12px!important;}
.openplay-checkin-modal .compact-notice{margin:0!important;padding:11px 13px!important;border-radius:12px!important;}
.openplay-checkin-modal .detail-grid{gap:10px!important;margin:0!important;}
.openplay-checkin-modal .detail{padding:12px 13px!important;border-radius:12px!important;}
.openplay-checkin-modal .profile-card{padding:12px!important;border-radius:14px!important;border:1px solid #dce7ec!important;}
.openplay-checkin-modal .profile-card-head{margin-bottom:8px!important;}
.openplay-checkin-modal .openplay-child-list{display:grid!important;gap:8px!important;}
.openplay-checkin-modal .openplay-child-choice{display:grid!important;grid-template-columns:20px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;padding:11px 12px!important;border:1px solid #dce8ed!important;border-radius:12px!important;background:#fbfdfe!important;}
.openplay-checkin-modal .openplay-child-choice.is-checked{background:#effaf8!important;border-color:#bfe5e0!important;}
.openplay-checkin-modal .openplay-child-choice>input{width:18px!important;height:18px!important;min-width:18px!important;}
.openplay-checkin-modal .openplay-child-choice b{font-size:12px!important;color:#173b57!important;}
.openplay-checkin-modal .openplay-child-choice small{font-size:9px!important;color:#7b8e9b!important;display:block!important;margin-top:2px!important;}
.openplay-checkin-modal .openplay-child-countdown{font-size:10px!important;font-weight:900!important;color:#158881!important;white-space:nowrap!important;}
.openplay-checkin-modal .form-footer{position:sticky!important;bottom:0!important;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 25%)!important;padding:14px 0 0!important;margin:0!important;}

#adminModal .modal-card:has(.customer-edit-v3),
#adminModal .modal-card:has(.customer-profile-clean){
  width:min(940px,calc(100vw - 36px))!important;
  height:auto!important;
  max-height:84vh!important;
}
#adminModal .modal-card:has(.customer-edit-v3) #modalBody,
#adminModal .modal-card:has(.customer-profile-clean) #modalBody{
  max-height:calc(84vh - 72px)!important;
  overflow:auto!important;
  padding:18px 20px 20px!important;
}
#adminModal .customer-edit-v3{gap:11px!important;}
#adminModal .customer-edit-v3 .customer-edit-identity{padding:11px 13px!important;}
#adminModal .customer-edit-v3 .customer-edit-panel{padding:13px!important;}
#adminModal .customer-edit-v3 .customer-edit-panel-head{margin-bottom:10px!important;padding-bottom:8px!important;}
#adminModal .customer-edit-v3 .customer-edit-grid{gap:10px 12px!important;}
#adminModal .customer-edit-v3 .customer-edit-grid label{font-size:10px!important;}
#adminModal .customer-edit-v3 .customer-edit-grid input{height:38px!important;min-height:38px!important;font-size:12px!important;}
#adminModal .customer-edit-v3 .notes-panel textarea{min-height:66px!important;}
#adminModal .customer-edit-v3 .customer-edit-consents{gap:8px!important;margin-top:8px!important;}
#adminModal .customer-edit-v3 .customer-consent-card{padding:9px 10px!important;}
#adminModal .customer-edit-v3 .customer-edit-footer{padding:10px 0 0!important;}

@media(max-width:1180px){
  #section-frontdesk .fd-snack-items{grid-template-columns:repeat(2,minmax(230px,1fr))!important;}
  #section-frontdesk .fd-snack-checkout{grid-template-columns:1fr!important;}
}
@media(max-width:760px){
  #section-frontdesk .fd-schedule-panel,#section-frontdesk .fd-booking-rail{height:auto!important;min-height:0!important;}
  #section-frontdesk .fd-snack-items{grid-template-columns:1fr!important;}
  #adminModal .modal-card:has(.openplay-checkin-modal),#adminModal .modal-card:has(.customer-edit-v3),#adminModal .modal-card:has(.customer-profile-clean){width:calc(100vw - 18px)!important;max-height:92vh!important;}
  #adminModal .modal-card:has(.openplay-checkin-modal) #modalBody,#adminModal .modal-card:has(.customer-edit-v3) #modalBody,#adminModal .modal-card:has(.customer-profile-clean) #modalBody{max-height:calc(92vh - 68px)!important;padding:14px!important;}
}

/* V728 — Front Desk action clarity + inline check-in polish */
#section-frontdesk .fd-op-actions{display:flex!important;flex-direction:column!important;gap:7px!important;align-items:stretch!important;min-width:0!important}
#section-frontdesk .fd-op-primary-actions,#section-frontdesk .fd-op-manage-actions{display:flex!important;gap:6px!important;align-items:center!important}
#section-frontdesk .fd-op-manage-actions .action-btn,#section-frontdesk .fd-op-primary-actions .action-btn{flex:1 1 0!important;white-space:nowrap!important;min-height:34px!important;padding:7px 8px!important;font-size:9px!important}
#section-frontdesk .fd-op-manage-actions .fd-op-delete{flex:0 0 auto!important}
#section-frontdesk .fd-op-delete,.customer-delete{background:#fff!important;color:#bb4451!important;border:1px solid #efc2c8!important}
#section-frontdesk .fd-op-delete:hover,.customer-delete:hover{background:#fff5f6!important;border-color:#df9ba5!important}
#section-frontdesk .openplay-inline-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important}
#section-frontdesk .openplay-inline-head-actions{display:flex!important;gap:7px!important;align-items:center!important;flex-wrap:wrap!important}
#section-frontdesk .openplay-inline-head-actions .action-btn{min-height:34px!important;padding:7px 10px!important;font-size:9px!important}
#customersTable .customer-actions{display:flex!important;gap:6px!important;align-items:center!important;flex-wrap:nowrap!important}
#customersTable .customer-actions .action-btn{min-height:34px!important;padding:8px 10px!important;font-size:10px!important;white-space:nowrap!important}
@media(max-width:1100px){
  #section-frontdesk .fd-openplay-table-head,#section-frontdesk .fd-openplay-row{grid-template-columns:minmax(190px,1.5fr) 68px 145px 100px 128px 205px!important}
}

/* V729 — individual Open Play child check-in starts with no child preselected */
.openplay-inline-child input[data-fd-op-child]{width:18px!important;height:18px!important;flex:0 0 18px!important;margin:0!important;accent-color:#13b4ad!important;}
.openplay-inline-child{cursor:pointer!important;}


/* V732 — Unified Admin Visual System + Front Desk card/rail repair */
:root{
  --fd-bg:#f3f7fa;
  --fd-card:#ffffff;
  --fd-line:#dbe7ed;
  --fd-teal:#19aeb3;
  --fd-navy:#102f4d;
  --fd-blue:#2f6fc2;
  --fd-yellow:#f3c84b;
  --fd-red:#df5554;
}
html,body{max-width:100%;overflow-x:hidden;background:var(--fd-bg)!important;}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17344f;}
.app-shell{min-height:100dvh!important;grid-template-columns:248px minmax(0,1fr)!important;align-items:stretch!important;}
.sidebar{
  position:sticky!important;top:0!important;height:100dvh!important;max-height:100dvh!important;min-height:100dvh!important;
  overflow:hidden!important;background:linear-gradient(180deg,#0c3857 0%,#0d314d 48%,#0b2b45 100%)!important;
  box-sizing:border-box!important;padding:18px 14px!important;
}
.sidebar:after{content:"";position:absolute;right:-20px;top:0;bottom:0;width:20px;background:linear-gradient(90deg,rgba(15,47,73,.12),transparent);pointer-events:none;}
.admin-nav,.sidebar nav{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:3px 3px 12px 0!important;scrollbar-width:thin!important;scrollbar-color:rgba(255,255,255,.20) transparent!important;}
.admin-nav::-webkit-scrollbar,.sidebar nav::-webkit-scrollbar{width:7px!important;background:transparent!important;}
.admin-nav::-webkit-scrollbar-track,.sidebar nav::-webkit-scrollbar-track{background:transparent!important;}
.admin-nav::-webkit-scrollbar-thumb,.sidebar nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.20)!important;border-radius:999px!important;}
.sidebar .signout{flex:0 0 auto!important;margin-top:10px!important;}
.main{min-width:0!important;padding:26px 28px 40px!important;background:linear-gradient(180deg,#f5f8fb 0%,#eef4f7 100%)!important;}
.topbar{min-height:34px!important;margin-bottom:14px!important;}
.topbar h1{color:var(--fd-navy)!important;font-weight:900!important;}

/* Make every non-Front-Desk workspace use the same visual language. */
.admin-group-page{display:block!important;min-width:0!important;}
.admin-group-module{margin:0 0 18px!important;border:0!important;background:transparent!important;box-shadow:none!important;}
.admin-module-heading{
  position:relative!important;overflow:hidden!important;padding:21px 24px 18px!important;border-radius:21px!important;
  color:#fff!important;background:linear-gradient(115deg,#0d3151 0%,#155676 58%,#18a9aa 100%)!important;
  box-shadow:0 14px 34px rgba(15,46,73,.12)!important;
}
.admin-module-heading:after{content:"";position:absolute;right:-36px;top:-55px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.10);pointer-events:none;}
.admin-module-heading h2{position:relative;z-index:1;margin:0!important;color:#fff!important;font-size:25px!important;line-height:1.05!important;font-weight:900!important;letter-spacing:-.02em!important;}
.admin-module-heading h2:after{content:"";display:block;width:34px;height:4px;margin-top:9px;border-radius:999px;background:linear-gradient(90deg,var(--fd-yellow),var(--fd-teal));}
.admin-module-heading .panel-subtitle{position:relative;z-index:1;margin:7px 0 0!important;color:rgba(255,255,255,.78)!important;font-size:11px!important;}
.admin-group-module-body{padding:14px 0 0!important;min-width:0!important;}
.admin-group-module-body>.panel,.admin-group-module-body>.admin-disclosure,.admin-group-module-body>.clean-list-panel{
  border:1px solid var(--fd-line)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 10px 26px rgba(16,42,67,.055)!important;
}
.admin-group-module-body>.panel{padding:16px 18px!important;}
.admin-group-module-body>.panel .panel-head{margin-bottom:13px!important;}
.admin-group-module-body .metric{
  border:1px solid var(--fd-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 20px rgba(16,42,67,.045)!important;
  min-height:96px!important;padding:16px 17px!important;position:relative;overflow:hidden;
}
.admin-group-module-body .metric:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--fd-teal);}
.admin-group-module-body .metric:nth-child(2):before{background:var(--fd-blue)}
.admin-group-module-body .metric:nth-child(3):before{background:var(--fd-yellow)}
.admin-group-module-body .metric:nth-child(4):before{background:var(--fd-red)}
.admin-group-module-body .metric span{font-size:10px!important;letter-spacing:.04em!important;text-transform:uppercase!important;font-weight:850!important;color:#738697!important;}
.admin-group-module-body .metric strong{font-size:24px!important;color:var(--fd-navy)!important;}
.admin-group-module .table-wrap{border:1px solid var(--fd-line)!important;border-radius:14px!important;box-shadow:none!important;}
.admin-group-module table th{background:#f2f7f9!important;color:#60788a!important;font-size:9px!important;letter-spacing:.07em!important;}
.admin-group-module table td{font-size:11px!important;color:#29435a!important;}
.admin-group-module .action-btn{border-radius:10px!important;min-height:34px!important;font-size:10px!important;font-weight:850!important;}
.admin-group-module .action-btn.secondary{background:#fff!important;border:1px solid #c9dce5!important;color:#12415f!important;}
.admin-group-module .action-btn:not(.secondary):not(.danger){background:linear-gradient(180deg,#20b7ba,#0e969a)!important;color:#fff!important;border:0!important;}
.admin-group-module .inline-tools>summary,.admin-group-module .admin-disclosure>summary{border:1px solid #dbe7ed!important;border-radius:12px!important;background:#f8fbfc!important;color:#21465e!important;}

/* Front Desk layout: stop equal-height stretching and keep each card sized to its content. */
#section-frontdesk .fd-command-layout{align-items:start!important;}
#section-frontdesk .fd-calendar-column{align-items:start!important;}
#section-frontdesk .fd-schedule-panel,#section-frontdesk .fd-saturday-column,#section-frontdesk .fd-booking-rail,#section-frontdesk .fd-quick-column,#section-frontdesk .fd-snack-panel{min-height:0!important;height:auto!important;}
#section-frontdesk .fd-booking-rail{max-height:430px!important;overflow:auto!important;align-self:start!important;}
#section-frontdesk .fd-schedule-panel{align-self:start!important;}
#section-frontdesk .fd-snack-panel{overflow:visible!important;}
#section-frontdesk .fd-snack-items{grid-template-columns:repeat(3,minmax(220px,1fr))!important;gap:10px!important;}
#section-frontdesk .fd-snack-item{height:76px!important;min-height:76px!important;padding:11px 12px!important;}
#section-frontdesk .fd-snack-main b{font-size:12px!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
#section-frontdesk .fd-snack-main small{font-size:9px!important;line-height:1.2!important;}
#section-frontdesk .fd-snack-qty button{width:29px!important;height:29px!important;min-width:29px!important;}
#section-frontdesk .fd-snack-checkout{grid-template-columns:minmax(0,1fr) minmax(360px,.78fr)!important;}
#section-frontdesk .fd-snack-total{padding:14px 16px!important;border:1px solid #d8e5eb!important;border-radius:14px!important;background:#f3f7f9!important;}
#section-frontdesk .fd-snack-total>b{font-size:26px!important;color:#fff!important;background:#0e3553!important;border-radius:10px!important;padding:7px 11px!important;}
#section-frontdesk .fd-openplay-row{min-height:82px!important;height:auto!important;}
#section-frontdesk .fd-op-time{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important;}
#section-frontdesk .fd-op-time b,#section-frontdesk .fd-op-time small{display:block!important;}
#section-frontdesk .fd-op-row-countdown{font-variant-numeric:tabular-nums!important;font-weight:900!important;color:#0b8d89!important;}
#section-frontdesk .fd-op-row-countdown.is-expired{color:#bd3a39!important;}
#section-frontdesk .fd-op-actions{display:grid!important;grid-template-rows:auto auto!important;gap:6px!important;}
#section-frontdesk .fd-op-primary-actions,#section-frontdesk .fd-op-manage-actions{width:100%!important;}
#section-frontdesk .fd-op-primary-actions .action-btn,#section-frontdesk .fd-op-manage-actions .action-btn{min-height:32px!important;font-size:9px!important;}
#section-frontdesk .fd-op-manage-actions{display:grid!important;grid-template-columns:1fr 1fr!important;}
#section-frontdesk .fd-op-delete{max-width:none!important;}
#section-frontdesk .openplay-inline-panel{border:1px solid #cfe0e6!important;border-radius:14px!important;background:#f8fbfc!important;padding:14px!important;}
#section-frontdesk .openplay-inline-children{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
#section-frontdesk .openplay-inline-child{height:68px!important;min-height:68px!important;background:#fff!important;}
#section-frontdesk .fd-party-day-shell{align-self:start!important;height:auto!important;max-height:430px!important;overflow:auto!important;}
#section-frontdesk .fd-month-calendar,#section-frontdesk .fd-month-grid{min-height:0!important;}

/* Customer Profile / Edit modal: match the Front Desk visual language. */
#adminModal .modal-card{border:1px solid #cfdee5!important;border-top:5px solid var(--fd-teal)!important;border-radius:21px!important;box-shadow:0 32px 90px rgba(8,32,52,.28)!important;overflow:hidden!important;}
#adminModal .modal-header{padding:16px 20px!important;background:linear-gradient(180deg,#fff,#f7fafb)!important;border-bottom:1px solid #e1ebef!important;}
#adminModal .modal-title{font-size:20px!important;font-weight:900!important;color:var(--fd-navy)!important;}
#adminModal #modalBody{background:#f8fbfc!important;}
#adminModal .customer-profile-clean,#adminModal .customer-edit-v3,#adminModal .openplay-checkin-modal{font-size:12px!important;}
#adminModal .customer-profile-clean .profile-card,#adminModal .customer-edit-v3 .customer-edit-panel,#adminModal .openplay-checkin-modal .profile-card{border:1px solid #d7e4e9!important;border-radius:15px!important;background:#fff!important;box-shadow:0 6px 18px rgba(16,42,67,.04)!important;}
#adminModal .customer-profile-clean .profile-metrics div{border:1px solid #dbe7ed!important;background:#f6fafb!important;border-radius:13px!important;}
#adminModal .customer-profile-clean .badge.good{background:#e4f7f2!important;color:#12755e!important;}
#adminModal .customer-edit-v3 .customer-edit-identity{border:1px solid #d5e5ea!important;border-radius:15px!important;background:linear-gradient(135deg,#f2fbfa,#fff)!important;}
#adminModal .customer-edit-v3 .customer-edit-panel-head{border-bottom:1px solid #e7eef2!important;}

@media(max-width:1200px){
  #section-frontdesk .fd-snack-items{grid-template-columns:repeat(2,minmax(220px,1fr))!important;}
  #section-frontdesk .fd-snack-checkout{grid-template-columns:1fr!important;}
}
@media(max-width:900px){
  .app-shell{grid-template-columns:1fr!important;}
  .sidebar{position:sticky!important;height:auto!important;min-height:0!important;max-height:none!important;}
  #section-frontdesk .fd-booking-rail{max-height:none!important;}
  #section-frontdesk .fd-snack-items{grid-template-columns:repeat(2,minmax(210px,1fr))!important;}
  .admin-module-heading{border-radius:18px!important;}
}
@media(max-width:650px){
  .main{padding:14px!important;}
  #section-frontdesk .fd-snack-items{grid-template-columns:1fr!important;}
  #section-frontdesk .openplay-inline-children{grid-template-columns:1fr!important;}
  .admin-module-heading{padding:18px 17px 16px!important;}
  .admin-module-heading h2{font-size:21px!important;}
}


/* V734 — Open Play start-from-profile + final action flow.
   Keep the desktop table breathable and reserve enough room for all actions.
   Horizontal scrolling only activates on narrow screens; desktop stays one row. */
#section-frontdesk .fd-openplay-front-panel{
  padding:18px 20px 20px!important;
}
#section-frontdesk .fd-openplay-bar{
  gap:16px!important;
  padding-bottom:12px!important;
}
#section-frontdesk .fd-openplay-title{
  gap:14px!important;
}
#section-frontdesk .fd-openplay-search{
  width:min(420px,42%)!important;
  max-width:none!important;
}
#section-frontdesk .fd-openplay-table{
  margin-top:12px!important;
  width:100%!important;
  overflow:visible!important;
}
#section-frontdesk .fd-openplay-table-head,
#section-frontdesk .fd-openplay-row{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:minmax(240px,1.8fr) 82px minmax(170px,1.25fr) 120px 145px 210px!important;
  column-gap:14px!important;
  align-items:center!important;
}
#section-frontdesk .fd-openplay-table-head{
  min-height:42px!important;
  padding:0 14px!important;
}
#section-frontdesk .fd-openplay-row{
  min-height:86px!important;
  padding:13px 14px!important;
}
#section-frontdesk .fd-op-guest,
#section-frontdesk .fd-op-cell,
#section-frontdesk .fd-op-actions{
  min-width:0!important;
}
#section-frontdesk .fd-op-guest b{
  font-size:14px!important;
}
#section-frontdesk .fd-op-cell>b{
  font-size:15px!important;
}
#section-frontdesk .fd-op-time b{
  font-size:11px!important;
}
#section-frontdesk .fd-op-payment{
  gap:5px!important;
}
#section-frontdesk .fd-op-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
}
#section-frontdesk .fd-op-primary-actions,
#section-frontdesk .fd-op-manage-actions{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:nowrap!important;
}
#section-frontdesk .fd-op-actions .action-btn{
  flex:0 0 auto!important;
  min-width:max-content!important;
  min-height:38px!important;
  padding:8px 11px!important;
  font-size:10px!important;
  white-space:nowrap!important;
}

@media(max-width:1120px){
  #section-frontdesk .fd-openplay-table{overflow-x:auto!important;}
  #section-frontdesk .fd-openplay-table-head,
  #section-frontdesk .fd-openplay-row{
    min-width:1000px!important;
    grid-template-columns:minmax(230px,1.7fr) 78px 165px 115px 140px 200px!important;
    column-gap:12px!important;
  }
}

/* V734 — Start Today's Open Play action */
.customer-clean-history .row-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}.customer-clean-history #startTodayOpenPlay{white-space:nowrap!important}.openplay-checkin-modal .openplay-child-list{display:grid!important;gap:8px!important}.openplay-checkin-modal .openplay-child-choice{cursor:pointer!important}
.finance-simple-v740{box-sizing:border-box;background:#fff!important;padding:0 20px 28px!important;border:0!important;overflow:visible!important}
.finance-simple-v740 *{box-sizing:border-box}
.finance-v740-root{display:block}
.finance-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:2px 0 18px}
.finance-kpi{border:1px solid #dfe9ee;border-radius:16px;background:#fff;padding:18px 18px 16px;box-shadow:0 5px 18px rgba(18,57,87,.05);min-width:0}
.finance-kpi small,.finance-monthly-summary-card small{display:block;color:#718596;font-size:9px;font-weight:900;letter-spacing:.1em;margin-bottom:6px}
.finance-kpi b{display:block;color:#123957;font-size:26px;line-height:1.1;font-weight:900;font-variant-numeric:tabular-nums}
.finance-kpi b.negative{color:#9b4c3e}
.finance-kpi span,.finance-monthly-summary-card span{display:block;color:#718596;font-size:11px;margin-top:6px}
.finance-saturday-table{min-width:1120px}
.finance-saturday-table td{padding-top:13px;padding-bottom:13px}
.finance-monthly-summary-card{margin-top:16px;border:1px solid #dfe9ee;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(18,57,87,.05);padding:18px 20px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:18px}
.finance-monthly-summary-card>div{min-width:0}
.finance-monthly-summary-card b{display:block;color:#123957;font-size:22px;line-height:1.1;font-weight:900;font-variant-numeric:tabular-nums}
.finance-monthly-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.finance-monthly-actions .action-btn{white-space:nowrap}
@media (max-width:900px){.finance-kpi-grid{grid-template-columns:1fr}.finance-monthly-summary-card{grid-template-columns:1fr}.finance-monthly-actions{justify-content:flex-start}.finance-simple-v740{padding:0 12px 22px!important}}

/* V742 — Business/Finance uses the Front Desk visual language. */
.business-frontdesk-style{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;overflow:visible!important}
.business-frontdesk-style .business-hero-head{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:144px;padding:28px 30px;border-radius:22px;background:linear-gradient(110deg,#123957 0%,#0d596e 52%,#12a2a1 100%);color:#fff;position:relative;overflow:hidden;box-shadow:0 8px 24px rgba(18,57,87,.10)}
.business-frontdesk-style .business-hero-head:after{content:"";position:absolute;right:-50px;top:-80px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.08);box-shadow:-100px 120px 0 rgba(255,255,255,.05)}
.business-frontdesk-style .business-hero-head>div,.business-frontdesk-style .business-hero-month{position:relative;z-index:1}
.business-frontdesk-style .business-hero-head h1{margin:8px 0 0;font-size:38px;line-height:1;font-weight:900;color:#fff}
.business-frontdesk-style .business-hero-head p{margin:8px 0 0;color:rgba(255,255,255,.82);font-size:13px}
.business-frontdesk-style .business-hero-head .fd-hero-kicker{color:#ffd85a}
.business-frontdesk-style .business-hero-month{display:flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid rgba(255,255,255,.28);border-radius:14px;background:rgba(255,255,255,.10);color:#fff}
.business-frontdesk-style .business-hero-month .calendar-mini{display:none}
.business-frontdesk-style .business-hero-month select{border:0;background:transparent;color:#fff;font-weight:800;font-size:13px;outline:none;cursor:pointer}
.business-frontdesk-style .business-hero-month select option{color:#123957;background:#fff}
.business-frontdesk-style .business-redesign-tabs{margin-top:12px;border:1px solid #dfe9ee;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(18,57,87,.05);padding:4px}
.business-frontdesk-style .business-master-tab{border-radius:12px;padding:12px 18px;font-weight:800;color:#5c7182}
.business-frontdesk-style .business-master-tab.active{background:#24b8be;color:#fff;box-shadow:0 5px 12px rgba(36,184,190,.18)}
.business-frontdesk-style .business-master-content{margin-top:14px}
.business-frontdesk-style .business-master-pane{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
.business-frontdesk-style .finance-frontdesk-head{padding:8px 4px 16px;border-bottom:1px solid #dfe9ee;align-items:flex-end}
.business-frontdesk-style .finance-frontdesk-head h2{font-size:30px;color:#123957;font-weight:900}
.business-frontdesk-style .finance-frontdesk-head p{font-size:12px;color:#718596}
.business-frontdesk-style .finance-frontdesk-head .action-btn{border-radius:12px}
@media(max-width:760px){.business-frontdesk-style .business-hero-head{align-items:flex-start;flex-direction:column;min-height:0}.business-frontdesk-style .business-hero-month{align-self:stretch;justify-content:center}.business-frontdesk-style .business-redesign-tabs{overflow-x:auto;display:flex}.business-frontdesk-style .business-master-tab{white-space:nowrap}.business-frontdesk-style .finance-frontdesk-head{align-items:flex-start;flex-direction:column}}


/* V743 — Finance layout hardening + exact Saturday Sales order.
   Front Desk remains the visual source of truth. Flatten nested cards and
   keep every finance heading/table cell inside its own surface. */
.business-frontdesk-style .business-master-content{margin-top:14px!important;padding:0!important;min-width:0!important;overflow:visible!important}
.business-frontdesk-style .business-master-pane.finance-simple-v740{
  margin:0!important;padding:0 0 28px!important;min-width:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none!important;overflow:visible!important;
}
.business-frontdesk-style .finance-frontdesk-head{
  display:flex!important;justify-content:space-between!important;align-items:flex-end!important;
  gap:20px!important;min-width:0!important;width:100%!important;
  padding:8px 4px 16px!important;margin:0!important;
}
.business-frontdesk-style .finance-frontdesk-head>div{min-width:0!important;flex:1 1 auto!important}
.business-frontdesk-style .finance-frontdesk-head h2{margin:0!important;line-height:1.05!important;white-space:normal!important}
.business-frontdesk-style .finance-frontdesk-head p{margin:6px 0 0!important;line-height:1.35!important;max-width:760px!important}
.business-frontdesk-style .finance-frontdesk-head .action-btn{flex:0 0 auto!important;white-space:nowrap!important}
.finance-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;min-width:0!important}
.finance-kpi{min-width:0!important;overflow:hidden!important}
.finance-kpi span{white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.3!important}
.finance-simple-card{min-width:0!important;overflow:hidden!important;border:1px solid #dfe9ee!important;border-radius:18px!important;background:#fff!important;box-shadow:0 7px 20px rgba(18,57,87,.05)!important}
.finance-simple-card-head{min-width:0!important;padding:18px 20px!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important}
.finance-simple-card-head>div{min-width:0!important;flex:1 1 auto!important}
.finance-simple-card-head h3{margin:0!important;line-height:1.15!important;white-space:normal!important}
.finance-simple-card-head p{margin:5px 0 0!important;line-height:1.35!important;white-space:normal!important}
.finance-build-badge{flex:0 0 auto!important;white-space:nowrap!important}
.finance-monthly-table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important}
.finance-saturday-table{width:100%!important;min-width:980px!important;table-layout:fixed!important;border-collapse:separate!important;border-spacing:0!important}
.finance-saturday-table th,.finance-saturday-table td{box-sizing:border-box!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.finance-saturday-table th:first-child,.finance-saturday-table td:first-child{width:130px!important;text-align:left!important}
.finance-saturday-table th:not(:first-child),.finance-saturday-table td:not(:first-child){width:auto!important;text-align:right!important}
.finance-saturday-table th{padding:11px 12px!important}
.finance-saturday-table td{padding:13px 12px!important}
.finance-monthly-summary-card{min-width:0!important;overflow:hidden!important}
.finance-monthly-summary-card>div{min-width:0!important}
.finance-monthly-summary-card span{white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.3!important}
@media(max-width:900px){
  .business-frontdesk-style .finance-frontdesk-head{align-items:flex-start!important;flex-direction:column!important}
  .business-frontdesk-style .finance-frontdesk-head .action-btn{align-self:flex-start!important}
  .finance-kpi-grid{grid-template-columns:1fr!important}
  .finance-simple-card-head{flex-direction:column!important}
}

/* V744 — Finance logic order: source -> payment -> Square -> result */
.finance-detail-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:14px!important;margin-top:14px!important;min-width:0!important}
.finance-sales-card,.finance-detail-grid .finance-simple-card,.finance-result-strip{min-width:0!important;overflow:hidden!important}
.finance-sales-card .finance-simple-card-head,.finance-detail-grid .finance-simple-card-head{min-width:0!important}
.finance-simple-card-head h3{min-width:0!important;overflow-wrap:break-word!important}
.finance-simple-card-head p{max-width:100%!important;overflow-wrap:anywhere!important}
.finance-monthly-table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important}
.finance-saturday-table,.finance-payment-table,.finance-square-table{width:100%!important;min-width:0!important;table-layout:fixed!important}
.finance-saturday-table th:first-child,.finance-saturday-table td:first-child{width:19%!important;text-align:left!important}
.finance-saturday-table th:not(:first-child),.finance-saturday-table td:not(:first-child){width:16.2%!important;text-align:right!important}
.finance-payment-table th:first-child,.finance-payment-table td:first-child,.finance-square-table th:first-child,.finance-square-table td:first-child{width:30%!important;text-align:left!important}
.finance-payment-table th:not(:first-child),.finance-payment-table td:not(:first-child),.finance-square-table th:not(:first-child),.finance-square-table td:not(:first-child){width:23.333%!important;text-align:right!important}
.finance-monthly-table th,.finance-monthly-table td{box-sizing:border-box!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;padding:12px 12px!important}
.finance-monthly-table th{font-size:11px!important;letter-spacing:.08em!important}
.finance-result-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr)) auto!important;gap:18px!important;align-items:center!important;margin-top:14px!important}
.finance-result-strip>div{min-width:0!important}
.finance-result-strip span{white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.3!important}
@media(max-width:900px){.finance-detail-grid{grid-template-columns:1fr!important}.finance-result-strip{grid-template-columns:1fr 1fr!important}.finance-result-strip .finance-monthly-actions{grid-column:1/-1!important}}
@media(max-width:620px){.finance-result-strip{grid-template-columns:1fr!important}.finance-result-strip .finance-monthly-actions{grid-column:auto!important}}

/* V745 — Finance table column alignment and compact desktop layout */
#financeSaturdayTable .finance-monthly-table-wrap{overflow-x:visible!important}
#financeSaturdayTable .finance-monthly-table{width:100%!important;min-width:0!important;table-layout:fixed!important}
#financeSaturdayTable .finance-saturday-table th:first-child,
#financeSaturdayTable .finance-saturday-table td:first-child{width:18%!important;text-align:left!important}
#financeSaturdayTable .finance-saturday-table th:not(:first-child),
#financeSaturdayTable .finance-saturday-table td:not(:first-child){width:16.4%!important}
#financeSaturdayTable .finance-payment-table th:first-child,
#financeSaturdayTable .finance-payment-table td:first-child{width:30%!important;text-align:left!important}
#financeSaturdayTable .finance-payment-table th:not(:first-child),
#financeSaturdayTable .finance-payment-table td:not(:first-child){width:23.333%!important}
#financeSaturdayTable .finance-square-table th:first-child,
#financeSaturdayTable .finance-square-table td:first-child{width:30%!important;text-align:left!important}
#financeSaturdayTable .finance-square-table th:not(:first-child),
#financeSaturdayTable .finance-square-table td:not(:first-child){width:23.333%!important}
#financeSaturdayTable .finance-monthly-table th,
#financeSaturdayTable .finance-monthly-table td{padding-left:14px!important;padding-right:14px!important}
#financeSaturdayTable .finance-monthly-table th{height:40px!important;vertical-align:middle!important}
#financeSaturdayTable .finance-monthly-table td{height:40px!important;vertical-align:middle!important}
#financeSaturdayTable .finance-monthly-table .num{text-align:right!important}
#financeSaturdayTable .finance-monthly-table td:first-child b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#financeSaturdayTable .finance-payment-table td.total-col,
#financeSaturdayTable .finance-square-table td.total-col,
#financeSaturdayTable .finance-saturday-table td.total-col{font-weight:900!important}
#financeSaturdayTable .finance-detail-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch!important}
#financeSaturdayTable .finance-detail-grid .finance-simple-card{height:100%!important}
#financeSaturdayTable .finance-detail-grid .finance-simple-card-head{min-height:76px!important}
#financeSaturdayTable .finance-result-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto!important}
@media(max-width:980px){
  #financeSaturdayTable .finance-monthly-table-wrap{overflow-x:auto!important}
  #financeSaturdayTable .finance-monthly-table{min-width:620px!important}
}

/* V746 — unified Celebrate Admin visual language for all sections */
:root{
  --fd-navy:#102f4a;
  --fd-navy-deep:#0d2942;
  --fd-teal:#20a7a5;
  --fd-teal-dark:#167b80;
  --fd-yellow:#f3c84b;
  --fd-red:#d84b4b;
  --fd-blue:#3f72d8;
  --fd-border:#dfe7ee;
  --fd-muted:#6d8292;
  --fd-bg:#f4f8fb;
}
/* Every non-Front-Desk service now reads like a first-class Celebrate page. */
.section:not(#section-frontdesk){
  max-width:1060px;
  margin:0 auto;
}
.section:not(#section-frontdesk) > .service-page-hero{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:138px;
  margin:0 0 18px;
  padding:26px 30px;
  border-radius:22px;
  color:#fff;
  background:linear-gradient(115deg,var(--fd-navy-deep) 0%,#12516b 52%,#20a7a5 100%);
  box-shadow:0 12px 30px rgba(16,42,67,.10);
}
.service-page-hero::after,.business-hero-head::after{
  content:"";position:absolute;right:-55px;top:-65px;width:260px;height:210px;border-radius:50%;
  background:radial-gradient(circle at 30% 60%,rgba(255,255,255,.08),rgba(255,255,255,0) 65%);
  pointer-events:none;
}
.service-page-hero > div{position:relative;z-index:1;min-width:0}
.service-page-kicker,.business-hero-kicker{
  display:block;margin:0 0 7px;color:var(--fd-yellow);font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;
}
.service-page-hero h1{margin:0;color:#fff;font-size:40px;line-height:1;letter-spacing:-.035em}
.service-page-hero p{margin:9px 0 0;color:rgba(255,255,255,.82);font-size:14px;line-height:1.45}
.section:not(#section-frontdesk) > .panel,
.section:not(#section-frontdesk) > .grid-2 > .panel,
.section:not(#section-frontdesk) > .cards > .metric,
.section:not(#section-frontdesk) > .quick-actions > .quick-action{
  border-color:var(--fd-border);
  border-radius:18px;
  box-shadow:0 9px 24px rgba(16,42,67,.055);
  background:#fff;
}
.section:not(#section-frontdesk) > .panel{margin-bottom:16px}
.section:not(#section-frontdesk) .panel-head{padding:18px 20px 14px}
.section:not(#section-frontdesk) .panel-head h2{font-size:23px;color:var(--fd-navy);letter-spacing:-.02em}
.section:not(#section-frontdesk) .panel-head h2::after{content:"";display:block;width:34px;height:3px;margin-top:7px;border-radius:99px;background:linear-gradient(90deg,var(--fd-teal),var(--fd-yellow))}
.section:not(#section-frontdesk) .panel-subtitle,
.section:not(#section-frontdesk) .panel-head p{color:var(--fd-muted)}
.section:not(#section-frontdesk) .table-wrap{border:1px solid var(--fd-border);border-radius:15px;overflow:auto;background:#fff}
.section:not(#section-frontdesk) table{width:100%;border-collapse:separate;border-spacing:0}
.section:not(#section-frontdesk) th{padding:11px 14px;background:linear-gradient(180deg,#f4f8fb,#eef4f8);font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:#557085;white-space:nowrap}
.section:not(#section-frontdesk) td{padding:13px 14px;border-bottom:1px solid #e8eef3;color:#173852}
.section:not(#section-frontdesk) tbody tr:last-child td{border-bottom:0}
.section:not(#section-frontdesk) .action-btn,
.section:not(#section-frontdesk) button.primary,
.section:not(#section-frontdesk) .btn-primary{border-radius:11px;font-weight:800}
.section:not(#section-frontdesk) input,
.section:not(#section-frontdesk) select,
.section:not(#section-frontdesk) textarea{border-radius:11px;border-color:#d7e3eb;background:#fff;min-width:0}
.section:not(#section-frontdesk) .badge{border-radius:999px}
.section:not(#section-frontdesk) .cards{gap:14px}
.section:not(#section-frontdesk) .metric{min-width:0;overflow:hidden}
/* Existing Business hero is retained, but brought into the same visual system. */
.business-hero-head{position:relative;overflow:hidden;border-radius:22px;background:linear-gradient(115deg,var(--fd-navy-deep),#12516b 52%,var(--fd-teal));color:#fff;box-shadow:0 12px 30px rgba(16,42,67,.10)}
.business-hero-head h1{color:#fff;letter-spacing:-.035em}
.business-hero-head p{color:rgba(255,255,255,.82)}
/* Make service-specific grids breathe rather than stack awkwardly. */
.section:not(#section-frontdesk) .grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.section:not(#section-frontdesk) .form-grid{gap:14px}
@media(max-width:900px){
  .section:not(#section-frontdesk){max-width:none}
  .section:not(#section-frontdesk) .grid-2{grid-template-columns:1fr}
  .service-page-hero{min-height:120px!important;padding:22px!important}
  .service-page-hero h1{font-size:34px}
}
@media(max-width:680px){
  .section:not(#section-frontdesk) > .service-page-hero{border-radius:17px;padding:20px}
  .service-page-hero h1{font-size:30px}
}

/* V747 — consistent form controls and collision guards, 2026-10-15 */
#section-people, #section-frontdesk, #section-services { min-width:0; }
#section-people *, #section-frontdesk *, #section-services * { box-sizing:border-box; }
#section-people :is(input,select,textarea,button),
#section-frontdesk :is(input,select,textarea,button),
#section-services :is(input,select,textarea,button) { font-family:inherit; }
#section-people :is(input,select,textarea),
#section-frontdesk :is(input,select,textarea),
#section-services :is(input,select,textarea) { max-width:100%; min-width:0; }
#section-people :is(.customer-search-wrap,.toolbar,.form-grid,.grid-2),
#section-frontdesk :is(.fd-openplay-search,.toolbar,.form-grid,.grid-2),
#section-services :is(.toolbar,.form-grid,.grid-2) { min-width:0; }
#section-people .customer-search-wrap input,
#section-frontdesk .fd-openplay-search input { width:100%; min-width:0; }
#section-people :is(.panel,.card,.metric),
#section-frontdesk :is(.panel,.card,.metric),
#section-services :is(.panel,.card,.metric) { min-width:0; }
@media (max-width:680px) {
 #section-people :is(.toolbar,.form-grid,.grid-2),
 #section-services :is(.toolbar,.form-grid,.grid-2) { max-width:100%; }
}

/* V748: one Saturday = one finance card */
#financeSaturdayTable .finance-month-overview{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;background:#fff;border:1px solid #dce8ed;border-radius:18px;margin:0 0 24px;flex-wrap:wrap}
#financeSaturdayTable .finance-month-overview small,#financeSaturdayTable .finance-day-head small{font-size:10px;letter-spacing:.12em;color:#688092;font-weight:800}
#financeSaturdayTable .finance-month-overview h3{font-size:29px;margin:8px 0 5px;color:#123c58}#financeSaturdayTable .finance-month-overview h3 span{font-size:14px;font-weight:500;color:#657e8f}#financeSaturdayTable .finance-month-overview p{margin:0;color:#60788a}
#financeSaturdayTable .finance-days-heading{margin:4px 4px 16px}#financeSaturdayTable .finance-days-heading h3{margin:0 0 4px;font-size:20px}#financeSaturdayTable .finance-days-heading p{margin:0;color:#6a8292}
#financeSaturdayTable .finance-day-list{display:grid;gap:16px}#financeSaturdayTable .finance-day-card{background:#fff;border:1px solid #dce8ed;border-radius:18px;overflow:hidden;box-shadow:0 6px 18px rgba(18,57,87,.04)}
#financeSaturdayTable .finance-day-head{background:#eef8f8;border-bottom:1px solid #dce8ed;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:16px}#financeSaturdayTable .finance-day-head h3{font-size:23px;margin:4px 0 0;color:#153d59}#financeSaturdayTable .finance-day-gross{text-align:right}#financeSaturdayTable .finance-day-gross strong{display:block;font-size:26px;color:#0b858e}
#financeSaturdayTable .finance-day-body{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:20px 22px}#financeSaturdayTable .finance-day-body section{min-width:0}#financeSaturdayTable .finance-day-body h4{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#56758a;margin:0 0 12px}#financeSaturdayTable .finance-day-line{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #edf2f4;font-size:13px}#financeSaturdayTable .finance-day-line b{white-space:nowrap;color:#153d59}#financeSaturdayTable .finance-day-line.emphasis{font-weight:800;border-top:2px solid #c5e8e8;margin-top:8px;font-size:15px}#financeSaturdayTable .finance-day-line.emphasis b{color:#008b91}
#financeSaturdayTable .finance-day-foot{background:#fbfcfd;border-top:1px solid #e7eff2;padding:11px 22px;display:flex;justify-content:space-between;gap:12px;color:#6a8190;font-size:11px;flex-wrap:wrap}#financeSaturdayTable .finance-fee-disclaimer{font-size:11px;color:#6a8190;margin:15px 4px}
@media(max-width:700px){#financeSaturdayTable .finance-day-body{grid-template-columns:1fr;gap:22px}#financeSaturdayTable .finance-day-head{align-items:flex-start}#financeSaturdayTable .finance-day-gross strong{font-size:21px}#financeSaturdayTable .finance-month-overview h3{font-size:24px}}

/* V751: separate monthly costs from Saturday-specific operating results */
.finance-month-expense-note{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;margin:20px 4px 8px;padding:16px 19px;border:1px solid #b9dfe2;border-radius:14px;background:#f0f8f8;color:#23465b;font-size:13px;line-height:1.5}
.finance-month-expense-note strong{color:#006d79;font-size:15px;white-space:nowrap}
.finance-month-expense-note span{flex:1;min-width:220px}

/* V752: one clear payment + child check-in workflow */
#section-frontdesk .fd-op-payment-step{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding:16px;margin:14px 0;background:#edf8f8;border:1px solid #b8dedd;border-radius:12px;color:#153c50}
#section-frontdesk .fd-op-payment-step>div{display:flex;flex-direction:column;gap:4px}
#section-frontdesk .fd-op-payment-step small{color:#536c79;font-size:12px}
#section-frontdesk .fd-op-payment-step label{display:flex;flex-direction:column;gap:5px;font-weight:700;font-size:12px}
#section-frontdesk .fd-op-payment-step select{min-width:150px;padding:10px;border-radius:8px;border:1px solid #b7cbd2;background:white;color:#12374c}
#section-frontdesk .fd-op-payment-step strong{font-size:21px;color:#087f89}


/* V753 — intentional Front Desk Open Play visual redesign; isolated to this module. */
#section-frontdesk .fd-openplay-front-panel{background:#f8fbfd!important;border:1px solid #dbe6ee!important;border-radius:22px!important;border-top:0!important;padding:0 0 18px!important;overflow:visible!important;box-shadow:0 16px 38px rgba(15,39,67,.08)!important;margin-top:22px!important}
#section-frontdesk .fd-openplay-bar{background:linear-gradient(112deg,#102d48 0%,#174766 68%,#146c79 100%)!important;color:#fff!important;border:0!important;border-radius:22px 22px 0 0!important;padding:24px 26px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,370px)!important;gap:20px!important;align-items:center!important}
#section-frontdesk .fd-openplay-title{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;min-width:0!important}
#section-frontdesk .fd-openplay-title h2{color:#fff!important;font-size:clamp(22px,2.3vw,30px)!important;font-weight:850!important;letter-spacing:-.035em!important;line-height:1.15!important;margin:5px 0 5px!important}
#section-frontdesk .fd-op-eyebrow{display:block;color:#9de0de!important;font-size:10px!important;font-weight:850!important;letter-spacing:.16em!important}
#section-frontdesk .fd-op-heading-dot{color:#ffcb68!important}
#section-frontdesk .fd-op-intro{color:#c7dce7!important;font-size:12px!important;margin:0!important;line-height:1.4!important}
#section-frontdesk .fd-openplay-capacity{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:14px!important;padding:10px 14px!important;display:flex!important;flex-direction:column!important;gap:2px!important;min-width:155px!important;color:#fff!important;box-shadow:none!important}
#section-frontdesk .fd-openplay-capacity b{font-size:17px!important;color:#fff!important;white-space:nowrap!important}
#section-frontdesk .fd-openplay-capacity small{color:#d1e8ee!important;font-size:11px!important}
#section-frontdesk #fdCapacityStatus{font-size:10px!important;letter-spacing:.12em!important;color:#8be5d5!important}
#section-frontdesk .fd-openplay-search{width:100%!important;max-width:none!important;align-self:center!important}
#section-frontdesk .fd-openplay-search input{width:100%!important;height:46px!important;border-radius:12px!important;background:#fff!important;color:#17364d!important;border:2px solid transparent!important;padding-left:40px!important;font-size:13px!important;box-shadow:0 5px 18px rgba(0,0,0,.10)!important}
#section-frontdesk .fd-openplay-search input:focus{border-color:#68d8d4!important;outline:none!important}
#section-frontdesk .fd-op-section-label{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 26px 8px;color:#1d4860;font-weight:850;font-size:11px;letter-spacing:.11em}
#section-frontdesk .fd-op-section-label small{font-size:11px;letter-spacing:0;color:#718697;font-weight:600}
#section-frontdesk .fd-openplay-table{margin:0 18px!important;background:transparent!important}
#section-frontdesk .fd-openplay-table-head{background:#eaf1f6!important;border-radius:10px!important;border:0!important;color:#5d7384!important;min-height:40px!important;padding:0 16px!important;font-size:10px!important;font-weight:850!important;letter-spacing:.07em!important}
#section-frontdesk .fd-openplay-rows{display:grid!important;gap:9px!important;margin-top:10px!important}
#section-frontdesk .fd-openplay-row{background:#fff!important;border:1px solid #e0e9ef!important;border-left:4px solid #a6bdcc!important;border-radius:13px!important;box-shadow:0 3px 12px rgba(18,48,72,.045)!important;padding:14px 15px!important;min-height:92px!important;transition:border-color .15s,box-shadow .15s!important}
#section-frontdesk .fd-openplay-row:hover{border-color:#a6cbd2!important;box-shadow:0 7px 18px rgba(18,48,72,.09)!important}
#section-frontdesk .fd-openplay-row.fd-op-due{border-left-color:#e9a15a!important}
#section-frontdesk .fd-openplay-row.fd-op-ready{border-left-color:#31a7a5!important}
#section-frontdesk .fd-openplay-row.fd-op-active{border-left-color:#2980bd!important;background:#fbfdff!important}
#section-frontdesk .fd-openplay-row.fd-op-completed{border-left-color:#a2b0b9!important;opacity:.86}
#section-frontdesk .fd-op-guest b{font-size:15px!important;color:#163b55!important;font-weight:800!important;line-height:1.35!important}
#section-frontdesk .fd-op-guest small,#section-frontdesk .fd-op-cell small,#section-frontdesk .fd-op-status small{font-size:11px!important;color:#748796!important;line-height:1.5!important}
#section-frontdesk .fd-op-cell>b{font-size:13px!important;color:#23475d!important}
#section-frontdesk .fd-op-payment .badge,#section-frontdesk .fd-op-status .badge{border-radius:7px!important;padding:5px 8px!important;font-size:10px!important;font-weight:850!important;letter-spacing:.025em!important}
#section-frontdesk .fd-op-actions .action-btn{border-radius:9px!important;min-height:34px!important;font-size:10px!important;font-weight:850!important;letter-spacing:.02em!important}
#section-frontdesk .fd-op-primary-actions .action-btn{background:#087f87!important;color:#fff!important;border-color:#087f87!important;box-shadow:0 3px 9px rgba(8,127,135,.18)!important}
#section-frontdesk .fd-op-primary-actions .action-btn:hover{background:#086b73!important}
#section-frontdesk .fd-op-manage-actions .action-btn.secondary{background:#f1f6f9!important;color:#35556a!important;border:1px solid #d9e6ed!important}
#section-frontdesk .fd-openplay-empty-row{background:#fff!important;border:1px dashed #cbdde6!important;border-radius:12px!important;padding:28px!important;margin-top:10px!important;text-align:center!important;color:#687f90!important}
@media(max-width:1120px){#section-frontdesk .fd-openplay-bar{grid-template-columns:1fr!important}#section-frontdesk .fd-openplay-search{max-width:550px!important}}
@media(max-width:760px){#section-frontdesk .fd-openplay-bar{padding:20px 16px!important}#section-frontdesk .fd-openplay-title{align-items:flex-start!important;flex-wrap:wrap!important}#section-frontdesk .fd-op-section-label{padding:18px 16px 8px!important}#section-frontdesk .fd-openplay-table{margin:0 10px!important;overflow-x:auto!important}#section-frontdesk .fd-openplay-table-head,#section-frontdesk .fd-openplay-row{min-width:850px!important}#section-frontdesk .fd-openplay-front-panel{border-radius:17px!important}#section-frontdesk .fd-openplay-bar{border-radius:17px 17px 0 0!important}}

/* V754 — Finance: restrained professional dashboard, scoped to Finance only */
#financeSaturdayTable{--fin-ink:#152f45;--fin-muted:#617588;--fin-border:#dbe3e9;--fin-bg:#f5f7f9;color:var(--fin-ink);font-variant-numeric:tabular-nums}
#financeSaturdayTable .finance-pro-header{background:#17354d;color:#fff;border-radius:16px;padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:16px}
#financeSaturdayTable .finance-pro-header h2{font-size:26px;font-weight:800;letter-spacing:-.035em;margin:5px 0}
#financeSaturdayTable .finance-pro-header p{color:#d3e0e9;margin:0;font-size:13px}
#financeSaturdayTable .finance-eyebrow{color:#9fd4d6;font-size:10px;font-weight:800;letter-spacing:.14em}
#financeSaturdayTable .finance-pro-header .action-btn{background:#fff;color:#15354d;border:0;min-height:42px;font-weight:800}
#financeSaturdayTable .finance-pro-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 14px}
#financeSaturdayTable .finance-pro-kpi{border:1px solid var(--fin-border);border-radius:13px;background:#fff;padding:20px 18px;min-width:0;display:flex;flex-direction:column;gap:9px}
#financeSaturdayTable .finance-pro-kpi>span{color:var(--fin-muted);font-size:12px;font-weight:700}
#financeSaturdayTable .finance-pro-kpi>strong{font-size:clamp(19px,2vw,27px);font-weight:800;letter-spacing:-.04em;overflow-wrap:anywhere}
#financeSaturdayTable .finance-pro-kpi>small{color:#758696;font-size:11px;line-height:1.4}
#financeSaturdayTable .finance-pro-kpi-net{background:#e9f3f2;border-color:#bddbd6}
#financeSaturdayTable .finance-pro-kpi-net strong{color:#11635c}
#financeSaturdayTable .finance-pro-payment-panel{border:1px solid var(--fin-border);border-radius:13px;background:#fff;padding:19px 22px;display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);gap:18px;align-items:center}
#financeSaturdayTable .finance-pro-payment-panel h3{margin:0 0 5px;font-size:16px;color:var(--fin-ink)}
#financeSaturdayTable .finance-pro-payment-panel p{margin:0;color:var(--fin-muted);font-size:12px;line-height:1.5}
#financeSaturdayTable .finance-pro-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#financeSaturdayTable .finance-pro-methods>div{border-left:2px solid #d3e3e8;padding:4px 12px;display:flex;flex-direction:column;gap:5px;min-width:0}
#financeSaturdayTable .finance-pro-methods span{font-size:11px;color:var(--fin-muted)}
#financeSaturdayTable .finance-pro-methods b{font-size:18px;color:var(--fin-ink);overflow-wrap:anywhere}
#financeSaturdayTable .finance-pro-audit{display:flex;gap:8px 20px;flex-wrap:wrap;padding:13px 18px;margin-top:12px;border-radius:9px;background:#eef4f6;color:#355469;font-size:12px;border:1px solid #dae6eb}
#financeSaturdayTable .finance-pro-audit.warn{background:#fff4e7;border-color:#f0d6a8}
#financeSaturdayTable .finance-days-heading{margin:30px 0 14px}
#financeSaturdayTable .finance-days-heading h3{font-size:20px;color:var(--fin-ink);font-weight:800}
#financeSaturdayTable .finance-day-list{gap:14px}
#financeSaturdayTable .finance-day-card{border-radius:13px;box-shadow:none;border-color:var(--fin-border)}
#financeSaturdayTable .finance-day-head{background:#f4f7f9;padding:19px 23px;border-bottom-color:var(--fin-border)}
#financeSaturdayTable .finance-day-head h3{font-size:21px;color:var(--fin-ink);margin:5px 0}
#financeSaturdayTable .finance-day-gross strong{font-size:25px;color:var(--fin-ink)}
#financeSaturdayTable .finance-day-gross>span{font-size:10px;color:var(--fin-muted);display:block;margin-top:4px}
#financeSaturdayTable .finance-day-status{font-size:11px;color:#21716b;font-weight:700}
#financeSaturdayTable .finance-day-status.warn{color:#a45c12}
#financeSaturdayTable .finance-day-body{padding:20px 23px;gap:32px}
#financeSaturdayTable .finance-day-body h4{font-size:11px;color:#506b7d}
#financeSaturdayTable .finance-day-line{font-size:12px;padding:9px 0}
#financeSaturdayTable .finance-day-subtotal{display:flex;justify-content:space-between;gap:12px;padding:12px 0 0;font-size:12px;font-weight:800;color:var(--fin-ink)}
#financeSaturdayTable .finance-day-result{margin:0 23px 17px;padding:14px 17px;background:#f5f7f9;border:1px solid #e2e8ed;border-radius:9px;display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:12px}
#financeSaturdayTable .finance-day-result>div{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--fin-muted)}
#financeSaturdayTable .finance-day-result b{font-size:15px;color:var(--fin-ink)}
#financeSaturdayTable .finance-day-result-net{border-left:1px solid #d6e0e6;padding-left:18px}
#financeSaturdayTable .finance-day-result-net strong{font-size:20px;color:#146b65}
#financeSaturdayTable .finance-month-expense-note{background:#f4f7f9;border-color:#dce6eb;color:#365164}
#financeSaturdayTable .finance-month-expense-note strong{color:#183d54}
@media(max-width:950px){#financeSaturdayTable .finance-pro-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#financeSaturdayTable .finance-pro-header{padding:20px}#financeSaturdayTable .finance-pro-header h2{font-size:22px}#financeSaturdayTable .finance-pro-kpis{grid-template-columns:1fr 1fr}#financeSaturdayTable .finance-pro-kpi{padding:14px}#financeSaturdayTable .finance-pro-payment-panel{grid-template-columns:1fr}#financeSaturdayTable .finance-pro-methods{grid-template-columns:repeat(3,minmax(0,1fr))}#financeSaturdayTable .finance-pro-methods b{font-size:15px}#financeSaturdayTable .finance-day-result{grid-template-columns:1fr 1fr;margin:0 14px 14px}#financeSaturdayTable .finance-day-result-net{grid-column:1/-1;border-left:0;border-top:1px solid #d6e0e6;padding:12px 0 0}#financeSaturdayTable .finance-day-body{padding:17px}}

/* V756 Front Desk Parties — operational, calm, compact */
.fd-party-ops{margin:18px 0 22px;border:1px solid #d7e5ec;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(13,46,70,.05)}
.fd-party-top{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#103b55;color:#fff;padding:22px 26px}
.fd-party-top h2{color:#fff;margin:5px 0;font-size:24px}.fd-party-top p{color:#d6e8f0;margin:0;font-size:13px}
.fd-party-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fd-party-controls label{font-size:12px;color:#d6e8f0}.fd-party-controls input{background:#fff;color:#153b52;border:1px solid #c7dce7;border-radius:10px;padding:10px}
#fdPartyDashboard{padding:20px 24px}.fd-party-booking{border:1px solid #dce7ed;border-radius:14px;padding:20px;margin-bottom:14px;background:#fff}
.fd-party-booking-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.fd-party-booking-head h3{font-size:20px;margin:4px 0;color:#153b52}.fd-party-booking-head p{font-size:12px;color:#607789;margin:0}.fd-party-code{font-size:11px;letter-spacing:.08em;color:#168e96;font-weight:800}
.fd-party-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 12px}.fd-party-stats>div{border:1px solid #e0e9ef;background:#f5f9fb;border-radius:11px;padding:14px}.fd-party-stats span{display:block;color:#5d7585;font-size:11px;font-weight:700}.fd-party-stats strong{display:block;color:#143d57;font-size:29px;margin-top:6px}.fd-party-stats .fd-party-alert{background:#fff5e6;border-color:#f3d9a7}.fd-party-stats .fd-party-alert strong{color:#a65c0a}
.fd-party-progress{height:9px;border-radius:99px;background:#e7eef1;overflow:hidden}.fd-party-progress>div{height:100%;background:#0a9b9c;transition:width .2s}.fd-party-progress-label{color:#617989;font-size:12px;margin:8px 0 18px}
.fd-party-roster-head{display:flex;justify-content:space-between;border-bottom:1px solid #e4edf1;padding-bottom:9px;color:#183c54;font-size:13px;font-weight:800}.fd-party-roster-head span{font-weight:500;color:#708594}.fd-party-guest{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid #edf1f4}.fd-party-guest b{font-size:13px;color:#183c54}.fd-party-guest small{display:block;color:#6b7e8b;font-size:11px;margin-top:4px}.fd-party-no-guests,.fd-party-empty,.fd-party-error,.fd-party-loading{padding:20px;background:#f5f9fb;color:#587183;border-radius:10px;font-size:13px;margin:12px 0}
@media(max-width:750px){.fd-party-top,.fd-party-booking-head{flex-direction:column;align-items:flex-start}.fd-party-stats{grid-template-columns:repeat(2,minmax(0,1fr))}#fdPartyDashboard{padding:12px}.fd-party-booking{padding:14px}}

/* V757: front desk layout and modal stability. Scoped overrides only. */
#section-frontdesk{min-width:0}#section-frontdesk .panel,#section-frontdesk .fd-party-ops{min-width:0;max-width:100%;box-sizing:border-box}
#section-frontdesk .fd-party-ops{margin:16px 0 20px;border-radius:16px;box-shadow:0 5px 20px rgba(10,40,60,.045)}
#section-frontdesk .fd-party-top{padding:18px 22px;gap:14px;flex-wrap:wrap;background:#123b54}
#section-frontdesk .fd-party-top h2{font-size:21px;line-height:1.2;letter-spacing:-.02em}
#section-frontdesk .fd-party-controls{margin-left:auto;gap:8px}
#section-frontdesk .fd-party-controls input{max-width:190px;min-height:42px;box-sizing:border-box}
#section-frontdesk #fdPartyDashboard{padding:16px 20px 18px}
#section-frontdesk .fd-party-booking{padding:18px;border-radius:12px;margin-bottom:0;box-shadow:none}
#section-frontdesk .fd-party-booking-head{flex-wrap:wrap}
#section-frontdesk .fd-party-stats{gap:9px;margin:15px 0 12px}
#section-frontdesk .fd-party-stats>div{padding:12px;min-width:0}
#section-frontdesk .fd-party-stats strong{font-size:26px;line-height:1.15}
#section-frontdesk .fd-party-roster-head,#section-frontdesk .fd-party-guest{min-width:0}
#section-frontdesk .fd-party-guest{flex-wrap:wrap}
#section-frontdesk .fd-party-booking-head h3,#section-frontdesk .fd-party-guest b,#section-frontdesk .fd-party-roster-head{ text-transform:uppercase;letter-spacing:.015em}
/* Modal must use the actual .modal-head/.modal-body DOM selectors. */
#adminModal{padding:clamp(8px,2vw,24px)!important;overscroll-behavior:contain!important}
#adminModal .modal-card{width:min(940px,calc(100vw - 24px))!important;height:auto!important;max-height:calc(100dvh - 32px)!important;min-height:0!important;border-radius:16px!important;display:flex!important;flex-direction:column!important}
#adminModal .modal-head{min-height:60px!important;padding:12px 20px!important;flex-shrink:0!important;gap:12px!important}
#adminModal .modal-head h2{font-size:clamp(16px,2vw,21px)!important;line-height:1.3!important;overflow-wrap:anywhere!important}
#adminModal .modal-body{overflow-y:auto!important;overflow-x:hidden!important;min-height:0!important;max-height:calc(100dvh - 110px)!important;padding:18px 20px 24px!important;overscroll-behavior:contain!important}
#adminModal .modal-body *{box-sizing:border-box}#adminModal .modal-body img,#adminModal .modal-body table{max-width:100%}
#adminModal .modal-body input,#adminModal .modal-body select,#adminModal .modal-body textarea{min-width:0;max-width:100%}
#adminModal .modal-body .form-grid,#adminModal .modal-body .profile-grid{min-width:0}
#adminModal .modal-body .customer-hero h3,#adminModal .modal-body .customer-profile-clean h3,#adminModal .modal-body .customer-edit-v3 h3{text-transform:uppercase}
/* Uppercase display for names, never emails, passwords, identifiers, phone numbers or free-form notes. */
#section-frontdesk .guest-name,#section-frontdesk .customer-name,#section-frontdesk .fd-party-booking-head h3,#section-frontdesk .fd-party-guest b{text-transform:uppercase}
@media(max-width:760px){#section-frontdesk .fd-party-top{padding:16px}#section-frontdesk .fd-party-controls{width:100%;margin-left:0}#section-frontdesk .fd-party-controls input{flex:1;max-width:none}#section-frontdesk #fdPartyDashboard{padding:10px}#section-frontdesk .fd-party-booking{padding:12px}#section-frontdesk .fd-party-stats{grid-template-columns:repeat(2,minmax(0,1fr))}#adminModal .modal-card{width:calc(100vw - 12px)!important;max-height:calc(100dvh - 12px)!important}#adminModal .modal-body{padding:14px!important;max-height:calc(100dvh - 80px)!important}#adminModal .modal-body .profile-grid{grid-template-columns:1fr!important}}

/* V758: real Front Desk workspace separation, not stacked panels. */
#section-frontdesk .fd-workspace-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0 14px;max-width:100%}
#section-frontdesk .fd-workspace-tab{display:flex;align-items:center;gap:12px;min-height:72px;padding:16px 22px;border:1px solid #d6e3e9;border-radius:14px;background:#fff;color:#25475c;font-size:15px;font-weight:900;letter-spacing:.05em;text-align:left;cursor:pointer;box-shadow:0 2px 9px rgba(13,46,70,.04);transition:background .15s,border-color .15s,box-shadow .15s}
#section-frontdesk .fd-workspace-tab small{margin-left:auto;font-size:11px;letter-spacing:0;font-weight:600;color:#718697}
#section-frontdesk .fd-workspace-tab .fd-tab-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#e8f5f6;color:#008f99;font-size:20px}
#section-frontdesk .fd-workspace-tab.is-active{background:#103b55;color:#fff;border-color:#103b55;box-shadow:0 7px 20px rgba(13,46,70,.12)}
#section-frontdesk .fd-workspace-tab.is-active small{color:#bcd9e5}
#section-frontdesk .fd-workspace-tab.is-active .fd-tab-icon{background:#168c94;color:#fff}
#section-frontdesk .fd-workspace-pane[hidden]{display:none!important}
#section-frontdesk .fd-workspace-pane>.panel{margin-top:0!important}
#section-frontdesk .fd-party-ops{border-radius:14px!important}
#section-frontdesk .fd-party-top{background:#f6f9fb!important;color:#123b54!important;border-bottom:1px solid #e1eaf0}
#section-frontdesk .fd-party-top h2{color:#123b54!important}
#section-frontdesk .fd-party-top p{color:#60788b!important}
#section-frontdesk .fd-party-booking{border:1px solid #dce7ed!important;background:#fff!important}
#section-frontdesk .fd-party-stats>div{background:#f5f8fa!important;border:1px solid #e0e9ef!important}
#section-frontdesk .fd-party-stats .fd-party-alert{background:#fff5e6!important;border-color:#f3d9a7!important}
@media(max-width:700px){#section-frontdesk .fd-workspace-tabs{gap:8px}#section-frontdesk .fd-workspace-tab{padding:12px;min-height:65px;font-size:12px;gap:7px}#section-frontdesk .fd-workspace-tab small{display:none}#section-frontdesk .fd-workspace-tab .fd-tab-icon{width:30px;height:30px}}

/* V759 hybrid party attendance */
#section-frontdesk .fd-hybrid-stats{grid-template-columns:repeat(5,minmax(0,1fr));}
#section-frontdesk .fd-hybrid-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
#section-frontdesk .fd-hybrid-guest{gap:12px;align-items:center;}
#section-frontdesk .fd-hybrid-actions button{min-width:84px;}
@media(max-width:900px){#section-frontdesk .fd-hybrid-stats{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:480px){#section-frontdesk .fd-hybrid-guest{align-items:flex-start;flex-direction:column;}#section-frontdesk .fd-hybrid-actions{justify-content:flex-start;}}

/* V762 — safe waiver triage and modal overflow repairs */
.waiver-triage-guide{display:grid;gap:4px;margin:12px 0;padding:12px 14px;background:#eff8f9;border:1px solid #c9e5e9;border-radius:12px;color:#153b4f;font-size:13px;line-height:1.45}
.waiver-triage-guide span{color:#526d7d}
#waiverRecoveryResults{max-height:min(52vh,470px);overflow:auto;overscroll-behavior:contain;border:1px solid #e2eaf0;border-radius:12px;padding:0 12px;background:#fff}
#waiverRecoveryResults .history-row{min-width:0;gap:12px}
#waiverRecoveryResults .history-row>div{min-width:0;overflow-wrap:anywhere}
#waiverRecoveryResults .history-row small{display:block;line-height:1.4}
#waiverRecoveryResults .history-row button{flex-shrink:0}
@media(max-width:620px){#waiverRecoveryResults .history-row{align-items:flex-start;flex-direction:column}#waiverRecoveryResults .history-row button{width:100%}}

/* V765: inline party waiver recovery, single-page Front Desk */
.fd-party-inline-recovery[hidden]{display:none!important}
.fd-party-inline-recovery{margin:16px 0 22px;padding:20px;border:1px solid #b9d9e4;border-radius:16px;background:#f8fcfe}
.fd-party-recovery-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.fd-party-recovery-head strong{font-size:16px;color:#0b3552}
.fd-party-recovery-head p{margin:6px 0 14px;color:#5c7789;font-size:13px;max-width:640px}
.fd-party-recovery-search{display:block;font-size:12px;font-weight:750;color:#234a64}
.fd-party-recovery-search input{display:block;width:100%;height:44px;margin:8px 0 14px;padding:0 14px;border:1px solid #c6dce6;border-radius:10px;background:#fff;font-size:15px}
.fd-party-recovery-results{display:grid;gap:8px;max-height:310px;overflow:auto}
.fd-party-recovery-row{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid #dce8ee;padding:12px;border-radius:11px}
.fd-party-recovery-row b{display:block;color:#0b3552}
.fd-party-recovery-row small{display:block;color:#60798b;margin-top:5px;overflow-wrap:anywhere}
.fd-party-recovery-status{font-size:13px;color:#8a530b;margin-bottom:6px}
@media(max-width:650px){.fd-party-recovery-head,.fd-party-recovery-row{flex-direction:column;align-items:stretch}.fd-party-recovery-row button{align-self:flex-start}}
