/* Clearer reading and motion shared by all event tabs. Entrance stays independent. */
@font-face{font-family:'Orbitron';src:url('assets/orbitron-variable.ttf') format('truetype');font-style:normal;font-weight:400 900;font-display:swap}
#party-app{--reading-muted:#dfcde6}
#party-app .desktop-nav button{font-size:16px;font-weight:500}
#party-app .header-actions button{font-size:14px}
#party-app .pc-label,#party-app .eyebrow,#party-app .pc-page-heading .pc-label,
#party-app .pc-dj-card .pc-label,#party-app .location-top .eyebrow{font-size:12px;color:#e0c8eb;letter-spacing:.8px}
#party-app .pc-cover p,#party-app .pc-cover-bottom>span{font-size:16px;line-height:1.7}
#party-app .pc-cover h1{font-size:58px!important}
#party-app .pc-cover .pc-cover-access{font-size:15px;color:#ffc0c7;font-weight:600;gap:10px}
#party-app .pc-clock-top>span:last-child{font-size:12px;color:#d5c0df}
#party-app .pc-ticket-head h2{font-size:21px!important}
#party-app .pc-condition,#party-app .pc-tickets-page-grid .pc-condition{font-size:16px;line-height:1.75;color:#e2d0e9}
#party-app .pc-condition strong{color:var(--pc-accent);font-weight:700}
#party-app .pc-cover p strong{color:#ffd2ac;font-weight:600}
#party-app .pc-ticket-stock>span,#party-app .pc-tickets-page-grid .pc-ticket-stock>span{font-size:15px;color:#ead9ee}
#party-app .pc-ticket-stock>strong{font-size:44px;text-shadow:0 0 20px #d181411c}
#party-app .pc-tickets-page-grid .pc-ticket-stock>strong{font-size:52px}
#party-app .pc-ticket .pc-ticket-button{font-size:16px;min-height:52px;font-weight:600}
#party-app .pc-shortcut strong{font-size:18px;color:#fff0f6}
#party-app .pc-shortcut small{font-size:15px;color:#dfc8e8}
#party-app .pc-section-head h2{font-size:18px!important}
#party-app .pc-section-head>span{font-size:14px;color:#d5bedf}
#party-app .pc-detail summary strong{font-size:17px;font-weight:600;color:#f8eafa}
#party-app .pc-detail summary small{font-size:15px;color:#d7c1e0}
#party-app .pc-detail-copy,#party-app .pc-info-copy{font-size:17px;line-height:1.9;color:#ead9ef}
#party-app .pc-detail-copy strong,#party-app .pc-info-copy strong{color:#ffbf8c;font-weight:700}
#party-app .pc-text-button,#party-app .pc-detail-actions a{font-size:15px;font-weight:600}
#party-app .pc-booking-note>p,#party-app .pc-tickets-intro{font-size:17px;line-height:1.8;color:#e6d2ed}
#party-app .pc-booking-note>a{font-size:17px;font-weight:600;color:#e6b9ff}
#party-app .pc-booking-note>.pc-text-button{font-size:15px}
#party-app .pc-page-heading h1{font-size:36px}
#party-app .location-text>p,#party-app .schedule{font-size:17px;line-height:1.8;color:#e4d0eb}
#party-app .schedule strong{font-size:17px;color:#ffc093;font-weight:600}
#party-app .map-message h3{font-size:25px;font-weight:600}
#party-app .map-message p{font-size:17px;line-height:1.8;color:#e4d0eb}
#party-app .location-bottom,#party-app .location-bottom button{font-size:14px;color:#e1c6ec}
#party-app .location-text .small-help{font-size:14px;color:#d8bfdc}
#party-app .primary,#party-app .secondary,#party-app .vote-auth button{font-size:16px;font-weight:600}
#party-app .vote-empty p,#party-app .vote-auth p,#party-app .vote-summary,#party-app .round-waiting p{font-size:16px;line-height:1.85;color:#e4cdeb}
#party-app .vote-header>.eyebrow,#party-app .live-badge,#party-app .choice-number{font-size:13px}
#party-app .choice-result{font-size:16px}
#party-app .pc-dj-card>p{font-size:17px;line-height:1.85;color:#ead9ef}
#party-app .pc-dj-card>.pc-dj-note{font-size:15px;color:#d9bfe4}
#party-app .pc-dj-card>p strong,#party-app .location-text>p strong{color:#ffc394;font-weight:700}
#party-app .pc-dj-tiktok{font-size:15px}
#party-app .pc-dj-handle{font-size:14px;color:#dcc3e5}
#party-app .deadline-units span{font-size:13px;color:#e8d3ef;font-weight:500}
#party-app .pc-info-contribution-note{font-size:17px}
#party-app .pc-info-copy .pc-info-reservation,#party-app .pc-info-age{font-size:16px}
#party-app .dialog-copy,#party-app .text-input,#party-app .access-tabs button{font-size:16px}
#party-app .field-label,#party-app .demo-code,#party-app .small-help{font-size:14px}
#party-app .footer>span:nth-child(2),#party-app .footer i,#party-app .footer-actions button{font-size:12px;color:#d5bfdc}

/* A real, circular age symbol rather than a small inline number. */
#party-app .age-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;width:38px;height:38px;border:2px solid #ff687b;border-radius:50%;background:#361018;color:#ff7d8d;font:700 15px/1 Outfit,Arial,sans-serif;letter-spacing:-.6px;vertical-align:middle;text-shadow:0 0 9px #e7354b44;box-shadow:0 0 15px #ff405322}
#party-app .pc-info-age{border-color:#e85a704d;background:#b92b4215;color:#ffb6c2}
#party-app .age-rule{display:flex;align-items:center;gap:11px;color:#ffb6c2;font-weight:600}

/* Colour guides the eye through the About section and its booking card. */
#party-app .pc-details #pc-about-title{color:#ffc092;text-shadow:0 0 15px #e68b2920}
#party-app .pc-details .pc-section-head>span{color:#d2a4e5}
#party-app .pc-details .pc-detail{--row-accent:#dba5ff;--row-muted:#d0b0df}
#party-app .pc-details .pc-detail:nth-of-type(even){--row-accent:#ffc08d;--row-muted:#dec0cd}
#party-app .pc-details .pc-detail summary strong{color:var(--row-accent);text-shadow:0 0 14px #b35be91a}
#party-app .pc-details .pc-detail summary small{color:var(--row-muted)}
#party-app .pc-details .pc-copy-key{color:var(--row-accent);font-weight:600}
#party-app .pc-details .pc-detail-icon,#party-app .pc-details .pc-expand{color:var(--row-accent)}
#party-app .pc-details .pc-detail-copy{color:#dcc4e8}
#party-app .pc-details .pc-detail-copy strong{color:var(--row-accent)}
#party-app .pc-bottom .pc-booking-note .pc-label{color:#d19aec}
#party-app .pc-booking-note .pc-note-first{color:#dfb4ff;text-shadow:0 0 17px #b764e727}
#party-app .pc-booking-note .pc-note-last{color:#ffba83;text-shadow:0 0 17px #ed8b2b27}
#party-app .pc-bottom .pc-booking-note>p{color:#d5b9e2}
#party-app .pc-booking-note .pc-copy-key{color:#edc3ff;font-weight:600}
#party-app .pc-booking-note .pc-note-confirm{color:#ffc18e;font-weight:600}
#party-app .pc-bottom .pc-booking-note>a{color:#e3a6ff}
#party-app .pc-bottom .pc-booking-note>.pc-text-button{color:#ffc18e}

/* Geometric neon digits: crisp light cores with separate purple/orange halos. */
#party-app .deadline-clock{min-height:104px;container-type:inline-size}
#party-app .deadline-units{gap:26px}
#party-app .deadline-units>div{--digit-glow:#ff8c495c}
#party-app .deadline-units>div:nth-child(2){--digit-glow:#bf75ff80}
#party-app .deadline-units strong,#party-app .deadline-seconds strong{
 font-family:'Orbitron',Outfit,Arial,sans-serif;font-weight:750;font-variant-numeric:tabular-nums;
 font-size:clamp(34px,13cqw,54px);line-height:1.2;letter-spacing:1px;color:#ffe6c7;
 background:linear-gradient(180deg,#fffdf7 12%,#ffe8cd 42%,#ffb36b 100%);
 -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
 filter:drop-shadow(0 0 5px #ffe1b627) drop-shadow(0 0 13px var(--digit-glow,#ff8c495c));
 text-shadow:none;padding-block:3px;
}
#party-app .deadline-units>div:nth-child(2) strong{background-image:linear-gradient(180deg,#fffaff 12%,#f2d8ff 42%,#c485ff 100%)}
#party-app .deadline-units span{font-size:13px;font-weight:600;letter-spacing:2px;color:#e8cbee;margin-top:12px}
#party-app .deadline-units>div:not(:last-child)::after{color:#e1a7f3;top:12px;font-size:28px;text-shadow:0 0 12px #bc63f05c}
#party-app .deadline-seconds{min-height:104px}
#party-app .deadline-seconds strong{font-size:88px;line-height:1.08;letter-spacing:2px;--digit-glow:#ff95497a}
html.motion-full #party-app .deadline-units strong{animation:digit-neon 3.8s ease-in-out infinite}
html.motion-full #party-app .deadline-units>div:nth-child(2) strong{animation-delay:-1.3s}
html.motion-full #party-app .deadline-units>div:nth-child(3) strong{animation-delay:-2.6s}
@keyframes digit-neon{0%,100%{filter:drop-shadow(0 0 4px #ffe1b625) drop-shadow(0 0 9px var(--digit-glow))}50%{filter:drop-shadow(0 0 6px #fff5e442) drop-shadow(0 0 17px var(--digit-glow))}}
@media(max-width:760px){
 #party-app .deadline-clock,#party-app .deadline-seconds{min-height:88px}
 #party-app .deadline-units{gap:20px}
 #party-app .deadline-units strong{font-size:36px;letter-spacing:.5px}
 #party-app .deadline-units span{font-size:11px;letter-spacing:1px;margin-top:9px}
 #party-app .deadline-units>div:not(:last-child)::after{top:5px;right:-13px;font-size:24px}
 #party-app .deadline-seconds strong{font-size:72px}
}

/* Slow halo fades use opacity; text itself remains still and sharp. */
#party-app :is(.pc-ticket,.pc-clock,.pc-booking-note,.pc-dj-card,.location-panel,.vote-shell){position:relative}
html.motion-full #party-app :is(.pc-ticket,.pc-clock,.pc-booking-note,.pc-dj-card,.location-panel,.vote-shell)::after{content:'';position:absolute;inset:0;border:1px solid #ce8bec77;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 22px #a45ad51c;opacity:.2;animation:panel-halo 5.4s ease-in-out infinite}
html.motion-full #party-app .pc-ticket:nth-child(2)::after{border-color:#e4a3ff80;animation-delay:-2.7s}
html.motion-full #party-app .pc-clock::after{animation-delay:-1.3s}
html.motion-full #party-app .pc-booking-note::after{animation-delay:-3.6s}
html.motion-full #party-app .pc-dj-card::after{border-color:#ffab7477;animation-delay:-2s}
@keyframes panel-halo{0%,100%{opacity:.16}50%{opacity:.8}}
html.motion-full #party-app .age-badge{animation:age-halo 3.4s ease-in-out infinite}
@keyframes age-halo{0%,100%{box-shadow:0 0 7px #ff405315}50%{box-shadow:0 0 17px #ff40534d}}
html.motion-full #party-app :is(.primary,.pc-ticket-button)::before{animation:control-sheen 7s ease-in-out infinite}
@keyframes control-sheen{0%,70%{transform:translateX(-115%);opacity:0}74%{opacity:.7}94%{transform:translateX(115%);opacity:.7}100%{transform:translateX(115%);opacity:0}}
html.motion-full #party-app :is(.pc-shortcut-icon,.pc-detail-icon svg,.pc-clock-top svg,.pc-dj-mark svg){animation:icon-beat 4.2s ease-in-out infinite;transform-origin:center}
html.motion-full #party-app .pc-location .pc-shortcut-icon{animation-delay:-2.1s}
@keyframes icon-beat{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.07);opacity:1}}
html.motion-full #party-app :is(.pc-info-button,.lock-halo){animation:icon-halo 4.4s ease-in-out infinite}
@keyframes icon-halo{0%,100%{box-shadow:0 0 0 0 #b76be800}50%{box-shadow:0 0 0 4px #b76be814,0 0 18px #b76be826}}
@media(hover:hover) and (pointer:fine){
 #party-app .pc-ticket{transition:transform .25s ease,border-color .25s ease}
 #party-app .pc-ticket:hover{transform:translateY(-3px);border-color:#d99362a6}
 #party-app .pc-detail summary{transition:background .25s ease}
 #party-app .pc-detail summary:hover{background:#a164c512}
}
/* Existing Studio preference still stops every new effect. */
html.motion-reduced #party-app *,html.motion-reduced #party-app *::before,html.motion-reduced #party-app *::after{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){html:not(.motion-full) #party-app *,html:not(.motion-full) #party-app *::before,html:not(.motion-full) #party-app *::after{animation:none!important;transition:none!important}}
@media(min-width:761px) and (max-width:1100px){#party-app .desktop-nav{gap:15px}#party-app .desktop-nav button{font-size:14px}}
@media(max-width:760px){
 #party-app .pc-cover h1{font-size:46px!important}
 #party-app .pc-cover p,#party-app .pc-cover-bottom>span{font-size:15px}
 #party-app .pc-ticket-head h2{font-size:19px!important}
 #party-app .pc-condition,#party-app .pc-tickets-page-grid .pc-condition{font-size:14px;min-height:50px}
 #party-app .pc-ticket-stock>span,#party-app .pc-tickets-page-grid .pc-ticket-stock>span{font-size:13px}
 #party-app .pc-ticket-stock>strong{font-size:37px}
 #party-app .pc-tickets-page-grid .pc-ticket-stock>strong{font-size:42px}
 #party-app .pc-detail-copy,#party-app .pc-info-copy{font-size:16px}
 #party-app .pc-detail summary strong{font-size:16px}
 #party-app .pc-detail summary small{font-size:14px}
 #party-app .pc-shortcut strong{font-size:16px}
 #party-app .pc-shortcut small{font-size:14px}
 #party-app .pc-section-head>span{font-size:12px}
 #party-app .pc-page-heading h1{font-size:30px}
 #party-app .pc-info-contribution-note,#party-app .pc-info-copy .pc-info-reservation{font-size:16px}
 #party-app .header-actions button{font-size:12px}
 #party-app .age-badge{width:35px;height:35px;font-size:14px}
}
