.vh-rules-deck,.vh-rules-deck *{box-sizing:border-box}
.vh-rules-deck{height:100vh;height:100dvh;min-height:0;width:100%;padding:clamp(14px,3vh,40px) clamp(18px,4vw,70px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(12px,2.4vh,28px);position:relative;isolation:isolate;overflow:hidden;background:#0b172c;color:#f4f7fc;font-family:system-ui,-apple-system,sans-serif}
.vh-rules-deck::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,#081426f5,#0c1930ed 65%,#131934d9),url('/static/media/veurhof-f15df8987629/veurhof-retrodisco.png') center/cover no-repeat}
.vh-rules-header{display:flex;align-items:center;gap:24px;border-bottom:1px solid #c2d5e628;padding-bottom:clamp(10px,2vh,22px)}
.vh-rules-brand{font-size:clamp(22px,2.5vw,38px);font-weight:850;letter-spacing:-.03em;white-space:nowrap}
.vh-rules-label{color:#f5ce8e;font-size:clamp(13px,1.5vw,22px);flex:1}
.vh-rules-deck button{cursor:pointer;font:600 14px/1.2 system-ui;color:#eef5ff;background:#20324b;border:1px solid #d6e2ee4a;border-radius:9px;min-height:40px;padding:10px 18px;transition:background .15s}
.vh-rules-deck button:hover:not(:disabled){background:#37516c}.vh-rules-deck button:disabled{opacity:.35;cursor:default}.vh-rules-deck button:focus-visible{outline:3px solid #ffda93;outline-offset:4px}
.vh-rules-main{min-width:0;min-height:0;container-type:size;display:flex;align-items:stretch}
.vh-rule-slide{display:flex;flex-direction:column;justify-content:center;gap:clamp(14px,4cqh,38px);width:100%;min-height:0;min-width:0;animation:vh-rules-arrive .25s ease-out}
.vh-rule-slide h1{margin:0;color:#fff;font-size:clamp(28px,min(4.5cqw,10cqh),72px);font-weight:850;letter-spacing:-.035em;line-height:1.15;text-wrap:balance}
.vh-rule-intro{max-width:1100px;display:flex;flex-direction:column;align-items:flex-start;gap:clamp(18px,5cqh,42px)}
.vh-rule-intro h1{font-size:clamp(40px,min(7.4cqw,18cqh),120px);color:#ffd28a;max-width:13em}
.vh-rule-eyebrow{font-size:clamp(15px,min(2cqw,4.5cqh),28px);text-transform:uppercase;letter-spacing:.1em;color:#d2e1f2;font-weight:650}
.vh-rule-lead{font-size:clamp(20px,min(3cqw,7cqh),44px);line-height:1.4;margin:0;text-wrap:balance}
.vh-rule-intro-note{font-size:clamp(17px,min(2cqw,5cqh),30px);color:#c4d3e8;line-height:1.5;margin:0}
.vh-rule-goal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2cqw,30px)}
.vh-rule-goal-card,.vh-rule-steps li,.vh-rule-point,.vh-rule-team{border:1px solid #d7e7ff2e;background:linear-gradient(145deg,#263550d9,#162641d9);border-radius:clamp(12px,2cqw,22px)}
.vh-rule-goal-card{display:flex;flex-direction:column;gap:clamp(14px,4cqh,32px);padding:clamp(18px,2.5cqw,40px)}
.vh-rule-goal-card>span{font-size:clamp(28px,9cqh,64px);line-height:1;color:#ffd28a;font-weight:800}
.vh-rule-goal-card p{font-size:clamp(18px,min(2.3cqw,5.7cqh),35px);line-height:1.4;margin:0}
.vh-rule-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,2.4cqh,24px);padding:0;margin:0;list-style:none}
.vh-rule-steps li{display:flex;align-items:flex-start;gap:clamp(12px,2cqw,25px);padding:clamp(16px,2.2cqw,32px)}
.vh-rule-step-number{font-size:clamp(24px,min(3cqw,7cqh),48px);font-weight:850;color:#ffd28a;line-height:1.1}
.vh-rule-steps p{font-size:clamp(17px,min(2.05cqw,5.4cqh),32px);line-height:1.42;margin:0;max-width:100%}
.vh-rule-points{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,2cqw,28px)}
.vh-rule-point{display:flex;flex-direction:column;gap:clamp(12px,3cqh,28px);padding:clamp(16px,2.4cqw,34px)}
.vh-rule-point strong{font-size:clamp(26px,min(3.4cqw,8cqh),55px);color:#ffd28a;line-height:1.15;white-space:nowrap}
.vh-rule-point span{font-size:clamp(17px,min(2.2cqw,5.4cqh),32px);line-height:1.4}
.vh-rule-total{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;background:#34544388;border-color:#99e9be61}
.vh-rule-total strong{color:#aaf0c8}.vh-rule-total span{text-align:right;font-size:clamp(16px,min(2cqw,5cqh),29px)}
.vh-rule-timeline{display:grid;gap:clamp(12px,3cqh,28px)}
.vh-rule-timeline-labels{display:flex;justify-content:space-between;gap:30px;color:#a8d9f1;font-weight:650;font-size:clamp(19px,min(2.7cqw,6cqh),40px)}
.vh-rule-timeline-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,2cqw,28px);align-items:center;position:relative;padding-block:14px}
.vh-rule-timeline-cards::before{content:"";height:2px;background:#a9d6f45c;position:absolute;inset:50% 0 auto;z-index:-1}
.vh-rule-year{padding:clamp(18px,5cqh,44px) 10px;background:#23334e;border:1px solid #c7e5ff59;border-radius:15px;display:flex;flex-direction:column;gap:10px;align-items:center}
.vh-rule-year small{font-size:clamp(12px,min(1.4cqw,3.7cqh),22px);color:#bfcede}
.vh-rule-year strong{font-size:clamp(28px,min(4cqw,10cqh),68px);font-variant-numeric:tabular-nums;line-height:1.15}
.vh-rule-start{background:#ffd28a;color:#172039;transform:translateY(-8px);box-shadow:0 8px 38px #ffcf6921;border-color:#ffe0ad}.vh-rule-start small{color:#34425b;font-weight:800;letter-spacing:.08em}
.vh-rule-timeline-descriptions{font-size:clamp(14px,min(1.9cqw,4.7cqh),28px);color:#bdcee0}
.vh-rule-note{font-size:clamp(17px,min(2cqw,5cqh),30px);line-height:1.45;color:#e4edf7;margin:0;padding:clamp(12px,2.4cqh,24px) 20px;border-left:4px solid #ffd28a;background:#22314985}
.vh-rule-teams{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,2cqh,22px);overflow:auto}
.vh-rule-team{display:flex;align-items:center;gap:clamp(12px,2cqw,28px);padding:clamp(15px,3cqh,30px)}
.vh-rule-team>span{font-size:clamp(17px,min(2cqw,5cqh),30px);color:#ffd28a;font-variant-numeric:tabular-nums}
.vh-rule-team strong{font-size:clamp(18px,min(2.2cqw,5.3cqh),34px);line-height:1.3;overflow-wrap:anywhere;color:#f9fbff}
.vh-rule-final-message{color:#aaf0c8;font-size:clamp(24px,min(3.7cqw,9cqh),56px);font-weight:750;margin:0}
.vh-rule-image img{object-fit:contain;max-width:100%;max-height:100%;width:100%;height:100%;min-height:0}
.vh-rules-nav{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #c2d5e628;padding-top:clamp(10px,2vh,22px)}
.vh-rules-nav .vh-rules-next{background:#ffd28a;color:#172039;border-color:#ffd28a}.vh-rules-nav .vh-rules-next:hover:not(:disabled){background:#ffe2b0}
.vh-rules-progress{display:flex;align-items:center;gap:16px;color:#bcd0e5;font-variant-numeric:tabular-nums;font-size:14px}
.vh-rules-dots{display:flex;gap:6px}.vh-rules-dots button{min-height:28px;width:24px;padding:0;border:0;border-radius:0;background:none;position:relative}
.vh-rules-dots button::before{content:"";position:absolute;inset:10px 3px;background:#8ba1bb66;border-radius:10px}.vh-rules-dots button.active::before{background:#ffd28a}.vh-rules-dots button:hover{background:none}
.vh-rules-error{position:absolute;bottom:90px;left:5%;right:5%;padding:16px;background:#7c2639;color:#fff;border-radius:12px}
.display-page:has(.display-rules-frame){padding:0}.display-page .display-container:has(.display-rules-shell){max-width:none;width:100%;margin:0}.display-page .display-rules-shell{width:100%;height:100%;min-height:0;flex:1;display:flex}.display-page .display-rules-frame{border:0;width:100%;height:100%;flex:1;min-height:0}
.display-page:has(.vh-rules-deck){padding:0}.display-page .display-container:has(.vh-rules-deck){max-width:none;width:100%;margin:0}.display-page .vh-rules-deck{flex:1;max-height:100dvh}
.spotify-dashboard .dashboard-public-controls button.rules-screen-btn{background:linear-gradient(135deg,#24617d,#315687);border-color:#9bd2e3}
@keyframes vh-rules-arrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.vh-rule-slide{animation:none}}
@media(max-width:700px){
 .vh-rules-deck{padding:14px;gap:12px}.vh-rules-header{gap:10px}.vh-rules-brand{font-size:22px}.vh-rules-label{display:none}.vh-rules-close{margin-left:auto}.vh-rules-deck button{font-size:12px;padding:9px 12px}
 .vh-rule-goal{grid-template-columns:1fr}.vh-rule-goal-card{flex-direction:row;align-items:center;gap:18px;padding:18px}.vh-rule-goal-card>span{font-size:30px;min-width:30px}
 .vh-rule-goal-card p,.vh-rule-steps p{font-size:17px}.vh-rule-steps{grid-template-columns:1fr;gap:10px}.vh-rule-steps li{padding:15px}.vh-rule-step-number{font-size:24px}
 .vh-rule-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vh-rule-point{padding:16px}.vh-rule-point strong{font-size:26px}.vh-rule-point span{font-size:16px}.vh-rule-total{flex-direction:column;align-items:flex-start;gap:8px}.vh-rule-total span{text-align:left}
 .vh-rule-teams{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.vh-rule-team{padding:13px;gap:10px}.vh-rule-team strong{font-size:16px}.vh-rule-team>span{font-size:15px}
 .vh-rule-timeline-cards{gap:5px}.vh-rule-year{padding:22px 3px;border-radius:9px}.vh-rule-year strong{font-size:22px}.vh-rule-year small{font-size:9px}.vh-rule-note{font-size:16px;padding:14px}.vh-rule-timeline-labels{font-size:20px}.vh-rule-timeline-descriptions{font-size:13px}
 .vh-rules-dots{display:none}.vh-rules-nav{gap:8px}.vh-rule-slide h1{font-size:30px}.vh-rule-intro h1{font-size:44px}.vh-rule-lead{font-size:23px}
}
@media(max-height:480px) and (min-width:701px){.vh-rules-deck{padding:12px 22px;gap:10px}.vh-rules-header{padding-bottom:9px}.vh-rules-brand{font-size:22px}.vh-rules-deck button{min-height:34px;padding:8px 12px}.vh-rules-nav{padding-top:9px}.vh-rule-slide{gap:12px}.vh-rule-slide h1{font-size:27px}.vh-rule-intro h1{font-size:45px}.vh-rule-steps li{padding:12px}.vh-rule-steps p{font-size:16px}.vh-rule-goal-card{padding:15px;gap:12px}.vh-rule-goal-card p{font-size:18px}.vh-rule-point{padding:14px;gap:12px}.vh-rule-point span{font-size:16px}.vh-rule-point strong{font-size:26px}.vh-rule-total{padding:12px}.vh-rule-year{padding:15px 8px}.vh-rule-year strong{font-size:32px}.vh-rule-note{font-size:15px;padding:10px 14px}.vh-rule-timeline{gap:9px}.vh-rule-timeline-labels{font-size:18px}.vh-rule-timeline-descriptions{font-size:14px}.vh-rule-team{padding:14px}.vh-rule-team strong{font-size:17px}}
