:root {
    --surface: #ffffff;
    --page-bg: #fffafd;
    --page-glow: #fde7f0;
    --text: #341522;
    --text-strong: #2f1420;
    --text-body: #3b1b29;
    --text-muted: #7d6873;
    --text-muted-light: #96808c;
    --text-subtle: #987f8c;
    --text-muted-blue: #9a8390;
    --text-label: #896f7c;
    --text-secondary: #826b77;
    --text-form-label: #705967;
    --text-tab: #5d4553;
    --text-disabled: #a18d98;
    --text-footer: #927b87;
    --text-placeholder: #a8959e;
    --text-neutral: #877681;
    --border: #f0dbe5;
    --border-card: #efd5e2;
    --border-input: #eccfdd;
    --border-dashed: #ebc9d9;
    --border-profile: #f0e1e8;
    --border-list: #f0dde6;
    --border-result: #f0e3e9;
    --border-chip: #f1e3e9;
    --avatar-placeholder: #f0eaed;
    --surface-muted: #fff8fb;
    --surface-chip: #fff8fb;
    --surface-hover: #fff2f7;
    --surface-gradient: #fff9fc;
    --surface-highlight: #fff7fb;
    --surface-avatar: #f9eff4;
    --surface-icon: #f9e9f1;
    --focus-ring: #f9d9e8;
    --chip-pink: #fbeaf2;
    --stat-pink: #f9e6ef;
    --points-pink: #f9e2ed;
    --points-pink-2: #fae6f0;
    --stat-pink-soft: #fceaf3;
    --border-podium: #f2e2e9;
    --on-brand-muted: #ffe2ee;
    --on-brand-subtle: #ffe0ec;
    --on-brand-soft: #ffd9e9;
    --on-brand-light: #ffd7e8;
    --on-brand-icon: #ffc9df;
    --on-brand-emphasis: #ffd2e4;
    --on-brand-text: #ffeaf3;
    --on-brand-meta: #fee8f1;
    --success: #138565;
    --success-bg: #edf9f5;
    --success-soft: #e4f7ed;
    --success-border: #b8e5d6;
    --success-strong: #148455;
    --warning: #bd7610;
    --warning-bg: #fff8e9;
    --warning-border: #f0d391;
    --warning-strong: #bd7a00;
    --warning-text: #b87400;
    --live: #d62c70;
    --live-bg: #fff0f7;
    --live-border: #efafd1;
    --live-card-border: #df6d9f;
    --gold: #f4c23e;
    --gold-deep: #efb82e;
    --gold-rich: #e6b230;
    --gold-bg: #fff1bf;
    --gold-soft: #fff4d9;
    --gold-text: #956412;
    --silver: #9aa5b5;
    --silver-mid: #99a5b6;
    --silver-dark: #8c98a8;
    --silver-bg: #e7ebef;
    --silver-text: #5d6671;
    --bronze: #c66a28;
    --bronze-deep: #ce7027;
    --bronze-mid: #c86e2d;
    --bronze-dark: #a5653d;
    --bronze-text: #964b26;
    --bronze-bg: #fae0cf;
    --rank-gold: #a37d31;
    --rank-silver: #7d8796;
    --crown: #d19d22;
    --warning-soft: #fff5dc;
    --neutral-bg: #f8f3f6;
    --neutral-border: #eadce2;
    --brand: #d6336c;
    --brand-dark: #8d1748;
    --brand-light: #ec4899;
    --brand-soft: #fff1f6;
    --brand-strong: #af1f61;
    --brand-deep: #a51856;
    --brand-deeper: #86103e;
    --brand-bright: #e85699;
    --brand-vivid: #df4b90;
    --brand-mid: #d94189;
    --brand-rich: #bb2b6d;
    --brand-glow: #f070ad;
    --brand-mist: #f18bbe;
    --brand-night: #791039;
    --brand-secondary: #dc5b9a;
    --brand-border: #efbad3;
    --accent-light: #f48fbe;
    --accent: #d72e76;
    --accent-strong: #c7266a;
    --accent-wash: #fde5ef;
    --accent-soft: #fae7f1;
    --brand-wash: #fae7f1;
    --brand-wash-2: #faeaf2;
    --shadow: 0 18px 45px rgba(176,29,91,.10);
    --shadow-hero: rgba(155,19,77,.22);
    --shadow-brand-image: rgba(190,27,94,.20);
    --shadow-button: rgba(190,27,94,.23);
    --shadow-tab: rgba(190,27,94,.18);
    --shadow-hover: rgba(190,27,94,.13);
    --shadow-card: rgba(130,20,65,.05);
    --shadow-avatar: rgba(142,20,70,.15);
    --shadow-podium: rgba(160,26,79,.14);
    --shadow-medal: rgba(57,22,39,.15);
    --shadow-profile: rgba(57,22,39,.05);
    --shadow-accent: rgba(215,46,118,.22);
    --focus-outline: rgba(214,51,108,.32);
    --live-pulse-strong: rgba(236,72,153,.80);
    --live-pulse: rgba(236,72,153,.75);
    --live-pulse-clear: rgba(236,72,153,0);
    --white-35: rgba(255,255,255,.35);
    --white-34: rgba(255,255,255,.34);
    --white-28: rgba(255,255,255,.28);
    --white-24: rgba(255,255,255,.24);
    --white-18: rgba(255,255,255,.18);
    --white-14: rgba(255,255,255,.14);
    --white-13: rgba(255,255,255,.13);
    --white-11: rgba(255,255,255,.11);
    --white-10: rgba(255,255,255,.10);
    --shadow-black-soft: rgba(0,0,0,.06);
    --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

@media(max-width:900px){
    .result-tabs{
        grid-template-columns:repeat(2,1fr)
    }
    .winner-grid{gap:25px}
    .profile-summary{padding:30px;flex-wrap:wrap}
    .profile-avatar{width:150px;height:150px}
    .profile-summary>div:nth-child(2){padding:20px 0 0 25px}
    .profile-stats{width:100%;margin-top:25px;justify-content:flex-start}
    .profile-stats span{width:calc(33.33% - 16px)}
}
@media(max-width:600px){
    .result-card .result-title{padding:22px 20px 20px 92px}
    .result-card .result-title:before{left:20px;top:23px;width:56px;height:56px;border-radius:16px;font-size:22px}
    .result-card .result-title h2{font-size:22px}.count-chip{margin-top:10px;font-size:12px}
    .winner-grid{min-height:0;gap:22px;padding:30px 15px}
    .winner,.winner[class~="1"]{width:100%;transform:none}
    .winner .avatar,.winner[class~="1"] .avatar{width:150px;height:175px}
    .winner .medal,.winner[class~="1"] .medal{margin-left:100px}
    .profile-summary{display:block;padding:25px}
    .profile-avatar{width:115px;height:115px}
    .profile-summary>div:nth-child(2){padding:20px 0 0}
    .profile-summary h2{font-size:30px}
    .profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
    .profile-stats span{width:auto;min-height:100px;font-size:9px}
    .profile-stats b{font-size:27px}.profile-card>.placement-list{grid-template-columns:1fr;padding:20px;gap:14px}
    .profile-card>.placement-list>div{padding:12px}
    .profile-card>.placement-list>div>span{width:56px;height:56px;font-size:18px}
    .profile-card>.placement-list p b,.profile-card>.placement-list strong{font-size:15px}
}
.winner[class~="2"]{order:1}
.winner[class~="1"]{order:2;transform:translateY(-20px)}
.winner[class~="3"]{order:3}.winner[class~="1"] .avatar{width:146px;height:146px;border-color:var(--gold)}
.winner[class~="2"] .medal{color:var(--silver-text);background:var(--silver-bg)}.winner[class~="3"] .medal{color:var(--bronze-text);background:var(--bronze-bg)}
.range-card.live .status-pill b,.range-banner.live .status-pill b{animation:live-pulse 1.5s ease-out infinite;box-shadow:0 0 0 0 var(--live-pulse-strong)}
.range-card.live .status-pill{font-weight:900}@keyframes live-pulse{0%{box-shadow:0 0 0 0 var(--live-pulse)}70%{box-shadow:0 0 0 9px var(--live-pulse-clear)}100%{box-shadow:0 0 0 0 var(--live-pulse-clear)}}
.result-card{border-color:var(--border-result)}
.result-card .result-title{min-height:120px;padding:32px 46px 25px 140px;position:relative}
.result-card .result-title:before{content:"\f02d";width:78px;height:78px;display:grid;place-items:center;position:absolute;left:46px;top:25px;border-radius:21px;color:var(--surface);font:32px FontAwesome;background:linear-gradient(135deg,var(--accent-light),var(--accent));box-shadow:0 10px 22px var(--shadow-accent)}
.result-card .result-title h2{font-size:30px;color:var(--text-strong)}
.result-card .eyebrow{color:var(--text-subtle);font-size:14px;letter-spacing:.03em}
.count-chip{padding:13px 21px;border:1px solid var(--border-chip);border-radius:18px;color:var(--text-body);font-size:16px;background:var(--surface-chip)}
.winner-grid{min-height:460px;align-items:center;gap:70px;padding:45px 35px 5px}
.winner{width:250px;padding:10px 0 20px;background:transparent}
.winner[class~="1"]{transform:translateY(-28px)}
.winner .avatar{width:150px;height:185px;border-radius:25px}
.winner[class~="1"] .avatar{width:210px;height:250px;border-radius:28px}
.winner .medal{position:relative;z-index:1;margin:0 0 -10px 120px;padding:10px 12px;color:var(--surface);background:var(--silver-mid);border:4px solid var(--surface);border-radius:50%;font-size:17px;box-shadow:0 4px 8px var(--shadow-black-soft)}
.winner[class~="1"] .medal{margin-left:160px;padding:12px 14px;color:var(--surface);background:var(--gold-deep)}
.winner[class~="3"] .medal{background:var(--bronze-deep);color:var(--surface)}
.winner-chest{margin:20px 0 4px;color:var(--text-subtle);font-size:18px}
.winner h3{font-size:23px;line-height:1.1;color:var(--text-strong);text-transform:uppercase}
.winner p{min-height:auto;color:var(--text-muted-light);font-size:15px;text-transform:uppercase}
.winner strong{margin-top:18px;padding:8px 18px;border-radius:99px;color:var(--success-strong);background:var(--success-soft);font-size:17px}
.winner[class~="3"] strong{color:var(--warning-text);background:var(--gold-soft)}
.poster-action{padding:4px 24px 38px}
.poster-action .button{height:62px;padding:0 38px;border-radius:16px;font-size:19px}
.profile-card{overflow:visible;border:0;background:transparent;box-shadow:none}
.profile-summary{min-height:350px;align-items:flex-start;padding:52px;border:1px solid var(--border-profile);border-radius:25px;background:var(--surface);box-shadow:0 8px 20px var(--shadow-profile)}
.profile-avatar{width:240px;height:240px;border-radius:30px;background:var(--avatar-placeholder);color:var(--text-placeholder);box-shadow:none}
.profile-summary>div:nth-child(2){padding:38px 0 0 48px}
.profile-summary h2{font-size:42px;line-height:1;color:var(--text-strong);text-transform:uppercase}
.profile-summary .eyebrow{font-size:16px;color:var(--text-muted-light);text-transform:uppercase;letter-spacing:0}
.profile-summary p{color:var(--text-muted-light);font-size:19px}
.profile-stats{align-self:flex-end;flex:1;justify-content:flex-end;gap:24px}
.profile-stats span{width:180px;min-height:155px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:25px;color:var(--text-muted-blue);font-size:14px;text-align:center;background:var(--accent-wash)}
.profile-stats span:nth-child(2){color:var(--accent-strong);background:var(--accent-soft)}
.profile-stats span:nth-child(3){color:var(--warning-strong);background:var(--warning-soft)}
.profile-stats span:before{font:24px FontAwesome;content:"\f140"}
.profile-stats span:nth-child(2):before{content:"\f02d"}
.profile-stats span:nth-child(3):before{content:"\f091"}
.profile-stats b{font-size:42px;line-height:1;color:inherit}
.profile-card>.placement-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:42px;padding:42px 50px;border:1px solid var(--border-profile);border-radius:25px;background:var(--surface)}
.profile-card>.placement-list>div{min-height:115px;padding:16px 30px;border:1px solid var(--border-list);border-radius:20px}.profile-card>.placement-list>div>span{width:90px;height:80px;display:grid;place-items:center;border-radius:17px;color:var(--surface);background:linear-gradient(135deg,var(--accent-light),var(--accent));font-size:26px}
.profile-card>.placement-list p b{color:var(--text-strong);font-size:20px}.profile-card>.placement-list p small{font-size:15px}.profile-card>.placement-list strong{font-size:20px}.profile-card .poster-action{grid-column:1/-1;padding-bottom:0}
*{box-sizing:border-box}
html{min-height:100%;background:var(--page-bg)}
body{margin:0;min-width:320px;color:var(--text);font:500 15px/1.55 var(--font-family-sans-serif);background:radial-gradient(circle at 0 0,var(--page-glow) 0,transparent 32rem),var(--page-bg)}
.container{width:min(1120px,calc(100% - 40px));margin:auto}
.site-header{width:min(1200px,calc(100% - 40px));height:84px;margin:auto;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--brand-dark);font-family:var(--font-family-sans-serif);font-weight:800;font-size:18px;letter-spacing:.04em}
.brand img{width:42px;height:42px;border-radius:12px;object-fit:cover;box-shadow:0 6px 16px var(--shadow-brand-image)}
.brand span{display:grid;line-height:1}
.brand small{margin-top:6px;color:var(--text-muted);font:700 10px var(--font-family-sans-serif);text-transform:uppercase;letter-spacing:.12em}
.live-clock,.back-link{color:var(--text-muted);font-size:12px;font-weight:700}
.live-clock{padding:8px 11px;border:1px solid var(--border);border-radius:99px;background:var(--surface)}
.live-clock i{color:var(--brand)}.back-link{text-decoration:none}
.back-link:hover{color:var(--brand)}
.hero{width:min(1200px,calc(100% - 40px));margin:0 auto 48px;padding:72px clamp(28px,7vw,84px);min-height:330px;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden;border-radius:28px;color:var(--surface);background:linear-gradient(125deg,var(--brand-dark),var(--brand) 55%,var(--brand-mist));box-shadow:0 22px 50px var(--shadow-hero);animation:rise .6s ease both}
.hero:after{content:"";position:absolute;width:420px;height:420px;right:-150px;bottom:-290px;border:45px solid var(--white-10);border-radius:50%}
.hero-copy{position:relative;z-index:1;max-width:590px}
.eyebrow{display:block;margin-bottom:9px;color:var(--brand-light);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.13em}
.hero .eyebrow{color:var(--on-brand-light)}
.hero h1,.range-banner h1{margin:0;font:800 clamp(34px,5vw,58px)/1.06 var(--font-family-sans-serif)}
.hero h1 em{color:var(--on-brand-emphasis)}
.hero p{max-width:480px;margin:18px 0 0;color:var(--on-brand-text);font-size:17px}
.hero-orb{width:150px;height:150px;display:grid;place-items:center;position:relative;z-index:1;margin-right:10%;border:1px solid var(--white-28);border-radius:50%;color:var(--surface);font-size:45px;background:var(--white-11);animation:float 4s ease-in-out infinite}
.finder-section{padding-bottom:72px}
.finder-card,.search-card{padding:28px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--shadow);animation:rise .65s .1s ease both}
.finder-heading{display:flex;gap:15px;align-items:center}
.finder-heading h2,.search-card h2,.section-heading h2,.result-title h2,.profile-card h2{margin:0;font:800 25px/1.15 var(--font-family-sans-serif)}
.finder-heading p,.search-card p{margin:5px 0 0;color:var(--text-muted)}
.finder-icon{width:47px;height:47px;display:grid;place-items:center;border-radius:15px;color:var(--surface);background:linear-gradient(135deg,var(--brand),var(--brand-light));font-size:20px}
.field-grid,.search-fields{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;margin-top:25px;align-items:end}
label{display:grid;gap:7px;color:var(--text-form-label);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
select,input{width:100%;height:48px;padding:0 14px;border:1px solid var(--border-input);border-radius:12px;outline:none;color:var(--text);font:600 14px var(--font-family-sans-serif);background:var(--surface)}
select:focus,input:focus{border-color:var(--brand-light);box-shadow:0 0 0 4px var(--focus-ring)}
.button{height:48px;padding:0 19px;border:0;border-radius:12px;cursor:pointer;font:800 13px var(--font-family-sans-serif);letter-spacing:.02em}
.primary{display:inline-flex;gap:12px;align-items:center;justify-content:center;color:var(--surface);background:linear-gradient(135deg,var(--brand-dark),var(--brand));box-shadow:0 8px 18px var(--shadow-button)}
.primary:hover{filter:brightness(1.08);transform:translateY(-1px)}
.section-heading{display:flex;align-items:end;justify-content:space-between;margin:46px 0 18px}
.section-heading p{margin:0;color:var(--text-muted)}
.range-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.range-card{min-height:224px;padding:23px;display:flex;flex-direction:column;border:1px solid var(--border-card);border-radius:20px;text-decoration:none;color:var(--text);background:var(--surface);box-shadow:0 8px 25px var(--shadow-card);transition:.2s;animation:rise .45s ease both}
.range-card:hover{transform:translateY(-4px);border-color:var(--brand-light);box-shadow:var(--shadow)}
.range-card-top,.range-card-bottom,.banner-meta,.profile-summary,.result-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.range-card-top{color:var(--brand);font-size:17px}.range-number{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.range-card h3{margin:20px 0 13px;font:800 20px/1.2 var(--font-family-sans-serif)}
.range-meta{display:grid;gap:5px;color:var(--text-secondary);font-size:13px}
.range-meta i,.banner-meta i{width:16px;color:var(--brand-light)}
.range-card-bottom{margin-top:auto;padding-top:18px;color:var(--text-muted);font-size:12px;font-weight:700}
.status-pill{display:inline-flex;gap:7px;align-items:center;white-space:nowrap;padding:6px 10px;border:1px solid;border-radius:100px;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.status-pill b{width:7px;height:7px;border-radius:50%;background:currentColor}
.completed .status-pill{color:var(--success);background:var(--success-bg);border-color:var(--success-border)}
.upcoming .status-pill{color:var(--warning);background:var(--warning-bg);border-color:var(--warning-border)}
.live .status-pill{color:var(--live);background:var(--live-bg);border-color:var(--live-border)}
.live{border-color:var(--live-card-border)}.not-scheduled .status-pill{color:var(--text-neutral);background:var(--neutral-bg);border-color:var(--neutral-border)}
.empty-state{grid-column:1/-1;padding:55px 20px;text-align:center;color:var(--text-muted);border:1px dashed var(--border-dashed);border-radius:20px;background:var(--surface)}
.empty-state i{font-size:28px;color:var(--brand-light)}.empty-state h3{margin:12px 0 0;color:var(--text)}
.empty-state p{margin:4px 0}.site-footer{width:min(1120px,calc(100% - 40px));margin:auto;padding:28px 0;color:var(--text-footer);font-size:12px;display:flex;justify-content:space-between}
.site-footer a{color:var(--brand);text-decoration:none;font-weight:800}.result-page{padding:18px 0 64px}
.range-banner{padding:36px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-radius:24px;color:var(--surface);background:linear-gradient(120deg,var(--brand-night),var(--brand));box-shadow:var(--shadow);animation:rise .5s ease both}
.range-banner .eyebrow{color:var(--on-brand-soft)}
.range-banner h1{font-size:36px}
.banner-meta{margin-top:15px;justify-content:flex-start;color:var(--on-brand-meta);font-size:13px}
.banner-meta span{margin-right:18px}
.banner-meta i{color:var(--on-brand-icon)}
.range-banner .status-pill{color:var(--surface);border-color:var(--white-34);background:var(--white-13)}
.result-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:30px 0 20px}
.tab{min-height:80px;display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:18px;padding:14px;cursor:pointer;text-align:left;color:var(--text-tab);font:800 13px var(--font-family-sans-serif);background:var(--surface);transition:.2s}
.tab>i{width:40px;height:40px;display:grid;place-items:center;border-radius:13px;color:var(--brand-light);font-size:19px;background:var(--surface-icon)}
.tab span{display:grid;gap:2px}
.tab small{color:var(--text-disabled);font-size:10px;font-weight:600}
.tab.active{color:var(--surface);border-color:var(--brand);background:linear-gradient(135deg,var(--brand),var(--brand-mid));box-shadow:0 10px 25px var(--shadow-tab)}
.tab.active>i{color:var(--surface);background:var(--white-18)}
.tab.active small{color:var(--on-brand-subtle)}
.tab.disabled{opacity:.48;cursor:not-allowed}
.result-view{display:none}
.result-view.active{display:block}
.search-card{display:grid;grid-template-columns:270px 1fr;gap:25px}
.search-card .search-fields{margin:0}
.compact{grid-template-columns:1fr 1fr}
.result-output{margin-top:22px}
.result-card,.profile-card{overflow:hidden;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--shadow);animation:rise .4s ease both}
.result-title{padding:25px 28px;border-bottom:1px solid var(--border)}
.count-chip{padding:7px 10px;border-radius:99px;color:var(--brand);font-size:12px;background:var(--brand-soft)}
.winner-grid{display:flex;justify-content:center;gap:36px;padding:42px 25px 25px;flex-wrap:wrap}
.winner{width:min(230px,100%);padding:20px;text-align:center;border-radius:16px;background:var(--surface-muted);animation:rise .5s ease both}
.winner.2{order:1}
.winner.1{order:2;transform:translateY(-20px)}
.winner.3{order:3}
.winner .medal{display:inline-block;margin-bottom:11px;padding:6px 10px;border-radius:99px;color:var(--gold-text);font-weight:800;background:var(--gold-bg)}
.winner.2 .medal{color:var(--silver-text);background:var(--silver-bg)}
.winner.3 .medal{color:var(--bronze-text);background:var(--bronze-bg)}
.avatar,.profile-avatar{overflow:hidden;display:grid;place-items:center;color:var(--surface);font-weight:800;background:linear-gradient(135deg,var(--brand),var(--brand-light))}
.avatar{width:105px;height:105px;margin:auto;border-radius:24px;font-size:25px;border:3px solid var(--surface);box-shadow:0 10px 24px var(--shadow-avatar)}
.winner.1 .avatar{width:146px;height:146px;border-color:var(--gold)}
.avatar img,.profile-avatar img,.mini-avatar img{width:100%;height:100%;object-fit:cover}
.winner-chest{margin:12px 0 3px;color:var(--text-label);font-weight:800}
.winner h3{margin:3px 0 4px;font:800 18px var(--font-family-sans-serif)}
.winner p{min-height:38px;margin:0;color:var(--text-muted);font-size:11px}
.winner strong{display:inline-block;margin-top:10px;color:var(--brand);font-size:13px}
.winner small{color:var(--text-muted);font-weight:700}.poster-action{display:flex;justify-content:center;padding:0 24px 28px}
.placement-list{padding:0 25px 25px}
.placement-list>div{min-height:62px;display:flex;gap:13px;align-items:center;padding:11px 0;border-bottom:1px solid var(--border)}
.placement-list>div:last-child{border:0}
.placement-list>div>span{width:32px;color:var(--brand);font-weight:800;text-align:center}
.placement-list p{flex:1;margin:0;display:grid}
.placement-list small{color:var(--text-muted);font-size:11px}
.placement-list strong{font-size:13px}
.mini-avatar{width:34px;height:34px;overflow:hidden;display:grid;place-items:center;border-radius:50%;color:var(--surface);font-size:10px;font-weight:800;background:var(--brand-light)}
.profile-summary{padding:28px;justify-content:flex-start}
.profile-avatar{width:85px;height:85px;flex:none;border-radius:20px;font-size:24px}
.profile-summary h2{margin-top:2px}
.profile-summary p{margin:6px 0;color:var(--text-muted);font-size:13px}
.profile-stats{margin-left:auto;display:flex;gap:22px}
.profile-stats span{display:grid;color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}
.profile-stats b{color:var(--brand);font-size:22px}.muted-center{width:100%;text-align:center;color:var(--text-muted)}
.select2-container--default .select2-selection--single{height:48px;border:1px solid var(--border-input);border-radius:12px}
.select2-container--default .select2-selection--single .select2-selection__rendered{padding-left:14px;color:var(--text);font:600 14px/47px var(--font-family-sans-serif)}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:46px}
.select2-dropdown{border:1px solid var(--border-input);border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}
.select2-search__field{font-family:var(--font-family-sans-serif)!important}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background:var(--brand)}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes float{50%{transform:translateY(-10px)}}
@media(max-width:800px){
    .hero{min-height:280px;padding:48px 32px}
    .hero-orb{display:none}
    .range-grid{grid-template-columns:repeat(2,1fr)}
    .search-card,.compact{grid-template-columns:1fr}
    .search-card .search-fields{margin-top:0}
    .profile-stats{margin-left:0}
    .profile-summary{flex-wrap:wrap}.field-grid,.search-fields{grid-template-columns:1fr 1fr}
    .field-grid .button,.search-fields .button{grid-column:1/-1}.range-banner{padding:28px}
    .range-banner h1{font-size:30px}
}
@media(max-width:520px){
    .site-header,.container,.hero,.site-footer{width:calc(100% - 28px)}
    .site-header{height:70px}.edition{display:none}
    .hero{margin-bottom:30px;border-radius:20px}
    .hero h1{font-size:39px}.finder-card,.search-card{padding:20px}
    .range-grid,.field-grid,.search-fields{grid-template-columns:1fr}
    .section-heading{margin-top:35px}.range-banner{align-items:flex-start;flex-direction:column;padding:24px}
    .banner-meta{display:grid;gap:7px}.banner-meta span{margin:0}.winner-grid{padding:22px 14px}
    .result-title{padding:20px;align-items:flex-start;flex-direction:column}
    .placement-list{padding:0 18px 18px}.profile-summary{padding:20px}
    .profile-stats{width:100%;justify-content:space-between;gap:5px}
    .profile-stats b{font-size:19px}
    .back-link{font-size:0}
    .back-link i{font-size:14px}
}

/* Leaderboard views: kept in the primary stylesheet so they never depend on mobile.css. */
.leaderboard-shell{overflow:hidden;border:1px solid var(--border);border-radius:24px;background: var(--surface);box-shadow:var(--shadow);animation:rise .35s ease both}
.leaderboard-heading{min-height:132px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 34px;color: var(--surface);background:linear-gradient(135deg,var(--brand-dark),var(--brand) 65%,var(--brand-secondary))}
.leaderboard-heading .eyebrow,.leaderboard-heading p{color: var(--on-brand-muted)}
.leaderboard-heading h2{margin:0;font:800 28px/1.15 var(--font-family-sans-serif)}
.leaderboard-heading p{margin:6px 0 0;font-size:13px}
.icon-button{width:44px;height:44px;flex:0 0 auto;border:1px solid var(--white-35);border-radius:14px;cursor:pointer;color:var(--surface);background:var(--white-14);transition:.2s ease}
.icon-button:hover{transform:rotate(35deg);background:var(--white-24)}
.leaderboard-list{padding:14px 28px 28px}
.leaderboard-row{min-height:78px;display:flex;align-items:center;gap:16px;padding:12px 15px;border-bottom:1px solid var(--border);animation:rise .35s ease both}
.leaderboard-row:last-child{border-bottom:0}.leaderboard-rank{width:32px;flex:0 0 32px;color:var(--text-muted);font-size:16px;font-weight:900;text-align:center}
.leaderboard-row.rank-1 .leaderboard-rank,.leaderboard-row.rank-2 .leaderboard-rank,.leaderboard-row.rank-3 .leaderboard-rank{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--surface);background:var(--rank-gold)}
.leaderboard-row.rank-2 .leaderboard-rank{background: var(--rank-silver)}
.leaderboard-row.rank-3 .leaderboard-rank{background: var(--bronze-dark)}
.team-mark{width:42px;height:42px;display:grid;flex:0 0 42px;place-items:center;border-radius:14px;color:var(--brand);background:var(--brand-soft)}
.team-name{min-width:0;display:grid;flex:1;gap:2px}
.team-name strong{overflow:hidden;color:var(--text);font-size:15px;text-overflow:ellipsis;white-space:nowrap}
.team-name small,.team-points small{color:var(--text-muted);font-size:11px;font-weight:700}
.team-points{color:var(--brand);font-size:22px;text-align:right}
.team-points small{display:block;font-size:9px;letter-spacing:.08em}
.leaderboard-loading,.leaderboard-empty{min-height:250px;display:grid;place-content:center;padding:30px;color:var(--text-muted);text-align:center}
.leaderboard-loading i,.leaderboard-empty i{margin-bottom:12px;color:var(--brand-light);font-size:28px}
.leaderboard-empty h3,.leaderboard-empty p{margin:0}.leaderboard-empty p{margin-top:5px;font-size:13px}
.category-output{padding:28px}.category-section+.category-section{margin-top:42px}
.category-section>header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px;color:var(--text)}
.category-section>header span{font-size:20px;font-weight:900}.category-section>header i{color:var(--crown)}
.category-section>header small{color:var(--text-muted);font-size:11px;font-weight:700}
.category-podium{display:flex;align-items:flex-end;justify-content:center;gap:clamp(18px,5vw,75px);min-height:305px;padding:22px;border:1px solid var(--border-podium);border-radius:20px;background:linear-gradient(180deg,var(--surface-gradient),var(--surface))}
.category-winner{width:min(195px,30%);min-width:0;position:relative;padding:15px 7px 12px;border-radius:18px;text-align:center}
.category-winner.rank-1{padding-top:0;transform:translateY(-18px)}
.category-medal{width:45px;height:45px;display:grid;place-items:center;position:relative;z-index:1;margin:0 0 -9px auto;border:3px solid var(--surface);border-radius:50%;color:var(--surface);background:var(--silver-dark);box-shadow:0 5px 12px var(--shadow-medal);font-size:13px;font-weight:900}
.rank-1 .category-medal{width:52px;height:52px;background:var(--gold-rich);font-size:15px}
.rank-3 .category-medal{background:var(--bronze-mid)}
.category-avatar{width:112px;height:132px;overflow:hidden;display:grid;place-items:center;margin:auto;border:3px solid var(--surface);border-radius:20px;color:var(--surface);background:linear-gradient(135deg,var(--brand),var(--brand-light));box-shadow:0 10px 21px var(--shadow-podium);font-size:24px;font-weight:900}
.rank-1 .category-avatar{width:145px;height:170px;border-color:var(--gold-rich)}
.category-avatar img{width:100%;height:100%;object-fit:cover}
.category-chest{margin-top:11px;color:var(--text-muted);font-size:12px;font-weight:900}
.category-winner h3{min-height:34px;margin:3px 0;overflow-wrap:anywhere;color:var(--text);font-size:15px;line-height:1.12;text-transform:uppercase}
.category-winner p{min-height:28px;margin:0;overflow-wrap:anywhere;color:var(--text-muted);font-size:10px;line-height:1.25}
.category-winner>strong{display:inline-block;margin-top:8px;padding:6px 12px;border-radius:99px;color:var(--brand);background:var(--points-pink);font-size:14px}
.category-winner>strong small{color:var(--text-muted);font-size:10px}
@media(max-width:600px){
    .leaderboard-heading{min-height:120px;padding:25px 20px}
    .leaderboard-heading h2{font-size:23px}
    .leaderboard-heading p{font-size:12px}
    .leaderboard-list,.category-output{padding:12px}
    .leaderboard-row{gap:10px;padding:12px 4px}
    .leaderboard-rank{width:26px;flex-basis:26px;font-size:14px}
    .leaderboard-row.rank-1 .leaderboard-rank,.leaderboard-row.rank-2 .leaderboard-rank,.leaderboard-row.rank-3 .leaderboard-rank{width:30px;height:30px}
    .team-mark{width:34px;height:34px;flex-basis:34px;border-radius:11px}
    .team-name strong{font-size:13px}.team-name small{font-size:9px}
    .team-points{font-size:18px}
    .category-section+.category-section{margin-top:28px}
    .category-section>header span{font-size:16px}
    .category-section>header small{display:none}
    .category-podium{min-height:250px;gap:5px;padding:16px 4px}
    .category-winner{width:33.333%;padding-left:2px;padding-right:2px}
    .category-winner.rank-1{transform:translateY(-10px)}
    .category-medal{width:35px;height:35px;margin-bottom:-7px;border-width:2px;font-size:11px}
    .rank-1 .category-medal{width:41px;height:41px;font-size:12px}
    .category-avatar{width:74px;height:90px;border-radius:15px;font-size:17px}
    .rank-1 .category-avatar{width:98px;height:117px;border-radius:17px}
    .category-chest{margin-top:7px;font-size:10px}
    .category-winner h3{min-height:29px;font-size:11px}
    .category-winner p{min-height:25px;font-size:8px}
    .category-winner>strong{margin-top:5px;padding:5px 7px;font-size:11px}
}

/* Candidate profile: compact identity header and stable score tiles. */
.profile-card{overflow:hidden!important;border:1px solid var(--border)!important;border-radius:24px!important;background:var(--surface)!important;box-shadow:var(--shadow)!important}
.profile-summary{min-height:0!important;display:grid!important;grid-template-columns:132px minmax(0,1fr) auto!important;align-items:center!important;gap:26px!important;padding:30px 34px!important;border:0!important;border-bottom:1px solid var(--border)!important;border-radius:0!important;box-shadow:none!important}
.profile-avatar{width:132px!important;height:132px!important;border-radius:22px!important;background:var(--surface-avatar)!important;color:var(--brand)!important}
.profile-summary>div:nth-child(2){min-width:0;padding:0!important}
.profile-summary .eyebrow{margin:0 0 7px!important;color:var(--brand-light)!important;font-size:11px!important;font-weight:900!important;letter-spacing:.1em!important}
.profile-summary h2{margin:0!important;overflow-wrap:anywhere;color:var(--text)!important;font-size:31px!important;line-height:1.08!important;text-transform:uppercase}
.profile-summary p{margin:7px 0 0!important;overflow-wrap:anywhere;color:var(--text-muted)!important;font-size:14px!important;line-height:1.4}
.profile-stats{width:auto!important;display:grid!important;grid-template-columns:repeat(3,128px)!important;align-self:center!important;gap:12px!important;margin:0!important}
.profile-stats span{width:auto!important;min-height:118px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;padding:12px 8px!important;border-radius:18px!important;color:var(--brand)!important;background:var(--stat-pink)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.08em!important;text-align:center!important;text-transform:uppercase!important}
.profile-stats span:nth-child(2){background:var(--brand-wash-2)!important}
.profile-stats span:nth-child(3){background:var(--stat-pink-soft)!important}
.profile-stats span:before{font-size:23px!important}
.profile-stats b{display:block!important;color:var(--brand)!important;font-size:32px!important;line-height:1!important}
.profile-card>.placement-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;margin:0!important;padding:26px 30px!important;border:0!important;border-radius:0!important;background:var(--surface)!important}
.profile-card>.placement-list>div{min-height:82px!important;padding:12px 16px!important;border:1px solid var(--border)!important;border-radius:16px!important}
.profile-card>.placement-list>div>span{width:52px!important;height:52px!important;flex:0 0 52px!important;border-radius:14px!important;font-size:16px!important}
.profile-card>.placement-list p b{font-size:15px!important}
.profile-card>.placement-list p small{font-size:11px!important}
.profile-card>.placement-list strong{font-size:14px!important}
.profile-card .poster-action{padding:0 24px 28px!important}
@media(max-width:760px){
    .profile-summary{grid-template-columns:100px minmax(0,1fr)!important;padding:24px!important;gap:18px!important}
    .profile-avatar{width:100px!important;height:100px!important;border-radius:19px!important}
    .profile-summary h2{font-size:24px!important}.profile-summary p{font-size:13px!important}
    .profile-stats{grid-column:1/-1!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:100%!important;gap:9px!important}
    .profile-stats span{min-height:96px!important;font-size:9px!important}
    .profile-stats span:before{font-size:19px!important}
    .profile-stats b{font-size:27px!important}
    .profile-card>.placement-list{grid-template-columns:1fr!important;padding:18px!important;gap:10px!important}
    .profile-card .poster-action{padding:0 18px 22px!important}
}
@media(max-width:410px){
    .profile-summary{grid-template-columns:1fr!important}
    .profile-avatar{width:96px!important;height:96px!important}
    .profile-summary h2{font-size:23px!important}
    .profile-stats{gap:6px!important}
    .profile-stats span{min-height:88px!important;padding:8px 3px!important;font-size:8px!important}
    .profile-stats b{font-size:24px!important}
}

/* Clickable category toppers open the matching candidate profile. */
.category-winner[data-chest-no]{cursor:pointer;transition:transform .2s ease,background .2s ease;outline:none}
.category-winner[data-chest-no]:hover,.category-winner[data-chest-no]:focus-visible{background:var(--surface-hover)}
.category-winner[data-chest-no]:hover{transform:translateY(-5px)}
.category-winner.rank-1[data-chest-no]:hover{transform:translateY(-23px)}
.category-winner[data-chest-no]:focus-visible{box-shadow:0 0 0 3px var(--focus-outline)}
@media(max-width:600px){
    .category-winner.rank-1[data-chest-no]:hover{transform:translateY(-14px)}
}

/* Programme lookup and participant links in programme results. */
.programme-search .search-fields{grid-template-columns:minmax(0,1fr) auto}
.winner[data-chest-no],.programme-placement[data-chest-no]{cursor:pointer;outline:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.winner[data-chest-no]:hover{transform:translateY(-6px);box-shadow:0 15px 28px var(--shadow-hover)}
.winner[class~="1"][data-chest-no]:hover{transform:translateY(-34px)}
.winner[data-chest-no]:focus-visible,.programme-placement[data-chest-no]:focus-visible{box-shadow:0 0 0 3px var(--focus-outline)}
.programme-placement[data-chest-no]:hover{border-color:var(--brand-border);background:var(--surface-highlight)}
@media(max-width:600px){
    .programme-search .search-fields{grid-template-columns:1fr}.winner[class~="1"][data-chest-no]:hover{transform:translateY(-2px)}
}

.category-podium.category-podium-tied .category-winner,
.category-podium.category-podium-tied .category-winner.rank-1 {
    transform: none;
    margin-top: 0;
}
