.page--geo{max-width:1080px}.geo-how{grid-template-columns:repeat(3,minmax(0,1fr))}.geo-credit{margin:28px 0 0;font:13px var(--sans);color:var(--mut)}.geo-credit a{color:var(--accent)}.geo{--geo-sea:#10171B;--geo-land:#252D31;--geo-edge:rgba(226,232,235,.16);--geo-grid:rgba(226,232,235,.045)}.geo .dly-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.geo .dly-play{min-height:520px}.geo-board{width:min(100%,560px);display:grid;gap:14px}.geo-board--map{width:min(100%,680px)}.geo-loading{margin:auto;font:13.5px var(--sans);color:var(--stage-mut)}.geo .sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.geo-zoom{transform-origin:0 0;transition:transform .8s cubic-bezier(.3,.7,.2,1)}.geo-map .geo-zoom circle,.geo-map .geo-zoom line,.geo-map .geo-zoom path{vector-effect:non-scaling-stroke}.geo-map{position:relative;border-radius:14px;overflow:hidden;background:var(--geo-sea);box-shadow:inset 0 0 0 1px var(--stage-line)}.geo-map svg{display:block;width:100%;height:auto}.geo-map .sea{fill:var(--geo-sea)}.geo-map .globe{fill:#131B20}.geo-map .grid{fill:none;stroke:var(--geo-grid);stroke-width:.6}.geo-map .land{fill:var(--geo-land);stroke:var(--geo-edge);stroke-width:.55;stroke-linejoin:round}.geo-map .rim{fill:none;stroke:rgba(226,232,235,.12);stroke-width:1}.geo-map text{font:600 10.5px var(--sans);fill:var(--stage-ink);paint-order:stroke;stroke:rgba(10,13,15,.85);stroke-width:3px;stroke-linejoin:round}.geo-map text.quiet{font-weight:500;fill:var(--stage-mut)}.geo-map .dot{fill:var(--stage-ink);stroke:rgba(10,13,15,.9);stroke-width:1.5}.dn{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px}.dn-rail{display:grid;grid-template-rows:auto 1fr auto;justify-items:center;gap:6px;padding:2px 0}.dn-rail i{width:2px;border-radius:2px;background:linear-gradient(var(--pc),rgba(255,255,255,.08))}.dn-end{font:600 10.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--stage-mut);writing-mode:vertical-rl;transform:rotate(180deg)}.dn-end:first-child{color:var(--pc)}.dn-list{margin:0;padding:0;list-style:none;gap:8px}.dn-card,.dn-list{position:relative;display:grid}.dn-card{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:58px;padding:0 12px 0 0;border-radius:12px;background:#1B1F21;border:1px solid var(--stage-line);color:var(--stage-ink);touch-action:pan-y;user-select:none;-webkit-user-select:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease}.dn-list[data-still] .dn-card{transition:none}.dn-card[data-sel]{border-color:var(--pc);box-shadow:0 0 0 3px color-mix(in srgb,var(--pc) 22%,transparent)}.dn-card[data-lift]{z-index:2;transition:box-shadow .18s ease;box-shadow:0 14px 30px -10px rgba(0,0,0,.7),0 0 0 1px var(--pc);background:#22282B;cursor:grabbing}.dn-card[data-pinned]{background:color-mix(in srgb,var(--pc) 16%,#1B1F21);border-color:color-mix(in srgb,var(--pc) 55%,transparent)}.dn-grip{align-self:stretch;display:grid;place-items:center;width:40px;padding:0;border:0;background:transparent;color:rgba(226,232,235,.34);cursor:grab;touch-action:none;border-radius:12px 0 0 12px}.dn-grip:focus-visible{outline:2px solid var(--pc);outline-offset:-3px}.dn-card[data-pinned] .dn-grip{color:var(--pc);cursor:default}.dn-name{min-width:0;display:grid;gap:1px;padding:8px 0;cursor:pointer}.dn-name b{font:600 16px/1.2 var(--display);letter-spacing:-.005em}.dn-name b,.dn-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dn-name small{font:12.5px/1.25 var(--sans);color:var(--stage-mut)}.dn-value{font:600 13px var(--mono);color:var(--stage-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.dn-mark{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;font:700 15px/1 var(--sans)}.dn-mark[data-m=ok]{background:var(--pc);color:#0E1112}.dn-mark[data-m=down],.dn-mark[data-m=up]{color:var(--pc);background:color-mix(in srgb,var(--pc) 14%,transparent)}.dn-mark[data-m=off]{color:var(--stage-mut);background:rgba(255,255,255,.05)}.dn-tries{margin:0;display:flex;gap:8px 16px;justify-content:center;flex-wrap:wrap;font:12px/1 var(--mono);color:var(--stage-mut)}.dn-tries span{display:inline-flex;gap:6px;align-items:center}.dn-tries span b{font:15px/1 var(--mono);letter-spacing:.1em;color:var(--stage-ink);font-weight:400}.dn--ruler{position:relative}.dn--ruler .dn-list{display:block;height:var(--ruler-h,340px)}.dn--ruler .dn-card{position:absolute;left:0;right:0;top:var(--y);transform:translateY(-50%);min-height:48px;transition:top .7s cubic-bezier(.2,.8,.2,1)}.dn-leaders{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;overflow:visible}.dn-leaders line{stroke:color-mix(in srgb,var(--pc) 75%,transparent);stroke-width:1.5;stroke-linecap:round}.dn-leaders circle{fill:var(--pc);stroke:#16191B;stroke-width:2}.dn-fact{margin:0;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--pc) 12%,transparent);font:14px/1.5 var(--sans);color:var(--stage-ink);text-align:center}.dn-sizes{display:flex;align-items:flex-end;justify-content:center;gap:12px;flex-wrap:wrap}.dn-sizes figure{margin:0;display:grid;justify-items:center;gap:6px}.dn-sizes svg{display:block}.dn-sizes path{fill:color-mix(in srgb,var(--pc) 55%,#1B1F21);stroke:var(--pc);stroke-width:.8}.dn-sizes figcaption{font:12px/1.3 var(--sans);color:var(--stage-mut);text-align:center}.dn-sizes figcaption b{display:block;font:600 13px var(--sans);color:var(--stage-ink)}.dn-num{font:700 14px var(--mono);color:var(--pc);cursor:default}@keyframes dn-spread{0%{top:var(--y0)}}.dn--ruler .dn-card{animation:dn-spread .8s cubic-bezier(.2,.8,.2,1) both}@keyframes dn-fade{0%{opacity:0}}.dn-leaders{animation:dn-fade .5s ease-out .55s both}.dn-map .dn-line{fill:none;stroke:color-mix(in srgb,var(--pc) 45%,transparent);stroke-width:1;stroke-dasharray:3 3}.dn-map .dn-ring{fill:none;stroke:color-mix(in srgb,var(--pc) 45%,transparent);stroke-width:1}.dn-map .dn-dot{fill:var(--pc);stroke:#0E1112;stroke-width:1.5}.dn-map text.dn-dot-n{font:700 10px var(--mono);fill:#0E1112;stroke:none}.dn-map .dn-anchor{fill:var(--stage-ink);stroke:#0E1112;stroke-width:2}.ct-route{fill:none;stroke:rgba(226,232,235,.5);stroke-width:1.6;stroke-dasharray:2 5;stroke-linecap:round}.ct-leg-line{fill:none;stroke:var(--pc);stroke-width:3;stroke-linecap:round}.ct-leg-line--given{stroke:rgba(226,232,235,.72);stroke-width:2.2}.geo-map .ct-lit{fill:color-mix(in srgb,var(--pc) 34%,var(--geo-land));stroke:color-mix(in srgb,var(--pc) 70%,transparent);stroke-width:.8}.geo-map .ct-given{fill:color-mix(in srgb,var(--stage-ink) 12%,var(--geo-land))}.geo-map .ct-flash{fill:rgba(242,147,132,.26);stroke:#F29384;stroke-width:1}.geo-map text.ct-name{font:600 9.5px var(--sans);fill:#F4DCE9}.geo-map text.ct-name.quiet{fill:var(--stage-mut);font-weight:500}.geo-map .ct-reveal{fill:color-mix(in srgb,var(--stage-ink) 9%,var(--geo-land));stroke:rgba(226,232,235,.34);stroke-dasharray:2 2}.ct-end{stroke:rgba(10,13,15,.9);stroke-width:2}.ct-end,.ct-plane{fill:var(--stage-ink)}.ct-legs{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.ct-leg{display:inline-flex;align-items:center;min-height:32px;padding:0 11px;border-radius:16px;font:600 13px var(--sans);color:var(--stage-mut);background:rgba(255,255,255,.04);border:1px dashed rgba(226,232,235,.22)}.ct-leg--given{border-style:solid;border-color:var(--stage-line);color:var(--stage-ink);background:rgba(255,255,255,.07);font-weight:500}.ct-leg--named{border-style:solid;border-color:transparent;background:var(--pc);color:#0E1112}.ct-leg--hint{color:var(--stage-ink);border-color:var(--pc)}.ct-leg--missed{border-style:solid;border-color:transparent;background:rgba(255,255,255,.08);color:var(--stage-ink);-webkit-text-decoration:underline dotted rgba(226,232,235,.4);text-decoration:underline dotted rgba(226,232,235,.4);text-underline-offset:3px}.ct-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ct-strikes{margin:0;display:inline-flex;align-items:center;gap:6px;font:12.5px var(--mono);color:var(--stage-mut)}.ct-strikes i{width:12px;height:12px;border-radius:3px;transform:rotate(45deg);border:1.5px solid rgba(226,232,235,.3)}.ct-strikes i[data-on]{background:#F29384;border-color:#F29384}.ct-entry{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.ct-entry input{min-width:0;height:48px;padding:0 14px;border-radius:10px;border:1px solid var(--stage-line);outline:0;background:#0F1213;color:var(--stage-ink);font:500 16px var(--sans)}.ct-entry input:focus{border-color:var(--pc);box-shadow:0 0 0 3px color-mix(in srgb,var(--pc) 22%,transparent)}.ct-entry input::placeholder{color:#6B747A}.ct-entry .dly-btn{min-height:48px}.ct-suggest{position:absolute;left:0;right:0;bottom:calc(100% + 6px);z-index:3;margin:0;padding:4px;list-style:none;border-radius:12px;background:#1F2427;border:1px solid rgba(226,232,235,.14);box-shadow:0 16px 34px -12px rgba(0,0,0,.75)}.ct-suggest li{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:8px;font:500 15px var(--sans);color:var(--stage-ink);cursor:pointer}.ct-suggest li[aria-selected=true]{background:color-mix(in srgb,var(--pc) 22%,transparent)}.ct-suggest li small{margin-left:auto;font:12px var(--sans);color:var(--stage-mut)}.rf-map{cursor:crosshair;touch-action:manipulation}.rf-map:focus-visible{outline:2px solid var(--pc);outline-offset:2px}.rf-band{fill:color-mix(in srgb,var(--pc) 7%,transparent);fill-rule:evenodd;stroke:color-mix(in srgb,var(--pc) 50%,transparent);stroke-width:1}.rf-band--last{fill:color-mix(in srgb,var(--pc) 18%,transparent);stroke:var(--pc);stroke-width:1.4}.rf-maybe circle{fill:#F2C27A}.rf-ping{fill:var(--pc);stroke:rgba(10,13,15,.9);stroke-width:1.5}.rf-aim{fill:none;stroke:var(--stage-ink);stroke-width:1.4}.rf-aim-dot{fill:var(--stage-ink)}.rf-found{fill:var(--pc);stroke:var(--stage-ink);stroke-width:2}.rf-found-halo{fill:none;stroke:var(--pc);stroke-width:1.5;opacity:.55}.rf-catch{fill:color-mix(in srgb,var(--pc) 14%,transparent);stroke:var(--pc);stroke-width:1;stroke-dasharray:3 3}.rf-pips{margin:0;display:flex;align-items:center;gap:6px;font:12.5px var(--mono);color:var(--stage-mut)}.rf-pips i{width:12px;height:12px;border-radius:50%;border:1.5px solid rgba(226,232,235,.3)}.rf-pips i[data-used]{background:var(--pc);border-color:var(--pc)}.rf-log{margin:0;padding:0;list-style:none;display:grid;gap:4px;font:13px var(--mono);color:var(--stage-mut)}.rf-log li{display:flex;gap:10px}.rf-log li b{color:var(--stage-ink);font-weight:600}.rf-log li:last-child b{color:var(--pc)}@keyframes rf-ripple{0%{opacity:.9;transform:scale(.2)}to{opacity:0;transform:scale(1)}}.rf-ripple{fill:none;stroke:var(--pc);stroke-width:2;transform-box:fill-box;transform-origin:center;animation:rf-ripple 1s ease-out 1 both}@keyframes ct-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.ct-leg-line--new{stroke-dasharray:1;animation:ct-draw .9s ease-out 1 both}@media (max-width:860px){.geo .dly-play{min-height:0}.geo-how{grid-template-columns:1fr}.ct-entry .dly-btn{padding:0 12px}}@media (prefers-reduced-motion:reduce){.dn--ruler .dn-card,.dn-card,.dn-leaders,.geo-zoom{transition:none;animation:none}.ct-leg-line--new,.rf-ripple{animation:none}}