@import url('/css/font.css');
:root{--ink:#18232d;--muted:#65727c;--orange:#e85b32;--line:#e5e7e7;--paper:#fff;--warm:#f5f4f0;--shadow:0 12px 40px #19263407}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--warm);color:var(--ink);font:16px/1.6 'Maven Pro',Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #edac48;outline-offset:4px}button:disabled{opacity:.5;cursor:default}.portal-header{display:flex;align-items:center;gap:34px;background:#16232d;color:#f8f7f3;padding:18px 3vw;min-height:86px;border-bottom:1px solid #ffffff18}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap;letter-spacing:1.4px;font-size:13px;line-height:1.4}.brand img{width:46px;height:46px;border-radius:13px}.brand b{display:block;color:#ffc978;font-size:17px;letter-spacing:2px}.desktop-nav{display:flex;align-self:stretch;align-items:center;gap:30px}.desktop-nav a{font-size:14px;color:#c1cbd1;position:relative}.desktop-nav a[aria-current]{color:#fff}.desktop-nav a[aria-current]:after{content:'';position:absolute;bottom:-12px;left:0;right:0;height:3px;background:#f39757;border-radius:4px}.header-account{display:flex;gap:22px;align-items:center;margin-left:auto;white-space:nowrap;font-size:13px}.balance{border:1px solid #ffffff30;background:#ffffff08;padding:8px 16px;border-radius:8px;font-weight:700;color:#ffd595}.balance span{font-weight:400;margin-left:4px}.logout{color:#b9c3ca}.portal-main{width:100%;padding:28px 3vw 40px}.portal-hero{min-height:380px;height:clamp(380px,32vw,530px);position:relative;isolation:isolate;overflow:hidden;background:#13212a;border-radius:20px;display:flex;align-items:center;color:white}.hero-art{position:absolute;inset:0 0 0 32%;background:url('/images/banner.jpg') center 32%/cover no-repeat;z-index:-2}.portal-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#13212a 0%,#13212afa 24%,#13212ad9 40%,#13212a30 72%),linear-gradient(0deg,#13212a88,transparent 40%)}.hero-copy{padding:40px 4vw;width:62%;max-width:950px}.eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--orange);margin-bottom:9px}.hero-copy .eyebrow{color:#f4c47f}.hero-copy h1{font-size:clamp(32px,3.3vw,60px);line-height:1.12;letter-spacing:-1.7px;margin:18px 0 20px}.hero-copy em,.event-heading em{font-style:normal;color:#ffc982}.hero-copy p{max-width:465px;color:#ccd5da;font-size:15px}.hero-actions{display:flex;gap:12px;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:13px 20px;border-radius:9px;border:1px solid transparent;font-size:14px;font-weight:700;line-height:1.5;transition:transform .16s,background .16s}.button:hover{transform:translateY(-2px)}.primary{background:var(--orange);color:#fff;box-shadow:0 5px 16px #e85b321a}.primary:hover{background:#d94c25}.glass{background:#ffffff0c;border-color:#ffffff30;color:white}.dark{background:var(--ink);color:white}.hero-tag{position:absolute;right:30px;bottom:24px;font-size:12px;font-weight:700;letter-spacing:2px;text-align:right;text-shadow:0 2px 5px #000}.hero-tag span{display:block;font-size:9px;letter-spacing:2px;color:#d0d7da;margin-top:3px}.home-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px;margin-top:24px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.account-panel{padding:28px 32px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}h2{font-size:25px;line-height:1.3;margin:0 0 14px;letter-spacing:-.6px}.live-dot{font-size:12px;color:#31775d;white-space:nowrap}.live-dot:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#519c77;margin-right:7px}.security-note{display:flex;gap:15px;justify-content:space-between;background:#fff6e7;color:#8b5e20;font-size:13px;padding:11px 15px;border-radius:7px;margin:10px 0 18px}.wallet{display:flex;align-items:center;justify-content:space-between;padding:18px 0 24px;border-bottom:1px solid var(--line)}.wallet span,.account-details span{display:block;color:var(--muted);font-size:13px}.wallet strong{display:block;font-size:36px;font-weight:700;letter-spacing:-1px}.wallet small{font-size:17px;color:var(--orange)}.account-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.account-details b{font-size:14px;font-weight:500;word-break:break-word}.account-links{display:flex;gap:22px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px;font-size:12px;font-weight:600}.account-links a:hover{color:var(--orange)}.event-promo{padding:30px 32px;background:linear-gradient(130deg,#fff8e9,#f6e7c7);position:relative;overflow:hidden;border-color:#ecd9b8}.event-promo h2{position:relative;font-size:30px;line-height:1.3;margin:35px 0 14px;max-width:80%}.event-promo p{position:relative;max-width:360px;color:#76684e;font-size:14px;margin-bottom:22px}.promo-number{position:absolute;right:26px;top:37px;color:#b5833630;font-size:20px;letter-spacing:5px;font-weight:900;text-align:center;line-height:.9;transform:rotate(-8deg)}.promo-number span{display:block;font-size:118px;letter-spacing:-8px;margin-top:8px}.download-section{display:flex;gap:32px;align-items:center;padding:34px 0 8px}.download-section>div:first-child{min-width:27%}.download-section h2{margin-bottom:6px}.download-section p{font-size:14px;color:var(--muted);margin:0}.download-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;flex:1}.download-links>a{border:1px solid var(--line);background:#fff;border-radius:12px;padding:20px;display:flex;align-items:center;gap:14px}.download-links>a>span{border-radius:10px;background:#f4eee7;width:40px;height:40px;text-align:center;line-height:40px;font-size:22px;color:var(--orange)}.download-links b{font-size:16px;white-space:nowrap}.download-links small{font-size:11px;display:block;color:var(--muted);font-weight:400;margin-top:3px}.download-links i{margin-left:auto;font-style:normal;color:var(--muted)}.portal-footer{display:flex;gap:25px;align-items:center;border-top:1px solid #dedfdf;padding:25px 3vw;font-size:12px;color:var(--muted)}.portal-footer>span:first-child{font-weight:700;letter-spacing:1px;color:var(--ink)}.portal-footer>span:nth-child(2){margin-right:auto}.mobile-nav{display:none}.event-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0 28px}.event-heading h1{font-size:clamp(28px,3vw,46px);line-height:1.2;margin:10px 0;letter-spacing:-1.5px}.event-heading em{color:var(--orange)}.event-heading p{margin:0;color:var(--muted);font-size:14px}.race-panel{overflow:hidden}.race-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:24px 28px}.race-toolbar select{border:0;border-bottom:1px solid #d5d8da;padding:6px 30px 6px 0;background:white;max-width:70vw;font-weight:700;color:var(--ink)}.status-badge{font-size:12px;padding:6px 13px;background:#eff1f2;border-radius:30px;white-space:nowrap;color:#53636e}.status-badge[data-status=active]{color:#257955;background:#e8f5ed}.status-badge[data-status=scheduled]{color:#98702b;background:#fff4d8}.race-meta{display:grid;grid-template-columns:repeat(4,1fr);padding:23px 28px;background:#f8f9f9;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:20px}.race-meta[hidden]{display:none}.race-meta span{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.race-meta strong{font-size:14px;font-variant-numeric:tabular-nums}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.race-table{width:100%;border-collapse:collapse;font-size:14px;white-space:nowrap}.race-table th{font-size:11px;color:#75818a;letter-spacing:.3px;text-align:right;padding:20px 28px;background:#fff;border-bottom:1px solid var(--line);line-height:1.6}.race-table td{padding:20px 28px;border-bottom:1px solid #eef0f1;text-align:right;font-variant-numeric:tabular-nums}.race-table td:first-child,.race-table th:first-child{text-align:left;width:85px;font-weight:700}.race-table td:last-child,.race-table th:last-child{text-align:left}.race-table td:last-child strong{font-weight:600;white-space:normal;word-break:break-word;display:inline-block;max-width:260px;vertical-align:middle}.race-table .gain{color:#25805d;font-weight:700}.race-table .rank-1{background:#fffbef}.race-table .rank-1 td:first-child{color:#bb852b}.race-table .rank-2 td:first-child{color:#738995}.race-table .rank-3 td:first-child{color:#a96840}.server-tag{display:inline-block;vertical-align:middle;font-size:10px;color:#687983;background:#eef1f3;border-radius:5px;padding:2px 6px;margin-left:10px}.race-table .empty-state{text-align:center;padding:65px 20px;font-weight:400;color:var(--muted);white-space:normal}.race-foot{display:flex;justify-content:space-between;gap:10px;padding:16px 28px;color:#7e8a92;font-size:11px}.race-alert{margin:0;padding:12px 28px;background:#fff2d9;color:#89611e;font-size:13px}.rules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:32px}.rules-grid article{position:relative;padding-left:38px}.rules-grid article>span{position:absolute;left:0;top:0;color:var(--orange);font-weight:700;font-size:13px}.rules-grid h3{font-size:15px;margin:0 0 8px}.rules-grid p{font-size:13px;color:var(--muted);margin:0}dialog{border:0;border-radius:18px;padding:28px;width:min(620px,calc(100% - 28px));max-height:85dvh;overflow:auto;box-shadow:0 30px 120px #0004;color:var(--ink)}dialog::backdrop{background:#111f2bcc;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.dialog-heading h2{margin:0}.icon-button{border:0;background:#f1f3f4;border-radius:50%;font-size:25px;line-height:38px;width:38px;height:38px;flex-shrink:0}.reward-list>div{display:grid;grid-template-columns:70px 1fr;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}.reward-list b{font-size:13px;color:var(--orange)}.reward-list p{font-size:14px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.muted{font-size:12px;color:var(--muted)}
@media(min-width:1800px){.portal-main{padding-left:4vw;padding-right:4vw}.hero-copy{padding-left:5vw}.home-grid{grid-template-columns:1.6fr 1fr}}
@media(max-width:1100px){.portal-header{gap:20px}.desktop-nav{gap:20px}.logout{display:none}.download-section{display:block}.download-links{margin-top:18px}.hero-copy{width:72%}.hero-tag{display:none}.home-grid{grid-template-columns:1.2fr 1fr}.account-panel,.event-promo{padding:24px}.account-links{gap:13px}.live-dot{display:none}.race-table th,.race-table td{padding:18px}.race-meta{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom));font-size:14px}.portal-header{padding:12px 16px;min-height:70px}.brand{font-size:10px;gap:9px}.brand b{font-size:13px;letter-spacing:1.5px}.brand img{width:38px;height:38px}.desktop-nav{display:none}.header-account{gap:8px;font-size:12px}.balance{padding:7px 11px}.portal-main{padding:16px 14px 24px}.portal-hero{height:470px;min-height:0;border-radius:14px;align-items:flex-end}.hero-art{inset:0;background-position:60% top;background-size:auto 340px}.portal-hero:after{background:linear-gradient(0deg,#13212a 12%,#13212af2 38%,#13212a36 83%)}.hero-copy{width:100%;padding:26px 22px}.hero-copy h1{font-size:31px;line-height:1.16;letter-spacing:-1px;margin:13px 0}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.3px}.hero-copy p{font-size:13px;max-width:360px}.hero-actions{gap:9px;margin-top:21px}.button{font-size:12px;padding:12px 15px;gap:13px}.home-grid{display:block;margin-top:16px}.home-grid>.panel{margin-bottom:16px}.account-panel,.event-promo{padding:23px 21px;border-radius:13px}.eyebrow{font-size:10px;letter-spacing:1.5px}h2{font-size:22px}.security-note{font-size:12px}.wallet{padding-bottom:17px}.wallet strong{font-size:30px}.account-details{gap:10px;margin:19px 0}.account-details b{font-size:12px}.account-links{font-size:11px;gap:12px}.event-promo h2{font-size:27px;margin-top:25px}.promo-number{right:20px;top:45px}.promo-number span{font-size:100px}.download-section{padding-top:13px}.download-links{grid-template-columns:1fr;gap:9px}.download-links>a{padding:14px 18px}.download-links small{display:inline;margin-left:10px}.portal-footer{display:flex;flex-wrap:wrap;padding:20px 18px;gap:10px 22px;font-size:11px}.portal-footer>span:nth-child(2){width:100%;order:3}.mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;bottom:0;left:0;right:0;z-index:30;background:#fff;border-top:1px solid #e4e8ea;padding:8px 0 calc(8px + env(safe-area-inset-bottom));box-shadow:0 -5px 25px #15212b0b}.mobile-nav a{text-align:center;font-size:23px;line-height:1.3;color:#7a8790}.mobile-nav span{display:block;font-size:10px;font-weight:600;margin-top:4px}.mobile-nav a[aria-current]{color:var(--orange)}.event-heading{display:block;padding:15px 3px 24px}.event-heading h1{font-size:33px;letter-spacing:-1px;max-width:330px}.event-heading .button{margin-top:20px}.race-toolbar{padding:19px 16px;gap:8px}.race-toolbar select{max-width:53vw;font-size:13px}.status-badge{font-size:10px;padding:5px 8px}.race-meta{padding:18px 16px;gap:18px 10px}.race-meta strong{font-size:11px}.race-meta span{font-size:10px}.race-table{font-size:12px;min-width:660px}.race-table th,.race-table td{padding:15px 13px}.race-table th{font-size:10px}.race-table td:first-child,.race-table th:first-child{position:sticky;left:0;background:#fff;z-index:1;box-shadow:4px 0 7px #15212b06;width:48px}.race-table .rank-1 td:first-child{background:#fffbef}.race-foot{display:block;padding:14px 16px;font-size:10px}.race-foot>span{display:block;margin-bottom:5px}.race-alert{padding:12px 16px;font-size:12px}.rules-grid{grid-template-columns:1fr;gap:24px;margin:26px 5px 0}.rules-grid article{padding-left:35px}.rules-grid p{font-size:12px}dialog{padding:22px 19px}.dialog-heading h2{font-size:22px}.reward-list>div{grid-template-columns:53px 1fr;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.race-table .my-rank-heading td{background:#edf4f8;border-top:2px solid #bacfdb;padding:14px 28px;text-align:left}.my-rank-heading td>div{display:flex;align-items:center;gap:24px;justify-content:space-between}.my-rank-heading label{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:400;color:#566b79}.my-rank-heading select{max-width:320px;padding:7px 10px;border:1px solid #c4d5df;border-radius:7px;background:white;color:#18232d;font-size:12px}.race-table .my-rank-row td{background:#f2f8fc;font-weight:600;border-bottom:0}.race-table .my-rank-row .my-rank-message{text-align:left;font-weight:400;white-space:normal;color:#65727c}.race-table .my-rank-row td:first-child{color:#246687}@media(max-width:700px){.race-table .my-rank-heading td{position:static;padding:14px}.my-rank-heading td>div{justify-content:flex-start;gap:20px}.my-rank-heading select{max-width:230px}.race-table .my-rank-row td:first-child{background:#f2f8fc}}
@media(max-width:700px){.my-rank-heading td>div{flex-direction:column;align-items:flex-start;gap:8px}.my-rank-heading select{max-width:255px}}

/* Cluster selectors */
.race-toolbar{flex-wrap:wrap;gap:16px}.race-toolbar>div{min-width:0}#event-select,#group-select{max-width:100%;width:100%;padding:10px 12px;border:1px solid #d8dfe2;border-radius:8px;background:#fff;color:#17384a;font:inherit}#group-select{min-width:180px}@media(max-width:600px){.race-toolbar>div{width:100%}}
