/* On-site booking first: restrained autumn accents, clear operational hierarchy. */
/* Staff actions: names first, admission primary, destructive actions secondary. */
#operator:has(>#operator-tools:not([hidden]))>.section-title{display:none}#operator-tools>.section-title{margin-bottom:6px}#operator-role-title{font-size:25px}#operator-scope{padding:0;background:none;font-size:15px;line-height:1.5;margin:0 0 2px;color:#626457}#operator-tools .operator-navigation{display:flex;flex-wrap:wrap;gap:4px 10px;margin:0 0 12px}#operator-tools .operator-navigation .text-button{padding:8px 0;min-height:44px}#operator-tools .staff-overview{margin-bottom:12px}#operator-count{font-size:14px;margin:12px 0}.staff-mode .connection-row{margin-bottom:6px}
.staff-overview{padding:20px}.staff-live-status{font-size:15px;font-weight:700;margin:0 0 14px}.staff-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;border-block:1px solid #e3e0d6;padding:14px 0}.staff-summary>div{display:flex;flex-direction:column;gap:4px;text-align:center}.staff-summary span{font-size:14px;color:#626457}.staff-summary strong{font-size:28px;font-variant-numeric:tabular-nums;line-height:1.3}.staff-summary small{font-size:13px;font-weight:500;margin-left:3px}.staff-instruction{font-size:15px;line-height:1.65;margin:16px 0 10px}.staff-toolbar{flex-wrap:wrap}.staff-toolbar button{flex:none;white-space:nowrap}.staff-action-hint{font-size:14px;line-height:1.6;color:#626457;margin:10px 0 0}.staff-group{margin:24px 0}.staff-group-title{font-size:18px;display:flex;gap:10px;align-items:center;margin:0 0 12px}.staff-group-title span{font-size:15px;color:#626457;font-weight:500}.staff-visit{padding:18px;margin-bottom:10px}.staff-visit[data-status=CALLED]{border-left:4px solid #b76e17}.staff-visit[data-status=IN_PROGRESS]{border-left:4px solid #496747}.staff-visit .visit-head{align-items:flex-start}.staff-visit h3{font-size:21px;margin:0;overflow-wrap:anywhere}.staff-person-meta{font-size:14px;color:#626457;margin:5px 0 0}.staff-time{font-size:16px;font-weight:600;color:#3b523a;margin:12px 0}.staff-actions{margin-top:14px;flex-wrap:wrap;gap:8px}.staff-actions button{min-height:48px}.staff-actions button[data-action=ADMIT]{flex:1;min-width:130px;font-weight:750}.staff-actions .staff-caution{color:#865445}.staff-history{margin:24px 0}.staff-history summary{font-size:15px;min-height:48px;padding:12px 0;cursor:pointer}.staff-history .staff-visit{background:#f6f5ef}.staff-history h3{font-size:17px}
@media(max-width:360px){.staff-overview{padding:16px}.staff-summary span{font-size:13px}.staff-summary strong{font-size:25px}.staff-visit{padding:15px}.staff-visit .visit-head{gap:8px}.staff-toolbar{gap:4px}}
:root{font-family:system-ui,-apple-system,"Segoe UI","Malgun Gothic",sans-serif;background:#faf8f3;color:#2d3028;--ink:#2d3028;--muted:#626457;--blue:#ae3f24;--line:#e3e0d6;--nav-height:80px}
body{background:#faf8f3}button{border-radius:12px;font-size:16px;min-height:48px}button:hover{filter:brightness(.94)}button:disabled{opacity:1;background:#ecebe5;color:#727266;border-color:#d9d9cf}
html{scroll-padding-top:90px;scroll-padding-bottom:110px}button,input,select,summary{scroll-margin-block:90px}.registration-mode .connection-row{display:none}.event-ribbon-name{display:none}
body.kiosk-mode [data-connect-personal]{display:none}
.header{background:#fffdf9;border-bottom:1px solid #e4e0d6}.header-inner,main{max-width:1120px}.header-inner{padding-top:12px;padding-bottom:12px}.brand-leaf{flex-shrink:0}#brand{font-size:25px;letter-spacing:-1.2px;color:#303a2a}.header-label,.staff-link{font-size:14px;color:#626457}
.connection-row{font-size:12px;margin:0 0 12px}.notice{font-size:13px;background:#f9f0dc;color:#73551c;border:0;border-radius:5px;padding:6px 10px}main{padding-top:12px}
.event-ribbon{display:flex;align-items:center;gap:16px;padding:12px 0 15px;border-bottom:1px solid var(--line);margin-bottom:18px}.event-ribbon-name{font-size:15px;font-weight:700;color:#825232}.event-ribbon .event-strip{font-size:13px;font-weight:400}.list-instruction{font-size:15px;color:var(--muted);margin:5px 0 0}.program-heading h1{font-size:28px;margin:0}
.event-strip{font-size:14px;color:#56513e;gap:4px 10px;font-weight:600}.event-strip span+span:before{background:#8c7556}
.registration-cta{background:#ae3f24;border-radius:14px;padding:17px 22px;margin-bottom:28px}.registration-cta strong{font-size:19px}.registration-cta small{font-size:14px;color:#fff1df}.cta-arrow{background:#ffffff16}
.program-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:27px 0 17px}.program-heading h2{font-size:25px;letter-spacing:-.9px;margin:0}.program-heading .eyebrow{font-size:14px;color:#71644c;margin-bottom:4px}.program-heading .text-button{color:#874a2c;white-space:nowrap;font-size:14px}
.search-box{border-color:#d8d8cc;border-radius:12px;margin-bottom:14px}.search-box input{min-height:52px}.search-box input::placeholder{font-size:15px;color:#737465}.search-box svg{color:#697058}
.filters{gap:7px;overflow:auto;scrollbar-width:none}.filters button{font-size:14px;min-height:44px;padding:9px 15px;color:#60634f;border-color:#deded2}.filters [aria-pressed=true]{background:#334b35;border-color:#334b35;color:#fff}.list-toolbar{margin-bottom:17px}.list-count{font-size:14px}
.booth-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.booth-card{border-radius:16px;padding:20px;border-color:#e1dfd2;box-shadow:0 3px 0 #eeece3;gap:18px}.booth-card-top{gap:12px}.booth-number{background:#f6ebd8;color:#955224;border-radius:50% 50% 12px 12px;width:43px;flex-basis:43px;height:48px;font-size:21px}.booth-title h2{font-size:18px;line-height:1.5;margin-top:9px;letter-spacing:-.55px}.badge{font-size:13px;padding:4px 7px;font-weight:700;border-radius:5px}.badge:before{width:6px;height:6px}.green{background:#eaf0e5;color:#315b32}.orange{background:#fff0d0;color:#815006}.red{background:#f8e8e1;color:#983b26}.gray{background:#eeeee7;color:#585e50}
.booth-card-bottom{border-color:#ebe9df;gap:8px;padding-top:16px}.booth-facts{font-size:14px;color:#626457}.booth-card button{font-size:15px;min-width:94px;min-height:48px;padding:11px 14px}.free-label{font-size:14px;color:#435e36;background:#eef2e7}
.participant-bar{background:#fffdf8;border-color:#e1e0d5;margin-bottom:16px;border-radius:12px}.participant-check{background:#edf2e4;color:#42603d}.participant-bar strong{font-size:16px}.participant-bar small{font-size:13px}.participant-bar button{font-size:14px;color:#68553e}
.reservation-summary{background:#304c35;color:#fff;border:0}.summary-content small{font-size:14px;color:#edf2e7}.summary-content strong{font-size:23px}.reservation-summary[data-status=CALLED]{background:#ae3f24}.reservation-summary[data-status=CALLED] .summary-content small{color:#fff3df}
.eyebrow{color:#776149;font-size:14px}.muted{font-size:16px}.footnote,.field-help{font-size:13px;color:#626457}.secondary{border-color:#cdd0be;color:#3b523a;background:#fff}.text-button{font-size:14px;color:#655b48}.panel,.visit,.entry-pass{border-color:#e1dfd2}.entry-label{background:#f5ead7;color:#835126;font-size:14px}.entry-pass h2{font-size:25px}
.page-heading h1{color:#34432d;font-size:31px}.registration-heading{position:relative;border-bottom:1px solid #e1dfd2;padding:8px 48px 23px 0}.registration-heading>img{position:absolute;right:0;top:15px;transform:rotate(12deg)}.registration-heading .muted{margin:0}.registration-panel h2{font-size:20px}.registration-panel{border-radius:16px}.step-number{background:#f7ebd8;color:#945029;width:29px;height:29px;font-size:15px}.choice{font-size:16px;min-height:54px;border-color:#cdd0be}.choice input,.check input{accent-color:#455e39}.choice:has(input:checked){border-color:#455e39;background:#f0f4e8;color:#2f4d2d;box-shadow:inset 0 0 0 1px #455e39}.privacy-copy{background:#f7f5ed;font-size:14px}.consent-check{font-size:15px}input,select{border-color:#bfc4b4;min-height:52px}input::placeholder{color:#74776b}.recovery-panel p{font-size:16px}
.bottom-nav{background:#fffdf9;border-color:#dddfd1;box-shadow:0 -4px 20px #50422808;padding-top:6px;padding-bottom:calc(7px + env(safe-area-inset-bottom))}.bottom-nav button{font-size:14px;min-height:60px;color:#686f5d;gap:5px;max-width:220px}.bottom-nav button[aria-current=page]{color:#a83f24}.bottom-nav button[aria-current=page]:before{content:"";position:absolute;top:-6px;width:38px;height:3px;background:#a83f24;border-radius:0 0 3px 3px}.bottom-nav svg{width:25px;height:25px}.nav-indicator{font-size:12px;background:#a83f24;top:1px}.bottom-nav button:last-child{max-width:150px}
.queue-number{color:#3f5a33;font-size:72px}.ticket-called{border-color:#b44526}.ticket-called .ticket-top{background:#ae3f24}.ticket-called .ticket-body{background:#fff8e9}.ticket-called .badge{color:#a83f24}.ticket-note{font-size:16px}.ticket-top .muted{font-size:14px}.progress-steps li{font-size:14px}.progress-steps li.done{border-color:#526944;color:#405732}.ticket-footer{font-size:13px}.ticket-footer button{font-size:14px}.participant-heading span{font-size:14px}.history-item p{font-size:14px}.cooldown{font-size:15px;background:#fff0ce;color:#70501a}.booking-facts{background:#f4eedc}.booking-facts p{font-size:15px}.booking-facts strong{font-size:26px}.session-name{background:#f1f2e8}.guide-steps li>span{background:#f6e7cd;color:#8d4d26}.guide-steps p{font-size:16px}.guide-steps h2{font-size:21px}.device-settings{font-size:14px}.event-info{font-size:15px}
.recovery-code{font-size:42px;font-weight:800;letter-spacing:6px;font-variant-numeric:tabular-nums;color:#a83f24}.recovery-banner{background:#fff5df;border-color:#e9d5ae}.recovery-banner p{font-size:15px}#reconnect-link{font-size:26px;text-align:center;letter-spacing:6px;font-variant-numeric:tabular-nums}#reconnect-link::placeholder{font-size:26px}#reconnect-status{font-size:15px;color:#993b26}#message:not(:empty){background:#edf3e5;border-color:#ced9bd;color:#3b552d;font-size:15px;top:78px}#message.error{background:#fff0e9;border-color:#eac5b3;color:#943c27}footer,footer strong{font-size:13px}.finish-check{background:#eef3e4;color:#455e39}
@media(max-width:940px){.booth-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.festival-hero{padding:25px;min-height:222px}.hero-copy h1{font-size:57px}.autumn-art{max-width:42%}}
@media(max-width:640px){.header-inner{padding:8px 18px}#brand{font-size:24px}.header-label{font-size:13px}.staff-link{font-size:13px}.brand-leaf{width:30px;height:30px}.festival-hero{min-height:198px;padding:22px;margin-bottom:16px;border-radius:16px;align-items:flex-start}.hero-copy{width:100%}.hero-copy .eyebrow{font-size:13px}.hero-copy h1{font-size:49px;margin-top:9px;margin-bottom:12px;letter-spacing:-2.5px}.hero-tagline{font-size:14px;max-width:175px;line-height:1.6;margin-bottom:14px}.autumn-art{position:absolute;width:175px;max-width:none;right:-7px;top:16px;margin:0;z-index:0}.event-strip{font-size:13px;position:relative;z-index:2;gap:3px 8px}.event-strip span+span{padding-left:8px}.registration-cta{padding:16px 18px;margin-bottom:23px}.registration-cta strong{font-size:18px}.registration-cta small{font-size:13px}.program-heading{margin-top:23px}.program-heading h2{font-size:23px}.program-heading .eyebrow{font-size:13px}.program-heading .text-button{font-size:13px}.booth-grid{grid-template-columns:1fr;gap:12px}.booth-card{padding:19px;gap:14px}.booth-title h2{font-size:19px}.booth-card-top{gap:13px}.booth-facts{font-size:14px}.booth-card button{font-size:16px;min-width:106px}.booth-number{width:43px;height:46px;flex-basis:43px}.booth-card-bottom{padding-top:13px}.filters button{font-size:14px;padding:9px 13px}.list-toolbar .icon-button{min-width:44px}.list-toolbar{align-items:center}.participant-bar{padding:11px 12px}.participant-bar small{font-size:12px}.participant-bar button{font-size:13px}.page-heading h1{font-size:28px}.registration-panel{padding:22px}.bottom-nav button{font-size:13px}.ticket-body h2{font-size:25px}.summary-content strong{font-size:22px}dialog{padding:28px 22px calc(24px + env(safe-area-inset-bottom))}}
@media(max-width:360px){.header-label{display:none}.festival-hero{padding:18px;min-height:197px}.hero-copy h1{font-size:43px}.autumn-art{width:137px;top:28px;right:-9px}.hero-tagline{font-size:13px;max-width:170px}.event-strip{font-size:12px}.filters button{font-size:13px;padding:9px 10px}.list-toolbar{gap:6px}.booth-title h2{font-size:18px}.booth-card{padding:16px}.booth-card button{min-width:94px;font-size:15px}.registration-panel{padding:18px}.registration-panel h2{font-size:18px}.choice{font-size:15px}.recovery-code{font-size:34px;letter-spacing:4px}.program-heading .eyebrow{font-size:12px}.program-heading h2{font-size:22px}.participant-bar strong{font-size:15px}}
@media(forced-colors:active){.choice:has(input:checked){outline:2px solid Highlight}.badge{border:1px solid currentColor}}
