/* Red's back office: the shell of the staff demo (gf_pilates_demo.html, Staff view), ported as is. A header (wordmark, STAFF tag, who is signed in, Sign Out), a second row of tabs, a light red pill on the current one. Below 769px the tabs fold behind a labelled Menu button. 44px targets, visible labels, AA contrast, no inline style or script. */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:500 700;font-display:swap;src:url(/site/fonts/fraunces.woff2) format('woff2');}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 800;font-display:swap;src:url(/site/fonts/manrope.woff2) format('woff2');}
:root{--ground:#F4F3F1;--card:#fff;--border:#E8E6E3;--border-strong:#D7D4CE;--ink:#292623;--muted:#69645E;--muted-2:#57524D;--grey-tint:#EFEDEA;--red:#C8102E;--red-dark:#A10E28;--red-tint:#FBEAEC;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;--sans:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --shadow-2:0 2px 6px rgba(41,38,35,.05),0 8px 24px rgba(41,38,35,.06);--radius:14px;--bar:64px;
  /* sign-in page names */
  --paper:var(--ground);--white:var(--card);--line:var(--border);--line-strong:var(--border-strong);}
*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{font-family:var(--sans);font-size:15px;line-height:1.5;color:var(--ink);background:var(--ground);-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden;}
h1,h2{font-family:var(--serif);font-weight:600;margin:0;letter-spacing:-.01em;}
h2{margin-bottom:.4em;line-height:1.2;}
h1{font-size:30px;}h2{font-size:1.25rem;}
a{color:inherit;}
button{font-family:inherit;}
:focus-visible{outline:2px solid var(--red);outline-offset:2px;}
/* Script-focused titles and regions (tabindex="-1") announce a new screen; they are not controls, so no ring. Controls and roving rows keep theirs. */
[tabindex="-1"]:not(button):not(a):not(input):not(select):not(textarea):not(tr):focus,[tabindex="-1"]:not(button):not(a):not(input):not(select):not(textarea):not(tr):focus-visible{outline:none;}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:12px 20px;z-index:999;}
.skip-link:focus{left:12px;top:12px;}

/* Buttons: outlined secondary, solid red primary, quiet ghost */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:10px;font-size:14.5px;font-weight:700;border:1px solid var(--border-strong);background:var(--card);color:var(--ink);cursor:pointer;white-space:nowrap;text-decoration:none;}
.btn:hover{background:var(--ground);}
.btn-primary{background:var(--red);border-color:transparent;color:#fff;box-shadow:0 1px 2px rgba(200,16,46,.25),0 6px 16px rgba(200,16,46,.2);}
.btn-primary:hover{background:var(--red-dark);}
.btn-secondary{background:var(--card);color:var(--ink);border-color:var(--border-strong);}
.btn-ghost{background:transparent;border-color:transparent;color:var(--muted-2);}
.btn-ghost:hover{background:var(--ground);color:var(--ink);}
.btn-sm{padding:0 16px;font-size:13px;border-radius:8px;}

/* Page heading: serif title, one line under it */
h1 + .lede{font-size:14px;color:var(--muted);margin:4px 0 24px;}
.lede{color:var(--muted);font-size:14px;}
.panel{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-2);padding:24px;max-width:720px;}
.panel p:last-child{margin-bottom:0;}

/* Header, as the demo has it. One row: wordmark, tabs, who is signed in. The staff menu (ten tabs) and the member menu on a narrow desktop sit on a row of their own. */
.topbar{position:sticky;top:0;z-index:50;height:var(--bar);background:var(--card);border-bottom:1px solid var(--border);}
.topbar-inner{height:100%;max-width:1440px;margin:0 auto;padding:0 32px;display:flex;align-items:center;gap:24px;}
.topbar-brand{display:block;flex:0 0 auto;text-decoration:none;}
.brand-mark{display:block;font-family:var(--serif);font-weight:600;font-size:21px;letter-spacing:-.01em;color:var(--ink);white-space:nowrap;}
.brand-mark .dot{color:var(--red);}
.staff-tag{font-family:var(--sans);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-2);background:var(--grey-tint);border-radius:100px;padding:3px 9px;margin-left:8px;vertical-align:3px;}
.topbar-nav{flex:1 1 auto;min-width:0;}
.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:nowrap;align-items:center;gap:2px;}
.nav-item{display:inline-flex;align-items:center;min-height:44px;padding:0 13px;border-radius:100px;background:transparent;border:none;color:var(--muted);font-size:13.5px;font-weight:600;white-space:nowrap;cursor:pointer;text-decoration:none;}
.nav-item:hover{background:var(--ground);color:var(--ink);}
.nav-item[aria-current="page"]{background:var(--red-tint);color:var(--red-dark);}
.nav-panel-account{display:none;}
.menu-btn{display:none;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:10px;border:1px solid var(--border-strong);background:var(--card);color:var(--ink);font-size:13.5px;font-weight:700;cursor:pointer;flex:0 0 auto;}
.menu-btn svg{width:18px;height:18px;}
.topbar-account{display:flex;align-items:center;gap:12px;flex:0 1 auto;min-width:0;margin-left:auto;}
.avatar{width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:600;font-size:14px;}
.who{min-width:0;}
.who-name{font-size:13.5px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.who-meta{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums;}

/* Staff: grouped menu (Fitness, Sports, Members, Club, Admin) on one row from 1001px; dropdowns open on click */
body.view-staff{--bar:68px;}
@media (min-width:1001px){
  .view-staff .topbar-nav{overflow:visible;}
  .view-staff .nav-item{padding:0 14px;font-size:14px;font-weight:700;color:var(--muted-2);gap:7px;}
  .view-staff .nav-item:hover{color:var(--ink);}
  .view-staff .nav-item[aria-current="page"]{color:var(--red-dark);}
  .view-staff .signout-inline{display:inline-flex;}
}
.nav-group{position:relative;}
.nav-group-btn[aria-expanded="true"]{background:var(--grey-tint);color:var(--ink);}
.nav-group-btn[aria-current="page"]{background:var(--red-tint);color:var(--red-dark);}
.nav-caret{width:12px;height:12px;transition:transform .15s;}
.nav-group-btn[aria-expanded="true"] .nav-caret{transform:rotate(180deg);}
.nav-sub{list-style:none;margin:0;padding:8px;position:absolute;top:calc(100% + 6px);left:0;min-width:240px;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:0 8px 20px rgba(41,38,35,.07),0 24px 48px rgba(41,38,35,.09);z-index:60;}
.nav-sub[hidden]{display:none;}
.nav-sub a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 12px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none;color:var(--ink);white-space:nowrap;}
.nav-sub a:hover{background:var(--ground);}
.nav-sub a[aria-current="page"]{background:var(--red-tint);color:var(--red-dark);font-weight:800;}
.nav-sub .nav-badge{margin-left:0;}
.nav-group-btn .nav-badge{margin-left:0;}
/* Staff folds behind the Menu button at 1000px and below; groups show open in the panel and Sign Out is in it */
@media (max-width:1000px){
  .view-staff .topbar-inner{padding:0 16px;gap:10px;flex-wrap:nowrap;align-content:normal;}
  .view-staff .brand-mark{font-size:19px;}
  .view-staff .menu-btn{display:inline-flex;margin-left:auto;}
  .view-staff .topbar-account{margin-left:0;gap:8px;order:3;}
  .view-staff .menu-btn{order:2;}
  .view-staff .who-meta,.view-staff .signout-inline{display:none;}
  .view-staff .who{display:none;}
  .view-staff .topbar-nav{display:none;position:fixed;top:var(--bar);left:0;right:0;bottom:0;flex:none;z-index:55;overflow-y:auto;background:var(--card);border-top:1px solid var(--border);}
  body.drawer-open{overflow:hidden;}
  body.drawer-open.view-staff .topbar-nav{display:block;}
  .view-staff .nav-list{flex-direction:column;align-items:stretch;gap:0;}
  .view-staff .nav-item{width:100%;justify-content:flex-start;border-radius:0;padding:0 20px;min-height:52px;font-size:15px;border-bottom:1px solid var(--border);}
  .view-staff .nav-group-btn{justify-content:space-between;cursor:default;font-size:12px;letter-spacing:.05em;text-transform:uppercase;font-weight:800;background:var(--ground);color:var(--muted-2);min-height:44px;}
  .view-staff .nav-group-btn:hover,.view-staff .nav-group-btn[aria-expanded="true"]{background:var(--ground);}
  .view-staff .nav-caret{display:none;}
  .view-staff .nav-sub,.view-staff .nav-sub[hidden]{display:block;position:static;box-shadow:none;border:0;border-radius:0;padding:0;min-width:0;}
  .view-staff .nav-sub a{min-height:52px;padding:0 20px 0 32px;font-size:15px;border-radius:0;border-bottom:1px solid var(--border);}
  .view-staff .nav-panel-account{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:var(--ground);border-bottom:1px solid var(--border);}
}
/* Member: eight longer labels, the same second row where one row no longer fits, and the name gives way first */
@media (min-width:769px) and (max-width:1240px){
  body.view-member{--bar:112px;}
  .view-member .topbar-inner{flex-wrap:wrap;align-content:flex-start;gap:0 24px;padding-top:10px;}
  .view-member .topbar-brand{order:1;min-height:44px;display:flex;align-items:center;}
  .view-member .topbar-account{order:2;min-height:44px;}
  .view-member .topbar-nav{order:3;flex:0 0 100%;overflow-x:auto;scrollbar-width:thin;}
}
@media (max-width:1360px) and (min-width:769px){.view-member .topbar-account .who{display:none;}}
@media (min-width:1241px) and (max-width:1400px){.view-member .topbar-account .who{display:none;}}
@media (max-width:1100px) and (min-width:769px){.signout-inline{display:none;}.nav-item{padding:0 10px;}.topbar-nav{overflow-x:auto;scrollbar-width:thin;}}

/* Page body */
.content{max-width:1440px;margin:0 auto;padding:36px 40px 64px;}
.subnav ul{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-wrap:wrap;gap:4px 8px;border-bottom:1px solid var(--border);}
.subnav a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;margin-bottom:-1px;border-bottom:2px solid transparent;color:var(--muted);font-size:13.5px;font-weight:600;text-decoration:none;}
.subnav a:hover{color:var(--ink);}
.subnav a[aria-current="page"]{color:var(--red-dark);border-bottom-color:var(--red);}

/* Phone: wordmark, Menu button and initials stay; the tabs, full account line and Sign Out open in the menu panel */
@media (max-width:768px){
  :root{--bar:64px;}
  .topbar-inner{padding:0 16px;gap:10px;flex-wrap:nowrap;align-content:normal;}
  .brand-mark{font-size:19px;}
  .topbar-account{gap:8px;}
  .menu-btn{display:inline-flex;}
  .who-meta,.signout-inline{display:none;}
  .who-name{max-width:34vw;}
  .topbar-nav{display:none;position:fixed;top:var(--bar);left:0;right:0;bottom:0;flex:none;z-index:55;overflow-y:auto;background:var(--card);border-top:1px solid var(--border);}
  body.drawer-open{overflow:hidden;}
  body.drawer-open .topbar-nav{display:block;}
  .nav-list{flex-direction:column;align-items:stretch;gap:0;}
  .nav-item{width:100%;justify-content:flex-start;border-radius:0;padding:0 20px;min-height:52px;font-size:15px;border-bottom:1px solid var(--border);}
  .nav-panel-account{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:var(--ground);border-bottom:1px solid var(--border);}
  .nav-panel-meta{font-size:12.5px;font-weight:700;color:var(--muted-2);line-height:1.4;}
  .content{padding:24px 16px 64px;}
}

/* Sign-in */
.bare-main{max-width:440px;margin:0 auto;padding:40px 20px;}
.brand-line{font-family:var(--serif);font-weight:600;font-size:21px;margin:0 0 24px;}
.brand-line span{font-family:var(--sans);font-weight:400;font-size:.9rem;color:var(--muted);}
.signin form{display:grid;gap:8px;}
.signin label{font-weight:700;}
.signin input:not([type=checkbox]){min-height:44px;padding:8px 12px;font:inherit;font-size:16px;border:1px solid var(--muted);border-radius:3px;background:var(--white);}
.signin .check{display:flex;align-items:center;gap:10px;min-height:44px;font-weight:400;}
.signin .check input{width:24px;height:24px;}
.signin .btn{margin-top:8px;}
.status{min-height:1.5em;color:var(--red-dark);font-weight:700;}
.key span{display:inline-block;padding:10px 14px;background:var(--white);border:1px solid var(--line);font-family:ui-monospace,Menlo,monospace;letter-spacing:.1em;overflow-wrap:anywhere;}
.qr{display:inline-block;padding:8px;background:#fff;border:1px solid var(--line);}
.qr[hidden]{display:none;}
.qr canvas{display:block;max-width:100%;height:auto;}
.codes{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;font-family:ui-monospace,Menlo,monospace;}
.codes li{padding:8px 12px;background:var(--white);border:1px solid var(--line);}
[hidden]{display:none !important;}
.bare-main h1{margin-bottom:12px;}

/* Hours and notices, ported from the locked demo (results_demo.html, staff "Hours & Notices"): the same cards, chips, fields and option rows, in the staff shell's tokens. */
:root{--green:#1E6B3A;--green-tint:#EAF6EC;--indigo:#35408C;--indigo-tint:#EEF1FB;--grey-t:#67625E;}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px;flex-wrap:wrap;}
.page-head h1{font-size:30px;letter-spacing:-.01em;}
.page-sub{font-size:14px;color:var(--muted);margin:4px 0 0;}
.page-sub a{color:var(--red-dark);font-weight:700;}
.hn-flash{background:var(--green-tint);color:var(--green);border-radius:12px;padding:12px 16px;font-weight:700;font-size:14px;margin:0 0 16px;}
.hn-flash:empty{display:none;}
.chip{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;letter-spacing:.01em;padding:4px 9px;border-radius:100px;line-height:1.3;white-space:nowrap;}
.chip-green{background:var(--green-tint);color:var(--green);}
.chip-indigo{background:var(--indigo-tint);color:var(--indigo);}
.chip-red{background:var(--red-tint);color:var(--red-dark);}
.chip-grey{background:var(--grey-tint);color:var(--grey-t);}
.chip-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 6px;}
.hn-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;}
.hn-forms{min-width:0;}
.hn-sec{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-2);margin-bottom:14px;}
.hn-sec > summary{list-style:none;cursor:pointer;min-height:60px;padding:8px 20px;display:flex;align-items:center;gap:12px;font-family:var(--serif);font-size:20px;font-weight:600;flex-wrap:wrap;}
.hn-sec > summary::-webkit-details-marker{display:none;}
.hn-sec > summary::after{content:'';width:8px;height:8px;border-right:2px solid var(--muted-2);border-bottom:2px solid var(--muted-2);transform:rotate(45deg);margin:-4px 2px 0 auto;}
.hn-sec[open] > summary::after{transform:rotate(-135deg);margin-top:4px;}
.hn-sec > summary .chip{font-family:var(--sans);}
.hn-sec-body{padding:0 20px 22px;display:flex;flex-direction:column;gap:18px;}
.hn-sec-body form{display:flex;flex-direction:column;gap:16px;border-top:1px solid var(--border);padding-top:18px;}
.hn-sec-body .sec-sub{margin:0;font-size:13px;color:var(--muted);}
.hn-form-h{font-size:15px;font-weight:800;margin:0;}
.hn-none{font-size:14px;color:var(--muted);margin:0;}
.hn-current{background:var(--ground);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:8px;}
.hn-current:focus{outline:none;}
.hn-cur-top{display:flex;gap:8px;flex-wrap:wrap;}
.hn-msg{font-size:16px;font-weight:700;line-height:1.4;overflow-wrap:anywhere;margin:0;}
.hn-when{font-size:12.5px;color:var(--muted-2);margin:0;}
.hn-cur-act{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px;}
.hn-cur-act form{display:contents;}
.hn-cur-act .btn{flex:1 1 140px;}
.hn-list{display:flex;flex-direction:column;list-style:none;margin:0;padding:0;}
.hn-item{display:flex;gap:10px 14px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:10px 0;border-top:1px solid var(--border);font-size:14px;line-height:1.45;}
.hn-item:first-child{border-top:none;}
.hn-item form{display:block;border:0;padding:0;}
.hn-item-actions{display:flex;gap:8px;flex-wrap:wrap;}
.hn-item-actions form{display:block;border:0;padding:0;}
.hn-presets{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.hn-presets-l{font-size:12px;font-weight:700;color:var(--muted-2);flex:1 1 100%;letter-spacing:.02em;}
.hn-submit{align-self:flex-start;}
.small{font-size:12.5px;}
.muted{color:var(--muted);}
.tnum{font-variant-numeric:tabular-nums;}
.field{display:flex;flex-direction:column;gap:6px;}
.field label{font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--muted-2);}
/* Inputs and textareas take their look from /shared/ui-controls.css (the one input standard). A select here is only the no-script fallback; with script it is the shared dropdown. */
.field select{min-height:44px;border-radius:9px;border:1px solid #8B857E;background:var(--card);padding:0 14px;font-size:14.5px;color:var(--ink);font-family:var(--sans);}
.field textarea{min-height:92px;resize:vertical;}
.field input[type="date"],.field input[type="time"]{min-width:150px;}
.field select:focus-visible{outline:2px solid var(--red);outline-offset:2px;border-color:var(--red);}
.field select[aria-invalid="true"]{border-color:var(--red);}
.field-hint{font-size:11.5px;color:var(--muted);}
.field-row{display:flex;flex-wrap:wrap;gap:14px;}
.field-err{display:flex;gap:6px;align-items:flex-start;font-size:12.5px;font-weight:700;color:var(--red-dark);margin:0;}
.field-err[hidden]{display:none;}
.req{color:var(--red-dark);}
.scope{display:flex;flex-direction:column;gap:8px;border:none;padding:0;margin:0;min-width:0;}
.scope legend{font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--muted-2);margin-bottom:6px;padding:0;}
.scope-opt{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--border-strong);border-radius:10px;cursor:pointer;min-height:44px;}
.scope-opt input{width:18px;height:18px;accent-color:var(--ink);margin:2px 0 0;flex:0 0 18px;}
.scope-opt b{display:block;font-size:14px;color:var(--ink);}
.scope-opt span{font-size:12.5px;color:var(--muted);}
.scope-opt:has(input:checked){border-color:var(--ink);background:var(--ground);}
.chk-opt{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--border-strong);border-radius:10px;cursor:pointer;min-height:56px;}
.chk-opt input{width:22px;height:22px;accent-color:var(--ink);margin:1px 0 0;flex:0 0 22px;}
.chk-opt b{display:block;font-size:14px;color:var(--ink);}
.chk-opt span span{font-size:12.5px;color:var(--muted);}
.chk-opt:has(input:checked){border-color:var(--ink);background:var(--ground);}
.chip-toggle{min-height:44px;padding:0 14px;border-radius:100px;border:1px solid var(--border-strong);background:var(--card);color:var(--muted-2);font-size:13px;font-weight:700;cursor:pointer;}
.chip-toggle:hover{background:var(--ground);}
.select-wrap{position:relative;}
.select-wrap select{appearance:none;-webkit-appearance:none;width:100%;min-height:44px;padding:0 36px 0 14px;border-radius:9px;border:1px solid #8B857E;background:var(--card);color:var(--ink);font-size:14.5px;cursor:pointer;}
.select-wrap::after{content:'';position:absolute;right:13px;top:50%;margin-top:-3px;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);pointer-events:none;}
.hr-area{border-top:1px solid var(--border);}
.hr-area:first-child{border-top:none;}
.hr-area > summary{list-style:none;cursor:pointer;min-height:52px;display:flex;align-items:center;font-weight:800;font-size:15px;}
.hr-area > summary::-webkit-details-marker{display:none;}
.hr-area > summary::after{content:'';width:7px;height:7px;border-right:2px solid var(--muted-2);border-bottom:2px solid var(--muted-2);transform:rotate(45deg);margin:-3px 4px 0 auto;}
.hr-area[open] > summary::after{transform:rotate(-135deg);margin-top:3px;}
.hr-body{padding-bottom:12px;}
.hr-rows{list-style:none;margin:0;padding:0;}
.hr-rows li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px 14px;align-items:center;padding:6px 0;border-top:1px solid var(--border);}
.hr-rows li:first-child{border-top:none;}
.hr-rows li form{grid-column:1 / -1;}
.hr-days{font-size:14px;font-weight:700;min-width:0;}
.hr-time{font-size:14px;color:var(--muted-2);font-weight:600;text-align:right;}
.hr-edit{display:flex;flex-direction:column;gap:14px;background:var(--ground);border-radius:12px;padding:16px 18px;margin:6px 0 8px;}
.hr-edit .btn-row{display:flex;gap:10px;flex-wrap:wrap;}
@media (max-width:520px){
  .hr-rows li{grid-template-columns:minmax(0,1fr) auto;}
  .hr-time{grid-column:1;grid-row:2;text-align:left;}
  .hr-rows li .btn{grid-column:2;grid-row:1 / span 2;}
}
@media (max-width:600px){.hn-submit{align-self:stretch;}.hn-sec-body{padding:0 16px 20px;}.hn-sec > summary{padding:8px 16px;}.page-head h1{font-size:26px;}.field select{font-size:16px;}.field-row > .field{flex:1 1 100%;}}

/* Hours and notices: quick actions, closures and the live preview (the demo's, ported). */
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400 700;font-display:swap;src:url(/site/fonts/source-sans-3.woff2) format('woff2');}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-2);}
.card-pad{padding:24px;}
.card-title{font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;}
@media (max-width:700px){.card-pad{padding:18px;}}
.hn-quick-btns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px;}
.hn-qb{min-height:56px;white-space:normal;line-height:1.25;}
.hn-qb svg{width:20px;height:20px;flex:0 0 20px;}
@media (max-width:700px){.hn-quick-btns{grid-template-columns:1fr;}}
@media (min-width:1100px){
  .hn-grid{grid-template-columns:minmax(0,1fr) 460px;align-items:start;gap:20px 24px;}
  .hn-quick{grid-column:1;grid-row:1;}
  .hn-forms{grid-column:1;grid-row:2;}
  .hn-preview{grid-column:2;grid-row:1 / span 2;position:sticky;top:calc(var(--bar) + 16px);}
}
.hn-sec{scroll-margin-top:calc(var(--bar) + 12px);}
.hn-say{background:var(--ground);border-radius:10px;padding:12px 14px;font-size:14px;line-height:1.5;font-weight:600;margin:0;}
.hn-say-l{display:block;font-size:11.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-2);margin-bottom:2px;}
.hn-preview .card-title{flex-wrap:wrap;margin-bottom:6px;}
.hn-preview .sec-sub{margin:0 0 4px;font-size:13px;color:var(--muted);}
.pv-tools{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;margin:6px 0 14px;}
.pv-frame{border:1px solid var(--border-strong);border-radius:10px;overflow:hidden;background:#fff;margin:0 auto;width:100%;}
.pv-frame.is-phone{max-width:375px;}
.pv-for{font-size:12.5px;color:var(--muted);margin:10px 0 0;}
.seg{display:inline-flex;background:var(--card);outline:1px solid var(--border-strong);outline-offset:-1px;border-radius:100px;overflow:hidden;}
.seg button{min-height:44px;padding:0 14px;border:none;background:transparent;border-radius:0;font:inherit;font-size:13px;font-weight:700;color:var(--muted-2);cursor:pointer;}
.seg button + button{border-left:1px solid var(--border);}
.seg button[aria-pressed="true"]{background:var(--ink);color:#fff;}
@media (max-width:700px){.pv-width{display:none;}}
/* The website's own strip, in the website's own look, inside the preview only. */
.pv-web{--light:#F2EDE5;--hairline:#D8D0C3;--muted-w:#55504A;--serif:'Fraunces',Georgia,'Times New Roman',serif;font-family:'Source Sans 3',-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:16px;color:#1A1A1A;line-height:1.55;text-align:left;}
.pv-web .wrap{max-width:1240px;margin:0 auto;padding:0 24px;}
.pv-web p{margin:0;}
.pv-web .today-strip{background:#fff;border-bottom:1px solid var(--hairline);}
.pv-web .today-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0 20px;min-height:48px;}
.pv-web .today-hours{padding:8px 0;font-size:1.02rem;line-height:1.35;}
.pv-web .today-hours .th-lead{font-family:var(--serif);font-weight:600;margin-right:6px;}
.pv-web .today-hours .th-time{font-variant-numeric:tabular-nums;}
.pv-web .text-link{display:inline-flex;align-items:center;min-height:44px;color:#1A1A1A;font-weight:700;font-size:.95rem;text-decoration:underline;text-decoration-color:var(--red);text-decoration-thickness:2px;text-underline-offset:4px;}
.pv-web .notice-bar{background:#FCE8E5;border-top:1px solid #F0C4BE;border-bottom:3px solid var(--red);}
.pv-web .notice-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding-top:10px;padding-bottom:10px;}
.pv-web .notice-text{flex:1 1 280px;display:flex;align-items:center;gap:12px;min-width:0;}
.pv-web .notice-text svg{display:block;width:26px;height:26px;flex:none;color:var(--red);border-radius:50%;}
.pv-web .notice-text p{font-size:1.02rem;line-height:1.4;}
.pv-web .notice-text strong{color:var(--red-dark);}
.pv-web .notice-close{font:inherit;font-weight:700;font-size:.92rem;color:#1A1A1A;background:#fff;border:1px solid #6B655E;border-radius:4px;min-height:44px;padding:6px 16px;display:inline-flex;align-items:center;}
.pv-web .notice-bar.is-info{background:var(--light);border-top:1px solid var(--hairline);border-bottom:3px solid #1A1A1A;}
.pv-web .notice-bar.is-info .notice-text svg{color:#1A1A1A;}
.pv-web .notice-bar.is-info .notice-text strong{color:#1A1A1A;}
@media (max-width:600px){.pv-web .wrap{padding:0 18px;}.pv-web .today-hours{padding:12px 0;}}
.pv-frame.is-phone .wrap{padding:0 18px;}

/* The count on a top-bar tab that needs someone (Stuck Payments). Red on white, with the number in the label read aloud. */
.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;border-radius:100px;background:var(--red-dark);color:#fff;font-size:12px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;}
