:root{--ink:#223346;--teal:#2463d4;--sand:#f4f6f8;--line:#e0e5eb;--muted:#657286;--orange:#ed8552}*{box-sizing:border-box}body{font:14px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;background:var(--sand);color:var(--ink)}button,input,select{font:inherit}button{transition:background .12s}button:focus-visible,a:focus-visible{outline:3px solid #ed9451;outline-offset:3px}header{min-height:67px;padding:12px max(24px,calc((100% - 1120px)/2));gap:23px;border-bottom:1px solid var(--line);background:white}.brand{font:850 30px/1 Arial,sans-serif;letter-spacing:-1.8px;text-decoration:none;color:#245ac6}.brand span{color:#ee8a42}.header-caption{font-size:12px;color:var(--muted);flex:1}.role{padding:3px;border-radius:6px;background:#f0f3f7;gap:3px}.role button{font-size:11px;padding:7px 13px;border-radius:4px;color:#576579}.role .active{background:#fff;color:#2157b6;box-shadow:0 1px 3px #22334616}.wrap{max-width:1168px;padding:27px 24px;margin:auto}.club-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 25px}.hotel-id{display:flex;align-items:center;gap:14px}.club-logo{width:54px;height:54px;background:#ffcf4b;border-radius:13px;color:#7e5514;display:grid;place-items:center;transform:rotate(-5deg)}.club-logo .icon{width:31px;height:31px}.kicker{font-size:9px;letter-spacing:1.5px;font-weight:750;color:#66778e}h1{font:750 26px/1.25 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;letter-spacing:-.6px;margin:3px 0 4px}h2{font:750 23px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;letter-spacing:-.5px;margin:0}h3{font-size:15px;font-weight:700;margin:0}p{line-height:1.6}.hotel-id p{margin:0;color:var(--muted);font-size:11px}.hotel-id p span{margin:0 7px;color:#a8b0bd}.demo-label{font-size:10px;color:#68778b;white-space:nowrap}.demo-label i{display:inline-block;width:6px;height:6px;background:#e9a445;border-radius:50%;margin-right:5px}.icon{width:18px;height:18px;vertical-align:middle;flex-shrink:0}.tabs{display:flex;gap:25px;margin:0 0 27px;padding:0;border-bottom:1px solid #dce2e9;overflow:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{display:flex;align-items:center;gap:7px;background:transparent;padding:11px 1px 15px;border:0;border-radius:0;color:#67768c;font-size:12px;white-space:nowrap}.tabs .active{background:transparent;color:#205dc4;box-shadow:inset 0 -3px #2463d4;font-weight:700}.tabs .icon{width:17px;height:17px}.nav-count{background:#e5edff;border-radius:10px;padding:1px 6px;font-size:9px}.programme-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:28px;align-items:start}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 20px}.section-head p{margin:6px 0 0;font-size:12px;color:var(--muted)}.day-switch{display:flex;padding:3px;background:#e9edf3;border-radius:6px;flex-shrink:0}.day-switch button{font-size:10px;padding:8px 10px;background:none;border:0;border-radius:4px;color:#66778b}.day-switch .active{background:#fff;color:#244875;box-shadow:0 1px 3px #182b3e12;font-weight:650}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:17px}.chips button{background:white;border:1px solid #dce2eb;border-radius:5px;font-size:10px;padding:7px 11px;color:#617087}.chips .active{background:#e8efff;border-color:#aec6f0;color:#2259b5;font-weight:650}.schedule-board{border:1px solid #dfe5ed;border-radius:8px;background:white;overflow:hidden}.board-label{display:flex;justify-content:space-between;padding:11px 19px;background:#f8fafc;border-bottom:1px solid #e5e9ee;font-size:9px;color:#79869a;letter-spacing:1px}.board-label span:last-child{letter-spacing:0}.schedule-row{display:grid;grid-template-columns:60px 37px minmax(0,1fr);gap:14px;align-items:start;margin:0 19px;padding:20px 0;border-bottom:1px solid #e9edf2}.schedule-row:last-child{border-bottom:0}.schedule-time{font-size:18px;font-weight:750;letter-spacing:-.6px;padding-top:1px;font-variant-numeric:tabular-nums}.schedule-time span{display:block;font-size:9px;font-weight:400;color:#8792a2;letter-spacing:0;margin-top:3px}.activity-symbol{width:37px;height:37px;border-radius:9px;display:grid;place-items:center}.activity-symbol .icon{width:21px;height:21px}.cat-sport{background:#e7f1ff;color:#3173bd}.cat-wellness{background:#fff1cc;color:#ad8122}.cat-family{background:#e7f2de;color:#58863d}.cat-night{background:#f0e6fd;color:#8d57bf}.activity-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.activity-title h3{font-size:14px;letter-spacing:-.2px}.activity-category{font-size:8px;border-radius:3px;background:#f0f3f7;color:#6a788b;padding:2px 6px}.activity-location{display:flex;align-items:center;gap:4px;font-size:10px;color:#62738b;margin:5px 0 0;flex-wrap:wrap}.activity-location .icon{width:12px;height:12px}.activity-location span{margin:0 3px}.activity-description{font-size:11px;color:#7d8898;margin:5px 0 0}.activity-actions{display:flex;align-items:center;gap:11px;margin-top:12px}.btn{font-size:11px;border:0;border-radius:5px;padding:9px 13px;line-height:1.4;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600;background:#2463d4;color:#fff;box-shadow:none}.btn:hover{background:#1852bc}.btn.secondary{background:#eaf1fc;color:#2a60b7}.btn.secondary:hover{background:#dce9fc}.btn .icon{width:15px;height:15px}.btn.reminder{border:0;background:transparent;color:#79869a;padding:7px 0;font-size:10px;font-weight:400}.btn.reminder.is-set{color:#215cc3}.btn.reminder:hover{color:#215cc3}.programme-footnote{display:flex;align-items:center;gap:7px;color:#8190a3;font-size:10px;margin:14px 0}.programme-footnote .icon{width:14px;height:14px}.club-sidebar{display:flex;flex-direction:column;gap:17px}.tonight{padding:21px;background:#ffe399;border-radius:8px;border:1px solid #f1d083;color:#4f3d1b;position:relative;overflow:hidden}.tonight-top{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.2px;font-weight:750}.tonight-top .icon{width:23px;height:23px;color:#d18e24;transform:rotate(12deg)}.tonight-time{font-size:12px;display:inline-block;margin-top:18px;background:#fff6d4;border:1px solid #f1d48f;padding:3px 8px;border-radius:4px;font-weight:750}.tonight h2{font-size:25px;line-height:1.18;letter-spacing:-.7px;margin:10px 0}.tonight p{font-size:11px;margin:0;display:flex;align-items:center;gap:5px;color:#8b713d}.tonight p .icon{width:13px;height:13px}.tonight-ticket{border-top:1px dashed #d9b76a;border-bottom:1px dashed #d9b76a;margin:19px 0 16px;padding:13px 0}.tonight-ticket span{font-size:8px;font-weight:600;letter-spacing:.8px;display:block;color:#a1803f}.tonight-ticket strong{font-size:13px;display:block;margin-top:4px}.tonight .btn{width:100%;background:#3b5076;justify-content:space-between;font-size:11px;padding:11px 13px}.tonight .btn:hover{background:#263e65}.tonight small{display:block;text-align:center;font-size:8px;margin-top:9px;color:#977841}.sidebar-box{background:white;border:1px solid #e0e5ec;border-radius:8px;padding:19px}.box-title{display:flex;align-items:center;gap:8px;margin-bottom:6px}.box-title .icon{width:16px;color:#5679a6}.box-title h3{font-size:13px}.mini-hours{display:flex;flex-direction:column;gap:3px;border-bottom:1px solid #edf0f5;padding:10px 0}.mini-hours strong{font-size:10px;color:#53667c}.mini-hours span{font-size:10px;color:#7d8b9e;line-height:1.6}.text-button{display:flex;align-items:center;gap:10px;border:0;background:none;color:#2d62b9;font-size:10px;padding:12px 0 0;font-weight:650}.text-button .icon{width:13px;height:13px}.map-shortcut{padding:17px;display:flex;align-items:center;gap:12px;background:#e9f1e8;color:#3b694d;border:1px solid #d8e5d6;border-radius:8px;text-align:left}.map-shortcut-icon{width:34px;height:34px;display:grid;place-items:center;background:#d8e7d6;border-radius:6px}.map-shortcut strong{display:block;font-size:12px}.map-shortcut small{display:block;font-size:10px;margin-top:3px;color:#7d9781}.map-shortcut>.icon{margin-left:auto;width:15px}.sidebar-note{font-size:9px;color:#8994a5;margin:0 3px}.footer{margin-top:29px;border-top:1px solid var(--line);font-size:9px;color:#8a95a5;padding:19px 0;display:flex;justify-content:space-between;gap:15px}.footer b{color:#456a9c;font-size:14px;letter-spacing:-.7px;margin-right:5px}.panel{background:white;border:1px solid var(--line);border-radius:7px;padding:23px;box-shadow:none}.panel h2{font-size:21px}.status,.badge{display:inline-flex;align-items:center;font-size:9px;line-height:1.4;border-radius:4px;padding:4px 7px;background:#e8effd;color:#416ba9;font-weight:500}.status.future{background:#f0f2f5;color:#8490a0}.cancelled-label{background:#f8e7e4;color:#ad675b}.hours-list{border:1px solid var(--line);background:white;border-radius:8px;padding:0 24px}.hours-item{display:flex;gap:18px;padding:25px 0;border-bottom:1px solid #e7ecf1}.hours-item:last-child{border:0}.hours-icon{width:43px;height:43px;background:#eaf0fb;color:#416db3;display:grid;place-items:center;border-radius:7px}.hours-item h3{font-size:15px;margin:0 0 7px}.hours-item strong{font-size:13px;letter-spacing:.1px;color:#415c80}.hours-item p{margin:7px 0 0;font-size:11px;color:#7c889a}.info-message{display:flex;align-items:flex-start;gap:11px;padding:17px 20px;background:#edf1f7;border-radius:6px;margin:24px 0;color:#607490;font-size:11px}.info-message>.icon{margin-top:1px;width:17px;height:17px}.info-message strong{font-size:11px;color:#3b5576}.info-message p{margin:5px 0 0}.club-games{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:20px}.playable-game,.future-game{background:white;border:1px solid #dde4ed;border-radius:8px;overflow:hidden}.game-body{padding:22px}.game-body h3{font-size:18px;margin:12px 0 8px}.game-body p{font-size:12px;color:#7b889b;line-height:1.7;min-height:60px}.quiz-cover{height:193px;background:#3472d7;color:white;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px}.game-kicker{font-size:8px;letter-spacing:1.8px;color:#d8e7ff}.quiz-letters{display:flex;gap:5px}.quiz-letters b{width:43px;height:53px;display:grid;place-items:center;background:#ffdc76;color:#4a4e54;font-size:35px;font-weight:850;box-shadow:0 4px 0 #164eac;transform:rotate(-7deg);border-radius:5px}.quiz-letters b:nth-child(even){transform:rotate(6deg);background:#ff9b71}.quiz-cover>span:last-child{font-size:8px;letter-spacing:1px}.bingo-cover{height:193px;background:#f1ece3;display:grid;place-items:center}.bingo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:white;padding:10px;border:1px solid #d8cbb7;border-radius:5px;transform:rotate(6deg)}.bingo-grid span{width:30px;height:30px;border-radius:3px;background:#f8e5bd;color:#9e7b42;display:grid;place-items:center;font-weight:700;font-size:12px}.treasure-cover{height:193px;background:#e7eee2;display:flex;align-items:center;justify-content:center;gap:10px;color:#77966a}.treasure-cover .icon{width:55px;height:55px;transform:rotate(-10deg)}.treasure-cover span{font-size:18px;font-weight:800;line-height:1.15;letter-spacing:-.5px}.map{background:linear-gradient(105deg,#e7eddf 0 66%,#a7d3e5 66%);border:1px solid #d9e2e7;border-radius:8px;height:420px}.map:before{border:18px solid #f7f7f0}.map .pin{border:1px solid #d5e1d7;background:white;color:#496c61;font-size:11px;border-radius:5px;box-shadow:0 2px 4px #23395109}.map .pin:hover{background:#e7f0ff;color:#205dc4}.topline{margin:10px 0 22px}.topline h1{font-size:29px}.topline p{font-size:12px}.stat{border-radius:7px;border:1px solid var(--line);padding:21px;font-size:11px}.stat strong{font:750 29px system-ui;color:#2f5b95}.row h3{font-size:14px}.row .muted{font-size:11px}.row .btn{font-size:10px}.notice{border-radius:6px;font-size:10px;background:#fff8e8;border:1px solid #eee2c2}.screen{border-radius:8px;background:#2b589d;color:white;padding:40px}.screen h2{font-size:33px;line-height:1.3;letter-spacing:-.6px}.screen .eyebrow{color:#ffdb79!important}.screen .answers button{color:#2a466b;opacity:1;font-size:17px;border-radius:6px}.answers button{font-size:14px;border-radius:6px}.answers button:hover{background:#e8effc}dialog{border-radius:10px;box-shadow:0 15px 70px #233d672d}dialog h2{font-size:24px;line-height:1.3}.empty{padding:35px 25px}.empty h3{font-size:14px}.empty p{font-size:12px;color:var(--muted)}.grid{gap:18px}.art{border-radius:0}.programme-main{min-width:0}
@media(max-width:1000px){.programme-layout{grid-template-columns:minmax(0,1fr) 255px;gap:20px}.section-head{align-items:flex-start;flex-wrap:wrap}.schedule-row{gap:10px;grid-template-columns:52px 32px minmax(0,1fr);margin:0 16px}.activity-symbol{width:32px;height:32px}.schedule-time{font-size:17px}.activity-category{display:none}.tonight{padding:18px}.header-caption{font-size:11px}.club-games{gap:12px}.game-body{padding:17px}}
@media(max-width:700px){header{padding:12px 16px;gap:10px;min-height:60px;flex-wrap:wrap}.brand{font-size:27px}.header-caption{display:none}.role{width:auto;margin-left:auto;gap:1px;padding:3px}.role button{flex:initial;font-size:9px;padding:7px 9px}.wrap{padding:22px 16px}.club-heading{gap:8px;margin:0 0 20px}.hotel-id{gap:10px}.club-logo{width:43px;height:43px;border-radius:10px}.club-logo .icon{width:27px;height:27px}.kicker{font-size:8px;letter-spacing:1.1px}h1{font-size:20px;margin:3px 0}.hotel-id p{font-size:9px}.hotel-id p span{margin:0 3px}.demo-label{display:none}.tabs{gap:20px;margin:0 0 23px}.tabs button{font-size:11px;padding:10px 0 13px;gap:6px}.tabs .icon{width:15px;height:15px}.programme-layout{display:flex;flex-direction:column;gap:23px}.programme-main{width:100%}.section-head{gap:11px;margin:0 0 15px;align-items:flex-start;flex-direction:column}.section-head h2,h2{font-size:22px;letter-spacing:-.6px}.section-head p{font-size:11px;margin-top:5px}.day-switch{margin-top:3px}.day-switch button{font-size:10px;padding:7px 14px}.chips{gap:5px;flex-wrap:wrap;margin-bottom:13px}.chips button{font-size:9px;padding:7px 9px}.board-label{font-size:8px;padding:11px 12px}.schedule-row{grid-template-columns:44px 27px minmax(0,1fr);gap:9px;padding:17px 0;margin:0 12px}.schedule-time{font-size:16px;letter-spacing:-.7px}.schedule-time span{font-size:8px;margin-top:5px}.activity-symbol{width:27px;height:29px;border-radius:6px}.activity-symbol .icon{width:17px;height:17px}.activity-title h3{font-size:13px;line-height:1.3}.activity-location{font-size:9px;line-height:1.6;gap:3px;margin-top:5px}.activity-location .icon{width:11px;height:11px}.activity-description{font-size:10px;line-height:1.55;margin-top:5px}.activity-actions{gap:10px;margin-top:10px}.activity-actions .btn{font-size:10px;padding:7px 10px}.activity-actions .btn.reminder{font-size:9px;padding:7px 0;gap:4px}.btn.reminder .icon{width:12px;height:12px}.programme-footnote{font-size:9px;align-items:flex-start}.programme-footnote .icon{flex-shrink:0}.club-sidebar{width:100%;gap:16px}.tonight h2{font-size:27px;max-width:250px}.tonight-time{margin-top:15px}.tonight{padding:22px}.tonight .btn{font-size:12px}.tonight small{font-size:9px}.tonight-ticket strong{font-size:14px}.sidebar-box{padding:20px}.mini-hours strong{font-size:11px}.mini-hours span{font-size:11px}.sidebar-note{font-size:10px}.box-title h3{font-size:14px}.map-shortcut strong{font-size:13px}.map-shortcut small{font-size:11px}.footer{font-size:9px;flex-direction:column;gap:7px;padding-bottom:14px;margin-top:25px}.club-games{grid-template-columns:1fr;gap:20px}.quiz-cover,.bingo-cover,.treasure-cover{height:180px}.game-body{padding:22px}.game-body h3{font-size:19px}.game-body p{min-height:0}.game-body .btn{font-size:12px;padding:11px 17px}.info-message{padding:15px;gap:8px;font-size:10px}.info-message p{font-size:10px}.info-message strong{font-size:11px}.hours-list{padding:0 17px}.hours-item{gap:12px;padding:21px 0}.hours-icon{width:35px;height:35px;flex-shrink:0}.hours-item h3{font-size:14px}.hours-item strong{font-size:11px}.hours-item p{font-size:10px}.map{height:360px}.map .pin{font-size:9px;padding:8px}.map .pin:nth-child(6){left:73%!important}.topline{align-items:flex-start;gap:10px;flex-direction:column}.topline h1{font-size:24px}.stats{gap:8px}.stat{padding:14px 11px;font-size:10px}.stat strong{font-size:25px}.panel{padding:18px}.section-head>.actions{gap:6px}.actions .btn{font-size:10px;padding:9px 11px}.screen{padding:25px 18px}.screen h2{font-size:27px}.answers{grid-template-columns:1fr}.screen .answers button{font-size:15px}.notice{font-size:10px}.formgrid{grid-template-columns:1fr}.topline .eyebrow{font-size:9px}dialog{padding:23px}.row{gap:12px}.row>.actions{gap:7px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Summer club visual direction */
:root{--ink:#213d48;--teal:#087f8c;--sand:#fbf8f2;--line:#e9e7df;--muted:#73818a}body{background:var(--sand);color:var(--ink)}header{border-bottom-color:#ece8dd;background:#fffdfa;min-height:72px}.brand{color:#087c88;font-size:32px}.brand span{color:#ed825f}.header-caption{color:#8b9598;font-size:11px}.role{background:#f1eee7;border-radius:20px;padding:4px}.role button{border-radius:17px;padding:7px 14px;color:#92938c}.role .active{color:#147b83;background:white}.wrap{max-width:1200px;padding:27px 30px}.club-heading{margin-bottom:25px}.club-logo{background:#ffda6b;color:#a26a26;border-radius:15px;width:50px;height:50px;transform:rotate(-7deg)}.hotel-id h1{font-size:25px;font-weight:750;letter-spacing:-.8px}.kicker{font-size:8px;letter-spacing:1.8px;color:#b4a584}.hotel-id p{color:#8c9491}.demo-label{color:#9f9b90;font-size:9px}.vacation-banner{position:relative;display:grid;grid-template-columns:1.35fr 1fr;min-height:206px;background:#148c97;border-radius:17px;overflow:hidden;margin-bottom:22px;color:white}.vacation-banner-copy{padding:29px 36px;position:relative;z-index:1}.vacation-label{font-size:8px;letter-spacing:1.8px;font-weight:700;color:#d2f3e9;display:flex;align-items:center;gap:8px}.vacation-label .icon{width:16px;height:16px}.vacation-banner h2{font-size:35px;line-height:1.12;letter-spacing:-1.2px;font-weight:800;color:#fffdf5;margin:10px 0}.vacation-banner p{font-size:11px;color:#d9ece6;margin:10px 0 0}.vacation-banner-photo{background:url('assets/beach.jpg') center 65%/cover;clip-path:ellipse(85% 130% at 85% 50%)}.sun-sticker{position:absolute;left:53%;top:20px;transform:rotate(10deg);width:67px;height:67px;border-radius:50%;background:#ffdb73;display:grid;place-items:center;color:#b37b21}.sun-sticker .icon{width:42px;height:42px;stroke-width:1.3}.banner-sticker{position:absolute;right:23px;bottom:22px;padding:12px 19px;transform:rotate(-6deg);background:#fff6d7;color:#b88e4f;border-radius:6px;font-size:8px;letter-spacing:1px;box-shadow:0 3px 8px #193e4420}.banner-sticker b{font-size:14px;letter-spacing:-.3px;color:#3b6563;line-height:1.8}.tabs{background:#fffdfa;border:1px solid #e8e6de;border-radius:11px;gap:5px;padding:6px;margin:0 0 28px;box-shadow:0 3px 8px #5a533303}.tabs button{flex:1;justify-content:center;padding:12px 14px;border-radius:7px;color:#84908e;font-size:11px}.tabs .active{background:#e4f2ed;color:#187c80;box-shadow:none}.tabs .icon{width:16px;height:16px}.nav-count{background:#c9e8de;color:#287a6c}.programme-layout{gap:25px;grid-template-columns:minmax(0,1fr) 290px}.section-head{margin-bottom:19px}.section-head h2{font-size:23px;letter-spacing:-.7px;color:#2c484d}.section-head p{font-size:11px;color:#8a928e}.day-switch{background:#ecece3;border-radius:8px;padding:4px}.day-switch button{font-size:9px;padding:7px 12px;border-radius:5px;color:#92968d}.day-switch .active{color:#3d706c}.chips{margin-bottom:17px;gap:7px}.chips button{border-color:#e7e4d9;color:#8c9289;border-radius:20px;font-size:10px;padding:7px 12px;background:transparent}.chips .active{background:#168691;border-color:#168691;color:white;font-weight:500}.schedule-board{border:0;background:transparent;overflow:visible}.board-label{background:none;padding:0 1px 12px;border:0;font-size:8px;color:#aaa897;letter-spacing:1.2px}.schedule-row{position:relative;margin:0 0 12px;padding:18px 17px;grid-template-columns:55px 108px minmax(0,1fr);gap:15px;background:#fff;border:1px solid #eae7df;border-radius:11px;box-shadow:0 3px 8px #4c4c2b03;transition:box-shadow .15s}.schedule-row:last-child{border:1px solid #eae7df}.schedule-row:hover{box-shadow:0 5px 15px #4c4c2b0a}.schedule-time{font-size:18px;letter-spacing:-.7px;color:#48656a;padding-top:3px}.schedule-time span{font-size:8px;color:#abae9f;font-weight:400}.activity-thumbnail{position:relative;height:105px;border-radius:8px;align-self:center;background:#eff2e5}.activity-thumbnail img{height:100%;width:100%;object-fit:cover;border-radius:8px}.activity-symbol{position:absolute;bottom:-4px;right:-5px;width:25px;height:25px;border-radius:7px;border:2px solid white}.activity-symbol .icon{width:15px;height:15px}.activity-title h3{font-size:14px;color:#314c50;letter-spacing:-.4px}.activity-category{background:#f4f1e8;color:#9d967e;font-size:7px;padding:2px 5px}.activity-location{color:#8a9591;font-size:9px;margin-top:5px}.activity-description{font-size:10px;color:#929a93;line-height:1.6;margin-top:6px}.activity-actions{gap:12px;margin-top:11px}.btn{background:#117e89;border-radius:6px;font-size:10px;padding:9px 13px;font-weight:600}.btn:hover{background:#0b6b75}.btn.secondary{background:#e8f3e9;color:#42785b}.btn.reminder{color:#9ba298;font-size:9px;font-weight:400}.btn.reminder:hover,.btn.reminder.is-set{color:#217e7e}.btn.reminder .icon{width:13px;height:13px}.programme-footnote{font-size:9px;color:#a5a99c}.tonight{background:#344f66;color:#fff8e9;border:0;border-radius:13px;padding:23px}.tonight-top{color:#fae2a4;font-size:8px;letter-spacing:1.4px}.tonight-top .icon{color:#ffd87b}.tonight-art{display:flex;gap:4px;align-items:center;justify-content:center;margin:21px 0 12px}.tonight-art span{display:grid;place-items:center;width:43px;height:47px;border-radius:6px;font-size:30px;font-weight:850;background:#ffc975;color:#5a5144;transform:rotate(-7deg);box-shadow:0 4px 0 #233c53}.tonight-art span:nth-child(even){background:#ef9c7f;transform:rotate(6deg)}.tonight-time{background:#ffffff14;color:#f9e0af;border-color:#ffffff20;font-size:10px;margin-top:12px}.tonight h2{font-size:23px;color:#fff4db;margin:12px 0;line-height:1.2}.tonight p{color:#b5c8ca;font-size:10px}.tonight-ticket{border-color:#92a29e55;margin:17px 0;padding:13px 0}.tonight-ticket span{color:#aabdc1;font-size:7px}.tonight-ticket strong{color:#f5e1b8;font-size:12px}.tonight .btn{background:#f1a285;color:#493f38;border-radius:6px;font-size:11px}.tonight .btn:hover{background:#f4b49c}.tonight small{color:#a5b8bd;font-size:8px}.sidebar-box{border-radius:12px;border-color:#e9e6db;padding:21px}.box-title .icon{color:#e29c5a}.box-title h3{color:#53645d;font-size:12px}.mini-hours{border-color:#efeee5}.mini-hours strong{color:#7e8a7c;font-size:10px}.mini-hours span{color:#9ba495;font-size:10px}.text-button{color:#338682;font-size:10px}.map-shortcut{border-radius:12px;background:#e9eedb;border-color:#e0e5ce;color:#657f50;padding:19px}.map-shortcut-icon{background:#dce5c6;color:#718b57;border-radius:8px}.map-shortcut strong{font-size:11px}.map-shortcut small{color:#91a17d;font-size:10px}.sidebar-note{color:#acb09f;font-size:8px}.footer{border-color:#e5e4d8;color:#a9ab9d;font-size:9px}.footer b{color:#3c8b85;font-size:16px}.club-games{gap:20px}.playable-game,.future-game{border-color:#e7e5dc;border-radius:13px;box-shadow:0 4px 9px #68643704}.quiz-cover{background:#2b8190}.quiz-letters b{box-shadow:0 4px 0 #1f6877}.bingo-cover{background:#f9e1c4}.treasure-cover{background:#e4edcc;color:#8aa86a}.game-body{padding:23px}.game-body h3{color:#3d5856}.game-body p{color:#94a092}.status,.badge{background:#e7f3ed;color:#518575;border-radius:5px}.status.future{background:#f3efe6;color:#aaa18c}.hours-list{border-color:#e9e5dc;border-radius:12px}.hours-icon{background:#f9e9ca;color:#b69550;border-radius:10px}.hours-item strong{color:#5a8a85}.hours-item p{color:#99a192}.info-message{background:#eff1e5;border-radius:10px;color:#829376}.info-message strong{color:#63785a}.panel,.stat{border-radius:11px;border-color:#e9e5dc}.stat strong{color:#3a8985}.screen{background:#344f66;border-radius:14px}.screen .answers button{color:#3c5b67}.map{border-radius:12px}.topline h1{color:#37605f}
@media(max-width:1000px){.programme-layout{grid-template-columns:minmax(0,1fr) 255px;gap:18px}.schedule-row{grid-template-columns:48px 85px minmax(0,1fr);gap:12px;padding:16px 13px}.activity-thumbnail{height:100px}.activity-category{display:none}.vacation-banner h2{font-size:33px}.sun-sticker{left:51%}.tabs button{padding:12px 9px;font-size:10px}}
@media(max-width:700px){header{min-height:64px;padding:12px 17px}.brand{font-size:29px}.role{border-radius:18px;padding:3px}.role button{font-size:8px;padding:7px 10px}.wrap{padding:20px 16px}.club-heading{margin-bottom:19px}.club-logo{width:41px;height:41px;border-radius:12px}.club-logo .icon{width:26px;height:26px}.hotel-id h1{font-size:20px}.hotel-id p{font-size:9px}.kicker{font-size:7px;letter-spacing:1.3px}.vacation-banner{min-height:169px;grid-template-columns:1.5fr 1fr;border-radius:13px;margin-bottom:17px}.vacation-banner-copy{padding:22px 19px;min-width:0}.vacation-label{font-size:6px;letter-spacing:1px;gap:5px}.vacation-label .icon{width:12px;height:12px}.vacation-banner h2{font-size:26px;letter-spacing:-.8px;margin:10px 0;line-height:1.1;white-space:nowrap}.vacation-banner p{font-size:8px;line-height:1.6;max-width:173px;margin:8px 0 0}.vacation-banner-photo{clip-path:ellipse(98% 110% at 98% 50%);background-position:65% center}.sun-sticker{width:35px;height:35px;left:auto;right:23px;top:13px}.sun-sticker .icon{width:23px;height:23px}.banner-sticker{right:12px;bottom:15px;font-size:5px;padding:7px 9px;border-radius:4px;letter-spacing:.6px}.banner-sticker b{font-size:9px}.tabs{gap:3px;padding:4px;border-radius:10px;margin-bottom:23px}.tabs button{flex:0 0 auto;padding:9px 11px;border-radius:6px;font-size:10px;gap:5px}.tabs .icon{width:14px;height:14px}.programme-layout{display:flex;gap:23px}.section-head{margin-bottom:15px;flex-direction:row;align-items:center;gap:9px}.section-head h2{font-size:19px;line-height:1.25;letter-spacing:-.6px;max-width:180px}.section-head p{font-size:9px;line-height:1.6;max-width:175px}.day-switch{padding:3px;border-radius:7px;margin-top:0}.day-switch button{font-size:8px;padding:7px 8px}.chips{gap:5px;margin-bottom:15px}.chips button{font-size:9px;padding:7px 9px}.board-label{font-size:7px;padding:0 2px 11px}.schedule-row{grid-template-columns:43px 65px minmax(0,1fr);gap:10px;padding:15px 12px;margin-bottom:11px;border-radius:10px}.schedule-time{font-size:15px;padding-top:2px;letter-spacing:-.6px}.schedule-time span{font-size:7px}.activity-thumbnail{height:78px;border-radius:7px;align-self:start;margin-top:2px}.activity-thumbnail img{border-radius:7px}.activity-symbol{width:21px;height:21px;border-radius:6px;bottom:-4px;right:-4px}.activity-symbol .icon{width:12px;height:12px}.activity-title h3{font-size:12px;line-height:1.35;letter-spacing:-.2px}.activity-location{font-size:8px;gap:2px;line-height:1.5;margin-top:4px}.activity-location .icon{width:10px;height:10px}.activity-location span{margin:0 2px}.activity-description{display:none}.activity-actions{gap:7px;margin-top:10px;flex-wrap:wrap}.activity-actions .btn{font-size:9px;padding:8px 9px;border-radius:5px;min-height:30px}.activity-actions .btn.reminder{font-size:8px;padding:6px 0;gap:3px}.activity-actions .btn.reminder .icon{width:11px;height:11px}.programme-footnote{font-size:8px}.club-sidebar{gap:16px}.tonight{padding:24px;border-radius:13px}.tonight-top{font-size:9px}.tonight-art{margin-top:18px}.tonight-art span{width:46px;height:48px;font-size:33px}.tonight h2{font-size:25px;max-width:none}.tonight .btn{font-size:12px}.tonight p{font-size:11px}.tonight-ticket strong{font-size:13px}.sidebar-note{font-size:9px}.box-title h3{font-size:13px}.mini-hours strong,.mini-hours span{font-size:11px}.map-shortcut strong{font-size:13px}.map-shortcut small{font-size:11px}.footer{font-size:8px}.section-head:has(>.actions){flex-wrap:wrap}.game-body p{font-size:12px}.club-games{gap:19px}.game-body h3{font-size:19px}.section-head:has(>.status) h2{max-width:none}}
@media(max-width:360px){.schedule-row{grid-template-columns:40px 52px minmax(0,1fr);gap:8px;padding:14px 10px}.activity-thumbnail{height:65px}.vacation-banner h2{font-size:23px}.chips button{font-size:8px}.day-switch button{font-size:7px;padding:7px}.section-head h2{font-size:18px}}
.activity-location{color:#6f8483}.activity-description{color:#788b85}.btn.reminder{color:#788a83}.mini-hours span{color:#7a8e81}.sidebar-note{color:#849486}.section-head p{color:#7a8a85}.board-label{color:#87978c}.schedule-time span{color:#8a978c}.chips button{color:#71847c}.chips .active{color:white}.tabs button{color:#738782}.role button{color:#7b8882}.footer{color:#839186}@media(max-width:700px){.vacation-banner h2{font-size:23px;letter-spacing:-.7px}.activity-location{font-size:9px}.activity-actions .btn.reminder{font-size:9px}.activity-actions .btn{min-height:32px}.role button{font-size:9px;padding:7px 9px}.activity-actions{gap:5px}}
/* Phone-first navigation and touch controls */
.mobile-space-control{display:none}
@media(max-width:700px){
body[data-space=guest],body[data-space=hotel]{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px))}
header{padding:10px 16px;min-height:62px;flex-wrap:nowrap}.brand{font-size:29px}header>.role{display:none}.mobile-space-control{display:flex;align-items:center;gap:9px;margin-left:auto;font-size:11px;color:#72837d}.mobile-space-control select{font-size:13px;min-height:40px;width:142px;border-radius:9px;border-color:#e3e5d9;padding:7px 10px;background:#fffdfa}.wrap{padding-top:20px}
.club-heading{margin-bottom:17px}.hotel-id h1{font-size:21px}.hotel-id p{font-size:11px}.kicker{font-size:8px}
.vacation-banner{min-height:116px;margin-bottom:23px;grid-template-columns:1.5fr 1fr}.vacation-banner-copy{padding:19px 18px}.vacation-label{font-size:7px}.vacation-banner h2{font-size:23px;margin:8px 0 0}.vacation-banner h2 br{display:none}.vacation-banner h2{max-width:190px;white-space:normal}.vacation-banner p{display:none}.sun-sticker{width:29px;height:29px;top:12px;right:17px}.sun-sticker .icon{width:20px;height:20px}.banner-sticker{font-size:6px;padding:6px 9px;bottom:12px}.banner-sticker b{font-size:10px}
body[data-space=guest] .tabs,body[data-space=hotel] .tabs{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;align-items:stretch;justify-content:space-around;width:100%;margin:0;padding:7px 7px calc(8px + env(safe-area-inset-bottom,0px));border:0;border-top:1px solid #e1e7dc;border-radius:0;background:#fffefb;box-shadow:0 -5px 20px #3f5a4d09;gap:3px;overflow:visible}
body[data-space=guest] .tabs button,body[data-space=hotel] .tabs button{position:relative;flex:1;min-width:0;min-height:55px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:9px;padding:6px 2px;font-size:10px;line-height:1.2;white-space:normal;box-shadow:none;text-align:center}
body[data-space=guest] .tabs button.active,body[data-space=hotel] .tabs button.active{background:#e8f4ef;color:#137d83}
.tabs .icon{width:21px;height:21px}.nav-count{position:absolute;top:2px;right:12px;min-width:16px;height:16px;padding:1px 4px;font-size:9px}
.section-head{flex-direction:column;align-items:flex-start;gap:13px}.section-head h2{font-size:23px;max-width:none}.section-head p{font-size:12px;max-width:none;margin-top:6px}.day-switch{display:flex;width:100%;background:#ecefe4;padding:4px}.day-switch button{flex:1;min-height:40px;font-size:13px;padding:8px 13px;border-radius:6px}.chips{flex-wrap:nowrap;overflow:auto;scrollbar-width:none;padding:2px 0 4px;margin-bottom:16px;gap:7px}.chips::-webkit-scrollbar{display:none}.chips button{flex-shrink:0;font-size:12px;min-height:40px;padding:9px 13px}
.board-label{font-size:9px;padding-bottom:12px}.schedule-row{grid-template-columns:47px minmax(0,1fr) 65px;gap:11px;padding:17px 13px;align-items:start;border-radius:12px;margin-bottom:13px}.schedule-time{grid-column:1;grid-row:1;font-size:17px;padding-top:1px}.schedule-time span{font-size:8px;margin-top:5px}.activity-thumbnail{grid-column:3;grid-row:1;height:79px;width:65px;margin-top:1px}.activity-content{grid-column:2;grid-row:1;min-width:0}.activity-title h3{font-size:15px;line-height:1.3;letter-spacing:-.3px}.activity-location{font-size:11px;line-height:1.5;gap:3px;margin-top:7px}.activity-location .icon{width:12px;height:12px}.activity-location span{margin:0 1px}.activity-actions{display:flex;flex-wrap:nowrap;gap:7px;align-items:center;margin-top:13px}.activity-actions>.btn:first-child{flex:1;min-height:44px;font-size:12px;padding:10px 9px;white-space:nowrap}.activity-actions .btn.reminder{flex:0 0 40px;height:44px;min-height:44px;width:40px;padding:10px;font-size:0;background:#f2f5eb;color:#6b8d7e;border:1px solid #e6ecdc;border-radius:7px;gap:0}.activity-actions .btn.reminder .icon{width:18px;height:18px}.activity-actions .btn.reminder.is-set{background:#d8eee2;color:#177963;border-color:#bcdccb}.programme-footnote{font-size:11px;line-height:1.6;margin-top:17px}.programme-footnote .icon{width:16px;height:16px;margin-top:1px}
.tonight-top{font-size:11px}.tonight-time{font-size:13px}.tonight h2{font-size:27px}.tonight p{font-size:13px}.tonight-ticket span{font-size:9px}.tonight-ticket strong{font-size:14px}.tonight .btn{min-height:46px;font-size:14px}.tonight small{font-size:11px}.box-title h3{font-size:16px}.mini-hours{padding:12px 0}.mini-hours strong{font-size:13px}.mini-hours span{font-size:13px}.text-button{font-size:13px;min-height:44px}.map-shortcut{min-height:78px}.map-shortcut strong{font-size:15px}.map-shortcut small{font-size:12px}.sidebar-note{font-size:11px;line-height:1.6}.footer{font-size:10px;line-height:1.7;margin-top:30px}.footer b{font-size:17px}
.game-body h3{font-size:22px}.game-body p{font-size:14px;line-height:1.65}.game-body .btn{font-size:15px;min-height:48px;width:100%}.game-body .status{font-size:11px}.game-kicker,.quiz-cover>span:last-child{font-size:10px}.info-message p{font-size:12px;line-height:1.65}.info-message strong{font-size:13px}.hours-item{padding:24px 0}.hours-item h3{font-size:17px}.hours-item strong{font-size:14px;line-height:1.7;display:block}.hours-item p{font-size:13px;line-height:1.65}.hours-icon{width:38px;height:38px}.status,.badge{font-size:11px}.map{height:430px}.map .pin{font-size:11px;min-height:44px;padding:9px 10px}.map-view>.section-head{gap:12px}
body[data-space=hotel] .topline{margin-bottom:21px}.topline h1{font-size:27px;line-height:1.2}.topline p{font-size:13px}.topline .eyebrow{font-size:11px}.stats{grid-template-columns:1fr;gap:9px}.stat{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:15px 17px;font-size:13px}.stat strong{font-size:25px;margin:0}.stat .muted{font-size:13px}.panel{padding:18px 15px}.panel h2{font-size:22px}.row{padding:19px 0;gap:13px}.row h3{font-size:16px;margin:9px 0 6px;line-height:1.35}.row .muted{font-size:13px}.row>.actions{width:100%;display:flex;gap:9px}.row>.actions .btn{flex:1;min-height:44px;font-size:13px;padding:10px 14px}.section-head:has(>.actions){margin-top:24px}.section-head>.actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:9px}.section-head>.actions .btn{font-size:13px;min-height:44px;padding:10px}.section-head>.actions .btn:first-child{grid-column:1/-1}.notice{font-size:12px;line-height:1.7;padding:15px}.panel>.actions{display:flex;gap:10px}.panel>.actions .btn{min-height:46px;font-size:13px;padding:11px 13px;flex-grow:1}
label{font-size:14px;line-height:1.5;margin:16px 0 8px}input,select{font-size:16px;min-height:46px;padding:11px 12px;border-radius:8px}.formgrid{display:block}#settingsForm>.btn{width:100%;min-height:48px;font-size:14px;margin-top:24px}.panel p{font-size:13px}dialog{width:100%;max-width:100%;max-height:92dvh;margin:auto 0 0;padding:24px 20px calc(24px + env(safe-area-inset-bottom,0px));border-radius:18px 18px 0 0;overflow-y:auto}dialog h2{font-size:24px;line-height:1.35}dialog .muted{font-size:14px}dialog .eyebrow{font-size:11px}dialog .answers{gap:10px;margin:22px 0}dialog .answers button{min-height:54px;font-size:16px;padding:16px}dialog .actions{display:flex;gap:10px}dialog .btn{min-height:48px;font-size:14px;padding:12px 16px}dialog .actions .btn{flex:1}.screen .answers button{min-height:54px;font-size:17px}body:has(.screen){padding-bottom:0}
}
@media(max-width:360px){.schedule-row{grid-template-columns:43px minmax(0,1fr);gap:10px}.activity-thumbnail{display:none}.activity-title h3{font-size:15px}.activity-actions>.btn:first-child{flex:0 1 auto;min-width:106px}.activity-actions .btn.reminder{width:44px;flex-basis:44px}.mobile-space-control{gap:6px}.mobile-space-control select{width:129px}.mobile-space-control>span{font-size:10px}.vacation-banner h2{font-size:21px}}
