.dash-welcome{max-width:1100px;margin:24px auto 0;padding:0 20px;gap:18px}.dash-welcome,.dash-welcome-head{display:flex;flex-direction:column}.dash-welcome-head{gap:4px}.dash-welcome-title{font-size:28px;font-weight:700;letter-spacing:-.01em;margin:0}.dash-welcome-sub{font-size:15px;color:var(--ink-muted,#5b5550);margin:0}.dash-tabs-wrap{max-width:1100px;margin:20px auto 4px;padding:0 20px;text-align:center}.dash-tabs{display:inline-flex;gap:4px;padding:4px;background:var(--rule-soft,#f1f1ec);border:1px solid var(--rule,#e8e8e2);border-radius:12px}.dash-tab{appearance:none;border:0;background:transparent;color:var(--ink-dim,#6b6b65);font:inherit;font-size:14px;font-weight:650;padding:8px 16px;border-radius:9px;cursor:pointer;transition:background .15s ease,color .15s ease}.dash-tab.is-active,.dash-tab:hover{color:var(--ink,#0e0e0c)}.dash-tab.is-active{background:var(--paper,#fff);box-shadow:0 1px 2px rgba(0,0,0,.08)}.dash-companion{max-width:1100px;margin:26px auto 0;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#fff;border:1px solid rgba(26,26,26,.22);border-radius:12px}.dash-companion-l{display:flex;align-items:center;gap:13px;min-width:0}.dash-companion-tag{flex:none;font-size:9.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:3px 8px;background:#e0cac6;color:#5a4340}.dash-companion-t{font-size:14px;line-height:1.5}.dash-companion-t b{font-weight:700}.dash-companion-t span{display:block;margin-top:2px;font-size:12.5px;color:#5f5f5f}.dash-companion-go{flex:none;background:#1a1a1a;color:#f5f2ed;text-decoration:none;font-size:13px;font-weight:700;padding:11px 20px;border-radius:8px}.dash-banner{max-width:1100px;margin:14px auto 0;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#fdeaea;border:1px solid #e6a3a3;border-radius:12px;color:#8a2222;font-size:14px}.dash-banner-text{flex:1 1 240px;line-height:1.4}.dash-banner-actions{display:inline-flex;align-items:center;gap:14px;white-space:nowrap}.dash-banner-cta{font-weight:700;color:#c0271f;text-decoration:none}.dash-banner-cta:hover{text-decoration:underline}.dash-banner-dismiss{color:#9a8a63;text-decoration:none;font-size:13px}.dash-banner-dismiss:hover{text-decoration:underline}.dash-panel{--rw:#c8890f;--math:#5e6ceb;max-width:1100px;margin:12px auto 0;padding:0 20px 24px;gap:22px}.an-block,.dash-panel{display:flex;flex-direction:column}.an-block{gap:12px}.an-h{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.an-h,.an-note{color:var(--ink-dim,#6b6b65);margin:0}.an-note{font-size:14px;line-height:1.55}.an-empty{font-size:14px;color:var(--ink-soft,#9a9a93);background:var(--paper,#fff);border:1px dashed var(--rule,#e8e8e2);border-radius:12px;padding:24px;margin:0}.an-bands{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.an-band{background:var(--paper,#fff);border:1px solid var(--rule,#e8e8e2);border-radius:12px;padding:14px 16px;--tone:var(--ink,#0e0e0c)}.an-band--rw{--tone:var(--rw)}.an-band--math{--tone:var(--math)}.an-band--composite{--tone:var(--accent,#be123c)}.an-band-head{display:flex;justify-content:space-between;align-items:baseline}.an-band-label{font-size:12px;font-weight:650;color:var(--ink-dim,#6b6b65)}.an-band-median{font-size:26px;font-weight:800;letter-spacing:-.02em;color:var(--tone)}.an-band-track{position:relative;height:8px;margin:12px 0 6px;background:var(--rule-soft,#f1f1ec);border-radius:5px}.an-band-range{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--tone) 30%,transparent);border-radius:5px}.an-band-dot{position:absolute;top:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--tone);border:2px solid var(--paper,#fff);transform:translateY(-50%)}.an-band-foot{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-soft,#9a9a93)}.an-chart{background:var(--paper,#fff);border:1px solid var(--rule,#e8e8e2);border-radius:12px;padding:14px}.an-chart svg{width:100%;height:auto;display:block}.an-chart-area{fill:color-mix(in srgb,var(--accent,#be123c) 12%,transparent);stroke:none}.an-chart-line{fill:none;stroke:var(--accent,#be123c);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.an-chart-dot{fill:var(--accent,#be123c)}.an-chart-xlabel{fill:var(--ink-soft,#9a9a93);font-size:11px}.an-chart-vlabel{fill:var(--ink-dim,#6b6b65);font-size:11px;font-weight:700}.an-chart-legend{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:8px;font-size:12px;color:var(--ink-dim,#6b6b65)}.an-chart-legend span{display:inline-flex;align-items:center;gap:6px}.an-chart-legend i{width:12px;height:12px;border-radius:3px;display:inline-block}.an-chart-legend .an-legend-dash{width:14px;height:0;border-top:2px dashed #b9b9b0;border-radius:0}.an-chart-legend .an-legend-bar{width:8px;height:12px;background:#e8ddc4}.an-tables{display:grid;grid-template-columns:1fr 1fr;gap:16px}.an-table{background:var(--paper,#fff);border:1px solid var(--rule,#e8e8e2);border-radius:12px;padding:6px;--tone:var(--rw)}.an-table--math{--tone:var(--math)}.an-table-head{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;font-size:13px;font-weight:750;color:var(--tone)}.an-row-cols,.an-table-cols{display:grid;grid-template-columns:88px 30px 30px 30px 40px;gap:4px;align-items:center}.an-table-cols{font-size:10px;font-weight:600;color:var(--ink-soft,#9a9a93);text-align:center}.an-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 10px;border-radius:8px}.an-row:nth-child(2n){background:var(--rule-soft,#f1f1ec)}.an-row-name{font-size:12.5px;color:var(--ink-2,#2a2a26);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.an-bar{position:relative;height:16px;background:var(--rule-soft,#f1f1ec);border-radius:4px;overflow:hidden;display:flex;align-items:center}.an-bar-fill{position:absolute;inset:0 auto 0 0;background:color-mix(in srgb,var(--tone) 45%,transparent);border-radius:4px}.an-bar-val{position:relative;font-size:10px;font-weight:700;color:var(--ink-2,#2a2a26);margin-left:5px}.an-diff{font-size:10.5px;font-weight:650;text-align:center;padding:3px 0;border-radius:4px;color:var(--ink-dim,#6b6b65);background:var(--rule-soft,#f1f1ec)}.an-diff.is-strong{background:#dcf3e3;color:#1c7a44}.an-diff.is-mid{background:#fdf0d8;color:#9a6b0f}.an-diff.is-weak{background:#fce0e0;color:#b1322f}.an-diff.is-empty{background:transparent;color:var(--ink-soft,#c9c9c0)}.an-diff.is-total{font-weight:800}.an-movers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.an-mover{background:var(--paper,#fff);border:1px solid var(--rule,#e8e8e2);border-left-width:3px;border-radius:12px;padding:12px 14px;min-width:0}.an-mover--improved{border-left-color:#1c7a44}.an-mover--slipping{border-left-color:#b1322f}.an-mover--quickwin{border-left-color:#c8890f}.an-mover-head{display:flex;align-items:center;gap:7px;margin-bottom:9px}.an-mover-icon{font-size:11px}.an-mover--improved .an-mover-icon{color:#1c7a44}.an-mover--slipping .an-mover-icon{color:#b1322f}.an-mover--quickwin .an-mover-icon{color:#c8890f}.an-mover-title{font-size:12px;font-weight:750;color:var(--ink-2,#2a2a26)}.an-mover-empty{font-size:12px;color:var(--ink-soft,#9a9a93);margin:0}.an-mover-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.an-mover-list li{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-size:12.5px;min-width:0}.an-mover-skill{color:var(--ink-2,#2a2a26);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.an-mover-stat{font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}.an-mover--improved .an-mover-stat{color:#1c7a44}.an-mover--slipping .an-mover-stat{color:#b1322f}.an-mover--quickwin .an-mover-stat{color:#c8890f}.an-table-cols2{display:grid;grid-template-columns:150px 96px;gap:14px;font-size:10px;font-weight:600;color:var(--ink-soft,#9a9a93);text-align:left}.an-row2{display:grid;grid-template-columns:1fr 150px 96px;gap:14px;align-items:center;padding:5px 10px;border-radius:8px}.an-row2:nth-child(2n){background:var(--rule-soft,#f1f1ec)}.an-domain{margin-top:2px}.an-domain-head{appearance:none;border:0;background:transparent;font:inherit;text-align:left;cursor:pointer;width:100%;display:grid;grid-template-columns:1fr 150px 96px;gap:14px;align-items:center;padding:8px 10px 6px;border-top:1px solid var(--rule,#e8e8e2);border-radius:8px}.an-domain-head:hover,.an-domain.is-open>.an-domain-head{background:var(--rule-soft,#f1f1ec)}.an-domain:first-child .an-domain-head{border-top:none}.an-domain-name{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:800;color:var(--tone);text-transform:uppercase;letter-spacing:.03em}.an-domain-caret{font-size:9px;color:var(--ink-soft,#9a9a93);width:9px}.an-domain-count{font-size:10px;font-weight:700;color:var(--ink-soft,#9a9a93);background:var(--rule-soft,#f1f1ec);border-radius:999px;padding:1px 7px;letter-spacing:0}.an-domain.is-open>.an-domain-head .an-domain-count{background:var(--paper,#fff)}.an-row2-name--skill{padding-left:22px;color:var(--ink-dim,#6b6b65)}.an-row2-name{font-size:12.5px;color:var(--ink-2,#2a2a26);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.an-row2-mastery{display:flex;align-items:center;gap:8px}.an-spark{width:56px;height:18px;flex:none;display:block}.an-row2-pct{font-size:12px;font-weight:700;color:var(--ink-2,#2a2a26);font-variant-numeric:tabular-nums;min-width:34px;text-align:right}.an-delta{font-size:10.5px;font-weight:750;font-variant-numeric:tabular-nums;min-width:24px}.an-delta.is-up{color:#1c7a44}.an-delta.is-down{color:#b1322f}.an-delta.is-flat{color:var(--ink-soft,#c9c9c0)}.an-row2-diffs{display:flex;gap:6px;align-items:flex-end;justify-content:flex-start}.an-diffbar{display:flex;flex-direction:column;align-items:center;gap:2px;width:26px}.an-diffbar-track{width:100%;height:24px;background:var(--rule-soft,#f1f1ec);border-radius:3px;display:flex;align-items:flex-end;overflow:hidden}.an-diffbar-fill{width:100%;border-radius:3px 3px 0 0;background:var(--ink-soft,#c9c9c0);min-height:0}.an-diffbar.is-strong .an-diffbar-fill{background:#3aa564}.an-diffbar.is-mid .an-diffbar-fill{background:#e0a32a}.an-diffbar.is-weak .an-diffbar-fill{background:#d9544f}.an-diffbar.is-empty .an-diffbar-fill{background:transparent}.an-diffbar-letter{font-size:9px;font-weight:700;color:var(--ink-soft,#9a9a93)}.pl-leverage{display:flex;flex-wrap:wrap;gap:8px}.pl-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;font-size:14px;font-weight:650;color:var(--ink,#0e0e0c);background:var(--paper,#fff);border:1px solid var(--rule,#e8e8e2);border-left:3px solid var(--rw);text-decoration:none;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}a.pl-chip:hover{border-color:var(--accent,#be123c);box-shadow:0 0 0 3px var(--accent-soft,#fef3e7);transform:translateY(-1px)}.pl-chip--math{border-left-color:var(--math)}.pl-chip-m{font-size:13px;font-weight:750;color:var(--ink-dim,#6b6b65)}.pl-past{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.pl-pastcard{background:var(--paper,#fff);border:1px solid var(--rule,#e8e8e2);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.pl-week-range{font-size:13px;font-weight:700;color:var(--ink-2,#2a2a26)}.pl-past-vol{font-size:20px;font-weight:800;color:var(--ink,#0e0e0c)}.pl-past-acc{font-size:12px;font-weight:700}.pl-past-acc.is-strong{color:#1c7a44}.pl-past-acc.is-mid{color:#9a6b0f}.pl-past-acc.is-weak{color:#b1322f}.pl-past-acc.is-empty{color:var(--ink-soft,#9a9a93)}.pl-weeks{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.pl-week{background:var(--paper,#fff);border:1px solid var(--rule,#e8e8e2);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.pl-week.is-current{border-color:var(--accent,#be123c);box-shadow:0 0 0 3px var(--accent-soft,#fef3e7)}.pl-week-head{display:flex;justify-content:space-between;align-items:center}.pl-week-tag{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent,#be123c)}.pl-focus{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.pl-focus-item{font-size:13.5px;color:var(--ink,#0e0e0c)}.pl-focus-item,.pl-focus-link{display:flex;align-items:center}.pl-focus-link{gap:8px;flex:1;min-width:0;padding:3px 6px;margin:-3px -6px;border-radius:7px;color:inherit;text-decoration:none;cursor:pointer;transition:background .12s ease}.pl-focus-link:hover{background:var(--accent-soft,#fef3e7)}.pl-focus-dot{width:7px;height:7px;border-radius:50%;background:var(--rw);flex:none}.pl-focus-item--math .pl-focus-dot{background:var(--math)}.pl-focus-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-focus-m{font-size:13px;font-weight:750}.pl-focus-m,.pl-week-foot{color:var(--ink-dim,#6b6b65)}.pl-week-foot{font-size:12.5px;font-weight:600;border-top:1px solid var(--rule-soft,#f1f1ec);padding-top:8px}.vc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.vc-modes{display:inline-flex;gap:4px;padding:4px;background:var(--rule-soft,#f1f1ec);border:1px solid var(--rule,#e8e8e2);border-radius:10px;flex:none}.vc-mode{appearance:none;border:0;background:transparent;color:var(--ink-dim,#6b6b65);font:inherit;font-size:13px;font-weight:650;padding:6px 14px;border-radius:7px;cursor:pointer}.vc-mode.is-active{background:var(--paper,#fff);color:var(--ink,#0e0e0c);box-shadow:0 1px 2px rgba(0,0,0,.08)}.vc-quiz-prompt{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.vc-quiz-q{font-size:14px;color:var(--ink-dim,#6b6b65);margin-top:6px}.vc-choices{display:flex;flex-direction:column;gap:10px;width:100%;max-width:520px}.vc-choice{appearance:none;font:inherit;font-size:14.5px;text-align:left;line-height:1.4;padding:13px 16px;border-radius:11px;border:1px solid var(--rule,#e8e8e2);background:var(--paper,#fff);color:var(--ink,#0e0e0c);cursor:pointer;transition:background .12s ease,border-color .12s ease}.vc-choice:not(:disabled):hover{background:var(--rule-soft,#f1f1ec)}.vc-choice.is-correct{border-color:#b6e2c5;background:#dcf3e3;color:#1c7a44;font-weight:600}.vc-choice.is-wrong{border-color:#f0b9b7;background:#fce0e0;color:#b1322f}.vc-choice.is-dim{opacity:.55}.vc-choice:disabled{cursor:default}.vc-scoreboard{display:flex;gap:8px;flex:none}.vc-stat{font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px}.vc-stat--known{background:#dcf3e3;color:#1c7a44}.vc-stat--review{background:#fdf0d8;color:#9a6b0f}.vc-stage{align-items:center}.vc-progress{width:100%;max-width:520px;height:5px;background:var(--rule-soft,#f1f1ec);border-radius:3px;overflow:hidden}.vc-progress-fill{display:block;height:100%;background:var(--accent,#be123c);transition:width .2s ease}.vc-counter{font-size:12px;font-weight:650;color:var(--ink-soft,#9a9a93)}.vc-card{appearance:none;width:100%;max-width:520px;min-height:230px;border:1px solid var(--rule,#e8e8e2);border-radius:16px;background:var(--paper,#fff);box-shadow:0 2px 10px rgba(0,0,0,.05);cursor:pointer;padding:28px;display:flex;font:inherit;text-align:center;transition:box-shadow .15s ease,transform .05s ease}.vc-card:hover{box-shadow:0 4px 18px rgba(0,0,0,.09)}.vc-card:active{transform:translateY(1px)}.vc-card.is-flipped{background:#fffdf8}.vc-face{display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;width:100%;margin:auto}.vc-word{font-size:34px;font-weight:800;letter-spacing:-.02em;color:var(--ink,#0e0e0c)}.vc-pos{font-size:13px;font-style:italic;color:var(--ink-soft,#9a9a93)}.vc-hint{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft,#c2c2ba);margin-top:8px}.vc-def{font-size:19px;font-weight:600;line-height:1.4;color:var(--ink,#0e0e0c)}.vc-example{font-size:14px;font-style:italic;color:var(--ink-dim,#6b6b65);line-height:1.5}.vc-ant,.vc-syn{font-size:13px;color:var(--ink-2,#2a2a26)}.vc-ant em,.vc-syn em{font-style:normal;font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft,#9a9a93);margin-right:6px}.vc-controls{display:flex;gap:12px;width:100%;max-width:520px}.vc-btn{flex:1;appearance:none;font:inherit;font-size:14px;font-weight:700;padding:12px;border-radius:10px;cursor:pointer;border:1px solid var(--rule,#e8e8e2);background:var(--paper,#fff);color:var(--ink,#0e0e0c);transition:background .12s ease}.vc-btn:hover{background:var(--rule-soft,#f1f1ec)}.vc-btn--review{border-color:#f0d9a8;color:#9a6b0f;background:#fdf0d8}.vc-btn--review:hover{background:#fbe8c2}.vc-btn--known{border-color:#b6e2c5;color:#1c7a44;background:#dcf3e3}.vc-btn--known:hover{background:#cbeed8}.vc-btn--primary{background:var(--accent,#be123c);border-color:var(--accent,#be123c);color:#fff}.vc-btn--primary:hover{background:#c26905}.vc-done{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:32px 0}.vc-done-title{font-size:22px;font-weight:800;margin:0}.vc-done-sub{font-size:14px;color:var(--ink-dim,#6b6b65);margin:0}.vc-done-actions{display:flex;gap:12px;margin-top:12px;flex-wrap:wrap;justify-content:center}.vc-done-actions .vc-btn{flex:none;padding:12px 20px}@media (max-width:760px){.an-bands,.an-tables,.pl-past{grid-template-columns:1fr}.an-movers{grid-auto-flow:column;grid-auto-columns:minmax(190px,calc((100% - 12px) / 2));grid-template-columns:none;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:8px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.an-mover{scroll-snap-align:start}}@media (max-width:900px){.grid-embed-wrap#grid{display:block!important;padding:0 12px}#grid~.grid-mobile-fallback{display:none!important}#grid .grid-embed{padding:0}#grid .grid-embed .grid-panel{padding:14px}#grid .grid-embed .grid-header{grid-template-columns:1fr;gap:14px}#grid .grid-embed .header-launch{justify-self:stretch}#grid .grid-embed .chart-shell{display:block}#grid .grid-embed .grid-map{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:10px}#grid .grid-embed .skill-detail{width:100%;margin-top:14px}}