body.bs-locked,html.bs-locked{height:100%;overflow:hidden;overscroll-behavior:none;background:var(--bs-page)}.bs-root{position:fixed;overflow:hidden;color:var(--bs-ink);background:radial-gradient(90% 60% at 50% 45%,var(--bs-page-top) 0,transparent 75%),var(--bs-page);touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.bs-canvas,.bs-root{inset:0;font-family:var(--font-body),"Nunito",ui-rounded,system-ui,sans-serif}.bs-canvas{position:absolute;display:block}.bs-root :where(button,a){font:inherit;color:inherit;cursor:pointer;touch-action:none}.bs-layout{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(160px,1fr) auto auto;grid-template-areas:"top" "goal" "bench" "meter" "dock";grid-gap:8px;gap:8px;width:min(100%,760px);margin:0 auto;padding:max(8px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));pointer-events:none}.bs-layout>*{pointer-events:auto;min-width:0}.bs-layout>.bs-bench{pointer-events:none}.bs-layout.is-idle>:not(.bs-bench){visibility:hidden}.bs-top{grid-area:top;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:10px;gap:10px}.bs-icon{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:14px;background:color-mix(in srgb,var(--bs-white) 6%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset}.bs-icon:disabled{opacity:.4}.bs-where{display:flex;flex-direction:column;line-height:1.15;min-width:0}.bs-where span{color:var(--bs-muted);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.bs-where strong{font-family:var(--font-display),"Fredoka",ui-rounded,system-ui,sans-serif;font-size:21px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bs-stars{display:inline-flex;gap:1px;font-size:15px;line-height:1}.bs-stars.is-big{font-size:28px}.bs-star{color:var(--bs-faint)}.bs-star.is-on{color:var(--bs-accent)}.bs-goal{grid-area:goal;padding:10px 12px;border-radius:16px;background:color-mix(in srgb,var(--bs-panel) 88%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset;font-size:15px;line-height:1.35}.bs-goal:empty{display:none}.bs-goal-text{display:flex;gap:8px;margin:0;font-weight:700}.bs-tick{flex:none;display:inline-grid;place-items:center;width:20px;height:20px;margin-top:0;border-radius:50%;color:var(--bs-faint);font-size:13px;font-weight:900;box-shadow:0 0 0 1.5px var(--bs-faint) inset}.bs-tick.is-ok{color:var(--bs-page);background:var(--bs-good);box-shadow:none}.bs-checks{display:grid;grid-gap:4px;gap:4px;margin:8px 0 0;padding:0;list-style:none}.bs-checks li{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;grid-gap:6px;gap:6px;padding:3px 4px 3px 6px;border-radius:10px;font-size:13px;transition:background .2s ease}.bs-checks li.is-testing{background:color-mix(in srgb,var(--bs-accent) 16%,transparent)}.bs-when{display:flex;flex-wrap:wrap;gap:4px}.bs-chip{padding:1px 7px;border-radius:999px;color:var(--bs-muted);font-size:12px;font-weight:800;white-space:nowrap;box-shadow:0 0 0 1px var(--bs-panel-edge) inset}.bs-chip.is-on{color:var(--bs-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--bs-accent) 45%,transparent) inset}.bs-arrow{color:var(--bs-faint)}.bs-then{color:var(--bs-ink);font-weight:700;min-width:0}.bs-why{margin:6px 0 0 28px;color:var(--bs-bad);font-size:13px;font-weight:700}.bs-bench{grid-area:bench;position:relative;min-height:0}.bs-toast{position:absolute;left:50%;bottom:4px;z-index:2;width:max-content;max-width:min(92%,440px);margin:0;padding:9px 14px;border-radius:14px;background:color-mix(in srgb,var(--bs-panel) 94%,var(--bs-white));box-shadow:0 0 0 1px var(--bs-panel-edge) inset,0 14px 30px color-mix(in srgb,var(--bs-shadow) 60%,transparent);font-size:14px;font-weight:700;text-align:center;transform:translateX(-50%);animation:bs-toast 3.2s ease forwards}@keyframes bs-toast{0%{opacity:0;transform:translate(-50%,8px)}8%,85%{opacity:1;transform:translate(-50%)}to{opacity:0}}.bs-meter{grid-area:meter;height:58px;display:flex;align-items:stretch}.bs-meter>*{flex:1 1}.bs-idle{margin:0;align-self:center;color:var(--bs-muted);font-size:13px;text-align:center}.bs-hint,.bs-reading{display:flex;align-items:center;gap:10px;margin:0;padding:8px 10px 8px 14px;border-radius:16px;background:color-mix(in srgb,var(--bs-panel) 92%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset}.bs-hint{font-size:14px;line-height:1.35}.bs-hint strong{color:var(--bs-accent);margin-right:4px}.bs-reading-text{display:flex;flex-direction:column;flex:1 1;min-width:0;line-height:1.25}.bs-reading-text strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bs-reading-text span{color:var(--bs-accent);font-size:14px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bs-reading-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.bs-mini{min-height:36px;min-width:36px;padding:6px 12px;border:0;border-radius:12px;background:color-mix(in srgb,var(--bs-white) 8%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset;font-size:14px;font-weight:800;white-space:nowrap}.bs-mini.is-strong{background:linear-gradient(180deg,var(--bs-accent) 0,var(--bs-accent-deep) 100%);color:var(--bs-accent-ink);box-shadow:none}.bs-mini:active,.bs-stock:active,.bs-tool:active{transform:scale(.97)}.bs-dock{grid-area:dock;display:flex;align-items:stretch;gap:8px}.bs-tray{flex:1 1;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(62px,92px);grid-gap:6px;gap:6px;min-width:0;min-height:84px;padding:6px;overflow-x:auto;border-radius:18px;background:color-mix(in srgb,var(--bs-panel) 80%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset;scrollbar-width:none}.bs-tray.is-empty{display:flex}.bs-tray-empty{margin:auto;color:var(--bs-muted);font-size:13px}.bs-stock{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;padding:6px 4px;border:0;border-radius:14px;background:color-mix(in srgb,var(--bs-white) 6%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset,0 6px 14px color-mix(in srgb,var(--bs-shadow) 35%,transparent);cursor:-webkit-grab;cursor:grab}.bs-stock.is-empty{opacity:.35;box-shadow:0 0 0 1px var(--bs-panel-edge) inset}.bs-stock-name{color:var(--bs-muted);font-size:11.5px;font-weight:800;line-height:1.1;text-align:center}.bs-count{position:absolute;top:4px;right:6px;color:var(--bs-ink);font-size:12px;font-weight:900}.bs-icon-canvas{display:block;pointer-events:none}.bs-tools{display:flex;flex-direction:column;gap:8px}.bs-tool{flex:1 1;min-width:64px;padding:8px 12px;border:0;border-radius:16px;background:color-mix(in srgb,var(--bs-white) 6%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset;font-weight:800}.bs-tool.is-day{background:linear-gradient(180deg,var(--bs-accent) 0,var(--bs-accent-deep) 100%);color:var(--bs-accent-ink);box-shadow:none}.bs-tool.is-night{background:var(--bs-night);color:var(--bs-ink)}.bs-tool[aria-pressed=true]{color:var(--bs-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--bs-accent) 50%,transparent) inset}@media (min-aspect-ratio:5/4){.bs-layout{width:100%;max-width:1400px;grid-template-columns:minmax(280px,360px) minmax(0,1fr);grid-template-rows:auto auto auto 1fr;grid-template-areas:"top bench" "goal bench" "meter bench" "dock bench";column-gap:20px}.bs-meter{height:auto;min-height:58px}.bs-dock{align-self:start;flex-direction:column}.bs-tray{grid-auto-flow:row;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));overflow:visible;align-content:start}.bs-tools{flex-direction:row}.bs-tool{min-height:44px}}@media (min-aspect-ratio:5/4) and (max-height:520px){.bs-layout{gap:6px}.bs-goal{padding:6px 10px;font-size:14px}.bs-checks li{padding:1px 4px}.bs-tray{min-height:0}.bs-stock{min-width:64px;padding:4px 6px}}.bs-scrim{position:absolute;inset:0;z-index:10;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));overflow-y:auto;touch-action:pan-y;background:color-mix(in srgb,var(--bs-page) 55%,transparent);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:bs-fade .18s ease}.bs-scrim :where(button,a){touch-action:manipulation}.bs-card{width:min(380px,100%);padding:26px 22px 18px;border:1px solid var(--bs-panel-edge);border-radius:24px;background:linear-gradient(180deg,color-mix(in srgb,var(--bs-panel) 92%,var(--bs-white)) 0,var(--bs-panel) 40%);box-shadow:0 1px 0 color-mix(in srgb,var(--bs-white) 6%,transparent) inset,0 24px 60px color-mix(in srgb,var(--bs-shadow) 70%,transparent),0 6px 16px color-mix(in srgb,var(--bs-shadow) 40%,transparent);text-align:center;-moz-user-select:text;user-select:text;-webkit-user-select:text;animation:bs-rise .24s cubic-bezier(.2,.9,.3,1.2)}.bs-card.is-wide{width:min(480px,100%);text-align:left}@keyframes bs-fade{0%{opacity:0}}@keyframes bs-rise{0%{opacity:0;transform:translateY(14px) scale(.98)}}@media (prefers-reduced-motion:reduce){.bs-card,.bs-scrim,.bs-toast{animation:none}}.bs-kicker{margin:0 0 4px;color:var(--bs-accent);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.bs-title{margin:0;font-family:var(--font-display),"Fredoka",ui-rounded,system-ui,sans-serif;font-weight:700;font-size:clamp(38px,11vw,50px);line-height:1.02;letter-spacing:-.01em}.bs-title span{color:var(--bs-accent)}.bs-h2{margin:0 0 10px;font-family:var(--font-display),"Fredoka",ui-rounded,system-ui,sans-serif;font-weight:700;font-size:28px;line-height:1.1}.bs-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.bs-learned,.bs-lede,.bs-note,.bs-teach{margin:10px 0 14px;color:var(--bs-ink);font-size:16px;line-height:1.45}.bs-lede,.bs-note{color:var(--bs-muted)}.bs-note{font-size:14px}.bs-goal-line{margin:0 0 16px;padding:10px 12px;border-radius:14px;background:color-mix(in srgb,var(--bs-accent) 9%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--bs-accent) 30%,transparent) inset;font-weight:700;line-height:1.35}.bs-goal-line span{display:block;color:var(--bs-accent);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.bs-actions{display:grid;grid-gap:10px;gap:10px;margin-top:18px}.bs-actions.is-row{grid-auto-flow:column;grid-auto-columns:1fr}.bs-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:52px;padding:8px 18px;border:0;border-radius:16px;background:linear-gradient(180deg,var(--bs-accent) 0,var(--bs-accent-deep) 100%);color:var(--bs-accent-ink);font-family:var(--font-display),"Fredoka",ui-rounded,system-ui,sans-serif;font-size:19px;font-weight:600;box-shadow:0 1px 0 color-mix(in srgb,var(--bs-white) 45%,transparent) inset,0 10px 24px color-mix(in srgb,var(--bs-accent-deep) 28%,transparent);transition:transform .08s ease,filter .12s ease}.bs-btn small{font-family:var(--font-body),ui-rounded,system-ui,sans-serif;font-size:13px;font-weight:800;opacity:.72}.bs-btn:hover{filter:brightness(1.05)}.bs-btn:active{transform:scale(.98)}.bs-btn.is-ghost{background:color-mix(in srgb,var(--bs-white) 6%,transparent);color:var(--bs-ink);box-shadow:0 0 0 1px var(--bs-panel-edge) inset}.bs-btn:focus-visible,.bs-icon:focus-visible,.bs-link:focus-visible,.bs-mini:focus-visible,.bs-stock:focus-visible,.bs-tile:focus-visible,.bs-toggle:focus-visible{outline:2px solid var(--bs-accent);outline-offset:2px}.bs-facts{display:grid;grid-template-columns:repeat(2,1fr);margin:18px 0 0;padding:12px 0 0;border-top:1px solid var(--bs-panel-edge)}.bs-facts div{display:flex;flex-direction:column-reverse;gap:2px}.bs-facts dt{color:var(--bs-muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.bs-facts dd{margin:0;font-size:20px;font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bs-links{display:flex;justify-content:center;gap:18px;margin-top:14px}.bs-link{padding:6px 4px;border:0;background:none;color:var(--bs-muted);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.bs-meet{display:grid;grid-gap:10px;gap:10px;margin:6px 0 4px;padding:12px;border-radius:16px;background:color-mix(in srgb,var(--bs-page) 55%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset}.bs-meet-art{display:flex;justify-content:center;gap:18px}.bs-meet-view{display:flex;flex-direction:column;align-items:center;gap:2px}.bs-meet-view small{color:var(--bs-faint);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.bs-meet figcaption{color:var(--bs-muted);font-size:14px;line-height:1.4}.bs-meet figcaption strong{color:var(--bs-ink)}.bs-bands{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:6px 4px;gap:6px 4px;margin:-4px 0 14px}.bs-band{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:800}.bs-band i{width:14px;height:18px;border-radius:3px;box-shadow:0 0 0 1px var(--bs-panel-edge)}.bs-awards{display:grid;grid-gap:6px;gap:6px;margin:6px 0 4px;padding:0;list-style:none}.bs-awards li{display:flex;align-items:center;gap:10px;color:var(--bs-muted);font-weight:700}.bs-awards li.is-on{color:var(--bs-ink)}.bs-awards .bs-star{font-size:22px}.bs-learned{padding:12px 14px;border-radius:14px;background:color-mix(in srgb,var(--bs-good) 8%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--bs-good) 25%,transparent) inset}.bs-chapter{margin-top:14px}.bs-chapter-title{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:14px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--bs-muted)}.bs-chapter-title span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;color:var(--bs-accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--bs-accent) 40%,transparent) inset}.bs-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));grid-gap:8px;gap:8px}.bs-tile{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"n name" "n stars";align-items:center;grid-column-gap:8px;column-gap:8px;min-height:56px;padding:8px 10px;border:0;border-radius:14px;background:color-mix(in srgb,var(--bs-white) 5%,transparent);box-shadow:0 0 0 1px var(--bs-panel-edge) inset;text-align:left}.bs-tile.is-current{box-shadow:0 0 0 1.5px var(--bs-accent) inset}.bs-tile:disabled{opacity:.4;cursor:default}.bs-tile-n{grid-area:n;font-family:var(--font-display),"Fredoka",ui-rounded,system-ui,sans-serif;font-size:22px;font-weight:700;color:var(--bs-muted);min-width:26px;text-align:center}.bs-tile.is-done .bs-tile-n{color:var(--bs-accent)}.bs-tile-name{grid-area:name;font-size:13px;font-weight:800;line-height:1.15}.bs-lock,.bs-tile .bs-stars{grid-area:stars;font-size:12px}.bs-lock{display:block;width:12px;height:14px;color:var(--bs-faint)}.bs-toggles{display:grid;grid-gap:4px;gap:4px;margin-top:16px;padding-top:10px;border-top:1px solid var(--bs-panel-edge)}.bs-toggle{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 4px;border:0;background:none;font-weight:700}.bs-toggle i{position:relative;width:42px;height:24px;border-radius:999px;background:var(--bs-panel-edge);transition:background .15s ease}.bs-toggle i:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--bs-ink);transition:transform .15s ease}.bs-toggle[aria-checked=true] i{background:var(--bs-accent-deep)}.bs-toggle[aria-checked=true] i:after{transform:translateX(18px)}