:root{--bg:#f3f4f6;--fg:#111827;--muted:#5b6475;--line:#e5e7eb;--card:#fff;--brand-primary:#0b3d91;--brand-on-primary:#fff;--brand-ink:#0b3d91;--brand-accent:#d0021b;--brand-on-accent:#fff;--live:#b42318;--live-bg:#fef1f1;--done:#146c43;--done-bg:#e3f4ea;--warn:#8a5300;--warn-bg:#fff3d6;--latest-bg:#effaf3;--radius:14px;--nav-height:64px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--fg);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4}*{box-sizing:border-box}body{margin:0}a{color:var(--brand-ink)}button{font:inherit;color:inherit;cursor:pointer}h1{margin:.5rem 0;font-size:1.35rem}h2{margin:1.25rem 0 .5rem;font-size:1.05rem}.block{display:block}.muted{color:var(--muted)}.small{font-size:.85rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{flex-direction:column;min-height:100vh;display:flex}main{flex:1;width:100%;max-width:720px;margin:0 auto;padding:.75rem 1rem 1rem}.competition{padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px))}.app-header,.competition-header{background:var(--brand-primary);color:var(--brand-on-primary);align-items:center;gap:.6rem;padding:.7rem 1rem;display:flex}.app-header .brand{color:inherit;font-size:1.1rem;font-weight:700;text-decoration:none}.competition-header{z-index:2;min-height:56px;position:sticky;top:0}.header-back{color:inherit;place-items:center;min-width:44px;min-height:44px;margin-left:-.6rem;padding:0 .25rem;font-size:1.6rem;line-height:1;text-decoration:none;display:grid}.competition-logo{object-fit:contain;background:#fff;border-radius:8px;width:40px;height:40px;padding:2px}.competition-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1.15rem;font-weight:700;overflow:hidden}.live-pill{white-space:nowrap;background:#ffffff2e;border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .7rem;font-size:.9rem;font-weight:600;display:inline-flex}.live-pill .dot{background:#22c55e}.dot{background:var(--brand-accent);border-radius:50%;width:.6em;height:.6em;margin-right:.35em;display:inline-block}.app-footer{border-top:1px solid var(--line);width:100%;max-width:720px;margin:0 auto;padding:1rem}.footer-controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.footer-controls button,.language-switch select{border:1px solid var(--line);background:var(--card);min-height:44px;font:inherit;border-radius:8px;padding:.4rem .8rem}.powered-by{color:#6b7280;margin:.75rem 0 0;font-size:.8rem}.bottom-nav{z-index:3;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{max-width:160px;min-height:var(--nav-height);color:var(--muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;font-size:.8rem;text-decoration:none;display:flex}.bottom-nav-icon{font-size:1.25rem;line-height:1}.bottom-nav-item.active{color:var(--brand-ink);font-weight:700}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:1rem 0 .4rem;font-size:.8rem;font-weight:700}.eyebrow-accent{color:var(--live);margin-top:0}.page-title{align-items:center;gap:.25rem;display:flex}.title-back{color:var(--fg);place-items:center;min-width:44px;min-height:44px;margin-left:-.75rem;font-size:1.6rem;text-decoration:none;display:grid}.now-unit{margin:0 0 .6rem;font-size:1.25rem}.card{background:var(--card);border-radius:var(--radius);color:inherit;margin:.75rem 0;padding:.9rem 1rem;text-decoration:none;display:block;box-shadow:0 1px 2px #0000000f}.card-accent{border-left:5px solid var(--live)}.card-accent p{margin:.15rem 0}.card-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.skater-name{font-size:1.5rem;font-weight:700}.rank-chip{color:var(--done);white-space:nowrap}.button-primary{background:var(--brand-primary);min-height:48px;color:var(--brand-on-primary);border-radius:10px;justify-content:center;align-items:center;margin:.75rem 0;font-weight:700;text-decoration:none;display:flex}.card-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.card-list .card{flex-direction:column;gap:.2rem;margin:0;display:flex}.list-card{background:var(--card);border-radius:var(--radius);margin:.5rem 0;padding:0 1rem;list-style:none;box-shadow:0 1px 2px #0000000f}.list-card>li{border-bottom:1px solid var(--line);align-items:center;gap:.75rem;min-height:52px;padding:.5rem 0;display:flex}.list-card>li:last-child{border-bottom:none}.list-card .list-link{width:100%;color:inherit;align-items:center;gap:.75rem;min-height:44px;text-decoration:none;display:flex}.list-link>span:nth-child(2){flex:1;min-width:0}.time{font-variant-numeric:tabular-nums;min-width:3.2rem;font-weight:700}.chevron{color:var(--muted);font-size:1.3rem}.schedule li.running{background:var(--live-bg);border-left:4px solid var(--live);margin:0 -1rem;padding:.5rem 1rem}.status-line{color:var(--muted);margin:.75rem 0;font-size:.85rem}.status-live .dot{background:#22c55e}.notice{border-radius:8px;padding:.6rem .8rem}.notice-error{background:var(--live-bg);color:var(--live)}.notice-warn{background:var(--warn-bg);color:var(--warn)}.empty{padding:1rem 0}.badge{white-space:nowrap;color:#374151;background:#eceff3;border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:600;display:inline-block}.badge-live{background:var(--live);color:#fff}.badge-done{background:var(--done-bg);color:var(--done)}.badge-warn{background:var(--warn-bg);color:var(--warn)}.chips{scrollbar-width:none;gap:.5rem;margin:.5rem 0;padding:.25rem 0;display:flex;overflow-x:auto}.chip{border:1px solid var(--line);background:var(--card);white-space:nowrap;border-radius:999px;min-height:44px;padding:.4rem 1.1rem;font-weight:600}.chip[aria-pressed=true]{background:var(--brand-primary);color:var(--brand-on-primary);border-color:var(--brand-primary)}.chips-dark .chip[aria-pressed=true]{background:var(--fg);color:#fff;border-color:var(--fg)}.progress{gap:6px;margin:.5rem 0 .35rem;display:flex}.progress-group{flex:var(--size) 1 0;background:var(--line);border-radius:999px;height:10px;position:relative;overflow:hidden}.progress-group:before{content:"";width:var(--fill);background:var(--brand-primary);position:absolute;inset:0 auto 0 0}.progress-running:before{background:var(--brand-accent)}.progress-done:before{background:var(--brand-primary)}.progress-compact{max-width:260px}.progress-compact .progress-group{height:8px}.progress-text{flex-wrap:wrap;justify-content:space-between;gap:.25rem .75rem;margin:0 0 .5rem;font-size:.95rem;display:flex}.table-card{background:var(--card);border-radius:var(--radius);padding:.25rem .75rem;overflow-x:auto;box-shadow:0 1px 2px #0000000f}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:.6rem .4rem}thead th{color:var(--muted);font-size:.85rem;font-weight:600}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.results td:first-child,.results th:first-child{text-align:left;width:2.5rem;font-weight:700}.club{text-overflow:ellipsis;white-space:nowrap;max-width:8rem;overflow:hidden}.row-toggle{text-align:left;background:0 0;border:none;min-height:32px;padding:0}tr.latest td{background:var(--latest-bg)}.rank-up,.rank-down{margin-left:.4rem;font-size:.85rem;font-weight:700}.rank-up{color:var(--done)}.rank-down{color:var(--live)}.row-detail td{color:var(--muted);background:#fafafa;font-size:.9rem}.section-row th{text-transform:uppercase;letter-spacing:.06em;border:none;padding:.75rem 0 .25rem;font-size:.8rem}.section-next .section-row th{color:var(--live)}.section-next tr:not(.section-row) td{background:var(--live-bg);font-weight:700}.section-pending .section-row th{color:var(--muted)}.groups{gap:.6rem;margin-top:.5rem;display:grid}.group-card{background:var(--card);border-radius:var(--radius);overflow:hidden;box-shadow:0 1px 2px #0000000f}.group-card summary{cursor:pointer;align-items:center;gap:.6rem;min-height:52px;padding:.75rem 1rem;display:flex}.group-meta{text-align:right;margin-left:auto}.group-running{outline:2px solid var(--live)}.group-running summary{background:var(--live-bg)}.group-icon-done{color:var(--done);font-weight:700}.group-icon-running{color:var(--live)}.group-icon-upcoming{color:#9ca3af}.group-skaters{margin:0;padding:0;list-style:none}.group-skaters li{border-top:1px solid var(--line);align-items:center;gap:.75rem;padding:.55rem 1rem;display:flex}.group-skaters .skater{flex:1;min-width:0}.group-skaters li.is-next{background:var(--live-bg);font-weight:700}.next-label{color:var(--live);font-weight:700}.start-no{min-width:1.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.filters{flex-wrap:wrap;gap:.5rem;margin:.5rem 0;display:flex}.filters input,.filters select{font:inherit;border:1px solid var(--line);background:var(--card);border-radius:10px;flex:10rem;min-width:0;min-height:44px;padding:.4rem .75rem}.participant{width:100%}.participant .club{max-width:45%}.participant summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.75rem;min-height:44px;list-style:none;display:flex}.participant summary::-webkit-details-marker{display:none}.participant-detail{grid-template-columns:auto 1fr;gap:.2rem .75rem;margin:.25rem 0 .5rem;font-size:.9rem;display:grid}.participant-detail dt{color:var(--muted);grid-column:1}.participant-detail dd{grid-column:2;margin:0}@media (width<=560px){main{padding:.5rem .75rem 1rem}.detail{display:none}.results .club{max-width:4.5rem}}
