html{scroll-behavior:smooth}:root{color:#2f2f2f;font-synthesis:none;--khaws-primary:#ff6b35;--khaws-primary-dark:#e85b2a;--khaws-primary-soft:#fff1ea;--khaws-accent:#ff8c61;--khaws-bg:#f8faf9;--khaws-panel:#fff;--khaws-text:#24312d;--khaws-muted:#6a7a75;--khaws-border:#f0d4c9;--khaws-success-bg:#fff1ea;--khaws-success-text:#c5532b;--khaws-error:#b83a3a;background:#f8faf9;font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;color:var(--khaws-text);background:linear-gradient(#f7faf9 0%,#eef4f2 100%);margin:0}.page{flex-direction:column;align-items:center;min-height:100vh;display:flex}.header{text-align:center;background:linear-gradient(135deg, var(--khaws-primary), var(--khaws-primary-dark));color:#fff;width:100%;padding:48px 20px 84px;box-shadow:inset 0 -1px #ffffff14}.header h1{margin:10px 0 8px;font-size:34px;line-height:1.1}.header p{color:#fff3ee;margin:0;font-size:15px}.paw{font-size:42px}.panel{background:var(--khaws-panel);border:1px solid #ff6b351f;border-radius:22px;width:min(460px,100% - 32px);margin-top:-46px;padding:32px;box-shadow:0 16px 45px #24312d1a}h2{color:var(--khaws-text);margin-top:0}.subtitle,.note{color:var(--khaws-muted);line-height:1.6}label{color:var(--khaws-text);margin:22px 0 8px;font-weight:700;display:block}input,select{border:1px solid var(--khaws-border);width:100%;font:inherit;color:var(--khaws-text);background:#fff;border-radius:12px;padding:14px;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{border-color:var(--khaws-primary);outline:none;box-shadow:0 0 0 4px #ff6b3524}button{background:var(--khaws-primary);color:#fff;cursor:pointer;border:0;border-radius:12px;width:100%;margin-top:28px;padding:16px;font-size:16px;font-weight:800;transition:background .2s,transform .1s;display:block}button:hover{background:var(--khaws-primary-dark)}button:active{transform:translateY(1px)}button:disabled{opacity:.65;cursor:wait}.error{color:var(--khaws-error);margin-top:14px}.note{text-align:center;margin-top:24px;font-size:13px}.success{text-align:center}.successIcon{background:var(--khaws-success-bg);width:68px;height:68px;color:var(--khaws-success-text);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:34px;font-weight:800;display:grid}.raceNumber{background:var(--khaws-primary-soft);color:var(--khaws-primary-dark);border:1px solid #ff6b352e;border-radius:14px;margin-top:10px;padding:20px;font-size:26px;font-weight:900}.details{text-align:left;color:var(--khaws-text);margin-top:24px;line-height:1.6}.raceInstructions{text-align:left;background:var(--khaws-primary-soft);border:1px solid var(--khaws-border);border-radius:14px;margin-top:25px;padding:20px}.raceInstructions h3{color:var(--khaws-primary-dark);margin-top:0}.raceInstructions p{color:var(--khaws-text);font-size:14px;line-height:1.6}footer{text-align:center;color:var(--khaws-muted);padding:30px;font-size:13px}.raceNumber small{letter-spacing:1px;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.statusBadge{color:#c55226;background:#fff0e8;border-radius:20px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-block}.finishResult{text-align:center;background:#fff0e8;border:1px solid #ffcab4;border-radius:14px;margin-top:24px;padding:20px}.finishResult h2{color:#e85b2a;font-variant-numeric:tabular-nums;margin:0;font-size:36px}.raceNumber,.finishResult{overflow-wrap:anywhere}.startBanner{text-align:center;background:#fff0e8;border:1px solid #ffc7a8;border-radius:14px;margin-bottom:24px;padding:18px}.startBanner h2{color:#d85220;margin:0 0 8px}.startBanner p{color:#8e431e;margin:0;line-height:1.5}.finishResult{font-variant-numeric:tabular-nums}.phase4Panel{width:min(620px,100% - 32px)}.raceNav{z-index:1;gap:20px;margin:-61px 0 66px;display:flex}.raceNav a{color:#fff;font-size:14px;font-weight:700;text-decoration:none}.raceNav a:hover{text-decoration:underline}.phase4Panel{margin-top:-46px}.khawsLink{color:#d85220;margin-top:16px;font-weight:700;text-decoration:none;display:inline-block}.khawsLink:hover{text-decoration:underline}.categoryTabs{gap:8px;margin:20px 0;display:flex}.categoryTabs button{color:#aa481f;background:#fff0e8;border-radius:10px;margin:0;padding:11px 8px;font-size:13px}.categoryTabs button.active{color:#fff;background:#ff6b35}.leaderboardTable{flex-direction:column;gap:8px;display:flex}.leaderboardRow{background:#fff6f1;border:1px solid #ffe0d1;border-radius:12px;align-items:center;gap:10px;padding:14px 10px;display:flex}.leaderboardRank{color:#db5b29;min-width:35px;font-weight:800}.leaderboardPerson{overflow-wrap:anywhere;flex:1;min-width:0}.leaderboardPerson strong,.leaderboardPerson small{display:block}.leaderboardPerson small{color:#6a7a75;margin-top:4px;font-size:12px}.leaderboardTime{color:#b94a22;font-variant-numeric:tabular-nums;font-size:14px}@media (width<=420px){.leaderboardRow{padding:10px 7px}.leaderboardTime{font-size:12px}}.recoveryNavigation{text-align:center;padding:20px}.recoveryNavigation a{color:#d85220;font-weight:700;text-decoration:underline}.recoveryHelp{color:#753d25;text-align:center;background:#fff2ea;border:1px solid #ffd4bd;border-radius:12px;margin-top:22px;padding:18px}.recoveryHelp p{font-size:13px;line-height:1.6}.recoveryHelp a{color:#c44b20;font-weight:700;text-decoration:underline}.recoveryHelp a:hover{color:#993716}
