:root{font-family:-apple-system,BlinkMacSystemFont,'Noto Sans JP',Arial,sans-serif;color:#272e36;background:#f8f9fb;font-synthesis:none;--blue:#22b2d9;--ink:#25303c;--line:#e4e8ec}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #6dd8f4;outline-offset:3px}[hidden]{display:none!important}header{height:74px;padding:0 max(20px,calc((100vw - 950px)/2));background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.brand{font-size:27px;font-weight:900;letter-spacing:-.06em;color:#273746;text-decoration:none;line-height:1}.brand span{color:var(--blue)}.brand small{font-size:12px;font-weight:600;letter-spacing:0;display:block;margin-top:8px;color:#718091}.game-label{font-size:12px;color:#568396;background:#edf8fb;padding:6px 10px;border-radius:5px}.racebar{position:sticky;top:0;z-index:10;min-height:69px;padding:10px max(20px,calc((100vw - 760px)/2));background:#ffffffed;backdrop-filter:blur(10px);border-bottom:1px solid #d9e4ec;display:flex;justify-content:space-between;align-items:center;gap:16px;box-shadow:0 2px 8px #14344308}.racebar>div{display:flex;gap:13px;align-items:center}.racebar small{color:#668394;font-size:12px;max-width:86px}.racebar strong{font-size:28px;letter-spacing:-.04em;color:#1b91b5;font-variant-numeric:tabular-nums}.racebar strong span{font-size:16px;margin-left:4px}.ghost{padding:9px 14px;border:1px solid #d8e2e9;border-radius:7px;background:white;color:#4b6678;font-size:14px;font-weight:650}.ghost:hover{background:#f0f9fc}.task-peek{position:sticky;top:69px;z-index:9;background:#ecfaff;border-bottom:1px solid #bce7f2;padding:16px max(20px,calc((100vw - 760px)/2));box-shadow:0 5px 15px #164b6020}.task-peek dl{margin:0;display:flex;gap:12px 22px;flex-wrap:wrap}.task-peek dl>div{display:block}.task-peek dt{font-size:12px;color:#6c8796;margin-bottom:4px}.task-peek dd{font-size:15px;font-weight:750;margin:0}main{max-width:760px;margin:0 auto;padding:32px 20px 65px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.13em;color:#1598bd}.prepare{max-width:600px;margin:14px auto 0}.prepare h1{font-size:clamp(30px,7vw,47px);font-weight:850;letter-spacing:-.05em;line-height:1.45;margin:15px 0 16px}.prepare h1 span{color:#159ec6}.lead{font-size:16px;line-height:1.8;color:#76818b;margin-bottom:28px}.task-card{border:1px solid #d6e3eb;background:white;border-radius:12px;overflow:hidden;box-shadow:0 10px 35px #2a657b08}.task-heading{padding:17px 20px;background:#ecfaff;border-bottom:1px solid #d9edf2;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:14px}.task-heading span{color:#2a8ba8;font-weight:800}.task-heading b{font-weight:650;color:#516e7d}.task-card dl{margin:0;padding:6px 20px}.task-card dl>div{padding:16px 0;display:grid;grid-template-columns:105px 1fr;gap:14px;border-bottom:1px solid #edf0f3}.task-card dl>div:last-child{border:0}.task-card dt{font-size:14px;color:#7c8994;line-height:1.7}.task-card dd{margin:0;font-size:18px;font-weight:750;line-height:1.6;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.task-card dd small{font-size:13px;font-weight:500;color:#7f8c99;display:block;margin-top:3px}.instructions{font-size:15px;line-height:1.8;color:#647888;margin:22px 0}.primary{width:100%;border:0;background:var(--blue);color:#fff;border-radius:7px;padding:16px;font-size:17px;font-weight:750;box-shadow:0 3px 0 #1890b2;transition:background .15s}.primary:hover{background:#17a0c7}.primary:active{transform:translateY(1px);box-shadow:0 2px 0 #1890b2}.primary:disabled{opacity:.45;cursor:not-allowed}.big{padding:18px}.ready-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:18px}.ready-actions span{font-size:12px;color:#8c97a1;line-height:1.6}.best-box{margin:25px 0;padding:18px 20px;background:#edf2f5;border-radius:9px;display:flex;justify-content:space-between;align-items:center;gap:16px}.best-box span{font-size:13px;color:#748594}.best-box strong{color:#364e61;font-size:18px;font-variant-numeric:tabular-nums}.fineprint{font-size:12px;color:#91a0ad;line-height:1.8}.event-banner{min-height:240px;border-radius:10px;background:linear-gradient(120deg,#106789,#19a7d1 60%,#91d9ec);padding:30px;color:white;display:flex;flex-direction:column;justify-content:space-between;box-shadow:inset 0 0 0 1px #fff4}.event-banner>span{font-size:12px;letter-spacing:.16em;font-weight:700}.event-banner h1{font-size:clamp(40px,9vw,65px);line-height:1.03;letter-spacing:-.065em;margin:24px 0;font-weight:950}.event-banner>div{font-size:11px;letter-spacing:.1em}.event-info{padding:22px 0}.event-info h1{font-size:22px;line-height:1.6;font-weight:750;margin:0 0 22px}.event-info dl{margin:0}.event-info dl>div{display:grid;grid-template-columns:90px 1fr;gap:10px;padding:11px 0}.event-info dt{font-size:13px;font-weight:700;color:#8494a2}.event-info dd{font-size:15px;line-height:1.65;margin:0;color:#425361}.event-info small{font-size:13px;color:#8b98a5}.section-heading{padding:25px 0 17px;border-top:1px solid var(--line);margin-top:15px}.section-heading small{font-size:11px;font-weight:800;letter-spacing:.15em;color:#169bbf}.section-heading h2{font-size:23px;margin:6px 0 0}.section-note{font-size:14px;color:#718596;margin:0 0 20px}.ticket{border:1px solid #dfe6ec;background:#fff;border-radius:8px;margin:16px 0;padding:20px}.ticket-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.ticket-head b{font-size:18px;font-weight:750}.sale-tag{color:#1fa2c5;font-size:12px;background:#eaf9fe;padding:5px 10px;border-radius:4px}.ticket-meta{font-size:12px;color:#93a0ac;margin:11px 0 23px}.ticket-bottom{display:flex;justify-content:space-between;align-items:center;gap:18px}.ticket-bottom strong{font-size:23px;font-variant-numeric:tabular-nums}.ticket-bottom small{font-size:11px;color:#99a4ac;display:block;margin-top:5px}.ticket-bottom label{display:flex;align-items:center;font-size:13px;color:#7a8994;gap:12px}.ticket-bottom select{width:80px}.event-details{margin-top:40px;padding:26px 0;border-top:1px solid var(--line)}.event-details h2{font-size:20px}.event-details p{font-size:14px;color:#7c8c9a;line-height:1.9}.steps{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#a0acb6;border-bottom:1px solid #e3e9ee;padding:15px 0 20px}.steps b{color:#139cc5}.page-title{font-size:25px;line-height:1.6;margin:26px 0}.order-summary{background:#fff;border:1px solid #dde7ed;border-radius:8px;padding:20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:15px}.order-summary small{width:100%;font-size:12px;color:#8293a1}.form-section{background:white;border:1px solid #e0e7ed;border-radius:8px;padding:24px;margin-top:25px}.form-section h2{font-size:20px;margin:0 0 24px;line-height:1.5}.field-label{display:block;font-size:14px;color:#455b6b;margin:18px 0 10px;font-weight:650}.required{font-size:10px;font-weight:500;color:#ef6375;border:1px solid #f6bcc5;padding:2px 4px;border-radius:3px;margin-left:7px}select,input[type=text]{background:#fff;border:1px solid #ccd7df;border-radius:5px;padding:13px 12px;color:#2c4356;font-size:16px;min-height:48px;width:100%}select{padding-right:24px}.payment-choices{display:grid;gap:12px}.payment-choices>label{display:flex;gap:12px;align-items:flex-start;padding:18px 14px;border:1px solid #d8e3eb;border-radius:6px;cursor:pointer;background:#fff}.payment-choices label:has(input:checked){background:#eefaff;border-color:#22b2d9}.payment-choices input{accent-color:#22b2d9;width:18px;height:18px;margin:2px 0}.payment-choices b{font-size:16px;font-weight:650}.payment-choices small{display:block;color:#8999a7;font-size:12px;margin-top:7px;line-height:1.5}.name-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-help{font-size:12px;color:#8799a8;margin:10px 0;line-height:1.7}.saved-card{margin:24px 0;padding:18px;background:#f3f6f8;border-radius:6px}.saved-card span{display:block;font-size:12px;color:#8194a4}.saved-card b{display:block;margin-top:12px;font-size:18px;letter-spacing:.08em}.cvv-input{max-width:150px}.confirmation dl{margin:0}.confirmation dl>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;font-size:14px}.confirmation dt{color:#6d8191}.confirmation dd{margin:0;text-align:right}.confirmation .total{padding-top:19px;border-top:1px solid #e4ebef;font-size:20px;font-weight:750;margin-top:8px}.confirmation p,.notice p{font-size:13px;color:#8293a2;line-height:1.9}.notice{min-height:250px}.notice p{margin:20px 0}.error{font-size:14px;line-height:1.7;color:#db465f;margin:8px 0;min-height:0}.error:empty{display:none}.invalid{border-color:#e36072!important;background:#fff9fa!important}#complete{margin-top:28px}.back{display:block;margin:22px auto;width:100%;background:transparent}.result{max-width:590px;margin:10px auto;text-align:center}.success-icon{margin:15px auto 25px;width:64px;height:64px;display:grid;place-items:center;background:#e0f8ff;border:1px solid #a9e5f3;border-radius:50%;font-size:34px;color:#19a9cf}.result h1{font-size:30px;margin:12px 0}.result>p{font-size:14px;color:#7f929f}.result-time{padding:24px;margin:24px 0 16px;background:white;border:1px solid #d5e8ee;border-radius:12px}.result-time small{display:block;color:#738d9b;font-size:13px}.result-time strong{font-size:clamp(44px,12vw,70px);font-weight:850;letter-spacing:-.06em;color:#199fca;font-variant-numeric:tabular-nums}.result-time>span{font-size:16px;margin-left:8px;color:#6d91a3}.record-badge{display:inline-block;color:#b37b19;background:#fff4d8;border:1px solid #f1d792;padding:7px 16px;border-radius:30px;font-size:13px;font-weight:700}.result-meta{margin:25px 0;background:#edf3f6;padding:13px 20px;border-radius:8px}.result-meta>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:13px}.result-meta span{color:#7c909f}.result-meta b{font-weight:650;color:#405d70}.result h2{font-size:18px;text-align:left;margin-top:30px}.splits{list-style:none;padding:0;margin:0 0 32px;text-align:left}.splits li{display:grid;grid-template-columns:22px 1fr auto;gap:12px;padding:15px 0;border-bottom:1px solid #e0e8ed;align-items:center;font-size:14px}.splits li b{color:#69b6ce}.splits li>span:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:750;color:#356678}.splits li small{display:block;font-weight:400;font-size:11px;color:#96a6b1;margin-top:4px}footer{border-top:1px solid #e4eaee;background:#f0f3f6;padding:28px 20px 35px;text-align:center;color:#7c8e9d;font-size:12px}footer b{display:block;color:#577c91;font-size:14px}footer>span{display:block;font-size:10px;margin-top:7px;letter-spacing:.08em}footer button{margin-top:18px}@media(min-width:800px){main{padding-top:45px}.prepare{margin-top:20px}.event-banner{min-height:310px;padding:40px}.form-section{padding:30px}}@media(max-width:380px){main{padding:25px 15px 50px}.racebar{padding:10px 15px}.racebar strong{font-size:24px}.task-card dl>div{grid-template-columns:85px 1fr;gap:10px}.form-section{padding:20px}.ready-actions{align-items:flex-start}.task-heading{padding:15px}.ticket{padding:17px}}@media(prefers-reduced-motion:reduce){.primary{transition:none}}
.battle-card{background:white;border:1px solid #d6e7ed;border-radius:12px;padding:20px;margin:20px 0;text-align:left}.battle-card label{display:block;margin-bottom:8px;font-weight:700}.battle-card input{width:100%;box-sizing:border-box}.battle-card p{font-size:14px;line-height:1.7}.battle-card button,.share-link{margin:6px 0}.share-link{display:block;text-align:center;text-decoration:none}.battle-card ol{padding:0}.battle-card summary{cursor:pointer;font-weight:700;padding:12px 0}.battle-card li.mine{background:#e4faff}.battle-card .ready-actions select{min-width:0;flex:1}#socialStatus,#scoreStatus,#rankStatus{overflow-wrap:anywhere;color:#35616e}#battleLinks{display:grid;gap:4px}#battleLinks[hidden]{display:none}button:disabled{opacity:.5;cursor:wait}

.racebar #clock{font-variant-numeric:tabular-nums;font-size:clamp(23px,6vw,34px)}.countdown #saleStatus{font-weight:800;color:#296576;padding:12px;border:1px solid #96d9e6;border-radius:8px;background:#e9f9fc}.countdown.sale-open #saleStatus{background:#dff9e9;color:#16733e;border-color:#62bc88}#flying h1{color:#c73c49}#resultReload{font-size:15px}.countdown .fineprint{line-height:1.8}

.issued-ticket{text-align:left;background:white;border:1px solid #cadde4;border-radius:16px;overflow:hidden;margin:24px 0;box-shadow:0 12px 32px #143f5514}.ticket-band{background:#21afd2;color:white;padding:16px 20px;font-weight:900;display:flex;justify-content:space-between;gap:12px}.ticket-band span{font-size:12px}.issued-body{padding:24px}.issued-body h2{font-size:26px;margin:10px 0}.issued-body>p{font-size:13px}.admission{border-top:2px dashed #c5dce4;border-bottom:2px dashed #c5dce4;margin:24px -24px;padding:24px;text-align:center}.admission span{display:block;font-size:14px}.admission strong{font-size:64px;color:#123d52;font-weight:900;letter-spacing:3px}.issued-body dl div{display:flex;justify-content:space-between;gap:12px;margin:12px 0}.issued-body dd{margin:0;overflow-wrap:anywhere}.invalid-result #resultTitle{color:#c02d42}.invalid-result .success-icon{background:#fff0f2;color:#c02d42}

/* Reference-style mobile admission card. */
.issued-ticket{max-width:440px;margin:24px auto;border:0;border-radius:0;background:#f9c8cc;box-shadow:0 14px 40px #412f381c;padding:0 22px 20px;overflow:hidden}
.ticket-brand{display:flex;align-items:center;gap:3px;background:white;margin:0 -22px;padding:17px 20px;color:#ef819d;font-size:25px;font-weight:900;letter-spacing:-1px}.ticket-brand>span{color:#299fc9}.ticket-brand>small{margin-left:auto;color:#888;font-size:9px;letter-spacing:1px}
.ticket-poster{height:330px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(125deg,#a5def5,#ffb4dc 45%,#f7edac)}
.poster-art{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;color:#fff;filter:blur(6px);transform:scale(1.12);background:radial-gradient(ellipse at 10% 15%,#9d6ce8,transparent 55%),radial-gradient(ellipse at 85% 75%,#f1c640,transparent 45%)}.poster-art span{font-size:65px;font-weight:900;letter-spacing:6px}.poster-art b{font-size:36px;font-weight:900}.poster-art i{font-size:14px}.ticket-code{position:relative;width:76%;height:auto;max-width:260px;box-shadow:0 0 0 5px white;background:white}
.issued-body{background:#fff;padding:22px 20px 0}.issued-body h2{font-size:clamp(20px,5.5vw,28px);line-height:1.25;margin:0 0 13px;font-weight:900}.issued-body .ticket-venue{font-size:13px;font-weight:700;margin:0 0 18px}
.ticket-schedule{display:flex;align-items:center;gap:14px;padding-bottom:24px}.ticket-schedule>strong{font-size:31px;white-space:nowrap;padding-right:13px;border-right:1px solid #eee}.ticket-schedule>strong small{font-size:17px}.ticket-schedule>div{display:flex;flex-direction:column}.ticket-schedule>div small{font-size:10px;color:#888}.ticket-schedule>div b{font-size:20px}
.ticket-stub{position:relative;border-top:2px dashed #eee;margin:0 -20px;padding:21px 20px;display:flex;align-items:center;gap:12px;justify-content:space-between}.ticket-stub::before,.ticket-stub::after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:#f9c8cc;top:-12px}.ticket-stub::before{left:-11px}.ticket-stub::after{right:-11px}.ticket-person{display:flex;flex-direction:column;gap:6px;min-width:0}.ticket-person span{font-size:13px;overflow-wrap:anywhere}.ticket-person strong{font-size:17px}.ticket-person small{font-size:10px;color:#888;overflow-wrap:anywhere}.ticket-stub .admission{flex-shrink:0;background:#ef4145;color:#fff;border:0;border-radius:3px;margin:0;padding:10px 12px;text-align:center;min-width:100px}.ticket-stub .admission span{font-size:10px;color:white}.ticket-stub .admission strong{font-size:clamp(26px,8vw,36px);line-height:1.2;color:white;letter-spacing:0;white-space:nowrap}.ticket-demo{font-size:10px;text-align:center;color:#744e56;padding-top:13px}
@media(max-width:360px){.issued-ticket{padding:0 14px 14px}.ticket-brand{margin:0 -14px}.issued-body{padding:18px 14px 0}.ticket-stub{margin:0 -14px;padding:18px 14px}.ticket-schedule{gap:8px}.ticket-schedule>strong{font-size:27px;padding-right:8px}.ticket-schedule>div b{font-size:18px}.ticket-poster{height:285px}}
