@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap";
:root{--bg:#161321;--paper:#252033;--raised:#362d48;--ink:#fff5e7;--muted:#d4cadd;--border:#776783;--wine:#a83153;--wine-dark:#bf3d62;--parchment:#fff0cd;--gold:#f3c675;--green:#aff0d0;--radius:10px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:16px}*{box-sizing:border-box}body{background:radial-gradient(ellipse at 90% 0%, #46314d35, transparent 45%), var(--bg);color:var(--ink);margin:0;font:16px/1.65 DM Sans,Arial,sans-serif}body:before{content:"";pointer-events:none;opacity:.3;z-index:-1;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 600 600' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23f3c675'%3E%3Cpath d='M54 86l2-6 2 6 6 2-6 2-2 6-2-6-6-2zM510 400l2-5 2 5 5 2-5 2-2 5-2-5-5-2z'/%3E%3Ccircle cx='420' cy='62' r='1'/%3E%3Ccircle cx='100' cy='460' r='1'/%3E%3Ccircle cx='560' cy='218' r='1'/%3E%3C/g%3E%3C/svg%3E") 0 0/600px 600px;position:fixed;inset:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2{font-family:Cinzel,Georgia,serif;font-weight:600;line-height:1.4}h1{letter-spacing:-.6px;font-size:clamp(26px,3vw,35px)}h2{font-size:23px}h3{font-size:16px;font-weight:600}svg{flex-shrink:0}input,select,textarea{min-width:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}::selection{color:#fff;background:#81505d}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{clip-path:inset(50%);white-space:nowrap;background:var(--parchment);width:1px;height:1px;color:var(--bg);z-index:100;position:fixed;top:10px;left:15px;overflow:hidden}.skip-link:focus{clip-path:none;border-radius:6px;width:auto;height:auto;padding:12px;overflow:visible}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.site-header{background:#161321f5;border-bottom:1px solid #77678380;align-items:center;gap:24px;min-height:96px;padding:0 4%;display:flex}.brand{color:var(--parchment);flex-shrink:0;align-items:center;gap:12px;font:600 23px/1.2 Cinzel,Georgia,serif;display:flex}.brand small{color:var(--muted);margin-top:5px;font:12px/1.5 DM Sans,sans-serif;display:block}.brand-seal{width:39px;height:52px;color:var(--gold)}.tower-mark{width:100%;height:100%}.main-nav{justify-content:center;align-self:stretch;align-items:stretch;gap:9px;margin:0 auto;display:flex}.main-nav a{color:var(--muted);align-items:center;gap:8px;padding:0 14px;font-size:15px;display:flex;position:relative}.main-nav a:hover,.main-nav a.active{color:var(--parchment)}.main-nav a.active:after{content:"";background:var(--gold);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:14px;right:14px}.nav-count{min-width:18px;height:18px;color:var(--parchment);background:#3c2b43;border-radius:50%;place-items:center;font-size:10px;display:grid}.header-account{flex-shrink:0}.account-link{align-items:center;gap:10px;min-height:44px;font-size:13px;display:flex}.account-link .avatar{border:1px solid var(--gold);width:33px;height:33px;font-size:12px;box-shadow:0 0 0 3px #c5a37310}.main-content{flex:1;width:min(1080px,100% - 80px);margin:0 auto;padding:42px 0 52px}.footer{width:min(1080px,100% - 80px);color:var(--muted);border-top:1px solid #77678380;justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:23px 0;font-size:13px;display:flex}.footer a{align-items:center;gap:8px;min-height:36px;display:inline-flex}.footer a:hover{color:var(--parchment);text-decoration:underline}.site-error{margin:20px 4% 0}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.page-heading p{color:var(--muted);max-width:65ch;margin-top:8px}.eyebrow,.heading-dot{display:none}.button{text-align:center;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:12px 19px;font-size:15px;font-weight:600;line-height:1.4;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.button.primary{background:var(--wine);color:#fff8ee;border-color:#c56b7c60;box-shadow:inset 0 1px #ffffff12,0 3px #431c2e}.button.primary:hover{background:var(--wine-dark)}.button.secondary{background:var(--raised);border-color:var(--border);color:var(--ink)}.button.secondary:hover{border-color:var(--gold);background:#3a2b46}.button.parchment,.button.light{background:var(--parchment);color:#4e2532;border-color:#fff0d6;box-shadow:0 3px #341320,inset 0 0 0 3px #c5a37340}.button.parchment:hover,.button.light:hover{background:#fff0d2}.button.quiet{color:#c6e4cd;background:#2c3d35;border-color:#58745d}.button.danger{color:#ffd8dc;background:#4d2331;border-color:#90465b}.button.ghost{color:var(--muted);background:0 0}.button.ghost:hover{color:var(--ink);background:#ffffff06}.button.compact{min-height:44px;padding:10px 14px;font-size:14px}.button.full{width:100%}.icon-btn,.row-open{width:44px;height:44px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover,.row-open:hover{background:var(--raised);color:var(--parchment);border-color:var(--border)}.text-link{color:var(--parchment);align-items:center;gap:5px;min-height:30px;margin-top:10px;font-size:13px;display:inline-flex}.text-link:hover{text-decoration:underline}.lobby-heading{margin-bottom:28px}.lobby-heading h1{font-size:clamp(26px,3vw,34px)}.lobby-intro .lobby-kicker{color:var(--gold);align-items:center;gap:8px;margin:0 0 7px;font-size:13px;font-weight:600;display:flex}.lobby-intro .lobby-description{color:var(--muted);margin-top:10px;font-size:15px}.grimoire{isolation:isolate;background:#5f2337;border:1px solid #9c626580;border-radius:10px 20px 20px 10px;grid-template-columns:1.3fr 1fr;align-items:center;gap:24px;padding:37px 42px;display:grid;position:relative;box-shadow:0 7px #2b1626,0 8px #73505c,0 18px 38px #08040e50}.grimoire:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 20% 0,#a83d522b,#0000 65%);border:1px solid #c5a37340;border-radius:5px 13px 13px 5px;position:absolute;inset:7px}.grimoire:after{content:"";pointer-events:none;background:#31132670;width:1px;position:absolute;inset:8px auto 8px 18px;box-shadow:2px 0 #d694771c}.next-label{color:#ead2ac;align-items:center;gap:9px;margin-bottom:23px;font-size:12px;display:flex}.next-label span{background:var(--gold);width:7px;height:7px;transform:rotate(45deg)}.hero-date{color:#f1d8c4;text-transform:capitalize;margin-bottom:12px;font-size:15px}.hero-date span{color:#d6aeb3;text-transform:none;margin-left:12px}.grimoire h2{color:#fff1d9;text-wrap:balance;max-width:16ch;font-size:clamp(27px,3.1vw,39px);line-height:1.26}.hero-script{color:#e4c7ce;flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px;font-size:13px;display:flex}.hero-script>svg{color:#d8af85}.hero-location{color:#e0bdc7;align-items:center;gap:7px;margin-top:13px;font-size:13px;display:flex}.hero-action{flex-wrap:wrap;align-items:center;gap:20px;margin-top:30px;display:flex}.hero-action .button{padding:13px 21px}.seat-state{color:#edd4c1;align-items:center;gap:6px;font-size:12px;display:inline-flex}.grimoire-table{justify-content:center;align-items:center;display:flex}.village-circle{aspect-ratio:1;width:min(100%,310px);color:var(--gold);position:relative}.village-orbit{border:1px solid #c5a3735e;border-radius:50%;position:absolute;inset:7%}.village-orbit:before{content:"";border:1px dashed #c5a37328;border-radius:50%;position:absolute;inset:16px}.village-center{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:17%}.village-center .tower-mark{width:100px;height:120px}.village-center>span{color:var(--parchment);margin-top:6px;font-family:Cinzel,Georgia,serif;font-size:25px;line-height:1.4}.village-center i{color:#c7a4a1;font-size:17px;font-style:normal}.village-center small{color:#d8b7b1;font-size:10px}.village-token{aspect-ratio:1;border-radius:50%;place-items:center;width:35px;display:grid;position:absolute;transform:translate(-50%,-50%)}.village-token.taken{color:#733242;background:#e6d8bd;border:1px solid #f8ecd3;box-shadow:inset 0 0 0 3px #92764b38,0 3px #371322,0 4px 8px #200b2240}.village-token.empty{color:#d7bb89;background:#4a2034;border:1px dashed #d7bb8999;font-size:19px;font-weight:400}.token-person{background:currentColor;border-radius:8px 8px 3px 3px;width:14px;height:9px;margin-top:9px;position:relative}.token-person:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;position:absolute;top:-8px;left:3.5px}.upcoming-section{margin-top:35px}.list-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px;display:flex}.list-heading h2{font-size:20px}.list-filter select{min-height:44px;color:var(--ink);border:1px solid var(--border);background:var(--paper);border-radius:8px;max-width:100%;padding:8px 12px;font-size:14px}.list-filter option{background:var(--paper);color:var(--ink)}.session-list,.session-grid{flex-direction:column;display:flex}.session-row{border-bottom:1px solid #44344e99;align-items:center;gap:20px;padding:18px 5px;display:flex}.session-row:last-child{border-bottom:0}.date-tile{background:var(--parchment);color:#392338;border:1px solid #fff6e2;border-radius:9px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:58px;height:68px;display:flex;box-shadow:0 3px #0c0918}.date-tile strong{font:500 25px/1.15 Cinzel,Georgia,serif}.date-tile span{color:#54344b;font-size:13px}.session-row-copy{flex:1;min-width:0}.session-row h2{font-size:19px}.session-row h2 a:hover{color:var(--parchment);text-underline-offset:4px;text-decoration:underline}.row-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:10px;font-size:14px;display:flex}.row-meta>span{align-items:center;gap:6px;display:inline-flex}.row-script svg{color:var(--gold)}.row-state{color:var(--green);align-items:center;gap:6px;font-size:13px;display:inline-flex}.row-state.active{color:#d4bbec}.row-state.full{color:var(--muted)}.row-open{color:var(--gold)}.offer-banner{border:1px solid var(--gold);background:#3e2a2f;border-radius:6px;align-items:center;gap:12px;margin-bottom:24px;padding:15px 20px;font-size:14px;display:flex}.offer-banner>span:last-child{color:var(--parchment);margin-left:auto;text-decoration:underline}.stack{flex-direction:column;gap:18px;display:flex}.muted{color:var(--muted);font-size:14px;line-height:1.8}.panel{background:var(--paper);border:1px solid var(--border);border-radius:var(--radius);padding:27px}.panel h2{font-size:21px}.panel-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:17px;display:flex}.panel-heading h2{align-items:center;gap:10px;display:flex}.dialog{background:var(--paper);width:calc(100% - 32px);max-width:470px;max-height:90dvh;color:var(--ink);border:1px solid #816873;border-radius:12px;padding:28px;box-shadow:0 30px 100px #0009}.dialog.wide{max-width:710px}.dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f081bd9}.dialog-heading{justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.dialog-heading h2{font-size:23px}.field{color:var(--ink);flex-direction:column;gap:7px;font-size:15px;font-weight:500;display:flex}.field-note{color:var(--muted);font-size:14px;font-weight:400}.field input,.field textarea,.field select{width:100%;color:var(--ink);background:#1b1423;border:1px solid #604b69;border-radius:5px;padding:11px 12px;font-size:16px;line-height:1.5}.field input::placeholder,.field textarea::placeholder{color:#c4b5cf}.field textarea{resize:vertical}.check-field{color:var(--muted);cursor:pointer;align-items:center;gap:10px;min-height:44px;font-size:14px;display:flex}.check-field input{accent-color:var(--wine);width:18px;height:18px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid.three{grid-template-columns:repeat(3,1fr)}.button-row{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.honey{height:0;position:absolute;left:-10000px;overflow:hidden}.auth-emblem,.invite-icon{width:65px;height:65px;color:var(--gold);background:#38283c;border:1px solid #6a5054;border-radius:50%;place-items:center;margin:0 auto;display:grid}.auth-form>.muted{text-align:center}.security-note{color:var(--muted);align-items:flex-start;gap:8px;font-size:12px;line-height:1.7;display:flex}.security-note svg{margin-top:2px}.otp-input{text-align:center;letter-spacing:10px;font-variant-numeric:tabular-nums;font-size:30px!important}.local-hint{color:#c4afc5;background:#342536;border-radius:5px;padding:13px;font-size:12px;line-height:1.8}.local-hint a{text-decoration:underline}.local-hint strong{display:block}.alert{color:#d0e0c8;background:#28372f;border:1px solid #506752;border-radius:6px;padding:13px 16px;font-size:14px}.alert.error{color:#ffdae0;background:#472534;border-color:#985769}.alert.info{color:#d6c5e7;background:#30253d;border-color:#60456f}.empty-state{text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:8px;flex-direction:column;align-items:center;gap:16px;padding:45px 24px;display:flex}.empty-state>svg{color:var(--gold)}.empty-state h2{color:var(--ink)}.empty-state p{max-width:50ch;font-size:14px}.compact-empty{padding:22px}.borderless{border:0}.avatar{color:#633643;background:#ddc4ca;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:12px;font-weight:600;display:inline-flex}.avatar.small{width:30px;height:30px;font-size:10px}.color-rose{color:#593443;background:#d6b8c1}.color-blue{color:#2f495a;background:#b9cbd3}.color-sage{color:#354d3d;background:#c2cec0}.color-ochre{color:#5f482a;background:#e2cfb4}.color-lilac{color:#4e3b61;background:#c9c0d7}.avatar-group{display:flex}.avatar-group .avatar{border:2px solid var(--paper);margin-left:-6px}.avatar-group .avatar:first-child{margin-left:0}.avatar.more{color:var(--ink);background:#594260}.anonymous-participants{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.badge,.script-tag{color:#f0def7;background:#33243d;border:1px solid #9a80a4;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;line-height:1.5;display:inline-flex}.badge.green{color:#bdd5bd;background:#26372e;border-color:#445f4c}.badge.red{color:#f3bac7;background:#4c2634;border-color:#8a495c}.back-link{color:var(--muted);align-items:center;gap:5px;min-height:44px;margin:-12px 0 16px;font-size:13px;display:inline-flex}.back-link:hover{color:var(--parchment)}.detail-heading{margin-bottom:26px}.detail-heading h1{font-size:36px}.detail-when{color:var(--muted);flex-wrap:wrap;gap:12px 24px;margin-top:22px;font-size:14px;display:flex}.detail-when>span{align-items:center;gap:8px;display:inline-flex}.detail-when svg{color:var(--gold)}.programme{padding-top:0}.storyteller{color:var(--gold);margin-top:20px;font-size:13px}.disclosure .count-pill{margin-left:auto}.detail-badges{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.detail-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:32px;display:grid}.info-grid{background:var(--paper);border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr 1fr;gap:23px;padding:25px;display:grid}.info-grid>div{gap:12px;display:flex}.info-grid svg{color:var(--gold);width:19px;height:19px;margin-top:4px}.info-grid span{color:var(--muted);font-size:12px}.info-grid strong{color:var(--ink);margin-top:4px;font-size:14px;font-weight:500;display:block}.content-panel{border-bottom:1px solid var(--border);padding:24px 0}.content-panel h2{margin-bottom:15px;font-size:21px}.prose p{color:var(--muted);max-width:70ch;margin-bottom:13px;font-size:14px;line-height:1.9}.prose p:last-child{margin-bottom:0}.disclosure{border-bottom:1px solid var(--border)}.disclosure>summary{cursor:pointer;min-height:52px;color:var(--ink);justify-content:space-between;align-items:center;gap:15px;padding:21px 0;font-size:15px;list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:after{content:"+";color:var(--gold);font-size:20px}.disclosure[open]>summary:after{content:"−"}.disclosure>div{padding-bottom:23px}.disclosure .participant-list{padding-top:4px}.participant-list{grid-template-columns:repeat(3,1fr);gap:16px 12px;display:grid}.participant-list>div{align-items:center;gap:9px;font-size:13px;display:flex}.count-pill{color:var(--gold);margin-left:7px;font-size:13px}.booking-panel{background:#2f1c2b;border:1px solid #81535f;border-radius:10px;position:sticky;top:24px;overflow:hidden}.booking-panel-top{background:#532136;border-bottom:1px solid #81535f;padding:24px}.booking-panel-top h2{color:var(--parchment);font-size:25px}.booking-panel-top p{color:#dcc0c6;margin-top:10px;font-size:12px}.booking-panel>.stack{padding:22px}.booking-status{color:#c5dec4;background:#2d3f34;border-radius:5px;align-items:center;gap:8px;padding:11px 13px;font-size:14px;display:flex}.booking-status.pending,.booking-status.waitlisted,.booking-status.offered{color:#ead0ec;background:#463747}.address-box{border:1px solid var(--border);color:var(--gold);border-radius:6px;align-items:flex-start;gap:9px;padding:15px;display:flex}.address-box p{color:var(--ink);white-space:pre-wrap;margin-top:6px;font-size:14px;line-height:1.8}.address-box strong{font-size:12px}.booking-panel .security-note{font-size:11px}.booking-panel .disclosure>summary{padding:7px 0;font-size:12px}.booking-panel .disclosure .muted{font-size:12px}.notices h2{font-size:19px}.notice{border-bottom:1px solid var(--border);padding:16px 0}.notice:last-child{border-bottom:0}.notice h3{margin:5px 0;font-size:14px}.notice p{color:var(--muted);font-size:14px;line-height:1.8}.notice small{color:var(--muted);font-size:13px}.notice.unread h3:before{content:"";background:var(--gold);border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.participation-grid .session-row{flex-wrap:wrap;gap:14px}.participation-grid .row-state{margin-left:67px}.participation-grid .row-open{margin-left:auto}.invitation-layout{max-width:700px;margin:0 auto}.invitation-main{text-align:center;padding:36px}.invitation-main h2{max-width:25ch;margin:22px auto 0;font-size:26px}.invitation-main>.muted{max-width:47ch;margin:14px auto 23px}.invitation-main .stack>.button{align-self:center}.share-link{text-align:left;border:1px solid var(--border);background:#1b1423;border-radius:7px;padding:16px}.share-link .button{margin-top:12px}.invitation-rules{text-align:left;margin-top:20px}.invitation-rules p{color:var(--muted);font-size:13px}.invitation-rules p+p{margin-top:10px}.invitation-history{max-width:700px;margin:27px auto 0}.invitation-history h2{margin-bottom:15px}.invitation-row{border-top:1px solid var(--border);color:var(--muted);align-items:center;gap:14px;padding:13px 0;font-size:13px;display:flex}.invitation-row>span:first-child{flex:1;align-items:center;gap:10px;display:flex}.centered-panel{text-align:center;flex-direction:column;align-items:center;gap:22px;max-width:560px;margin:25px auto;display:flex}.centered-panel .auth-form{text-align:left;width:100%}.centered-panel>p{color:var(--muted);font-size:14px}.profile-layout{grid-template-columns:minmax(0,1fr) 300px;gap:28px;display:grid}.profile-preview{align-items:center;gap:18px;display:flex}.profile-preview .avatar{width:64px;height:64px;font-size:22px}.profile-preview h2{margin-bottom:7px}.color-options{border:0;gap:12px;margin:0;padding:0;display:flex}.color-options legend{color:var(--muted);margin-bottom:12px;font-size:14px}.color-option{cursor:pointer;border-radius:50%;place-items:center;width:36px;height:36px;display:inline-grid;position:relative}.color-option input{opacity:0;cursor:pointer;position:absolute;inset:0}.color-option:has(input:checked){outline:2px solid var(--gold);outline-offset:3px}.color-option:has(input:focus-visible){outline:3px solid var(--parchment);outline-offset:4px}.account-note{align-self:start}.account-note>svg{color:var(--gold);margin-bottom:20px}.account-note h2{font-size:21px}.account-note p{color:var(--muted);margin:15px 0;font-size:14px}.account-note .button{width:100%;margin-top:8px}.my-games{max-width:850px;margin:0 auto}.my-games .notices{margin-top:30px}.admin-heading{align-items:center}.admin-stats{flex-wrap:wrap;gap:24px;margin:-5px 0 26px;display:flex}.admin-stats>div{color:var(--muted);align-items:center;gap:10px;display:flex}.admin-stats svg{width:18px;color:var(--gold)}.admin-stats span{font-size:14px}.admin-stats strong{color:var(--parchment);margin-right:7px;font-size:16px}.session-tabs{border-bottom:1px solid var(--border);gap:26px;margin-bottom:24px;display:flex}.session-tabs button{min-height:44px;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;padding:0 0 12px;font-size:14px}.session-tabs button.selected{color:var(--parchment);border-color:var(--gold)}.admin-session-list{flex-direction:column;gap:12px;display:flex}.admin-session-row{border:1px solid var(--border);background:var(--paper);border-radius:8px;align-items:center;gap:18px;padding:20px;display:flex}.admin-session-name{flex:1;min-width:150px}.admin-session-name h2{font-size:18px}.admin-session-name p{color:var(--muted);margin-top:6px;font-size:14px}.row-actions{align-items:center;gap:7px;display:flex}.request-row,.member-row{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:17px 0;display:flex}.request-row:last-child,.member-row:last-child{border-bottom:0}.request-row>div:nth-child(2),.member-row>div:nth-child(2){flex:1}.request-row h3,.member-row h3{font-size:15px}.request-row p,.member-row p{color:var(--muted);font-size:13px}.request-row small{color:var(--gold);font-size:11px}.session-form{gap:17px}@media (min-width:1400px){.site-header{padding-inline:max(4%,50% - 600px)}}@media (max-width:1050px){.site-header{gap:12px;padding-inline:25px}.main-nav{gap:0}.main-nav a{padding-inline:10px;font-size:13px}.main-nav a.active:after{left:10px;right:10px}.account-link>span:last-child{display:none}.grimoire{gap:15px;padding:32px}.village-circle{max-width:285px}.village-token{width:31px}.hero-script{gap:8px}.hero-action{gap:12px}.admin-session-row{flex-wrap:wrap}.admin-session-row .row-actions{margin-left:auto}}@media (max-width:780px){.site-header{grid-template-columns:1fr auto;gap:8px;padding:15px 22px 0;display:grid}.brand{gap:9px;font-size:23px}.brand-seal{width:31px;height:43px}.brand small{font-size:12px}.header-account{grid-area:1/2}.main-nav{grid-column:1/-1;justify-content:space-between;gap:5px;margin:0}.main-nav a{gap:7px;min-height:52px;padding:8px 7px;font-size:13px}.main-content{width:calc(100% - 40px);padding-top:28px}.footer{flex-wrap:wrap;width:calc(100% - 40px);font-size:13px}.footer>span{flex-basis:100%;order:3}.lobby-heading h1{font-size:24px}.lobby-heading .button{padding:8px;font-size:12px}.grimoire{grid-template-columns:1fr 210px;gap:10px;padding:28px}.grimoire h2{font-size:28px}.next-label{margin-bottom:16px}.hero-date{font-size:13px}.hero-date span{margin:1px 0 0;display:block}.hero-script{margin-top:17px}.village-center .tower-mark{width:70px;height:85px}.village-center>span{font-size:21px}.village-center small{font-size:9px}.village-token{width:27px}.village-center{inset:20%}.token-person{transform:scale(.8)}.hero-action{margin-top:22px}.detail-grid,.profile-layout{grid-template-columns:1fr;gap:24px}.booking-panel{position:static}.detail-main{order:2}.detail-heading h1{font-size:30px}.booking-panel{order:1}.profile-layout .account-note{max-width:none}.panel{padding:23px}.participation-grid .row-state{margin-left:0}.request-row,.member-row{flex-wrap:wrap}.request-row .row-actions{margin-left:auto}.admin-session-row>.badge{margin-left:71px}.admin-stats{gap:14px}}@media (max-width:540px){.brand{gap:8px;font-size:20px}.brand small{font-size:11px}.site-header{padding-inline:17px}.main-nav a{gap:5px;padding-inline:3px;font-size:13px}.main-nav a>svg{width:15px}.nav-count{display:none}.main-content{width:calc(100% - 32px);padding:25px 0 32px}.page-heading{align-items:flex-start;gap:12px}.page-heading>.button{flex-shrink:0}.lobby-heading{align-items:center;margin-bottom:19px}.lobby-heading h1{font-size:24px}.lobby-intro .lobby-description{font-size:14px}.lobby-heading .button{border-color:var(--border);gap:0;min-height:44px;padding:10px;font-size:0}.lobby-heading .button svg{width:18px}.grimoire{grid-template-columns:minmax(0,1fr);gap:0;padding:25px}.grimoire-copy{z-index:1;position:relative}.grimoire h2{max-width:14ch;font-size:31px}.next-label{margin-bottom:17px}.hero-date{font-size:14px}.hero-date span{margin-left:8px;display:inline}.hero-script,.hero-location{max-width:95%}.hero-action{flex-wrap:nowrap;gap:14px;margin-top:24px}.hero-action .button{padding:13px 15px;font-size:13px}.seat-state{font-size:11px}.grimoire-table{display:none}.grimoire:before{background:radial-gradient(at 85% 5%,#a83d5236,#0000 60%)}.upcoming-section{margin-top:29px}.list-heading{gap:8px}.list-heading h2{font-size:19px}.list-filter{max-width:48%}.list-filter select{padding-inline:9px;font-size:13px}.session-row{flex-wrap:wrap;gap:12px;padding:17px 0;position:relative}.date-tile{width:48px;height:62px}.date-tile strong{font-size:23px}.session-row-copy{flex-basis:calc(100% - 57px);padding-right:35px}.session-row h2{font-size:17px}.row-meta{gap:8px 10px;margin-top:8px;font-size:13px}.row-script svg{display:none}.row-state{margin-top:0;margin-left:60px;font-size:13px}.row-open{width:40px;position:absolute;top:25px;right:-6px}.footer{gap:4px 15px;width:calc(100% - 32px);padding-top:15px}.offer-banner{flex-wrap:wrap;padding:14px;font-size:12px}.offer-banner>span:first-of-type{flex:1}.offer-banner>span:last-child{margin-left:30px}.dialog{padding:22px}.dialog-heading h2{font-size:21px}.form-grid,.form-grid.three{grid-template-columns:1fr}.button-row{flex-direction:column}.button-row .button{width:100%}.info-grid{grid-template-columns:1fr;gap:20px;padding:20px}.detail-heading h1{font-size:29px}.participant-list{grid-template-columns:1fr 1fr}.booking-panel-top{padding:22px}.participation-grid .row-state{margin-left:57px}.invitation-main{padding:26px 20px}.invitation-main h2{font-size:23px}.invitation-row{flex-wrap:wrap;font-size:12px}.invitation-row .badge{font-size:10px}.invitation-history h2{font-size:20px}.admin-stats svg{display:none}.admin-stats span{font-size:13px}.admin-stats{gap:10px 18px}.admin-session-row{gap:12px;padding:16px}.admin-session-name h2{font-size:17px}.admin-session-row>.badge{margin-left:57px}.admin-session-row .row-actions{justify-content:flex-end;width:100%}.session-tabs{gap:20px}.session-tabs button{font-size:12px}.member-row .badge{margin-left:auto}.page-heading h1{overflow-wrap:anywhere}}.session-table{isolation:isolate;background:radial-gradient(at 90% 20%,#81344955,#0000 65%),#512235;border:1px solid #9c626580;border-radius:10px 20px 20px 10px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:35px;padding:35px 45px;display:grid;position:relative;box-shadow:0 6px #2b1626,0 7px #73505c,0 16px 35px #08040e40}.session-table:before{content:"";pointer-events:none;z-index:-1;border:1px solid #c5a37333;border-radius:5px 13px 13px 5px;position:absolute;inset:7px}.table-eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.08em;margin-bottom:15px;font-size:12px;font-weight:600}.session-table h2{color:var(--parchment);text-wrap:balance;font-size:clamp(24px,2.8vw,32px);line-height:1.3}.session-table h3{color:var(--parchment);text-wrap:balance;font:600 clamp(26px,2.8vw,34px)/1.4 Cinzel,Georgia,serif}.table-hint{color:var(--ink);max-width:36ch;margin-top:15px;font-size:16px;line-height:1.7}.table-note{color:#f0dce7;max-width:42ch;margin-top:12px;font-size:14px;line-height:1.7}.session-table-copy>.button,.session-table-copy>.alert{margin-top:20px}.table-rendezvous{color:var(--gold);background:#231b2e;border:1px solid #b18baf;border-radius:10px;align-items:flex-start;gap:10px;margin-top:20px;padding:15px;display:flex}.table-rendezvous svg{flex-shrink:0;margin-top:3px}.table-rendezvous p{color:var(--ink);white-space:pre-wrap;font-size:15px;line-height:1.7}.table-actions{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.table-actions .text-link{min-height:44px;color:var(--parchment);background:#241b30;border:1px solid #a186a4;border-radius:8px;margin:0;padding:8px 12px;font-size:14px}.table-actions .text-link:hover{border-color:var(--gold);background:#392c44}.session-table-board{flex-direction:column;align-items:center;gap:23px;padding:6px;display:flex}.booking-circle{width:min(100%,420px);max-width:none}.booking-circle .village-center{inset:22%}.booking-circle .village-center .tower-mark{width:105px;height:140px}.booking-circle .village-center>span{font-size:32px;font-weight:600}.booking-circle .village-center i{color:#f5d9c6}.booking-circle .village-center small{color:#f0dce7;font-size:13px}.booking-circle .tower-mark{filter:drop-shadow(0 0 12px #f3c67522)}.booking-circle .village-orbit{border:2px solid #f3c67580;box-shadow:0 0 35px #f3c6750c}.booking-circle .village-orbit:before{border-color:#f3c67550}.booking-circle .village-token{width:48px;padding:0;font-size:26px;transition:background .18s,box-shadow .18s,scale .18s}.booking-circle .village-token.taken{color:#49273c;background:#fff0cd;border:2px solid #fff9e9;box-shadow:inset 0 0 0 3px #d4a94d55,0 4px #130f20,0 5px 12px #130f2050}.booking-circle .village-token.empty{color:var(--gold);background:#241a31;border:2px dashed #f3c675}.token-initials{font-size:14px;font-weight:700;line-height:1}.token-name{text-overflow:ellipsis;white-space:nowrap;text-align:center;width:78px;color:var(--ink);pointer-events:none;font-size:12px;font-weight:500;line-height:1.35;position:absolute;top:calc(100% + 6px);overflow:hidden}.booking-circle .village-token.is-mine{color:#372339;background:#f3c675;border-color:#fff0cd;box-shadow:inset 0 0 0 3px #a3733355,0 0 0 5px #f3c67530,0 4px #130f20}.is-mine .token-name{color:var(--gold);font-weight:700}.token-storyteller{color:#f7d69e;pointer-events:none;background:#352526;border:1px solid #e7c78f;border-radius:50%;place-items:center;width:19px;height:19px;display:grid;position:absolute;top:-4px;right:-4px}.participant-name{align-items:center;gap:7px;display:flex}.participant-name>svg{color:var(--gold);flex-shrink:0}.booking-circle button.empty:hover:not(:disabled){color:#392338;background:#fff0cd;border-style:solid;border-color:#fff9e9;scale:1.1;box-shadow:0 0 0 7px #f3c67530,0 5px #130f20}.booking-circle button:active:not(:disabled){scale:.96}.booking-circle button.is-mine:hover:not(:disabled){background:#f5d499;box-shadow:0 0 0 5px #e0af5440}.booking-circle button:focus-visible{outline-offset:5px;outline:3px solid #fff2d7}.booking-circle button:disabled{opacity:.55;cursor:wait}.booking-circle[aria-busy=true] .village-center{opacity:.6}.circle-legend{color:#f0dce7;flex-wrap:wrap;justify-content:center;gap:10px 20px;font-size:13px;display:flex}.circle-legend>span{align-items:center;gap:6px;display:inline-flex}.legend-token{background:#fff0cd;border-radius:50%;width:14px;height:14px}.legend-token.mine{background:#f3c675}.legend-token.free{color:#f3c675;background:#241a31;border:1px dashed #f3c675;place-items:center;font-size:12px;font-style:normal;line-height:1;display:grid}.circle-roster{border-top:1px solid #a186a4;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;width:100%;margin:0;padding:16px 0 0;list-style:none;display:grid}.circle-roster.narrow-roster{display:none}.circle-roster li{min-width:0;color:var(--ink);align-items:center;gap:8px;font-size:14px;display:flex}.circle-roster li>span:nth-child(2){overflow-wrap:anywhere;min-width:0}.circle-roster small{font-size:inherit;color:var(--gold)}.circle-roster svg{color:var(--gold)}.dense-circle .token-name{display:none}.session-help{max-width:760px;margin:30px auto 0}.session-help .disclosure>summary{color:var(--muted);padding:16px 0;font-size:15px}.session-help .disclosure>div{font-size:14px}@media (max-width:900px){.session-table{gap:20px;padding:30px}.booking-circle .village-token{width:42px}.booking-circle .village-center .tower-mark{width:83px;height:110px}.token-name{width:66px;font-size:11px}}@media (max-width:680px){.session-table{grid-template-columns:minmax(0,1fr);gap:24px;padding:26px 22px}.session-table h2{font-size:26px}.table-eyebrow{margin-bottom:10px}.table-hint{max-width:none;margin-top:10px;font-size:16px}.table-note{max-width:none;margin-top:8px}.session-table-board{gap:22px;padding:0 4px}.booking-circle{width:min(100%,350px)}.booking-circle .village-token{width:44px}.booking-circle.dense-circle .village-token{width:38px}.booking-circle .village-center>span{font-size:28px}.booking-circle .village-center small{font-size:12px}.detail-when{gap:10px 17px;margin-top:16px;font-size:13px}.session-help{margin-top:22px}}@media (max-width:360px){.session-table{padding-inline:17px}.booking-circle .village-token{width:39px}.booking-circle.dense-circle .village-token{width:30px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.session-list{gap:16px}.session-accordion{--script-accent:#ffd0a5;--script-bg:#3d2633;border:1px solid var(--border);border-top:3px solid var(--script-accent);background:#252033;border-radius:14px;scroll-margin-top:24px;box-shadow:0 4px #0d0a17}.session-accordion[data-script="Bad Moon Rising"]{--script-accent:#dfcfff;--script-bg:#322647}.session-accordion[data-script="Sects & Violets"]{--script-accent:#aff0d0;--script-bg:#243932}.session-accordion.is-expanded{border-color:#b492b4;border-top-color:var(--script-accent);background:radial-gradient(at 90% 20%,#73335445,#0000 65%),#422039;box-shadow:0 5px #211528,0 6px #896d89}.session-accordion.is-next{margin-bottom:8px}.session-summary{font-size:19px}.session-toggle{text-align:left;background:0 0;border:0;border-radius:11px 11px 0 0;width:100%;padding:22px 24px;transition:background .18s}.session-toggle:hover{background:#fff0cd0a}.session-toggle:focus-visible{outline-offset:3px}.session-toggle .next-label{color:var(--gold);margin-bottom:7px;font:600 13px/1.5 DM Sans,sans-serif}.session-toggle .session-title{color:var(--ink);font:700 22px/1.4 DM Sans,Arial,sans-serif;display:block}.session-toggle .row-meta,.session-toggle .row-state,.session-toggle .date-tile span{font-family:DM Sans,sans-serif}.session-toggle .row-script{border:1px solid var(--script-accent);color:var(--script-accent);background:var(--script-bg);border-radius:6px;padding:3px 9px;font-weight:500}.session-toggle .row-script svg{color:inherit}.session-toggle .row-seats{background:var(--parchment);color:#392338;white-space:nowrap;font-variant-numeric:tabular-nums;border:1px solid #fff9e9;border-radius:6px;padding:3px 9px;font-weight:700}.session-toggle .row-state{color:#c5f7db;background:#20382e;border:1px solid #80b79b;border-radius:20px;flex-shrink:0;padding:6px 10px;font-size:14px;font-weight:600;line-height:1.4}.session-toggle .row-state-confirmed{color:#c5f7db}.session-toggle .row-state-pending,.session-toggle .row-state-waitlisted,.session-toggle .row-state-offered{color:#ffe3a2;background:#3f3020;border-color:#d7b771}.session-toggle .row-state-cancelled{color:#ffd7e0;background:#4a263b;border-color:#cb8fa2}.session-chevron{color:var(--gold);transition:transform .18s}.session-toggle[aria-expanded=true] .session-chevron{transform:rotate(180deg)}.session-accordion.is-expanded .session-summary{border-bottom:1px solid #b492b4}.session-practical{color:#f0dce7;margin-top:0;padding:20px 28px 0;font-size:15px}.session-accordion-body .session-table{box-shadow:none;background:0 0;border:0;border-radius:0;padding:25px 28px 30px}.session-accordion-body .session-table:before{display:none}.session-accordion-body .session-help{max-width:none;margin:0;padding:0 28px 22px}.session-accordion-body .session-help .disclosure{border-top:1px solid #b492b4;border-bottom:0}.session-accordion-body .session-help .disclosure>summary{color:#f0dce7}.session-accordion-body .session-help .disclosure>div{padding-bottom:0}@media (max-width:680px){.session-toggle{flex-wrap:wrap;gap:12px;padding:18px 16px;position:relative}.session-toggle .session-row-copy{flex-basis:calc(100% - 70px);padding-right:20px}.session-toggle .session-title{font-size:20px}.session-toggle .row-state{margin-top:0;margin-left:70px;font-size:13px}.session-chevron{position:absolute;top:37px;right:16px}.session-practical{gap:10px 16px;padding:18px 18px 0;font-size:14px}.session-accordion-body .session-table{padding:22px 18px 26px}.session-table h3{font-size:27px}.session-accordion-body .session-help{padding:0 18px 16px}}@media (max-width:540px){.session-toggle{align-items:flex-start}.session-toggle .date-tile{margin-top:3px}.session-toggle .session-row-copy{flex-basis:calc(100% - 60px);padding-right:10px}.session-toggle .row-state{margin-left:60px}.session-toggle .row-meta{font-size:13px}.session-toggle .row-script{padding:3px 7px}.session-toggle .row-script svg{width:13px;display:block}.session-toggle .next-label{font-size:12px}}@media (max-width:360px){.brand{font-size:18px}.main-nav a{font-size:13px}.main-nav a>svg{display:none}.list-heading{flex-wrap:wrap}.list-filter{max-width:100%}.session-toggle .session-title{font-size:19px}.booking-circle .village-center .tower-mark{width:55px;height:72px}.booking-circle .village-center>span{font-size:25px}.booking-circle .village-center small{font-size:11px}.booking-circle .token-name{display:none}.circle-roster.narrow-roster{display:grid}}
