.fg-page{max-width:880px;margin:0 auto}.fg-head{text-align:center;margin-bottom:1.25rem}.fg-tagline{color:var(--accent-primary);font-weight:600;margin:0 0 .5rem}.fg-intro{color:var(--text-secondary);margin:0 auto;max-width:62ch}.fg-crumb{margin:0 0 .5rem;font-size:.85rem}.fg-crumb-link{color:var(--text-secondary);text-decoration:none}.fg-crumb-link:focus-visible,.fg-crumb-link:hover{color:var(--accent-primary);text-decoration:underline}@media (max-width:640px){.fg-head{margin-bottom:.75rem}.fg-head .article-title{font-size:1.65rem;margin-bottom:.35rem}.fg-tagline{font-size:.95rem;margin-bottom:.35rem}.fg-intro{font-size:.9rem;line-height:1.45}.fg-shell{gap:.75rem}.fg-stats{gap:.35rem}.fg-chip{font-size:.72rem;padding:.2rem .45rem}}.devfun-section-title{font-size:1.15rem;margin:2rem 0 .4rem;color:var(--text-primary)}.devfun-section-intro{color:var(--text-secondary);font-size:.92rem;margin:0 0 1rem;line-height:1.55}.arcade-shelf-link{margin-top:1.5rem}.devfun-group{margin:0 0 1.25rem}.devfun-group-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin:0 0 .6rem;font-family:var(--font-mono)}.fg-glyph--prefix-of-the-day{--glyph-hue:45}.fg-glyph--five-clues{--glyph-hue:265}.fg-glyph--access-points{--glyph-hue:210}.fg-glyph--bit-balance{--glyph-hue:240}.fg-glyph--patch-path{--glyph-hue:25}.fg-glyph--spanning-tree{--glyph-hue:110}.fg-glyph--log-detective{--glyph-hue:190}.fg-glyph--phish-or-legit{--glyph-hue:330}.fg-glyph--whack-a-bug{--glyph-hue:75}.fg-glyph--aggregate{--glyph-hue:170}.fg-glyph--first-match{--glyph-hue:295}.fg-glyph--exit-the-editor{--glyph-hue:145}.fg-glyph--packet-stack{--glyph-hue:315}.fg-glyph--incident-commander{--glyph-hue:0}.fg-glyph--mega-brain{--glyph-hue:285}.fg-glyph--meeting-bingo{--glyph-hue:55}.fg-glyph--boss-screens{--glyph-hue:220}.fg-glyph--cat-distribution{--glyph-hue:30}.fg-glyph--importance-meter{--glyph-hue:15}.fg-glyph--arcade{--glyph-hue:92}[class*=fg-glyph--]{--glyph-accent:color-mix(in oklab,hsl(var(--glyph-hue,200) 85% 55%) 76%,var(--text-primary))}.fg-glyph{color:var(--glyph-accent,var(--accent-primary));flex:none}.fg-glyph-card{width:34px;height:34px}.fg-glyph-pill{width:18px;height:18px}.fg-card-tile{display:inline-grid;place-items:center;width:48px;height:48px;flex:none;border-radius:12px;background:color-mix(in oklab,var(--glyph-accent) 16%,var(--surface-base));border:1px solid color-mix(in oklab,var(--glyph-accent) 38%,transparent);transition:transform .2s ease}.devfun-card.fg-card-art{background:radial-gradient(130% 100% at 0 0,color-mix(in oklab,var(--glyph-accent) 13%,transparent),transparent 62%),var(--surface-base)}.devfun-card.fg-card-art:focus-visible,.devfun-card.fg-card-art:hover{border-color:var(--glyph-accent)}.devfun-card.fg-card-art:focus-visible .fg-card-tile,.devfun-card.fg-card-art:hover .fg-card-tile{transform:rotate(-5deg) scale(1.07)}@media (prefers-reduced-motion:reduce){.devfun-card.fg-card-art:focus-visible .fg-card-tile,.devfun-card.fg-card-art:hover .fg-card-tile{transform:none}}.fg-more-link[class*=fg-glyph--]:focus-visible,.fg-more-link[class*=fg-glyph--]:hover{border-color:var(--glyph-accent)}.devfun-games-list{display:grid;grid-template-columns:1fr;grid-gap:.75rem;gap:.75rem}@media (min-width:640px){.devfun-games-list{grid-template-columns:1fr 1fr}}.devfun-jump{display:flex;flex-wrap:wrap;gap:.5rem;margin:.25rem 0 .5rem}.devfun-jump-link{display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-secondary);text-decoration:none;font-weight:600}.devfun-jump-link:focus-visible,.devfun-jump-link:hover{color:var(--accent-primary);border-color:var(--accent-primary)}.devfun-today{margin:-.5rem 0 1rem;font-size:.85rem;color:var(--color-success)}.devfun-status{display:inline-flex;gap:.3rem;flex-wrap:wrap}.devfun-status-chip{font-size:.7rem;padding:.1rem .45rem;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-secondary)}.devfun-status-done{color:var(--color-success);border-color:var(--color-success)}.fg-shell{display:flex;flex-direction:column;gap:1rem}.fg-stats{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:center}.fg-chip{font-family:var(--font-mono);font-size:.8rem;padding:.25rem .6rem;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-secondary);background:var(--surface-elevated);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-chip-strong{color:var(--accent-primary);border-color:var(--accent-primary)}.fg-rules{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.9rem 1.1rem;color:var(--text-secondary);line-height:1.55}.fg-origins{margin:2.5rem auto 0;padding-top:1.5rem;border-top:1px solid var(--border-subtle);max-width:46rem}.fg-origins-title{margin:0 0 .75rem;font-size:1.25rem;text-wrap:balance}.fg-origins-text{margin:0 0 .8rem;color:var(--text-secondary);line-height:1.65}.fg-origins-sub{margin:1.25rem 0 .4rem;font-size:.95rem}.fg-origins-entries{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:0;padding:0;list-style:none}.fg-origins-sources{margin:0;padding-left:1.25rem;font-size:.85rem;line-height:1.5;color:var(--text-secondary)}.fg-origins-sources li{margin-bottom:.3rem;overflow-wrap:anywhere}.fg-origins a{color:var(--accent-primary);text-decoration:underline;text-underline-offset:3px}.fg-origins a:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:2px}.fg-origins-entries a{display:inline-block;padding:.3rem 0}.fg-rules ol,.fg-rules p,.fg-rules ul{margin:0 0 .5rem}.fg-rules ol,.fg-rules ul{padding-left:1.3rem}.fg-rules>:last-child{margin-bottom:0}.fg-board-wrap{display:flex;flex-direction:column;align-items:center;gap:.75rem;max-width:100%}.fg-board-wrap.fg-flash-won{--fg-flash:var(--color-success)}.fg-board-wrap.fg-flash-lost{--fg-flash:var(--color-danger)}.fg-flash-lost,.fg-flash-won{border-radius:var(--radius-md);animation:fg-flash 1.4s ease-out,fg-shake .44s ease-in-out}@keyframes fg-shake{0%,to{transform:translateX(0)}12.5%{transform:translateX(-3px)}37.5%{transform:translateX(3px)}62.5%{transform:translateX(-3px)}87.5%{transform:translateX(3px)}}@keyframes fg-flash{0%{box-shadow:0 0 0 0 transparent;background-color:transparent}12%{box-shadow:0 0 0 4px var(--fg-flash);background-color:color-mix(in srgb,var(--fg-flash) 16%,transparent)}40%{box-shadow:0 0 0 4px color-mix(in srgb,var(--fg-flash) 45%,transparent);background-color:color-mix(in srgb,var(--fg-flash) 5%,transparent)}58%{box-shadow:0 0 0 4px var(--fg-flash);background-color:color-mix(in srgb,var(--fg-flash) 16%,transparent)}to{box-shadow:0 0 0 4px transparent;background-color:transparent}}@media (prefers-reduced-motion:reduce){.fg-flash-lost,.fg-flash-won{animation:none;box-shadow:0 0 0 4px var(--fg-flash)}}.fg-result{border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:1rem 1.2rem;text-align:center;background:var(--surface-elevated)}.fg-result-won{border-color:var(--color-success)}.fg-result-lost{border-color:var(--color-warning)}.fg-result-headline{font-size:1.25rem;font-weight:700;margin:0 0 .25rem;color:var(--text-primary)}.fg-result-detail{margin:0 0 .75rem;color:var(--text-secondary)}.fg-result-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.fg-result-next{margin:.75rem 0 0;font-family:var(--font-mono);font-size:.85rem;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-newday{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:center;justify-content:center;border:1px solid var(--accent-primary);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.6rem .9rem;color:var(--text-primary);text-align:center}.fg-earlier{display:flex;flex-direction:column;gap:.75rem}.fg-earlier-note{margin:0;font-size:.85rem}.fg-earlier-month{display:flex;flex-direction:column;gap:.4rem}.fg-earlier-month-title{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-weight:600}.fg-earlier-days{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.fg-earlier-day{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;padding:0 .7rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-base);color:var(--text-primary);text-decoration:none;font-family:var(--font-mono);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-earlier-day:hover{border-color:var(--accent-primary)}.fg-earlier-day:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-earlier-onday{border-width:2px;border-style:solid}.fg-earlier-later{border-width:2px;border-style:dashed}.fg-earlier-day[aria-current=page]{border-color:var(--accent-primary);font-weight:700}.fg-earlier-n{font-weight:700}.fg-earlier-date{color:var(--text-secondary)}.fg-earlier-mark{font-weight:800}.fg-earlier-solved{color:var(--color-success)}.fg-earlier-unsolved{color:var(--color-danger)}.fg-earlier-banner{display:flex;flex-direction:column;align-items:center;gap:.35rem;text-align:center;border:1px solid var(--accent-primary);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.7rem .9rem}.fg-earlier-banner-title{margin:0;font-weight:700;color:var(--text-primary)}.fg-earlier-banner-note{margin:0;font-size:.85rem;color:var(--text-secondary)}.fg-earlier-nav{display:flex;flex-wrap:wrap;gap:.4rem .6rem;justify-content:center}.fg-earlier-nav-link{display:inline-flex;align-items:center;min-height:44px;padding:0 .8rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-base);color:var(--text-primary);font-weight:600;text-decoration:none}.fg-earlier-nav-link:hover{border-color:var(--accent-primary)}.fg-earlier-nav-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-earlier-nav-today{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--canvas-primary)}.fg-earlier-refused{margin:0;text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-md);padding:.5rem .8rem;color:var(--text-secondary);font-size:.9rem}.fg-footer{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;align-items:center}.fg-more{padding-top:1rem;border-top:1px solid var(--border-subtle);text-align:center}.fg-more-title{margin:0 0 .6rem;font-size:1rem;font-weight:700;color:var(--text-primary)}.fg-more-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center}.fg-more-link{display:inline-flex;align-items:center;gap:.35rem;min-height:44px;padding:0 .85rem;border:1px solid var(--border-subtle);border-radius:999px;background:var(--surface-elevated);color:var(--text-primary);font-size:.88rem;text-decoration:none}.fg-more-link:focus-visible,.fg-more-link:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.fg-more-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-more-mark{font-weight:700;line-height:1}.fg-more-solved{color:var(--color-success)}.fg-more-played{color:var(--text-secondary)}.fg-more-all{margin:.7rem 0 0;font-size:.85rem}.fg-more-all-link{color:var(--text-secondary);text-underline-offset:.2em}.fg-more-all-link:focus-visible,.fg-more-all-link:hover{color:var(--accent-primary)}.fg-button{min-height:44px;padding:.5rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-base);color:var(--text-primary);font:inherit;font-weight:600;cursor:pointer}.fg-button:hover{border-color:var(--accent-primary)}.fg-button:focus-visible,.fg-cell:focus-visible,.fg-link-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-button-primary{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--canvas-primary)}.fg-button:disabled{opacity:.5;cursor:not-allowed}.fg-buttons{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.fg-link-button{background:none;border:none;padding:.35rem .25rem;min-height:44px;color:var(--accent-primary);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}a.fg-link-button{display:inline-flex;align-items:center}.fg-muted{color:var(--text-secondary)}.fg-small{font-size:.8rem}.fg-mono{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-input{min-height:44px;padding:.4rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-base);color:var(--text-primary);font-family:var(--font-mono);font-size:1rem;max-width:100%}.fg-input:focus-visible{outline:2px solid var(--accent-primary);outline-offset:1px}.fg-label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.fg-readout{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-hud{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;align-items:baseline}.fg-grid{display:grid;grid-template-columns:repeat(var(--fg-cols,6),minmax(0,1fr));grid-gap:3px;gap:3px;width:min(100%,calc(var(--fg-cols, 6) * 3.4rem));aspect-ratio:1/1;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fg-cell{display:flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--text-primary);font:inherit;font-family:var(--font-mono);font-weight:700;font-size:clamp(.8rem,3.5vw,1.15rem);cursor:pointer;padding:0;min-width:0;min-height:0;aspect-ratio:1/1}.fg-cell-given{cursor:default;background:var(--surface-base);color:var(--accent-primary)}.fg-cell-error{border-color:var(--color-danger);color:var(--color-danger)}.fg-cell-done{border-color:var(--color-success)}.fg-start{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1rem;box-sizing:border-box;text-align:center;border:2px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-elevated);cursor:pointer}.fg-start:hover{border-color:var(--accent-primary)}.fg-start-button{min-width:9rem;min-height:48px;font-size:1.05rem}.fg-start-note{margin:0;max-width:22rem;text-wrap:balance}.fg-ld-start{width:100%;min-height:min(60vh,22rem)}.fg-ic-start{width:100%;min-height:min(60vh,24rem)}@keyframes fg-pop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.fg-pop{animation:fg-pop .18s ease-out}@media (prefers-reduced-motion:reduce){.fg-pop{animation:none}}.fg-ap-board{gap:0;touch-action:manipulation;-webkit-touch-callout:none;border:2px solid var(--text-primary);border-radius:var(--radius-sm);overflow:hidden;background:var(--border-subtle)}.fg-ap-loading{display:flex;align-items:center;justify-content:center;border-style:dashed;border-color:var(--border-subtle)}.fg-ap-info,.fg-ap-loading-text{margin:0}.fg-ap-cell{position:relative;border-radius:0;border-color:var(--border-subtle);color:var(--text-primary)}.fg-ap-cell:focus-visible{z-index:2;outline-offset:-3px}.fg-ap-cell:disabled{cursor:default;color:var(--text-primary);opacity:1}.fg-ap-z0{background:color-mix(in srgb,var(--accent-primary) 38%,var(--surface-elevated))}.fg-ap-z1{background:color-mix(in srgb,var(--accent-amber) 40%,var(--surface-elevated))}.fg-ap-z2{background:color-mix(in srgb,var(--color-wasm) 36%,var(--surface-elevated))}.fg-ap-z3{background:color-mix(in srgb,var(--color-success) 38%,var(--surface-elevated))}.fg-ap-z4{background:color-mix(in srgb,var(--color-orange) 40%,var(--surface-elevated))}.fg-ap-z5{background:color-mix(in srgb,var(--color-info) 38%,var(--surface-elevated))}.fg-ap-z6{background:color-mix(in srgb,var(--color-neutral) 42%,var(--surface-elevated))}.fg-ap-z7{background:color-mix(in srgb,var(--color-danger) 34%,var(--surface-elevated))}.fg-ap-wt{border-top:2px solid var(--text-primary)}.fg-ap-wr{border-right:2px solid var(--text-primary)}.fg-ap-wb{border-bottom:2px solid var(--text-primary)}.fg-ap-wl{border-left:2px solid var(--text-primary)}.fg-ap-z5{background-image:repeating-linear-gradient(135deg,color-mix(in srgb,var(--text-primary) 12%,transparent) 0 2px,transparent 2px 8px)}.fg-ap-z6{background-image:radial-gradient(color-mix(in srgb,var(--text-primary) 18%,transparent) 1.2px,transparent 1.6px);background-size:7px 7px}.fg-ap-z7{background-image:repeating-linear-gradient(45deg,color-mix(in srgb,var(--text-primary) 10%,transparent) 0 1px,transparent 1px 7px),repeating-linear-gradient(135deg,color-mix(in srgb,var(--text-primary) 10%,transparent) 0 1px,transparent 1px 7px)}.fg-ap-tag{position:absolute;top:2px;left:3px;padding:1px 3px;border-radius:3px;background:color-mix(in srgb,var(--surface-base) 85%,transparent);font-size:.65rem;font-weight:700;line-height:1}.fg-ap-glyph,.fg-ap-tag{color:var(--text-primary);pointer-events:none}.fg-ap-glyph{width:62%;height:62%;filter:drop-shadow(0 0 1px var(--canvas-primary)) drop-shadow(0 0 1px var(--canvas-primary))}.fg-ap-x{display:grid;place-items:center;width:1.45em;height:1.45em;border-radius:50%;background:color-mix(in srgb,var(--surface-base) 82%,transparent);font-size:1.3rem;font-weight:700;color:var(--text-primary);pointer-events:none;line-height:1;box-shadow:0 0 0 2px var(--text-primary)}.fg-ap-x-auto{width:1.25em;height:1.25em;font-size:1.2rem;color:var(--color-danger);background:color-mix(in srgb,var(--surface-base) 88%,transparent);box-shadow:none}.fg-ap-bad{box-shadow:inset 0 0 0 3px var(--color-danger);background-image:repeating-linear-gradient(45deg,color-mix(in srgb,var(--color-danger) 22%,transparent) 0 4px,transparent 4px 9px)}.fg-ap-alert,.fg-ap-bad .fg-ap-glyph{color:var(--color-danger)}.fg-ap-alert{position:absolute;top:1px;right:4px;font-size:.75rem;font-weight:800;line-height:1;pointer-events:none}.fg-ap-solved .fg-ap-glyph{color:var(--color-success)}.fg-ap-option{display:flex;align-items:center;gap:.5rem;min-height:44px;color:var(--text-secondary);cursor:pointer;text-align:left}.fg-ap-check{width:1.2rem;height:1.2rem;accent-color:var(--accent-primary);flex:none}.fg-bb-board{gap:6px}.fg-bb-loading{display:flex;align-items:center;justify-content:center;border:1px dashed var(--border-subtle);border-radius:var(--radius-md)}.fg-bb-info,.fg-bb-loading-text{margin:0}.fg-bb-slot{position:relative;min-width:0}.fg-bb-cell{position:relative;width:100%;height:100%;font-size:clamp(1.2rem,6vw,1.6rem)}.fg-bb-zero{background:color-mix(in srgb,var(--accent-primary) 22%,var(--surface-elevated))}.fg-bb-one{background:color-mix(in srgb,var(--accent-amber) 28%,var(--surface-elevated))}.fg-bb-cell{font-weight:600}.fg-bb-given{border:2px solid var(--border-strong);color:var(--text-primary);font-weight:800;cursor:default;background-image:linear-gradient(135deg,var(--text-secondary) 0 8px,transparent 8px)}.fg-bb-bad{background-image:repeating-linear-gradient(45deg,color-mix(in srgb,var(--color-danger) 22%,transparent) 0 4px,transparent 4px 9px)}.fg-bb-alert{top:2px;right:5px;font-size:.75rem;font-weight:800;color:var(--color-danger)}.fg-bb-alert,.fg-bb-sign{position:absolute;line-height:1}.fg-bb-sign{z-index:2;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface-base);color:var(--text-primary);font-family:var(--font-mono);font-size:.8rem;font-weight:700;pointer-events:none}.fg-bb-sign-r{top:calc(50% - 10px);right:-13px}.fg-bb-sign-b{left:calc(50% - 10px);bottom:-13px}.fg-bb-sign-bad{border-color:var(--color-danger);color:var(--color-danger);border-width:2px}.fg-bb-solved .fg-bb-sign{border-color:var(--color-success)}.fg-lpk-hud{display:flex;flex-direction:column;align-items:center;gap:.6rem;width:100%}@media (max-width:420px){.fg-lpk-buttons{gap:.4rem}.fg-lpk-buttons .fg-button{padding:.5rem .7rem}}.fg-lpk-readout-label{font-weight:400;margin-right:.25rem}.fg-lpk-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fg-lpk-hint-note{margin:0;max-width:52ch;text-align:left;color:var(--text-primary);background:var(--surface-elevated);border:1px solid var(--border-subtle);border-left:3px solid var(--accent-primary);border-radius:var(--radius-sm);padding:.5rem .75rem}.fg-lpk-hint-label{font-weight:700;color:var(--accent-primary);margin-right:.35rem}.fg-cell.fg-lpk-hint-target{position:relative;box-shadow:inset 0 0 0 3px var(--accent-primary);animation:fg-lpk-hint-pulse .9s ease-in-out 2}.fg-cell.fg-lpk-hint-wrong{position:relative;box-shadow:inset 0 0 0 3px var(--color-danger)}.fg-cell.fg-lpk-hint-target:after,.fg-cell.fg-lpk-hint-wrong:after{content:"";position:absolute;right:4px;bottom:4px;width:7px;height:7px;border-radius:999px;background:var(--accent-primary);pointer-events:none}.fg-cell.fg-lpk-hint-wrong:after{background:var(--color-danger)}.fg-cell.fg-lpk-hint-area:not(:focus-visible){outline:2px dashed var(--accent-primary);outline-offset:-5px}@keyframes fg-lpk-hint-pulse{50%{box-shadow:inset 0 0 0 6px var(--accent-primary)}}@media (prefers-reduced-motion:reduce){.fg-cell.fg-lpk-hint-target{animation:none}}.fg-pp-board{position:relative;gap:0;touch-action:manipulation;-webkit-touch-callout:none;border:2px solid var(--border-strong);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface-elevated)}.fg-pp-board:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px}.fg-pp-loading{display:flex;align-items:center;justify-content:center;border-style:dashed;border-color:var(--border-subtle)}.fg-pp-info,.fg-pp-loading-text{margin:0}.fg-pp-cell{border-radius:0;border-color:var(--border-subtle);cursor:crosshair}.fg-pp-on{background:color-mix(in srgb,var(--accent-primary) 14%,var(--surface-elevated))}.fg-pp-head{box-shadow:inset 0 0 0 2px var(--accent-primary)}.fg-pp-pen{touch-action:none}.fg-pp-bad{background-image:repeating-linear-gradient(45deg,color-mix(in srgb,var(--color-danger) 26%,transparent) 0 4px,transparent 4px 9px)}.fg-pp-port{position:relative;z-index:2;width:64%;height:64%;display:flex;align-items:center;justify-content:center;border-radius:999px;background:var(--text-primary);color:var(--surface-base);font-family:var(--font-mono);font-weight:800;font-size:clamp(.8rem,3.6vw,1.05rem)}.fg-pp-port-done{background:var(--accent-primary);color:var(--canvas-primary)}.fg-pp-port-next{box-shadow:0 0 0 3px var(--accent-amber)}.fg-pp-layer{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.fg-pp-cable{stroke:var(--accent-primary);stroke-width:.34;stroke-linecap:round;stroke-linejoin:round}.fg-pp-dot{fill:var(--accent-primary)}.fg-pp-duct{stroke:var(--text-primary);stroke-width:.13;stroke-linecap:round}.fg-pp-solved .fg-pp-cable{stroke:var(--color-success)}.fg-pp-solved .fg-pp-dot{fill:var(--color-success)}.fg-pp-progress{margin:0;font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center;max-width:100%}.fg-pp-refused{color:var(--text-primary);font-weight:600}.fg-pp-refused:before{content:"! ";color:var(--color-danger);font-weight:800}.fg-ld-modes{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.fg-ld-mode[aria-pressed=true]{border-color:var(--accent-primary);color:var(--accent-primary)}.fg-ld-question{width:100%;box-sizing:border-box;border:1px solid var(--accent-primary);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.6rem 1rem;display:flex;flex-direction:column;gap:.25rem}.fg-ld-ask{margin:0;font-weight:700;color:var(--text-primary)}.fg-ld-pick{margin:0}.fg-ld-bar{position:-webkit-sticky;position:sticky;bottom:0;z-index:2;box-sizing:border-box;width:100%;padding:.5rem;border:1px solid var(--accent-primary);border-radius:var(--radius-md);background:var(--surface-elevated)}.fg-ld-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:.5rem;gap:.5rem}.fg-ld-choice{font-family:var(--font-mono)}.fg-ld-confirm{display:flex;justify-content:center}.fg-ld-confirm .fg-button{flex:1 1 auto;max-width:24rem}.fg-ld-feedback{width:100%;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.25rem}.fg-ld-fb-ok{color:var(--color-success)}.fg-ld-fb-bad{color:var(--color-danger)}.fg-ld-fb-mark{font-weight:700;display:inline-block;width:1.2em}.fg-ld-frame{width:100%;display:flex;flex-direction:column;gap:.35rem}.fg-ld-caption{margin:0;overflow-wrap:anywhere}.fg-ld-caption,.fg-ld-ua{font-size:.85rem;color:var(--text-secondary)}.fg-ld-ua{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;cursor:pointer;align-self:flex-start}.fg-ld-ua input{width:1.1rem;height:1.1rem;accent-color:var(--accent-primary);cursor:pointer}.fg-ld-log{position:relative;font-family:var(--font-mono);font-size:.78rem;line-height:1.45;max-height:60vh;overflow-y:auto;overflow-x:hidden;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-base);color:var(--text-primary);padding:.25rem 0}.fg-ld-log:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-ld-line{display:grid;grid-template-columns:2.6em 1fr;grid-gap:.5em;gap:.5em;padding:.2rem .6rem .2rem 0;cursor:pointer;border-left:3px solid transparent}.fg-ld-active,.fg-ld-line:hover{background:var(--surface-elevated)}.fg-ld-active{border-left-color:var(--accent-primary)}.fg-ld-attacker{background:var(--surface-elevated);color:var(--accent-amber)}.fg-ld-first{border-left-color:var(--color-warning);box-shadow:inset 0 0 0 1px var(--color-warning)}.fg-ld-success{border-left-color:var(--color-danger);box-shadow:inset 0 0 0 1px var(--color-danger)}.fg-ld-wrong{text-decoration:line-through;-webkit-text-decoration-color:var(--color-danger);text-decoration-color:var(--color-danger)}.fg-ld-no{text-align:right;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fg-ld-text{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.fg-ld-report{width:100%;box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.9rem 1.1rem;color:var(--text-secondary);line-height:1.55}.fg-ld-report p{margin:0 0 .6rem;overflow-wrap:anywhere}.fg-ld-report-title{font-size:1.1rem;margin:0 0 .5rem;color:var(--text-primary)}.fg-ld-report-sub{font-size:.95rem;margin:.6rem 0 .25rem;color:var(--text-primary)}.fg-ld-legend{display:flex;flex-wrap:wrap;gap:.35rem .75rem;align-items:center}.fg-ld-legend-item{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.fg-ld-key{display:inline-block;width:.9em;height:.9em;border-radius:2px;border:2px solid var(--border-strong);vertical-align:middle}.fg-ld-key-attacker{background:var(--accent-amber);border-color:var(--accent-amber)}.fg-ld-key-first{border-color:var(--color-warning)}.fg-ld-key-success{border-color:var(--color-danger)}.fg-pol-modes{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.fg-pol-mode[aria-pressed=true]{border-color:var(--accent-primary);color:var(--accent-primary)}.fg-pol-strip{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;list-style:none;margin:0;padding:0}.fg-pol-dot{width:14px;height:14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-base)}.fg-pol-dot-ok{background:var(--color-success);border-color:var(--color-success)}.fg-pol-dot-bad{background:var(--color-danger);border-color:var(--color-danger)}.fg-pol-dot-now{border-color:var(--accent-primary);border-width:2px}.fg-pol-start{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center;max-width:46ch}.fg-pol-start-text{margin:0;color:var(--text-secondary)}.fg-pol-cover{min-height:9rem}.fg-pol-card,.fg-pol-cover{width:100%;max-width:640px;box-sizing:border-box}.fg-pol-card{border:2px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-elevated);padding:1rem 1.1rem;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .12s ease-out,border-color .12s ease-out}.fg-pol-lean-phish{border-color:var(--color-danger)}.fg-pol-lean-legit{border-color:var(--color-success)}.fg-pol-card-head{display:flex;flex-wrap:wrap;gap:.35rem .75rem;justify-content:space-between;align-items:baseline;margin-bottom:.6rem;font-size:.8rem;color:var(--text-secondary)}.fg-pol-kind{text-transform:uppercase;letter-spacing:.06em;font-weight:700;color:var(--accent-primary)}.fg-pol-claim{color:var(--text-secondary)}.fg-pol-text{margin:0;font-family:var(--font-mono);font-size:clamp(.95rem,3.6vw,1.2rem);line-height:1.45;color:var(--text-primary);overflow-wrap:anywhere;word-break:break-word}.fg-pol-context,.fg-pol-from{color:var(--text-secondary)}.fg-pol-context{margin:.6rem 0 0;font-style:italic}.fg-pol-answers{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem;width:100%;max-width:640px}.fg-pol-answer{min-height:56px;font-size:1.1rem}.fg-pol-answer-phish{border-color:var(--color-danger)}.fg-pol-answer-legit{border-color:var(--color-success)}.fg-pol-answer-phish:hover{border-color:var(--color-danger);color:var(--color-danger)}.fg-pol-answer-legit:hover{border-color:var(--color-success);color:var(--color-success)}.fg-pol-flash,.fg-pol-hint{margin:0;text-align:center}.fg-pol-flash{font-weight:600}.fg-pol-ok{color:var(--color-success)}.fg-pol-bad{color:var(--color-danger)}.fg-pol-feedback{width:100%;max-width:640px;box-sizing:border-box;border:1px solid;border-radius:var(--radius-md);background:var(--surface-base);padding:.9rem 1.1rem}.fg-pol-verdict{margin:0 0 .4rem;font-weight:700;display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline}.fg-pol-tell{font-weight:600;font-size:.85rem;padding:.1rem .5rem;border:1px solid;border-radius:999px}.fg-pol-explain{margin:0 0 .6rem;color:var(--text-primary);line-height:1.55;overflow-wrap:anywhere}.fg-pol-points{list-style:none;margin:0 0 .75rem;padding:.5rem .75rem;border-left:3px solid var(--accent-primary);background:var(--surface-elevated);color:var(--text-secondary);font-size:.85rem;overflow-wrap:anywhere}.fg-pol-glyph{display:inline-block;min-width:1.5em;font-size:1.2rem;color:var(--text-primary)}.fg-pol-review{width:100%;max-width:640px;box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.5rem 1rem}.fg-pol-review-title{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center;color:var(--text-primary)}.fg-pol-review-list{margin:0;padding-left:1.4rem;display:flex;flex-direction:column;gap:.6rem;color:var(--text-secondary)}.fg-pol-review-ok::marker{color:var(--color-success)}.fg-pol-review-bad::marker{color:var(--color-danger)}.fg-pol-review-text{margin:0 0 .15rem;color:var(--text-primary);overflow-wrap:anywhere;font-size:.85rem}@media (prefers-reduced-motion:reduce){.fg-pol-card{transition:none}}@media (max-width:640px){.fg-pol-hud{gap:.25rem .6rem}.fg-pol-hud .fg-readout{font-size:.9rem}.fg-pol-card{padding:.75rem .85rem}.fg-pol-card-head{display:block;margin-bottom:.45rem}.fg-pol-kind{margin-right:.5rem}.fg-pol-answer{min-height:48px}}.fg-agg-rules-list{padding-left:1.3rem}.fg-agg-wrap{width:100%;max-width:460px;display:flex;flex-direction:column;align-items:center;gap:.75rem}.fg-agg-mode[aria-pressed=true]{border-color:var(--accent-primary);color:var(--accent-primary)}.fg-agg-goals{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;justify-content:center}.fg-agg-goal{border-style:dashed}.fg-agg-goal-hit{border-style:solid;border-color:var(--color-success);color:var(--color-success)}.fg-agg-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));grid-gap:6px;gap:6px;width:min(100%,440px);aspect-ratio:1/1;padding:6px;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-base);touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fg-agg-board:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px}.fg-agg-cell{min-height:0;background:var(--surface-elevated)}.fg-agg-cell,.fg-agg-tile{min-width:0;border-radius:var(--radius-sm);display:flex}.fg-agg-tile{flex:1 1;flex-direction:column;align-items:center;justify-content:center;gap:1px;border:1px solid var(--border-strong);border-left-width:4px;background:var(--surface-base);color:var(--text-primary);font-family:var(--font-mono);padding:2px;text-align:center}.fg-agg-addr{font-size:clamp(.56rem,2.4vw,.8rem);line-height:1.1;max-width:100%;overflow-wrap:anywhere;color:var(--text-secondary)}.fg-agg-len{font-size:clamp(.95rem,4.6vw,1.35rem);font-weight:700;line-height:1.1}.fg-agg-addr-short{display:none}@media (max-width:480px){.fg-agg-addr-full{display:none}.fg-agg-addr-short{display:inline;font-size:clamp(.72rem,3.4vw,.85rem)}}.fg-agg-l27{border-color:var(--color-neutral)}.fg-agg-l27 .fg-agg-len{color:var(--color-neutral)}.fg-agg-l26{border-color:var(--color-info)}.fg-agg-l26 .fg-agg-len{color:var(--color-info)}.fg-agg-l25{border-color:var(--color-success)}.fg-agg-l25 .fg-agg-len{color:var(--color-success)}.fg-agg-l24{border-color:var(--accent-amber);border-width:2px 2px 2px 6px}.fg-agg-l24 .fg-agg-len{color:var(--accent-amber)}.fg-agg-l23{border-color:var(--color-orange);border-width:2px 2px 2px 6px}.fg-agg-l23 .fg-agg-len{color:var(--color-orange)}.fg-agg-l22{border-color:var(--color-danger);border-width:2px 2px 2px 8px}.fg-agg-l22 .fg-agg-len{color:var(--color-danger)}.fg-agg-l21{border-color:var(--accent-primary);border-width:3px 3px 3px 8px}.fg-agg-l21 .fg-agg-len{color:var(--accent-primary)}.fg-agg-tile-pair{position:relative;outline:2px dashed var(--accent-primary);outline-offset:-3px}.fg-agg-pair-a{outline-style:dashed}.fg-agg-pair-b{outline-style:dotted;outline-width:3px}.fg-agg-pair-c{outline-style:double;outline-width:4px;outline-offset:-5px}.fg-agg-pair-d{outline-style:solid}.fg-agg-pair-n{position:absolute;top:3px;right:3px;min-width:1.15rem;height:1.15rem;padding:0 .2rem;border-radius:999px;background:var(--accent-primary);color:var(--canvas-primary);font-family:var(--font-mono);font-size:.72rem;font-weight:700;line-height:1.15rem;text-align:center}.fg-agg-help{margin:0;text-align:center}.fg-agg-pad{display:grid;grid-template-columns:repeat(3,52px);grid-template-areas:". up ." "left down right";grid-gap:6px;gap:6px;justify-content:center}.fg-agg-pad .fg-button{width:52px;height:48px;padding:0;display:flex;align-items:center;justify-content:center}.fg-agg-pad-up{grid-area:up}.fg-agg-pad-left{grid-area:left}.fg-agg-pad-down{grid-area:down}.fg-agg-pad-right{grid-area:right}.fg-agg-arrow{width:22px;height:22px}.fg-agg-live{min-height:1.4em;color:var(--text-secondary);font-size:.9rem}.fg-agg-learn,.fg-agg-live{margin:0;text-align:center}.fg-agg-learn a{color:var(--accent-primary);text-decoration:underline;text-underline-offset:3px}.fg-five-rules-list{padding-left:1.3rem}.fg-five-wrap{width:100%;max-width:560px;gap:.9rem}.fg-five-round,.fg-five-wrap{display:flex;flex-direction:column}.fg-five-round{gap:.8rem}.fg-five-clues{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.fg-five-clue{flex:1 1 100%;box-sizing:border-box;display:grid;grid-template-columns:2rem minmax(0,1fr);grid-template-areas:"num text" ". guess";align-items:center;grid-gap:2px .6rem;gap:2px .6rem;padding:.55rem .75rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-elevated)}.fg-five-clue-hidden{display:flex}.fg-five-clue-hidden .fg-five-num{border-style:dashed;color:var(--text-secondary)}.fg-five-clue+.fg-five-clue-hidden{margin-left:calc(.75rem + 1px)}.fg-five-num{grid-area:num;width:1.8rem;height:1.8rem;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;border:1px solid var(--border-strong);color:var(--accent-primary)}.fg-five-num,.fg-five-text{font-family:var(--font-mono)}.fg-five-text{grid-area:text;font-size:1rem;font-weight:600;color:var(--text-primary);overflow-wrap:anywhere}.fg-five-guess{grid-area:guess;font-size:.85rem;overflow-wrap:anywhere}.fg-five-guess-wrong{color:var(--color-danger);text-decoration:line-through}.fg-five-guess-right{color:var(--color-success);font-weight:700}.fg-five-form{flex-direction:column}.fg-five-form,.fg-five-row{display:flex;gap:.5rem}.fg-five-input{flex:1 1;min-width:0;font-family:inherit}.fg-exit-sr-button:not(:focus-visible){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.fg-five-note{margin:0;text-align:center;color:var(--color-warning);font-size:.9rem}.fg-five-comment{margin:0;text-align:center;color:var(--text-secondary);font-size:.95rem}.fg-five-nudges{border:1px dashed var(--border-strong);border-radius:var(--radius-md);padding:.6rem .85rem;background:var(--surface-elevated)}.fg-five-nudges-title{margin:0 0 .3rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.fg-five-nudges-list{margin:0;padding-left:1.2rem;font-size:.92rem;line-height:1.5}.fg-five-reveal{text-align:center;border-top:1px solid var(--border-subtle);padding-top:.75rem}.fg-five-reveal-lead{margin:0;color:var(--text-secondary);font-size:.85rem}.fg-five-reveal a{color:var(--accent-primary);text-decoration:underline;text-underline-offset:3px}.fg-five-reveal-cat{margin:.15rem 0 .4rem;font-size:1.25rem;font-weight:700;color:var(--accent-primary)}.fg-five-practice{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;gap:.75rem}.fg-five-practice-title{margin:0;font-size:1.2rem;color:var(--text-primary)}.fg-five-practice-intro{margin:0;text-align:center}.fg-five-pick{display:flex;flex-direction:column;align-items:center}.fg-five-select{min-width:12rem;font-family:inherit}.fg-five-mark{margin:.35rem 0 0;display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--text-secondary)}.fg-five-mark-icon{width:18px;height:18px;flex:none}.fg-five-mark-won .fg-five-mark-icon{color:var(--color-success)}.fg-five-mark-lost .fg-five-mark-icon{color:var(--color-danger)}.fg-pod-rules-list{padding-left:1.3rem}.fg-pod-wrap{width:100%;max-width:560px;display:flex;flex-direction:column;gap:.9rem}.fg-pod-puzzle{text-align:center}.fg-pod-kicker{margin:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.fg-pod-target{margin:.1rem 0;font-family:var(--font-mono);font-size:clamp(1.45rem,7vw,2.2rem);font-weight:700;color:var(--text-primary);overflow-wrap:anywhere;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-pod-target-small{font-size:clamp(1.2rem,5.5vw,1.6rem);text-align:center}.fg-pod-tier{margin:0;color:var(--text-secondary);font-size:.85rem}.fg-pod-round{gap:.85rem}.fg-pod-grid,.fg-pod-round{display:flex;flex-direction:column}.fg-pod-grid{gap:4px}.fg-pod-head,.fg-pod-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:4px;gap:4px}.fg-pod-head span{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);text-align:center}.fg-pod-rows{list-style:none;margin:0;padding:0;gap:4px}.fg-pod-rows,.fg-pod-sq{display:flex;flex-direction:column}.fg-pod-sq{position:relative;min-height:54px;align-items:center;justify-content:center;gap:2px;padding:6px 2px 4px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-elevated);overflow:hidden}.fg-pod-sq:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:currentColor}.fg-pod-sq-ok{color:var(--color-success);border-color:var(--color-success)}.fg-pod-sq-up{color:var(--color-info)}.fg-pod-sq-down{color:var(--color-warning)}.fg-pod-sq-empty{border-style:dashed;background:transparent}.fg-pod-sq-empty:before{display:none}.fg-pod-icon{width:20px;height:20px;flex:none}.fg-pod-val{font-family:var(--font-mono);font-size:clamp(.6rem,2.45vw,.78rem);line-height:1.15;color:var(--text-secondary);max-width:100%;text-align:center;overflow-wrap:anywhere;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-pod-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem .75rem;gap:.6rem .75rem}.fg-pod-form-target{grid-column:1/-1;margin:0;text-align:center;font-family:var(--font-mono);font-weight:600;font-size:.95rem;color:var(--text-primary);overflow-wrap:anywhere;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:640px){.fg-pod-sq-empty{min-height:22px;padding:0}}@media (max-width:359px){.fg-pod-form{grid-template-columns:1fr}}.fg-pod-field{min-width:0}.fg-pod-input{width:100%}@media (max-width:600px){.fg-pod-field-stepped{grid-column:1/-1}}.fg-pod-hint{margin-left:.4rem;font-size:.75rem;font-weight:600}.fg-pod-hint-ok{color:var(--color-success)}.fg-pod-hint-up{color:var(--color-info)}.fg-pod-hint-down{color:var(--color-warning)}.fg-pod-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:center}.fg-pod-left{color:var(--text-secondary);font-size:.85rem}.fg-pod-error{margin:0;text-align:center;color:var(--color-danger);font-size:.9rem}.fg-pod-why{border-left:3px solid var(--accent-primary);background:var(--surface-elevated);border-radius:var(--radius-sm);padding:.75rem .95rem;color:var(--text-secondary)}.fg-pod-why-title{margin:0 0 .3rem;font-weight:700;color:var(--text-primary)}.fg-pod-bits{margin:0 0 .35rem;font-family:var(--font-mono);font-size:1.2rem;letter-spacing:.14em}.fg-pod-bit-net{color:var(--accent-primary);font-weight:700;text-decoration:underline;text-underline-offset:5px}.fg-pod-bit-host{color:var(--text-secondary)}.fg-pod-why-text{margin:0;line-height:1.5}.fg-pod-links{margin:.5rem 0 0;display:flex;flex-wrap:wrap;gap:.25rem 1rem;font-size:.9rem}.fg-pod-links a{color:var(--accent-primary);text-decoration:underline;text-underline-offset:3px}.fg-pod-practice{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;gap:.75rem}.fg-pod-practice-title{margin:0;font-size:1.2rem;color:var(--text-primary)}.fg-pod-practice-intro{margin:0;text-align:center}.fg-pod-level[aria-pressed=true]{border-color:var(--accent-primary);color:var(--accent-primary)}.fg-pod-means{margin:.2rem 0 0;font-size:.8rem;overflow-wrap:anywhere}.fg-pod-hint-locked,.fg-pod-input-locked,.fg-pod-means{color:var(--text-secondary)}.fg-pod-input-locked{border-color:var(--color-success);background:var(--surface-elevated)}.fg-pod-hard{display:flex;flex-direction:column;align-items:center;gap:.1rem;text-align:center}.fg-pod-switch{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;padding:.3rem .5rem;border:none;background:none;color:var(--text-primary);font:inherit;font-weight:600;cursor:pointer}.fg-pod-switch:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.fg-pod-switch[aria-disabled=true]{color:var(--text-tertiary);cursor:not-allowed}.fg-pod-switch-track{position:relative;width:2.8rem;height:1.5rem;border-radius:999px;background:var(--border-strong);flex-shrink:0}.fg-pod-switch-on .fg-pod-switch-track{background:var(--accent-primary)}.fg-pod-switch-thumb{position:absolute;top:.2rem;left:.2rem;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--surface-base);transition:left .15s ease-out}.fg-pod-switch-on .fg-pod-switch-thumb{left:1.5rem}@media (prefers-reduced-motion:reduce){.fg-pod-switch-thumb{transition:none}}.fg-pod-hard-desc{margin:0;font-size:.8rem;color:var(--text-secondary);max-width:34rem}.fg-pod-stats{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.85rem 1rem;display:flex;flex-direction:column;gap:.6rem}.fg-pod-stats-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary);text-align:center}.fg-pod-stat-row{margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.4rem;gap:.4rem}.fg-pod-stat{display:grid;grid-template-rows:auto 1fr;justify-items:center;text-align:center;min-width:0}.fg-pod-stat dt{grid-row:2;font-size:.72rem;color:var(--text-secondary);line-height:1.25}.fg-pod-stat dd{grid-row:1;margin:0;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.fg-pod-dist-title{margin:.2rem 0 0;font-size:.85rem;font-weight:700;color:var(--text-secondary);text-align:center}.fg-pod-dist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.fg-pod-dist-row{display:grid;grid-template-columns:1.4rem minmax(0,1fr);align-items:center;grid-gap:.4rem;gap:.4rem}.fg-pod-dist-key{font-size:.85rem;color:var(--text-secondary);text-align:center}.fg-pod-dist-track{display:flex;align-items:center;gap:.35rem;min-height:1.35rem}.fg-pod-dist-bar{display:block;height:1.1rem;width:max(4px,calc((100% - 2.5rem) * var(--fg-pod-share, 0)));border-radius:0 4px 4px 0;background:var(--border-strong)}.fg-pod-dist-n{font-size:.8rem;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-pod-dist-today .fg-pod-dist-bar{background:var(--accent-primary)}.fg-pod-dist-today .fg-pod-dist-key,.fg-pod-dist-today .fg-pod-dist-n{font-weight:700;color:var(--text-primary)}.fg-fm{display:flex;flex-direction:column;gap:.9rem;width:100%}.fg-fm-levelbar{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;justify-content:center}.fg-fm-passed{color:var(--color-success);border-color:var(--color-success)}.fg-fm-h{font-size:.95rem;font-weight:700;margin:0 0 .4rem;color:var(--text-primary)}.fg-fm-policy{border:1px solid var(--accent-primary);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.8rem 1rem}.fg-fm-policy-text{margin:0;color:var(--text-primary);line-height:1.55}.fg-fm-cols{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:.9rem;gap:.9rem}@media (min-width:760px){.fg-fm-cols{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}.fg-fm-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.8rem;min-width:0}.fg-fm-acl-head{margin:0 0 .4rem;font-size:.8rem;color:var(--text-secondary);overflow-wrap:anywhere}.fg-fm-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.fg-fm-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;padding:.35rem .45rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-base)}.fg-fm-row:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-fm-seq{color:var(--accent-primary);font-weight:700;min-width:2.2rem;font-size:.85rem}.fg-fm-line{flex:1 1 12rem;min-width:0;font-size:.85rem;color:var(--text-primary);overflow-wrap:anywhere}.fg-fm-hits{color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:999px;padding:.05rem .45rem}.fg-fm-row-actions{display:flex;gap:.3rem;margin-left:auto}.fg-fm-icon{min-width:44px;padding:.25rem;font-size:1.05rem;line-height:1}.fg-fm-implicit{margin:.4rem 0 .3rem;padding:.35rem .45rem;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem;overflow-wrap:anywhere}.fg-fm-hand{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.fg-fm-card{display:flex;gap:.5rem;align-items:center;width:100%;min-height:44px;padding:.4rem .6rem;text-align:left;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-base);color:var(--text-primary);font:inherit;font-size:.85rem;cursor:pointer;overflow-wrap:anywhere}.fg-fm-card:hover{border-color:var(--accent-primary);border-style:solid}.fg-fm-card:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-fm-card:disabled{opacity:.55;cursor:not-allowed}.fg-fm-plus{color:var(--accent-primary);font-weight:700;font-size:1.1rem}.fg-fm-lane{position:relative;height:72px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-base);overflow:hidden}.fg-fm-lane-from{left:.5rem}.fg-fm-lane-from,.fg-fm-lane-to{position:absolute;top:.3rem;color:var(--text-secondary)}.fg-fm-lane-to{right:.5rem}.fg-fm-wall{position:absolute;left:62%;top:10px;bottom:10px;width:6px;border-radius:3px;background:var(--accent-primary)}.fg-fm-server{position:absolute;right:.6rem;bottom:.5rem;width:28px;height:28px;color:var(--text-secondary)}.fg-fm-pkt{position:absolute;left:2%;top:30px;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.75rem;font-weight:700;background:var(--surface-elevated);color:var(--text-primary);border:2px solid var(--border-strong);opacity:0;animation-duration:1s;animation-timing-function:ease-in-out;animation-fill-mode:both;animation-delay:calc(var(--fg-fm-i) * .22s)}.fg-fm-pkt-ok{border-color:var(--color-success)}.fg-fm-pkt-bad{border-color:var(--color-danger)}.fg-fm-pkt-pass{animation-name:fg-fm-fly-pass}.fg-fm-pkt-block{animation-name:fg-fm-fly-block}@keyframes fg-fm-fly-pass{0%{left:2%;opacity:0}10%{opacity:1}to{left:86%;opacity:1}}@keyframes fg-fm-fly-block{0%{left:2%;opacity:0;transform:translateY(0)}10%{opacity:1}65%{left:56%;opacity:1;transform:translateY(0)}to{left:56%;opacity:.35;transform:translateY(14px)}}@media (prefers-reduced-motion:reduce){.fg-fm-pkt{animation:none;opacity:1}}.fg-fm-wave{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.fg-fm-pkt-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;padding:.35rem .5rem;border:1px solid var(--border-subtle);border-left-width:4px;border-radius:var(--radius-sm);background:var(--surface-base)}.fg-fm-ok{border-left-color:var(--color-success)}.fg-fm-bad{border-left-color:var(--color-danger)}.fg-fm-num{color:var(--text-secondary);min-width:1.4rem;font-size:.8rem}.fg-fm-pkt-text{flex:1 1 14rem;min-width:0;font-size:.82rem;color:var(--text-primary);overflow-wrap:anywhere}.fg-fm-verdict{flex:1 1 100%;color:var(--text-secondary);padding-left:1.9rem}.fg-fm-bad .fg-fm-verdict{color:var(--color-danger)}.fg-fm-lesson{border:1px solid var(--color-success);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.8rem 1rem;color:var(--text-secondary);line-height:1.55}.fg-fm-lesson p{margin:0 0 .5rem}.fg-fm-answer{margin:0;padding-left:1.2rem;font-size:.85rem;color:var(--text-primary);overflow-wrap:anywhere}.fg-fm-controls{position:-webkit-sticky;position:sticky;bottom:0;z-index:2;padding:.5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated)}.fg-fm-armed{border-color:var(--color-warning);color:var(--color-warning)}.fg-fm-hintbar{min-height:44px;align-items:center}.fg-fm-hint-wait{margin:0;text-align:center}.fg-fm-hints{border:1px solid var(--accent-primary);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.8rem 1rem;color:var(--text-secondary)}.fg-fm-hints:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-fm-hint-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.fg-fm-hint-list .fg-fm-line{font-size:.85rem}.fg-fm-hint-reason{display:block;margin:.15rem 0 0;font-size:.85rem;line-height:1.5}.fg-fm-hintmark{border:1px dashed var(--accent-primary);border-radius:999px;padding:.05rem .45rem;color:var(--accent-primary);white-space:nowrap}.fg-fm-hintmark-ok{border-style:solid;border-color:var(--color-success);color:var(--color-success)}.fg-fm-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fg-stp{display:flex;flex-direction:column;align-items:center;gap:.8rem;width:100%}.fg-stp-toolbar{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;justify-content:center}.fg-stp-group{gap:.4rem;flex-wrap:nowrap}@media (max-width:480px){.fg-stp-toolbar{gap:.5rem .75rem}.fg-stp-group{gap:.3rem}.fg-stp-tool{padding:.5rem .65rem}}.fg-stp-steps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}.fg-stp-step{font-size:.8rem;padding:.3rem .65rem;border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-secondary);background:var(--surface-elevated)}.fg-stp-step-now{color:var(--accent-primary);border-color:var(--accent-primary);font-weight:700}.fg-stp-step-done{color:var(--color-success);border-color:var(--color-success)}.fg-stp-step-num{display:none}.fg-stp-step-done .fg-stp-step-num:before{content:"✓ "}@media (max-width:640px){.fg-stp-step:not(.fg-stp-step-now) .fg-stp-step-full{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fg-stp-step:not(.fg-stp-step-now) .fg-stp-step-num{display:inline}}.fg-stp-board{display:block;height:auto;border:1px solid var(--border-subtle);background:var(--surface-elevated);touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fg-stp-board,.fg-stp-start{width:100%;max-width:var(--fg-stp-w);margin:0 auto;border-radius:var(--radius-lg)}.fg-stp-link{stroke:var(--text-secondary);stroke-width:2.5}.fg-stp-link-cut{stroke:var(--color-danger);stroke-dasharray:6 5}.fg-stp-cost-bg{fill:var(--surface-base);stroke:var(--border-subtle);stroke-width:1}.fg-stp-cost{fill:var(--text-secondary);font-family:var(--font-mono);font-size:11px;font-weight:700}.fg-stp-box{fill:var(--surface-base);stroke:var(--text-secondary);stroke-width:1.5}.fg-stp-name{fill:var(--text-primary);font-size:11px;font-weight:700}.fg-stp-bid{fill:var(--text-secondary);font-family:var(--font-mono);font-size:9.5px}.fg-stp-switch-root .fg-stp-box{fill:var(--accent-primary);stroke:var(--accent-primary)}.fg-stp-switch-root .fg-stp-bid,.fg-stp-switch-root .fg-stp-name{fill:var(--canvas-primary)}.fg-stp-target{cursor:pointer}.fg-stp-port:focus,.fg-stp-switch:focus{outline:none}.fg-stp-switch:focus-visible .fg-stp-box,.fg-stp-target:hover .fg-stp-box{stroke:var(--accent-primary);stroke-width:3}.fg-stp-hit{fill:transparent;cursor:pointer}.fg-stp-pill{fill:var(--surface-base);stroke:var(--text-secondary);stroke-width:1.2}.fg-stp-pid{fill:var(--text-primary);font-family:var(--font-mono);font-size:9.5px;font-weight:700}.fg-stp-port:focus-visible .fg-stp-pill,.fg-stp-target:hover .fg-stp-pill{stroke:var(--accent-primary);stroke-width:3}.fg-stp-port-rp .fg-stp-pill{fill:var(--accent-primary);stroke:var(--accent-primary)}.fg-stp-port-rp .fg-stp-pid{fill:var(--canvas-primary)}.fg-stp-port-dp .fg-stp-pill{fill:var(--color-success);stroke:var(--color-success)}.fg-stp-port-dp .fg-stp-pid{fill:var(--canvas-primary)}.fg-stp-port-bk .fg-stp-pill{fill:var(--surface-base);stroke:var(--color-danger);stroke-width:2.5}.fg-stp-port-bk .fg-stp-pid{fill:var(--color-danger)}.fg-stp-wrong .fg-stp-box,.fg-stp-wrong .fg-stp-pill{stroke:var(--color-danger);stroke-width:3}.fg-stp-armed{border-color:var(--color-warning);box-shadow:inset 0 0 0 1px var(--color-warning)}.fg-stp-why{margin:0;max-width:62ch;padding:.6rem .9rem;border:1px solid var(--color-warning);border-radius:var(--radius-md);background:var(--surface-elevated);color:var(--text-primary);line-height:1.5;font-size:.92rem}.fg-stp-ids{width:100%;max-width:760px;color:var(--text-secondary)}.fg-stp-ids summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--accent-primary)}.fg-stp-ids summary:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-stp-idlist{list-style:none;margin:.4rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));grid-gap:.2rem 1rem;gap:.2rem 1rem;font-size:.85rem;color:var(--text-primary)}.fg-stp-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fg-stp-narrow{display:block;width:100%}.fg-stp-wide{display:none;width:100%}@media (min-width:900px){.fg-stp-narrow{display:none}.fg-stp-wide{display:block}}.fg-exit-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fg-exit-levels{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;max-width:46rem}.fg-exit-level{display:flex;flex-direction:column;align-items:flex-start;min-height:44px;min-width:5.5rem;padding:.3rem .6rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.fg-exit-level:hover:not(:disabled){border-color:var(--accent-primary)}.fg-exit-level:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-exit-level-on{border-color:var(--accent-primary);box-shadow:inset 0 0 0 1px var(--accent-primary)}.fg-exit-level-done{border-color:var(--color-success)}.fg-exit-level:disabled{opacity:.72;border-style:dashed;cursor:not-allowed}.fg-exit-level-n{font-family:var(--font-mono);font-size:.7rem;color:var(--text-secondary)}.fg-exit-level-name{font-family:var(--font-mono);font-size:.85rem;font-weight:700}.fg-exit-level-head{display:inline-flex;align-items:center;gap:.3rem}.fg-exit-level-medal{font-size:.85rem;line-height:1}.fg-exit-level-par{font-family:var(--font-mono)}.fg-exit-level-par,.fg-exit-level-state{font-size:.7rem;color:var(--text-secondary)}.fg-exit-mode[aria-pressed=true]{border-color:var(--accent-primary);color:var(--accent-primary)}.fg-exit-par{display:inline-block;padding:.05rem .55rem;border:1px solid var(--border-strong);border-radius:999px;font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--text-secondary);vertical-align:.1em}.fg-exit-fail .fg-exit-fail-note{margin:.35rem 0 0;color:var(--text-secondary)}.fg-exit-brief{max-width:46rem;text-align:center}.fg-exit-brief-title{margin:0 0 .25rem;font-weight:700;color:var(--text-primary)}.fg-exit-brief-text{margin:0;color:var(--text-secondary)}.fg-exit-term{position:relative;max-width:100%;padding:.5rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-base);cursor:text;font-size:clamp(9px,calc((100vw - 64px) / 27.6),17px)}.fg-exit-term-focus{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-exit-start{position:absolute;inset:0;z-index:1;border:0;border-radius:inherit;background:var(--surface-base);font-size:1rem}.fg-exit-screen{margin:0;width:46ch;max-width:100%;min-height:calc(16 * 1.35em);font-family:var(--font-mono);font-size:1em;line-height:1.35;color:var(--text-primary);white-space:pre;overflow:hidden}.fg-exit-row{display:inline}.fg-exit-inv{background:var(--text-primary);color:var(--surface-base)}.fg-exit-cursor{background:var(--accent-primary);color:var(--canvas-primary)}.fg-exit-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:0;padding:0;background:transparent;color:transparent;caret-color:transparent;font-size:16px;cursor:text}.fg-exit-tap{position:absolute;left:50%;bottom:.6rem;transform:translateX(-50%);padding:.2rem .6rem;border-radius:999px;background:var(--accent-primary);color:var(--canvas-primary);font-size:.8rem;font-weight:600;pointer-events:none;white-space:nowrap}.fg-exit-keys{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;max-width:46rem}.fg-exit-key{min-width:44px;min-height:44px;padding:.3rem .6rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-elevated);color:var(--text-primary);font-family:var(--font-mono);font-size:.9rem;cursor:pointer}.fg-exit-key:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-exit-key-on{background:var(--accent-primary);border-color:var(--accent-primary);color:var(--canvas-primary)}.fg-exit-hints{margin:0;padding:.6rem .9rem .6rem 2rem;max-width:46rem;border:1px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-secondary)}.fg-exit-fail{max-width:46rem;padding:.6rem .9rem;border:1px solid var(--color-warning);border-radius:var(--radius-md);color:var(--text-primary)}.fg-exit-fail p{margin:0}.fg-exit-win{margin:0}.fg-exit-level-mark,.fg-exit-win{font-weight:700;color:var(--color-success)}.fg-exit-level-mark{display:none}.fg-exit-note{margin:0;max-width:46rem;text-align:center}@media (max-width:640px){.fg-exit-levels{align-self:stretch;max-width:100%;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:3px 3px .4rem}.fg-exit-levels>li{flex:0 0 auto;scroll-snap-align:center}.fg-exit-level{position:relative;flex-direction:row;align-items:center;gap:.35rem;min-width:0;padding:.3rem .6rem}.fg-exit-level-mark{display:inline}.fg-exit-level-state{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fg-exit-keys{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;max-width:26rem}.fg-exit-key{min-width:0;padding:.3rem .2rem}.fg-exit-hud{gap:.6rem}.fg-exit-hud .fg-readout{font-size:.95rem}}.fg-ic-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fg-ic-away{width:100%;padding:.8rem 1rem;border:1px solid var(--color-info);border-radius:var(--radius-md);background:var(--surface-elevated);color:var(--text-secondary)}.fg-ic-away p{margin:0 0 .5rem}.fg-ic-away-title{font-weight:700;color:var(--text-primary)}.fg-ic-stats{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}@media (min-width:720px){.fg-ic-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.fg-ic-stat{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .75rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);min-width:0}.fg-ic-stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.fg-ic-stat-value{font-family:var(--font-mono);font-size:1.35rem;font-weight:700;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-ic-stat-sub{font-family:var(--font-mono);font-size:.75rem;color:var(--text-secondary);overflow-wrap:anywhere}.fg-ic-meter{display:block;height:.4rem;border-radius:999px;background:var(--surface-base);overflow:hidden}.fg-ic-meter-fill{display:block;height:100%;background:var(--accent-green)}.fg-ic-warn{margin:0;color:var(--color-warning);font-weight:600;text-align:center}.fg-ic-panel{width:100%;padding:.8rem 1rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-base)}.fg-ic-panel p{margin:0 0 .5rem}.fg-ic-h{margin:0 0 .6rem;font-size:1rem;color:var(--text-primary)}.fg-ic-incident{padding:.6rem .75rem;margin-bottom:.6rem;border:1px solid var(--color-danger);border-radius:var(--radius-md);background:var(--surface-elevated)}.fg-ic-incident-fixing{border-color:var(--color-info)}.fg-ic-incident-title{font-weight:700;color:var(--text-primary)}.fg-ic-incident-desc{color:var(--text-secondary);font-size:.9rem}.fg-ic-incident-eta{font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary)}.fg-ic-actions{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.4rem}.fg-ic-action{width:100%;text-align:left;font-weight:500}.fg-ic-tried{text-decoration:line-through}.fg-ic-switch{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;padding:.3rem .5rem;border:none;background:none;color:var(--text-primary);font:inherit;font-weight:600;cursor:pointer}.fg-ic-switch:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:var(--radius-sm)}.fg-ic-switch-track{position:relative;width:2.8rem;height:1.5rem;border-radius:999px;background:var(--border-strong);flex-shrink:0}.fg-ic-switch-on .fg-ic-switch-track{background:var(--accent-red)}.fg-ic-switch-thumb{position:absolute;top:.2rem;left:.2rem;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--surface-base);transition:left .15s ease-out}.fg-ic-switch-on .fg-ic-switch-thumb{left:1.5rem}@media (prefers-reduced-motion:reduce){.fg-ic-switch-thumb{transition:none}}.fg-ic-shop{list-style:none;margin:0 0 .5rem;padding:0;display:flex;flex-direction:column;gap:.4rem}.fg-ic-item{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.45rem .6rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-elevated)}.fg-ic-item-text{display:flex;flex-direction:column;min-width:0}.fg-ic-item-name{font-weight:600;color:var(--text-primary)}.fg-ic-item-effect{font-size:.8rem;color:var(--text-secondary)}.fg-ic-buy{flex-shrink:0;min-width:5rem;font-family:var(--font-mono)}.fg-ic-buy:disabled{opacity:1;color:var(--text-secondary);border-style:dashed;background:transparent}.fg-ic-progress{height:.6rem;margin-bottom:.5rem;border-radius:999px;background:var(--surface-elevated);overflow:hidden}.fg-ic-progress-fill{display:block;height:100%;background:var(--accent-primary)}.fg-ic-feed{list-style:none;margin:0 0 .5rem;padding:0;font-size:.85rem;color:var(--text-secondary);display:flex;flex-direction:column;gap:.2rem}.fg-ic-panel-alert{border-color:var(--color-danger);border-left-width:4px}.fg-ic-h:focus{outline:none}.fg-ic-alert{position:fixed;left:0;right:0;margin:0 auto;width:max-content;bottom:max(1rem,env(safe-area-inset-bottom));z-index:30;display:inline-flex;align-items:center;gap:.55rem;min-height:44px;max-width:calc(100vw - 2rem);padding:.45rem 1rem;border:2px solid var(--color-danger);border-radius:999px;background:var(--surface-elevated);color:var(--text-primary);font:inherit;font-weight:600;text-align:left;cursor:pointer;box-shadow:0 0 0 4px color-mix(in srgb,var(--color-danger) 22%,transparent)}.fg-ic-alert:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px}.fg-ic-alert-dot{flex-shrink:0;width:.65rem;height:.65rem;border-radius:50%;background:var(--color-danger);animation:fg-ic-pulse 1.2s ease-in-out infinite}@keyframes fg-ic-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.fg-ic-alert-dot{animation:none}}.fg-ic-pm-report{margin-top:.75rem}.fg-wab-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fg-wab-hot{color:var(--accent-amber)}.fg-wab-hud{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.5rem;gap:.5rem;width:min(100%,32rem)}.fg-wab-stat{display:flex;flex-direction:column;align-items:center;min-width:0}.fg-wab-stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.fg-wab-stat .fg-readout{white-space:nowrap}.fg-wab-paused{font-family:var(--font-mono);font-size:1.4rem;font-weight:700;color:var(--text-secondary)}.fg-wab-editor{width:min(100%,32rem);border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-base);overflow:hidden}.fg-wab-titlebar{display:flex;align-items:center;gap:.4rem;padding:.45rem .75rem;background:var(--surface-elevated);border-bottom:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:.75rem;color:var(--text-secondary)}.fg-wab-dot{width:.6rem;height:.6rem;border-radius:50%;background:var(--border-strong)}.fg-wab-tab{margin-left:.5rem;padding:.1rem .5rem;border-radius:var(--radius-sm);background:var(--surface-base);color:var(--text-primary)}.fg-wab-branch{margin-left:auto;color:var(--accent-primary)}.fg-wab-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px;padding:8px;touch-action:manipulation;-moz-user-select:none;user-select:none;-webkit-user-select:none}.fg-wab-slot{position:relative;display:flex;align-items:stretch;gap:.35rem;min-height:88px;aspect-ratio:5/4;padding:.4rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);color:var(--text-secondary);font:inherit;cursor:crosshair;overflow:hidden;-webkit-tap-highlight-color:transparent}.fg-wab-slot:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-wab-has-bug{border-color:var(--color-danger)}.fg-wab-has-golden{border-color:var(--accent-amber)}.fg-wab-has-feature{border-color:var(--color-success)}.fg-wab-mark-bug,.fg-wab-mark-golden{background:var(--surface-base)}.fg-wab-mark-feature{border-style:dashed}.fg-wab-mark-empty{border-style:dotted}.fg-wab-gutter{font-family:var(--font-mono);font-size:.6rem;line-height:1.5;color:var(--text-secondary);text-align:right;min-width:1.1rem}.fg-wab-code{display:flex;flex-direction:column;gap:.45rem;padding-top:.25rem;flex:1 1}.fg-wab-line{display:block;height:.3rem;border-radius:2px;background:var(--border-subtle)}.fg-wab-w1{width:70%}.fg-wab-w2{width:50%;margin-left:12%}.fg-wab-w3{width:62%}.fg-wab-item{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;animation:fg-wab-in .12s ease-out}.fg-wab-bug{color:var(--color-danger)}.fg-wab-golden{color:var(--accent-amber)}.fg-wab-feature{color:var(--color-success)}.fg-wab-art{width:46%;max-width:3.4rem;height:auto}.fg-wab-tag{font-size:.65rem;letter-spacing:.04em;text-transform:uppercase}.fg-wab-pop,.fg-wab-tag{font-family:var(--font-mono);font-weight:700}.fg-wab-pop{position:absolute;top:.3rem;right:.45rem;font-size:.85rem;color:var(--text-primary);animation:fg-wab-rise .45s ease-out forwards}.fg-wab-key{position:absolute;right:.35rem;bottom:.3rem;font-family:var(--font-mono);font-size:.7rem;background:none;border:none}.fg-wab-key,.fg-wab-pad{color:var(--text-secondary)}.fg-wab-pad{margin-left:.3rem}.fg-wab-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--surface-base);opacity:.92}.fg-wab-count{font-size:3rem;font-weight:700;color:var(--accent-primary)}.fg-wab-count,.fg-wab-note{font-family:var(--font-mono)}.fg-wab-note{margin:0;min-height:1.4em;font-size:.85rem;color:var(--color-warning);text-align:center}@keyframes fg-wab-in{0%{transform:scale(.7);opacity:.4}to{transform:scale(1);opacity:1}}@keyframes fg-wab-rise{0%{transform:translateY(0);opacity:1}to{transform:translateY(-.6rem);opacity:0}}.fg-wab-still .fg-wab-item,.fg-wab-still .fg-wab-pop{animation:none}@media (prefers-reduced-motion:reduce){.fg-wab-item,.fg-wab-pop{animation:none}}.fg-ps-wrap{--ps-row:2.6rem;--ps-gap:3px;display:flex;flex-direction:column;align-items:center;gap:.6rem;width:100%}@media (min-width:640px){.fg-ps-wrap{--ps-row:3rem}}.fg-ps-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fg-ps-hud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.4rem;gap:.4rem;width:min(100%,26rem)}.fg-ps-stat{display:flex;flex-direction:column;align-items:center;min-width:0}.fg-ps-stat-label{font-size:.72rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.fg-ps-stat .fg-readout{white-space:nowrap}.fg-ps-queue{display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));align-items:center;grid-gap:.35rem;gap:.35rem;width:min(100%,26rem);min-height:2.2rem}.fg-ps-queue-label{font-size:.72rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.fg-ps-qcell{display:flex;align-items:center;justify-content:center;min-width:0;min-height:2rem;padding:0 .2rem;border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--text-primary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.fg-ps-qcell.fg-ps-k0,.fg-ps-qcell.fg-ps-k1,.fg-ps-qcell.fg-ps-k2,.fg-ps-qcell.fg-ps-k3{border-style:solid;border-color:var(--ps-layer);background:color-mix(in oklab,var(--ps-layer) 16%,var(--surface-elevated))}.fg-ps-now{margin:0;min-height:1.3em;text-align:center;font-family:var(--font-mono);font-size:.8rem;color:var(--text-primary);overflow-wrap:anywhere}.fg-ps-now,.fg-ps-stage{width:min(100%,26rem)}.fg-ps-start{width:100%;min-height:calc(8 * var(--ps-row) + 7 * var(--ps-gap) + 8px + 1.6rem)}.fg-ps-well-box{display:flex;flex-direction:column;gap:.3rem;width:100%}.fg-ps-well{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(8,var(--ps-row));grid-gap:var(--ps-gap);gap:var(--ps-gap);padding:4px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-base);touch-action:manipulation;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;cursor:pointer}.fg-ps-over{cursor:default}.fg-ps-l0{--ps-layer:var(--color-info)}.fg-ps-l1{--ps-layer:color-mix(in oklab,var(--color-info) 45%,var(--color-danger))}.fg-ps-l2{--ps-layer:var(--accent-amber)}.fg-ps-l3{--ps-layer:var(--color-success)}.fg-ps-k0{--ps-layer:var(--color-info)}.fg-ps-k1{--ps-layer:color-mix(in oklab,var(--color-info) 45%,var(--color-danger))}.fg-ps-k2{--ps-layer:var(--accent-amber)}.fg-ps-k3{--ps-layer:var(--color-success)}.fg-ps-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:0 .15rem;border:1px solid transparent;border-radius:var(--radius-sm);background:color-mix(in oklab,var(--ps-layer) 6%,var(--surface-base));overflow:hidden;line-height:1.15;text-align:center}.fg-ps-block{background:color-mix(in oklab,var(--ps-layer) 20%,var(--surface-elevated));border-color:var(--ps-layer);color:var(--text-primary)}.fg-ps-falling{box-shadow:0 0 0 2px var(--ps-layer)}.fg-ps-ghost{border:1px dashed var(--border-strong)}.fg-ps-jam{background:repeating-linear-gradient(135deg,var(--surface-elevated) 0 6px,var(--surface-base) 6px 12px);border:1px dashed var(--color-danger);color:var(--text-secondary)}.fg-ps-name{font-size:.78rem;font-weight:700}.fg-ps-name,.fg-ps-val{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.fg-ps-val{font-family:var(--font-mono);font-size:.64rem;color:var(--text-secondary)}.fg-ps-block .fg-ps-val{color:var(--text-primary)}.fg-ps-names{font-weight:700}@media (min-width:640px){.fg-ps-name{font-size:.86rem}.fg-ps-val{font-size:.72rem}}.fg-ps-overlay{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;border-radius:var(--radius-md);background:var(--surface-base)}.fg-ps-count{font-size:3rem;color:var(--accent-primary)}.fg-ps-count,.fg-ps-paused{font-family:var(--font-mono);font-weight:700}.fg-ps-paused{font-size:1.4rem;color:var(--text-secondary)}.fg-ps-layers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--ps-gap);gap:var(--ps-gap);padding:0 4px}.fg-ps-layer{padding-top:.2rem;border-top:3px solid var(--ps-layer);font-size:.7rem;color:var(--text-secondary);text-align:center;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fg-ps-pad{display:flex;flex-wrap:wrap;gap:.45rem;width:min(100%,26rem)}.fg-ps-key,.fg-ps-pad{justify-content:center}.fg-ps-key{min-width:48px;min-height:48px;padding:.4rem .6rem;display:inline-flex;align-items:center;touch-action:manipulation}.fg-ps-key-wide{min-width:6.25rem}.fg-ps-icon{width:22px;height:22px}.fg-ps-event{display:flex;flex-direction:column;align-items:center;gap:.3rem;width:min(100%,26rem);min-height:4.2rem;text-align:center}.fg-ps-mini{display:inline-grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:2px;border-radius:var(--radius-sm);width:min(100%,18rem);animation:fg-ps-in .22s ease-out}.fg-ps-mini-ok{border:2px solid var(--color-success)}.fg-ps-mini-bad{border:2px dashed var(--color-danger)}.fg-ps-mini-cell{padding:.1rem .2rem;border-radius:3px;background:color-mix(in oklab,var(--ps-layer) 20%,var(--surface-elevated));font-family:var(--font-mono);font-size:.66rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fg-ps-event-text{font-size:.85rem;line-height:1.35;animation:fg-ps-in .22s ease-out}.fg-ps-ok{color:var(--color-success)}.fg-ps-bad{color:var(--color-danger)}.fg-ps-help,.fg-ps-learn{margin:0;max-width:26rem;text-align:center}@keyframes fg-ps-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.fg-ps-still .fg-ps-event-text,.fg-ps-still .fg-ps-mini{animation:none}@media (prefers-reduced-motion:reduce){.fg-ps-event-text,.fg-ps-mini{animation:none}}@media (forced-colors:active){.fg-ps-block,.fg-ps-mini-cell{border:1px solid CanvasText}.fg-ps-falling{outline:2px solid Highlight}.fg-ps-jam{border-color:GrayText}}.fg-scores-cta{margin:0 0 .75rem}.fg-scores-cta-link{display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;border:1px solid var(--accent-primary);border-radius:999px;color:var(--accent-primary);text-decoration:none;font-weight:600}.fg-scores-cta-link:focus-visible,.fg-scores-cta-link:hover{background:var(--surface-elevated)}.fg-scores-cta-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-tb{padding-top:1rem;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:.6rem;text-align:center}.fg-tb-title{margin:0;font-size:1rem}.fg-tb-subtitle,.fg-tb-title{font-weight:700;color:var(--text-primary)}.fg-tb-subtitle{margin:.25rem 0 0;font-size:.9rem}.fg-tb-line{margin:0}.fg-tb-place{margin:0;min-height:1.2em;color:var(--text-primary);font-weight:600}.fg-tb-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem;margin:0}@media (min-width:560px){.fg-tb-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.fg-tb-stat{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated);padding:.45rem .5rem}.fg-tb-stat dt{font-size:.75rem;color:var(--text-secondary)}.fg-tb-stat dd{margin:0;font-family:var(--font-mono);font-size:1.05rem;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-tb-top{list-style:none;margin:0 auto;padding:0;width:100%;max-width:26rem;display:flex;flex-direction:column;gap:.15rem}.fg-tb-row{display:grid;grid-template-columns:2.2ch 4.5ch 2em minmax(0,1fr);align-items:center;grid-gap:.5rem;gap:.5rem;padding:.2rem .5rem;border-radius:var(--radius-sm);text-align:left;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-tb-row:nth-child(odd){background:var(--surface-elevated)}.fg-tb-rank{color:var(--text-secondary);font-family:var(--font-mono);text-align:right}.fg-tb-initials{font-weight:700;letter-spacing:.12em;color:var(--text-primary)}.fg-tb-flag{display:inline-flex;align-items:center}.fg-tb-score{text-align:right;font-family:var(--font-mono);color:var(--text-primary);overflow-wrap:anywhere}.fg-tb-form{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-top:.25rem}.fg-tb-label{font-weight:600;color:var(--text-primary)}.fg-tb-entry{display:flex;gap:.5rem;align-items:center;justify-content:center;flex-wrap:wrap}.fg-tb-input{width:6.5ch;min-height:44px;padding:.3rem .4rem;font-size:1.25rem;text-align:center;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-base);color:var(--text-primary)}.fg-tb-input::placeholder{color:var(--text-tertiary)}.fg-tb-input:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-tb-help{margin:0;max-width:34rem}.fg-tb-note{margin:0;color:var(--text-primary)}.fg-tb-more{margin:.25rem 0 0;font-size:.88rem}.fg-tb-link{display:inline-flex;align-items:center;min-height:44px;color:var(--text-secondary);text-underline-offset:.2em}.fg-tb-link:focus-visible,.fg-tb-link:hover{color:var(--accent-primary)}.fg-share-wrap{flex-direction:column;gap:.1rem}.fg-share,.fg-share-wrap{display:inline-flex;align-items:center}.fg-share{position:relative;gap:.6rem;min-height:44px;padding:.2rem .4rem;cursor:pointer;color:var(--text-secondary);font-size:.85rem}.fg-share-input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.fg-share-track{position:relative;width:2.6rem;height:1.4rem;border-radius:999px;background:var(--border-strong);flex-shrink:0}.fg-share-track-on{background:var(--accent-primary)}.fg-share-thumb{position:absolute;top:.2rem;left:.2rem;width:1rem;height:1rem;border-radius:50%;background:var(--surface-base);transition:left .15s ease-out}.fg-share-track-on .fg-share-thumb{left:1.4rem}.fg-share-input:focus-visible+.fg-share-track{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-share-label{text-align:left}.fg-share-note{max-width:34rem;text-align:center}@media (prefers-reduced-motion:reduce){.fg-share-thumb{transition:none}}@media (forced-colors:active){.fg-share-track{border:1px solid CanvasText}.fg-share-thumb{background:CanvasText}}.fg-sc{display:flex;flex-direction:column;gap:1.5rem}.fg-sc-tabs,.fg-sc-toggle{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}@media (max-width:640px){.fg-sc-tabs{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:.1rem .1rem .4rem;scrollbar-width:thin}.fg-sc-tabs .fg-sc-tab{flex:0 0 auto}}.fg-sc-tab{min-height:44px;padding:0 .85rem;border:1px solid var(--border-subtle);border-radius:999px;background:var(--surface-elevated);color:var(--text-secondary);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}.fg-sc-tab:hover{border-color:var(--accent-primary);color:var(--text-primary)}.fg-sc-tab:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-sc-tab-on{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--surface-base);text-decoration:underline;text-underline-offset:.25em}.fg-sc-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-elevated);padding:1rem;display:flex;flex-direction:column;gap:.6rem;min-width:0}@media (max-width:480px){.fg-sc-panel{padding:.75rem}}.fg-sc-h2{margin:0;font-size:1.15rem}.fg-sc-h2,.fg-sc-h3{color:var(--text-primary)}.fg-sc-h3{margin:.5rem 0 0;font-size:.95rem}.fg-sc-line{margin:0}.fg-sc-text{margin:0;color:var(--text-secondary);line-height:1.55;max-width:68ch}.fg-sc-play{color:var(--accent-primary);text-underline-offset:.2em}.fg-sc-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem;margin:0}@media (min-width:640px){.fg-sc-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}.fg-sc-tiles-small{grid-template-columns:repeat(3,minmax(0,1fr))}}.fg-sc-tile{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-base);padding:.5rem .6rem;min-width:0}.fg-sc-tile dt{font-size:.75rem;color:var(--text-secondary)}.fg-sc-tile dd{margin:0;font-family:var(--font-mono);font-size:1.1rem;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.fg-sc-record{display:inline-flex;flex-wrap:wrap;gap:.2rem .5rem;align-items:baseline}.fg-sc-windows{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:.75rem;gap:.75rem}@media (min-width:900px){.fg-sc-windows{grid-template-columns:repeat(2,minmax(0,1fr))}}.fg-sc-window{min-width:0}.fg-sc-figure{margin:0;width:100%;max-width:560px}.fg-sc-chart{display:block;width:100%;height:auto;overflow:visible}.fg-sc-axis{stroke:var(--border-strong);stroke-width:1}.fg-sc-bar{fill:var(--accent-primary)}.fg-sc-bar-muted{fill:var(--text-tertiary)}.fg-sc-hit{fill:transparent}.fg-sc-bar-group:hover .fg-sc-bar{opacity:.75}.fg-sc-tick{fill:var(--text-secondary)}.fg-sc-count,.fg-sc-tick{font-family:var(--font-mono);font-size:13px}.fg-sc-count{fill:var(--text-primary);font-weight:700}@media (forced-colors:active){.fg-sc-bar{fill:CanvasText}.fg-sc-bar-muted{fill:GrayText}.fg-sc-count,.fg-sc-tick{fill:CanvasText}.fg-sc-axis{stroke:CanvasText}}.fg-sc-table-toggle{display:inline-flex;align-items:center;min-height:44px;cursor:pointer;color:var(--text-secondary);font-size:.85rem}.fg-sc-table-toggle:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-sc-table-wrap{margin-top:.25rem}.fg-sc-table{border-collapse:collapse;font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-sc-table td,.fg-sc-table th{padding:.2rem .75rem .2rem 0;text-align:left;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.fg-sc-table th{color:var(--text-secondary);font-weight:600}.fg-sc-countries{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.fg-sc-country{display:inline-flex;gap:.35rem;align-items:center;padding:.2rem .6rem;border:1px solid var(--border-subtle);border-radius:999px;background:var(--surface-base);font-size:.85rem}.fg-sc-busiest{margin:0;padding-left:1.5rem;display:flex;flex-direction:column;gap:.2rem;color:var(--text-primary)}.fg-sc-busy{padding-left:.25rem}.fg-sc-busy>span+span{margin-left:.5rem}.fg-sc-notes{align-items:flex-start}.fg-dash,.fg-dash-top{display:grid;grid-gap:1rem;gap:1rem;min-width:0}@media (min-width:900px){.fg-dash-top{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}.fg-dash-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-elevated);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.8rem;min-width:0}@media (max-width:480px){.fg-dash-panel{padding:.8rem}}.fg-dash-pulse{background:radial-gradient(120% 90% at 0 0,color-mix(in oklab,var(--accent-primary) 10%,transparent),transparent 60%),var(--surface-elevated)}.fg-dash-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem .75rem}.fg-dash-h2{margin:0;font-size:1.05rem}.fg-dash-h2,.fg-dash-h3{color:var(--text-primary)}.fg-dash-h3{margin:.25rem 0 0;font-size:.9rem}.fg-dash-cap{margin:0 0 .35rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.fg-dash-cap,.fg-dash-live{color:var(--text-secondary)}.fg-dash-live{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem}.fg-dash-live-dot{width:8px;height:8px;border-radius:50%;background:var(--color-success);box-shadow:0 0 0 0 color-mix(in oklab,var(--color-success) 60%,transparent);animation:fg-dash-beat 2.4s ease-out infinite}@keyframes fg-dash-beat{0%{box-shadow:0 0 0 0 color-mix(in oklab,var(--color-success) 55%,transparent)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}@media (prefers-reduced-motion:reduce){.fg-dash-live-dot{animation:none}}.fg-dash-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem;gap:.6rem;margin:0}@media (min-width:640px){.fg-dash-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}.fg-dash-kpi{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-base);padding:.65rem .75rem;min-width:0}.fg-dash-kpi dt{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary)}.fg-dash-kpi dd{margin:.3rem 0 0;display:flex;flex-direction:column;gap:.35rem;min-width:0}.fg-dash-kpi-value{font-family:var(--font-mono);font-size:clamp(1.25rem,3.6vw,1.7rem);line-height:1.1;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.fg-dash-kpi-sub{font-size:.75rem;color:var(--text-tertiary);overflow-wrap:anywhere}.fg-dash-meter{display:block;height:6px;border-radius:999px;background:color-mix(in oklab,var(--border-subtle) 80%,transparent);overflow:hidden}.fg-dash-meter-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-primary),var(--color-success));transition:width .5s ease}.fg-dash-card .fg-dash-meter-fill{background:var(--glyph-accent,var(--accent-primary))}@media (prefers-reduced-motion:reduce){.fg-dash-meter-fill{transition:none}}.fg-dash-dots{display:flex;flex-wrap:wrap;gap:3px}.fg-dash-dot{width:9px;height:9px;border-radius:2px;background:var(--border-subtle)}.fg-dash-dot-on{background:var(--glyph-accent,var(--accent-primary))}.fg-dash-flags{display:flex;flex-wrap:wrap;gap:.3rem;font-size:1.05rem}.fg-dash-spark{margin:0;min-width:0;flex:1 1 auto;display:flex;flex-direction:column;min-height:118px}.fg-dash-spark-svg{display:block;width:100%;flex:1 1 auto;height:0;min-height:72px}.fg-dash-spark-hit{fill:transparent}.fg-dash-spark-all{fill:color-mix(in oklab,var(--text-tertiary) 35%,transparent)}.fg-dash-spark-won{fill:var(--accent-primary)}.fg-dash-spark-svg g:hover .fg-dash-spark-all{fill:var(--text-secondary)}.fg-dash-spark-axis{display:flex;justify-content:space-between;font-size:.7rem;color:var(--text-tertiary);margin-top:.25rem}.fg-dash-side{gap:.6rem}.fg-dash-clock{padding-bottom:.6rem;border-bottom:1px solid var(--border-subtle)}.fg-dash-clock p{margin:0}.fg-dash-clock-time{font-size:clamp(2rem,7vw,2.6rem);line-height:1.05;color:var(--accent-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em}.fg-dash-highlights{list-style:none;margin:0;padding:0;display:grid;grid-gap:.45rem;gap:.45rem}.fg-dash-hl{display:grid;grid-gap:.1rem;gap:.1rem;padding:.4rem .6rem;border-left:3px solid var(--glyph-accent,var(--accent-amber));border-radius:var(--radius-sm);background:var(--surface-base);min-width:0}.fg-dash-hl-label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.fg-dash-hl-name{color:var(--text-primary);font-weight:600;text-decoration:none;overflow-wrap:anywhere}a.fg-dash-hl-name:focus-visible,a.fg-dash-hl-name:hover{text-decoration:underline;text-underline-offset:.2em}.fg-dash-hl-sub{font-size:.78rem;color:var(--text-secondary)}.fg-dash-empty{margin:0;color:var(--text-secondary);line-height:1.55}.fg-dash-you-grid{display:grid;grid-gap:1rem;gap:1rem;align-items:center;min-width:0}@media (min-width:640px){.fg-dash-you-grid{grid-template-columns:140px minmax(0,1fr)}.fg-dash-heat-wrap{grid-column:1/-1}}@media (min-width:1100px){.fg-dash-you-grid{grid-template-columns:140px minmax(0,1fr) auto}.fg-dash-heat-wrap{grid-column:auto}}.fg-dash-ring-wrap{display:grid;justify-items:center;grid-gap:.2rem;gap:.2rem}.fg-dash-ring{width:120px;height:120px}.fg-dash-ring-track{fill:none;stroke:var(--border-subtle);stroke-width:10}.fg-dash-ring-fill{fill:none;stroke:var(--accent-primary);stroke-width:10;stroke-linecap:round;transition:stroke-dasharray .6s ease}@media (prefers-reduced-motion:reduce){.fg-dash-ring-fill{transition:none}}.fg-dash-ring-n{fill:var(--text-primary);font-family:var(--font-mono);font-size:24px;text-anchor:middle;dominant-baseline:middle}.fg-dash-ring-sub{fill:var(--text-secondary);font-size:10px;text-anchor:middle}.fg-dash-kpis-you{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:640px){.fg-dash-kpis-you{grid-template-columns:repeat(2,minmax(0,1fr))}}.fg-dash-heat-wrap{margin:0;min-width:0}.fg-dash-heat{--cell:13px;display:grid;grid-template-rows:repeat(7,var(--cell));grid-auto-flow:column;grid-auto-columns:var(--cell);grid-gap:3px;gap:3px;overflow-x:auto;padding-bottom:2px}.fg-dash-heat-cell{display:inline-block;width:var(--cell,13px);height:var(--cell,13px);border-radius:3px;background:var(--surface-base);border:1px solid var(--border-subtle)}.fg-dash-heat-cell[data-level="1"]{background:color-mix(in oklab,var(--accent-primary) 30%,var(--surface-base));border-color:transparent}.fg-dash-heat-cell[data-level="2"]{background:color-mix(in oklab,var(--accent-primary) 52%,var(--surface-base));border-color:transparent}.fg-dash-heat-cell[data-level="3"]{background:color-mix(in oklab,var(--accent-primary) 75%,var(--surface-base));border-color:transparent}.fg-dash-heat-cell[data-level="4"]{background:var(--accent-primary);border-color:transparent}.fg-dash-heat-pre{opacity:.35;border-style:dashed}.fg-dash-heat-today{outline:1px solid var(--text-primary);outline-offset:1px}.fg-dash-heat-legend{display:flex;align-items:center;gap:3px;margin-top:.4rem}.fg-dash-heat-legend>span:first-child{margin-right:.3rem}.fg-dash-heat-legend>span:last-child{margin-left:.3rem}.fg-dash-places{display:grid;grid-gap:.4rem;gap:.4rem}.fg-dash-places p{margin:0}.fg-dash-place-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}@media (min-width:640px){.fg-dash-place-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.fg-dash-place{display:flex;justify-content:space-between;gap:.5rem;padding:.35rem .6rem;border-left:3px solid var(--glyph-accent,var(--accent-primary));border-radius:var(--radius-sm);background:var(--surface-base);min-width:0}.fg-dash-place-name{color:var(--text-primary);text-decoration:none;overflow-wrap:anywhere}.fg-dash-place-name:focus-visible,.fg-dash-place-name:hover{text-decoration:underline;text-underline-offset:.2em}.fg-dash-place-n{color:var(--text-primary);white-space:nowrap}.fg-dash-games{display:flex;flex-direction:column;gap:.8rem;min-width:0}.fg-dash-grid{list-style:none;margin:0;padding:0;display:grid;grid-gap:.75rem;gap:.75rem}@media (min-width:640px){.fg-dash-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.fg-dash-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.fg-dash-card{display:flex;flex-direction:column;gap:.55rem;padding:.85rem;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:radial-gradient(130% 100% at 0 0,color-mix(in oklab,var(--glyph-accent) 12%,transparent),transparent 60%),var(--surface-base);min-width:0;transition:border-color .2s ease,transform .2s ease}.fg-dash-card:focus-within,.fg-dash-card:hover{border-color:var(--glyph-accent);transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){.fg-dash-card{transition:none}.fg-dash-card:focus-within,.fg-dash-card:hover{transform:none}}.fg-dash-card-top{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .6rem}.fg-dash-card-name{margin:0;flex:1 1 8rem;font-size:1rem;color:var(--text-primary)}.fg-dash-chip{font-size:.7rem;padding:.15rem .45rem;border-radius:999px;border:1px solid var(--border-strong);color:var(--text-secondary);white-space:nowrap}.fg-dash-chip-won{border-color:var(--color-success);color:var(--color-success)}.fg-dash-chip-streak{border-color:var(--accent-amber);color:var(--accent-amber)}.fg-dash-card-board{display:grid;grid-gap:.3rem;gap:.3rem}.fg-dash-card-mode{margin:0;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.fg-dash-card-line{font-size:.85rem;color:var(--text-secondary)}.fg-dash-card-line,.fg-dash-card-row{margin:0;display:flex;justify-content:space-between;gap:.5rem}.fg-dash-card-row{align-items:baseline;font-size:.8rem;min-width:0}.fg-dash-card-key{color:var(--text-tertiary);flex:none}.fg-dash-card-val{color:var(--text-primary);text-align:right;overflow-wrap:anywhere}.fg-dash-card-links{margin:auto 0 0;padding-top:.5rem;border-top:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem}.fg-dash-card-cta{color:var(--glyph-accent,var(--accent-primary));font-weight:600;text-decoration:none}.fg-dash-card-cta:focus-visible,.fg-dash-card-cta:hover{text-decoration:underline;text-underline-offset:.2em}.fg-dash-month{display:grid;grid-gap:1rem;gap:1rem}@media (min-width:760px){.fg-dash-month{grid-template-columns:repeat(2,minmax(0,1fr))}}.fg-dash-month p{margin:0}.fg-dash-rank{list-style:none;margin:0;padding:0;display:grid;grid-gap:.45rem;gap:.45rem}.fg-dash-rank-row{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr) auto;align-items:center;grid-gap:.6rem;gap:.6rem}.fg-dash-rank-name{color:var(--text-primary);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem}a.fg-dash-rank-name:focus-visible,a.fg-dash-rank-name:hover{text-decoration:underline;text-underline-offset:.2em}.fg-dash-rank-bar{display:block;height:8px;border-radius:999px;background:color-mix(in oklab,var(--border-subtle) 80%,transparent);overflow:hidden}.fg-dash-rank-fill{display:block;height:100%;border-radius:inherit;background:var(--glyph-accent,var(--accent-primary))}.fg-dash-rank-n{font-size:.8rem;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:420px){.fg-dash-rank-row{grid-template-columns:minmax(0,8rem) minmax(0,1fr) auto}}.fg-view{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.35rem;margin-bottom:-.4rem}.fg-view-btn{min-height:36px;min-width:36px;padding:.2rem .6rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--surface-base);color:var(--text-secondary);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.fg-view-btn:hover:not(:disabled){border-color:var(--accent-primary);color:var(--text-primary)}.fg-view-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.fg-view-btn:disabled{opacity:.45;cursor:not-allowed}.fg-view-btn[aria-pressed=true]{border-color:var(--accent-primary);color:var(--accent-primary)}.fg-view-wide{margin-left:.35rem}.fg-view-pct{min-width:3.2rem;text-align:center;font-size:.78rem;color:var(--text-tertiary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fg-board-frame{width:100%;max-width:100%}.fg-board-frame.fg-board-zoomed{overflow-x:auto;padding-bottom:.25rem;position:relative}.fg-board-zoom{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%}.fg-shell-wide .fg-board-wrap{width:min(calc(100vw - 3rem),1400px);max-width:none;align-self:center}.fg-board-full .fg-stp-board,.fg-board-full .fg-stp-start,.fg-shell-wide .fg-stp-board,.fg-shell-wide .fg-stp-start{max-width:100%}.fg-board-full{width:100%;max-width:none;height:100%;overflow:auto;padding:1.5rem;background:var(--canvas-primary);justify-content:center}.fg-button-next{display:inline-flex;align-items:center;gap:.45rem;text-decoration:none;background:var(--glyph-accent,var(--accent-primary));border-color:var(--glyph-accent,var(--accent-primary));color:var(--canvas-primary);box-shadow:0 0 0 3px color-mix(in oklab,var(--glyph-accent,var(--accent-primary)) 25%,transparent)}.fg-button-next:focus-visible,.fg-button-next:hover{filter:brightness(1.08)}