*{box-sizing:border-box}:root{color-scheme:dark;font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#fff;background:#000;font-synthesis:none}body{margin:0}button,input,select{font:inherit}button{color:inherit;background:transparent;border:0;cursor:pointer;border-radius:5px}button:hover{background:#232323}button:disabled{opacity:.3;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #78d694;outline-offset:3px}.shell{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.navbar{height:48px;flex:0 0 48px;display:flex;align-items:center;gap:14px;padding:0 12px;background:#000;border-bottom:1px solid #292929;z-index:2}.navbar button{height:32px;min-width:32px}.menu-trigger{font-size:20px}.brand{white-space:nowrap;font-size:13px;letter-spacing:-.02em}.brand strong{margin-left:4px}.activity-title{flex:1;min-width:0;color:silver;font-size:12px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;padding-left:14px;border-left:1px solid #333}.nav-stats{display:flex;align-items:center;gap:18px;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}.score{color:#78d694}.score strong{font-size:17px}.progress-button span{color:#aaa}.nav-actions{display:flex;gap:2px;border-left:1px solid #333;padding-left:10px}.nav-actions button{font-size:20px}.player{flex:1;position:relative;min-height:0}.asset-frame{width:100%;height:100%;border:0;display:block;background:#000}.asset-error{position:absolute;bottom:16px;left:50%;transform:translate(-50%);max-width:600px;width:calc(100% - 32px);padding:16px;border:1px solid #a95454;background:#1b0d0d;color:#fff;font-size:14px}.course-dialog{color:#fff;background:#000;border:1px solid #333;border-radius:10px;margin:auto;width:min(640px,calc(100vw - 32px));max-height:min(820px,calc(100dvh - 80px));padding:0;overflow:auto}.course-dialog::backdrop{background:#000b}.dialog-heading{display:flex;justify-content:space-between;align-items:center;padding:22px 24px 14px}.dialog-heading h1{font-size:21px;margin:0;letter-spacing:-.03em}.dialog-heading button{width:32px;height:32px}.tabs{padding:0 24px;display:flex;gap:22px;border-bottom:1px solid #2c2c2c}.tabs button{padding:12px 0;border-radius:0;font-size:13px;color:#aaa;border-bottom:2px solid transparent}.tabs button[aria-current]{color:#fff;border-bottom-color:#78d694}.filters{display:flex;gap:10px;padding:18px 24px 0}.filters input,.filters select{min-width:0;border:1px solid #363636;background:#101010;color:#fff;padding:10px;border-radius:5px;font-size:13px}.filters input{flex:1}.filters select{max-width:180px}.activity-list{padding:6px 16px 24px}.activity-list h2{font-size:13px;color:#fff;margin:24px 8px 10px}.activity-row{display:flex;gap:12px;width:100%;text-align:left;padding:11px 8px}.activity-status{color:#78d694;flex:0 0 17px;font-size:15px}.activity-row[aria-current]{background:#141b0d}.row-title{display:block;font-size:14px;line-height:1.4}small{display:block;margin-top:4px;font-size:11px;color:#999}.results,.messages{padding:22px 24px 28px}.results p,.messages p{color:#aaa;font-size:13px;line-height:1.5}.result-summary{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.result-summary>strong{font-size:28px}.result-summary strong span{font-size:14px;color:#78d694}.result-summary>span{font-size:13px;color:#bbb}.result-row{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #252525;padding:14px 0;font-size:13px}.result-row strong{color:#78d694;font-variant-numeric:tabular-nums}.result-actions{display:flex;gap:12px;margin-top:24px}.result-actions button,.reset-confirm button,.boot button{padding:10px 14px;border:1px solid #444;font-size:13px}button.primary{background:#78d694;color:#152207;border-color:#78d694}.reset-confirm{margin-top:20px;border-top:1px solid #444}.reset-confirm button{margin-right:8px}.messages details{border-bottom:1px solid #292929;padding:11px 0;font-size:12px}.messages summary{cursor:pointer}.messages time{color:#999;font-variant-numeric:tabular-nums;margin-right:8px}.messages pre{overflow:auto;max-height:220px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;color:#bbb}.notice{padding:10px 24px;color:#f5bd76;font-size:12px}.boot{min-height:100dvh;display:grid;align-content:center;justify-items:center;padding:24px;text-align:center}.boot h1{font-size:24px}.boot p{max-width:520px;color:#aaa}@media(max-width:700px){.navbar{gap:8px;padding:0 8px}.brand{font-size:12px}.activity-title{display:none}.nav-stats{margin-left:auto;gap:8px}.nav-actions{gap:0;padding-left:4px}.navbar button{min-width:28px}.fullscreen{display:none}.filters{flex-direction:column}.filters select{max-width:none}.course-dialog{max-height:calc(100dvh - 64px)}}.brand img{display:block;width:132px;height:20px;object-fit:contain;filter:brightness(0) invert(1)}
