/* Tribal Booking unified mobile-first UI system. Base = phone; desktop enhances. */
:root{--tf-navy:#0f1d31;--tf-navy-2:#182a43;--tf-orange:#ea580c;--tf-orange-dark:#c2410c;--tf-bg:#f7f7f4;--tf-card:#fff;--tf-text:#172033;--tf-muted:#667085;--tf-border:#e4e7ec;--tf-danger:#b42318;--tf-success:#16794b;--tf-radius:14px;--tf-shadow:0 5px 18px rgba(15,29,49,.055);--tf-space:16px}
html{overflow-x:hidden}body.tribal-portal-mode{background:var(--tf-bg);color:var(--tf-text);font-size:15px;line-height:1.5;overflow-x:hidden}.tf-app-content{width:100%;max-width:1480px;margin:auto;padding:16px 16px calc(84px + env(safe-area-inset-bottom))}.tf-app-content>*,.tribal-content>*{max-width:100%}.tf90-page,.tf-page,.tribal-member-shell,.tbr-page{width:100%;max-width:1400px;margin-inline:auto}.tf90-head,.tf-page-header,.tribal-page-head{display:grid;gap:12px;margin:0 0 18px}.tf90-head h1,.tf-page-header h1,.tribal-page-title{font-size:clamp(28px,8vw,34px);line-height:1.1;letter-spacing:-.035em;margin:0;color:var(--tf-navy)}.tf90-head p,.tf-page-header p,.tribal-page-subtitle{margin:4px 0 0;color:var(--tf-muted);font-size:14px}.tf90-actions,.tf-page-actions{display:flex;gap:8px;flex-wrap:wrap;width:100%}.tf90-actions>*{flex:1 1 140px}
.tf90-section,.tf-section,.tf-card,.tribal-card,.tbr-flow,.tbr-add,.tbr-add-fields,.tbr-global{background:var(--tf-card);border:1px solid var(--tf-border);border-radius:var(--tf-radius);box-shadow:var(--tf-shadow);padding:16px;margin:0 0 var(--tf-space);height:auto!important;min-height:0!important}.tf90-section-title,.tf-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.tf90-section h2,.tf-section h2,.tf-card h2{font-size:20px;line-height:1.25;color:var(--tf-navy);margin:0 0 10px}.tf-grid,.tf90-two,.tf90-three,.tribal-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--tf-space)}.tf-stack{display:grid;gap:12px}
button,.tribal-btn,input[type=submit],input[type=button]{min-height:44px;border-radius:10px;border:1px solid transparent;padding:10px 16px;font:inherit;font-weight:750;cursor:pointer}.tribal-btn:not(.secondary),button:not(.secondary):not(.tf-app-mobile):not(#tf-more-close),input[type=submit]{background:var(--tf-orange);color:#fff}.secondary,.tribal-btn.secondary{background:#fff!important;color:var(--tf-navy)!important;border-color:var(--tf-border)!important}.danger,.tribal-btn.danger{background:#fff!important;color:var(--tf-danger)!important;border-color:#fecdca!important}:disabled,[aria-disabled=true]{opacity:.55;cursor:not-allowed}.tf-app-content label{display:block;color:var(--tf-text);font-weight:700;font-size:13px}.tf-app-content input:not([type=checkbox]):not([type=radio]),.tf-app-content select,.tf-app-content textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:44px;margin-top:6px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;color:var(--tf-text);padding:10px 12px;font:inherit}.tf-app-content textarea{min-height:110px;resize:vertical}.tf90-settings,.tf-form-grid,.tf90-toolbar,.tf-filter-bar{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;align-items:end}.tf90-tabs,.tf-tabs{display:flex;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;gap:4px;white-space:nowrap;padding-bottom:3px}.tf90-tabs a,.tf-tabs a{scroll-snap-align:start;min-height:44px;display:flex;align-items:center;padding:9px 12px;text-decoration:none}
.tf-status,.tf90-badge,.tf-badge{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border-radius:999px;background:#eef2f6;color:#344054;font-size:12px;font-weight:800}.active,.paid,.success{--status-color:var(--tf-success)}.tf-empty-state,.tf90-empty,.tbr-empty{min-height:0!important;padding:28px 16px!important;display:grid;place-items:center;text-align:center;color:var(--tf-muted);border:1px dashed #d0d5dd;border-radius:12px;background:#fff}.tf-empty-state strong,.tf90-empty strong{color:var(--tf-text);font-size:17px}.tf-modal,.tribal-modal{width:calc(100vw - 32px)!important;max-width:680px!important;max-height:90vh!important;overflow:auto!important;inset:5vh 16px auto!important}.tf-app-content img,.tf-app-content svg,.tf-app-content canvas{max-width:100%;height:auto}.tf-app-content canvas{touch-action:none}.tf-chart,canvas{max-width:100%!important}
.tf-responsive-table{border:0!important;background:transparent!important}.tf-responsive-table thead{display:none}.tf-responsive-table tbody,.tf-responsive-table tr{display:block}.tf-responsive-table tbody tr{background:#fff;border:1px solid var(--tf-border);border-radius:12px;padding:10px;margin:0 0 10px;box-shadow:0 2px 8px rgba(15,29,49,.035)}.tf-responsive-table td{display:grid!important;grid-template-columns:minmax(92px,36%) minmax(0,1fr);gap:10px;width:100%!important;padding:8px 4px!important;border:0!important;overflow-wrap:anywhere}.tf-responsive-table td:before{content:attr(data-label);display:block;color:var(--tf-muted);font-size:11px;font-weight:800;text-transform:uppercase}.tf-responsive-table td[colspan]:before{display:none}.tf-responsive-table td[colspan]{display:block!important;text-align:center}.tf90-metrics,.tribal-dashboard-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.tf90-metrics>*{min-width:0;padding:14px!important}.tf90-metrics strong{font-size:23px}.tf90-metrics span{font-size:12px}.tf-date-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px}.tf-date-nav .today{grid-column:1/-1}.tf-filter-bar,.tf90-toolbar{padding:12px}.tf-app-content details summary{min-height:44px;padding:10px 0;cursor:pointer}.signature-pad{width:100%!important;max-width:100%!important;overflow:hidden}.tf-mobile-bottom{padding-bottom:max(5px,env(safe-area-inset-bottom))}
@media(min-width:768px){:root{--tf-space:18px}.tf-app-content{padding:22px 24px 36px}.tf90-head,.tf-page-header,.tribal-page-head{grid-template-columns:minmax(0,1fr) auto;align-items:start}.tf90-head h1,.tf-page-header h1,.tribal-page-title{font-size:36px}.tf90-actions,.tf-page-actions{width:auto;justify-content:flex-end}.tf90-actions>*{flex:0 0 auto}.tf90-section,.tf-section,.tf-card,.tribal-card{padding:20px}.tf-grid.two,.tf90-two{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-grid.three,.tf90-three{grid-template-columns:repeat(3,minmax(0,1fr))}.tf90-settings,.tf-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tf90-toolbar,.tf-filter-bar{grid-template-columns:repeat(4,minmax(0,1fr)) auto!important}.tf-responsive-table{display:table!important;background:#fff!important;border:1px solid var(--tf-border)!important}.tf-responsive-table thead{display:table-header-group}.tf-responsive-table tbody{display:table-row-group}.tf-responsive-table tr{display:table-row}.tf-responsive-table tbody tr{border:0;border-radius:0;padding:0;margin:0;box-shadow:none}.tf-responsive-table td{display:table-cell!important;width:auto!important;padding:12px!important;border-bottom:1px solid var(--tf-border)!important}.tf-responsive-table td:before{display:none}.tf90-metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important}.tf-date-nav{display:flex}.tf-date-nav .today{grid-column:auto}}
/* Phone and tablet application shell: one navigation system, no desktop/sidebar overlap. */
@media(max-width:1023px){body.tribal-portal-mode{padding:0 0 calc(72px + env(safe-area-inset-bottom))!important}.tf-app{display:block!important;min-height:100dvh}.tf-app-sidebar{display:none!important;visibility:hidden!important}.tf-app-main{margin:0!important;width:100%!important;min-width:0!important}.tf-app-topbar{position:sticky!important;top:0;z-index:140;height:58px!important;display:grid!important;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;padding:0 12px!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--tf-border);backdrop-filter:blur(12px)}.tf-app-topbar>:last-child{justify-self:end}.tf-app-mobile{display:inline-flex!important;align-items:center;justify-content:center;width:44px!important;min-width:44px;padding:0!important;background:var(--tf-navy)!important;color:#fff!important}.tf-mobile-title{display:block!important;text-align:center;font-size:16px;font-weight:850;color:var(--tf-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-app-content{margin:0!important;width:100%!important;max-width:none!important;padding:16px 16px 24px!important;overflow:visible!important}.tf-mobile-bottom{position:fixed!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));left:0;right:0;bottom:0;z-index:160;height:calc(64px + env(safe-area-inset-bottom));padding:5px 4px env(safe-area-inset-bottom);background:var(--tf-navy);box-shadow:0 -8px 24px rgba(15,29,49,.14)}.tf-mobile-bottom a,.tf-mobile-bottom button{min-width:0!important;width:auto!important;min-height:54px!important;padding:5px 2px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:#dce3ed!important;font-size:10px!important;line-height:1.15;text-align:center;white-space:normal}.tf-mobile-bottom a[aria-current=page]{background:rgba(255,255,255,.1)!important;color:#fff!important}.tf-more-sheet{width:100%!important;max-width:none!important;margin:0!important;inset:auto 0 0!important}.tf-more-sheet nav{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-more-sheet nav a{min-height:50px;display:flex;align-items:center;overflow-wrap:anywhere}.tribal-staff,.tribal-staff-main,.tribal-content{display:block!important;width:100%!important;min-width:0!important;margin:0!important}.tribal-staff>aside,.tribal-topbar{display:none!important}.tribal-content{padding:0!important}.tf90-page,.tf-page,.tbr-page{width:100%!important;max-width:100%!important;min-width:0!important}.tf90-head,.tf-page-header,.tribal-page-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important}.tf90-actions,.tf-page-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%!important;overflow:visible!important}.tf90-actions:has(>:only-child),.tf-page-actions:has(>:only-child){grid-template-columns:1fr}.tf90-actions>*,.tf-page-actions>*{width:100%!important;min-width:0!important;margin:0!important}.tf90-two,.tf90-three,.tf-grid,.tribal-grid,.tbr-class-grid,.tbr-date{grid-template-columns:minmax(0,1fr)!important}.tf90-section,.tf-section,.tf-card,.tribal-card,.tbr-flow,.tbr-add,.tbr-add-fields,.tbr-global{width:100%!important;max-width:100%!important;margin:0 0 16px!important;padding:16px!important;overflow:visible!important}.tf90-settings,.tf-form-grid,.tf90-toolbar,.tf-filter-bar,.tbr-add-fields form{grid-template-columns:minmax(0,1fr)!important}.tf90-toolbar>*,.tf-filter-bar>*{min-width:0!important;width:100%!important}.tbr-steps,.tbr-progress{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;margin:0 0 16px!important}.tbr-steps>*,.tbr-progress>*{flex:0 0 auto;min-width:145px;scroll-snap-align:start}.tbr-class{width:100%!important;grid-template-columns:76px minmax(0,1fr)!important}.tf-modal,.tribal-modal,[role=dialog]{max-width:calc(100vw - 24px)!important;max-height:88dvh!important;overflow:auto!important}.tf90-tabs,.tf-tabs{max-width:100%;padding-inline:0}.tf90-metrics,.tribal-dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tf90-metrics>*{min-height:92px!important}.tf90-class-strip{display:grid!important;grid-template-columns:minmax(0,1fr)!important}.tribal-calendar-card{display:grid!important;grid-template-columns:minmax(0,1fr)!important;min-height:0!important}.tribal-month-panel{border-right:0!important;border-bottom:1px solid var(--tf-border)}.tribal-weekdays,.tribal-month-grid{min-width:0}.tribal-day{min-width:0}.tf-cart article{grid-template-columns:minmax(0,1fr) auto!important}.tf-product-grid{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:479px){.tf-app-content{padding:12px 12px 20px!important}.tf90-head h1,.tf-page-header h1,.tribal-page-title{font-size:28px!important}.tf90-actions,.tf-page-actions{grid-template-columns:minmax(0,1fr)!important}.tf90-metrics,.tribal-dashboard-cards{grid-template-columns:minmax(0,1fr)!important}.tf-more-sheet nav{grid-template-columns:minmax(0,1fr)}.tf-responsive-table td{grid-template-columns:minmax(84px,34%) minmax(0,1fr)}.tf-date-nav{grid-template-columns:44px minmax(0,1fr) 44px}.tf-cart article{grid-template-columns:minmax(0,1fr)!important}.tf-cart article>span{justify-self:start}.tf-cart article form{grid-column:1!important;width:100%}.tf-cart article form button{width:100%}}
@media(min-width:1024px){.tf-app-content{padding:26px 30px 42px}.tf90-section,.tf-section,.tf-card,.tribal-card{padding:22px}.tf90-settings,.tf-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.tf-app-sidebar{display:flex!important;flex-direction:column!important}.tf-mobile-bottom,.tf-more-sheet,.tf-more-backdrop,.tf-mobile-title{display:none!important}}

/* Shared phone consistency: module styles may vary visually, but every action remains a practical touch target. */
@media(max-width:767px){
  .tf-app-content :is(button,.tribal-btn,.tf-btn,input[type=submit],input[type=button],a[role=button]){min-height:44px!important}
  .tf-more-sheet :is(a,button){min-height:44px!important}
}
.tf-more-group{grid-column:1/-1;margin:10px 4px 0;color:#667085;font-size:10px;letter-spacing:.12em;text-transform:uppercase}

/* Canonical cross-plugin component contracts. */
:root{--tf-space-1:4px;--tf-space-2:8px;--tf-space-3:12px;--tf-space-4:16px;--tf-space-5:20px;--tf-space-6:24px;--tf-radius-sm:9px;--tf-radius-md:12px;--tf-radius-lg:16px;--tf-focus:rgba(37,99,235,.28);--tf-warning:#a15c00;--tf-warning-bg:#fff8e6;--tf-danger-bg:#fff1f0;--tf-success-bg:#eaf7ef;--tf-info-bg:#eef5ff}
.tf-eyebrow,.tf-page-eyebrow{margin:0;color:var(--tf-orange-dark);font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.tf-page-title{margin:3px 0;color:var(--tf-navy);font-size:clamp(28px,8vw,36px);font-weight:800;line-height:1.12;letter-spacing:-.03em}.tf-page-subtitle{max-width:70ch;margin:4px 0 0;color:var(--tf-muted);font-size:14px;line-height:1.5}.tf-section-title{margin:0 0 10px;color:var(--tf-navy);font-size:20px;line-height:1.25}.tf-meta{color:var(--tf-muted);font-size:12px;line-height:1.4}.tf-label{color:var(--tf-text);font-size:13px;font-weight:750}
.tf-btn,.tribal-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 15px;border:1px solid transparent;border-radius:var(--tf-radius-sm);font:inherit;font-weight:800;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer}.tf-btn.primary,.tribal-btn.primary{border-color:var(--tf-orange);background:var(--tf-orange);color:#fff}.tf-btn.secondary,.tribal-btn.secondary{border-color:var(--tf-border);background:#fff;color:var(--tf-navy)}.tf-btn.tertiary,.tribal-btn.tertiary{border-color:transparent;background:transparent;color:var(--tf-navy)}.tf-btn.danger,.tribal-btn.danger{border-color:#f4b9b5;background:#fff;color:var(--tf-danger)}.tf-icon-btn{display:inline-grid;width:44px;min-width:44px;height:44px;padding:0;place-items:center;border:1px solid var(--tf-border);border-radius:var(--tf-radius-sm);background:#fff;color:var(--tf-navy)}
.tf-field{display:grid;gap:6px}.tf-help{color:var(--tf-muted);font-size:12px;font-weight:500;line-height:1.45}.tf-error{color:var(--tf-danger);font-size:12px;font-weight:700}.tf-app-content :is(input,select,textarea)[aria-invalid=true],.tf-app-content .has-error :is(input,select,textarea){border-color:var(--tf-danger);box-shadow:0 0 0 3px rgba(180,35,24,.1)}.tf-app-content :is(input,select,textarea):disabled{background:#f2f4f7;color:#98a2b3}.tf-check{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:9px;min-height:44px}.tf-check :is(input[type=checkbox],input[type=radio]){width:22px;height:22px;margin:1px 0 0;accent-color:var(--tf-orange)}
.tf-panel,.tf-summary-card{padding:var(--tf-space-4);border:1px solid var(--tf-border);border-radius:var(--tf-radius-md);background:#fff;box-shadow:var(--tf-shadow)}.tf-summary-card{display:grid;gap:5px}.tf-summary-card>strong{color:var(--tf-navy);font-size:24px}.tf-state{display:grid;gap:5px;padding:14px 16px;border:1px solid var(--tf-border);border-radius:var(--tf-radius-md);background:#fff}.tf-state.warning{border-color:#f2ce91;background:var(--tf-warning-bg);color:#7a4800}.tf-state.success{border-color:#a9ddbd;background:var(--tf-success-bg);color:var(--tf-success)}.tf-state.danger{border-color:#f0bbb7;background:var(--tf-danger-bg);color:var(--tf-danger)}
.tf-status,.tf90-badge,.tf-badge{border:1px solid transparent}.tf-status:is(.active,.published,.synced,.success),.tf-badge:is(.active,.published,.synced,.success){border-color:#a9ddbd;background:var(--tf-success-bg);color:var(--tf-success)}.tf-status:is(.paused,.pending,.waiting,.waiting-activation,.draft),.tf-badge:is(.paused,.pending,.waiting,.waiting-activation,.draft){border-color:#efd195;background:var(--tf-warning-bg);color:#865000}.tf-status:is(.failed,.danger),.tf-badge:is(.failed,.danger){border-color:#f0bbb7;background:var(--tf-danger-bg);color:var(--tf-danger)}.tf-status:is(.archived,.disabled),.tf-badge:is(.archived,.disabled){border-color:#d0d5dd;background:#f2f4f7;color:#475467}.tf-status:is(.needs-review,.review),.tf-badge:is(.needs-review,.review){border-color:#b9d4f8;background:var(--tf-info-bg);color:#175cd3}
.tf-tabs,.tf90-tabs,.tf-subnav{display:flex;max-width:100%;gap:4px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}.tf-tabs::-webkit-scrollbar,.tf90-tabs::-webkit-scrollbar,.tf-subnav::-webkit-scrollbar{display:none}.tf-tabs>a,.tf90-tabs>a,.tf-subnav>a{position:relative;display:flex;flex:0 0 auto;align-items:center;min-height:44px;padding:9px 12px;color:var(--tf-muted);font-weight:750;white-space:nowrap;text-decoration:none}.tf-tabs>a:is(.active,.is-active,[aria-current=page]),.tf90-tabs>a:is(.active,.is-active,[aria-current=page]),.tf-subnav>a:is(.active,.is-active,[aria-current=page]){color:var(--tf-navy)}
.tf-empty-state,.tf90-empty,.tbr-empty{gap:6px;max-width:100%;padding:24px 16px}.tf-empty-state:before,.tf90-empty:before,.tbr-empty:before{content:'◇';display:grid;width:40px;height:40px;place-items:center;border-radius:50%;background:#f2f4f7;color:var(--tf-muted);font-size:18px}.tf-loading,.tf-saving{display:flex;align-items:center;gap:9px;min-height:44px;color:var(--tf-muted);font-weight:700}.tf-loading:before,.tf-saving:before{content:'';width:16px;height:16px;border:2px solid #d0d5dd;border-top-color:var(--tf-orange);border-radius:50%;animation:tf-spin .8s linear infinite}.tf-saved{display:inline-flex;align-items:center;gap:7px;color:var(--tf-success);font-weight:750}.tf-saved:before{content:'✓'}@keyframes tf-spin{to{transform:rotate(360deg)}}
.tf-app-content :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--tf-focus);outline-offset:2px}.tf-app-content [hidden]{display:none}.tf-app-content [aria-busy=true]{cursor:wait;opacity:.68}
@media(min-width:768px){.tf-page-title{font-size:36px}.tf-panel,.tf-summary-card{padding:var(--tf-space-5)}.tf-empty-state,.tf90-empty,.tbr-empty{padding:28px 20px}}

/* Final responsive pass: semantic mobile records and compact portal controls. */
.tf-mobile-record-list,.tf-mobile-day-tabs{display:none}
.tf-exception-group>h3{display:flex;align-items:center;justify-content:space-between;gap:10px}
.tf-exception-toggle{min-height:38px;padding:7px 10px;background:#fff!important;color:var(--tf-navy)!important;border:1px solid var(--tf-border)!important}
.tf-exception-group.is-collapsed .tf-exception-list{display:none}
.tf-tier-grid-enhanced>.tf-tier-row{display:contents}.tf-tier-grid-enhanced>.tf-tier-row>.tf-tier-field{display:block}.tf-tier-grid-enhanced .tf-tier-row>h4,.tf-tier-grid-enhanced .tf-tier-field-title,.tf-tier-grid-enhanced .tf-tier-field small{display:none}.tf-tier-grid-enhanced .tf-tier-field input{margin-top:0}.tf-tier-grid-enhanced .tf-tier-field-suffix{margin-left:4px}
@media(max-width:700px){
  .tf-app-topbar{grid-template-columns:44px minmax(0,1fr) 44px!important;padding-inline:8px!important}
  .tf-app-mobile{width:38px!important;min-width:38px!important;min-height:38px!important;padding:0 7px!important;font-size:12px!important;gap:3px}
  .tf-app-mobile .tf-menu-word{display:none}
  .tf-mobile-title{font-size:17px!important}
  .tf90-metrics,.tribal-dashboard-cards,.tf-mobile-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .tf90-metrics>*,.tribal-dashboard-cards>*{min-height:82px!important;padding:12px!important}
  .tf90-class-strip,.tf-dashboard-class-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .tf90-class-strip>*{min-width:0!important}
  .tf-date-nav{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:7px!important}
  .tf-date-nav .today{grid-column:auto!important}
  .tf-today-page .tf90-section h2,.tf-today-page .tf-class-title{font-size:22px!important;line-height:1.2!important}
  .tbr-class{padding-block:11px!important;row-gap:6px!important}
  .tbr-add h2,.tbr-add h3,.tbr-add-fields h2,.tbr-add-fields h3{font-size:18px!important;line-height:1.25!important}
  .tbr-add .tribal-muted,.tbr-add-fields .tribal-muted{display:block;margin-top:5px!important}
  .tf-mobile-card-source{display:none!important}
  .tf-attendance-mobile-source-wrap>table.tf-attendance-mobile-source{display:none!important}
  .tf-attendance-mobile-record-list{display:grid!important}
  .tf-mobile-record-list{display:grid;gap:10px;width:100%}
  .tf-mobile-record{background:#fff;border:1px solid var(--tf-border);border-radius:13px;padding:14px;box-shadow:0 2px 8px rgba(15,29,49,.035)}
  .tf-mobile-record-title{font-size:16px;font-weight:850;color:var(--tf-navy);margin:0 0 9px;overflow-wrap:anywhere}
  .tf-mobile-record-meta{margin:-4px 0 10px;color:var(--tf-muted);font-size:13px;overflow-wrap:anywhere}
  .tf-mobile-record-row{display:grid;grid-template-columns:minmax(105px,42%) minmax(0,1fr);gap:10px;padding:6px 0;border-top:1px solid #eef0f3;align-items:start}
  .tf-mobile-record-row:first-of-type{border-top:0}
  .tf-mobile-record-key{font-size:11px;font-weight:800;text-transform:uppercase;color:var(--tf-muted)}
  .tf-mobile-record-value{min-width:0;overflow-wrap:anywhere;color:var(--tf-text)}
  .tf-mobile-empty{display:block!important;width:100%;padding:28px 16px;text-align:center;background:#fff;border:1px solid var(--tf-border);border-radius:13px}
  .tf-mobile-empty strong{display:block;font-size:17px;color:var(--tf-navy);margin-bottom:5px}
  .tf-mobile-empty span{color:var(--tf-muted)}
  .tf-mobile-day-tabs{display:flex;gap:5px;overflow-x:auto;padding:0 0 12px;scroll-snap-type:x proximity}
  .tf-mobile-day-tabs button{flex:0 0 48px;min-height:42px;padding:7px 5px;background:#fff!important;color:var(--tf-navy)!important;border:1px solid var(--tf-border)!important;scroll-snap-align:start}
  .tf-mobile-day-tabs button[aria-selected=true]{background:var(--tf-orange)!important;color:#fff!important;border-color:var(--tf-orange)!important}
  .tf-mobile-schedule-grid{display:block!important;min-height:0!important}
  .tf-mobile-schedule-grid>.tf-mobile-day{display:none!important;grid-template-rows:none!important}
  .tf-mobile-schedule-grid>.tf-mobile-day.is-selected{display:grid!important;gap:10px!important}
  .tf-mobile-schedule-grid>.tf-mobile-day>*{grid-row:auto!important}
  .tf-exception-group>h3{display:flex;align-items:center;justify-content:space-between;gap:10px}
  .tf-exception-toggle{min-height:38px;padding:7px 10px;background:#fff!important;color:var(--tf-navy)!important;border:1px solid var(--tf-border)!important}
  .tf-exception-group.is-collapsed .tf-exception-list{display:none}
  .tfbfd-more{max-width:100%;position:relative}
  .tfbfd-more[open]{padding-bottom:42px}
  .tfbfd-more[open]>a{position:absolute;left:0;right:0;bottom:0;display:block;padding:10px;border:1px solid #fecdca;border-radius:8px;background:#fff;text-align:center}
  .tf-system-tabs,.tf90-tabs,.tf-tabs{overflow-x:auto!important;flex-wrap:nowrap!important}
  .tf-loyalty-settings .tf-tier-grid-enhanced{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;max-width:none!important}
  .tf-loyalty-settings .tf-tier-grid-enhanced>b{display:none!important}
  .tf-loyalty-settings .tf-tier-grid-enhanced>.tf-tier-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px;padding:14px;border:1px solid var(--tf-border);border-radius:12px;background:#fff}
  .tf-loyalty-settings .tf-tier-grid-enhanced>.tf-tier-row>h4{display:block;margin:0;padding-bottom:8px;border-bottom:1px solid #eef0f3;color:var(--tf-navy);font-size:16px}
  .tf-loyalty-settings .tf-tier-grid-enhanced .tf-tier-field{display:block!important;min-width:0}
  .tf-loyalty-settings .tf-tier-grid-enhanced .tf-tier-field-title{display:block;margin-bottom:5px;color:var(--tf-text);font-size:12px;font-weight:800}
  .tf-loyalty-settings .tf-tier-grid-enhanced .tf-tier-field small{display:block;margin-top:4px;color:var(--tf-muted);font-size:11px;font-weight:500}
.tf-loyalty-settings .tf-tier-grid-enhanced .tf-tier-field input{display:block;width:100%;margin:0}
.tf-loyalty-settings .tf-tier-grid-enhanced .tf-tier-field:last-child input{display:inline-block;width:calc(100% - 28px)}
.tf-loyalty-settings .tf-tier-grid-enhanced .tf-tier-field-suffix{display:inline-block;width:20px;margin-left:4px;text-align:center}
  .tf-export-links{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .tf-export-links a{display:flex;min-height:44px;align-items:center;justify-content:center;border:1px solid var(--tf-border);border-radius:9px;background:#fff;text-decoration:none;font-weight:750}
}
@media(max-width:350px){.tf90-metrics,.tribal-dashboard-cards,.tf-mobile-kpi-grid,.tf90-class-strip,.tf-dashboard-class-strip{grid-template-columns:1fr!important}}

/* Mobile navigation drawer is removed from document flow until explicitly opened. */
.tf-more-backdrop[hidden]{display:none!important}
@media(max-width:1023px){
.tf-more-backdrop{position:fixed!important;inset:0!important;z-index:180!important;background:rgba(15,29,49,.52)!important}
.tf-more-sheet{position:fixed!important;display:block!important;left:0!important;right:0!important;top:auto!important;bottom:0!important;z-index:190!important;width:100%!important;max-width:none!important;max-height:min(82dvh,720px)!important;margin:0!important;padding:16px 16px calc(20px + env(safe-area-inset-bottom))!important;box-sizing:border-box!important;overflow-y:auto!important;background:#fff!important;color:var(--tf-navy)!important;border-radius:22px 22px 0 0!important;box-shadow:0 -18px 55px rgba(15,29,49,.24)!important;transform:translate3d(0,105%,0)!important;visibility:hidden!important;pointer-events:none!important;transition:transform .22s ease,visibility 0s linear .22s!important}
.tf-more-sheet[aria-hidden="false"]{transform:translate3d(0,0,0)!important;visibility:visible!important;pointer-events:auto!important;transition:transform .22s ease!important}
.tf-more-sheet header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:0 0 12px!important}
.tf-more-sheet header strong{font-size:20px!important}.tf-more-sheet header button{min-height:42px!important;padding:8px 13px!important;background:#f2f4f7!important;color:var(--tf-navy)!important;border:1px solid var(--tf-border)!important}
.tf-more-sheet nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
.tf-more-sheet nav a{display:flex!important;align-items:center!important;min-width:0!important;min-height:48px!important;padding:12px 14px!important;box-sizing:border-box!important;border:1px solid var(--tf-border)!important;border-radius:11px!important;background:#fff!important;color:var(--tf-navy)!important;text-decoration:none!important;font-weight:750!important;overflow-wrap:anywhere!important}
.tf-more-account{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--tf-border)}.tf-more-account strong{min-width:0;overflow-wrap:anywhere}.tf-more-account a{color:var(--tf-navy);font-weight:750;text-decoration:none;padding:10px}
.tf-more-open{overflow:hidden!important}
}
@media(max-width:479px){.tf-more-sheet nav{grid-template-columns:minmax(0,1fr)!important}.tf-more-account{grid-template-columns:minmax(0,1fr);gap:3px}.tf-more-account a{padding:8px 0}}

/* The top-left drawer button is the sole mobile navigation control. */
@media(max-width:1023px){body.tribal-portal-mode{padding-bottom:0!important}.tf-mobile-bottom{display:none!important}.tf-app-topbar{grid-template-columns:52px minmax(0,1fr) 52px!important}.tf-app-topbar .tf-mobile-title{text-align:center!important}.tf-app-topbar .tf-app-mobile{display:inline-flex!important}}

/* Client portal production pass. */
.tf-client-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:16px 18px;border:1px solid #f3d1b7;border-left:4px solid var(--tf-orange);border-radius:12px;background:#fff8f2}.tf-client-alert.warning{background:#fff9e9;border-color:#efd79a}.tf-client-alert strong{display:block;color:var(--tf-navy);font-size:16px}.tf-client-alert p{margin:4px 0 0;color:var(--tf-muted)}
.tribal-member-top,.tf-client-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.tribal-member-actions{display:flex;flex-wrap:wrap;gap:9px}.tf-client-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tf-client-card{min-width:0;padding:20px;border:1px solid var(--tf-border);border-radius:14px;background:#fff;box-shadow:0 8px 26px rgba(15,29,49,.05)}.tf-client-card h2{margin:5px 0 8px;color:var(--tf-navy);font-size:22px}.tf-client-card>a{display:inline-flex;margin-top:13px;color:var(--tf-orange-dark);font-weight:750}.tf-card-kicker{margin:0;color:var(--tf-muted);font-size:11px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.tf-client-empty p{color:var(--tf-muted)}
.tf-booking-tabs{display:flex;gap:22px;margin:18px 0;border-bottom:1px solid var(--tf-border);overflow-x:auto}.tf-booking-tabs a{flex:0 0 auto;padding:10px 2px;border-bottom:2px solid transparent;color:var(--tf-muted);font-weight:750;text-decoration:none}.tf-booking-tabs a.active{border-color:var(--tf-orange);color:var(--tf-orange-dark)}.tf-booking-list{display:grid;gap:12px}.tf-booking-card{display:grid;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px;border:1px solid var(--tf-border);border-radius:13px;background:#fff}.tf-booking-date{display:grid;place-items:center;min-height:70px;border-radius:10px;background:var(--tf-off-white);text-align:center}.tf-booking-date strong{font-size:13px;text-transform:uppercase}.tf-booking-date span{font-size:18px;font-weight:850}.tf-booking-main h2{margin:0 0 5px;font-size:19px}.tf-booking-main p{margin:0 0 8px;color:var(--tf-muted)}.tf-booking-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.tf-bookings-empty{padding:38px;border:1px dashed var(--tf-border);border-radius:13px;background:#fff;text-align:center}
.tf-booking-details{grid-column:2/-1;width:100%;padding-top:10px;border-top:1px solid var(--tf-border)}.tf-booking-details summary{cursor:pointer;color:var(--tf-orange-dark);font-weight:800}.tf-booking-details p{margin:10px 0 0;color:var(--tf-muted)}.tf-booking-window-closed{margin:0;color:var(--tf-muted);font-size:13px}
.tf-client-account{max-width:1160px;margin:0 auto}.tf-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.tf-account-grid>.tribal-card{margin:0;padding:22px}.tf-account-grid label{display:block;margin:12px 0;font-weight:750}.tf-account-grid input[type=text],.tf-account-grid input[type=email],.tf-account-grid input[type=password],.tf-account-grid input:not([type]){display:block;width:100%;margin-top:6px}.tf-account-grid label:has(input[type=checkbox]){display:flex;align-items:center;gap:9px}.tf-account-save{grid-column:1/-1;display:flex;justify-content:flex-end}.tf-client-page-head h1{margin:2px 0 6px}.tf-notification-tabs{display:flex;gap:8px;margin:18px 0;overflow-x:auto;scrollbar-width:thin}.tf-notification-tabs a{flex:0 0 auto;padding:10px 16px;border:1px solid var(--tf-border);border-radius:999px;color:var(--tf-navy);text-decoration:none;font-weight:750;background:#fff}.tf-notification-tabs a.is-active{background:var(--tf-navy);border-color:var(--tf-navy);color:#fff}

/* Shared corrective components: compact tabs, empty states and content-sized panels. */
.tf90-tabs{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;overflow-x:auto!important}.tf90-tabs>a{flex:0 0 auto!important;width:auto!important;min-width:0!important;padding:10px 15px!important}.tf90-tabs>a.active{background:var(--tf-navy)!important;color:#fff!important}.tf90-empty,.tf-empty{min-height:0!important;padding:18px 20px!important}.tf90-empty-compact{display:grid;gap:4px;text-align:left}.tf90-two,.tf-profile-overview-grid{align-items:start!important}.tf90-two>*,.tf-profile-overview-grid>*{align-self:start!important;height:auto!important;min-height:0!important}.tf90-section details>summary{cursor:pointer}.tribal-btn:focus-visible,.tf90-tabs a:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}@media(max-width:430px){.tf90-page{padding-inline:12px!important}.tf90-head{align-items:flex-start!important;flex-direction:column!important}.tf90-tabs{max-width:100%!important}.tf90-section{padding:16px!important}.tf90-table-wrap,.tf90-table-scroll{overflow-x:auto!important}}
@media(max-width:900px){.tf-client-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-account-grid{grid-template-columns:1fr}}
@media(max-width:640px){.tribal-member-top,.tf-client-page-head,.tf-client-alert{display:block}.tribal-member-actions{margin-top:14px}.tribal-member-actions .tribal-btn,.tf-client-alert .tribal-btn{width:100%;margin-top:10px}.tf-client-dashboard-grid{grid-template-columns:1fr}.tf-client-card{padding:17px}.tf-booking-card{grid-template-columns:66px minmax(0,1fr);gap:12px;padding:14px}.tf-booking-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr}.tf-booking-actions .tribal-btn{width:100%}.tf-account-grid>.tribal-card{padding:17px}.tf-account-save .tribal-btn{width:100%}}

/* System administration: consistent, compact and responsive settings layout. */
.tf90-page:has(.tf-system-settings),.tf90-page:has(.tf-system-health-summary),.tf90-page:has(.tf-system-loyalty){max-width:1280px}.tf90-page>.tf90-tabs{margin:0 0 20px;border-bottom:1px solid var(--tf-border)}.tf90-page>.tf90-tabs a{position:relative;padding-inline:14px;color:var(--tf-muted);font-weight:750}.tf90-page>.tf90-tabs a.active{color:var(--tf-orange-dark)}.tf90-page>.tf90-tabs a.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;background:var(--tf-orange);border-radius:2px}
.tf-system-settings{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;gap:18px 20px!important;padding:26px!important}.tf-system-settings>h2,.tf-system-settings>p.tribal-muted,.tf-system-settings>button[type=submit]{grid-column:1/-1}.tf-system-settings>h2{margin:0!important;font-size:24px!important}.tf-system-settings>p.tribal-muted{margin:-9px 0 0}.tf-system-settings>button[type=submit]{justify-self:start;min-width:140px}.tf-system-settings label{margin:0!important}.tf-system-settings small{display:block;margin-top:5px;color:var(--tf-muted);font-weight:500}.tf-system-settings .tf90-check{display:flex!important;align-items:flex-start;gap:10px;min-height:44px;padding:11px 13px;border:1px solid var(--tf-border);border-radius:10px;background:#fafafa}.tf-system-settings .tf90-check input{flex:0 0 auto;margin:3px 0 0}.tf-system-tab-general .tribal-muted{align-self:end}.tf-system-tab-features,.tf-system-tab-notifications{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tf-system-tab-features .tf90-check{min-height:74px}.tf-system-tab-booking .tf-entitlement-priority{grid-column:1/-1;margin:0;padding:17px;border:1px solid var(--tf-border);border-radius:12px}.tf-entitlement-priority ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 0;padding:0;counter-reset:priority}.tf-entitlement-priority li{counter-increment:priority;display:grid;grid-template-columns:26px minmax(0,1fr) 42px 52px;align-items:center;gap:7px;min-width:0;padding:9px;border:1px solid var(--tf-border);border-radius:9px;background:#fff}.tf-entitlement-priority li:before{content:counter(priority);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eef2f7;font-weight:850}.tf-entitlement-priority li button{min-width:0;min-height:36px;padding:5px 7px;font-size:12px}.tf-entitlement-priority li span{min-width:0;font-weight:750}.tf-system-loyalty .tf90-section{padding:26px}.tf-system-loyalty .tf-tier-grid-enhanced{gap:10px!important}.tf-system-loyalty .tf-tier-row input{min-height:40px!important}.tf-system-health-summary{padding:26px!important}.tf-system-health-summary>div{display:flex;align-items:center;gap:14px}.tf-system-health-summary h2{margin:0 0 3px!important}.tf-system-health-summary p{margin:0;color:var(--tf-muted)}.tf-system-health-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:#e9f7ef;color:var(--tf-success);font-size:22px;font-weight:900}.tf-system-health-summary>details{margin-top:20px;border-top:1px solid var(--tf-border)}.tf-system-health-summary>details>summary{font-weight:800;color:var(--tf-orange-dark)}.tf-system-health-detail{margin-top:8px}.tf-system-health-detail>.tf90-section,.tf-system-health-detail>section{padding:0!important;margin:0!important;border:0!important;box-shadow:none!important}.tf-system-health-detail h2:first-child{display:none}.tf-system-health-detail table{width:100%;border-collapse:collapse}.tf-system-health-detail th,.tf-system-health-detail td{padding:9px 10px;border-bottom:1px solid var(--tf-border);text-align:left}
@media(min-width:1100px){.tf-system-tab-booking,.tf-system-tab-clients,.tf-system-tab-notifications{grid-template-columns:repeat(3,minmax(0,1fr))!important}.tf-system-tab-booking .tf-entitlement-priority,.tf-system-tab-booking>h2,.tf-system-tab-booking>button,.tf-system-tab-clients>h2,.tf-system-tab-clients>button,.tf-system-tab-notifications>h2,.tf-system-tab-notifications>button{grid-column:1/-1}}
@media(max-width:767px){.tf-system-settings,.tf-system-tab-features,.tf-system-tab-notifications{grid-template-columns:minmax(0,1fr)!important;padding:18px!important}.tf-system-settings>*{grid-column:1!important}.tf-system-settings>button[type=submit]{width:100%}.tf-entitlement-priority ol{grid-template-columns:1fr}.tf-entitlement-priority li{grid-template-columns:26px minmax(0,1fr) 44px 52px}.tf-system-loyalty .tf90-section,.tf-system-health-summary{padding:18px!important}.tf-system-health-detail{overflow-x:auto}.tf90-page>.tf90-tabs a{padding-inline:11px}}

/* System all-tabs corrective composition. */
.tf90-page:has(>.tf90-tabs){max-width:1180px!important}.tf90-page:has(>.tf90-tabs)>.tf90-head{margin-bottom:20px}.tf90-page:has(>.tf90-tabs)>.tf90-tabs{gap:2px;margin-bottom:22px;padding:0 4px;border-radius:12px 12px 0 0;background:rgba(255,255,255,.56);scrollbar-width:thin}.tf90-page:has(>.tf90-tabs)>.tf90-tabs a{justify-content:center;flex:1 0 auto;padding:12px 14px}
.tf-system-settings,.tf-system-loyalty>.tf90-section,.tf-system-loyalty .tf-loyalty-settings,.tf-system-health-summary{border-color:#dfe3e8!important;border-radius:16px!important;box-shadow:0 10px 30px rgba(15,29,49,.055)!important}.tf-system-settings{column-gap:24px!important;row-gap:20px!important}.tf-system-settings>h2{padding-bottom:14px;border-bottom:1px solid #eceef1}.tf-system-settings>button[type=submit]{margin-top:2px}.tf-system-settings input:not([type=checkbox]):not([type=radio]){background:#fff!important}.tf-system-settings input:focus{border-color:var(--tf-orange)!important;box-shadow:0 0 0 3px rgba(234,88,12,.12)!important;outline:0}.tf-system-settings .tf90-check{background:#fbfbfa!important;transition:border-color .15s,background .15s}.tf-system-settings .tf90-check:has(input:checked){border-color:#f3c7ad;background:#fff8f3!important}
.tf-system-tab-general{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tf-system-tab-general>h2,.tf-system-tab-general>button{grid-column:1/-1}.tf-system-tab-general>.tribal-muted{grid-column:1/-1;margin:0!important;padding:12px 14px;border-radius:9px;background:#f5f6f7}
.tf-system-tab-booking{grid-template-columns:repeat(6,minmax(0,1fr))!important}.tf-system-tab-booking>h2,.tf-system-tab-booking>.tf-entitlement-priority,.tf-system-tab-booking>button{grid-column:1/-1}.tf-system-tab-booking>label:not(.tf90-check){grid-column:span 2}.tf-system-tab-booking>.tf90-check{grid-column:span 3}.tf-system-tab-booking .tf-entitlement-priority{background:#fafaf8}.tf-system-tab-booking .tf-entitlement-priority legend{padding:0 6px;font-size:16px}.tf-system-tab-booking .tf-entitlement-priority .tribal-muted{margin:3px 0 0}.tf-system-tab-booking .tf-entitlement-priority li{box-shadow:0 2px 7px rgba(15,29,49,.035)}
.tf-system-tab-clients{grid-template-columns:repeat(6,minmax(0,1fr))!important}.tf-system-tab-clients>h2,.tf-system-tab-clients>button{grid-column:1/-1}.tf-system-tab-clients>label:not(.tf90-check){grid-column:span 3}.tf-system-tab-clients>.tf90-check{grid-column:span 2}
.tf-system-tab-features{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tf-system-tab-features>h2,.tf-system-tab-features>p,.tf-system-tab-features>button{grid-column:1/-1}.tf-system-tab-features>.tf90-check{min-height:88px;padding:16px}.tf-system-tab-features>.tf90-check strong{font-size:15px}.tf-system-tab-features>.tf90-check small{line-height:1.45}
.tf-system-tab-notifications{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tf-system-tab-notifications>h2,.tf-system-tab-notifications>p,.tf-system-tab-notifications>button{grid-column:1/-1}.tf-system-tab-notifications>.tf90-check{min-height:54px}.tf-system-tab-notifications>p{margin:0!important;padding:12px 14px;border-left:3px solid #d0d5dd;background:#f7f8f9;border-radius:8px}
.tf-system-loyalty .tf-loyalty-settings{max-width:none!important;margin:0!important;padding:26px!important;background:#fff}.tf-system-loyalty .tf-loyalty-settings>h2:first-child{padding-bottom:14px;border-bottom:1px solid #eceef1}.tf-system-loyalty .tf-tier-grid-enhanced{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:none!important}.tf-system-loyalty .tf-tier-grid-enhanced>b{padding:0 4px;color:var(--tf-muted);font-size:11px;letter-spacing:.05em;text-transform:uppercase}.tf-system-loyalty .tf-tier-grid-enhanced>.tf-tier-row{display:contents!important}.tf-system-loyalty .tf-tier-grid-enhanced input{min-height:42px!important}
.tf-staff-directory,.tf-staff-create{border-radius:16px!important}.tf-staff-directory__head,.tf-staff-person,.tf-staff-create{padding-left:24px!important;padding-right:24px!important}.tf-staff-person{grid-template-columns:minmax(220px,1fr) minmax(260px,1.2fr) minmax(130px,.55fr) auto!important}.tf-system-health-summary{max-width:1180px}.tf-system-health-summary>div:first-child{padding:4px 0 8px}.tf-system-health-summary details summary{display:flex;align-items:center;min-height:48px}.tf-system-health-detail{padding:4px 0 2px}.tf-system-health-detail table tr:hover{background:#fafaf8}
@media(max-width:980px){.tf-system-tab-booking,.tf-system-tab-clients{grid-template-columns:repeat(2,minmax(0,1fr))!important}.tf-system-tab-booking>label:not(.tf90-check),.tf-system-tab-booking>.tf90-check,.tf-system-tab-clients>label:not(.tf90-check),.tf-system-tab-clients>.tf90-check{grid-column:span 1}.tf-system-tab-booking>h2,.tf-system-tab-booking>.tf-entitlement-priority,.tf-system-tab-booking>button,.tf-system-tab-clients>h2,.tf-system-tab-clients>button{grid-column:1/-1}.tf-staff-person{grid-template-columns:1fr 1fr!important}.tf-staff-actions{justify-content:flex-start!important}}
@media(max-width:700px){.tf90-page:has(>.tf90-tabs)>.tf90-tabs a{flex:0 0 auto}.tf-system-tab-general,.tf-system-tab-booking,.tf-system-tab-clients,.tf-system-tab-features,.tf-system-tab-notifications{grid-template-columns:1fr!important}.tf-system-tab-general>*,.tf-system-tab-booking>*,.tf-system-tab-clients>*,.tf-system-tab-features>*,.tf-system-tab-notifications>*{grid-column:1!important}.tf-system-settings{padding:17px!important;row-gap:14px!important}.tf-system-settings>h2{font-size:21px!important}.tf-system-settings .tf90-check{min-height:48px}.tf-system-loyalty .tf-loyalty-settings{padding:17px!important}.tf-staff-person{grid-template-columns:1fr!important}}

/* System control polish: one underline, timezone, priority and staff identity. */
.tf90-page>.tf90-tabs a,.tf90-page>.tf90-tabs a.active{border:0!important;border-bottom:0!important;box-shadow:none!important}.tf90-page>.tf90-tabs a.active:after{left:12px!important;right:12px!important;bottom:0!important;height:3px!important}.tf-system-tab-general .tf-system-timezone{grid-column:1/-1}.tf-system-tab-general .tf-system-timezone select{width:100%;min-height:46px;margin-top:6px;padding:9px 38px 9px 12px;border:1px solid #d0d5dd;border-radius:9px;background:#fff;color:var(--tf-text);font:inherit}.tf-system-tab-general .tf-system-timezone small{margin-top:7px}
.tf-system-tab-booking .tf-entitlement-priority{max-width:760px;justify-self:start;width:100%;padding:20px!important}.tf-system-tab-booking .tf-entitlement-priority ol{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}.tf-system-tab-booking .tf-entitlement-priority li{display:grid!important;grid-template-columns:30px minmax(0,1fr) auto!important;min-height:56px;padding:8px 10px!important}.tf-system-tab-booking .tf-entitlement-priority li:before{width:28px;height:28px}.tf-priority-label{font-size:15px}.tf-priority-actions{display:flex;gap:6px}.tf-priority-actions button{display:inline-grid!important;place-items:center;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;font-size:18px!important}.tf-priority-actions button:disabled{background:#f3f4f6!important;color:#a4aab3!important}.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.tf-staff-avatar{width:48px!important;height:48px!important;flex-basis:48px!important;overflow:hidden!important;background:#eef1f4!important}.tf-staff-avatar img,.tf-staff-avatar-image{display:block!important;width:48px!important;height:48px!important;margin:0!important;border-radius:50%!important;object-fit:cover!important}.tf-staff-role-status{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:6px!important}.tf-staff-role-status .tf-staff-role{display:inline-flex!important;margin:0!important}.tf-staff-role-status .tf-staff-status{display:block!important;margin:0!important;padding-left:2px!important;line-height:1.2!important}
@media(max-width:700px){.tf-system-tab-booking .tf-entitlement-priority{max-width:none}.tf90-page>.tf90-tabs a.active:after{left:8px!important;right:8px!important}.tf-staff-role-status{align-items:flex-start!important}}

/* Shared navigation tabs: active state is an orange underline, never a filled navy block. */
.tf-app-content :is(.tf90-tabs,.tf-tabs,.tf-studio-nav,.tf-profile-tabs,.tf-notification-tabs)>a{position:relative!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--tf-muted)!important}
.tf-app-content :is(.tf90-tabs,.tf-tabs,.tf-studio-nav,.tf-profile-tabs,.tf-notification-tabs)>a:is(.active,.is-active,[aria-current=page]){border:0!important;background:transparent!important;color:var(--tf-navy)!important;box-shadow:none!important}
.tf-app-content :is(.tf90-tabs,.tf-tabs,.tf-studio-nav,.tf-profile-tabs,.tf-notification-tabs)>a:is(.active,.is-active,[aria-current=page])::after{content:""!important;position:absolute!important;right:12px!important;bottom:0!important;left:12px!important;height:3px!important;border-radius:3px 3px 0 0!important;background:var(--tf-orange)!important}

/* Keep the selected section visible and make horizontal navigation legible on phones. */
@media(max-width:767px){
 .tf-loyalty-engagement>.tf90-tabs{position:relative;margin-inline:-16px!important;padding:0 16px 5px!important;scroll-padding-inline:16px;scroll-snap-type:x mandatory;border-radius:0!important;background:#fff!important;box-shadow:0 1px 0 var(--tf-border)}
 .tf-loyalty-engagement>.tf90-tabs>a{scroll-snap-align:center;min-height:48px!important;padding:11px 13px!important;font-size:13px!important}
 .tf-loyalty-engagement>.tf90-tabs>a.active{font-weight:850!important}
}

/* Shared mobile responsive foundation v2.1.64. */
@media(max-width:767px){
 html,body.tribal-portal-mode,.tf-app,.tf-app-main,.tf-app-content,.tribal-content{max-width:100%!important}
 body.tribal-portal-mode{overflow-x:clip!important}
 .tf-app-content :is(.tf90-page,.tf-page,.tribal-page,.tbr-page,.tf90-section,.tf-section,.tf-card,.tribal-card,section,article,details,form,fieldset,label){min-width:0;max-width:100%}
 .tf-app-content :is(.tf90-grid,.tf-grid,.tribal-grid,.tf90-two,.tf90-three,.tf90-metrics,.tf-form-grid,.tf90-settings,.tf-filter-bar,.tf90-toolbar)>*{min-width:0}
 .tf-app-content :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,label,a,button,legend,summary,td,th){word-break:normal!important;overflow-wrap:break-word!important}
 .tf-app-content :is(.tf90-tabs,.tf-tabs,.tf-subnav,.tf-profile-tabs,.tf-notification-tabs,.tf-booking-tabs,.tf-studio-nav){display:flex!important;flex-flow:row nowrap!important;width:100%!important;max-width:100%!important;gap:4px!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;white-space:nowrap!important}
 .tf-app-content :is(.tf90-tabs,.tf-tabs,.tf-subnav,.tf-profile-tabs,.tf-notification-tabs,.tf-booking-tabs,.tf-studio-nav)::-webkit-scrollbar{display:none}
 .tf-app-content :is(.tf90-tabs,.tf-tabs,.tf-subnav,.tf-profile-tabs,.tf-notification-tabs,.tf-booking-tabs,.tf-studio-nav)>a{flex:0 0 auto!important;min-width:0!important;min-height:44px!important;white-space:nowrap!important;overflow-wrap:normal!important;scroll-snap-align:start}
 .tf-app-content :is(input:not([type=checkbox]):not([type=radio]),select,textarea){width:100%!important;max-width:100%!important;min-width:0!important}
 .tf-app-content :is(button,.tribal-btn,input[type=submit],input[type=button]){max-width:100%;min-height:44px;white-space:normal!important}
 .tf90-table-wrap,.tf-table-wrap,.tf90-table-scroll{width:100%;max-width:100%;min-width:0;overflow-x:auto!important;overflow-y:visible;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.tf90-table,.tf-responsive-table{max-width:none}
.tf-app-content .tf90-table-wrap thead th,.tf-app-content .tf-table-wrap thead th{position:static!important;top:auto!important}
 .tf-more-sheet,.tf-client-filters,[class*="filter-drawer"]{color:var(--tf-navy)!important;background:#fff!important}
 .tf-more-sheet :is(a,button,label,strong,span),.tf-client-filters :is(a,button,label,strong,span),[class*="filter-drawer"] :is(a,button,label,strong,span){color:inherit}
 .tf-more-sheet nav a[aria-current=page],.tf-client-filters a:is(.active,[aria-current=page]),[class*="filter-drawer"] a:is(.active,[aria-current=page]){background:#fff1e8!important;color:#8f350d!important}
}
@media(max-width:430px){
 .tf-app-content{padding-inline:12px!important}
 .tf90-page:has(>.tf90-tabs),.tf-page:has(>.tf-tabs){padding-inline:0!important}
 .tf90-metrics,.tribal-dashboard-cards{gap:10px!important}
 .tf90-metrics>*{min-width:0!important;padding:15px!important}
 .tf90-metrics :is(strong,span,small){word-break:normal!important;overflow-wrap:break-word!important}
}

/* Shared switch geometry: keep the thumb fully inside the track in every plugin. */
.tf-app-content :is(label.toggle,label.switch,label.tf-switch,label.tf-toggle)>input[type=checkbox]{position:relative!important;display:inline-block!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:24px!important;min-height:24px!important;margin:0!important;padding:0!important;overflow:hidden!important;box-sizing:border-box!important;flex:0 0 44px!important;border:0!important;border-radius:999px!important;background:#cbd3d9!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;cursor:pointer!important;vertical-align:middle!important}
.tf-app-content :is(label.toggle,label.switch,label.tf-switch,label.tf-toggle)>input[type=checkbox]::before{content:""!important;position:absolute!important;top:3px!important;left:3px!important;display:block!important;width:18px!important;height:18px!important;margin:0!important;border-radius:50%!important;background:#fff!important;box-shadow:0 1px 3px rgba(15,29,49,.28)!important;transform:translateX(0)!important;transition:transform .16s ease!important}
.tf-app-content :is(label.toggle,label.switch,label.tf-switch,label.tf-toggle)>input[type=checkbox]:checked{background:var(--tf-success)!important}
.tf-app-content :is(label.toggle,label.switch,label.tf-switch,label.tf-toggle)>input[type=checkbox]:checked::before{transform:translateX(20px)!important}
.tf-app-content :is(label.toggle,label.switch,label.tf-switch,label.tf-toggle)>input[type=checkbox]:focus-visible{outline:3px solid rgba(234,88,12,.22)!important;outline-offset:2px!important}

/* Staff/admin audit hardening: predictable overflow, compact failures and usable action rows. */
.tf-route-empty{max-width:680px;margin:24px auto}.tf-route-empty .tribal-btn{justify-self:start;margin-top:8px}.tf90-section-title,.tf90-toolbar,.tf-filter-bar,.tf90-actions{min-width:0}.tf90-section-title>*{min-width:0}.tf90-section-title h2,.tf90-section-title p,.tf90-section-title span{overflow-wrap:anywhere}.tf90-table-wrap,.tf-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.tf90-table :is(th,td),.tf-responsive-table :is(th,td){vertical-align:top}.tf-attention-list article{min-width:0}.tf-attention-list article>span{min-width:0}.tf-attention-list article small{overflow-wrap:anywhere}.tf-app-nav a[aria-current=page],.tf-more-sheet nav a[aria-current=page]{font-weight:850}.tf-more-sheet nav a[aria-current=page]{background:rgba(234,88,12,.1);color:var(--tf-orange-dark)}
@media(max-width:767px){.tf90-section-title{align-items:flex-start!important;gap:7px!important;flex-direction:column!important}.tf90-section-title>span{white-space:normal!important}.tf-attention-list article{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}.tf-attention-list article>em{justify-self:start}.tf-attention-list article>.tribal-btn{width:100%!important}.tf90-table-wrap{border-radius:10px}.tf-route-empty{margin:8px 0}.tf-route-empty .tribal-btn{width:100%;justify-self:stretch}}

/* Screenshot-led corrective responsive pass. */
@media(max-width:767px){
 body.tribal-portal-mode .tf-app-content,body.tribal-staff-mode .tribal-content{min-width:0!important;overflow-x:clip!important}
 .tf-app-content *,.tribal-content *{min-width:0;box-sizing:border-box}
 .tf-app-content :is(h1,h2,h3,h4,p,span,strong,small,label,a,button,td,th),.tribal-content :is(h1,h2,h3,h4,p,span,strong,small,label,a,button,td,th){word-break:normal!important;overflow-wrap:break-word!important}
 :is(.tf90-tabs,.tf-tabs,.tf-booking-tabs,.tfbfd-tabs,.tf-membership-section-nav,.tf-engagement-admin>nav,.tf-rewards>nav){display:flex!important;flex-flow:row nowrap!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
 :is(.tf90-tabs,.tf-tabs,.tf-booking-tabs,.tfbfd-tabs,.tf-membership-section-nav,.tf-engagement-admin>nav,.tf-rewards>nav)>*{flex:0 0 auto!important;white-space:nowrap!important;scroll-snap-align:start}
 :is(.tf90-actions,.tf-page-actions,.tfbfd-actions,.tf-client-actions,form.tf-actions){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important}
 :is(.tf90-actions,.tf-page-actions,.tfbfd-actions,.tf-client-actions,form.tf-actions)>:is(a,button,.tribal-btn){display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:44px!important;margin:0!important;text-align:center!important;line-height:1.25!important}
 :is(button,.tribal-btn,.tf-btn,.tfbfd-btn){min-height:44px!important;align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1.25!important}
 :is(.tf-exception-actions,.tf-crm-pagination,.tf90-pagination,.tablenav-pages,.tbc-actions) :is(a,button,.page-numbers){display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:44px!important;min-height:44px!important;padding:8px 11px!important;line-height:1.2!important}
 :is(.tf-exception-actions,.tbc-actions){flex-wrap:wrap!important;gap:8px!important}
 :is(.tf-crm-pagination,.tf90-pagination,.tablenav-pages){display:flex!important;flex-wrap:wrap!important;gap:6px!important}
}
