@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow,.shadow\/snapshot{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#07151d;--deep:#061f29;--water:#0b3541;--aqua:#76f4dc;--aqua-pale:#c9fff5;--coral:#ff6c52;--coral-pale:#ffd2ca;--gold:#ffcf65;--paper:#effffb;--muted:#dcfff89e;--line:#d6fff824;--panel:#04151dbd}*{box-sizing:border-box;-webkit-user-drag:none;-webkit-tap-highlight-color:transparent!important;-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}::selection{background:0 0}html,body{background:var(--ink);width:100%;height:100%;color:var(--paper);overscroll-behavior:none;margin:0;overflow:hidden}button,input{font:inherit}button{color:inherit;touch-action:none;-webkit-user-drag:none}button:focus-visible{outline:2px solid var(--aqua);outline-offset:3px}kbd{min-width:19px;height:19px;font:700 9px/1 var(--font-geist-mono), monospace;background:#ddfff814;border:1px solid #e1fff93d;border-radius:4px;place-items:center;padding:0 4px;display:inline-grid}.game-shell{background:var(--water);isolation:isolate;-webkit-user-select:none;user-select:none;min-height:100svh;position:fixed;inset:0;overflow:hidden}.race-canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.screen-grain{z-index:1;pointer-events:none;opacity:.14;mix-blend-mode:screen;background-image:linear-gradient(#ffffff03 1px,#0000 1px),linear-gradient(90deg,#ffffff03 1px,#0000 1px);background-size:4px 4px;position:absolute;inset:0}.topbar{inset:max(14px, env(safe-area-inset-top)) 18px auto;z-index:20;pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:start;display:grid;position:absolute}.brand-lockup,.top-actions,.scoreboard{pointer-events:auto}.brand-lockup{text-align:left;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:10px;min-width:0;padding:0;display:flex}.brand-mark{border:1px solid #cdfff633;border-radius:50%;place-items:center;width:29px;height:29px;display:grid;position:relative}.brand-mark:after{content:"";border-radius:inherit;border:1px solid #cdfff624;position:absolute;inset:4px}.brand-mark i{background:var(--aqua);transform-origin:50% 100%;border-radius:2px;width:2px;height:13px;position:absolute}.brand-mark i:first-child{transform:translateY(-2px)rotate(0)}.brand-mark i:nth-child(2){transform:translateY(-2px)rotate(120deg)}.brand-mark i:nth-child(3){transform:translateY(-2px)rotate(240deg)}.brand-lockup>span:last-child{gap:1px;display:grid}.brand-lockup b{letter-spacing:.16em;font-size:12px}.brand-lockup small{color:var(--muted);font:600 7px/1 var(--font-geist-mono), monospace;letter-spacing:.24em}.top-actions{justify-self:end;gap:7px;display:flex}.icon-button,.rules-button{-webkit-backdrop-filter:blur(12px);cursor:pointer;background:#0311188f;border:1px solid #dafff829;border-radius:10px;height:34px;box-shadow:0 7px 20px #0000001f}.icon-button{width:34px;color:var(--aqua-pale);font:800 10px/1 var(--font-geist-mono), monospace}.spectator-speed{text-shadow:none;background:#052228b8;border:1px solid #f2eedf7a;grid-column:1/-1;justify-self:center;align-items:center;gap:2px;margin-top:1px;padding:2px;display:flex;box-shadow:0 1px 2px #041b2173}.spectator-speed>small{letter-spacing:.12em;padding:0 5px}.spectator-speed button{min-width:31px;height:22px;color:var(--paper);font:800 8px/1 var(--font-geist-mono), monospace;cursor:pointer;background:0 0;border:0;padding:0 6px}.spectator-speed button:hover,.spectator-speed button.active{background:var(--gold);color:var(--ink)}.watch-speed-selector{grid-column:1/-1;margin-top:2px}.watch-speed-options{grid-template-columns:repeat(3,1fr)}.rules-button{color:#e6fffad1;font:700 8px/1 var(--font-geist-mono), monospace;letter-spacing:.15em;padding:0 12px}.scoreboard{-webkit-backdrop-filter:blur(14px);background:#021017b8;border:1px solid #dcfff929;border-radius:13px;grid-template-columns:78px 62px 78px;min-height:46px;display:grid;overflow:hidden;box-shadow:0 12px 35px #00080c2e}.score-team{font:700 8px/1 var(--font-geist-mono), monospace;letter-spacing:.1em;justify-content:center;align-items:center;gap:8px;display:flex}.score-team strong{font:600 21px/1 var(--font-geist-sans), sans-serif;letter-spacing:-.04em}.score-aqua{color:var(--aqua-pale)}.score-aqua strong{color:var(--aqua)}.score-coral{color:var(--coral-pale)}.score-coral strong{color:var(--coral)}.score-status{text-align:center;background:#ffffff06;border-inline:1px solid #dcfff91c;place-content:center;gap:3px;display:grid}.score-status span{font:800 7px/1 var(--font-geist-mono), monospace;letter-spacing:.14em}.score-status small{color:#e2fffa6b;font:600 6px/1 var(--font-geist-mono), monospace;letter-spacing:.12em}.score-status.is-winning span{color:var(--aqua)}.score-status.is-losing span{color:var(--coral)}.race-data{z-index:10;-webkit-backdrop-filter:blur(10px);pointer-events:none;background:#03121980;border:1px solid #d9fff81f;border-radius:14px;width:176px;padding:12px 13px;position:absolute;top:82px;box-shadow:0 12px 35px #000a0e1f}.left-data{left:18px}.data-primary{border-bottom:1px solid #d9fff81a;align-items:baseline;padding-bottom:9px;display:flex}.data-primary>span{color:var(--muted);font:600 7px/1 var(--font-geist-mono), monospace;letter-spacing:.15em;margin-right:auto}.data-primary strong{color:var(--aqua-pale);letter-spacing:-.06em;font-size:27px;font-weight:500;line-height:1}.data-primary small{color:var(--muted);font:700 7px/1 var(--font-geist-mono), monospace;margin-left:4px}.data-row{color:var(--muted);font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.1em;justify-content:space-between;align-items:center;gap:10px;padding-top:9px;display:flex}.data-row b{color:var(--paper);font-size:8px}.data-row.compact{padding-top:7px}.rule-chip{color:#e1fff9b3;font:500 7px/1.35 var(--font-geist-mono), monospace;border-top:1px solid #d9fff81a;align-items:flex-start;gap:7px;margin-top:9px;padding-top:9px;display:flex}.rule-chip i{border-radius:50%;flex:none;width:5px;height:5px;margin-top:2px;box-shadow:0 0 0 3px #ffffff0a}.rule-chip i.green{background:var(--aqua)}.rule-chip i.red{background:var(--coral)}.wind-instrument{border-bottom:1px solid #d9fff81a;grid-template-columns:54px 1fr;align-items:center;gap:9px;padding-bottom:9px;display:grid}.wind-instrument>div:last-child{gap:3px;display:grid}.wind-instrument small,.wind-instrument em{color:var(--muted);font:700 6px/1 var(--font-geist-mono), monospace;letter-spacing:.11em;font-style:normal}.wind-instrument strong{color:var(--aqua-pale);font:700 15px/1 var(--font-geist-mono), monospace}.wind-dial{background:repeating-conic-gradient(from -1deg, #dcfff957 0 2deg, transparent 2deg 30deg), #02141c3d;border:1px solid #ccfff72b;border-radius:50%;width:52px;height:52px;position:relative;overflow:hidden}.wind-dial:before{content:"";border-radius:inherit;background:conic-gradient(from -43deg, #ff694e94 0 86deg, transparent 86deg 360deg);transform:rotate(var(--wind-angle));position:absolute;inset:4px}.wind-dial:after{content:"";border-radius:inherit;background:#03161ec2;position:absolute;inset:8px}.wind-dial b{z-index:3;color:#e1fff9a8;font:800 5px/1 var(--font-geist-mono), monospace;letter-spacing:.08em;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.wind-dial i{z-index:4;background:var(--paper);border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.wind-dial span{z-index:3;background:var(--coral);width:2px;height:18px;transform:rotate(var(--wind-angle));transform-origin:50% 100%;position:absolute;bottom:50%;left:calc(50% - 1px)}.ocs-recall{background:#053a686b;border:1px solid #dcfaff9e;align-items:center;gap:9px;margin:-3px -3px 10px;padding:7px;display:flex}.ocs-recall>i{grid-template-columns:1fr 1fr;width:27px;height:23px;display:grid;transform:rotate(-2deg)}.ocs-recall>i span:first-child{background:#f7fbf5}.ocs-recall>i span:last-child{background:#1764ad}.ocs-recall>span{gap:2px;display:grid}.ocs-recall b{color:#fff;font:900 11px/1 var(--font-geist-mono), monospace}.ocs-recall small{color:#ebf9ffc7;font:700 5px/1 var(--font-geist-mono), monospace;letter-spacing:.08em}.penalty-feed{z-index:23;pointer-events:none;gap:5px;width:min(430px,100vw - 40px);display:grid;position:absolute;top:83px;left:50%;transform:translate(-50%)}.penalty-feed article{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#240d0d7a;border:1px solid #ffe4da59;grid-template-columns:5px 1fr;gap:9px;padding:8px 10px;display:grid}.penalty-feed article>i{background:var(--coral)}.penalty-feed article>span{grid-template-columns:auto 1fr;align-items:baseline;gap:3px 8px;display:grid}.penalty-feed small{color:var(--coral-pale);font:800 6px/1 var(--font-geist-mono), monospace;letter-spacing:.1em}.penalty-feed strong{color:#fff;font-size:10px}.penalty-feed em{color:#fff2edc2;font:500 8px/1.25 var(--font-geist-sans), sans-serif;text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-style:normal;overflow:hidden}.position-strip{z-index:10;gap:4px;margin:0;padding:0;list-style:none;display:flex;position:absolute;top:146px;left:50%;transform:translate(-50%)}.position-strip li{color:#e1fffab3;height:25px;font:700 7px/1 var(--font-geist-mono), monospace;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0311187a;border:1px solid #dafff91c;border-radius:7px;align-items:center;gap:4px;padding:0 7px 0 5px;display:flex}.position-strip li span{background:#ffffff0f;border-radius:4px;place-items:center;width:14px;height:14px;font-size:7px;display:grid}.position-strip li.aqua b{color:var(--aqua)}.position-strip li.coral b{color:var(--coral)}.position-strip li.player{border-color:#76f4dc66;box-shadow:0 0 16px #76f4dc14}.position-strip li i{color:var(--coral);font-style:normal}.countdown-callout{top:max(70px, calc(env(safe-area-inset-top) + 56px));z-index:12;-webkit-backdrop-filter:blur(8px);pointer-events:none;background:#03121a80;border:1px solid #d1fff72b;border-radius:4px;grid-template-columns:auto auto auto;place-items:center;gap:10px;width:max-content;max-width:calc(100vw - 24px);min-height:32px;padding:5px 11px;animation:.45s both soft-rise;display:grid;position:absolute;left:50%;transform:translate(-50%);box-shadow:3px 3px #00080c33}.countdown-callout small,.countdown-callout span{font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.15em;white-space:nowrap}.countdown-callout strong{letter-spacing:-.05em;margin:0;font-size:24px;font-weight:650;line-height:1}.countdown-callout span{color:var(--muted)}.umpire-toast{z-index:24;-webkit-backdrop-filter:blur(18px);pointer-events:none;background:#031118e0;border:1px solid #e2fffa2b;border-radius:14px;grid-template-columns:34px 1fr;gap:11px;width:min(410px,100vw - 32px);padding:12px 14px;animation:.38s cubic-bezier(.2,.8,.2,1) both toast-in;display:grid;position:absolute;top:204px;left:50%;transform:translate(-50%);box-shadow:0 20px 60px #00080c47}.flag-swatch{background:#ffffff0f;border:1px solid #ffffff29;border-radius:5px;grid-template-columns:1fr 1fr;width:31px;height:25px;display:grid;overflow:hidden}.flag-red .flag-swatch{background:var(--coral);display:block}.flag-red .flag-swatch i{display:none}.flag-green .flag-swatch i:first-child{background:#3fc88f}.flag-green .flag-swatch i:last-child{background:#eefcf9}.flag-warning .flag-swatch{background:var(--gold);display:block}.flag-info .flag-swatch{background:var(--aqua);display:block}.umpire-toast>div:last-child{display:grid}.umpire-toast small{color:var(--muted);font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.14em}.flag-red small{color:var(--coral-pale)}.flag-green small,.flag-info small{color:var(--aqua)}.umpire-toast strong{margin-top:3px;font-size:14px;font-weight:650}.umpire-toast p{color:#e2fffa9e;margin:4px 0 0;font-size:10px;line-height:1.35}.helm-controls{bottom:max(18px, calc(env(safe-area-inset-bottom) + 10px));z-index:20;grid-template-columns:104px 172px 104px;gap:10px;display:grid;position:absolute;left:50%;transform:translate(-50%)}.helm-button{-webkit-backdrop-filter:blur(13px);touch-action:none;cursor:pointer;background:#0311189e;border:1px solid #d9fff829;border-radius:17px;grid-template-rows:auto 1fr;grid-template-columns:1fr 1fr;align-items:center;height:91px;padding:11px 14px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 35px #00080c2e}.helm-button:before{content:"";opacity:0;background:linear-gradient(145deg,#76f4dc29,#0000);transition:opacity .14s;position:absolute;inset:0}.helm-button:active:before{opacity:1}.helm-button small{color:var(--muted);font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.13em;grid-column:1/-1}.helm-button strong{color:var(--aqua-pale);align-self:end;font-size:47px;font-weight:250;line-height:.85}.helm-button span{width:21px;height:21px;color:var(--muted);font:700 8px/1 var(--font-geist-mono), monospace;border:1px solid #dbfff92e;border-radius:5px;place-self:end;place-items:center;display:grid}.helm-button.starboard{text-align:right}.helm-button.starboard strong{order:3;justify-self:end}.helm-button.starboard span{order:2;justify-self:start}.rules-head button{width:30px;height:30px;color:var(--muted);cursor:pointer;background:#ffffff08;border:1px solid #dcfff921;border-radius:9px;place-items:center;display:grid}.briefing-panel{z-index:12;-webkit-backdrop-filter:blur(22px);background:linear-gradient(140deg,#0a2e37e3,#031219e6),#031219e0;border:1px solid #d6fff82b;border-radius:23px;width:min(460px,100vw - 44px);padding:25px 26px 21px;animation:.7s cubic-bezier(.2,.75,.15,1) both panel-in;position:absolute;top:50%;left:clamp(22px,7vw,110px);transform:translateY(-48%);box-shadow:0 28px 100px #00070b52}.briefing-panel:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,#76f4dc0a,#0000 42%);position:absolute;inset:0}.briefing-eyebrow{z-index:1;color:var(--muted);font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.13em;justify-content:space-between;display:flex;position:relative}.briefing-eyebrow i{background:var(--aqua);border-radius:50%;width:5px;height:5px;margin-right:5px;animation:1.8s infinite live-pulse;display:inline-block;box-shadow:0 0 0 4px #76f4dc14}.title-stack{z-index:1;margin-top:20px;position:relative}.title-stack p{color:#e0fff9ad;font:650 9px/1 var(--font-geist-mono), monospace;letter-spacing:.26em;margin:0 0 -4px 3px}.title-stack h1{letter-spacing:-.085em;margin:0;font-size:clamp(66px,8vw,101px);font-weight:720;line-height:.75}.briefing-copy{z-index:1;color:#e4fffaa8;width:90%;margin:21px 0 20px;font-size:12px;line-height:1.55;position:relative}.race-selector{z-index:1;border-top:1px solid #ddfff91c;grid-template-columns:1fr;gap:10px;padding-top:16px;display:grid;position:relative}.selector-group{gap:7px;display:grid}.selector-group>small{color:var(--muted);font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.13em}.segmented{background:#00090e3d;border:1px solid #ddfff91c;border-radius:11px;grid-template-columns:1fr 1fr;gap:4px;padding:3px;display:grid}.segmented button{color:#e3fffa7a;cursor:pointer;background:0 0;border:0;border-radius:8px;place-content:center;gap:4px;min-height:48px;display:grid}.segmented button.active{color:var(--aqua-pale);background:#76f4dc1a;box-shadow:inset 0 0 0 1px #76f4dc29}.segmented b{font:720 10px/1 var(--font-geist-mono), monospace;letter-spacing:.06em}.segmented span{font-size:7px}.opponent-options{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.opponent-option{text-align:left;place-content:center start;padding:6px 9px}.opponent-option span{line-height:1.35}.briefing-actions{z-index:1;grid-template-columns:1.25fr .75fr;gap:8px;margin-top:13px;display:grid;position:relative}.start-button,.secondary-button{cursor:pointer;border-radius:12px;height:50px}.start-button{background:var(--aqua);color:#062b2a;border:0;justify-content:space-between;align-items:center;padding:0 17px;display:flex;box-shadow:0 12px 30px #3ae3c921}.start-button span{font:800 9px/1 var(--font-geist-mono), monospace;letter-spacing:.16em}.start-button b{font-size:20px;font-weight:450}.secondary-button{color:#e7fffba6;font:700 8px/1 var(--font-geist-mono), monospace;letter-spacing:.1em;background:#ffffff09;border:1px solid #dbfff926}.briefing-footer{z-index:1;color:#e1fff95e;font:650 6px/1 var(--font-geist-mono), monospace;letter-spacing:.1em;justify-content:space-between;gap:10px;margin-top:15px;display:flex;position:relative}.briefing-footer span{align-items:center;gap:3px;display:flex}.briefing-footer kbd{border-radius:3px;min-width:16px;height:16px;font-size:6px}.pause-panel,.result-panel{z-index:50;text-align:center;-webkit-backdrop-filter:blur(22px);background:#031219f0;border:1px solid #dcfff92e;border-radius:22px;width:min(390px,100vw - 36px);padding:27px;animation:.35s both soft-rise-centered;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 30px 100px #00050973}.pause-panel small,.result-panel>small{color:var(--aqua);font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.17em}.pause-panel h2,.result-panel h2{letter-spacing:-.06em;margin:8px 0 3px;font-size:42px;line-height:1}.pause-panel p{color:var(--muted);margin:4px 0 20px;font-size:11px}.pause-links{grid-template-columns:repeat(3,1fr);gap:5px;margin-top:8px;display:grid}.pause-links button{height:33px;color:var(--muted);font:700 7px/1 var(--font-geist-mono), monospace;cursor:pointer;background:#ffffff05;border:1px solid #dcfff91c;border-radius:8px}.result-panel{overflow:hidden}.result-ribbon{color:#06302b;font:800 7px/1 var(--font-geist-mono), monospace;letter-spacing:.17em;margin:-27px -27px 25px;padding:10px}.result-ribbon.aqua{background:var(--aqua)}.result-ribbon.coral{background:var(--coral);color:#3b100b}.result-panel h2{margin:10px 0 3px;font-size:49px}.result-panel>p{justify-content:center;gap:18px;margin:7px 0;font-size:35px;line-height:1;display:flex}.result-panel>p b:first-child{color:var(--aqua)}.result-panel>p b:last-child{color:var(--coral)}.result-panel>p span{color:#e5fffa4d}.result-explain{color:var(--muted);border:1px solid #dcfff91a;border-radius:10px;margin:9px 0 18px;padding:11px;font-size:9px;line-height:1.45}.result-panel .secondary-button{margin-top:7px}.rules-drawer{z-index:80;-webkit-backdrop-filter:blur(24px);background:#031219f7;border-left:1px solid #dafff92e;flex-direction:column;width:min(560px,100vw);animation:.42s cubic-bezier(.2,.75,.15,1) both drawer-in;display:flex;position:absolute;inset:0 0 0 auto;box-shadow:-28px 0 90px #00050961}.rules-head{padding:max(28px, env(safe-area-inset-top)) 28px 21px;border-bottom:1px solid #dbfff91c;flex:none;justify-content:space-between;align-items:flex-start;display:flex}.rules-head small{color:var(--aqua);font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.16em}.rules-head h2{letter-spacing:-.045em;margin:9px 0 0;font-size:29px;font-weight:560;line-height:1.02}.rules-body{padding:21px 28px max(30px, env(safe-area-inset-bottom));overscroll-behavior:contain;flex:auto;overflow-y:auto}.course-card{background:radial-gradient(circle at 80% 20%,#76f4dc14,#0000 42%),#76f4dc06;border:1px solid #76f4dc29;border-radius:17px;grid-template-columns:1.08fr .92fr;min-height:190px;padding:19px;display:grid}.course-copy{align-self:center}.course-copy small{color:var(--aqua);font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.14em}.course-copy h3{letter-spacing:-.05em;margin:7px 0 6px;font-size:31px}.course-copy p{color:var(--muted);margin:0;font-size:10px;line-height:1.45}.course-diagram{min-height:150px;position:relative}.course-point{z-index:2;background:var(--gold);color:#2e2208;width:18px;height:18px;font:800 7px/1 var(--font-geist-mono), monospace;border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:0 0 0 4px #ffcf6514}.course-point.start,.course-point.finish{background:var(--aqua);color:#06302b;border-radius:5px;width:24px}.course-line{z-index:1;transform-origin:0;background:#cafff670;height:1px;display:block;position:absolute}.course-line:after{content:"›";color:var(--aqua);font-size:13px;position:absolute;top:-8px;right:45%}.course-line.leg-a{width:75%;bottom:12%;left:12%;transform:rotate(-90deg)}.course-line.leg-e{width:75%;bottom:13%;right:-49%;transform:rotate(-90deg)}.rule-list{grid-template-columns:1fr 1fr;gap:7px;margin-top:14px;display:grid}.rule-list article{background:#ffffff05;border:1px solid #dcfff91a;border-radius:12px;grid-template-columns:34px 1fr;gap:9px;min-height:91px;padding:12px;display:grid}.rule-list article>span{width:30px;height:30px;color:var(--aqua);font:700 8px/1 var(--font-geist-mono), monospace;border:1px solid #76f4dc38;border-radius:8px;place-items:center;display:grid}.rule-list h3{font:750 8px/1.2 var(--font-geist-mono), monospace;letter-spacing:.06em;margin:2px 0 5px}.rule-list p{color:#e1fff987;margin:0;font-size:8px;line-height:1.42}.penalty-card{background:var(--coral);color:#3a120c;border-radius:14px;grid-template-columns:1fr 1.2fr;gap:16px;margin-top:14px;padding:17px;display:grid}.penalty-card small{font:800 7px/1 var(--font-geist-mono), monospace;letter-spacing:.13em}.penalty-card h3{letter-spacing:-.035em;margin:7px 0 0;font-size:17px;line-height:1.08}.penalty-card p{margin:0;font-size:9px;line-height:1.45}.rules-audit-note{background:#76f4dc0b;border:1px solid #76f4dc2e;border-radius:10px;gap:7px;margin-top:12px;padding:13px 14px;display:grid}.rules-audit-note small{color:var(--aqua);font:750 7px/1 var(--font-geist-mono), monospace;letter-spacing:.12em}.rules-audit-note p{color:#e1fff994;margin:0;font-size:8px;line-height:1.5}.rules-disclaimer{color:#e0fff961;font:500 7px/1.5 var(--font-geist-mono), monospace;margin:14px 1px 0}.rules-sources{border-top:1px solid #dcfff91a;gap:8px;margin-top:13px;padding-top:13px;display:grid}.rules-sources>span{color:#e0fff961;font:600 6px/1 var(--font-geist-mono), monospace;letter-spacing:.1em}.rules-sources>div{flex-wrap:wrap;gap:6px;display:flex}.rules-sources a{color:var(--aqua);font:700 6px/1 var(--font-geist-mono), monospace;letter-spacing:.08em;border:1px solid #76f4dc26;border-radius:7px;padding:7px 9px;text-decoration:none}.safe-area-fill{z-index:2;height:env(safe-area-inset-bottom);pointer-events:none;background:linear-gradient(#0000,#020e1452);position:absolute;inset:auto 0 0}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes panel-in{0%{opacity:0;transform:translateY(-44%)translate(-18px)}to{opacity:1;transform:translateY(-48%)translate(0)}}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-9px)scale(.98)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes sheet-up{0%{opacity:0;transform:translate(-50%,15px)scale(.98)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes soft-rise{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@keyframes soft-rise-centered{0%{opacity:0;transform:translate(-50%,calc(12px - 50%))scale(.98)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (max-width:820px){.topbar{inset-inline:12px}.brand-lockup b{font-size:10px}.brand-lockup small{display:none}.brand-mark{width:26px;height:26px}.scoreboard{grid-template-columns:58px 48px 58px;min-height:39px}.score-team{gap:5px;font-size:6px}.score-team strong{font-size:17px}.score-status span{font-size:5px}.rules-button{display:none}.icon-button{border-radius:8px;width:30px;height:30px}.race-data{width:138px;padding:9px 10px;top:68px}.left-data{left:11px}.data-primary strong{font-size:22px}.rule-chip{display:none}.wind-instrument strong{font-size:14px}.position-strip{gap:2px;top:131px}.position-strip li{height:22px;padding-inline:4px}.position-strip li span{width:12px;height:12px}.umpire-toast{top:165px}.countdown-callout{top:max(58px, calc(env(safe-area-inset-top) + 44px))}.helm-controls{grid-template-columns:minmax(78px,.8fr) minmax(130px,1.35fr) minmax(78px,.8fr);gap:6px;width:calc(100vw - 22px)}.helm-button{border-radius:15px;height:86px;padding:10px}.helm-button strong{font-size:41px}.briefing-panel{top:auto;bottom:max(16px, env(safe-area-inset-bottom));border-radius:20px;width:calc(100vw - 24px);max-height:calc(100svh - 72px);padding:19px;animation:.55s cubic-bezier(.2,.75,.15,1) both mobile-panel-in;left:12px;overflow-y:auto;transform:none}.briefing-eyebrow{font-size:6px}.title-stack{margin-top:14px}.title-stack p{font-size:7px}.title-stack h1{font-size:clamp(56px,21vw,84px)}.briefing-copy{margin-block:16px 14px;font-size:10px}.briefing-footer{display:none}.course-card{grid-template-columns:1fr}.course-diagram{min-height:175px;margin-top:10px}.rules-head{padding-inline:20px}.rules-body{padding-inline:16px}}@media (max-width:520px){.brand-lockup>span:last-child{display:none}.topbar{grid-template-columns:32px 1fr 64px}.scoreboard{justify-self:center}.score-team span{display:none}.scoreboard{grid-template-columns:42px 46px 42px}.race-data{width:116px}.data-row{letter-spacing:.05em}.position-strip li{gap:2px}.position-strip li span{display:none}.umpire-toast{top:153px}.umpire-toast p{font-size:9px}.helm-button small{letter-spacing:.07em;font-size:6px}.helm-button span{display:none}.helm-button{grid-template-columns:1fr}.helm-button strong,.helm-button.starboard strong{justify-self:center}.race-selector{gap:6px}.segmented button{min-height:43px}.briefing-actions{grid-template-columns:1.18fr .82fr}.rule-list,.penalty-card{grid-template-columns:1fr}}@media (max-height:680px) and (max-width:820px){.briefing-panel{max-height:calc(100svh - 60px)}.title-stack h1{font-size:58px}.briefing-copy{margin-block:10px}.race-selector{padding-top:11px}.segmented button{min-height:38px}.briefing-actions{margin-top:9px}.start-button,.secondary-button{height:44px}}@media (orientation:landscape) and (max-height:560px){.race-data{top:58px}.position-strip{top:64px}.umpire-toast{top:94px}.helm-controls{left:auto;right:max(16px, env(safe-area-inset-right));width:360px;transform:none}.briefing-panel{width:min(430px,58vw);max-height:calc(100svh - 72px);top:56%;bottom:auto;left:18px;transform:translateY(-50%)}.briefing-panel .briefing-copy{display:none}.title-stack h1{font-size:57px}}@keyframes mobile-panel-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--ink:#102f35;--deep:#08262d;--water:#1a6670;--aqua:#35c7b3;--aqua-pale:#d4fff5;--coral:#ef5b3f;--coral-pale:#ffe0d6;--gold:#f2c84b;--paper:#f2eedf;--paper-deep:#ded8c3;--muted:#f0ecdaad;--line:#f2eedf38;--panel:#f2eedff2}body{font-family:var(--font-geist-sans), "Arial Narrow", Arial, sans-serif}button{border-radius:2px}button:focus-visible{outline-color:var(--gold);outline-offset:4px}kbd{background:0 0;border-color:currentColor;border-radius:2px}.game-shell{background:#15545e}.screen-grain{opacity:.09;mix-blend-mode:soft-light;background-image:radial-gradient(circle at 20% 40%,#f6f0da24 0 .5px,#0000 .8px),radial-gradient(circle at 70% 60%,#041f252e 0 .5px,#0000 .8px);background-size:7px 7px,9px 9px}.topbar{align-items:start}.brand-lockup{color:var(--paper);gap:11px}.brand-mark{background:var(--coral);clip-path:polygon(0 0,100% 14%,68% 50%,100% 86%,0 100%);border:0;border-radius:0;width:34px;height:23px}.brand-mark:after{display:none}.brand-mark i{background:var(--paper);transform-origin:50%;border-radius:0;width:3px;height:auto;top:0;bottom:0;transform:none!important}.brand-mark i:first-child{left:7px}.brand-mark i:nth-child(2){left:13px}.brand-mark i:nth-child(3){left:19px}.brand-lockup b{letter-spacing:.12em;font-size:13px;font-weight:850}.brand-lockup small{color:#f2eedfad;letter-spacing:.17em;font-weight:650}.icon-button,.rules-button{color:var(--paper);text-shadow:0 1px 2px #041b21e6;-webkit-backdrop-filter:none;background:0 0;border:1px solid #f2eedfb3;border-radius:2px;box-shadow:0 1px 2px #061d223d}.scoreboard{text-shadow:0 1px 2px #041b21f2;-webkit-backdrop-filter:none;background:0 0;border:1px solid #f2eedf8c;border-radius:2px;overflow:visible;box-shadow:0 1px 2px #061d2233}.score-status{background:0 0;border-color:#f2eedf40}.race-data{width:190px;color:var(--paper);text-shadow:0 1px 2px #041b21f2;-webkit-backdrop-filter:none;background:0 0;border:1px solid #f2eedf57;border-radius:3px;padding:12px;top:86px;box-shadow:0 1px 2px #061e232e}.wind-dial{background:repeating-conic-gradient(from -1deg, #f2eedfad 0 2deg, transparent 2deg 30deg), transparent}.data-primary{border-color:#f2eedf33}.data-primary>span,.data-primary small,.data-row{color:#f2eedfad}.data-primary strong,.data-row b{color:var(--paper)}.data-primary strong{letter-spacing:-.04em;font-family:Georgia,Times New Roman,serif;font-size:31px;font-weight:700}.rule-chip{color:#f2eedfc2;border-color:#f2eedf33}.position-strip li{text-shadow:0 1px 2px #041b21f2;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:1px solid #f2eedfb3;border-radius:2px;box-shadow:0 1px 2px #051c2142}.position-strip li span{background:0 0;border-radius:1px}.ocs-recall{text-shadow:0 1px 2px #041b21f2;background:0 0}.penalty-feed article{text-shadow:0 1px 2px #240d0df2;-webkit-backdrop-filter:none;background:0 0;border-color:#ffe4da9e;box-shadow:0 1px 2px #240d0d33}.countdown-callout,.umpire-toast{color:var(--paper);text-shadow:0 1px 2px #041b21f2;-webkit-backdrop-filter:none;background:0 0;border:1px solid #f2eedf8a;border-radius:3px;box-shadow:0 1px 2px #051c2133}.countdown-callout small{color:var(--coral)}.countdown-callout strong{color:var(--paper);font-family:Georgia,Times New Roman,serif}.countdown-callout span,.umpire-toast p,.umpire-toast small{color:#f2eedfb8}.countdown-callout.form-up small{color:#f2eedfad}.countdown-callout.rules-live{border-color:var(--coral)}.countdown-callout.rules-live span{color:var(--coral)}.umpire-toast{border-left:8px solid var(--coral)}.flag-info.umpire-toast,.flag-green.umpire-toast{border-left-color:var(--aqua)}.flag-warning.umpire-toast{border-left-color:var(--gold)}.umpire-toast strong{color:var(--paper)}.helm-button{color:var(--paper);text-shadow:0 1px 2px #041b21f2;-webkit-backdrop-filter:none;background:0 0;border:1px solid #f2eedf7a;border-radius:3px;box-shadow:0 1px 2px #051c2133}.experience-selector{z-index:1;margin-bottom:10px;position:relative}.competition-selector{z-index:1;border-top:1px solid #102f3540;grid-template-columns:1fr 1fr;gap:10px;padding-top:12px;display:grid;position:relative}.strategy-pick{gap:5px;min-width:0;display:grid}.strategy-pick>small{color:#102f359e;font:700 7px/1 var(--font-geist-mono), monospace;letter-spacing:.13em}.strategy-pick select{width:100%;height:45px;color:var(--ink);font:750 10px/1 var(--font-geist-mono), monospace;cursor:pointer;background:#f2eedfc2;border:1px solid #102f3552;border-radius:2px;padding:0 10px}.strategy-pick.aqua select{border-left:5px solid var(--aqua)}.strategy-pick.coral select{border-left:5px solid var(--coral)}.strategy-pick>span{color:#102f358a;font:650 7px/1.2 var(--font-geist-mono), monospace}.spectator-matchup{top:max(108px, calc(env(safe-area-inset-top) + 94px));z-index:11;width:min(440px,100vw - 32px);color:var(--paper);font:800 8px/1 var(--font-geist-mono), monospace;text-align:center;text-shadow:0 1px 3px var(--ink);grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr);gap:9px;display:grid;position:absolute;left:50%;transform:translate(-50%)}.spectator-matchup .aqua{color:var(--aqua);text-align:right}.spectator-matchup .coral{color:var(--coral);text-align:left}.spectator-matchup small{color:#f2eedfb3;font-size:6px}.helm-button:before{background:var(--gold)}.helm-button small,.helm-button strong,.helm-button span{color:var(--paper)}.helm-button span{border-color:#f2eedf6b;border-radius:2px}.rules-head button{color:var(--ink);background:0 0;border-color:#102f3566;border-radius:2px}.briefing-panel{background:var(--paper);width:min(540px,100vw - 48px);color:var(--ink);box-shadow:13px 13px 0 var(--coral), 18px 18px 0 #061e2361;-webkit-backdrop-filter:none;border:2px solid #102f35;border-radius:0;padding:27px 29px 23px;left:clamp(24px,6vw,94px)}.briefing-panel:after{background:repeating-linear-gradient(90deg, var(--aqua) 0 9px, transparent 9px 13px);border-radius:0;width:54px;height:5px;inset:8px 8px auto auto}.briefing-eyebrow{color:#102f3594}.briefing-eyebrow span:first-child{color:var(--coral)}.briefing-eyebrow i{background:var(--coral);box-shadow:none;border-radius:0}.title-stack{margin-top:17px}.title-stack p{color:#102f35ad;letter-spacing:.2em}.title-stack h1{color:var(--ink);letter-spacing:-.07em;font-family:Georgia,Times New Roman,serif;font-size:clamp(67px,7.5vw,96px);font-weight:800;line-height:.76}.title-stack h1 span{color:var(--coral);-webkit-text-stroke:0;margin-left:.52em}.briefing-copy{color:#102f35bf;width:94%;margin:20px 0 16px;font-size:12px}.course-profile{z-index:1;border-block:1px solid #102f354d;grid-template-columns:repeat(5,1fr);margin-bottom:16px;display:grid;position:relative}.course-profile>div{border-left:1px solid #102f3529;gap:3px;min-width:0;padding:8px 7px 9px;display:grid}.course-profile>div:first-child{border-left:0}.course-profile small{color:var(--coral);font:800 6px/1 var(--font-geist-mono), monospace}.course-profile b{color:var(--ink);font:850 8px/1 var(--font-geist-mono), monospace;letter-spacing:.04em}.course-profile span{color:#102f358a;font:650 5px/1 var(--font-geist-mono), monospace;letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.race-selector{border-color:#102f3540}.selector-group>small{color:#102f359e}.segmented{background:#102f350a;border-color:#102f3547;border-radius:2px}.segmented button{color:#102f3585;border-radius:1px}.segmented button.active{background:var(--ink);color:var(--paper);box-shadow:none}.start-button,.secondary-button{border-radius:2px}.start-button{border:1px solid var(--ink);background:var(--coral);color:#35130d;box-shadow:4px 4px 0 var(--ink)}.secondary-button{color:var(--ink);background:0 0;border-color:#102f3561}.briefing-footer{color:#102f3580}.pause-panel,.result-panel{background:var(--paper);color:var(--ink);box-shadow:10px 10px 0 var(--coral), 15px 15px 0 #051c2166;-webkit-backdrop-filter:none;border:2px solid #102f35;border-radius:0}.pause-panel small,.result-panel>small{color:var(--coral)}.pause-panel h2,.result-panel h2{font-family:Georgia,Times New Roman,serif}.pause-panel p,.result-explain{color:#102f35ad}.pause-links button,.result-explain{color:var(--ink);background:0 0;border-color:#102f353d;border-radius:2px}.rules-drawer{background:var(--paper);color:var(--ink);box-shadow:-12px 0 0 var(--coral);-webkit-backdrop-filter:none;border-color:#102f35}.rules-head{border-color:#102f3538}.rules-head small,.course-copy small{color:var(--coral)}.rules-head h2{font-family:Georgia,Times New Roman,serif;font-weight:700}.course-card{background:#dbe5d9;border-color:#102f3559;border-radius:2px}.course-copy p{color:#102f35ad}.course-point{background:var(--gold);border-radius:50%;box-shadow:0 0 0 3px #102f351f}.course-point.start,.course-point.finish{background:var(--coral);color:#35130d;border-radius:1px}.course-point.start{bottom:4%;left:3%}.course-point.m1{top:5%;left:3%}.course-point.m2{top:5%;left:42%}.course-point.m3{bottom:4%;right:42%}.course-point.m4{bottom:4%;right:3%}.course-point.finish{top:5%;right:3%}.course-line{background:#102f359e}.course-line:after{color:var(--coral)}.course-line.leg-a{bottom:12%;left:7%}.course-line.leg-b{width:34%;top:11%;left:10%}.course-line.leg-c{width:73%;top:15%;left:47%;transform:rotate(82deg)}.course-line.leg-d{width:34%;bottom:10%;right:7%}.course-line.leg-e{bottom:13%;right:-67%}.diagram-leg{z-index:3;color:#102f359e;font:800 5px/1 var(--font-geist-mono), monospace;letter-spacing:.06em;background:#dbe5d9;padding:2px 3px;position:absolute}.diagram-leg.beat-one{top:48%;left:0;rotate:-90deg}.diagram-leg.reach-one{top:0;left:19%}.diagram-leg.run-leg{top:48%;left:49%;rotate:82deg}.diagram-leg.reach-two{bottom:0;right:15%}.diagram-leg.beat-two{top:48%;right:-2%;rotate:-90deg}.rule-list article{background:#102f3506;border-color:#102f3538;border-radius:2px}.rule-list article>span{color:var(--coral);border-color:#102f3559;border-radius:1px}.rule-list p,.rules-disclaimer,.rules-sources>span{color:#102f3599}.penalty-card{border:1px solid var(--ink);background:var(--coral);border-radius:2px}.rules-audit-note{background:#102f3509;border-color:#102f3540;border-radius:2px}.rules-audit-note small{color:var(--ink)}.rules-audit-note p{color:#102f35ad}.rules-sources{border-color:#102f3533}.rules-sources a{color:var(--ink);border-color:#102f3559;border-radius:1px}@media (max-width:820px){.race-data{width:160px;padding:9px;top:70px}.data-primary strong{font-size:25px}.wind-instrument{grid-template-columns:44px 1fr}.wind-dial{width:42px;height:42px}.position-strip{top:213px}.umpire-toast{top:246px}.briefing-panel{box-shadow:8px 8px 0 var(--coral), 12px 12px 0 #061e2352;border-radius:0}.course-profile>div{padding-inline:4px}}@media (max-width:520px){.race-data{width:138px}.course-profile span{display:none}.briefing-copy{width:100%}.title-stack h1{font-size:clamp(54px,19vw,76px)}}@media (max-height:720px) and (max-width:820px){.course-profile{margin-bottom:10px}.course-profile>div{padding-block:6px}}.helm-controls{grid-template-columns:.82fr 1fr .86fr 1fr .82fr;gap:8px;width:min(610px,100vw - 28px);left:50%;right:auto;transform:translate(-50%)}.helm-button{touch-action:none;-webkit-user-drag:none;appearance:none;width:100%;min-width:0;height:88px;padding:10px 12px}.helm-controls,.helm-controls *,.helm-controls :before,.helm-controls :after{-webkit-user-drag:none;touch-action:none;-webkit-tap-highlight-color:transparent!important;-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}.helm-button>*{pointer-events:none}.helm-button.hard-over{background:0 0;border-color:#f2c84bc7}.helm-button.hard-over:before{background:var(--coral)}.helm-button.slow{background:0 0;border-color:#ef5b3fb8}.helm-button.slow:before{background:var(--coral)}.helm-button.slow small,.helm-button.slow strong,.helm-button.slow span{color:var(--paper)}.helm-button.slow span{border-color:#f2eedf7a}.helm-button:active{transform:translate(2px,2px);box-shadow:2px 2px #051c216b}@media (max-width:820px){.helm-controls{bottom:max(10px, calc(env(safe-area-inset-bottom) + 7px));grid-template-columns:.82fr 1fr .86fr 1fr .82fr;gap:5px;width:calc(100vw - 18px);left:50%;right:auto;transform:translate(-50%)}.helm-button{height:76px;padding:8px 9px}.helm-button small{letter-spacing:.09em;font-size:6px}.helm-button strong{font-size:42px}.helm-button span{width:19px;height:19px;font-size:7px}}@media (max-width:520px){.competition-selector{gap:6px}.strategy-pick select{height:41px;padding-inline:7px;font-size:8px}.spectator-matchup{top:max(94px, calc(env(safe-area-inset-top) + 80px));grid-template-columns:minmax(70px,1fr) auto minmax(70px,1fr);font-size:7px}.helm-controls{gap:4px;width:calc(100vw - 12px)}.helm-button{height:70px;padding:7px 6px}.helm-button small{letter-spacing:.06em;font-size:5.5px}.helm-button strong{font-size:36px}.helm-button span{width:17px;height:17px;font-size:6px}}@media (orientation:landscape) and (max-height:560px){.helm-controls{bottom:max(6px, env(safe-area-inset-bottom));width:min(560px,100vw - 150px);left:50%;right:auto;transform:translate(-50%)}.helm-button{height:56px;padding:5px 8px}.helm-button strong{font-size:31px}.helm-button span{width:16px;height:16px}}.race-topbar .scoreboard{grid-column:2;justify-self:center}.topbar:not(.race-topbar) .top-actions,.race-topbar .top-actions{grid-column:3}.umpire-toast{top:max(70px, calc(env(safe-area-inset-top) + 56px))}@media (max-width:820px){.race-topbar .scoreboard{grid-template-columns:55px 46px 55px;min-height:36px}.race-topbar .top-actions{justify-self:end}.position-strip{top:max(67px, calc(env(safe-area-inset-top) + 53px))}.countdown-callout,.umpire-toast{top:max(58px, calc(env(safe-area-inset-top) + 48px))}}@media (orientation:portrait) and (max-width:520px){.position-strip{display:none}.left-data{top:max(57px, calc(env(safe-area-inset-top) + 43px));left:8px}.left-data .rule-chip{display:none}.penalty-feed{top:max(55px, calc(env(safe-area-inset-top) + 42px));width:min(215px,100vw - 154px);left:auto;right:8px;transform:none}.penalty-feed article{padding:6px 7px}.penalty-feed em{display:none}.race-topbar{inset-inline:8px}.race-topbar .scoreboard{grid-template-columns:50px 43px 50px;min-height:34px}.race-topbar .score-team{gap:3px;font-size:5.5px}.race-topbar .score-team strong{font-size:15px}.countdown-callout{gap:7px;min-height:28px;padding:4px 8px}.countdown-callout strong{font-size:20px}.umpire-toast{border-left-width:5px;grid-template-columns:22px minmax(0,1fr);gap:8px;width:calc(100vw - 16px);padding:8px 10px;box-shadow:4px 4px #051c2161}.flag-swatch{width:20px;height:18px}.umpire-toast small{font-size:5.5px}.umpire-toast strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.umpire-toast p{display:none}}.checkpoint-card{z-index:1;font-family:var(--font-geist-mono), monospace;background:#102f350b;border:1px solid #102f3552;gap:8px;margin-bottom:13px;padding:10px;display:grid;position:relative}.checkpoint-head,.checkpoint-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.checkpoint-head>div{align-items:baseline;gap:7px;display:flex}.checkpoint-head small{color:var(--coral);letter-spacing:.13em;font-size:6px;font-weight:850}.checkpoint-head strong{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:23px;line-height:.8}.checkpoint-head>span,.checkpoint-foot{color:#102f358c;letter-spacing:.08em;font-size:5.5px;font-weight:750}.checkpoint-table{border-block:1px solid #102f3538;display:grid}.checkpoint-table-head,.checkpoint-row{grid-template-columns:minmax(128px,1.7fr) .55fr .7fr .7fr;align-items:center;gap:5px;display:grid}.checkpoint-table-head{color:#102f3573;letter-spacing:.08em;min-height:18px;font-size:5.5px;font-weight:750}.checkpoint-row{color:#102f35ad;border-top:1px solid #102f3521;min-height:31px;font-size:7px;font-weight:700}.checkpoint-row>strong{color:var(--ink);font-size:10px}.checkpoint-policy{grid-template-columns:16px minmax(0,1fr);align-items:center;display:grid}.checkpoint-policy i{color:var(--coral);grid-row:1/span 2;font:italic 800 14px/1 Georgia,serif}.checkpoint-policy b{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.checkpoint-policy em{color:#102f3578;letter-spacing:.07em;font-size:5px;font-style:normal}.checkpoint-row.gemini .checkpoint-policy em{color:#986224}.checkpoint-matchups{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.checkpoint-matchups button{background:var(--paper);min-width:0;min-height:27px;color:var(--ink);cursor:pointer;font:750 5.5px/1 var(--font-geist-mono), monospace;border:1px solid #102f3540;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;padding:4px 5px;display:grid}.checkpoint-matchups button:hover,.checkpoint-matchups button:focus-visible{border-color:var(--coral);outline:1px solid var(--coral)}.checkpoint-matchups span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.checkpoint-matchups span:first-child{text-align:right}.checkpoint-matchups span:last-child{text-align:left}.checkpoint-matchups i{color:var(--coral);margin-inline:3px;font-size:5px;font-style:normal}.checkpoint-matchups b{font-size:8px}.watch-briefing{overscroll-behavior:contain;scrollbar-color:var(--coral) #102f3514;scrollbar-width:thin;max-height:calc(100svh - 42px);overflow-y:auto}@media (max-width:520px){.checkpoint-card{padding:8px}.checkpoint-table-head,.checkpoint-row{grid-template-columns:minmax(105px,1.55fr) .5fr .67fr .67fr}.checkpoint-matchups{grid-template-columns:1fr}.checkpoint-matchups button{min-height:24px}}@media (orientation:landscape) and (max-height:560px){.watch-briefing .title-stack,.watch-briefing .briefing-copy{display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
