:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--font-display:"Sora", "Avenir Next", "Nunito Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, "SFMono-Regular", "Menlo", monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--line-height-tight:1.2;--line-height-base:1.5;--bg:#f8f2e6;--bg-soft:#f3ead8;--surface:#fffdf8;--surface-alt:#f9f4e8;--surface-strong:#efe7d8;--text:#1d2a24;--muted:#55685d;--accent:#0f5b44;--accent-soft:#2a7a5e;--accent-ink:#0b3527;--gold:#b17a2a;--focus-ring:#8f5d16;--border:#d8cfbe;--danger:#a3202f;--warning:#8f5a0a;--success:#1f7a4a;--info:#2a6a88;--card-face:#fffdf8;--card-ink:#1d2a24;--card-red:#d11f33;--shadow-soft:0 8px 22px #1c262017;--shadow-medium:0 16px 34px #14201826;--radius-sm:10px;--radius-md:12px;--radius-lg:18px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;font-family:Avenir Next,Nunito Sans,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--text);background:radial-gradient(circle at 12% -10%,#b17a2a2e,#0000 34%),radial-gradient(circle at 100% 0,#0f5b442b,#0000 42%),linear-gradient(140deg,#f9f4e9 0%,#f3ebdd 42%,#f7efe0 100%);margin:0}body:before{content:"";pointer-events:none;opacity:.24;background-image:linear-gradient(90deg,#6c66540a 1px,#0000 1px);background-size:28px 28px;position:fixed;top:0;bottom:0;left:0;right:0}a{color:var(--accent);text-underline-offset:2px}a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:2px}.layout{z-index:1;max-width:1220px;padding:max(1.05rem, var(--safe-top)) max(1.05rem, var(--safe-right)) max(1.05rem, var(--safe-bottom)) max(1.05rem, var(--safe-left));gap:.95rem;margin:0 auto;display:grid;position:relative}.app-shell{padding-top:calc(4.7rem + var(--safe-top))}.app-shell-focus{padding-top:max(1rem, var(--safe-top))}.workspace-content{gap:.9rem;min-width:0;display:grid}.workspace-navbar{z-index:30;padding:calc(.52rem + var(--safe-top)) .9rem .44rem;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#fffbf4e6;border-bottom:1px solid #d6cab2e6;position:fixed;top:0;left:0;right:0}.workspace-navbar-inner{justify-content:space-between;align-items:center;gap:.7rem;max-width:1220px;margin:0 auto;display:flex}.workspace-navbar-current{align-items:baseline;gap:.4rem;min-width:0;line-height:1.1;display:flex}.workspace-navbar-current .crumb-root{-webkit-appearance:none;appearance:none;cursor:pointer;white-space:nowrap;font-family:var(--font-display);color:var(--muted);background:0 0;border:0;padding:0;font-size:.88rem;font-weight:700;transition:color .15s}.workspace-navbar-current .crumb-root:hover{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.workspace-navbar-current .crumb-root:focus-visible{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.workspace-navbar-current .crumb-sep{color:var(--muted);opacity:.6}.workspace-navbar-current .crumb-current{text-overflow:ellipsis;white-space:nowrap;max-width:min(58vw,280px);font-family:var(--font-display);color:#17362b;font-size:.92rem;overflow:hidden}.workspace-drawer{border-radius:var(--radius-md);background:linear-gradient(#fffdf8 0%,#f5eedf 100%);border:1px solid #d8ccb7;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.5rem;max-width:1220px;margin:.48rem auto 0;padding:.56rem;display:none;box-shadow:0 10px 18px #1b271e21}.workspace-drawer.is-open{display:grid}.workspace-drawer-group{border-top:1px dashed #d7ccb8;grid-column:1/-1;margin-top:.1rem;padding-top:.58rem}.workspace-submenu-title{letter-spacing:.08em;text-transform:uppercase;color:#667266;margin:0 0 .38rem;font-size:.72rem}.workspace-submenu-items{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.4rem;display:grid}.workspace-drawer-section{letter-spacing:.08em;text-transform:uppercase;color:#667266;border-top:1px dashed #d7ccb8;grid-column:1/-1;margin:.3rem 0 -.1rem;padding-top:.5rem;font-size:.72rem}.workspace-sub-link{text-align:left;border-radius:var(--radius-sm);color:#224136;box-shadow:none;background:linear-gradient(120deg,#fff9ec 0%,#f2e7d2 100%);border:1px solid #d4c6ac;padding:.46rem .56rem;font-size:.82rem}.workspace-sub-link.is-active{color:#f6f8f2;background:linear-gradient(120deg, var(--accent) 0%, var(--accent-soft) 100%);border-color:#0a3627bf}.practice-layout{grid-template-columns:1fr;gap:.9rem;display:grid}.analysis-master{align-items:start;gap:.9rem;display:grid}.analysis-master #chapter-progress{order:1}.analysis-master #practice-window-panel-puzzle{order:2}.chapter-progress-head{justify-content:flex-start}.chapter-progress-head h2{flex:1;min-width:0}.chapter-panel-toggle{flex:none}.chapter-progress-body{gap:.72rem;min-width:0;display:grid}.practice-main,.practice-side{gap:.9rem;min-width:0;display:grid}.hero{border-radius:var(--radius-lg);color:#f8f7ef;box-shadow:var(--shadow-medium);background:linear-gradient(130deg,#0e5942 0%,#1f6f55 55%,#2a8062 100%);border:1px solid #ffffff3d;padding:1.35rem 1.45rem;position:relative;overflow:hidden}.hero:after{content:"";background:radial-gradient(circle,#fff0cd5c,#fff0cd00);border-radius:50%;width:310px;height:310px;animation:7s ease-in-out infinite float-hero;position:absolute;top:-185px;right:-130px}.hero-kicker{letter-spacing:.08em;text-transform:uppercase;background:#ffffff14;border:1px solid #ffffff6b;border-radius:999px;margin-bottom:.45rem;padding:.2rem .62rem;font-size:.74rem;display:inline-block}.hero h1{font-family:var(--font-display);letter-spacing:.01em;margin:0;font-size:clamp(1.52rem,2.2vw,2.1rem);line-height:1.12}.hero p{color:#f8f7efeb;max-width:78ch;margin:.52rem 0 0}.hero-chip{color:#f8f7efde;margin-top:.72rem;font-size:.82rem}.workspace-link{text-align:left;color:#254339;width:100%;box-shadow:none;background:linear-gradient(120deg,#fff9ed 0%,#f2e7d3 100%);border:1px solid #d7cab3}.workspace-link strong{font-size:.86rem;line-height:1.2;display:block}.workspace-link span{color:#5a655d;margin-top:.24rem;font-size:.74rem;display:block}.workspace-link.is-active{color:#f6f8f2;background:linear-gradient(120deg, var(--accent) 0%, var(--accent-soft) 100%);border-color:#0a3627bf;box-shadow:0 8px 14px #0c372933}.workspace-link.is-active span{color:#f6f8f2eb}.workspace-menu-toggle{letter-spacing:.03em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;gap:.36rem;min-width:44px;min-height:44px;padding:.38rem .6rem;font-size:.78rem;display:inline-flex}.workspace-menu-toggle span[aria-hidden=true]{font-size:.94rem;line-height:1}@media (min-width:1100px){.practice-layout{grid-template-columns:minmax(0,1.45fr) minmax(300px,.95fr);align-items:start}}.panel{border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-soft);background:linear-gradient(#ffffffed,#fdf9f2f0);padding:.92rem .98rem;animation:.34s both panel-rise}.panel h2,.panel h3{font-family:var(--font-display);color:var(--accent-ink);letter-spacing:.01em;margin-top:0;margin-bottom:.56rem}.panel p{color:var(--muted)}.panel[id]{scroll-margin-top:5.6rem}.panel-head{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.56rem;display:flex}.panel-head h2{margin:0}.panel-toggle{letter-spacing:.03em;text-transform:uppercase;padding:.42rem .56rem;font-size:.8rem}.practice-layout.is-controls{grid-template-columns:minmax(0,1fr)}.controls-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.8rem;display:grid}.controls-grid>label{min-width:0}.wizard-grid .diag-card button{margin-top:.4rem}.wizard-stepper{grid-template-columns:1fr;gap:.52rem;margin-top:.5rem;display:grid}.wizard-step-chip{text-align:left;color:#284339;box-shadow:none;background:linear-gradient(120deg,#fff8ea 0%,#f2e6cf 100%);border-color:#cfbfa3}.wizard-step-chip strong{font-size:.88rem;display:block}.wizard-step-chip span{color:#59655d;margin-top:.2rem;font-size:.78rem;display:block}.wizard-step-chip.is-done{background:linear-gradient(120deg,#edf8f2 0%,#e3f1ea 100%);border-color:#14664a70}.wizard-step-chip.is-active{color:#f4f8f4;background:linear-gradient(120deg, var(--accent) 0%, var(--accent-soft) 100%);border-color:#0a3627bd;box-shadow:0 8px 14px #0c372933}.wizard-step-chip.is-active span{color:#f4f8f4e6}.wizard-focus{margin-top:.68rem}.wizard-actions,.wizard-nav{margin-top:.54rem}.wizard-nav{justify-content:space-between}.adaptive-hint{color:#234a3b;border-radius:var(--radius-sm);background:#234a3b0f;border:1px dashed #234a3b5c;grid-column:1/-1;margin:.1rem 0 0;padding:.58rem .66rem;font-size:.87rem}label{color:#355045;gap:.38rem;font-size:.92rem;display:grid}select,input,textarea,button{border-radius:var(--radius-sm);border:1px solid #c8bda8;padding:.6rem .68rem;font-size:.93rem;transition:border-color .2s,box-shadow .2s,transform .16s,background .18s}input,select,textarea{color:#23372e;background:#fffefb;width:100%;min-width:0;max-width:100%}.chapter-filter-select{text-overflow:ellipsis;overflow:hidden}input:focus,select:focus,textarea:focus{border-color:#0f5b44a8;outline:none;box-shadow:0 0 0 3px #0f5b4421}textarea{resize:vertical;min-height:74px;font-family:inherit}button{cursor:pointer;color:#f8f8f2;background:linear-gradient(120deg, var(--accent) 0%, var(--accent-soft) 100%);border-color:#0a3627b3;box-shadow:0 8px 14px #0c372933}@media (hover:hover) and (pointer:fine){button:hover:enabled{transform:translateY(-1px);box-shadow:0 11px 18px #0c37293d}button.secondary:hover:enabled{background:var(--surface-alt);border-color:var(--accent-soft)}}button:active:enabled{transform:translateY(0)}button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.58;box-shadow:none}button.secondary{background:var(--surface);color:var(--accent-ink);border-color:var(--border);box-shadow:none}.chapter-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.78rem;display:grid}.chapter-progress-shell{grid-template-columns:1fr;gap:.8rem;display:grid}.chapter-rail{grid-template-columns:1fr;gap:.44rem;display:grid}.chapter-rail-item{text-align:left;border-radius:var(--radius-sm);color:#244036;box-shadow:none;background:linear-gradient(#fff9ed 0%,#f4ead7 100%);border:1px solid #d6c8b2;padding:.52rem .6rem}.chapter-rail-item-zero{background:linear-gradient(#f1faf5 0%,#e7f2eb 100%);border-color:#0f5b4470}.chapter-rail-item strong{font-size:.86rem;line-height:1.2;display:block}.chapter-rail-level{letter-spacing:.08em;text-transform:uppercase;color:#5b695f;margin-bottom:.18rem;font-size:.7rem;display:block}.skip-link{z-index:50;border-radius:var(--radius-sm);background:var(--accent);color:#fff;box-shadow:var(--shadow-medium);padding:.5rem .85rem;font-weight:700;text-decoration:none;transition:top .15s;position:absolute;top:-3rem;left:.5rem}.skip-link:focus{top:.5rem}#workspace-content:focus{outline:none}select{-webkit-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230f5b44' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right .7rem center;background-repeat:no-repeat;background-size:.72rem;padding-right:2rem}.chapter-rail-meta{color:#4d5f56;margin-top:.18rem;font-size:.74rem;display:block}.chapter-rail-item.is-active{color:#f5f8f4;background:linear-gradient(120deg, var(--accent) 0%, var(--accent-soft) 100%);border-color:#0a3627c7;box-shadow:0 8px 14px #0c372933}.chapter-rail-item.is-active .chapter-rail-level,.chapter-rail-item.is-active .chapter-rail-meta{color:#f5f8f4e6}.chapter-detail-stack{gap:.74rem;min-width:0;display:grid}.chapter-mobile-summary{display:none}.chapter-mobile-actions{flex-wrap:wrap;gap:.42rem;display:flex}.chapter-card{border-radius:var(--radius-md);background:linear-gradient(#fffaf0 0%,#f9f1e4 100%);border:1px solid #d5c9b3;padding:.78rem}.chapter-card h3{margin-bottom:.34rem}.chapter-card-zero{background:linear-gradient(#f2fbf6 0%,#e8f4ee 100%);border-color:#0f5b4480}.chapter-card p{margin:.45rem 0}.chapter-detail-actions{margin:.5rem 0 .2rem}.chapter-level{text-transform:uppercase;letter-spacing:.09em;color:#5c6559;margin:0;font-size:.76rem}.chapter-progress-track{flex:1;min-height:10px;margin:0}.chapter-progress-fill{min-height:10px}.chapter-progress-fill-attempted{background:linear-gradient(90deg,#d8b679 0%,#9f7c3f 50%,#6b7e56 100%)}.chapter-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.44rem;margin:.48rem 0 .4rem;display:grid}.chapter-kpi{border-radius:var(--radius-sm);background:#fff8ea;border:1px solid #d8ccb8;padding:.36rem .42rem}.chapter-kpi .label{text-transform:uppercase;letter-spacing:.06em;color:#6b6558;font-size:.68rem;display:block}.chapter-kpi strong{color:#1f3d31;font-size:.94rem}.chapter-progress-dual{gap:.3rem;margin-top:.16rem;display:grid}.chapter-progress-row{align-items:center;gap:.45rem;display:flex}.chapter-progress-label{color:#3e564b;min-width:4.7rem;font-size:.72rem}.chapter-roadmap-title{margin-top:.58rem}.chapter-roadmap{grid-template-columns:repeat(auto-fill,minmax(2rem,1fr));gap:.3rem;margin:.24rem 0 .4rem;display:grid}.chapter-step{color:#314b40;min-height:2rem;box-shadow:none;background:linear-gradient(#fff7e8 0%,#f4ead3 100%);border:1px solid #d6c7ad;border-radius:10px;padding:.32rem 0;font-size:.75rem;font-weight:700}@media (hover:hover) and (pointer:fine){.chapter-step:hover:enabled{transform:translateY(-1px);box-shadow:0 5px 10px #0c372924}}.chapter-step.chapter-step-solved{background:linear-gradient(#edf9f2 0%,#dff0e5 100%);border-color:#2070516b}.chapter-step.chapter-step-attempted{background:linear-gradient(#fff4dd 0%,#f4e5c5 100%);border-color:#b17a2a70}.chapter-step.chapter-step-due{background:linear-gradient(#ecf7fc 0%,#dceef8 100%);border-color:#356a8885}.chapter-step.chapter-step-new{border-color:#d6c7ad}.chapter-step.is-current{border-color:#0a3627c7;box-shadow:inset 0 0 0 1px #0a362747}.chapter-step-legend{flex-wrap:wrap;gap:.32rem;margin:0 0 .42rem;display:flex}.chapter-step-legend-chip{color:#3f4a43;background:#fff9ee;border:1px solid #d8ccb8;border-radius:999px;padding:.12rem .46rem;font-size:.72rem;display:inline-block}.chapter-step-legend-chip.is-solved{background:#e9f5ec;border-color:#20705166}.chapter-step-legend-chip.is-attempted{background:#fbf0da;border-color:#b17a2a66}.chapter-step-legend-chip.is-due{background:#e8f3fa;border-color:#356a8875}.chapter-step-legend-chip.is-new{background:#fff9ee}.chapter-puzzle-list{gap:.4rem;max-height:58vh;padding-right:.18rem;display:grid;overflow:auto}.chapter-puzzle-row{text-align:left;border-radius:var(--radius-sm);color:#2b4a3d;width:100%;box-shadow:none;background:linear-gradient(#fff8eb 0%,#f5e9d2 100%);border:1px solid #d6c7ad;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.1rem .55rem;display:grid}@media (hover:hover) and (pointer:fine){.chapter-puzzle-row:hover:enabled{border-color:#0a362780;box-shadow:0 4px 10px #0c37291f}}.chapter-puzzle-row.chapter-step-solved{background:linear-gradient(#edf9f2 0%,#dff0e5 100%);border-color:#2070516b}.chapter-puzzle-row.chapter-step-attempted{background:linear-gradient(#fff4dd 0%,#f4e5c5 100%);border-color:#b17a2a70}.chapter-puzzle-row.chapter-step-due{background:linear-gradient(#ecf7fc 0%,#dceef8 100%);border-color:#356a8885}.chapter-puzzle-row.chapter-step-new{border-color:#d6c7ad}.chapter-puzzle-row.is-current{border-color:#0a3627c7;box-shadow:inset 0 0 0 1px #0a362747}.chapter-puzzle-row-order{background:#ffffffbd;border:1px solid #2a443842;border-radius:999px;grid-row:1/span 2;justify-content:center;align-items:center;width:1.6rem;height:1.6rem;font-size:.76rem;font-weight:700;display:inline-flex}.chapter-puzzle-row-title{color:#183e30;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.82rem;font-weight:700;overflow:hidden}.chapter-puzzle-row-context{color:#4c5f55;white-space:nowrap;text-overflow:ellipsis;grid-column:2;min-width:0;font-size:.74rem;overflow:hidden}.chapter-puzzle-row-meta{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;background:var(--surface-strong);color:var(--muted);border:1px solid #14322624;border-radius:999px;grid-area:1/3/span 2;place-self:center end;align-items:center;gap:.22rem;padding:.16rem .46rem;font-weight:800;display:inline-flex}.chapter-puzzle-row.chapter-step-solved .chapter-puzzle-row-meta{color:var(--success);background:#1f7a4a29}.chapter-puzzle-row.chapter-step-solved .chapter-puzzle-row-order{border-color:var(--success);color:var(--success)}.chapter-puzzle-row.chapter-step-attempted .chapter-puzzle-row-meta{color:var(--warning);background:#b8740d29}.chapter-puzzle-row.chapter-step-due .chapter-puzzle-row-meta{color:#2a6a88;background:#356a882e}.chapter-puzzle-row.is-current .chapter-puzzle-row-meta{color:#fff;background:#0a3b29}.chapter-card button+button{margin-top:.44rem}.chapter-meta{font-size:.85rem}.chapter-badge{color:#5d4c27;background:#b17a2a24;border-radius:999px;padding:.14rem .44rem;font-size:.8rem;font-weight:700;display:inline-block}.chapter-card.is-selected{background:linear-gradient(#f5fcf8 0%,#ecf7f0 100%);border-color:#0f5b4494;box-shadow:inset 0 0 0 1px #0f5b443d}.chapter-card.is-locked{opacity:.73}.chapter-focus-card{background:linear-gradient(#f7fcf9 0%,#ecf5ef 100%);border-color:#0f5b4470;margin-top:0}.chapter-rail-accordion{display:none}.chapter-detail-drawer-overlay{z-index:45;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#111f1973;place-items:end stretch;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.chapter-detail-drawer{border-radius:16px 16px 0 0;max-height:84vh;margin:0;overflow:auto}.chapter-picker-overlay{z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#111f1973;place-items:end center;padding:.7rem;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.chapter-picker-window{width:min(100%,720px);max-height:calc(100vh - 1.4rem);margin:0;overflow:auto}.chapter-picker-list{gap:.42rem;display:grid}.chapter-picker-item{text-align:left;border-radius:var(--radius-sm);color:#244036;box-shadow:none;background:linear-gradient(#fff9ed 0%,#f4ead7 100%);border:1px solid #d6c8b2;padding:.52rem .6rem}.chapter-picker-item-zero{background:linear-gradient(#f1faf5 0%,#e7f2eb 100%);border-color:#0f5b4470}.chapter-picker-item strong{font-size:.86rem;line-height:1.2;display:block}.chapter-picker-item.is-active{color:#f5f8f4;background:linear-gradient(120deg, var(--accent) 0%, var(--accent-soft) 100%);border-color:#0a3627c7;box-shadow:0 8px 14px #0c372933}.chapter-picker-item.is-active .chapter-rail-level,.chapter-picker-item.is-active .chapter-rail-meta{color:#f5f8f4e6}.onboarding p,.mobile-status p{margin:.42rem 0}.account-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.68rem;margin-bottom:.56rem;display:grid}.account .mini-actions{margin-top:.48rem}.account label{margin-top:.52rem}.boss-message{border-radius:var(--radius-sm);color:#5a4522;background:#b17a2a1a;border:1px solid #b17a2a59;margin-top:.76rem;padding:.68rem .76rem}.stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));align-items:stretch;gap:.62rem;display:grid}.stats>div{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-soft);flex-direction:column;gap:.28rem;padding:.75rem .85rem;display:flex}.stats>div strong{font-family:var(--font-display);font-size:var(--font-size-2xl);line-height:var(--line-height-tight);color:var(--accent-ink);font-variant-numeric:tabular-nums}.stats>button{min-height:100%}.stats .label,.arena-toolbar .label{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:.78rem;display:block}.progress-track{background:var(--surface-strong);border:1px solid #19503c47;border-radius:999px;min-height:12px;margin:.52rem 0 .74rem;overflow:hidden;box-shadow:inset 0 1px 2px #14322629}.progress-fill{background:linear-gradient(90deg, var(--accent-soft) 0%, var(--accent) 100%);border-radius:999px;min-height:12px;transition:width .35s;box-shadow:0 0 6px #0f5b4459}.subline{color:#5c665f;margin-top:-.1rem}.run-progress{margin:.28rem 0 .48rem}.run-progress-head{justify-content:space-between;align-items:baseline;gap:.6rem;margin:0;display:flex}.run-progress-head strong{color:#1a4a39;letter-spacing:.03em}.run-progress-track{min-height:10px;margin:.26rem 0 .12rem}.run-progress-fill{min-height:10px}.run-progress-path{flex-wrap:wrap;gap:.3rem;display:flex}.run-progress-step{color:#254338;min-width:44px;min-height:44px;box-shadow:none;background:linear-gradient(120deg,#f8f0df 0%,#efe1c8 100%);border-color:#ccbfa7;border-radius:999px;justify-content:center;align-items:center;padding:.24rem .44rem;font-size:.8rem;display:inline-flex}.run-progress-step.is-past{background:linear-gradient(120deg,#eef8f2 0%,#dfefe7 100%);border-color:#0f5b4470}.run-progress-step.is-current{color:#f5f8f4;background:linear-gradient(120deg, var(--accent) 0%, var(--accent-soft) 100%);border-color:#0a3627bd;box-shadow:0 6px 12px #0c372933}.question{font-family:var(--font-display);color:#183028;margin-top:.7rem;font-size:1.03rem;font-weight:700}.puzzle{background:radial-gradient(circle at 100% -20%,#0f5b4417,#0000 36%),linear-gradient(#fffffff0,#fcf6ece6)}.puzzle-context{background:linear-gradient(#f6fcf9fa 0%,#ebf6f0f5 100%),radial-gradient(circle at 100% -30%,#0f5b4429,#0000 55%);border:1px solid #14584238;border-radius:14px;margin-top:.56rem;padding:.7rem .74rem;box-shadow:inset 0 1px #ffffffbf}.puzzle-context-label{letter-spacing:.08em;text-transform:uppercase;color:#4f675c;margin:0;font-size:.72rem}.puzzle-context-head{justify-content:space-between;align-items:flex-start;gap:.6rem;margin-top:.2rem;display:flex}.password-field{align-items:center;display:flex;position:relative}.password-field input{width:100%;padding-right:4.6rem}.password-toggle{min-height:2rem;box-shadow:none;color:var(--accent);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;background:0 0;border:0;justify-content:center;align-items:center;padding:.4rem .6rem;font-weight:800;display:inline-flex;position:absolute;top:50%;right:.25rem;transform:translateY(-50%)}.password-toggle:hover:enabled{box-shadow:none;text-decoration:underline;transform:translateY(-50%)}.password-toggle:active:enabled{transform:translateY(-50%)}.account-feedback{border-radius:var(--radius-sm);font-size:var(--font-size-sm);border:1px solid #0000;border-left-width:3px;align-items:center;gap:.45rem;margin:.3rem 0 0;padding:.55rem .7rem;font-weight:600;display:flex}.account-feedback-icon{flex:none;font-weight:800}.account-feedback.is-error{border-color:var(--danger);color:var(--danger);background:#a3202f14}.account-feedback.is-success{border-color:var(--success);color:var(--success);background:#1f7a4a1a}.author-card-preview{margin-top:.4rem;display:inline-flex}.status-pill{font-size:var(--font-size-xs);text-transform:capitalize;border:1px solid #0000;border-radius:999px;align-items:center;padding:.1rem .5rem;font-weight:700;display:inline-flex}.status-pill-ok{color:var(--success);background:#1f7a4a24;border-color:#1f7a4a66}.status-pill-bad{color:var(--danger);background:#a3202f1a;border-color:#a3202f57}.status-pill-neutral{background:var(--surface-strong);border-color:var(--border);color:var(--muted)}.empty-hint{color:var(--muted);margin:.2rem 0;font-style:italic}.chapter-rail-bar{background:#1432261f;border-radius:999px;height:4px;margin-top:.32rem;display:block;overflow:hidden}.chapter-rail-bar-fill{background:var(--accent);border-radius:999px;height:100%;display:block}.chapter-rail-item.is-active .chapter-rail-bar{background:#ffffff40}.chapter-rail-item.is-active .chapter-rail-bar-fill{background:#ffffffe6}.chapter-puzzle-row.is-locked{cursor:not-allowed}.chapter-puzzle-row.is-locked .chapter-puzzle-row-meta{background:var(--surface-strong);border-color:var(--border);color:var(--muted)}.puzzle-context-chapter{font-family:var(--font-display);color:#143f31;margin:0;font-size:.96rem;font-weight:700;line-height:1.2}.puzzle-context-chip{color:#184e3b;white-space:nowrap;background:linear-gradient(120deg,#f0f9f4 0%,#e3f1e9 100%);border:1px solid #12473547;border-radius:999px;align-items:baseline;gap:.2rem;padding:.22rem .5rem;font-size:.79rem;font-weight:800;display:inline-flex}.puzzle-context-chip span{color:#3f6657;font-size:.72rem}.puzzle-context-progress{align-items:center;gap:.52rem;margin-top:.42rem;display:flex}.puzzle-context-track{background:var(--surface-strong);border:1px solid #19503c47;border-radius:999px;flex:1;height:12px;overflow:hidden;box-shadow:inset 0 1px 2px #14322629}.puzzle-context-fill{background:linear-gradient(90deg, var(--accent-soft) 0%, var(--accent) 100%);border-radius:999px;min-width:.5rem;height:100%;transition:width .35s;box-shadow:0 0 6px #0f5b4459}.puzzle-context-meta{text-align:right;color:#2a5947;min-width:2.45rem;margin:0;font-size:.74rem;font-weight:700}.choices{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.68rem;margin-top:.78rem;display:grid}.choices button{letter-spacing:.01em;align-items:center;gap:.46rem;min-height:3rem;font-weight:600;display:inline-flex}.choice-label{text-align:left;flex:1}.choices button:disabled{opacity:1;background:var(--surface-strong);border:1px solid var(--border);color:var(--muted);box-shadow:none}.choices button.is-correct:disabled{background:var(--success);border:3px solid var(--success);color:#fff;outline:2px solid var(--success);outline-offset:2px}.choices button.is-wrong:disabled{border:2px dashed var(--danger);color:var(--danger);background:#a3202f1a}.choices button.is-selected:disabled{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px #1433278c}.choice-result-tag{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:999px;padding:.12rem .42rem;font-weight:800}.choices button.is-correct .choice-result-tag{color:var(--success);background:#fff}.choices button.is-wrong .choice-result-tag{background:var(--danger);color:#fff}.choices button.is-correct .choice-hotkey{color:var(--accent-ink);background:#ffffffeb}.choice-hotkey{background:#fffc;border:1px solid #14332747;border-radius:999px;justify-content:center;align-items:center;min-width:1.3rem;height:1.3rem;font-size:.72rem;font-weight:700;display:inline-flex}.puzzle-shortcut-hint{font-size:var(--font-size-sm);color:var(--muted);flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.62rem;display:flex}.puzzle-shortcut-hint kbd{border:1px solid var(--border);background:var(--surface);min-width:1.35rem;font-family:var(--font-mono);color:var(--text);border-bottom-width:2px;border-radius:6px;justify-content:center;align-items:center;padding:.1rem .34rem;font-size:.74rem;font-weight:700;line-height:1.4;display:inline-flex;box-shadow:0 1px #14322614}.puzzle-shortcut-hint .kbd-range,.puzzle-shortcut-hint .shortcut-sep{opacity:.7}.puzzle-shortcut-hint .shortcut-sep{margin:0 .4rem}.feedback{border-radius:var(--radius-md);background:linear-gradient(#fffcf5,#f7efdf);border:1px solid #d8ccb8;margin-top:.92rem;padding:.86rem}.feedback h3:focus{outline:none}.feedback h3{scroll-margin-top:5.6rem}.verdict-banner{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-display);border:1px solid #0000;margin:.7rem 0 .2rem;padding:.55rem .8rem;font-weight:700;display:flex}.verdict-icon{color:#fff;border-radius:999px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.95rem;display:inline-flex}.verdict-text{font-size:var(--font-size-xl);line-height:var(--line-height-tight);flex:1}.verdict-score{font-variant-numeric:tabular-nums;font-size:var(--font-size-lg);font-weight:800}.verdict-correct{color:var(--success);background:#1f7a4a1f;border-color:#1f7a4a59}.verdict-correct .verdict-icon{background:var(--success)}.verdict-partial{color:var(--warning);background:#b8740d1f;border-color:#b8740d59}.verdict-partial .verdict-icon{background:var(--warning)}.verdict-wrong{color:var(--danger);background:#a3202f1a;border-color:#a3202f52}.verdict-wrong .verdict-icon{background:var(--danger)}.review-lines{flex-direction:column;gap:.75rem;margin-top:.7rem;display:flex}.review-line{border-radius:var(--radius-sm);border:1px solid var(--border);background:#ffffff8c;border-left-width:3px;padding:.5rem .7rem}.review-line.is-ok{border-left-color:var(--success)}.review-line.is-bad{border-left-color:var(--danger)}.review-line-head{justify-content:space-between;align-items:baseline;gap:.6rem;margin-bottom:.18rem;display:flex}.review-line-label{font-family:var(--font-display);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink);font-weight:800}.review-status{font-weight:700;font-size:var(--font-size-sm);white-space:nowrap}.review-line.is-ok .review-status{color:var(--success)}.review-line.is-bad .review-status{color:var(--danger)}.review-line-body{font-size:var(--font-size-sm);line-height:var(--line-height-base);color:var(--muted);margin:0}.why-not{border-radius:var(--radius-sm);border:1px solid #b8740d40;border-left:3px solid var(--warning);font-size:var(--font-size-sm);background:#b8740d14;margin:0;padding:.5rem .7rem}.option-row{margin:.32rem 0 0}.feedback-section{border-top:1px solid var(--border);margin-top:0}.feedback-section summary{cursor:pointer;font-family:var(--font-display);color:var(--accent-ink);justify-content:space-between;align-items:center;gap:.5rem;padding:.58rem .15rem;font-weight:700;list-style:none;transition:color .15s;display:flex}.feedback-section summary::-webkit-details-marker{display:none}.feedback-section summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}.feedback-section summary:after{content:"›";color:var(--accent);opacity:.65;font-size:1.35rem;font-weight:700;line-height:1;transition:transform .2s,opacity .15s}.feedback-section[open] summary{color:var(--accent);background:#0f5b440f;border-radius:6px}.feedback-section[open] summary:after{opacity:1}@media (hover:hover) and (pointer:fine){.feedback-section summary:hover{color:var(--accent)}.feedback-section summary:hover:after{opacity:1}}.feedback-section[open] summary:after{transform:rotate(90deg)}.feedback-section[open]{padding-bottom:.45rem}.feedback-section[open]>:not(summary){border-left:2px solid #0f5b4433;margin-left:.5rem;padding-left:.6rem}.puzzle-sticky-actions{z-index:2;border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fffaf1f5;border:1px solid #d8ccb8;gap:.4rem;margin-top:.82rem;padding:.46rem;display:none;position:sticky;bottom:.3rem}.ev-note{margin:.24rem 0 .58rem;font-size:.84rem}.ev-row+.ev-row{margin-top:.54rem}.ev-action{margin:0 0 .28rem;font-size:.9rem}.ev-bars{gap:.24rem;display:grid}.ev-track{background:#fff9ec;border:1px solid #d9ccb8;border-radius:9px;min-height:19px;position:relative;overflow:hidden}.ev-legend{color:#2b4738;z-index:1;font-size:.72rem;position:absolute;top:50%;left:.48rem;transform:translateY(-50%)}.ev-fill{height:100%}.ev-fill-gto{background:linear-gradient(90deg,#9fcbaf,#53885f)}.ev-fill-exploit{background:linear-gradient(90deg,#a2cfdf,#4385a0)}.ev-fill-blend{background:linear-gradient(90deg,#e0d2aa,#b28f3c)}.puzzle-pulse{border-top:1px solid var(--border,#d4ddd6);flex-wrap:wrap;align-items:center;gap:.6rem;margin:1rem 0;padding-top:.75rem;display:flex}.pulse-prompt{color:var(--muted,#5b6b61);font-size:.9rem}.pulse-buttons{gap:.5rem;display:flex}.pulse-btn{border:1px solid var(--border,#d4ddd6);color:var(--accent-ink,#0b3527);cursor:pointer;background:#fff;border-radius:999px;padding:.4rem .8rem;font-size:.85rem}@media (hover:hover) and (pointer:fine){.pulse-btn:hover:not(:disabled){border-color:#0a3b29}}.pulse-btn.is-active{color:#fff;background:#0a3b29;border-color:#0a3b29}.pulse-btn:disabled{opacity:.5;cursor:default}.pulse-note{color:var(--muted,#5b6b61);font-size:.85rem}.pulse-note-warn{color:#9a2a2a}.pulse-signin{color:var(--muted,#5b6b61);margin:1rem 0;font-size:.85rem}.replayer .replay-step{border-radius:var(--radius-sm);background:#fff9ed;border:1px dashed #ccb998;margin:.4rem 0 .74rem;padding:.58rem .7rem}.mini-actions{flex-wrap:wrap;gap:.54rem;display:flex}.mini-actions button:not(:first-child),.stats>button{color:#2b473b;box-shadow:none;background:linear-gradient(120deg,#fbf4e6 0%,#efe2cb 100%);border-color:#cab99d}.mini-actions button:not(:first-child):hover:enabled,.stats>button:hover:enabled{box-shadow:0 8px 14px #44483824}.diag-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.68rem;display:grid}.diag-card{border-radius:var(--radius-md);background:linear-gradient(#fffaf0,#f8efdf);border:1px solid #d7c9b2;padding:.72rem}.diag-card>strong{font-family:var(--font-display);font-size:var(--font-size-md);line-height:var(--line-height-tight);color:var(--accent-ink);margin-bottom:.2rem;display:block}.diag-card p{margin:.24rem 0 0}.learning-path .diag-card.earned,.badge-card.earned{background:linear-gradient(#eff9f3,#e4f3eb);border-color:#16684c7a}.badge-card.locked{opacity:.72}.badge-status{font-size:var(--font-size-sm);margin:.2rem 0 0;font-weight:700}.badge-card.earned .badge-status{color:var(--success)}.badge-card.locked .badge-status{color:var(--muted);font-weight:600}.arena-toolbar{justify-content:space-between;align-items:end;gap:.95rem;margin-bottom:.74rem;display:flex}.arena-elo strong{font-family:var(--font-display);font-size:var(--font-size-xl);color:var(--accent-ink);font-variant-numeric:tabular-nums;margin-top:.1rem;line-height:1;display:block}.arena-match{border-radius:var(--radius-md);background:linear-gradient(#fffaf0,#f8efdf);border:1px solid #d8ccb8;padding:.78rem}.pvp-toolbar{grid-template-columns:minmax(180px,1fr) repeat(3,minmax(130px,auto));align-items:end;gap:.68rem;display:grid}.pvp-error{color:var(--danger);font-weight:700}.author-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.68rem;margin-bottom:.72rem;display:grid}.author-grid label{font-size:.87rem}.author-grid input,.author-grid select{width:100%}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:.74rem;margin-top:.74rem;display:grid}.admin-player-row{border-top:1px solid #dbcdb7;margin-top:.42rem;padding-top:.48rem}.admin-player-row label{margin-top:.34rem}.investigation{background:linear-gradient(#f3fbf7,#ecf6f1);border-color:#0f5b4457}.coaching-intel .diag-card,.account .diag-card{background:linear-gradient(#fdfaf3,#f4ecdf)}.footer{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;font-size:.91rem;display:flex}.footer p{color:var(--muted);margin:0}.footer-admin-link{font-size:var(--font-size-xs);color:var(--muted);opacity:.7}.footer-admin-link:hover{opacity:1}.card-line{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.card-hand{gap:var(--space-1);vertical-align:middle;display:inline-flex}.card-hand-empty{color:var(--muted);font-style:italic;font-size:var(--font-size-sm)}.playing-card{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--card-face);min-width:1.85rem;box-shadow:var(--shadow-soft);font-family:var(--font-display);font-weight:700;font-size:var(--font-size-lg);justify-content:center;align-items:baseline;gap:1px;padding:.24rem .42rem;line-height:1;display:inline-flex}.playing-card.is-black{color:var(--card-ink)}.playing-card.is-red{color:var(--card-red)}.playing-card-suit{font-size:.95em}.empty{text-align:center}@keyframes panel-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes float-hero{0%,to{transform:translateY(0)}50%{transform:translateY(12px)}}@media (max-width:860px){.layout{padding:max(.82rem, var(--safe-top)) max(.82rem, var(--safe-right)) max(.82rem, var(--safe-bottom)) max(.82rem, var(--safe-left));gap:.8rem}.app-shell{padding-top:calc(4.7rem + var(--safe-top))}.hero{padding:1.08rem 1.12rem}.hero-chip{display:none}.pvp-toolbar{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-navbar{padding:calc(.48rem + var(--safe-top)) .72rem .4rem}.analysis-master #practice-window-panel-puzzle{order:1}.analysis-master #chapter-progress{resize:none;order:2;width:100%;min-width:0;max-width:none}}@media (max-width:640px){.layout{padding:max(.64rem, var(--safe-top)) max(.64rem, var(--safe-right)) max(.64rem, var(--safe-bottom)) max(.64rem, var(--safe-left))}.hero,.panel{border-radius:14px}.app-shell{padding-top:calc(4.45rem + var(--safe-top))}.workspace-navbar-current .crumb-root,.workspace-navbar-current .crumb-sep{display:none}.workspace-navbar-current .crumb-current{max-width:52vw}.hero h1{font-size:1.38rem}.arena-toolbar{flex-direction:column;align-items:stretch}.stats,.controls-grid,.chapter-grid,.diag-grid,.admin-grid,.author-grid,.account-grid{grid-template-columns:1fr}.chapter-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter-progress-label{min-width:4rem}.chapter-rail{grid-template-columns:1fr;padding-bottom:0;overflow:visible}.puzzle-sticky-actions{grid-template-columns:1fr;display:grid}.chapter-picker-overlay{padding:.5rem}.chapter-picker-window{max-height:calc(100vh - 1rem)}}@media (max-width:860px){.analysis-master .chapter-detail-stack{display:none}.analysis-master .chapter-detail-stack.is-drawer{display:grid}.chapter-mobile-summary{border-radius:var(--radius-sm);background:#fffaf1;border:1px solid #d8ccb8;gap:.42rem;margin-bottom:.6rem;padding:.58rem .62rem;display:grid}.chapter-mobile-summary strong{color:#1d3f32;font-size:.9rem}.chapter-mobile-summary span{color:#4f6157;font-size:.78rem}.chapter-rail-accordion{margin-top:.18rem;display:block}.chapter-rail-accordion-toggle{border-style:dashed;width:100%}.chapter-detail-drawer-overlay{display:grid}}@media (min-width:861px){.workspace-navbar{padding-left:1.15rem;padding-right:1.15rem}.wizard-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter-progress-shell{grid-template-columns:minmax(230px,300px) minmax(0,1fr);align-items:start}.chapter-rail{max-height:calc(100vh - 1.8rem);padding-right:.2rem;position:sticky;top:.5rem;overflow:auto}.chapter-picker-overlay{align-items:center}.analysis-master{grid-template-columns:auto minmax(0,1fr)}.analysis-master #chapter-progress{resize:horizontal;width:clamp(280px,28vw,430px);min-width:250px;max-width:min(64vw,780px);max-height:calc(100vh - 5.8rem);position:sticky;top:5.1rem;overflow:auto}.analysis-master.is-chapter-panel-collapsed #chapter-progress{resize:none;width:110px;min-width:110px;max-width:110px;overflow:hidden}.analysis-master.is-chapter-panel-collapsed #chapter-progress .chapter-progress-body,.analysis-master.is-chapter-panel-collapsed #chapter-progress .chapter-progress-head h2{display:none}.analysis-master.is-chapter-panel-collapsed #chapter-progress .chapter-progress-head{margin-bottom:0}.analysis-master .chapter-progress-shell{grid-template-columns:1fr}.analysis-master .chapter-rail{max-height:none;padding-right:0;position:static;overflow:visible}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.workspace-navbar-extras{align-items:center;gap:.6rem;margin-left:auto;display:flex}.navbar-score{color:#5d6a5b;white-space:nowrap;align-items:center;gap:.7rem;font-size:.74rem;display:flex}.navbar-score strong{color:#1f3a30;font-size:.92rem}@media (max-width:640px){.navbar-score{display:none}}.hero-extras{justify-content:center;margin-top:.6rem;display:flex}.settings-screen{gap:.9rem;max-width:760px;margin:0 auto;display:grid}.level-banner{border-radius:var(--radius-md);color:#f3f8f1;background:linear-gradient(120deg,#0f5132 0%,#1c6b44 55%,#2f8a5c 100%);align-items:center;gap:1.1rem;padding:1.1rem 1.3rem;display:flex;box-shadow:0 14px 30px #0f322147}.level-banner-rank{background:#ffffff1f;border:2px solid #ffffff59;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;width:84px;height:84px;display:flex}.level-banner-num{font-size:2rem;font-weight:800;line-height:1}.level-banner-rank-label{text-transform:uppercase;letter-spacing:.1em;opacity:.85;font-size:.64rem}.level-banner-meta{flex:1;min-width:0}.level-banner-points{margin:0 0 .5rem;font-size:1.05rem;font-weight:700}.level-banner-track{background:#ffffff38}.level-banner-track .progress-fill{background:#ffd97a}.level-banner-sub{opacity:.9;margin:.45rem 0 0;font-size:.78rem}.settings-card{border-radius:var(--radius-md);background:linear-gradient(#fffdf8 0%,#f6efe1 100%);border:1px solid #dccfb6;padding:1rem 1.15rem 1.15rem;box-shadow:0 8px 18px #1b271e14}.settings-card h2{color:#1f3a30;margin:0 0 .7rem;font-size:1.02rem}.settings-rows{gap:.1rem;display:grid}.settings-row{border-bottom:1px solid #786e5a24;justify-content:space-between;align-items:center;gap:.8rem;padding:.62rem 0;display:flex}.settings-row:last-child{border-bottom:none}.settings-row-label{color:#294338;flex-direction:column;gap:.15rem;font-size:.9rem;font-weight:600;display:flex}.settings-row-label small{color:#6c7568;font-size:.74rem;font-weight:400}.settings-row select,.reminder-hour{border-radius:var(--radius-sm);color:#26382f;background:#fffef9;border:1px solid #cebfa3;padding:.34rem .5rem;font-size:.85rem}.reminder-hour{width:64px}.settings-row-controls{align-items:center;gap:.6rem;display:flex}.switch{cursor:pointer;background:#c9bea6;border:none;border-radius:999px;flex:none;width:46px;height:26px;padding:0;transition:background .18s;position:relative}.switch.is-on{background:var(--accent)}.switch-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch.is-on .switch-knob{transform:translate(20px)}.settings-cta{background:linear-gradient(120deg, var(--accent), var(--accent-soft));color:#f6f8f2;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:.42rem .95rem;font-weight:600}.settings-cta:disabled{opacity:.5;cursor:not-allowed}.settings-subtle{color:#77806f;margin:.25rem 0 .35rem;font-size:.76rem}.settings-warn{border-radius:var(--radius-sm);color:#8a5320;background:#fbe6d8;border:1px solid #e6c39a;margin:.45rem 0 0;padding:.5rem .7rem;font-size:.78rem}.badge-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.7rem;display:grid}.badge-tile{text-align:center;border-radius:var(--radius-md);background:#fffdf8;border:1px solid #e0d4bd;flex-direction:column;align-items:center;gap:.32rem;padding:.95rem .7rem;display:flex}.badge-tile.locked{opacity:.85}.badge-tile.earned{background:linear-gradient(#f1f8ef 0%,#e2f0df 100%);border-color:#0f513273;box-shadow:0 6px 16px #0f513229}.badge-icon{font-size:1.8rem;line-height:1}.badge-tile.locked .badge-icon{filter:grayscale(.7);opacity:.7}.badge-name{color:#20392f;font-size:.86rem}.badge-hint{color:#77806f;min-height:2.1em;margin:0;font-size:.72rem}.badge-progress{flex-direction:column;align-items:center;gap:.22rem;width:100%;display:flex}.badge-track{width:100%}.badge-progress-num{color:#5d6a5b;font-variant-numeric:tabular-nums;font-size:.72rem}.badge-earned-pill{color:#0f5132;font-size:.74rem;font-weight:700}@media (max-width:560px){.badge-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}}.language-switcher{background:#ffffff14;border:1px solid #ffffff1f;border-radius:999px;gap:.18rem;padding:.18rem;display:inline-flex}.language-switcher-btn{-webkit-appearance:none;appearance:none;color:inherit;font:inherit;cursor:pointer;letter-spacing:.02em;opacity:.88;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.32rem;min-width:44px;min-height:44px;padding:.32rem .55rem;font-size:.78rem;line-height:1;transition:background .15s,opacity .15s,color .15s;display:inline-flex}.language-switcher-btn:hover:not(.is-active){opacity:1;background:#ffffff0f}.language-switcher-btn.is-active{color:#0f5132;opacity:1;cursor:default;background:#ffffffeb;font-weight:600}.language-switcher-btn:focus-visible{outline-offset:2px;outline:2px solid #f4f7f2}@media (max-width:640px){.language-switcher-btn{padding:.28rem .4rem;font-size:.72rem}}.truth-chip{letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;margin-left:.55rem;padding:.12rem .55rem;font-size:.7rem;font-weight:600;display:inline-block}.truth-chip.truth-solver{color:#46b46e;background:#46b46e38;border-color:#46b46e73}.truth-chip.truth-heuristic{color:#d3a849;background:#dcaa462e;border-color:#dcaa4666}.truth-chip.truth-solver_suspect{color:#d36a6a;background:#dc5a5a2e;border-color:#dc5a5a66}.feedback .common-mistake{background:#dcaa4614;border-left:3px solid #dcaa468c;border-radius:6px;margin-top:.4rem;padding:.55rem .7rem}.feedback .teaching-point{border-left:3px solid var(--info);background:#2a6a8817;border-radius:6px;margin:.4rem 0 .6rem;padding:.55rem .7rem;font-style:italic}.panel.puzzle h2:focus{outline:none}.panel.puzzle h2{scroll-margin-top:5.6rem}.puzzle-facts{gap:.4rem;margin:.6rem 0 0;display:grid}.puzzle-fact{grid-template-columns:minmax(5.5rem,max-content) 1fr;align-items:baseline;gap:.7rem;display:grid}.puzzle-fact dt{color:var(--accent-ink);font-weight:700}.puzzle-fact dd{min-width:0;margin:0}.puzzle-tags{flex-wrap:wrap;gap:.32rem;margin:.1rem 0 .2rem;display:flex}.puzzle-tag{border:1px solid var(--border);background:var(--surface-strong);color:#3a463d;font-size:var(--font-size-xs);letter-spacing:.02em;text-transform:capitalize;border-radius:999px;align-items:center;padding:.14rem .5rem;font-weight:700;display:inline-flex}.suit-red{color:var(--card-red)}.verdict-revealed{color:var(--info);background:#2a6a881a;border-color:#2a6a8857}.verdict-revealed .verdict-icon{background:var(--info)}.ev-best-tag{color:var(--success);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;background:#1f7a4a29;border-radius:999px;margin-left:.4rem;padding:.05rem .4rem;font-weight:800}.poker-table{margin:.75rem 0 .5rem}.table-felt{background:radial-gradient(at 50% 32%,#ffffff1f,#0000 62%),linear-gradient(165deg,#12664d 0%,#0b4030 100%);border:3px solid #0a3b2c;border-radius:88px;justify-items:center;gap:.85rem;padding:1.05rem 1.1rem 1.2rem;display:grid;position:relative;box-shadow:inset 0 0 0 6px #ffffff0a,inset 0 6px 24px #00000057,0 16px 30px #08281c4d}.seat{flex-direction:column;align-items:center;gap:.32rem;display:flex}.seat-role{font-family:var(--font-display);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:#f5f8f4cc;font-weight:800}.seat-role-hero{color:#ffd97a}.seat-pos{color:#eaf3ea;letter-spacing:.02em;background:#0000003d;border:1px solid #fff3;border-radius:999px;align-items:center;padding:.2rem .72rem;font-size:.82rem;font-weight:700;display:inline-flex}.table-center{border-top:1px dashed #ffffff24;border-bottom:1px dashed #ffffff24;flex-direction:column;align-items:center;gap:.42rem;width:100%;padding:.45rem 0;display:flex}.table-board-label{font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;color:#f5f8f48c;font-weight:800}.table-stack{color:#ffe7ab;background:#ffd97a29;border:1px solid #ffd97a80;border-radius:999px;align-items:center;padding:.16rem .62rem;font-size:.72rem;font-weight:700;display:inline-flex}.table-felt .card-hand{gap:.4rem;display:inline-flex}.table-felt .card-hand-empty{color:#f5f8f4d1;font-size:var(--font-size-md);font-style:italic}.table-felt .playing-card{min-width:2.2rem;font-size:var(--font-size-xl);padding:.32rem .5rem}.seat-hero .playing-card{min-width:2.7rem;padding:.42rem .6rem;font-size:1.7rem;box-shadow:0 6px 14px #00000052}.puzzle-situation{text-align:center;font-size:var(--font-size-sm);color:var(--muted);margin:.55rem 0 0}.daily-spot-panel .daily-subtitle{color:var(--muted,#5b6b61);margin:0 0 1rem}.daily-streak-chip{color:#fff;background:#0a3b29;border-radius:999px;margin-left:auto;padding:.2rem .6rem;font-size:.85rem}.daily-puzzle-title{margin:0 0 .35rem}.daily-puzzle-question{color:var(--muted,#5b6b61);margin:0 0 1rem}.daily-choices{gap:.5rem;margin-bottom:1rem;display:grid}.daily-choice{text-align:left;border:1px solid var(--border,#d4ddd6);color:var(--accent-ink,#0b3527);cursor:pointer;background:#fff;border-radius:10px;padding:.7rem .9rem}.daily-choice.is-selected{border-color:#0a3b29;box-shadow:inset 0 0 0 1px #0a3b29}.daily-choice:disabled{opacity:.6;cursor:default}.daily-submit{color:#fff;cursor:pointer;background:#0a3b29;border:none;border-radius:10px;padding:.6rem 1.2rem}.daily-submit:disabled{opacity:.5;cursor:default}.daily-empty,.daily-error{color:var(--muted,#5b6b61)}.daily-signin-hint{color:#0a3b29;font:inherit;cursor:pointer;background:#fff;border:1px solid #0a3b29;border-radius:10px;padding:.6rem 1.2rem;font-weight:600;display:inline-block}.daily-signin-hint:hover{color:#fff;background:#0a3b29}.daily-error{color:#9a2a2a}.daily-result{background:#eef6f1;border-radius:10px;padding:.75rem 1rem}.daily-share-row{align-items:center;gap:.6rem;margin-top:.6rem;display:flex}.daily-share{color:#0a3b29;cursor:pointer;background:#fff;border:1px solid #0a3b29;border-radius:10px;padding:.5rem 1rem;font-weight:600}.daily-share:hover{color:#fff;background:#0a3b29}.daily-share-note{color:var(--muted,#5b6b61);font-size:.85rem}.daily-leaderboard{border-top:1px solid var(--border,#d4ddd6);margin-top:1.5rem;padding-top:1rem}.daily-board-list{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.daily-board-row{background:#f7faf8;border-radius:8px;grid-template-columns:3rem 1fr auto;gap:.5rem;padding:.35rem .5rem;display:grid}.daily-board-rank{font-variant-numeric:tabular-nums;color:var(--muted,#5b6b61)}.daily-board-score{font-variant-numeric:tabular-nums;font-weight:600}.daily-board-list+.daily-board-list{margin-top:.75rem}.daily-you{box-shadow:inset 0 0 0 1px var(--border,#d4ddd6);font-weight:600}.daily-board-you{background:var(--border,#d4ddd6);border-radius:999px;margin-left:.35rem;padding:0 .4rem;font-size:.8em;font-weight:600}.daily-your-rank{margin:.75rem 0 0}.share-recipient-page{justify-content:center;padding:2rem 1rem;display:flex}.share-recipient-card{border:1px solid var(--border,#d4ddd6);background:#fff;border-radius:14px;width:100%;max-width:560px;padding:1.5rem}.share-from{color:var(--muted,#5b6b61);margin:0 0 1rem}.share-prompt{margin:.75rem 0 .5rem;font-weight:600}.share-choices{gap:.5rem;margin-bottom:1rem;display:grid}.share-choice{text-align:left;border:1px solid var(--border,#d4ddd6);color:var(--accent-ink,#0b3527);cursor:pointer;background:#fff;border-radius:10px;padding:.7rem .9rem}.share-choice.is-selected{border-color:#0a3b29;box-shadow:inset 0 0 0 1px #0a3b29}.share-choice:disabled{opacity:.6;cursor:default}.share-submit,.share-trainer-cta{color:#fff;cursor:pointer;background:#0a3b29;border:none;border-radius:10px;padding:.6rem 1.2rem}.share-submit:disabled{opacity:.5;cursor:default}.share-outcome{background:#eef6f1;border-radius:10px;margin-bottom:1rem;padding:.9rem 1rem}.share-agree{color:#0a6b3f;font-weight:600}.share-disagree{color:#9a5a1a;font-weight:600}.share-gone{color:var(--muted,#5b6b61)}.panel.account{gap:var(--space-4);box-shadow:none;background:0 0;border:0;flex-direction:column;padding:0;display:flex}.panel.account>h2{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.account-hero{border-radius:var(--radius-lg);color:#f3f8f1;background:linear-gradient(125deg,#0f5132 0%,#1c6b44 55%,#2f8a5c 100%);align-items:center;gap:1rem;padding:1.15rem 1.3rem;display:flex;box-shadow:0 16px 32px #0f322147}.account-hero-badge{background:#ffffff24;border:2px solid #ffffff52;border-radius:50%;flex:none;place-items:center;width:58px;height:58px;display:grid}.account-hero-badge svg{width:30px;height:30px}.account-hero-text{flex:1;min-width:0}.account-hero-title{font-family:var(--font-display);color:#fff;margin:0;font-size:1.28rem;line-height:1.15}.account-hero-sub{opacity:.92;margin:.3rem 0 0;font-size:.82rem}.account-status-pill{text-transform:uppercase;letter-spacing:.05em;color:#fff;white-space:nowrap;background:#ffffff29;border:1px solid #ffffff4d;border-radius:999px;flex:none;align-self:flex-start;align-items:center;gap:.45rem;padding:.34rem .72rem;font-size:.7rem;font-weight:800;display:inline-flex}.account-status-pill:before{content:"";background:#ffd97a;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #ffd97a40}.account-status-pill.is-synced:before{background:#8fe3b0;box-shadow:0 0 0 3px #8fe3b047}.account-card{border-radius:var(--radius-md);background:linear-gradient(#fffdf8 0%,#f6efe1 100%);border:1px solid #dccfb6;padding:1rem 1.15rem 1.15rem;box-shadow:0 8px 18px #1b271e14}.account-card-head{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.55rem;display:flex}.account-card-title{font-family:var(--font-display);color:var(--accent-ink);align-items:center;gap:.5rem;margin:0;font-size:1.02rem;line-height:1.15;display:inline-flex}.account-card-title svg{width:18px;height:18px;color:var(--accent);flex:none}.account-card p{color:var(--muted);font-size:var(--font-size-sm);margin:.25rem 0 0}.account-chip{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;flex:none;align-items:center;gap:.35rem;padding:.24rem .62rem;font-size:.68rem;font-weight:800;display:inline-flex}.account-chip.is-guest{color:#7a5212;background:#b17a2a24;border:1px solid #b17a2a6b}.account-chip.is-cloud{color:var(--success);background:#1f7a4a1f;border:1px solid #1f7a4a6b}.account-snapshot{border-radius:var(--radius-sm);background:var(--surface-alt);border:1px dashed var(--border);flex-wrap:wrap;gap:.55rem 1.4rem;margin:.7rem 0 0;padding:.62rem .78rem;display:flex}.account-snapshot-item{flex-direction:column;gap:.12rem;display:flex}.account-snapshot-item .k{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:.64rem}.account-snapshot-item .v{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.account-lines{border-radius:var(--radius-sm);background:var(--surface-alt);border:1px dashed var(--border);flex-direction:column;gap:.32rem;margin:.7rem 0 0;padding:.62rem .78rem;display:flex}.account-line{font-size:var(--font-size-sm);color:var(--muted);margin:0}.account-line strong{color:var(--text);font-variant-numeric:tabular-nums}.account .account-grid{margin-bottom:0}.account-reset{border-top:1px solid var(--border);margin-top:.95rem;padding-top:.85rem}.account-subhead{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .55rem;font-size:.74rem;font-weight:800}.account-foot{color:var(--muted);align-items:center;gap:.45rem;margin:0;padding:0 .25rem;font-size:.78rem;display:flex}.account-foot svg{width:15px;height:15px;color:var(--accent-soft);flex:none}.account-foot-link{color:var(--accent);white-space:nowrap;margin-left:auto;font-weight:700}.settings-privacy-link{font-size:var(--font-size-sm);margin:.7rem 0 0}.settings-privacy-link a{color:var(--accent);font-weight:700}.account-danger-zone{border-color:var(--danger);background:linear-gradient(#fff8f8 0%,#fceaea 100%)}.account-danger-title{color:var(--danger)}.btn-danger{background:var(--danger);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:.45rem 1rem;font-weight:700}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.account-delete-dialog{border:1px solid var(--danger);border-radius:var(--radius-md);width:90vw;max-width:420px;padding:1.5rem;box-shadow:0 8px 32px #a3202f2e}.account-delete-dialog h3{color:var(--danger);font-family:var(--font-display);margin:0 0 .6rem}.account-delete-dialog label{font-size:var(--font-size-sm);flex-direction:column;gap:.3rem;margin-top:.9rem;font-weight:600;display:flex}.account-delete-dialog::backdrop{background:#00000073}@media (max-width:540px){.account-hero{flex-wrap:wrap;gap:.8rem}.account-status-pill{order:3}}.account-long-offline h3{font-family:var(--font-display);margin:0 0 .6rem}.account-long-offline-sessions{flex-direction:column;gap:.4rem;margin:0 0 .8rem;padding:0;list-style:none;display:flex}.account-long-offline-sessions li{border:1px solid var(--border);border-radius:var(--radius-md);padding:.45rem .6rem}.account-long-offline-sessions label{cursor:pointer;font-size:var(--font-size-sm);align-items:center;gap:.5rem;display:flex}.account-long-offline-actions{flex-wrap:wrap;gap:.6rem;display:flex}.first-run-dialog{border:1px solid var(--border);border-radius:var(--radius-md);width:90vw;max-width:440px;padding:2rem;box-shadow:0 8px 32px #0000002e}.first-run-dialog::backdrop{background:#00000073}.first-run-dialog h2{font-family:var(--font-display);margin:0 0 .75rem}.first-run-dots{gap:.4rem;margin-bottom:1.25rem;display:flex}.first-run-dot{background:var(--border);border-radius:50%;width:8px;height:8px;transition:background .2s}.first-run-dot.is-active{background:var(--primary)}.first-run-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.5rem;display:flex}.first-run-skip-link{font-size:var(--font-size-sm);color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.first-run-hint{font-size:var(--font-size-sm);color:var(--muted);margin:.5rem 0 0}.resources-hub{padding:var(--space-6) var(--space-5);max-width:960px;margin:0 auto}.resources-hub h2{font-family:var(--font-display);font-size:var(--font-size-xl);color:var(--text);margin-bottom:var(--space-5)}.resources-hub-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.resource-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);gap:var(--space-3);box-shadow:var(--shadow-soft);cursor:pointer;flex-direction:column;transition:box-shadow .15s,transform .15s;display:flex}.resource-card:hover{box-shadow:var(--shadow-medium);outline:2px solid var(--focus-ring);outline-offset:2px;transform:translateY(-2px)}.resource-card:focus-visible{box-shadow:var(--shadow-medium);outline:2px solid var(--focus-ring);outline-offset:2px;transform:translateY(-2px)}button.resource-card{text-align:left;width:100%;font:inherit;cursor:pointer}a.resource-card{color:inherit;text-decoration:none}.resource-card-eyebrow{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--accent-soft);font-weight:600}.resource-card-title{font-family:var(--font-display);font-size:var(--font-size-lg);color:var(--text);font-weight:700;line-height:var(--line-height-tight);margin:0}.resource-card-desc{font-size:var(--font-size-sm);color:var(--muted);line-height:var(--line-height-base);flex:1;margin:0}.resource-card-footer{font-size:var(--font-size-xs);color:var(--accent);font-weight:600}.resource-lang-switch{margin-bottom:var(--space-4);grid-template-columns:repeat(5,1fr);align-items:stretch;display:grid}.resource-lang-switch button{z-index:1;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-alt);color:var(--muted);font-size:var(--font-size-sm);cursor:pointer;transition:background .12s,color .12s,border-color .12s;position:relative}.resource-lang-switch button:hover{background:var(--bg-soft);color:var(--text)}.resource-lang-switch button[aria-pressed=true],.resource-lang-switch button.active{background:var(--accent);color:var(--surface);border-color:var(--accent-ink)}.resource-lang-switch button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.article-view{max-width:720px;padding:var(--space-6) var(--space-5);margin:0 auto}.article-back{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--accent);cursor:pointer;margin-bottom:var(--space-5);background:0 0;border:none;padding:0;font-weight:600;display:inline-flex}.article-back:hover{color:var(--accent-ink);text-decoration:underline}.article-back:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:2px}.article-hero{background:var(--surface-alt);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-6);margin-bottom:var(--space-6);border:1px solid var(--border)}.article-hero-eyebrow{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--accent-soft);margin-bottom:var(--space-2);font-weight:700}.article-hero h1{font-family:var(--font-display);font-size:var(--font-size-2xl);color:var(--text);font-weight:800;line-height:var(--line-height-tight);margin:0 0 var(--space-3)}.article-hero-lead{font-size:var(--font-size-lg);color:var(--muted);line-height:var(--line-height-base);margin:0}.md-lite{font-size:var(--font-size-md);line-height:var(--line-height-base);color:var(--text)}.md-lite>*+*{margin-top:var(--space-4)}.md-p{max-width:66ch;margin:0}.md-quote{border-left:4px solid var(--accent);padding:var(--space-3) var(--space-5);background:var(--surface-alt);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--accent-ink);margin:0;font-style:italic}.md-ul,.md-ol{padding-left:var(--space-6);margin:0}.md-ul li,.md-ol li{margin-bottom:var(--space-2);line-height:var(--line-height-base)}.md-ul li:last-child,.md-ol li:last-child{margin-bottom:0}.md-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm);background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);overflow:hidden}.md-table th,.md-table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--border)}.md-table th{background:var(--surface-strong);font-weight:700;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.md-table tbody tr:last-child td{border-bottom:none}.md-table tbody tr:hover td{background:var(--bg-soft)}.viz-frame{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);margin:var(--space-5) 0;box-shadow:var(--shadow-soft);gap:var(--space-3);flex-direction:column;display:flex}.viz-eyebrow{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--accent-soft);font-weight:700;display:block}.viz-title{font-family:var(--font-display);font-size:var(--font-size-lg);color:var(--text);font-weight:700;line-height:var(--line-height-tight);margin:0}.viz-body{overflow-x:auto}.viz-insight{font-size:var(--font-size-sm);color:var(--accent-ink);background:var(--surface-alt);border-left:3px solid var(--accent);padding:var(--space-3) var(--space-4);border-radius:0 var(--radius-sm) var(--radius-sm) 0;line-height:var(--line-height-base);margin:0}.viz-footnote{font-size:var(--font-size-xs);color:var(--muted);margin:0;font-style:italic}.potodds-wrapper{gap:var(--space-4);flex-direction:column;display:flex}.potodds-row{align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);display:flex}.potodds-label{min-width:120px;color:var(--muted);font-weight:600}.potodds-value{text-align:right;min-width:52px;font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text);font-weight:700}.potodds-verdict{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:700;display:inline-block}.potodds-verdict-call{background:var(--success);color:var(--surface)}.potodds-verdict-fold{background:var(--danger);color:var(--surface)}.potodds-verdict-breakeven{background:var(--warning);color:var(--surface)}.potodds-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}.potodds-stat{background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4)}.potodds-stat-label{font-size:var(--font-size-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.potodds-stat-value{font-family:var(--font-mono);font-size:var(--font-size-lg);color:var(--text);font-weight:700}.outs-wrapper{gap:var(--space-4);flex-direction:column;display:flex}.outs-grid{gap:var(--space-2);flex-wrap:wrap;display:flex}.outs-card{border-radius:var(--radius-sm);border:2px solid var(--border);background:var(--surface-alt);width:36px;height:48px;font-size:var(--font-size-xs);font-family:var(--font-mono);color:var(--muted);justify-content:center;align-items:center;transition:border-color .15s,background .15s;display:flex}.outs-card.outs-card-active{border-color:var(--accent);background:var(--accent);color:var(--surface);font-weight:700}.outs-card.outs-card-red{color:var(--card-red)}.outs-card.outs-card-active.outs-card-red{border-color:var(--danger);background:var(--danger);color:var(--surface)}.outs-count{font-family:var(--font-mono);font-size:var(--font-size-2xl);color:var(--accent);font-weight:800}.outs-equity{font-size:var(--font-size-sm);color:var(--muted)}.outs-equity strong{color:var(--text);font-weight:700}.svg-bar-chart{display:block;overflow:visible}.svg-bar{fill:var(--accent);transition:fill .15s}.svg-bar:hover{fill:var(--accent-soft)}.svg-bar-muted{fill:var(--surface-strong)}.svg-bar-danger{fill:var(--danger)}.svg-bar-success{fill:var(--success)}.svg-bar-warning{fill:var(--warning)}.svg-bar-label{font-family:var(--font-mono);fill:var(--muted);font-size:11px}.svg-bar-value{font-family:var(--font-mono);fill:var(--text);font-size:11px;font-weight:700}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0}.reveal.is-visible{animation:.5s cubic-bezier(.22,.61,.36,1) both fadeUp}@keyframes verdictPop{0%{transform:scale(.96)}60%{transform:scale(1.06)}to{transform:scale(1)}}.potodds-verdict{animation:.22s cubic-bezier(.22,.61,.36,1) both verdictPop}@keyframes markerGlow{0%{filter:drop-shadow(0 0 0px var(--accent));opacity:1}50%{filter:drop-shadow(0 0 4px var(--accent));opacity:.9}to{filter:drop-shadow(0 0 0px var(--accent));opacity:1}}.svg-bar-chart.breakeven-glow .svg-breakeven-marker{animation:.5s ease-out both markerGlow}.svg-bar{transition:fill .25s}.resource-card{transition:box-shadow .18s,transform .18s}.resource-card:hover{box-shadow:var(--shadow-medium);transform:translateY(-3px)}.resource-card:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.resource-card:active{transform:translateY(0)}.potodds-preset-chip,.outs-card,.resource-lang-switch button{transition:background .15s,color .15s,border-color .15s}.potodds-preset-chip:active,.outs-card:active,.resource-lang-switch button:active{transform:scale(.97)}input[type=range]::-webkit-slider-thumb{transition:transform .15s}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.2)}input[type=range]:focus::-webkit-slider-thumb{transform:scale(1.2)}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.1)}input[type=range]::-moz-range-thumb{transition:transform .15s}input[type=range]:hover::-moz-range-thumb{transform:scale(1.2)}input[type=range]:focus::-moz-range-thumb{transform:scale(1.2)}input[type=range]:active::-moz-range-thumb{transform:scale(1.1)}@keyframes dealIn{0%{opacity:0;transform:translateY(-10px)rotate(-8deg)}to{opacity:1;transform:translateY(0)rotate(0)}}.outs-cards{flex-wrap:wrap;gap:4px;margin-top:10px;display:flex}.out-card{border:1px solid var(--border);background:var(--surface);width:26px;height:34px;color:var(--card-ink,#1a1a1a);animation:.3s cubic-bezier(.22,.61,.36,1) both dealIn;animation-delay:calc(var(--i) * 40ms);border-radius:4px;justify-content:center;align-items:center;font-size:13px;line-height:1;display:inline-flex}.out-card--red{color:var(--card-red,#c0392b)}.reading-progress-rail{z-index:10;background:0 0;height:3px;position:sticky;top:0}.reading-progress{background:var(--accent);width:0;min-width:0;height:3px}@keyframes verdictWash{0%{background:0 0}20%{background:var(--wash-color)}to{background:0 0}}.potodds-readout{animation:.6s ease-out both verdictWash}.potodds-readout--call{--wash-color:color-mix(in srgb, var(--success) 20%, transparent)}.potodds-readout--fold{--wash-color:color-mix(in srgb, var(--danger) 20%, transparent)}.potodds-readout--breakeven{--wash-color:color-mix(in srgb, var(--gold) 15%, transparent)}.resource-lang-switch{position:relative}.lang-indicator{background:color-mix(in srgb, var(--accent) 18%, transparent);pointer-events:none;z-index:0;width:20%;height:100%;transform:translateX(calc(var(--idx) * 100%));border-radius:4px;transition:transform .25s;position:absolute;top:0;left:0}@keyframes chipDrop{0%{opacity:0;transform:translateY(-22px)}60%{opacity:1;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.potodds-chips{justify-content:center;align-items:flex-end;gap:48px;margin:16px 0 12px;display:flex}.chip-stack{flex-direction:column;align-items:center;gap:6px;display:flex}.chip-stack__label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted,#6b7280);font-size:11px;font-weight:600}.chip-stack__tower{width:44px;position:relative}.chip-stack__amount{font-variant-numeric:tabular-nums;color:var(--text);text-align:center;min-width:48px;font-size:13px;font-weight:700}.chip{border-radius:50%;width:44px;height:14px;position:absolute;left:0;box-shadow:0 2px 4px #00000059,inset 0 1px #ffffff38,inset 0 -1px #00000040}.chip:before{content:"";pointer-events:none;border:1.5px dashed #ffffff8c;border-radius:50%;position:absolute;top:2px;bottom:2px;left:4px;right:4px}.chip:after{content:"";pointer-events:none;background:#ffffff1f;border-radius:50%;position:absolute;top:4px;bottom:4px;left:10px;right:10px}.chip--pot{background:linear-gradient(160deg, var(--accent-soft,#2a7a5e) 0%, var(--accent,#0f5b44) 60%, var(--accent-ink,#0b3527) 100%)}.chip--call{background:linear-gradient(160deg, #c94054 0%, var(--danger,#a3202f) 55%, #7a1220 100%)}.chip-drop{animation:.32s cubic-bezier(.34,1.28,.64,1) both chipDrop;animation-delay:calc(var(--i) * 45ms)}.potodds-chips--glow .chip-stack--pot .chip-stack__tower{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--accent) 55%, transparent))}@media (prefers-reduced-motion:reduce){.reveal,.reveal.is-visible{opacity:1;animation:none;transform:none}.potodds-verdict{animation:none}.svg-bar-chart.breakeven-glow .svg-breakeven-marker{filter:none;animation:none}.svg-bar,.resource-card{transition:none}.resource-card:hover{transform:none}.potodds-preset-chip,.outs-card,.resource-lang-switch button{transition:none}.potodds-preset-chip:active,.outs-card:active,.resource-lang-switch button:active{transform:none}input[type=range]::-webkit-slider-thumb{transition:none;transform:none}input[type=range]:hover::-webkit-slider-thumb{transition:none;transform:none}input[type=range]:focus::-webkit-slider-thumb{transition:none;transform:none}input[type=range]:active::-webkit-slider-thumb{transition:none;transform:none}input[type=range]::-moz-range-thumb{transition:none;transform:none}input[type=range]:hover::-moz-range-thumb{transition:none;transform:none}input[type=range]:focus::-moz-range-thumb{transition:none;transform:none}input[type=range]:active::-moz-range-thumb{transition:none;transform:none}.out-card{opacity:1;animation:none;transform:none}.potodds-readout{animation:none}.lang-indicator{transition:none}.chip-drop{opacity:1;animation:none;transform:none}.potodds-chips--glow .chip-stack--pot .chip-stack__tower{filter:none}}
