/* Shared subpage rhythm. Canonical specification: DESIGN.md */
:root{--page-gutter:5.5%;--subpage-title-size:26px;--subpage-join-space:16px;--section-space:44px;--content-gap:16px}
.page-heading{padding:12px var(--page-gutter) var(--subpage-join-space);background:transparent;border:0;text-align:center}
.page-heading h1{font-size:var(--subpage-title-size);line-height:1.45;margin:6px 0 0}
.page-heading .eyebrow{font-size:9px;margin:4px 0 0}
.page-heading .breadcrumbs{margin:0 0 12px}
main:not([data-page="index.html"])>.section{padding-top:var(--section-space);padding-bottom:var(--section-space)}
main:not([data-page="index.html"])>.page-heading+section{padding-top:var(--subpage-join-space);padding-inline:var(--page-gutter);border-top:0}
main:not([data-page="index.html"])>.page-heading+.staff-section,main:not([data-page="index.html"])>.page-heading+.ranking-section{background:transparent}
main:not([data-page="index.html"])>.page-heading+section>.section-heading:first-child{margin-top:0}
main:not([data-page="index.html"])>.page-heading+section>.back-link:first-child{margin-top:0}
main:not([data-page="index.html"])>.page-heading+.access-map-page .shop-map{margin-top:0}
.schedule-tools{margin-top:var(--content-gap);margin-bottom:12px}
@media(max-width:600px){:root{--page-gutter:5%;--subpage-title-size:22px;--subpage-join-space:14px;--section-space:32px;--content-gap:14px}.page-heading{padding-top:10px}.page-heading .eyebrow{font-size:8px}.page-heading .breadcrumbs{margin-bottom:12px}}

.map-store-name{font:22px/1.5 var(--serif);margin:0 0 16px;letter-spacing:.06em}.event-item>h2{font-size:24px;line-height:1.6;margin:0}.home-review{max-width:100%}.home-review>p{overflow-wrap:anywhere}@media(max-width:600px){.map-store-name{font-size:19px;margin-bottom:12px}.event-item>h2{font-size:20px}.home-review>div{gap:8px;flex-wrap:wrap}}

.banner-section[hidden]{display:none}.banner-controls{justify-content:flex-end;margin-bottom:8px}.banner-slide{aspect-ratio:2/1;background:transparent}.banner-slide img{object-fit:contain}.banner-controls button{font-size:14px}@media(max-width:600px){.banner-slide{aspect-ratio:2/1}}

/* Photo-led, compact editorial presentation. */
.banner-section{padding-top:10px;padding-bottom:22px;position:relative;border-bottom:0}.banner-controls{position:absolute;right:6.5%;bottom:34px;z-index:2;margin:0}.banner-controls>div{display:flex;gap:4px}.banner-controls button{margin:0;background:#f5f2ecee;border-color:#b8ad9f;width:30px;height:28px}.banner-track{gap:12px;padding-bottom:0}.banner-slide{flex-basis:calc(50% - 6px)}.section-heading .eyebrow,.home-access .eyebrow,.page-heading>.eyebrow,.art-caption,.art-number{display:none}.section-heading h2,.home-access h2{font-size:26px;letter-spacing:.02em}.staff-name{letter-spacing:.02em}.ranking-section{background:transparent;border:0}.rank-number{font-family:var(--sans);font-size:22px;border:0;margin:0 0 8px;padding:0}.rank-number small{font-size:9px}.rank-first .rank-number{font-size:36px;font-weight:600;color:#795a31;line-height:1.05}.rank-first .portrait{outline:2px solid #9a7c50;outline-offset:-2px}.rank-first .staff-name{font-size:25px}.ranking-grid{grid-template-columns:1.18fr repeat(4,minmax(0,1fr));align-items:start}.home-review{display:grid;grid-template-columns:96px minmax(0,1fr);gap:20px;align-items:start;padding:20px 0}.review-staff-photo{display:block}.review-staff-photo .portrait{aspect-ratio:3/4}.review-staff-photo>span{display:block;font-size:12px;margin-top:5px}.home-review>.review-copy{display:block;margin:0;color:var(--ink);font-size:13px}.review-copy>p{line-height:1.9;white-space:pre-line;overflow-wrap:anywhere}.review-meta{display:flex;gap:14px;margin-top:10px;color:var(--muted);font-size:10px}.access-aside{background:none;border:0;border-left:1px solid var(--line);min-height:120px;padding:10px 25px}.access-aside>span{font:18px var(--sans);letter-spacing:0}.date-tab.is-today small{font-weight:700;color:var(--wine)}.date-tab.is-today{box-shadow:inset 0 3px var(--wine)}.date-tab.is-today[aria-selected=true] small{color:white}.date-tab[aria-selected=true]{background:#ece5db;color:var(--ink);box-shadow:inset 0 -3px #7b6956}.date-tab.is-today[aria-selected=true]{background:var(--wine);color:#fff;box-shadow:none}.date-tab.is-today strong{font-weight:600}@media(min-width:601px) and (max-width:1000px){.ranking-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.banner-section{padding-top:8px;padding-bottom:18px}.banner-slide{flex-basis:88%}.banner-controls{right:7%;bottom:28px}.section-heading h2,.home-access h2{font-size:23px}.ranking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.rank-first .rank-number{font-size:34px}.rank-first .staff-name{font-size:23px}.home-review{grid-template-columns:76px minmax(0,1fr);gap:14px;padding:17px 0}.home-review>.review-copy{font-size:12px}.review-meta{gap:9px;flex-wrap:wrap}.access-aside{padding:0;border:0;min-height:0}}

.banner-slide{flex-basis:62%}.ranking-grid .rank-card.rank-first .rank-number{font-size:36px;font-weight:600;color:#795a31}@media(max-width:600px){.banner-slide{flex-basis:88%}.ranking-grid .rank-card.rank-first .rank-number{font-size:34px}}

/* Podium accents: gold first, quiet silver and bronze. */
.rank-image{display:block;position:relative}.rank-sparkles{position:absolute;inset:0;pointer-events:none;color:#d8ad49}.rank-sparkles i{position:absolute;width:22px;height:22px;background:currentColor;clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%);filter:drop-shadow(0 0 5px #fbe7a5);animation:rank-twinkle 3s ease-in-out infinite}.rank-sparkles i:nth-child(1){top:8%;right:8%;width:29px;height:29px}.rank-sparkles i:nth-child(2){top:19%;right:20%;width:13px;height:13px;animation-delay:1s}.rank-sparkles i:nth-child(3){bottom:13%;left:6%;width:22px;height:22px;animation-delay:.5s}.rank-sparkles i:nth-child(4){bottom:8%;left:20%;width:10px;height:10px;animation-delay:1.5s}.rank-place-2 .rank-sparkles{color:#d3d9df;opacity:.8}.rank-place-3 .rank-sparkles{color:#bb9977;opacity:.7}.rank-place-2 .rank-sparkles i,.rank-place-3 .rank-sparkles i{width:17px;height:17px;animation-duration:4s}.rank-place-2 .rank-sparkles i:nth-child(2){width:9px;height:9px}.rank-place-2 .rank-sparkles i:nth-child(n+3),.rank-place-3 .rank-sparkles i:nth-child(n+2){display:none}.rank-place-2 .portrait{outline:1px solid #aaaeb1;outline-offset:-1px}.rank-place-3 .portrait{outline:1px solid #ad8c6d;outline-offset:-1px}@keyframes rank-twinkle{0%,100%{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}@media(prefers-reduced-motion:reduce){.rank-sparkles i{animation:none;opacity:.8}}.faq-section{max-width:1000px;margin-inline:auto}.faq-item summary{gap:20px;align-items:center;padding:20px 0;font-size:14px}.faq-item summary .faq-question{transform:none;line-height:1.7}.faq-mark{flex:0 0 20px;text-align:center}.faq-item>p{padding:0 32px 20px 0;font-size:13px;line-height:1.9}.faq-item summary:focus-visible{outline:2px solid var(--wine);outline-offset:3px}.header nav{gap:18px;font-size:10px}@media(max-width:600px){.faq-item summary{padding:17px 0;font-size:13px}.faq-item>p{font-size:12px}.header nav{gap:21px;font-size:10px}.rank-place-1 .rank-sparkles i:first-child{width:25px;height:25px}}

.map-store-name{text-align:center}
/* White, black and gold palette. */
:root{--paper:#fff;--ink:#151515;--muted:#737373;--line:#dedbd3;--wine:#9b7c38;--green:#797044;--gold:#b59652}
body,.header,.staff-section,.ranking-section,.schedule-section{background:#fff}
.header{border-bottom-color:#d9d0bc}.seal{color:#9b7c38;border-color:#9b7c38}
.hero{background:#111;color:#fff}.hero-copy{background:#111}.hero-art{filter:grayscale(1)}.hero-hours{color:#d7c28d}.hero-bottom{color:#c8ae70}
#contact,footer{background:#111;color:#fff;border-color:#39352c}footer .footer-nav,footer .copyright{color:#bbb}footer a:hover{color:#d7bc7a}
.button,.date-tab.is-today[aria-selected=true]{background:#171717;color:#fff;border-color:#b59652}.button.light{background:transparent;color:#fff;border-color:#b59652}
.date-tab.is-today{box-shadow:inset 0 3px #b59652}.date-tab[aria-selected=true]{background:#f2eee4;box-shadow:inset 0 -3px #b59652}
.rank-first .rank-number,.ranking-grid .rank-card.rank-first .rank-number{color:#9b7c38}.banner-controls button{background:#fffffff2;border-color:#b59652}.access-aside{border-color:#b59652}
.age-pending{overflow:hidden}.age-pending::before{content:"";position:fixed;inset:0;background:#0e0e0e;z-index:9999;pointer-events:none}
.age-gate{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:#0e0e0e;color:#fff;padding:24px}
.age-panel{text-align:center;width:min(100%,420px);padding:50px 24px;border-top:1px solid #b59652;border-bottom:1px solid #b59652}
.age-brand{font:28px var(--serif);letter-spacing:.2em;color:#c5a764;margin-bottom:32px}.age-panel h2{font:23px/1.6 var(--serif);margin-bottom:30px}
.age-actions{display:flex;gap:14px;justify-content:center}.age-actions>*{width:130px;padding:13px 20px;border:1px solid #b59652;background:transparent;color:#eee;font:13px var(--sans);letter-spacing:.12em;text-align:center}.age-actions button{background:#b59652;color:#0e0e0e}.age-actions>*:hover{background:#d1b778;color:#111}.age-actions>*:focus-visible{outline:2px solid #fff;outline-offset:5px}

/* Dark foundation, restrained gold accents. */
:root{--paper:#101010;--ink:#f3f1eb;--muted:#aaa69d;--line:#38352f;--wine:#c7a964;--gold:#c7a964}
body,.header,.staff-section,.ranking-section,.schedule-section,.today-section,.home-access,.reviews-section{background:#101010;color:var(--ink)}
.header{background:#0b0b0bf5;border-color:#353025}.seal{color:#c7a964;border-color:#c7a964}.page-heading .breadcrumbs{color:#aaa69d}
.date-tab{background:#191919;color:#e9e6df;border-color:#38352f}.date-tab[aria-selected=true]{background:#29251c;color:#fff}.date-tab.is-today[aria-selected=true]{background:#c7a964;color:#101010}.date-tab.is-today[aria-selected=true] small{color:#101010}.date-tab.is-today small{color:#d8bc7f}
.shift-time{background:#24221c;color:#e5c98c}.shift-label{color:#bcb8ad}.shift-label.full{color:#a8a49c}.staff-meta,.profile-link{color:#aaa69d}
.price-table thead th,.option-box h3,.shift-day>span:first-child{background:#22211e;color:#e3c888}.price-table td,.price-table tbody th{background:transparent;color:#f3f1eb}.option-box{border-color:#494134}.option-box h3{border-color:#494134}.option-box{background:#161616}
.banner-controls button{background:#171717ee;color:#e5d1a4}.rank-first .rank-number,.ranking-grid .rank-card.rank-first .rank-number{color:#d1b36c}.access-aside{color:#c7a964}.chip{background:#24221e;color:#e2d8c3}

.mobile-bar{background:#c7a964}.mobile-bar a{color:#111}.button{background:#191919;color:#fff}.hero.has-video .hero-copy{background:transparent}
.daily-card .shift-time{background:#24221c;color:#e5c98c}

/* Individual option tiles wrap within each price group. */
.option-groups{display:flex;flex-direction:column;gap:24px}.option-box{border:0;background:transparent}.option-box h3{background:transparent;border:0;padding:0 0 12px;font-size:21px;color:#dec489}.option-box ul{display:flex;flex-wrap:wrap;gap:10px;padding:0}.option-box li,.option-box li+li{display:flex;align-items:center;justify-content:center;flex:0 1 auto;min-height:48px;max-width:100%;padding:12px 20px;border:1px solid #665638;background:#191815;font-size:14px;line-height:1.65;overflow-wrap:anywhere;text-align:center}
@media(max-width:600px){
 body{font-size:14px;line-height:1.85}.header{height:auto;min-height:108px;padding-top:14px;padding-bottom:0}.header nav{gap:14px;font-size:12px;padding-block:4px}.header nav a{display:flex;align-items:center;min-height:44px;white-space:nowrap}.brand-sub{font-size:9px}.brand-main{font-size:25px}
 .button,.line-link{min-height:44px;display:inline-flex;align-items:center;justify-content:space-between;gap:12px}.banner-controls button{width:44px;height:44px}.banner-controls{bottom:24px}.banner-controls>div{gap:6px}
 .staff-meta,.rank-note{font-size:12px;line-height:1.7}.daily-card .shift-time{font-size:14px;min-height:42px;display:flex;align-items:center;justify-content:center;padding:8px 3px}.shift-label{font-size:12px}.profile-link{font-size:12px;min-height:44px;display:flex;align-items:center;justify-content:space-between}
 .date-tab{min-height:76px;padding:9px 3px}.date-tab small{font-size:11px}.schedule-tools button,#weekly-toggle{min-height:48px}.price-table{font-size:14px}.price-table tbody th{font-size:14px;line-height:1.6}.price-table th,.price-table td{padding:14px 8px}.option-section{margin-top:28px}.option-section>h2{font-size:23px;margin-bottom:18px}.option-box h3{font-size:20px}.option-box li,.option-box li+li{flex-basis:calc(50% - 5px);padding:12px 9px;font-size:13px}.option-groups{gap:22px}
 .home-review>.review-copy,.faq-item summary{font-size:14px}.faq-item>p{font-size:13px}.faq-item summary{min-height:54px}.footer-nav a{min-height:44px;display:flex;align-items:center}.mobile-bar a{min-height:58px;font-size:15px}.review-meta{font-size:11px}
}
@media(max-width:350px){.option-box li,.option-box li+li{flex-basis:100%}.price-table th,.price-table td{padding-inline:5px}}
@media(max-width:600px){.header nav>a:nth-child(3){display:flex}.header nav{border-top-color:#38352f}.mobile-bar a:last-child{background:#c7a964;color:#111}}

/* Price groups and dark calendar states. */
.option-box{border:1px solid #665638;padding:20px;background:#141413}.option-box h3{padding:0 0 14px}.option-box li,.option-box li+li{background:#1b1a17}
.date-tab:hover,.date-tab:focus-visible{background:#302b20;color:#f5e5be}.date-tab:hover small{color:#e4c987}.date-tab.is-today[aria-selected=true]:hover{background:#d4b979;color:#111}.date-tab.is-today[aria-selected=true]:hover small{color:#111}
#week-table th{background:#25221b;color:#efdaad}#week-table td{background:#131313;color:#eee}#week-table td:first-child{background:#1a1916;color:#f5e5be}#week-table th:first-child{background:#25221b}.table-full{color:#c6b48a}
#home-reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;align-items:start}#home-reviews .empty{grid-column:1/-1}
.profile-week-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:28px}.profile-week-heading h3{margin-top:0}.scroll-hint{font-size:11px;color:#d2b777;white-space:nowrap}.mini-week{scrollbar-width:thin;scrollbar-color:#b59652 #25221b}.mini-week:focus-visible{outline:2px solid #c7a964;outline-offset:3px}
@media(max-width:600px){.option-box{padding:16px 12px}#home-reviews{grid-template-columns:1fr}.profile-week-heading{align-items:center;gap:8px}.scroll-hint{font-size:10px}}
.date-tab:not([aria-selected=true]):hover{background:#302b20;color:#f5e5be}.date-tab:not([aria-selected=true]):hover small{color:#e4c987}

.daily-photo{display:block;position:relative}.photo-full{position:absolute;top:12px;left:12px;z-index:1;padding:5px 14px;background:#111e;color:#e9cf91;border:1px solid #b59652;font:14px/1.5 var(--sans);letter-spacing:.08em;pointer-events:none}
@media(max-width:600px){.photo-full{top:8px;left:8px;padding:4px 10px;font-size:12px}}
.photo-full,.table-full{color:#ff7373}.daily-card .shift-time{display:flex;align-items:baseline;justify-content:center;gap:7px;font-size:19px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.daily-card .shift-separator{font-size:11px;font-weight:400;opacity:.7}.shift-start,.shift-end{white-space:nowrap}@media(max-width:600px){.daily-card .shift-time{font-size:16px;gap:5px}.daily-card .shift-separator{font-size:10px}}

/* Shared staff photo status: daily cards, directory, ranking and profile. */
.staff-photo-status{display:block;position:relative}.staff-photo-status.is-full .portrait{filter:grayscale(.65) brightness(.85)}.staff-photo-status.is-full::after{content:"";position:absolute;inset:0;background:#bcbcbc26;pointer-events:none}.staff-photo-status .photo-full{top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;white-space:nowrap;background:#101010d9;color:#ff7373;padding:7px 15px;font-size:18px;font-weight:600}.photo-active{position:absolute;right:8px;bottom:8px;padding:4px 8px;background:#111e;color:#e9cf91;border:1px solid #a88b4d;font:12px/1.5 var(--sans);z-index:2;white-space:nowrap}@media(max-width:600px){.staff-photo-status .photo-full{font-size:16px;padding:6px 12px}.photo-active{right:6px;bottom:6px;font-size:10px;padding:4px 6px}}

/* Compact header and profile gallery. */
.header{height:72px}.header .brand-logo{max-height:48px}.profile-details .review p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;overflow-wrap:anywhere;white-space:pre-line}
.photo-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px}.photo-thumbs button{width:100%;height:auto;aspect-ratio:3/4;min-width:0;min-height:44px;padding:0;border:1px solid #514a3a;background:#171717;cursor:pointer}.photo-thumbs button img{width:100%;height:100%;aspect-ratio:3/4;object-fit:cover;opacity:.7}.photo-thumbs button[aria-pressed=true]{border:2px solid #c7a964}.photo-thumbs button[aria-pressed=true] img,.photo-thumbs button:hover img{opacity:1}
@media(max-width:600px){.header{height:auto;min-height:86px;padding-top:8px;padding-bottom:0}.header nav{padding-block:0;margin-top:4px;min-height:44px}.header .brand-logo{max-height:36px}.photo-thumbs{gap:6px}.photo-thumbs button{min-height:44px}}

#main-photo{touch-action:pan-y pinch-zoom}#main-photo img{-webkit-user-drag:none;user-select:none}

/* Keep reading widths bounded; reserve a separate rail for desktop banners. */
:root{--site-content-max:1200px;--site-layout-max:1440px}
.site-layout{width:100%;max-width:var(--site-content-max);margin-inline:auto}
.site-layout>main{min-width:0;width:100%}
.site-layout .section{padding-inline:var(--page-gutter)}
.header,body>footer{width:100%;max-width:var(--site-layout-max);margin-inline:auto}
.side-banner[hidden]{display:none}
.side-banner{width:min(240px,90%);margin:24px auto 32px;scroll-margin-top:104px}
.side-banner a{display:block;line-height:0;outline-offset:4px}
.side-banner img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain}
@media(min-width:1100px){
 .site-layout.has-side-banner{max-width:var(--site-layout-max);display:grid;grid-template-columns:minmax(0,1200px) 160px;justify-content:center;gap:24px;padding-inline:24px}
 .side-banner{position:sticky;top:96px;align-self:start;width:160px;margin:24px 0;max-height:calc(100dvh - 120px)}
 .side-banner img{max-height:min(480px,calc(100dvh - 120px))}
}

.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.hero-actions .button{min-width:220px;min-height:48px}.hero-contact{background:#c7a964;color:#111;border-color:#c7a964}
.profile-name{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-name h2{min-width:0;overflow-wrap:anywhere}.staff-x{display:inline-flex;flex:0 0 44px;width:44px;height:44px;align-items:center;justify-content:center;color:#d9c084}.staff-x svg{width:21px;height:21px}.staff-x:hover{color:#fff}
.menu-toggle{display:none}.mobile-menu{padding:24px;position:fixed;inset:0 0 0 auto;margin:0;width:min(360px,88vw);height:100dvh;max-height:100dvh;max-width:none;border:0;border-left:1px solid #665638;background:#111;color:#f3f1eb;z-index:100;overflow-y:auto}.mobile-menu::backdrop{background:#0009}.mobile-menu[open]{animation:menu-enter .24s ease-out}.menu-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;color:#c7a964}.menu-close{width:44px;height:44px;border:1px solid #665638;background:transparent;color:#eee;font-size:28px}.mobile-menu nav{display:flex;flex-direction:column;gap:0;align-items:stretch;font-size:15px}.mobile-menu nav a{display:flex;align-items:center;min-height:52px;border-bottom:1px solid #38352f}.menu-open{overflow:hidden}
@keyframes menu-enter{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(max-width:900px){.header{height:64px;min-height:64px;padding:0 5%;display:flex;align-items:center;align-content:center;flex-wrap:nowrap}.header>nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;border:0;background:transparent;color:#d9c084}.menu-toggle span{display:block;width:23px;height:1px;background:currentColor}.hero-actions .button{min-width:210px}.header .brand-main{font-size:25px}}
@media(prefers-reduced-motion:reduce){.mobile-menu[open]{animation:none}}

/* Full-bleed backgrounds with bounded inner content. */
.hero-actions{gap:8px;margin-top:26px}.hero-actions .button{margin-top:0}
.header,body>footer{max-width:none;padding-inline:max(5.5%,calc((100% - 1280px)/2))}
.site-layout:has(>main[data-page="index.html"]){max-width:none}
main[data-page="index.html"]>:not(.hero){max-width:var(--site-content-max);margin-inline:auto}
.hero.has-video .hero-copy{max-width:var(--site-content-max);margin-inline:auto;padding-inline:clamp(20px,5.5vw,66px)}
@media(max-width:900px){.header{padding-inline:5%}}

main[data-page="index.html"]>.section,main[data-page="index.html"]>.banner-section{padding-inline:clamp(20px,5.5vw,66px)}

.profile-photo-wrap{position:relative}.profile-photo-wrap>.staff-x{position:absolute;top:8px;right:8px;z-index:3;background:#101010e8;border:1px solid #a88b4d;color:#e9cf91}.profile-photo-wrap>.staff-x:hover{background:#24211a;color:#fff}

@media(max-width:600px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}}
.mobile-menu .menu-top{position:sticky;top:0;background:#111;z-index:1}

/* Separate profile and social links; never nest anchors. */
.staff-card-shell,.rank-card-shell{position:relative;min-width:0}.staff-card-shell>.staff-x,.rank-card-shell>.staff-x{position:absolute;right:8px;top:8px;z-index:3}.staff-x{border-radius:50%;background:#101010ed;border:1px solid #a88b4d;color:#e9cf91;box-sizing:border-box}.staff-x svg{width:19px;height:19px}.staff-x:hover{background:#282319;color:#fff}.rank-card-shell>.staff-x{top:60px}.rank-card-shell .rank-card{display:block;grid-column:auto}.rank-card-shell .rank-card .rank-number{height:44px;display:flex;align-items:baseline;gap:4px;margin:0 0 8px;font-size:22px}.rank-card-shell .rank-card.rank-first .rank-number{font-size:36px}

.side-banner{display:flex;flex-direction:column;gap:12px}.side-banner>a{flex:0 0 auto}.side-banner img{max-height:none}@media(min-width:1100px){.side-banner{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#665638 #111}.side-banner img{max-height:none}}

.sidebar-staff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;flex:0 0 auto}.sidebar-staff-grid>a{display:block;min-width:0;line-height:0}.sidebar-staff-grid .portrait{aspect-ratio:3/4;width:100%}.sidebar-staff-grid a:focus-visible{outline:2px solid #c7a964;outline-offset:2px}

/* 本日の枠・トップSPカルーセル（下層一覧は従来どおり） */
.date-tab.is-today,.date-tab.is-today[aria-selected=true]{position:relative;outline:2px solid #f0cb70;outline-offset:-3px;box-shadow:inset 0 0 0 4px #17130b}.date-tab.is-today small{font-weight:800}
@media(max-width:600px){main[data-page="index.html"] #daily-staff,main[data-page="index.html"] #ranking-list{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-inline:1px;padding:4px 1px 14px;scrollbar-width:thin;scrollbar-color:#c7a964 #282828;-webkit-overflow-scrolling:touch}main[data-page="index.html"] #daily-staff>.staff-card-shell,main[data-page="index.html"] #ranking-list>.rank-card-shell{flex:0 0 43%;min-width:0;scroll-snap-align:start}main[data-page="index.html"] #daily-staff>.empty,main[data-page="index.html"] #ranking-list>.empty{flex:1 0 100%}main[data-page="index.html"] #daily-staff::-webkit-scrollbar,main[data-page="index.html"] #ranking-list::-webkit-scrollbar{height:3px}main[data-page="index.html"] #daily-staff::-webkit-scrollbar-thumb,main[data-page="index.html"] #ranking-list::-webkit-scrollbar-thumb{background:#c7a964}main[data-page="index.html"] #daily-staff::-webkit-scrollbar-track,main[data-page="index.html"] #ranking-list::-webkit-scrollbar-track{background:#282828}}

/* 詳細写真の状態表示：カード用の小さな文字とは分離 */
.profile-photo-wrap,#main-photo,#main-photo .staff-photo-status{width:100%;min-width:0}#main-photo .staff-photo-status{position:relative;overflow:hidden;isolation:isolate}#main-photo .portrait{width:100%;max-width:100%;margin:0}#main-photo .staff-photo-status .photo-full{font-size:22px;line-height:1.5;padding:8px 18px;max-width:calc(100% - 24px);text-align:center;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box;letter-spacing:.04em}#main-photo .photo-active{right:12px;bottom:12px;max-width:calc(100% - 24px);font-size:16px;line-height:1.5;font-weight:600;padding:6px 12px;text-align:center;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box;letter-spacing:.02em}@media(max-width:600px){#main-photo .staff-photo-status .photo-full{font-size:22px;padding:8px 16px}#main-photo .photo-active{font-size:15px;padding:6px 10px;right:10px;bottom:10px}}

/* Recruitment: shared dark/gold layout with the native Google Form inside. */
.recruit-section{max-width:900px;margin-inline:auto;padding-top:0}.recruit-intro{margin:0 0 20px;text-align:center;color:var(--muted,#c5bfb1);font-size:14px}.recruit-form-frame{border:1px solid #8a713a;background:#f6f6f6;overflow:hidden}.recruit-form-frame iframe{display:block;width:100%;height:1240px;border:0}.recruit-form-fallback{display:block;width:fit-content;margin:18px auto 0;color:#ddc785;font-size:12px;text-underline-offset:4px}.recruit-form-fallback:focus-visible{outline:2px solid #ddc785;outline-offset:6px}@media(max-width:600px){.recruit-section{padding-inline:12px}.recruit-intro{font-size:13px;margin-bottom:16px}.recruit-form-frame iframe{height:1420px}.recruit-form-fallback{padding:12px 0;min-height:44px}}
