*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.block{display:block}.inline{display:inline}.flex{display:flex}.grid{display:grid}.hidden{display:none}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.italic{font-style:italic}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.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)}.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,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg: #060912;--bg-2: #0A0F1E;--surface: #0C1223;--hair: rgba(188, 200, 232, .13);--hair-2: rgba(188, 200, 232, .22);--ink: #ECEFF6;--ink-2: #B9C1D6;--muted: #7F89A3;--dim: #56607A;--ivory: #F1EADB;--start: #BFD3FF;--goal: #F3B676;--miss: #F3C9A0;--mono: "JetBrains Mono", ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--sa-t: env(safe-area-inset-top, 0px);--sa-b: env(safe-area-inset-bottom, 0px);--sa-l: env(safe-area-inset-left, 0px);--sa-r: env(safe-area-inset-right, 0px);--gutter: 16px;--panel-w: 360px;--radius: 20px;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{position:fixed;top:0;right:0;bottom:0;left:0;overscroll-behavior:none;background:var(--bg);color:var(--ink);font-family:var(--mono);font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation}button,input{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{cursor:default}:focus{outline:none}:focus-visible{outline:1.5px solid var(--ivory);outline-offset:3px}::-moz-selection{background:#f1eadb38}::selection{background:#f1eadb38}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.glyph,.swatch{display:block;flex:none;overflow:visible}.sky{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:radial-gradient(120% 80% at 18% 8%,rgba(62,78,140,.2),transparent 60%),radial-gradient(90% 70% at 88% 92%,rgba(40,92,110,.14),transparent 62%),radial-gradient(140% 100% at 50% 50%,var(--bg-2),var(--bg) 70%)}.sky canvas{position:absolute;left:0;top:0;display:block}.twk i{position:absolute;display:block;border-radius:50%;background:#e4eaf8;will-change:opacity;animation:twinkle var(--t, 5s) ease-in-out var(--d, 0s) infinite}@keyframes twinkle{0%,to{opacity:var(--o, .6)}50%{opacity:calc(var(--o, .6) * .2)}}.shell{position:fixed;left:0;right:0;top:var(--app-top, 0px);height:var(--app-h, 100%);z-index:1;overflow:hidden}.graph,.g-under,.g-canvas,.g-over{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.graph{pointer-events:auto;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.g-recenter{position:absolute;right:calc(var(--inset-right, 0px) + 12px + var(--sa-r));bottom:calc(var(--inset-bottom, 0px) + 12px);width:44px;height:44px;border-radius:50%;border:1px solid var(--hair-2);background:#0c1223eb;color:var(--ink-2);display:grid;place-items:center;pointer-events:auto;box-shadow:0 12px 30px -14px #000c;animation:recenter-in .28s cubic-bezier(.2,.8,.3,1) both}.g-recenter svg{width:19px;height:19px}@media(hover:hover){.g-recenter:hover{color:var(--ink);border-color:#f1eadb66}}@keyframes recenter-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}.g-canvas{display:block}.g-anchor{position:absolute;left:0;top:0;width:0;height:0;will-change:transform}.g-goalglow{position:absolute;left:0;top:0;width:240px;height:240px;border-radius:50%;transition:transform .9s cubic-bezier(.3,.7,.3,1),opacity .9s ease}.g-goalglow-in{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(closest-side,#f3b6763d,#f3b67613 45%,#f3b67600);will-change:opacity;animation:breathe 5s ease-in-out infinite}.g-goalglow.is-reached .g-goalglow-in{background:radial-gradient(closest-side,#ffe2be57,#f3b6761f 45%,#f3b67600)}@keyframes breathe{0%,to{opacity:1}50%{opacity:.7}}.g-halo{position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;border:1px solid var(--ivory);opacity:0;will-change:transform,opacity;animation:halo 3.2s cubic-bezier(.2,.6,.3,1) .4s infinite}@keyframes halo{0%{transform:translate(-50%,-50%) scale(.7);opacity:0}25%{opacity:.5}to{transform:translate(-50%,-50%) scale(2.1);opacity:0}}.g-node{position:absolute;left:0;top:0;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;will-change:transform;color:var(--ink-2)}button.g-node{pointer-events:auto;cursor:pointer}button.g-node:disabled{pointer-events:none;cursor:default}button.g-node:focus-visible{outline:none}.g-hit{position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;border:1px solid transparent;transition:border-color .2s,transform .2s}@media(hover:hover){button.g-node:hover .g-hit{border-color:var(--hair-2)}button.g-node:hover .g-word{color:var(--ink)}}button.g-node:focus-visible .g-hit{border:1.5px solid var(--ivory);transform:scale(1.15)}.g-label{position:absolute;white-space:nowrap;line-height:1.2;text-shadow:0 0 2px var(--bg),0 0 6px var(--bg),0 0 10px var(--bg)}button .g-label{cursor:pointer}.g-label.a-middle{transform:translate(-50%);text-align:center}.g-label.a-end{transform:translate(-100%);text-align:right}.g-label.a-start{text-align:left}.g-word{display:block;letter-spacing:-.01em;color:var(--ink-2);transition:color .2s}.g-cap{display:block;margin-top:3px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500}.g-node.is-start .g-word{color:var(--start)}.g-node.is-current .g-word{color:var(--ink);font-weight:600}.g-node.is-current .g-cap{color:#f1eadbd1}.g-label.is-goal .g-word,.g-node.is-goal .g-word{color:var(--goal);font-style:italic;font-weight:600}.g-label.is-goal .g-cap,.g-node.is-goal .g-cap{color:#f3b676d9}.g-node.is-lit .g-word{color:var(--ink);font-weight:600}.g-node.is-lit.is-start .g-word{color:var(--start)}.g-node.is-lit.is-goal .g-word{color:var(--goal)}.g-node.is-dim .g-label{opacity:.5}.g-label.is-crowded{opacity:0;transition:opacity .2s}button.g-node:hover .g-label.is-crowded,button.g-node:focus-visible .g-label.is-crowded{opacity:1}.g-node.is-fresh .g-label{animation:fadein .45s ease .5s both}@keyframes fadein{0%{opacity:0}to{opacity:1}}.g-annot-in{position:absolute;white-space:nowrap;line-height:1;text-shadow:0 0 3px var(--bg),0 0 8px var(--bg);transform:translate(-50%,-50%)}.g-annot-in.a-start{transform:translateY(-50%)}.g-annot-in.a-end{transform:translate(-100%,-50%)}.g-annot-in b{font-weight:500;letter-spacing:.16em;text-transform:uppercase}.g-annot-in i{font-style:italic;font-weight:300;color:var(--ink-2);margin-left:.6em}.g-annot.is-fresh .g-annot-in{animation:fadein .6s ease .9s both}.app{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;pointer-events:none;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"head" "stage" "tray"}.app>*{pointer-events:auto;min-width:0}.app>.stage{grid-area:stage;pointer-events:none;min-height:0}.hdr-wrap{grid-area:head}.hdr{display:flex;align-items:center;gap:4px;min-height:56px;padding:calc(var(--sa-t) + 6px) calc(var(--gutter) - 6px + var(--sa-r)) 6px calc(var(--gutter) + var(--sa-l))}.brand{display:flex;align-items:center;gap:9px;margin-right:auto;flex:none}.brand svg{flex:none}.wordmark{margin:0;font-weight:600;font-size:16.5px;letter-spacing:.02em;line-height:1;color:var(--ink)}.hdr-meta-wrap{position:relative;min-width:0}.hdr-meta{display:inline-flex;align-items:center;gap:0;min-height:44px;padding:0 8px;border-radius:999px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.hdr-meta b{font-weight:500;color:var(--ink-2)}.hdr-meta i{font-style:normal;color:var(--dim);margin:0 .5em}.hdr-meta .m-long{display:none}.hdr-meta .m-level{color:var(--ink-2)}.hdr-meta .m-chev{width:12px;height:12px;margin-left:5px;color:var(--muted);transition:transform .2s}.hdr-meta[aria-expanded=true] .m-chev{transform:rotate(180deg)}@media(hover:hover){.hdr-meta:hover{background:#ffffff0a}}@media(max-width:419px){.hdr-meta .m-short{display:none}}.menu{position:absolute;top:calc(100% + 4px);right:-60px;z-index:40;width:272px;padding:6px;border-radius:16px;border:1px solid var(--hair-2);background:var(--surface);box-shadow:0 24px 60px -20px #000c;animation:menu-in .18s ease both}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.menu-item{display:grid;grid-template-columns:1fr auto;grid-template-areas:"name state" "desc state";align-items:center;gap:2px 10px;width:100%;min-height:52px;padding:8px 12px;border-radius:11px;text-align:left}.menu-item[aria-checked=true]{background:#ffffff0b}@media(hover:hover){.menu-item:not(:disabled):hover{background:#ffffff0f}}.menu-item:disabled{opacity:.45}.mi-name{grid-area:name;font-size:13px;font-weight:600;color:var(--ink)}.mi-desc{grid-area:desc;font-size:11px;color:var(--muted)}.mi-state{grid-area:state;display:inline-flex;align-items:center;gap:4px;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.mi-state svg{width:12px;height:12px;color:#72cf9f}.hdr-score{display:none;font-size:12px;color:var(--ink-2);padding:0 6px;white-space:nowrap}.streak{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px 0 9px;margin:0 2px;border:1px solid var(--hair);border-radius:999px;font-size:12px;font-weight:500;color:var(--ink);white-space:nowrap}.streak.is-zero{color:var(--muted)}.streak small{font-size:9.5px;font-weight:400;letter-spacing:.12em;color:var(--muted);text-transform:uppercase}@media(max-width:459px){.hdr .streak small{display:none}.hdr .streak{padding:0 10px 0 9px}}.icon-btn{width:44px;height:44px;flex:none;border-radius:50%;display:grid;place-items:center;color:var(--ink-2)}.icon-btn svg{width:20px;height:20px}@media(hover:hover){.icon-btn:hover{background:#ffffff0b;color:var(--ink)}}.tray{grid-area:tray;position:relative;min-width:0;max-height:calc(var(--app-h, 100dvh) - 56px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding:16px calc(var(--gutter) + var(--sa-r)) max(calc(var(--sa-b) + 10px),16px) calc(var(--gutter) + var(--sa-l));background:linear-gradient(to bottom,#090d1ae6,#070a14f7);border-top:1px solid var(--hair);border-radius:var(--radius) var(--radius) 0 0;box-shadow:0 -1px #ffffff05 inset,0 -30px 60px -30px #0009}.tray::-webkit-scrollbar{display:none}.tray:before{content:"";position:absolute;left:50%;top:6px;width:36px;height:3px;margin-left:-18px;border-radius:3px;background:var(--hair-2)}.tray>*{max-width:560px;margin-left:auto;margin-right:auto}.kicker{margin:0;font-size:9.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.play,.result{display:flex;flex-direction:column;gap:12px;min-width:0}.puzzle{display:none}.route{display:flex;align-items:flex-end;gap:14px;margin:12px 0 0}.route .w{display:flex;flex-direction:column;gap:6px;min-width:0}.route .w span{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.route .w b{font-weight:300;font-size:25px;line-height:1;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route .w.start b{color:var(--ink)}.route .w.goal{align-items:flex-end}.route .w.goal b{font-weight:400;font-style:italic;color:var(--goal)}.route .arrow{flex:1;height:1px;margin-bottom:11px;min-width:30px;position:relative;background:linear-gradient(90deg,var(--hair-2),rgba(243,182,118,.5))}.route .arrow:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid rgba(243,182,118,.7);border-right:1px solid rgba(243,182,118,.7);transform:rotate(45deg)}.facts{display:flex;gap:18px;margin-top:14px}.stat{font-size:11px;letter-spacing:.04em;color:var(--muted);white-space:nowrap}.stat b{font-weight:600;color:var(--ink);font-size:12.5px}.stat b.over{color:var(--goal)}.dot{font-style:normal;color:var(--dim);margin:0 .4em;font-size:11px}.scorebar{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 4px 0 14px;border:1px solid var(--hair);border-radius:999px;background:#ffffff04;text-align:left}@media(hover:hover){.scorebar:hover{border-color:var(--hair-2)}}.sb-puzzle{display:flex;align-items:baseline;gap:6px;min-width:0;flex:1 1 auto;overflow:hidden;font-size:12px;white-space:nowrap}.sb-start{color:var(--start);overflow:hidden;text-overflow:ellipsis}.sb-arrow{color:var(--dim);flex:none}.sb-goal{color:var(--goal);font-style:italic;overflow:hidden;text-overflow:ellipsis}.sb-stats{flex:none;display:flex;align-items:baseline}.sb-legend{display:none;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-left:auto}.scorebar .chev{flex:none;width:34px;height:34px;display:grid;place-items:center;color:var(--muted);transition:transform .3s}.scorebar .chev svg{width:14px;height:14px}.scorebar[aria-expanded=true] .chev{transform:rotate(180deg)}@media(max-width:400px){.if-hints{display:none}}.stats-static{display:none}.legend{display:none;padding:2px 4px 0}.legend.is-open{display:block}.legend ul{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:2px 18px}.legend li{display:grid;grid-template-columns:28px auto 1fr auto;align-items:center;gap:8px;min-height:30px}.lg-name{font-size:12.5px;font-weight:500;color:var(--ink)}.lg-desc{font-size:10px;letter-spacing:.02em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lg-count{font-size:12px;font-weight:600;color:var(--ink);text-align:right;min-width:1ch}.legend li.is-zero .lg-count{color:var(--dim);font-weight:400}@media(max-width:400px){.legend ul{gap:2px 12px}.legend .lg-desc{display:none}.legend li{grid-template-columns:28px 1fr auto}}.entry{position:relative;display:flex;align-items:center;height:54px;padding:0 4px;border-radius:16px;border:1px solid var(--hair-2);background:#04070fb3;transition:border-color .25s,box-shadow .25s}.entry:focus-within{border-color:#f1eadb6b;box-shadow:0 0 0 4px #f1eadb0d}.entry.is-touch:focus-within{border-color:var(--hair-2);box-shadow:none}.entry.is-touch{border-color:#f1eadb42}.entry.is-miss,.entry.is-touch.is-miss{border-color:#f3b67680}.entry-btn{position:relative;width:44px;height:44px;flex:none;border-radius:12px;display:grid;place-items:center;color:var(--ink-2);transition:opacity .2s}.entry-btn svg{width:19px;height:19px}.entry-btn:disabled{opacity:.32}@media(hover:hover){.entry-btn:not(:disabled):hover{background:#ffffff0d;color:var(--ink)}}.entry-btn.is-hint{color:var(--goal)}.entry-btn.is-hint svg{width:18px;height:18px}.hint-badge{position:absolute;top:5px;right:2px;font-size:8.5px;font-weight:600;line-height:1;letter-spacing:.02em;color:var(--goal)}.entry-field{position:relative;flex:1;min-width:0;height:100%;display:flex;align-items:center}.entry input{flex:1;min-width:0;height:100%;border:0;background:transparent;padding:0 8px 0 6px;font-size:16px;letter-spacing:-.005em;caret-color:var(--ivory);-webkit-appearance:none;-moz-appearance:none;appearance:none}.entry input::-webkit-search-cancel-button,.entry input::-webkit-search-decoration{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:none}.entry input:focus-visible{outline:none}.entry input:disabled{opacity:.5}.entry-display{flex:1;min-width:0;height:100%;display:flex;align-items:center;padding:0 8px 0 6px;font-size:18px;letter-spacing:.01em;color:var(--ink);white-space:nowrap;overflow:hidden}.ed-text{overflow:hidden;text-overflow:ellipsis}.entry.is-busy .ed-text{opacity:.55}.ed-caret{flex:none;width:1.5px;height:21px;margin-left:2px;background:var(--ivory);animation:caret 1.05s steps(1) infinite}@keyframes caret{50%{opacity:0}}.entry-ghost{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;padding:0 6px;pointer-events:none;min-width:0}.eg-idle,.eg-hint{display:flex;flex-direction:column;justify-content:center;gap:4px;min-width:0;max-width:100%}.eg-kick{display:block;font-size:9px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.1}.eg-kick b{font-weight:600;color:var(--ink-2);text-transform:none;letter-spacing:.02em}.eg-main{display:flex;align-items:center;gap:7px;min-width:0;font-size:14.5px;line-height:1.15;color:var(--dim);white-space:nowrap}.eg-main em{font-style:italic;font-weight:400;color:var(--start);overflow:hidden;text-overflow:ellipsis}.entry-field{container-type:inline-size}.eg-wide{display:none}@container (min-width: 260px){.eg-wide{display:inline}}.eg-hint{pointer-events:auto;text-align:left;height:44px;padding:0 12px 0 8px;margin-left:-2px;border-radius:11px;overflow:hidden;border:1px dashed rgba(243,182,118,.42);background:#f3b6760d;animation:fadein .3s ease both}.eg-hint .eg-main{color:var(--ink);font-size:14px}.eg-word{overflow:hidden;text-overflow:ellipsis;font-weight:500}.send{width:44px;height:44px;margin-left:2px;border-radius:12px;background:var(--ivory);color:#0b1020;display:grid;place-items:center;flex:none;transition:opacity .2s}.send svg{width:18px;height:18px}.send:disabled{background:#f1eadb1a;color:var(--muted)}.dialog:focus-visible{outline:none}.entry.is-shake{animation:shake .42s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{15%,85%{transform:translate(-1.5px)}30%,70%{transform:translate(3px)}45%,55%{transform:translate(-4px)}}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.osk{--key-h: 50px;display:flex;flex-direction:column;margin:-2px -3px 0;touch-action:manipulation;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.osk-row{display:flex;justify-content:center}.osk-key{flex:0 0 10%;min-width:0;height:var(--key-h);padding:3px 2.5px;display:block}.osk-key.is-wide{flex:1 1 0}.osk-cap{position:relative;width:100%;height:100%;display:grid;place-items:center;border-radius:8px;border:1px solid var(--hair);background:#ffffff0d;font-size:17px;font-weight:500;line-height:1;color:var(--ink);transition:transform .14s ease-out}.osk-cap:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;background:#f1eadb33;opacity:0;transition:opacity .18s ease-out}.osk-key.is-down .osk-cap{transform:translateY(1px) scale(.93);transition:none}.osk-key.is-down .osk-cap:after{opacity:1;transition:none}.osk-cap svg{width:20px;height:20px}.osk-key.is-wide .osk-cap{font-size:11px;color:var(--ink-2);background:#ffffff13}.osk-key.is-enter .osk-cap{color:var(--ivory);border-color:#f1eadb4d;background:#f1eadb1a}.osk-key:disabled .osk-cap{opacity:.4}@media(max-height:720px)and (orientation:portrait){.osk{--key-h: 46px}}@media(min-width:600px)and (orientation:portrait){.osk{--key-h: 56px}.osk-cap{font-size:19px}}.last{display:none}.solved-bar{position:relative;display:flex;align-items:center;gap:10px;min-height:48px;cursor:pointer}.sheet-grip{position:absolute;left:50%;top:-11px;width:36px;height:4px;margin-left:-18px;border-radius:4px;background:var(--hair-2)}.sb-open svg{width:15px;height:15px}.tray.is-bar,.tray.is-sheet.is-still,.sheet-grab{touch-action:none}.tray.is-sheet:before,.tray.is-bar:before{display:none}.sheet-grab{display:flex;justify-content:center;margin:-16px -16px -10px;height:28px}.sheet-handle{width:88px;height:28px;display:grid;place-items:center;border-radius:14px}.sheet-handle span{display:block;width:36px;height:4px;border-radius:4px;background:var(--hair-2);transition:background-color .2s}@media(hover:hover){.sheet-handle:hover span{background:#f1eadb73}}.solved-bar p{margin:0;font-size:12.5px;color:var(--ink-2);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:419px){.solved-bar .sb-hints{display:none}}.solved-bar b{color:var(--ink);font-weight:600}.solved-bar .delta{color:var(--goal);font-weight:600}.result{gap:12px;animation:fadein .45s ease both}.r-title{margin:0;font-weight:300;font-size:21px;line-height:1.15;letter-spacing:-.02em;overflow-wrap:anywhere}.r-title:focus{outline:none}.r-title em{font-weight:400;color:var(--goal)}.r-score{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 10px;margin:0}.r-score .big{font-size:36px;line-height:1;font-weight:300;letter-spacing:-.04em}.r-score .rest{font-size:12.5px;letter-spacing:.04em;color:var(--ink-2)}.r-score .rest>i:first-child{display:none}.r-score .rest:before{content:"·";color:var(--dim);margin:0 .4em 0 0}.r-score .rest i{font-style:normal;color:var(--dim);margin:0 .4em}.r-score .delta{color:var(--ink);font-weight:600}.r-score .delta.is-over{color:var(--goal)}.r-score .delta.is-under{color:#72cf9f}.r-route{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:13px;color:var(--ink-2)}.rr-step{display:inline-flex;align-items:center;gap:8px}.r-route .s{color:var(--start)}.r-route .g{color:var(--goal);font-style:italic}.r-sec{display:flex;flex-direction:column;gap:10px}.lbl-bd{display:none}.bar{display:flex;height:5px;border-radius:5px;overflow:hidden;gap:2px}.bar span{display:block;height:100%}.bd{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px}.bd li{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-2);white-space:nowrap;min-width:0}.bd li b{margin-left:auto;font-weight:600;font-size:12px;color:var(--ink)}.bd li.zero{opacity:.42}.bd li .trk{display:none}.itin{display:none;list-style:none;margin:0;padding:0}.itin li{position:relative;display:grid;grid-template-columns:18px 1fr;-moz-column-gap:12px;column-gap:12px;padding:0 0 12px}.itin li:last-child{padding-bottom:0}.itin .gl{grid-row:1 / 3;display:flex;flex-direction:column;align-items:center;gap:4px;padding-top:3px}.itin .gl i{display:block;flex:1;width:1px;min-height:14px;background:currentColor;opacity:.35}.itin .pr{font-size:13.5px;color:var(--ink)}.itin .pr span{color:var(--dim);margin:0 .4em}.itin .pr em{color:var(--goal)}.itin .why{font-size:11.5px;font-style:italic;font-weight:300;color:var(--muted);margin-top:2px}.itin .why b{font-style:normal;font-weight:500;font-size:9px;letter-spacing:.16em;text-transform:uppercase;margin-right:8px}.r-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.r-row .streak{margin:0}.countdown{margin:0;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.countdown time{color:var(--ink);font-weight:500;letter-spacing:.06em}.r-avg{margin:-4px 0 0;font-size:10.5px;color:var(--muted)}.r-kick-compact{display:none}.r-kick-compact time{color:var(--ink);letter-spacing:.08em}.r-actions{display:flex;gap:10px}.btn{flex:1;min-height:48px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:13.5px;font-weight:500;padding:0 16px;white-space:nowrap;transition:background-color .2s,border-color .2s,opacity .2s}.btn svg{flex:none;width:16px;height:16px}.btn.ghost{padding:0 12px;border:1px solid var(--hair-2);background:#ffffff05;color:var(--ink)}@media(hover:hover){.btn.ghost:not(:disabled):hover{background:#ffffff0d}}.btn.solid{border:0;background:var(--ivory);color:#0b1020;font-weight:600;flex:0 0 auto;min-width:112px}.btn.sm{min-height:44px;min-width:0;padding:0 16px;font-size:12.5px;border-radius:12px}.btn:disabled{opacity:.6}.btn .melody{width:34px;height:16px}.r-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 10px;margin:-2px 0 -4px}.btn.r-view{flex:0 0 auto;min-height:44px;font-weight:500;color:var(--ink-2)}.btn.r-view svg{width:15px;height:15px}.link-btn{min-height:44px;padding:0 7px;font-size:10.5px;letter-spacing:.03em;color:var(--muted);text-decoration:underline;text-decoration-color:var(--hair-2);text-underline-offset:4px}.btn.challenge{flex:none;width:100%;min-height:56px;justify-content:flex-start;gap:14px;padding:0 16px;border:1px solid color-mix(in srgb,var(--goal) 45%,transparent);background:color-mix(in srgb,var(--goal) 7%,transparent);color:var(--ink);text-align:left}@media(hover:hover){.btn.challenge:hover{background:color-mix(in srgb,var(--goal) 13%,transparent);border-color:color-mix(in srgb,var(--goal) 70%,transparent)}}.ch-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.ch-text small{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--goal)}.ch-text span{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis}.ch-types{display:inline-flex;gap:6px;flex:none;opacity:.85}.ch-arrow{font-size:16px;color:var(--goal)}.lbl-short{display:none}@media(hover:hover){.link-btn:hover{color:var(--ink)}}@media(max-width:440px){.btn .melody{display:none}.btn.solid{min-width:0;padding:0 18px}.btn.ghost{font-size:12.5px}}@media(max-width:370px){.bd{gap:7px 10px}.bd li{font-size:11px}}@media(max-height:740px)and (orientation:portrait){.result{gap:10px}.r-score .big{font-size:32px}.r-title{font-size:19px}.result .bar{display:none}}@media(min-width:1024px),(orientation:landscape)and (max-height:540px)and (min-width:600px){.app{grid-template-columns:minmax(0,1fr) calc(var(--panel-w) + var(--sa-r));grid-template-rows:auto minmax(0,1fr);grid-template-areas:"head tray" "stage tray"}.tray{max-height:none;margin:12px calc(12px + var(--sa-r)) max(12px,var(--sa-b)) 0;border:1px solid var(--hair);border-radius:var(--radius);padding:18px;background:#0a0e1be6;box-shadow:0 40px 80px -40px #000000b3;display:flex;flex-direction:column}.tray:before{display:none}.tray>*{max-width:none;margin:0}.hdr{padding-right:8px}.play,.result,.solved-bar{flex:1}.solved-bar{flex:0 0 auto}.menu{right:auto;left:0}}@media(orientation:landscape)and (max-height:540px){:root{--panel-w: 340px}.hdr{min-height:48px;padding-top:calc(var(--sa-t) + 2px);padding-bottom:2px}.tray{gap:10px;padding:12px 14px}.play,.result{gap:9px}.entry{height:50px}.osk{--key-h: 44px}.osk-cap{font-size:15px;border-radius:7px}.r-title{display:none}.bd{gap:5px 10px}.btn{min-height:44px}.scorebar{order:5;margin-top:auto;padding-left:16px}.scorebar .sb-puzzle{display:none}.scorebar .sb-legend{display:inline}.legend{order:4}.legend ul{grid-template-columns:1fr 1fr}.legend .lg-desc{display:none}.legend li{grid-template-columns:28px 1fr auto}.result .bar{display:none}.r-actions{flex-direction:column;gap:8px}.r-actions .btn.solid{width:100%}.btn.challenge{min-height:44px}.ch-text small,.ch-types{display:none}.r-actions{flex-direction:row}.r-actions .btn.solid{width:auto}.r-actions .btn .melody,.r-actions .lbl-long{display:none}.r-actions .lbl-short{display:inline}.last{order:4;display:flex;flex-direction:column;gap:6px}.last-link{margin:0;font-size:12px;color:var(--ink-2);display:flex;align-items:center;flex-wrap:wrap;gap:3px 7px}.last-link em{color:var(--muted);font-weight:300}.last-link.is-empty{display:block;color:var(--muted)}.r-row,.r-kick{display:none}.r-kick-compact{display:block}.r-save{display:none}.r-score{flex-direction:column;align-items:flex-start;gap:4px}.r-score .big{font-size:26px}.r-score .rest{font-size:12px}.r-score .rest:before{display:none}.r-route{font-size:11.5px;gap:3px 6px}.rr-step{gap:6px}.r-links{margin:-6px 0 -8px}.r-avg{display:none}}@media(min-width:1024px)and (min-height:640px){:root{--panel-w: 400px;--gutter: 28px}.tray{padding:26px 26px 22px;margin:14px calc(14px + var(--sa-r)) max(14px,var(--sa-b)) 0}.play{gap:16px}.puzzle{display:block;padding-bottom:20px;border-bottom:1px solid var(--hair)}.hdr-meta .m-long{display:inline}.hdr-meta .m-short{display:none}.wordmark{font-size:18px}.hdr{min-height:64px}.scorebar{display:none}.stats-static{display:flex;align-items:baseline;order:1}.stats-static .stat b{font-size:14px}.stats-static .if-hints{display:inline}.entry{order:2}.osk{order:3}.last{order:5;display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--hair)}.last-link{margin:0;font-size:13.5px;color:var(--ink-2);display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}.last-link em{color:var(--muted);font-weight:300;font-style:italic}.last-link.is-empty{font-size:12px;color:var(--muted);display:block}.last-link.is-empty span{color:var(--start)}.legend{order:6;display:block;margin-top:auto;padding:14px 0 0;border-top:1px solid var(--hair)}.legend ul{grid-template-columns:1fr;gap:2px;margin-top:6px}.legend li{grid-template-columns:30px 64px 1fr auto}.legend .lg-desc{display:block}.result{gap:18px;flex:1}.r-title{font-size:26px;display:block}.r-score .big{font-size:48px}.r-route{display:none}.itin{display:block;padding-top:18px;border-top:1px solid var(--hair)}.r-sec{padding-top:18px;border-top:1px solid var(--hair)}.lbl-bd{display:block}.result .bar{display:none}.bd{grid-template-columns:1fr;gap:10px}.bd li{font-size:13px;display:grid;grid-template-columns:12px 64px 1fr 18px;gap:10px}.bd li .trk{display:block;height:3px;border-radius:3px;background:#bcc8e814;overflow:hidden}.bd li .trk i{display:block;height:100%;border-radius:3px}.bd li b{margin-left:0;text-align:right}.r-actions{margin-top:auto;flex-direction:column}.btn{min-height:52px;font-size:14px}.r-actions .btn.solid{min-width:0;width:100%}.r-score{flex-direction:column;align-items:flex-start;gap:8px}.r-score .rest:before{display:none}}@media(min-width:1024px)and (min-height:640px)and (max-height:860px){.result{gap:14px}.r-title{font-size:22px}.r-score .big{font-size:40px}.itin{display:none}.r-route{display:flex}.r-sec{padding-top:14px}.bd{grid-template-columns:1fr 1fr;gap:8px 18px}.bd li{display:flex;font-size:12.5px}.bd li .trk{display:none}.bd li b{margin-left:auto}.btn{min-height:48px}.play{gap:14px}.puzzle{padding-bottom:16px}}@media(min-width:1024px)and (max-width:1279px){.hdr-meta .m-long{display:none}.hdr-meta .m-short{display:inline}}@media(orientation:landscape)and (max-height:540px)and (max-width:760px){:root{--panel-w: 300px}.hdr-meta .m-short,.hdr .streak small{display:none}.hdr .streak{padding:0 10px 0 9px}}.kb .hdr{min-height:44px;padding-top:calc(var(--sa-t) + 2px);padding-bottom:2px}.kb .hdr-meta-wrap,.kb .hdr .streak{display:none}.kb .hdr-score{display:inline}.kb .scorebar,.kb .legend,.kb .puzzle,.kb .last{display:none!important}.kb .tray{padding-top:12px;padding-bottom:10px}.kb .play{gap:10px}.kb .tray:before{display:none}@media(min-width:1024px),(orientation:landscape)and (max-height:540px)and (min-width:600px){.play.is-touch .last{display:none}.play.is-touch .entry{order:8;margin-top:auto}.play.is-touch .osk{order:9}}@media(orientation:landscape)and (max-height:540px)and (min-width:600px){.is-touch{--panel-w: clamp(300px, 50vw, 420px)}.play.is-touch{gap:8px}.play.is-touch .scorebar{order:0;margin-top:0}.play.is-touch .legend{order:1}.play.is-touch .last{order:2;display:flex;padding:4px 6px 0}.play.is-touch .legend.is-open~.last{display:none}.is-touch .tray{padding:10px}}@media(min-width:1024px)and (min-height:640px){.play.is-touch{gap:14px}.play.is-touch .osk{--key-h: 52px}.play.is-touch .legend{margin-top:0}}.pill-wrap{position:absolute;z-index:2;top:calc(var(--inset-top, 56px) + 4px);left:calc((100% - var(--inset-right, 0px)) / 2);width:min(520px,calc(100% - var(--inset-right, 0px) - 28px));transform:translate(-50%);display:grid;pointer-events:none}.pill{grid-area:1 / 1;justify-self:center;max-width:100%;display:flex;align-items:baseline;gap:9px;padding:7px 14px 8px 12px;border-radius:14px;border:1px solid var(--hair-2);background:#0b1020db;box-shadow:0 18px 40px -20px #000000d9;font-size:12px;line-height:1.4;color:var(--ink-2);pointer-events:auto;cursor:pointer;animation:pill-in .34s cubic-bezier(.2,.8,.3,1) both}.pill.is-leaving{animation:pill-out .24s ease-in both;pointer-events:none}.pill.is-miss{border-color:#f3b67657}.pill.is-goal{border-color:#f3b67680}.pill-glyph{flex:none;transform:translateY(1px)}.pill-dot{flex:none;width:5px;height:5px;border-radius:50%;background:var(--dim);transform:translateY(-2px)}.pill.is-miss .pill-dot{background:var(--goal)}.pill-body{min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}.pill-text{font-style:italic;font-weight:300;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.pill.is-miss .pill-text{color:var(--miss)}.pill-type{font-style:normal;font-weight:500;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;margin-right:.7em}.pill-dispute{position:relative;padding:0;font-size:11px;color:var(--ink);-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:3px;white-space:nowrap}.pill-dispute:after{content:"";position:absolute;top:-14px;right:-8px;bottom:-14px;left:-8px}@media(hover:hover){.pill-dispute:hover{color:#fff}}@keyframes pill-in{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}@keyframes pill-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)}}.toast{position:absolute;z-index:20;left:calc((100% - var(--inset-right, 0px)) / 2);bottom:calc(var(--inset-bottom, 0px) + 14px);display:flex;align-items:center;gap:10px;max-width:min(460px,calc(100% - 32px));padding:6px 6px 6px 16px;border-radius:999px;border:1px solid var(--hair-2);background:#0c1223f7;box-shadow:0 20px 40px -16px #000000b3;transform:translate(-50%);animation:toast-in .3s cubic-bezier(.2,.8,.3,1) both}.toast p{margin:0;font-size:12px;font-style:italic;font-weight:300;color:var(--ink-2)}.toast-dot{flex:none;width:5px;height:5px;border-radius:50%;background:var(--goal)}.toast.is-success .toast-dot{background:#72cf9f}.toast.is-info .toast-dot{background:var(--ivory)}.toast-x{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--muted);flex:none}.toast-x svg{width:14px;height:14px}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:max(16px,var(--sa-t)) max(16px,var(--sa-r)) max(16px,var(--sa-b)) max(16px,var(--sa-l));animation:fadein .25s ease both}.modal-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#03050cbd}.dialog{position:relative;width:min(440px,100%);max-height:calc(var(--app-h, 100dvh) - 32px);overflow-y:auto;overscroll-behavior:contain;padding:18px 22px 20px;border-radius:var(--radius);border:1px solid var(--hair-2);background:var(--surface);box-shadow:0 40px 100px -30px #000000e6;display:flex;flex-direction:column;gap:14px}.dlg-top{display:flex;align-items:center;justify-content:space-between;margin:-4px -12px -8px 0}.dlg-title{margin:0;font-size:20px;font-weight:400;letter-spacing:-.02em;line-height:1.2}.dlg-art{margin:0 -8px}.tt-art{display:block;width:100%;height:auto;overflow:visible}.tt-word{font-family:var(--mono);font-size:11px;fill:var(--ink-2)}.tt-word.is-goal{fill:var(--goal);font-style:italic;font-weight:600}.tt-cap{font-family:var(--mono);font-size:6.5px;letter-spacing:.16em;text-transform:uppercase;fill:var(--muted);font-weight:500}.dlg-body{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.55;color:var(--ink)}.dlg-body p{margin:0}.dlg-body b{font-weight:600}.t-muted{color:var(--ink-2)}.t-links{font-size:11.5px;color:var(--muted)}.t-links a{color:var(--ink-2);text-underline-offset:3px;text-decoration-color:var(--hair-2)}.t-start{color:var(--start)}.t-goal{color:var(--goal);font-style:italic}.t-types{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.t-types li{display:grid;grid-template-columns:26px 12px 60px 1fr;align-items:center;gap:10px;min-height:30px}.t-types li.is-off{opacity:.4}.tt-name{font-weight:500;font-size:13px}.tt-desc{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dlg-nav{display:flex;align-items:center;gap:10px;margin-top:4px}.dots{display:flex;gap:6px;margin-right:auto}.dots span{width:5px;height:5px;border-radius:3px;background:var(--hair-2);transition:width .25s,background-color .25s}.dots span.on{width:16px;background:var(--ivory)}.dlg-nav .btn{flex:0 0 auto;min-width:0;min-height:44px;padding:0 18px}@media(max-height:600px){.dialog{gap:10px;padding:14px 18px 16px}.tt-art{max-height:96px}}@media(max-height:540px)and (orientation:landscape){.dialog{width:min(600px,100%);gap:8px;padding:12px 20px 14px}.dlg-title{font-size:18px}.tt-art{max-height:78px}.dlg-body{font-size:12.5px;line-height:1.5}.t-types{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px}.t-types li{grid-template-columns:26px 12px 54px 1fr}.dlg-nav{margin-top:0}}.is-entering .hdr-wrap{animation:app-drop .5s cubic-bezier(.2,.7,.2,1) .08s backwards}.is-entering .tray{animation:app-rise .56s cubic-bezier(.2,.7,.2,1) .16s backwards}@keyframes app-rise{0%{opacity:0;transform:translateY(12px)}}@keyframes app-drop{0%{opacity:0;transform:translateY(-6px)}}.graph,.tray>*{transition:opacity .2s ease}.is-switching .graph,.is-switching .tray>*{opacity:.35;pointer-events:none;transition-delay:.08s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.g-halo{display:none}}@media(max-width:359px),(orientation:landscape)and (max-height:540px)and (max-width:760px){.wordmark{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
