.home-dash2{display:block;padding:0}.dash-head2{position:relative;box-sizing:border-box;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:14px 20px 24px}.dash-head2-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.dash-head2-greet{min-width:0}.dash-greet{font-size:13px;font-weight:500;letter-spacing:.02em;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-change{color:var(--ui-accent);font-size:12px;text-decoration:underline}.dash-title{margin:2px 0 0;font-size:24px;font-weight:700;letter-spacing:-.02em}.dash-head2 .nav-icon{flex:0 0 auto;width:44px;height:44px;border:1px solid var(--ui-border);background:var(--ui-panel-bg);color:var(--ui-fg);box-shadow:var(--ui-shadow)}.dash-head2 .nav-icon:hover{border-color:var(--ui-accent)}.dash-stat-strip{display:flex;gap:10px;margin-top:14px}.dash-stat-chip{flex:1;display:flex;align-items:center;gap:9px;padding:11px 13px;border-radius:16px;border:1px solid var(--ui-border);background:var(--panel-grad, none),var(--ui-panel-bg);box-shadow:var(--ui-shadow);color:var(--ui-fg);min-width:0}.dash-stat-ico{flex:0 0 auto}.dash-stat-flame{color:var(--ui-warn)}.dash-stat-val{font-size:20px;font-weight:800;line-height:1}.dash-stat-label{font-size:11px;opacity:.82}.dash-body{display:flex;flex-direction:column;gap:16px;margin-top:-12px;box-sizing:border-box;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:20px;padding-right:20px}@media (width >= 900px){.dash-head2{width:100%;border-radius:22px;padding:20px 26px 26px;max-width:640px;margin-left:auto;margin-right:auto}.dash-title{font-size:26px}.dash-body{max-width:640px;margin:-18px auto 0;padding-left:0;padding-right:0}}.dash-ascent{padding:16px}.dash-ascent-head{font-weight:700;font-size:15px;margin-bottom:12px}.dash-ascent .pc-card{padding:0;border:0;border-radius:0;background:none;box-shadow:none}.dash-ascent .pc-title{display:none}.pc-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.pc-title{font-weight:800;font-size:15px}.pc-ranges{display:inline-flex;gap:4px;padding:3px;border:1px solid var(--ui-border, #d4d4d4);border-radius:999px;background:var(--ui-panel-bg, #fff)}.pc-range{border:none;border-radius:999px;padding:4px 10px;background:transparent;color:var(--ui-muted, #6b7280);font:inherit;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.pc-range.on{background:var(--ui-accent, #16a34a);color:var(--ui-on-accent, #fff)}.pc-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:-2px;padding:2px}.pc-track::-webkit-scrollbar{display:none}.pc-card{flex:0 0 100%;scroll-snap-align:start;box-sizing:border-box;display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--ui-border, #d4d4d4);border-radius:14px;background:var(--panel-grad, none),var(--ui-panel-bg, #fff);box-shadow:var(--ui-shadow)}@media (width >= 900px){.pc-card{flex-basis:440px}}.pc-head{display:flex;align-items:center;gap:8px}.pc-ico{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;color:var(--ui-accent, #16a34a);background:color-mix(in srgb,var(--ui-accent, #16a34a) 14%,var(--ui-panel-bg, #fff))}.pc-ico svg{width:16px;height:16px}.pc-name{font-weight:800}.pc-rating{margin-left:auto;font-size:20px;font-weight:800;color:var(--ui-accent, #16a34a)}.pc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pc-stat{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border:1px solid var(--ui-border, #d4d4d4);border-radius:10px}.pc-stat b{font-size:19px;font-weight:800}.pc-stat b.pos{color:var(--ui-win)}.pc-stat b.neg{color:var(--ui-danger)}.pc-stat span{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--ui-muted, #6b7280)}.pc-stat span svg{width:12px;height:12px;flex:0 0 auto}.pc-graph{position:relative;height:56px}.pc-graph svg{width:100%;height:100%}.pc-graph-cap{position:absolute;top:0;left:4px;z-index:1;font-size:10px;font-weight:700;letter-spacing:.02em;color:var(--ui-muted, #6b7280);pointer-events:none}.pc-graph-line{fill:none;stroke:var(--ui-accent, #16a34a);stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--ui-accent, #16a34a) 55%,transparent))}.pc-graph-fill{fill:color-mix(in srgb,var(--ui-accent, #16a34a) 12%,transparent);stroke:none}.pc-graph-plot{position:absolute;top:0;right:0;bottom:0;left:0;cursor:crosshair;touch-action:none}.pc-graph-cursor{position:absolute;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--ui-accent, #16a34a) 60%,transparent);transform:translate(-.5px);pointer-events:none}.pc-graph-dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--ui-accent, #16a34a);box-shadow:0 0 6px color-mix(in srgb,var(--ui-accent, #16a34a) 70%,transparent);transform:translate(-50%,-50%);pointer-events:none}.pc-graph-tip{position:absolute;top:-2px;transform:translate(-50%,-100%);padding:2px 6px;border:1px solid color-mix(in srgb,var(--ui-accent, #16a34a) 40%,transparent);border-radius:6px;background:var(--ui-panel-bg, #0b1220);color:var(--ui-text, #e5e7eb);font-size:11px;font-weight:600;white-space:nowrap;pointer-events:none;z-index:3}.pc-graph-tip b{color:var(--ui-accent, #16a34a)}.pc-graph-minmax{position:absolute;top:0;right:4px;bottom:0;left:4px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;font-size:10px;font-weight:700;color:var(--ui-muted, #6b7280);pointer-events:none}.pc-nogames{height:56px;display:grid;place-items:center;font-size:13px;color:var(--ui-muted, #6b7280)}.pc-dots{display:flex;justify-content:center;gap:6px;margin-top:8px}.pc-dot{width:8px;height:8px;padding:0;border:none;border-radius:50%;background:var(--ui-border, #d4d4d4);cursor:pointer}.pc-dot.on{background:var(--ui-accent, #16a34a)}.dash-section{display:flex;flex-direction:column;gap:8px}.dash-section-head{display:flex;align-items:center;justify-content:space-between;font-weight:800;color:var(--ui-fg, #1c1c1c)}.dash-viewall2{display:inline-flex;align-items:center;gap:2px;font-size:13px}.dash-viewall2 svg{width:14px;height:14px}.dash-games2{display:flex;flex-direction:column;gap:9px}.dash-game{display:flex;align-items:center;gap:11px;padding:12px 13px;border:1px solid var(--ui-border, #d4d4d4);border-radius:16px;background:var(--panel-grad, none),var(--ui-panel-bg, #fff);box-shadow:var(--ui-shadow);color:var(--ui-fg, #1c1c1c);font:inherit;cursor:pointer;text-align:left;width:100%;box-sizing:border-box}.dash-game:hover{border-color:var(--ui-accent, #16a34a)}.dash-game .gr-avatar-sm{width:34px;height:34px}.dash-game-badge{flex:0 0 auto;font-size:10px;font-weight:800;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.dash-game-badge.won{background:color-mix(in srgb,var(--ui-win, #16a34a) 18%,transparent);color:var(--ui-win, #16a34a)}.dash-game-badge.lost{background:color-mix(in srgb,var(--ui-danger, #ca3431) 18%,transparent);color:var(--ui-danger, #ca3431)}.dash-game-badge.draw{background:color-mix(in srgb,var(--ui-muted, #6b7280) 20%,transparent);color:var(--ui-muted, #6b7280)}.dash-game-id{flex:1;display:flex;flex-direction:column;min-width:0}.dash-game-name{font-weight:600;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-game-flag{margin-right:4px;font-weight:400}.dash-game-meta{font-size:12px;color:var(--ui-muted, #6b7280);margin-top:1px}.dash-game-delta2{flex:0 0 auto;text-align:right}.dash-game-delta{display:block;font-size:13px;font-weight:700}.dash-game-delta.pos{color:var(--ui-win)}.dash-game-delta.neg{color:var(--ui-danger)}.dash-game-delta-label{font-size:11px;color:var(--ui-muted, #6b7280)}.dash-game-chev{flex:0 0 auto;width:13px;height:13px;color:var(--ui-muted, #6b7280)}@media (width < 480px){.pc-bar{flex-wrap:wrap}}.onboard{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;max-width:420px;margin:10vh auto 0;padding:28px 22px;border:1px solid var(--ui-border, #d4d4d4);border-radius:var(--radius-card, 18px);background:var(--panel-grad, none),var(--ui-panel-bg, #fff);box-shadow:var(--ui-shadow),var(--ui-glow)}.onboard-title{margin:0;font-size:22px;font-weight:800;color:var(--ui-fg, #1c1c1c)}.onboard-sub{margin:0;color:var(--ui-muted, #6b7280);line-height:1.5}.onboard-label{align-self:flex-start;font-weight:700;font-size:13px;color:var(--ui-fg, #1c1c1c)}.onboard-err{color:var(--ui-danger);font-weight:600;font-size:13px}.onboard-cta{width:100%}.onboard-skip{margin-top:2px}.hero-connect{margin-top:6px}.dash-continue{display:flex;align-items:center;gap:13px;padding:15px;width:100%;cursor:pointer;font:inherit;color:var(--ui-fg, #1c1c1c);text-align:left}.dash-continue-ico{flex:0 0 auto;width:46px;height:46px;display:grid;place-items:center;border-radius:14px;color:var(--ui-accent, #16a34a);background:var(--ui-wash, #e9f7ee)}.dash-continue-body{flex:1;min-width:0}.dash-continue-eyebrow{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ui-accent, #16a34a)}.dash-continue-name{font-weight:700;font-size:15px;color:var(--ui-fg, #1c1c1c);margin-top:1px}.dash-continue-sub{color:var(--ui-muted, #6b7280);font-size:12.5px;margin-top:6px}.dash-continue .mastery-bar{margin-top:8px;max-width:none}@media (width >= 900px){.dash-game{padding:16px;gap:12px}.dash-game-name{font-size:16px}.dash-game-meta{font-size:13px}.dash-game-delta{font-size:20px}}.daily-card2{padding:16px}.daily-card2-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.daily-card2-heading{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px}.daily-card2-ico{display:inline-flex;width:26px;height:26px;border-radius:8px;background:var(--ui-wash, #e9f7ee);color:var(--ui-accent, #16a34a);align-items:center;justify-content:center}.daily-streak2{color:var(--ui-warn);background:color-mix(in srgb,var(--ui-warn) 14%,transparent);flex:0 0 auto}.daily-card2-body{display:flex;gap:14px}.daily-card2-board{width:120px;flex:0 0 auto;border-radius:14px;overflow:hidden;box-shadow:var(--ui-shadow)}.daily-card2-info{flex:1;min-width:0;display:flex;flex-direction:column}.daily-card2-turn{font-size:13px;color:var(--ui-muted, #6b7280);font-weight:500}.daily-card2-name{font-size:16px;font-weight:700;margin-top:2px;letter-spacing:-.01em}.daily-card2-chips{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.daily-card2-chip-muted{background:var(--ui-bg, #f2efe6);color:var(--ui-muted, #6b7280)}.daily-card2-cta,.daily-card2-done{margin-top:auto;align-self:stretch;text-align:center}.daily-card2-done{font-weight:700;color:var(--ui-muted, #6b7280);font-size:14px;padding-top:6px}.home-chevron-ico{flex:0 0 auto;width:15px;height:15px;color:var(--ui-muted, #6b7280)}.learn-head{position:relative;box-sizing:border-box;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:14px 20px 22px}.learn-head-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.learn-head-titlewrap{flex:1;min-width:0}.learn-head .nav-icon{flex:0 0 auto;width:44px;height:44px;border:1px solid var(--ui-border);background:var(--ui-panel-bg);color:var(--ui-fg);box-shadow:var(--ui-shadow)}.learn-head .nav-icon:hover{border-color:var(--ui-accent)}.learn-head-eyebrow{font-size:13px;font-weight:500;opacity:.82}.learn-head-title{margin:2px 0 0;font-size:24px}.learn-head-sub{margin:4px 0 0;font-size:13px;opacity:.85;max-width:320px}@media (width >= 900px){.learn-head{width:100%;margin-left:0;margin-right:0;border-radius:22px;padding:20px 26px 24px}.learn-head-title{font-size:26px}}.learn-trails{display:flex;flex-direction:column;gap:14px}@media (width >= 900px){.learn-trails{width:100%;max-width:640px;margin:0 auto}}.trail-card{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--ui-border, #e6e1d5);border-radius:var(--radius-card, 22px);background:linear-gradient(135deg,color-mix(in srgb,var(--tile) 12%,transparent),transparent 60%),var(--ui-panel-bg, #fff);box-shadow:var(--ui-shadow);cursor:pointer;transition:transform var(--ui-transition),border-color var(--ui-transition)}@media (hover: hover){.trail-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--tile) 55%,var(--ui-border))}}.trail-card-row{display:flex;align-items:center;gap:14px}.trail-tile{width:44px;height:44px;flex:0 0 auto;border-radius:13px}.trail-tile svg{width:22px;height:22px}.trail-body{flex:1;min-width:0}.trail-title{font-weight:700;font-size:16px}.trail-sub{font-size:12px;color:var(--ui-muted, #7a756a);margin-top:1px}.trail-stat{flex:0 0 auto;text-align:right}.trail-stat-val{font-size:13px;font-weight:800}.trail-stat-label{font-size:10px;color:var(--ui-muted, #7a756a)}.trail-chevron{flex:0 0 auto;width:15px;height:15px;color:var(--ui-muted, #7a756a)}.trail-bar{margin-top:0;max-width:none}.shell-tab{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 6px;border:none;border-radius:12px;background:none;color:var(--ui-muted, #6b7280);font:inherit;font-size:11px;font-weight:700;cursor:pointer;transition:color var(--ui-transition, .16s ease),background var(--ui-transition, .16s ease),box-shadow var(--ui-transition, .16s ease)}.shell-tab svg{width:22px;height:22px}.shell-tab:hover{color:var(--ui-fg, #1c1c1c)}.shell-tab.active{color:var(--ui-accent, #16a34a);background:color-mix(in srgb,var(--ui-accent, #16a34a) 12%,transparent);box-shadow:var(--ui-glow)}.shell-rail{display:none}.shell-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;justify-content:space-around;gap:2px;padding:3px 8px calc(3px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--ui-panel-bg, #fff) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--ui-border, #d4d4d4)}.shell-tabbar .shell-tab{flex:1;max-width:120px}.shell-content{padding-bottom:72px}@media (width >= 900px){.shell-tabbar,.nav-settings{display:none}.shell-content{padding-bottom:0;margin-left:92px}.shell-rail .shell-tab svg{width:26px;height:26px}.shell-rail .shell-tab{font-size:12px;padding:10px 6px}.shell-rail{position:fixed;top:0;left:0;bottom:0;z-index:40;width:92px;box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:14px 10px;background:var(--ui-panel-bg, #fff);border-right:1px solid var(--ui-border, #d4d4d4)}.shell-rail-spacer{flex:1}.shell-brand{width:50px;height:50px;margin:0 auto 10px;display:grid;place-items:center;border:none;border-radius:14px;cursor:pointer;color:var(--ui-on-accent, #fff);background:linear-gradient(135deg,var(--brand-grad-a, #16a34a),var(--brand-grad-b, #0f766e));box-shadow:var(--ui-glow)}.shell-brand svg{width:24px;height:24px}}.route-loading{display:flex;align-items:center;justify-content:center;min-height:60svh}.route-spinner{width:32px;height:32px;border-radius:50%;border:3px solid var(--ui-border, rgb(127 127 127 / 25%));border-top-color:var(--ui-accent, #16a34a);animation:route-spin .8s linear infinite}@keyframes route-spin{to{transform:rotate(360deg)}}:root{--radius-card: 22px;--radius-tile: 14px;--ui-transition: .16s cubic-bezier(.4, 0, .2, 1);--brand-grad-a: #12a150;--brand-grad-b: #0d7a3c;--tile-beginner: #16a34a;--tile-openings: #3b82f6;--tile-counters: #8b5cf6;--tile-endgames: #f59e0b;--tile-puzzles: #f43f5e;--tile-analyze: #14b8a6;--font-sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", "Roboto", sans-serif;--font-mono: "Geist Mono", ui-monospace, "SFMono-Regular", "Menlo", monospace;--ui-header-bg: radial-gradient(125% 115% at 12% -22%, color-mix(in srgb, var(--ui-accent) 18%, transparent), transparent 58%), var(--ui-bg);--ui-wash: #e9f7ee;--ui-wash-border: #b7e4c7;--ui-danger: #d63333;--ui-danger-wash: #fbe9e9;--ui-warn: #e0a000}[data-ui-theme=light]{--ui-bg: #f2efe6;--ui-fg: #26241f;--ui-panel-bg: #fbfbf7;--ui-border: #e6e1d5;--ui-accent: #12a150;--ui-on-accent: #fff;--ui-win: #12a150;--ui-muted: #7a756a;--ui-shadow: 0 1px 3px rgb(38 36 31 / 8%), 0 1px 2px -1px rgb(38 36 31 / 8%);--ui-shadow-lg: 0 10px 20px -6px rgb(38 36 31 / 14%), 0 4px 8px -4px rgb(38 36 31 / 10%);--ui-glow: 0 6px 16px rgb(18 161 80 / 16%);--ui-glow-strong: 0 8px 22px rgb(18 161 80 / 24%);--bd-checker: color-mix(in srgb, var(--sq-dark-color, #769656) 7%, transparent);--bd-glow: color-mix(in srgb, var(--ui-accent, #12a150) 15%, transparent);--bd-line: color-mix(in srgb, var(--ui-accent, #12a150) 24%, transparent);--panel-grad: linear-gradient(160deg, color-mix(in srgb, var(--ui-accent, #12a150) 5%, transparent), transparent 55%)}[data-ui-theme=dark]{--ui-bg: #14120e;--ui-fg: #ece7dc;--ui-panel-bg: #1e1b15;--ui-border: #322d24;--ui-accent: #2fb85f;--ui-on-accent: #04150a;--ui-win: #2fb85f;--ui-muted: #9a9384;--ui-shadow: 0 1px 2px rgb(0 0 0 / 45%), 0 8px 22px rgb(0 0 0 / 40%);--ui-shadow-lg: 0 14px 34px rgb(0 0 0 / 58%);--ui-glow: 0 0 16px rgb(47 184 95 / 26%);--ui-glow-strong: 0 0 22px rgb(47 184 95 / 40%);--ui-wash: rgb(47 184 95 / 14%);--ui-wash-border: rgb(47 184 95 / 32%);--ui-danger-wash: rgb(214 51 51 / 16%);--bd-checker: color-mix(in srgb, var(--sq-dark-color, #769656) 9%, transparent);--bd-glow: color-mix(in srgb, var(--ui-accent, #2fb85f) 11%, transparent);--bd-line: color-mix(in srgb, var(--ui-accent, #2fb85f) 17%, transparent);--panel-grad: linear-gradient(160deg, color-mix(in srgb, var(--ui-accent, #2fb85f) 9%, transparent), transparent 55%)}html{background:var(--ui-bg, #f5f5f4);color:var(--ui-fg, #1c1c1c);font-family:var(--font-sans, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif);scrollbar-gutter:stable}[data-board-theme=green]{--sq-light-color: #eeeed2;--sq-dark-color: #769656}[data-board-theme=brown]{--sq-light-color: #f0d9b5;--sq-dark-color: #b58863;--brand-grad-a: #f0c36c;--brand-grad-b: #d29a4a}[data-board-theme=blue]{--sq-light-color: #dee3e6;--sq-dark-color: #4b7399;--brand-grad-a: #7cc4f0;--brand-grad-b: #4a9fd8}[data-board-theme=slate]{--sq-light-color: #d8dee4;--sq-dark-color: #5c6b7a;--brand-grad-a: #b7c9da;--brand-grad-b: #8299ad}[data-board-theme=purple]{--sq-light-color: #e6dff0;--sq-dark-color: #8e7cc3;--brand-grad-a: #c4b5fd;--brand-grad-b: #8b5cf6}[data-board-theme=rose]{--sq-light-color: #f3dde0;--sq-dark-color: #c16a78;--brand-grad-a: #f9a8c0;--brand-grad-b: #e5648a}[data-board-theme=teal]{--sq-light-color: #dceeeb;--sq-dark-color: #4f9184;--brand-grad-a: #5eead4;--brand-grad-b: #14b8a6}[data-board-theme=contrast]{--sq-light-color: #fff;--sq-dark-color: #000}[data-ui-theme=light][data-board-theme=brown]{--ui-bg: #f6f4f0;--ui-border: #e8e2d7;--ui-accent: #a4703a}[data-ui-theme=dark][data-board-theme=brown]{--ui-bg: #0f0c09;--ui-panel-bg: #1d1712;--ui-border: #382f26;--ui-accent: #eab364;--ui-on-accent: #1a1206;--ui-glow: 0 0 14px rgb(234 179 100 / 28%);--ui-glow-strong: 0 0 20px rgb(234 179 100 / 45%)}[data-ui-theme=light][data-board-theme=blue]{--ui-bg: #f1f4f6;--ui-border: #dfe5ea;--ui-accent: #35719e}[data-ui-theme=dark][data-board-theme=blue]{--ui-bg: #0a0d10;--ui-panel-bg: #141a20;--ui-border: #2a333c;--ui-accent: #6db6e8;--ui-on-accent: #06111a;--ui-glow: 0 0 14px rgb(109 182 232 / 28%);--ui-glow-strong: 0 0 20px rgb(109 182 232 / 45%)}[data-ui-theme=light][data-board-theme=slate]{--ui-bg: #f2f3f5;--ui-border: #e1e5e8;--ui-accent: #55697c}[data-ui-theme=dark][data-board-theme=slate]{--ui-bg: #0b0d0f;--ui-panel-bg: #171a1e;--ui-border: #2e343a;--ui-accent: #a7bccf;--ui-on-accent: #0b1117;--ui-glow: 0 0 14px rgb(167 188 207 / 26%);--ui-glow-strong: 0 0 20px rgb(167 188 207 / 42%)}[data-ui-theme=light][data-board-theme=purple]{--ui-bg: #f4f2f7;--ui-border: #e5e0ee;--ui-accent: #7c5cba}[data-ui-theme=dark][data-board-theme=purple]{--ui-bg: #0d0a12;--ui-panel-bg: #1a1522;--ui-border: #322a40;--ui-accent: #c4a6f5;--ui-on-accent: #140a20;--ui-glow: 0 0 14px rgb(196 166 245 / 28%);--ui-glow-strong: 0 0 20px rgb(196 166 245 / 45%)}[data-ui-theme=light][data-board-theme=rose]{--ui-bg: #f7f2f3;--ui-border: #eedfe2;--ui-accent: #b3506a}[data-ui-theme=dark][data-board-theme=rose]{--ui-bg: #120a0d;--ui-panel-bg: #201418;--ui-border: #3c2a30;--ui-accent: #f490ad;--ui-on-accent: #1c060d;--ui-glow: 0 0 14px rgb(244 144 173 / 28%);--ui-glow-strong: 0 0 20px rgb(244 144 173 / 45%)}[data-ui-theme=light][data-board-theme=teal]{--ui-bg: #f0f5f4;--ui-border: #dde8e6;--ui-accent: #21806f}[data-ui-theme=dark][data-board-theme=teal]{--ui-bg: #091010;--ui-panel-bg: #12201d;--ui-border: #2a3c38;--ui-accent: #5eead4;--ui-on-accent: #04211b;--ui-glow: 0 0 14px rgb(94 234 212 / 28%);--ui-glow-strong: 0 0 20px rgb(94 234 212 / 45%)}.settings-group{border:1px solid var(--ui-border, #d4d4d4);border-radius:var(--radius-card, 18px);background:var(--panel-grad, none),var(--ui-panel-bg, #fff);box-shadow:var(--ui-shadow);padding:16px 18px;margin-bottom:16px}.settings-group legend{padding:0 6px;font-weight:800;color:var(--ui-fg, #1c1c1c)}.settings-note{margin:2px 0 10px;font-size:13px;color:var(--ui-muted, #6b7280)}.segmented{display:inline-flex;border:1px solid var(--ui-border, #d4d4d4);border-radius:10px;overflow:hidden}.segmented button{padding:8px 18px;border:none;background:var(--ui-panel-bg, #fff);color:var(--ui-fg, #1c1c1c);font-weight:700;cursor:pointer;transition:background var(--ui-transition, .16s ease)}.segmented button.selected{background:var(--ui-accent, #16a34a);color:var(--ui-on-accent, #fff)}.board-theme-picker{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:4px}.board-theme-swatch{display:flex;flex-direction:column;align-items:stretch;padding:0;border:2px solid transparent;border-radius:18px;overflow:hidden;background:var(--panel-grad, none),var(--ui-panel-bg, #fff);box-shadow:var(--ui-shadow);cursor:pointer;transition:border-color var(--ui-transition, .16s ease)}.board-theme-swatch:hover{border-color:color-mix(in srgb,var(--ui-accent, #16a34a) 45%,transparent)}.board-theme-swatch.selected{border-color:var(--ui-accent, #16a34a)}.swatch-preview{position:relative;display:grid;grid-template-columns:1fr 1fr;height:76px}.swatch-check{position:absolute;top:7px;right:7px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ui-accent, #16a34a);color:var(--ui-on-accent, #fff);box-shadow:var(--ui-shadow)}.swatch-footer{display:flex;align-items:center;gap:8px;padding:9px 11px}.swatch-chip{flex:none;width:13px;height:13px;border-radius:4px}.swatch-label{font-size:.8rem;font-weight:600;color:var(--ui-fg, #1c1c1c)}.piece-set-picker{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}.piece-set-swatch{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;border:2px solid transparent;border-radius:12px;background:transparent;cursor:pointer;transition:border-color var(--ui-transition, .16s ease),background var(--ui-transition, .16s ease)}.piece-set-swatch:hover{background:#7f7f7f14}.piece-set-swatch.selected{border-color:var(--ui-accent, #16a34a)}.piece-set-swatch .swatch-label{color:var(--ui-muted, #6b7280)}.piece-set-preview{display:flex;align-items:center;justify-content:center;gap:2px;width:64px;height:40px;border-radius:8px;background:var(--sq-dark-color, #769656);box-shadow:var(--ui-shadow)}.piece-set-preview img{width:28px;height:28px}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ui-border, #d4d4d4) 90%,transparent) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ui-border, #d4d4d4) 90%,transparent);border-radius:999px}*::-webkit-scrollbar-track{background:transparent}.settings-profile{display:flex;align-items:center;gap:12px;padding:14px 16px;margin:12px 0 4px;border:1px solid var(--ui-border, #e5e5e5);border-radius:16px;background:var(--panel-grad, none),var(--ui-panel-bg, #fff)}.settings-profile-body{flex:1;min-width:0}.settings-profile-name{font-weight:800;overflow:hidden;text-overflow:ellipsis}.settings-profile-sync{font-size:12.5px;color:var(--ui-muted, #6b7280);margin-top:2px}.settings-about{margin-top:22px;font-size:11.5px;color:var(--ui-muted, #6b7280);text-align:center;display:flex;flex-direction:column;gap:3px}html,body{height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background-color:var(--ui-bg, #f5f5f4);color:var(--ui-fg, #1c1c1c);font-family:var(--font-sans, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Inter, "Helvetica Neue", Arial, "Noto Sans");padding:calc(6px + env(safe-area-inset-top)) 0 calc(6px + env(safe-area-inset-bottom));min-height:100vh;-webkit-tap-highlight-color:transparent;box-sizing:border-box}@supports (height: 100svh){body{min-height:100svh}}@supports (height: 100dvh){body{min-height:100dvh}}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}.topbar-cluster{display:flex;align-items:center;gap:8px}.topbar-cluster.end{justify-content:flex-end}.page-heading{text-align:center;font-weight:900;letter-spacing:.3px;font-size:clamp(15px,3vmin,22px)}.nav-spacer,.nav-icon{width:44px;height:44px}.nav-icon{display:grid;place-items:center;border:2px solid var(--ui-border, #d4d4d4);border-radius:12px;background:transparent;color:var(--ui-fg, #1c1c1c);cursor:pointer;transition:background .15s ease,transform .05s ease}.nav-icon:hover{background:#7f7f7f1f}.nav-icon:active{transform:translateY(1px)}.nav-icon svg{width:62%;height:62%}.home-app{width:min(1100px,100%);margin:0 auto;padding:0 12px;box-sizing:border-box;display:grid;gap:16px}.home-app>*{min-width:0}.home-hero{position:relative;display:grid;justify-items:center;gap:2px;padding:6px 0 10px;isolation:isolate}.hero-top{width:100%;display:grid;grid-template-columns:1fr auto;align-items:center}.hero-mark{width:56px;height:56px;display:grid;place-items:center;border-radius:16px;color:#fff;background:linear-gradient(135deg,var(--brand-grad-a, #16a34a),var(--brand-grad-b, #0f766e));box-shadow:var(--ui-shadow),var(--ui-glow-strong);margin-top:4px}.hero-mark svg{width:30px;height:30px}.hero-title{margin:8px 0 0;font-weight:900;letter-spacing:.2px;font-size:clamp(24px,5vmin,32px)}.hero-tagline{margin:0;color:var(--ui-muted, #6b7280);font-size:clamp(12px,2.4vmin,14px)}.tabs-segmented{display:flex;justify-self:center;width:min(340px,100%)}.tabs-segmented button{flex:1 1 0}.home-list{display:grid;gap:14px}.home-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;border:1px solid var(--ui-border, #d4d4d4);border-radius:var(--radius-card, 18px);background:var(--panel-grad, none),var(--ui-panel-bg, #fff);padding:16px;cursor:pointer;box-shadow:var(--ui-shadow);transition:transform var(--ui-transition),box-shadow var(--ui-transition),border-color var(--ui-transition)}.home-card.perf-great{border-color:#15803d}.home-card.perf-good{border-color:#4ade80}.home-card.perf-even{border-color:#fb923c}.home-card.perf-bad{border-color:#f28b82}.op-rec{margin-top:4px;font-size:12px;font-weight:700;color:var(--ui-muted, #6b7280)}.op-rec.op-great{color:#22c55e}.op-rec.op-good{color:#4ade80}.op-rec.op-even{color:#fb923c}.op-rec.op-bad{color:#f28b82}.op-vars{margin-top:4px}.op-var-toggle{padding:0;border:0;background:none;font-size:11px;font-weight:700;color:var(--ui-muted, #6b7280);cursor:pointer}.op-var-toggle:hover{color:var(--ui-fg, #e5e7eb)}.op-var-list{margin-top:4px;display:flex;flex-direction:column;gap:2px}.op-var-row{display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:600;color:var(--ui-muted, #6b7280)}.op-var-name{opacity:.85}.op-var-row.op-great{color:#22c55e}.op-var-row.op-good{color:#4ade80}.op-var-row.op-even{color:#fb923c}.op-var-row.op-bad{color:#f28b82}@media (width <= 640px){.op-vars{display:none}}.home-card:hover{transform:translateY(-2px);box-shadow:var(--ui-shadow-lg);border-color:color-mix(in srgb,var(--tile, var(--ui-accent, #2563eb)) 45%,var(--ui-border, #d4d4d4))}.home-card:active{transform:translateY(0)}.home-card:focus-visible{outline:2px solid var(--tile, var(--ui-accent, #2563eb));outline-offset:2px}.home-body{display:grid;gap:3px}.mode-tile{width:60px;height:60px;display:grid;place-items:center;border-radius:var(--radius-tile, 14px);color:var(--tile, var(--ui-accent, #2563eb));background:color-mix(in srgb,var(--tile, var(--ui-accent, #2563eb)) 15%,var(--ui-panel-bg, #fff))}.mode-tile svg{width:30px;height:30px;fill:none;stroke:currentcolor}.home-card.disabled{cursor:default}.home-card.disabled:hover,.home-card.disabled:active{background:var(--panel-grad, none),var(--ui-panel-bg, #fff);transform:none}.home-thumb{width:72px;height:72px;box-sizing:border-box;display:grid;place-items:center;padding:5px;border-radius:var(--radius-tile, 14px);background:var(--ui-panel-bg, #fff);box-shadow:inset 0 0 0 1px var(--ui-border, #d4d4d4);overflow:hidden}.home-thumb svg{width:48px;height:48px;stroke:currentcolor;fill:none;color:var(--ui-fg, #1c1c1c);stroke-width:1.8}.home-title{font-weight:900;font-size:clamp(16px,2.6vmin,20px)}.home-sub{color:var(--ui-muted, #6b7280);font-size:clamp(12px,2.2vmin,14px)}.mastery-bar{margin-top:6px;width:100%;max-width:220px;height:6px;border-radius:999px;background:var(--ui-border, #d4d4d4);overflow:hidden}.mastery-fill{height:100%;border-radius:999px;background:var(--ui-accent, #2563eb);transition:width .3s ease}.home-chevron{width:40px;height:40px;border:1px solid var(--ui-border, #d4d4d4);border-radius:10px;display:grid;place-items:center;color:var(--ui-fg, #1c1c1c)}@media (width <= 520px){.home-thumb{width:64px;height:64px}.home-thumb svg{width:40px;height:40px}.mode-tile{width:54px;height:54px}}.mini-board{width:100%;height:100%;display:grid}.mini-4x4{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr)}.mini-8x8{grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr)}.mini-sq{display:grid;place-items:center}.mini-light{background:var(--sq-light-color, #eeeed2)}.mini-dark{background:var(--sq-dark-color, #769656)}.cc-input{width:100%;box-sizing:border-box;padding:12px 14px;font-size:16px;border:2px solid var(--ui-border, #d4d4d4);border-radius:12px;background:var(--ui-panel-bg, #fff);color:var(--ui-fg, #1c1c1c)}.cc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:15px;font-weight:700;border:2px solid var(--ui-border, #d4d4d4);border-radius:12px;background:transparent;color:var(--ui-fg, #1c1c1c);cursor:pointer}.cc-btn svg{width:18px;height:18px}.cc-btn:disabled{opacity:.5;cursor:default}.cc-btn-primary{border-color:var(--ui-accent, #16a34a);background:var(--ui-accent, #16a34a);color:var(--ui-on-accent, #fff);box-shadow:var(--ui-glow);transition:box-shadow var(--ui-transition, .16s ease),transform .12s ease}.cc-link{background:none;border:none;padding:0;color:var(--ui-accent, #16a34a);cursor:pointer;text-decoration:underline;font:inherit}.gr-avatar{border-radius:50%;object-fit:cover;background:color-mix(in srgb,var(--ui-border, #d4d4d4) 50%,transparent);flex:0 0 auto}.gr-avatar-sm{width:28px;height:28px}.gr-avatar-lg{width:48px;height:48px}.gr-avatar-default{display:grid;place-items:center;color:var(--ui-accent, #16a34a);background:color-mix(in srgb,var(--ui-accent, #16a34a) 14%,transparent)}.gr-avatar-default svg{width:60%;height:60%}.gr-link{border:none;background:none;padding:0;color:var(--ui-accent, #16a34a);font:inherit;font-weight:700;cursor:pointer}.cc-btn-primary:hover{box-shadow:var(--ui-glow-strong)}.cc-btn-primary:active{transform:translateY(1px)}.segmented button.selected,.tabs-segmented button.selected{box-shadow:var(--ui-glow)}.home-card,.mode-tile{transition:transform var(--ui-transition, .16s ease),box-shadow var(--ui-transition, .16s ease),border-color var(--ui-transition, .16s ease)}@media (hover: hover){.home-card:hover{transform:translateY(-2px);box-shadow:var(--ui-glow-strong);border-color:color-mix(in srgb,var(--ui-accent, #16a34a) 40%,var(--ui-border, #d4d4d4))}.home-card:hover .mode-tile{box-shadow:var(--ui-glow)}}@media (prefers-reduced-motion: no-preference){@keyframes cc-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes cc-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.home-list>*{animation:cc-fade-up .32s ease both}.home-list>*:nth-child(2){animation-delay:.04s}.home-list>*:nth-child(3){animation-delay:.08s}.home-list>*:nth-child(4){animation-delay:.12s}.home-list>*:nth-child(5){animation-delay:.16s}.home-list>*:nth-child(6){animation-delay:.2s}.hero,.home-hero{animation:cc-pop .36s ease both}}.skel-list{display:flex;flex-direction:column;gap:8px}.skel-row{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--ui-border, #e5e5e5);border-radius:14px;background:var(--ui-panel-bg, #fff)}.skel-row.skel-tall{padding:14px}.skel{border-radius:8px;background:var(--ui-border, #e5e5e5);animation:skel-pulse 1.2s ease-in-out infinite}.skel-circle{width:34px;height:34px;border-radius:50%;flex:0 0 auto}.skel-bar{height:12px}@keyframes skel-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion: reduce){.skel{animation:none}}.retry-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px;border:1px dashed var(--ui-border, #d4d4d4);border-radius:14px;color:var(--ui-muted, #6b7280);text-align:center}.retry-card p{margin:0;font-size:13.5px}.ch-card{background:var(--panel-grad, none),var(--ui-panel-bg);border:1px solid var(--ui-border);border-radius:var(--radius-card, 22px);box-shadow:var(--ui-shadow)}.ch-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;background:var(--ui-wash);color:var(--ui-accent)}.ch-cta{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:600;color:var(--ui-on-accent);background:linear-gradient(160deg,color-mix(in srgb,var(--ui-accent),#fff 16%),var(--ui-accent));border:0;border-radius:12px;padding:11px 14px;box-shadow:var(--ui-glow);cursor:pointer}.ch-header{background:var(--ui-header-bg);color:var(--ui-fg);border-radius:0 0 28px 28px}.ch-title{font-weight:700;letter-spacing:-.01em}
