.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:root{--pc: #5b8cff;--spring: cubic-bezier(.34, 1.56, .64, 1);--card: var(--bg-1);--card-line: var(--line-2)}.topbar-inner{display:grid;grid-template-columns:1fr auto 1fr}.topbar-left{display:flex;align-items:center;gap:14px;min-width:0;justify-self:start}.topbar-right{justify-self:end}.topbar-div{width:1px;height:20px;background:var(--line-2)}.lpp-slot{display:flex;align-items:center;min-width:0}.app-nav{position:relative;display:flex;align-items:center;padding:4px;height:42px;border-radius:999px;border:1px solid var(--line-2);background:rgba(var(--ink, 255, 255, 255),.03)}.nav-tab{position:relative;z-index:1;height:32px;padding:0 15px 0 12px;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:999px;background:none;cursor:pointer;color:var(--text-3);font:600 calc(13.5px * var(--fs, 1))/1 var(--font);letter-spacing:-.01em;transition:color .2s ease}.nav-tab kbd{display:none}.nav-ic svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-tab:hover{color:var(--text-2)}.nav-tab[aria-selected=true]{color:var(--text)}.nav-tab[aria-selected=true] .nav-ic{color:var(--pc)}.nav-tab:focus-visible{outline:2px solid var(--pc);outline-offset:1px}.nav-pill{position:absolute;top:4px;bottom:4px;left:0;width:0;border-radius:999px;background:rgba(var(--ink, 255, 255, 255),.09);box-shadow:inset 0 0 0 1px rgba(var(--ink, 255, 255, 255),.08),0 1px #ffffff0a;transition:transform .5s var(--spring),width .5s var(--spring);pointer-events:none}html[data-theme=light] .nav-pill{background:#fff;box-shadow:0 1px 3px #0f14281f,inset 0 0 0 1px #0f14280f}.tabbar{display:none}.view[hidden]{display:none!important}.view.is-entering{animation:view-in .42s var(--ease) both}html.vt-back .view.is-entering{animation-name:view-in-back}@keyframes view-in{0%{opacity:0;transform:translate(14px)}}@keyframes view-in-back{0%{opacity:0;transform:translate(-14px)}}html.vt-nav #views{view-transition-name:lp-views}html.vt-nav .nav-pill{view-transition-name:lp-navpill}html.vt-nav .tb-pill{view-transition-name:lp-tbpill}html.vt-nav::view-transition-old(root),html.vt-nav::view-transition-new(root){animation:none}html.vt-nav::view-transition-old(lp-views){animation:vt-out .2s ease-in both}html.vt-nav::view-transition-new(lp-views){animation:vt-in .42s var(--ease) both}html.vt-nav.vt-back::view-transition-old(lp-views){animation-name:vt-out-back}html.vt-nav.vt-back::view-transition-new(lp-views){animation-name:vt-in-back}html.vt-nav::view-transition-group(lp-navpill),html.vt-nav::view-transition-group(lp-tbpill){animation-duration:.5s;animation-timing-function:cubic-bezier(.3,1.25,.5,1)}@keyframes vt-out{to{opacity:0;transform:translate(-10px)}}@keyframes vt-in{0%{opacity:0;transform:translate(16px)}}@keyframes vt-out-back{to{opacity:0;transform:translate(10px)}}@keyframes vt-in-back{0%{opacity:0;transform:translate(-16px)}}.view-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:16px 0 28px}.view-head-note{margin:0;max-width:360px;color:var(--text-3);font-size:calc(13.5px * var(--fs, 1));line-height:1.5;text-align:right}.view-sub{margin:10px 0 0;color:var(--text-2);font-size:calc(15px * var(--fs, 1));letter-spacing:-.01em;min-height:1.5em}#view-learn .slib{margin-top:0}.td-card{position:relative;isolation:isolate;border-radius:22px;padding:20px 22px 22px;background:var(--card);box-shadow:0 0 0 1px var(--card-line),0 30px 60px -40px rgba(0,0,0,calc(.7 * var(--shade-k, 1)));overflow:hidden}.td-card:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(var(--ink, 255, 255, 255),.025),transparent 40%)}.td-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.td-title{margin:0;display:inline-flex;align-items:center;gap:9px;font-size:calc(14.5px * var(--fs, 1));font-weight:600;letter-spacing:-.015em;color:var(--text)}.td-title svg{width:17px;height:17px;fill:none;stroke:var(--pc);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.td-title-lg{font-size:calc(20px * var(--fs, 1));letter-spacing:-.025em}.td-head-out{margin-bottom:14px}.td-pill{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:999px;font:600 calc(12px * var(--fs, 1))/1 var(--mono);color:var(--text-2);background:rgba(var(--ink, 255, 255, 255),.06);box-shadow:inset 0 0 0 1px var(--line-2)}.td-pill svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.td-pill.is-done{color:#0b2b1d;background:#34d399;box-shadow:none}.td-pill.is-warm{color:var(--tx-amber, #fcd34d);background:#fbbf241f;box-shadow:inset 0 0 0 1px #fbbf244d}.td-count{font:500 calc(12.5px * var(--fs, 1))/1 var(--mono);color:var(--text-3)}.td-link{display:inline-flex;align-items:center;gap:6px;border:0;background:none;cursor:pointer;color:var(--text-2);font:600 calc(13px * var(--fs, 1))/1 var(--font);padding:6px 2px}.td-link svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s var(--ease)}.td-link:hover{color:var(--text)}.td-link:hover svg{transform:translate(3px)}.btn-soft{height:38px;padding:0 16px;border-radius:999px;cursor:pointer;border:1px solid var(--line-3);background:rgba(var(--ink, 255, 255, 255),.05);color:var(--text);font:600 calc(13.5px * var(--fs, 1))/1 var(--font);transition:background .2s ease}.btn-soft:hover{background:rgba(var(--ink, 255, 255, 255),.1)}.td-empty{display:flex;gap:14px;align-items:flex-start;padding:6px 0 2px}.td-empty p{margin:0;color:var(--text-2);font-size:calc(13.5px * var(--fs, 1));line-height:1.55}.td-empty strong{color:var(--text);font-weight:600}.td-empty-art{width:42px;height:42px;flex:none;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--pc) 14%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pc) 30%,transparent)}.td-empty-art svg{width:20px;height:20px;fill:none;stroke:var(--pc);stroke-width:1.7;stroke-linejoin:round}.today-body .td-card,.today-body .td-picks,.progress-body .td-card,.progress-body .kpi{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--d, 0) * 70ms)}.today-body.is-drawn .td-card,.today-body.is-drawn .td-picks,.progress-body.is-drawn .td-card,.progress-body.is-drawn .kpi{opacity:1;transform:none}.td-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.td-goal{grid-column:span 5}.td-continue,.td-plan{grid-column:span 7}.td-review{grid-column:span 5}.td-picks{grid-column:1 / -1;margin-top:18px}.td-goal-body{display:flex;align-items:center;gap:26px}.ring{position:relative;width:148px;height:148px;flex:none}.ring svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.ring-track{fill:none;stroke:rgba(var(--ink, 255, 255, 255),.08);stroke-width:11}.ring-fill{fill:none;stroke:url(#ringG);stroke-width:11;stroke-linecap:round;stroke-dasharray:100 100;stroke-dashoffset:100;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--pc) 45%,transparent));transition:stroke-dashoffset 1.3s cubic-bezier(.65,0,.25,1) .25s}.is-drawn .ring-fill{stroke-dashoffset:calc(100 - var(--p, 0) * 100)}.ring-center{position:absolute;inset:0;display:grid;place-content:center;text-align:center}.ring-center strong{font-size:calc(42px * var(--fs, 1));font-weight:600;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}.ring-center span{margin-top:6px;font:500 calc(12px * var(--fs, 1))/1 var(--mono);color:var(--text-3)}.td-goal-side{flex:1;min-width:0;display:flex;flex-direction:column;gap:18px}.streak{display:flex;align-items:center;gap:12px}.streak>svg{width:36px;height:36px;padding:7px;border-radius:12px;flex:none;fill:rgba(var(--ink, 255, 255, 255),.2);background:rgba(var(--ink, 255, 255, 255),.05)}.streak.is-on>svg{fill:#ff8a3c;background:#ff8a3c21;filter:drop-shadow(0 4px 12px rgba(255,106,0,.35));animation:flame 2.4s ease-in-out infinite}@keyframes flame{50%{transform:scale(1.05) rotate(-2deg)}}.streak strong{display:block;font-size:calc(17px * var(--fs, 1));font-weight:600;letter-spacing:-.02em}.streak span{display:block;margin-top:2px;font-size:calc(12.5px * var(--fs, 1));color:var(--text-3)}.week{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.wk-day{display:flex;flex-direction:column;align-items:center;gap:6px}.wk-dot{position:relative;width:30px;height:30px;display:grid;place-items:center}.wk-dot svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.wk-track{fill:none;stroke:rgba(var(--ink, 255, 255, 255),.09);stroke-width:3.2}.wk-fill{fill:none;stroke:var(--pc);stroke-width:3.2;stroke-linecap:round;stroke-dasharray:100 100;stroke-dashoffset:100;transition:stroke-dashoffset .9s var(--ease) .5s}.is-drawn .wk-fill{stroke-dashoffset:calc(100 - var(--p, 0) * 100)}.wk-day.is-met .wk-dot{background:var(--pc);border-radius:50%;box-shadow:0 6px 16px -6px var(--pc)}.wk-day.is-met .wk-fill,.wk-day.is-met .wk-track{opacity:0}.wk-dot i{position:relative;display:grid;color:#fff}.wk-dot i svg{position:static;width:15px;height:15px;transform:none;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.wk-lbl{font:600 calc(11px * var(--fs, 1))/1 var(--mono);color:var(--text-3)}.wk-day.is-today .wk-lbl{color:var(--text)}.wk-day.is-today .wk-track{stroke:rgba(var(--ink, 255, 255, 255),.2)}.td-continue{padding:0;min-height:280px;cursor:pointer;outline:none;background:#0c0d12;color:#fff;box-shadow:0 0 0 1px #ffffff1a,0 40px 80px -40px color-mix(in srgb,var(--gc) 60%,transparent);transition:box-shadow .4s ease,transform .5s var(--ease)}.td-continue:before{display:none}.tc-art{position:absolute;inset:0}.tc-art .art{width:100%;height:100%;display:block;transform:scale(1.02);transition:transform 1.2s var(--ease)}.tc-scrim{position:absolute;inset:0;background:linear-gradient(90deg,#07080beb,#07080b8c 45%,#07080b00 75%),linear-gradient(0deg,rgba(7,8,11,.6),transparent 50%)}.tc-body{position:relative;z-index:1;height:100%;min-height:280px;display:flex;flex-direction:column;justify-content:flex-end;padding:26px 28px;max-width:420px}.tc-eyebrow{margin:0 0 10px;display:inline-flex;align-items:center;gap:8px;font:600 calc(11.5px * var(--fs, 1))/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#ffffffb8}.tc-live{width:7px;height:7px;border-radius:50%;background:var(--gc);box-shadow:0 0 0 0 var(--gc);animation:live 2s ease-out infinite}@keyframes live{0%{box-shadow:0 0 color-mix(in srgb,var(--gc) 70%,transparent)}to{box-shadow:0 0 0 9px transparent}}.tc-title{margin:0;font-size:calc(clamp(24px,2.6vw,32px) * var(--fs, 1));font-weight:600;letter-spacing:-.035em;line-height:1.08}.tc-meta{margin:8px 0 20px;color:#ffffff9e;font-size:calc(13.5px * var(--fs, 1))}.td-continue .tc-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 20px 0 16px;border:0;border-radius:999px;background:#fff;color:#0a0a0c;font-family:var(--font);line-height:1;font-size:calc(14.5px * var(--fs, 1));font-weight:600;letter-spacing:-.01em;box-shadow:0 10px 30px -10px #0009;transition:transform .3s var(--spring)}.td-continue .tc-btn svg{width:15px;height:15px;fill:currentColor}.td-continue:hover .tc-art .art,.td-continue:focus-visible .tc-art .art{transform:scale(1.07)}.td-continue:hover .tc-btn{transform:translate(3px)}.td-continue:focus-visible{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--gc)}.td-continue:active{transform:scale(.995)}.plan-bar{height:4px;border-radius:4px;background:rgba(var(--ink, 255, 255, 255),.07);overflow:hidden;margin:-4px 0 12px}.plan-bar i{display:block;height:100%;width:100%;border-radius:inherit;background:var(--pc);transform-origin:left;transform:scaleX(0);transition:transform 1s var(--ease) .3s}.is-drawn .plan-bar i{transform:scaleX(var(--p, 0))}.plan{list-style:none;margin:0 -10px;padding:0}.plan-row{width:100%;display:flex;align-items:center;gap:14px;padding:12px 10px;border:0;border-radius:14px;background:none;color:inherit;text-align:left;cursor:pointer;font:inherit;transition:background .2s ease}.plan-row:hover{background:rgba(var(--ink, 255, 255, 255),.04)}.plan-row:focus-visible{outline:2px solid var(--pc);outline-offset:-2px}.plan-check{width:26px;height:26px;flex:none;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 2px var(--line-3);color:transparent;transition:background .3s ease,box-shadow .3s ease,transform .45s var(--spring)}.plan-check svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;transition:stroke-dashoffset .45s var(--ease)}.plan-row.is-done .plan-check{background:var(--pc);box-shadow:0 6px 14px -6px var(--pc);color:#fff}.is-drawn .plan-row.is-done .plan-check{animation:check-pop .55s var(--spring) both;animation-delay:calc(.4s + var(--i, 0) * .12s)}.is-drawn .plan-row.is-done .plan-check svg{stroke-dashoffset:0;transition-delay:calc(.5s + var(--i, 0) * .12s)}@keyframes check-pop{0%{transform:scale(.6)}60%{transform:scale(1.15)}}.plan-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.plan-title{font-size:calc(14.5px * var(--fs, 1));font-weight:600;letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-meta{font-size:calc(12.5px * var(--fs, 1));color:var(--text-3)}.plan-row.is-done .plan-title{color:var(--text-3);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--text-3) 60%,transparent)}.plan-mini{display:block;height:3px;margin-top:5px;max-width:220px;border-radius:3px;background:rgba(var(--ink, 255, 255, 255),.08);overflow:hidden}.plan-mini i{display:block;height:100%;width:100%;background:var(--pc);transform-origin:left;transform:scaleX(0);transition:transform 1s var(--ease) .6s}.is-drawn .plan-mini i{transform:scaleX(var(--p, 0))}.plan-go{color:var(--text-3);opacity:0;transform:translate(-4px);transition:opacity .2s ease,transform .3s var(--ease)}.plan-go svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.plan-row:hover .plan-go,.plan-row:focus-visible .plan-go{opacity:1;transform:none}.rv-top{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.rv-num{font-size:calc(44px * var(--fs, 1));font-weight:600;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}.rv-cap{color:var(--text-2);font-size:calc(13.5px * var(--fs, 1))}.dist{display:flex;gap:3px;height:10px;border-radius:6px;overflow:hidden}.dist i,.topic-bar i{display:block;flex:var(--w, 0) 1 0;min-width:0;border-radius:3px;transform-origin:left;transform:scaleX(0);transition:transform .9s var(--ease) .35s}.is-drawn .dist i,.is-drawn .topic-bar i{transform:none}.dist-learning{background:color-mix(in srgb,var(--pc) 28%,rgba(var(--ink, 255, 255, 255),.08))}.dist-strong{background:color-mix(in srgb,var(--pc) 62%,transparent)}.dist-mastered{background:var(--pc)}.dist-key{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:calc(12.5px * var(--fs, 1));color:var(--text-3)}.dist-key li{display:inline-flex;align-items:center;gap:6px}.dist-key li:before{content:"";width:8px;height:8px;border-radius:2px}.dist-key b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.dk-learning:before{background:color-mix(in srgb,var(--pc) 28%,rgba(var(--ink, 255, 255, 255),.08))}.dk-strong:before{background:color-mix(in srgb,var(--pc) 62%,transparent)}.dk-mastered:before{background:var(--pc)}.weak{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.weak-h{margin:0 0 8px;font:600 calc(11px * var(--fs, 1))/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.weak ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.weak li{display:flex;align-items:center;gap:10px;font-size:calc(13.5px * var(--fs, 1))}.weak li:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--tc);box-shadow:0 0 10px var(--tc);flex:none}.weak li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weak li b{font:600 calc(12px * var(--fs, 1))/1 var(--mono);color:var(--text-2);padding:4px 7px;border-radius:6px;background:rgba(var(--ink, 255, 255, 255),.06)}.rv-note{margin:14px 0 0;font-size:calc(12.5px * var(--fs, 1));color:var(--text-3);line-height:1.5}.picks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.pick{position:relative;display:flex;flex-direction:column;gap:10px;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer;font:inherit;outline:none}.pick-art{position:relative;display:block;aspect-ratio:16 / 10;border-radius:16px;overflow:hidden;background:var(--bg-2);box-shadow:0 0 0 1px var(--line-2),0 20px 40px -26px rgba(0,0,0,calc(.9 * var(--shade-k, 1)));transition:box-shadow .35s ease,transform .45s var(--ease)}.pick-art .art{width:100%;height:100%;display:block;transition:transform .8s var(--ease);filter:saturate(.94)}.pick-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.4));border-radius:inherit}.pick-body{display:flex;flex-direction:column;gap:3px;padding:0 2px}.pick-title{font-size:calc(14.5px * var(--fs, 1));font-weight:600;letter-spacing:-.015em}.pick-meta{font-size:calc(12.5px * var(--fs, 1));color:var(--text-3)}.pick-play{position:absolute;right:12px;top:12px;z-index:1;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#0a0a0c;opacity:0;transform:scale(.85);transition:opacity .25s ease,transform .35s var(--spring)}.pick-play svg{width:13px;height:13px;fill:currentColor;margin-left:2px}.pick:hover .pick-art,.pick:focus-visible .pick-art{transform:translateY(-3px);box-shadow:0 0 0 1px color-mix(in srgb,var(--gc) 60%,transparent),0 30px 50px -26px color-mix(in srgb,var(--gc) 70%,transparent)}.pick:hover .pick-art .art{transform:scale(1.05)}.pick:hover .pick-play,.pick:focus-visible .pick-play{opacity:1;transform:none}.pick:focus-visible .pick-art{outline:2px solid var(--gc);outline-offset:3px}.pick-why{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:calc(12.5px * var(--fs, 1));color:var(--text-2)}.pick-why i{display:inline-block;width:6px;height:6px;margin-right:7px;vertical-align:1px;border-radius:50%;background:var(--wc, var(--gc));box-shadow:0 0 8px color-mix(in srgb,var(--wc, var(--gc)) 70%,transparent)}.pick.is-goal .pick-body{gap:4px}.pick.is-goal .pick-art{box-shadow:0 0 0 1px color-mix(in srgb,var(--gc) 38%,var(--line-2)),0 20px 40px -26px rgba(0,0,0,calc(.9 * var(--shade-k, 1)))}.pick-tag{position:absolute;left:12px;top:12px;z-index:1;display:inline-flex;align-items:center;gap:6px;padding:6px 10px 6px 8px;border-radius:999px;background:#0a0a0c9e;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font:600 calc(10.5px * var(--fs, 1))/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}.pick-tag svg{width:12px;height:12px;fill:none;stroke:var(--gc);stroke-width:2.2}.pick-play.pick-start{opacity:1;transform:none;background:var(--gc);color:#0a0a0c;transition:transform .35s var(--spring)}.pick-start svg{width:15px;height:15px;margin:0;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}.pick.is-goal:hover .pick-start,.pick.is-goal:focus-visible .pick-start{transform:rotate(90deg) scale(1.06)}.pg{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.kpis{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.kpi{padding:18px 20px;border-radius:20px;background:var(--card);box-shadow:0 0 0 1px var(--card-line)}.kpi-label{margin:0;font-size:calc(12.5px * var(--fs, 1));color:var(--text-3);font-weight:500}.kpi-val{margin:10px 0 8px;font-size:calc(34px * var(--fs, 1));font-weight:600;letter-spacing:-.045em;line-height:1;font-variant-numeric:tabular-nums}.kpi-foot{margin:0;display:flex;align-items:center;gap:6px;font-size:calc(12px * var(--fs, 1));color:var(--text-3)}.kpi-delta{font:600 calc(11.5px * var(--fs, 1))/1 var(--mono);padding:4px 6px;border-radius:6px;background:rgba(var(--ink, 255, 255, 255),.06);color:var(--text-2)}.kpi-delta.is-up{color:var(--tx-green, #6ee7b7);background:#34d3991f}.kpi-delta.is-down{color:var(--tx-red, #fca5a5);background:#f871711f}.pg-chart,.pg-topics,.pg-family{grid-column:1 / -1}.legend{list-style:none;margin:0;padding:0;display:flex;gap:14px;font-size:calc(12px * var(--fs, 1));color:var(--text-3)}.legend li{display:inline-flex;align-items:center;gap:6px}.legend li:before{content:"";width:10px;height:10px;border-radius:3px}.lg-c:before{background:var(--pc)}.lg-w:before{background:rgba(var(--ink, 255, 255, 255),.18)}.lg-g:before{height:0!important;width:14px!important;border-top:2px dashed color-mix(in srgb,var(--pc) 70%,transparent);border-radius:0!important}.chart-wrap{position:relative}.chart{display:block;width:100%;overflow:visible}.chart .grid{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.chart .grid-y,.chart .bar-x{fill:var(--text-3);font:500 calc(11px * var(--fs, 1)) var(--mono)}.chart .grid-y{text-anchor:end}.chart .bar-x{text-anchor:middle}.chart .goal-line{stroke:color-mix(in srgb,var(--pc) 70%,transparent);stroke-width:1.5;stroke-dasharray:5 5;vector-effect:non-scaling-stroke}.bar-c,.bar-w,.bar-empty{transform-box:fill-box;transform-origin:50% 100%;transform:scaleY(0);transition:transform .8s var(--ease);transition-delay:calc(.2s + var(--i, 0) * 35ms)}.is-drawn .bar-c,.is-drawn .bar-w,.is-drawn .bar-empty{transform:none}.bar-c{fill:var(--pc)}.bar-w{fill:rgba(var(--ink, 255, 255, 255),.18)}.bar-empty{fill:rgba(var(--ink, 255, 255, 255),.08)}.bar.is-today .bar-x{fill:var(--text);font-weight:600}.bar-hit{fill:transparent}.bar:hover .bar-c{filter:brightness(1.15)}.bar:hover .bar-w{fill:rgba(var(--ink, 255, 255, 255),.28)}.chart-empty{position:absolute;inset:0 0 26px 34px;display:grid;place-items:center;pointer-events:none}.chart-empty p{margin:0;padding:8px 14px;border-radius:999px;font-size:calc(13px * var(--fs, 1));color:var(--text-2);background:var(--card);box-shadow:0 0 0 1px var(--line-2)}.topics{list-style:none;margin:0;padding:0}.topic{display:grid;grid-template-columns:10px minmax(120px,1.1fr) minmax(0,2fr) 64px 64px;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--line)}.topic:first-child{border-top:0;padding-top:4px}.topic-dot{width:10px;height:10px;border-radius:50%;background:var(--tc);box-shadow:0 0 10px color-mix(in srgb,var(--tc) 60%,transparent)}.topic-name{font-size:calc(14px * var(--fs, 1));font-weight:600;letter-spacing:-.01em;display:flex;align-items:center;gap:8px;min-width:0}.topic-name em{font-style:normal;font:600 calc(10.5px * var(--fs, 1))/1 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--tx-amber, #fcd34d);padding:4px 6px;border-radius:5px;background:#fbbf241f;white-space:nowrap}.topic-bar{display:flex;gap:2px;height:8px;border-radius:5px;overflow:hidden;background:rgba(var(--ink, 255, 255, 255),.05)}.topic-bar i{transition-delay:calc(.3s + var(--i, 0) * 60ms)}.topic-num{text-align:right;font:600 calc(14px * var(--fs, 1))/1 var(--font);font-variant-numeric:tabular-nums}.topic-num small{display:block;margin-top:4px;font:500 calc(11px * var(--fs, 1))/1 var(--mono);color:var(--text-3)}.fam{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.fam-card{position:relative;padding:16px;border-radius:18px;background:rgba(var(--ink, 255, 255, 255),.025);box-shadow:inset 0 0 0 1px var(--line-2);animation:fam-in .6s var(--ease) both;animation-delay:calc(.3s + var(--i, 0) * 70ms)}@keyframes fam-in{0%{opacity:0;transform:translateY(8px)}}.fam-card.is-link{cursor:pointer;transition:box-shadow .25s ease,transform .35s cubic-bezier(.32,1.32,.56,1)}.fam-card.is-link:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fc) 55%,transparent),0 18px 40px -28px color-mix(in srgb,var(--fc) 60%,transparent)}.fam-card.is-link:focus-visible{outline:2px solid var(--fc);outline-offset:2px}.td-link svg:first-child:not(:last-child){width:14px;height:14px}.fam-card.is-me{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fc) 50%,transparent);background:color-mix(in srgb,var(--fc) 6%,transparent)}.fam-top{display:flex;align-items:center;gap:12px}.fam-av{width:44px;height:44px;border-radius:50%;overflow:hidden;flex:none}.fam-name{margin:0;font-size:calc(15px * var(--fs, 1));font-weight:600;letter-spacing:-.015em;display:flex;align-items:center;gap:8px}.fam-name em{font-style:normal;font:600 calc(10px * var(--fs, 1))/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--fc)}.fam-meta{margin:3px 0 0;font-size:calc(12px * var(--fs, 1));color:var(--text-3)}.fam-goal{margin-top:16px;height:6px;border-radius:6px;background:rgba(var(--ink, 255, 255, 255),.07);overflow:hidden}.fam-goal span{display:block;height:100%;width:calc(var(--p, 0) * 100%);border-radius:inherit;background:var(--fc)}.fam-goal-l{margin:7px 0 0;font:500 calc(11.5px * var(--fs, 1))/1 var(--mono);color:var(--text-3)}.fam-stats{margin:14px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.fam-stats div{padding:8px 10px;border-radius:10px;background:rgba(var(--ink, 255, 255, 255),.04)}.fam-stats dt{font-size:calc(11px * var(--fs, 1));color:var(--text-3)}.fam-stats dd{margin:3px 0 0;font-size:calc(16px * var(--fs, 1));font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.fam-add{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;min-height:180px;border:0;cursor:pointer;color:var(--text-2);text-align:left;font:inherit;background:transparent;box-shadow:inset 0 0 0 1.5px var(--line-2);background-image:repeating-linear-gradient(135deg,rgba(var(--ink, 255, 255, 255),.02) 0 8px,transparent 8px 16px);transition:color .2s ease,box-shadow .2s ease}.fam-add:hover{color:var(--text);box-shadow:inset 0 0 0 1.5px var(--line-3)}.fam-add span:not(.fam-add-ic){font-size:calc(15px * var(--fs, 1));font-weight:600;letter-spacing:-.015em}.fam-add small{font-size:calc(12.5px * var(--fs, 1));color:var(--text-3);line-height:1.45}.fam-add-ic{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;margin-bottom:6px;background:rgba(var(--ink, 255, 255, 255),.06)}.fam-add-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.fam-locked{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:6px 0}.fam-locked p{flex:1;min-width:200px;margin:0;color:var(--text-2);font-size:calc(14px * var(--fs, 1))}.fam-lock{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:rgba(var(--ink, 255, 255, 255),.06)}.fam-lock svg{width:19px;height:19px;fill:none;stroke:var(--text-2);stroke-width:1.9;stroke-linecap:round}.tr-grid{gap:16px}.tr-grid>.td-path{grid-column:1 / -1}.tr-ring-card{grid-column:span 5;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px 24px 26px}.tr-play{grid-column:span 7;min-height:340px}.tr-play .tc-body{min-height:340px}.tr-ring{position:relative;width:208px;height:208px;margin-bottom:20px}.tr-ring svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.tr-track{fill:none;stroke:rgba(var(--ink, 255, 255, 255),.08);stroke-width:14}.tr-fill{fill:none;stroke:var(--oc);stroke-width:14;stroke-linecap:round;stroke-dasharray:100 100;stroke-dashoffset:100;transition:stroke-dashoffset 1.2s var(--ease) .2s;filter:drop-shadow(0 0 10px color-mix(in srgb,var(--oc) 35%,transparent))}.tr-in.tr-track{stroke-width:8;stroke:rgba(var(--ink, 255, 255, 255),.05)}.tr-in.tr-fill{stroke:var(--pc);stroke-width:8;transition-delay:.4s;filter:none}.is-drawn .tr-fill{stroke-dashoffset:calc(100 - var(--p, 0) * 100)}.tr-ring.is-single .tr-track,.tr-ring.is-single .tr-fill{stroke-width:16}.tr-center{position:absolute;inset:0;display:grid;place-content:center}.tr-center strong{font-size:calc(52px * var(--fs, 1));font-weight:600;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}.tr-center span{margin-top:8px;font:500 calc(12px * var(--fs, 1))/1 var(--mono);color:var(--text-3)}.tr-label{margin:0;font-size:calc(17px * var(--fs, 1));font-weight:600;letter-spacing:-.02em}.tr-legend{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 16px;font-size:calc(12.5px * var(--fs, 1));color:var(--text-2)}.tr-legend span{display:inline-flex;align-items:center;gap:7px}.tr-legend i{width:8px;height:8px;border-radius:50%;background:var(--oc)}.tr-legend .is-in i{background:var(--pc)}.tr-edit{position:absolute;top:14px;right:14px;width:36px;height:36px;border:0;border-radius:11px;display:grid;place-items:center;background:transparent;color:var(--text-3);cursor:pointer;transition:background .2s ease,color .2s ease}.tr-edit svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.tr-edit:hover{background:rgba(var(--ink, 255, 255, 255),.06);color:var(--text)}.tr-edit:focus-visible{outline:2px solid var(--pc);outline-offset:1px}.tr-edit:after{content:attr(data-tip);position:absolute;top:50%;right:calc(100% + 8px);white-space:nowrap;pointer-events:none;padding:6px 10px;border-radius:8px;background:var(--text);color:var(--bg);font:600 calc(12px * var(--fs, 1))/1 var(--font);letter-spacing:-.005em;box-shadow:0 8px 24px -8px rgba(0,0,0,calc(.6 * var(--shade-k, 1)));opacity:0;transform:translate(4px,-50%);transition:opacity .15s ease,transform .2s var(--ease)}.tr-edit:hover:after,.tr-edit:focus-visible:after{opacity:1;transform:translateY(-50%);transition-delay:.15s}.tr-grid>.td-picks{margin-top:44px}.tr-grid>.td-picks .td-head{align-items:flex-end}.tr-short{display:none}.tr-kicker{display:block;margin-bottom:8px;font:500 calc(11.5px * var(--fs, 1))/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.tr-stats{grid-column:1 / -1;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.tr-stat{padding:18px 22px;border-left:1px solid var(--line)}.tr-stat:first-child{border-left:0}.tr-stat dt{display:flex;align-items:center;gap:7px;font-size:calc(12.5px * var(--fs, 1));color:var(--text-3)}.tr-stat dt svg{width:15px;height:15px;fill:none;stroke:var(--text-3);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.tr-stat.is-streak dt svg{fill:#ff8a3c;stroke:none}.tr-stat.is-target dt svg{stroke:var(--pc)}.tr-stat dd{margin:8px 0 0;font-size:calc(24px * var(--fs, 1));font-weight:600;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.tr-stat dd small{margin-left:5px;font-size:calc(13px * var(--fs, 1));font-weight:500;letter-spacing:0;color:var(--text-3)}@media (max-width: 1280px){.stat{padding:0 8px}}@media (max-width: 1080px){.td-goal,.td-continue,.td-plan,.td-review{grid-column:span 6}.td-goal-body{flex-direction:column;align-items:stretch}.ring{margin:0 auto}.picks,.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-tab{padding:0 12px 0 10px}}@media (max-width: 899px){.tr-ring-card,.tr-play{grid-column:1 / -1}.tr-play,.tr-play .tc-body{min-height:250px}.topbar-inner{grid-template-columns:auto 1fr auto}.view-head{flex-direction:column;align-items:flex-start;gap:8px}.view-head-note{text-align:left}.td-goal,.td-continue,.td-plan,.td-review{grid-column:1 / -1}.td-goal-body{flex-direction:row;align-items:center}.ring{margin:0}.topic{grid-template-columns:10px minmax(0,1fr) 54px 54px}.topic-bar{grid-column:2 / -1;grid-row:2}}@media (max-width: 760px){.app-nav{display:none}.topbar-inner{grid-template-columns:auto 1fr auto}.tabbar{position:fixed;z-index:30;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(4,1fr);padding:6px;height:64px;border-radius:22px;border:1px solid var(--line-2);background:rgba(var(--dk, 12, 13, 18),.82);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);box-shadow:0 20px 50px -20px rgba(0,0,0,calc(.8 * var(--shade-k, 1)))}.tb-tab{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:0;background:none;cursor:pointer;color:var(--text-3);font:600 calc(11px * var(--fs, 1))/1 var(--font);letter-spacing:0;border-radius:16px;transition:color .2s ease;-webkit-tap-highlight-color:transparent}.tb-ic svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .4s var(--spring)}.tb-tab[aria-selected=true]{color:var(--text)}.tb-tab[aria-selected=true] .tb-ic{color:var(--pc)}.tb-tab[aria-selected=true] .tb-ic svg{transform:translateY(-1px) scale(1.06)}.tb-tab:active .tb-ic svg{transform:scale(.9)}.tb-tab:focus-visible{outline:2px solid var(--pc);outline-offset:-2px}.tb-pill{position:absolute;top:6px;bottom:6px;left:0;width:0;border-radius:16px;background:rgba(var(--ink, 255, 255, 255),.08);transition:transform .5s var(--spring),width .5s var(--spring);pointer-events:none}.dash-scroll{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.hub-toast{bottom:calc(92px + env(safe-area-inset-bottom))!important}.topbar-div{display:none}}@media (max-width: 640px){.td-card{padding:18px;border-radius:20px}#view-today .page-head{flex-direction:row;align-items:flex-start;gap:12px;margin:4px 0 18px}#view-today .page-head .eyebrow{font-size:calc(11px * var(--fs, 1));margin-bottom:4px}#view-today .page-title{font-size:calc(26px * var(--fs, 1))}#view-today .view-sub{margin-top:6px;font-size:calc(14px * var(--fs, 1));min-height:0}#view-today .hc-code{flex:none;align-self:flex-start;width:38px;height:38px;padding:0;justify-content:center;margin-top:2px}#view-today .hc-code svg{width:17px;height:17px}#view-today .hc-code span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tr-grid>.td-picks{margin-top:32px}.tr-grid>.td-picks .td-head{gap:12px;margin-bottom:12px}.tr-grid>.td-picks .td-title-lg{font-size:calc(17px * var(--fs, 1));letter-spacing:-.02em}.tr-kicker{font-size:calc(10.5px * var(--fs, 1));margin-bottom:6px}.tr-grid>.td-picks .td-link{flex:none;white-space:nowrap}.tr-long{display:none}.tr-short{display:inline}.tr-ring{width:176px;height:176px}.tr-center strong{font-size:calc(44px * var(--fs, 1))}.tr-stats{padding:0}.tr-stat{padding:14px}.tr-stat dd{font-size:calc(19px * var(--fs, 1))}.tr-stat dd small{display:block;margin:4px 0 0;font-size:calc(12px * var(--fs, 1))}.td-goal-body{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"ring streak" "week week";gap:18px 20px;align-items:center}.td-goal-side{display:contents}.ring{grid-area:ring}.streak{grid-area:streak}.week{grid-area:week}.ring{width:120px;height:120px}.ring-center strong{font-size:calc(34px * var(--fs, 1))}.tc-body{padding:22px}.td-continue,.tc-body{min-height:240px}.picks{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:72%;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 calc(-1 * var(--gutter));padding:0 var(--gutter) 6px;scroll-padding-inline:var(--gutter);scrollbar-width:none}.picks::-webkit-scrollbar{display:none}.pick{scroll-snap-align:start}.kpi{padding:16px}.kpi-val{font-size:calc(28px * var(--fs, 1))}.legend{display:none}}@media (prefers-reduced-motion: reduce){.today-body .td-card,.today-body .td-picks,.progress-body .td-card,.progress-body .kpi{opacity:1;transform:none;transition:none}}.hero-tagline{padding-bottom:2px;display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}@media (min-width: 900px){.hero-body{padding-bottom:68px}}
