:root{--night:#071521;--deep:#0b1e2e;--signal:#4df0e0;--paper:#eef2f3;--surface:#fff;--sunk:#e3e9ec;--ink:#0b1e2e;--ink-2:#445361;--ink-3:#66737e;--line:#d3dce0;--accent:#0b7a70;--accent-wash:#ddf3f0;--flag:#c2471f;--flag-fill:#ff7a59;--flag-wash:#fde9e2;--good:#1d7a3e;--radius-lg:18px;--radius:12px;--radius-sm:8px;--display:"Unbounded", "Inter", system-ui, sans-serif;--body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#071521;--surface:#0e2233;--sunk:#0a1b29;--ink:#eaf1f4;--ink-2:#a9b8c3;--ink-3:#8697a4;--line:#1f3547;--accent:#4df0e0;--accent-wash:#0f3436;--flag:#ff8f6e;--flag-wash:#3a1e17;--good:#6fd69a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#071521;--surface:#0e2233;--sunk:#0a1b29;--ink:#eaf1f4;--ink-2:#a9b8c3;--ink-3:#8697a4;--line:#1f3547;--accent:#4df0e0;--accent-wash:#0f3436;--flag:#ff8f6e;--flag-wash:#3a1e17;--good:#6fd69a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}body{min-height:100vh}a{color:var(--accent);text-underline-offset:3px}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2.5px solid var(--accent);outline-offset:2px;border-radius:6px}.tnum{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.shell{background:linear-gradient(to right, var(--deep) 252px, transparent 252px);grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.rail{background:var(--deep);color:#dce6ec;--paper:var(--deep);flex-direction:column;gap:4px;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{color:#fff;align-items:center;gap:10px;padding:4px 10px 18px;text-decoration:none;display:flex}.brand-word{font-family:var(--display);letter-spacing:.24em;font-size:15px;font-weight:500}.boat-switch{border-radius:var(--radius);color:#fff;text-align:left;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff17;width:calc(100% - 12px);margin:0 6px 14px;padding:10px 12px}.boat-switch small{color:#9fb3c1;font-size:12px;display:block}.boat-switch select{all:unset;cursor:pointer;width:100%;font-weight:600}.nav-group{color:#8da2b1;margin:14px 10px 6px;font-size:12px}.nav a{color:#dce6ec;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.nav a:hover{background:#ffffff0f}.nav a[aria-current=page]{color:#fff;background:#4df0e01f}.nav a[aria-current=page] svg{color:var(--signal)}.nav a .lock{opacity:.55;margin-left:auto}.rail-foot{color:#9fb3c1;flex-direction:column;gap:6px;margin-top:auto;padding:14px 10px 0;font-size:13px;display:flex}.rail-foot button{all:unset;cursor:pointer;color:#c8d6df}.rail-foot button:hover{color:#fff;text-decoration:underline}.main{min-width:0;padding:32px 40px 80px}.page{flex-direction:column;gap:22px;max-width:920px;margin:0 auto;display:flex}.page-wide{max-width:1180px}.tabbar{display:none}@media (width<=860px){.shell{background:0 0;grid-template-columns:minmax(0,1fr)}.rail{display:none}.main{padding:18px 16px 104px}.tabbar{grid-template-columns:repeat(var(--tabs,4), minmax(0, 1fr));z-index:20;background:var(--deep);padding:8px 6px calc(8px + env(safe-area-inset-bottom));display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:#a9bcc9;border-radius:10px;flex-direction:column;align-items:center;gap:3px;padding:6px 0;font-size:11.5px;font-weight:500;text-decoration:none;display:flex}.tabbar a[aria-current=page]{color:#fff}.tabbar a[aria-current=page] svg{color:var(--signal)}.mobile-top{display:flex!important}}.mobile-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:none}.mobile-top select{border:1px solid var(--line);background:var(--surface);border-radius:10px;max-width:70vw;padding:8px 10px;font-weight:600}h1,h2,h3{margin:0;line-height:1.15}.h-display{font-family:var(--display);letter-spacing:-.01em;font-size:clamp(26px,4vw,36px);font-weight:600}.h-section{letter-spacing:-.005em;font-size:19px;font-weight:700}.h-card{font-size:16px;font-weight:650}.muted{color:var(--ink-2)}.faint{color:var(--ink-3);font-size:14px}.small{font-size:14px}p{margin:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:20px 22px}.panel-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.panel-head .h-section{align-items:center;gap:10px;display:flex}.panel-head .h-section svg{color:var(--accent)}.stack{flex-direction:column;gap:14px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}@media (width<=720px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}.panel{padding:16px}}.divider{background:var(--line);height:1px;margin:4px 0}.btn{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--ink-3)}.btn-primary{background:var(--deep);color:#fff;border-color:var(--deep)}.btn-primary:hover{background:#12304a}:root[data-theme=dark] .btn-primary{background:var(--signal);color:var(--deep);border-color:var(--signal)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .btn-primary{background:var(--signal);color:var(--deep);border-color:var(--signal)}}.btn-quiet{background:0 0;border-color:#0000}.btn-quiet:hover{background:var(--sunk)}.btn-sm{min-height:36px;padding:0 14px;font-size:14px}.btn[disabled]{opacity:.5;cursor:not-allowed}.icon-btn{cursor:pointer;width:40px;height:40px;color:var(--ink-2);background:0 0;border:1px solid #0000;border-radius:999px;place-items:center;display:inline-grid}.icon-btn:hover{background:var(--sunk);color:var(--ink)}.field{flex-direction:column;gap:6px;display:flex}.field>span{color:var(--ink-2);font-size:14px;font-weight:600}.field small{color:var(--ink-3);font-size:13px}.input,.select,.textarea{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;padding:10px 12px}.textarea{resize:vertical;min-height:88px;line-height:1.45}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:#0000}.seg{background:var(--sunk);border-radius:999px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.seg button{cursor:pointer;color:var(--ink-2);background:0 0;border:0;border-radius:999px;min-height:36px;padding:7px 14px;font-size:14px;font-weight:600}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0b1e2e1f}.chip{background:var(--sunk);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:13px;font-weight:600;display:inline-flex}.chip-accent{background:var(--accent-wash);color:var(--accent)}.chip-flag{background:var(--flag-wash);color:var(--flag)}.chip-good{background:color-mix(in srgb, var(--good) 14%, transparent);color:var(--good)}.notice{border-radius:var(--radius);background:var(--sunk);color:var(--ink-2);align-items:flex-start;gap:12px;padding:12px 14px;font-size:14px;display:flex}.notice-flag{background:var(--flag-wash);color:var(--flag)}.error{color:var(--flag);font-size:14px;font-weight:500}.empty{text-align:center;border:1.5px dashed var(--line);border-radius:var(--radius-lg);color:var(--ink-2);flex-direction:column;align-items:center;gap:12px;padding:28px 20px;display:flex}.toast{background:var(--deep);color:#fff;z-index:50;border-radius:999px;align-items:center;gap:8px;padding:12px 18px;font-size:14px;font-weight:600;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0715214d}.toast svg{color:var(--signal)}@media (width<=860px){.toast{bottom:96px}}.hero{background:var(--deep);color:#fff;border-radius:22px;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:26px 28px;display:grid;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;border:1px solid #4df0e024;border-radius:50%;width:340px;height:340px;position:absolute;inset:auto -60px -120px auto;box-shadow:0 0 0 40px #4df0e008,0 0 0 80px #4df0e005}.hero .meta{color:#a9bcc9;font-size:14px}.hero h1{font-family:var(--display);letter-spacing:-.01em;margin:6px 0 8px;font-size:clamp(24px,3.6vw,34px);font-weight:600}.hero .headline{color:#dce6ec;max-width:54ch;font-size:16px}.hero .clock{text-align:right;z-index:1;align-self:end;position:relative}.hero .clock b{font-family:var(--display);color:var(--signal);font-size:clamp(30px,5vw,48px);font-weight:500;line-height:1;display:block}.hero .clock span{color:#a9bcc9;font-size:13px}@media (width<=640px){.hero{grid-template-columns:minmax(0,1fr);padding:22px 20px}.hero .clock{text-align:left}}.tabs{border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.tabs a{color:var(--ink-2);white-space:nowrap;border-bottom:2.5px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:12px 16px;font-weight:600;text-decoration:none;display:inline-flex}.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent)}.tabs a svg{color:var(--ink-3)}.tabs a[aria-current=page] svg{color:var(--accent)}.wind-now{align-items:center;gap:18px;display:flex}.wind-now .big{font-family:var(--display);font-size:40px;font-weight:500;line-height:1}.wind-now .big small{font-family:var(--body);color:var(--ink-2);margin-left:4px;font-size:15px;font-weight:600}.windchart text{font-family:var(--body)}.legs{flex-direction:column;display:flex}.leg{border-top:1px solid var(--line);grid-template-columns:34px 64px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 0;display:grid}.leg:first-child{border-top:0}.leg-n{background:var(--deep);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:14px;font-weight:700;display:grid}:root[data-theme=dark] .leg-n{background:var(--signal);color:var(--deep)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .leg-n{background:var(--signal);color:var(--deep)}}.leg-title{font-weight:650}.leg-sub{color:var(--ink-2);font-size:14px}@media (width<=560px){.leg{grid-template-columns:30px 56px minmax(0,1fr)}.leg>:last-child{grid-column:3}}.leg-edit{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 100px 100px 100px 40px;align-items:end;gap:8px;padding:10px 0;display:grid}@media (width<=720px){.leg-edit{grid-template-columns:1fr 1fr}}.list{flex-direction:column;display:flex}.list-item{border-top:1px solid var(--line);color:inherit;align-items:center;gap:14px;padding:14px 4px;text-decoration:none;display:flex}.list-item:first-child{border-top:0}a.list-item:hover{background:var(--sunk);border-radius:10px}.date-tile{text-align:center;background:var(--sunk);border-radius:12px;flex:none;width:54px;padding:6px 0}.date-tile b{font-family:var(--display);font-size:20px;font-weight:500;line-height:1.1;display:block}.date-tile span{color:var(--ink-2);font-size:12px;font-weight:600}.lesson{border-top:1px solid var(--line);gap:12px;padding:12px 0;display:flex}.lesson:first-child{border-top:0}.lesson-dot{background:var(--accent);border-radius:50%;flex:none;width:10px;height:10px;margin-top:7px}.lesson-dot.change{background:var(--flag-fill)}.rating{grid-template-columns:130px minmax(0,1fr);align-items:center;gap:12px;padding:8px 0;display:grid}.rating .dots{gap:6px;display:flex}.rating .dots button{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;width:40px;height:40px;color:var(--ink-2);border-radius:50%;font-weight:700}.rating .dots button[aria-pressed=true]{background:var(--deep);border-color:var(--deep);color:#fff}:root[data-theme=dark] .rating .dots button[aria-pressed=true]{background:var(--signal);border-color:var(--signal);color:var(--deep)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .rating .dots button[aria-pressed=true]{background:var(--signal);border-color:var(--signal);color:var(--deep)}}@media (width<=480px){.rating{grid-template-columns:minmax(0,1fr);gap:6px}}.avatar{background:var(--accent-wash);width:34px;height:34px;color:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.rsvp{gap:6px;display:inline-flex}.rsvp button{border:1.5px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;min-height:40px;padding:0 14px;font-size:14px;font-weight:600}.rsvp button[aria-pressed=true][data-v=in]{background:var(--good);border-color:var(--good);color:#fff}.rsvp button[aria-pressed=true][data-v=maybe]{color:#fff;background:#b7791f;border-color:#b7791f}.rsvp button[aria-pressed=true][data-v=out]{background:var(--ink-3);border-color:var(--ink-3);color:#fff}.module{border-top:1px solid var(--line);grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 0;display:grid}.module:first-child{border-top:0}.module-icon{background:var(--deep);width:52px;height:52px;color:var(--signal);border-radius:15px;place-items:center;display:grid}.module-icon.core{background:var(--accent-wash);color:var(--accent)}@media (width<=560px){.module{grid-template-columns:52px minmax(0,1fr)}.module>:last-child{grid-column:2;justify-self:start}}.switch{background:var(--line);cursor:pointer;border:0;border-radius:999px;flex:none;width:52px;height:30px;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0003}.switch[aria-checked=true]{background:var(--accent)}.switch[aria-checked=true]:after{transform:translate(22px)}@media (prefers-reduced-motion:reduce){.switch:after{transition:none}}.season{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);overflow-x:auto}.season table{border-collapse:collapse;min-width:100%;font-size:14px}.season th,.season td{border-bottom:1px solid var(--line);text-align:center;white-space:nowrap;padding:10px 12px}.season th:first-child,.season td:first-child{text-align:left;background:var(--surface);position:sticky;left:0}.season thead th{color:var(--ink-2);vertical-align:bottom;font-size:13px;font-weight:600}.cell-btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:8px;width:40px;height:34px;font-weight:700}.cell-btn[data-v=in]{background:color-mix(in srgb, var(--good) 16%, transparent);color:var(--good);border-color:#0000}.cell-btn[data-v=maybe]{color:#8a5a12;background:#f6e7c8;border-color:#0000}.cell-btn[data-v=out]{background:var(--sunk);color:var(--ink-3);border-color:#0000}.auth{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:100vh;display:grid}.auth-art{background:var(--deep);color:#fff;flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.auth-art h1{font-family:var(--display);letter-spacing:-.015em;max-width:13ch;font-size:clamp(30px,4vw,46px);font-weight:600;line-height:1.08}.auth-art p{color:#b9c9d4;max-width:42ch;font-size:17px}.auth-form{place-items:center;padding:32px 20px;display:grid}.auth-form form{flex-direction:column;gap:16px;width:100%;max-width:380px;display:flex}@media (width<=860px){.auth{grid-template-columns:minmax(0,1fr)}.auth-art{gap:28px;min-height:0;padding:28px 22px}.auth-art .loop{display:none}}@media print{@page{margin:12mm}:root{--paper:#fff;--surface:#fff;--ink:#000;--ink-2:#333;--line:#bbb;--accent:#0b5f57}.rail,.tabbar,.tabs,.no-print,.toast,.mobile-top{display:none!important}.shell{display:block}.main{padding:0}.hero{color:#000;border:2px solid #000;background:#fff!important}.hero .meta,.hero .headline,.hero .clock span{color:#333}.hero .clock b{color:#000}.hero:after{display:none}.panel{break-inside:avoid;border-color:#999}.leg-n{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#fff!important;background:#000!important}}.callout{background:color-mix(in srgb, var(--accent) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:14px;padding:12px 14px;font-size:14px;line-height:1.5}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;font-size:11px;font-weight:700}.targets{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.target{background:var(--sunk);border-radius:14px;padding:12px 14px}.target-big{color:var(--ink);font-family:Unbounded,system-ui,sans-serif;font-size:30px;font-weight:600;line-height:1.1}.target-big small{color:var(--ink-3);margin-left:3px;font-family:Inter,system-ui,sans-serif;font-size:13px}.target-row{color:var(--ink-2);flex-wrap:wrap;gap:4px 12px;margin-top:4px;font-size:13px;display:flex}.target-row b{color:var(--ink)}@media (width<=560px){.targets.three{grid-template-columns:1fr 1fr}.targets.three .target:nth-child(2){order:3;grid-column:1/-1}}.polar-wrap{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.polar-key{color:var(--ink-2);flex-direction:column;gap:6px;font-size:13px;display:flex}.polar-key i{vertical-align:middle;border-radius:2px;width:16px;height:4px;margin-right:8px;display:inline-block}@media (width<=560px){.polar-key{flex-flow:wrap;gap:6px 14px}}.table{border-collapse:collapse;width:100%;font-size:14px}.table caption{text-align:left;color:var(--ink);padding-bottom:6px;font-weight:700}.table th{text-align:right;color:var(--ink-3);border-bottom:1px solid var(--line);padding:6px 8px;font-size:12px;font-weight:600}.table td{text-align:right;border-bottom:1px solid var(--line);padding:6px 8px}.table th:first-child,.table td:first-child{text-align:left}.rating-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.rating-tile{background:var(--sunk);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.rating-tile>span{color:var(--ink);font-size:22px;font-weight:700}.rating-tile small{color:var(--ink-2);font-size:12.5px}.spec{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 18px;margin:0;display:grid}.spec dt{color:var(--ink-3);font-size:12px}.spec dd{color:var(--ink);margin:0;font-size:14px;font-weight:600}.leg-target{color:var(--ink-2);margin-top:3px;font-size:13px}.leg-target b{color:var(--ink)}.sim-stage{background:#071521;border-radius:16px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #4df0e01f}.sim-svg{width:100%;height:auto;display:block}.sim-title{margin-bottom:8px;font-weight:700}.sim-hud{color:#eaf1f4;-webkit-backdrop-filter:blur(6px);background:#0715219e;border:1px solid #4df0e02e;border-radius:12px;min-width:150px;padding:8px 12px;position:absolute;top:12px;left:12px}.sim-clock{color:#4df0e0;font-family:Unbounded,system-ui,sans-serif;font-size:20px;font-weight:600}.sim-leg{opacity:.85;margin-top:2px;font-size:12.5px}.sim-stats{text-transform:capitalize;gap:10px;margin-top:6px;font-size:13px;display:flex}.sim-stats b{color:#fff;font-size:16px}.sim-sails{margin-top:6px}.sim-sails .chip{color:#eaf1f4;background:#eaf1f41f;border-color:#0000}.sim-sails .chip-flag{color:#071521;background:#ff7a59}.sim-event{color:#071521;white-space:nowrap;background:#4df0e0;border-radius:999px;padding:7px 14px;font-size:14px;font-weight:700;animation:.45s cubic-bezier(.2,1.4,.4,1) both sim-pop;position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #4df0e059}@keyframes sim-pop{0%{opacity:0;transform:translate(-50%,12px)scale(.9)}to{opacity:1;transform:translate(-50%)scale(1)}}.sim-kite{transform-box:fill-box;transform-origin:50% 100%;opacity:0;transition:transform .7s cubic-bezier(.2,1.3,.4,1),opacity .3s;transform:scale(0)}.sim-kite.up{opacity:1;transform:scale(1)}.sim-jib{opacity:0;transition:opacity .4s}.sim-jib.up{opacity:1}.sim-pulse{transform-box:fill-box;transform-origin:50%;animation:1.6s ease-out infinite sim-ring}@keyframes sim-ring{0%{opacity:.9;transform:scale(.5)}to{opacity:0;transform:scale(1.6)}}.sim-panels{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:10px;display:grid}.sim-card{background:var(--sunk);border-radius:14px;padding:10px 14px;animation:.5s both sim-in}.sim-card ul{margin:4px 0 6px;padding-left:18px;font-size:14px;line-height:1.45}.sim-card p{margin:4px 0;font-size:14px}.sim-lesson{background:color-mix(in srgb, var(--flag-fill,#ff7a59) 14%, var(--surface));box-shadow:inset 3px 0 #ff7a59}@keyframes sim-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.sim-dot{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:8px;display:inline-block}.sim-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;display:flex}.sim-scrub{flex:1;min-width:180px;position:relative}.sim-scrub input{width:100%;accent-color:var(--accent)}.sim-ticks{height:8px;margin-top:-2px;position:relative}.sim-ticks i{background:var(--ink-3);border-radius:50%;width:6px;height:6px;margin-left:-3px;position:absolute;top:0}.sim-ticks i.k-round,.sim-ticks i.k-finish{background:var(--flag,#ff7a59)}.sim-ticks i.k-kite-up{background:var(--accent)}@media (width<=560px){.sim-hud{min-width:0;padding:6px 9px}.sim-clock{font-size:16px}.sim-stats{gap:8px;font-size:12px}.sim-stats b{font-size:14px}.sim-event{font-size:12.5px}}@media (prefers-reduced-motion:reduce){.sim-event,.sim-card,.sim-pulse{animation:none}.sim-kite,.sim-jib{transition:none}}.loader{flex-direction:column;align-items:center;gap:10px;padding:64px 0;display:flex}.ld-streak{opacity:0;animation:1.4s linear infinite ld-flow}@keyframes ld-flow{0%{opacity:0;transform:translate(0)}20%{opacity:.9}to{opacity:0;transform:translate(160px)}}.ld-mind{transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite ld-pulse}@keyframes ld-pulse{0%,to{opacity:.55;transform:scale(.75)}40%{opacity:1;fill:var(--accent);transform:scale(1.12)}}.wind-loader{background:linear-gradient(90deg, var(--sunk), var(--surface), var(--sunk));border-radius:12px;height:70px;margin-top:10px;position:relative;overflow:hidden}.wind-loader i{background:var(--accent);opacity:.7;border-radius:2px;height:2px;animation:1.4s linear infinite wl-run;position:absolute;left:-60px}@keyframes wl-run{to{transform:translate(900px)}}.page>*{animation:.45s cubic-bezier(.2,.8,.2,1) both rise}.page>:nth-child(2){animation-delay:40ms}.page>:nth-child(3){animation-delay:80ms}.page>:nth-child(4){animation-delay:.12s}.page>:nth-child(5){animation-delay:.16s}.page>:nth-child(n+6){animation-delay:.2s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.legs .leg{animation:.4s both rise}.legs .leg:nth-child(2){animation-delay:60ms}.legs .leg:nth-child(3){animation-delay:.12s}.legs .leg:nth-child(4){animation-delay:.18s}.legs .leg:nth-child(n+5){animation-delay:.24s}.btn{transition:transform .12s,box-shadow .2s,background-color .2s}.btn:active:not(:disabled){transform:scale(.96)}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px color-mix(in srgb, var(--accent) 35%, transparent)}.seg button,.dots button{transition:background-color .2s,color .2s,transform .15s}.dots button[aria-pressed=true],.seg button[aria-pressed=true]{animation:.3s cubic-bezier(.2,1.6,.4,1) pop}@keyframes pop{50%{transform:scale(1.12)}}.toast{animation:.35s cubic-bezier(.2,1.2,.4,1) both toast-in}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}.target-big,.wind-now .big{animation:.6s both count}@keyframes count{0%{opacity:0;filter:blur(4px);transform:translateY(6px)}to{opacity:1;filter:none;transform:none}}.chip-accent{animation:.4s both pop}.nav a{transition:background-color .2s,color .2s,padding-left .2s}.nav a:hover{padding-left:16px}.countdown-glow{animation:2.6s ease-in-out infinite glow}@keyframes glow{50%{text-shadow:0 0 18px #4df0e08c}}@media (prefers-reduced-motion:reduce){.page>*,.legs .leg,.toast,.target-big,.wind-now .big,.chip-accent,.dots button,.seg button,.ld-streak,.ld-mind,.wind-loader i,.countdown-glow{animation:none!important}.ld-streak{opacity:.6}}@media (width<=560px){.sim-stage{flex-direction:column;display:flex}.sim-hud{background:#0b1e2e;border:0;border-top:1px solid #4df0e02e;border-radius:0;order:2;grid-template-columns:auto 1fr;align-items:center;gap:2px 12px;display:grid;position:static}.sim-hud .sim-leg{text-align:right;grid-area:1/2}.sim-hud .sim-stats{grid-column:1;margin:0}.sim-hud .sim-sails{text-align:right;grid-column:2;margin:0}.sim-event{top:10px;bottom:auto}}.caller{background:var(--sunk);border-radius:14px;flex-wrap:wrap;align-items:center;gap:14px;padding:12px 14px;display:flex}.caller-who{font-size:16px}.calls{flex-wrap:wrap;flex:1;gap:8px;display:flex}.call{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600;transition:background-color .3s,color .3s,transform .3s}.call.on{background:var(--accent);color:var(--paper);border-color:#0000;transform:scale(1.04)}.sop{flex-direction:column;display:flex}.sop-head,.sop-row{grid-template-columns:minmax(130px,170px) repeat(3,minmax(0,1fr));gap:10px;display:grid}.sop-head{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);padding:0 0 6px;font-size:12px;font-weight:700}.sop-head span.on{color:var(--accent)}.sop-row{border-top:1px solid var(--line);padding:10px 0;transition:opacity .3s}.sop-row.dim{opacity:.45}.sop-row.mine{background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:10px}.sop-pos{flex-direction:column;gap:3px;padding-left:6px;display:flex}.sop-pos small{color:var(--ink-3);font-size:12.5px}.sop-pos .chip{align-self:flex-start}.sop-cell{border-radius:10px;padding:4px 8px;transition:background-color .35s,box-shadow .35s}.sop-cell.on{background:color-mix(in srgb, var(--accent) 16%, var(--surface));box-shadow:inset 0 0 0 1.5px var(--accent)}.sop-cell ul{margin:0;padding-left:16px;font-size:14px;line-height:1.45}.sop-cell .textarea{min-height:84px;font-size:13.5px}.sop-label{display:none}@media (width<=720px){.sop-head{display:none}.sop-row{grid-template-columns:1fr;gap:4px}.sop-label{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);font-size:11px;font-weight:700;display:block}}.wrist-sheet{flex-wrap:wrap;gap:14px;display:flex}.wrist{border:1.5px dashed var(--ink-3);color:#071521;break-inside:avoid;background:#fff;border-radius:8px;width:4.5in;min-height:3in;padding:8px 10px;font-size:9.5pt;line-height:1.25}.wrist-top{border-bottom:2px solid #071521;justify-content:space-between;align-items:baseline;margin-bottom:5px;padding-bottom:3px;display:flex}.wrist-top b{font-family:Unbounded,system-ui,sans-serif;font-size:12pt}.wrist-top span{opacity:.7;font-size:8pt}.wrist-grid{grid-template-columns:1fr 1fr;gap:5px 10px;display:grid}.wrist-m{break-inside:avoid}.wrist-mh{text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #b9c4cc;justify-content:space-between;margin-bottom:2px;font-size:9pt;font-weight:800;display:flex}.wrist-mh i{color:#0b7a70;font-size:7.5pt;font-style:normal;font-weight:700}.wrist-l{gap:4px;font-size:8.5pt;display:flex}.wrist-l em{color:#c2471f;flex:none;width:9px;font-style:normal;font-weight:800}@media print{.wrist-sheet{gap:.15in}.wrist{border-color:#888}.rail,.tabbar,.mobile-top{display:none!important}}.sim-crew{box-shadow:inset 3px 0 0 var(--accent)}.stat-row{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.stat,.gauge{background:var(--sunk);border-radius:14px;flex-direction:column;justify-content:center;gap:2px;min-width:112px;padding:10px 14px;display:flex}.gauge{align-items:center;padding:8px 12px}.gauge span,.stat span{color:var(--ink-2);text-align:center;font-size:12.5px}.stat b{color:var(--ink);font-size:20px}.gauge-arc{animation:1.1s cubic-bezier(.2,.8,.2,1) both arc}@keyframes arc{0%{stroke-dasharray:0 999}}.trace-line{stroke-dasharray:4000;stroke-dashoffset:4000px;animation:2.2s forwards draw}@keyframes draw{to{stroke-dashoffset:0}}.legend{color:var(--ink-2);flex-wrap:wrap;gap:14px;display:flex}.legend i{vertical-align:middle;border-radius:2px;width:14px;height:3px;margin-right:6px;display:inline-block}.coach{background:var(--sunk);box-shadow:inset 3px 0 0 var(--flag-fill);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;animation:.45s both rise;display:flex}.coach.good{box-shadow:inset 3px 0 0 var(--good,#2e9e5b)}.coach p{flex:1;min-width:220px;margin:0;font-size:14.5px;line-height:1.45}.table tr.best td{background:color-mix(in srgb, var(--accent) 10%, transparent)}.video-sync{margin-bottom:12px}.video{background:#000;border-radius:12px;width:100%;max-height:360px}@media (prefers-reduced-motion:reduce){.gauge-arc,.trace-line,.coach{stroke-dashoffset:0;animation:none}}.demo-btn{border:1.5px solid var(--accent);width:100%;color:var(--ink);background:color-mix(in srgb, var(--accent) 10%, var(--surface));flex-direction:column;align-items:center;gap:2px;margin-top:14px;padding:12px;text-decoration:none;display:flex}.demo-btn small{color:var(--ink-2);font-size:12.5px;font-weight:500}.demo-banner{color:#eaf1f4;background:linear-gradient(90deg,#0b1e2e,#0e2a3d);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;max-width:1080px;margin:0 auto 14px;padding:10px 14px;font-size:14px;display:flex;box-shadow:inset 0 0 0 1px #4df0e040}.demo-banner b{color:#4df0e0}.polar{width:100%;max-width:360px;height:auto}.polar-arc{stroke-dasharray:2000;stroke-dashoffset:2000px;animation:1.4s cubic-bezier(.2,.8,.2,1) forwards draw}.polar-dot{transform-box:fill-box;transform-origin:50%;animation:.5s .9s both pop}.polar-key span.on{color:var(--ink);font-weight:700}@media (prefers-reduced-motion:reduce){.polar-arc{stroke-dashoffset:0;animation:none}.polar-dot{animation:none}}.coach-detail{color:var(--ink-2);flex-direction:column;gap:4px;margin-top:6px;font-size:13.5px;display:flex}.coach-detail details summary{cursor:pointer}.coach-detail details p{margin:4px 0 0}.sim-chart.night{filter:invert()hue-rotate(180deg)brightness(.78)contrast(1.05)saturate(.8)}.sim-flow{stroke-dasharray:7 5;animation:1.4s linear infinite flow}@keyframes flow{to{stroke-dashoffset:-24px}}@media (prefers-reduced-motion:reduce){.sim-flow{animation:none}}
