/* BrainHero 2.0 — system fonts, local assets, readable at every width. */
:root{color-scheme:dark;--bg:#111426;--surface:#1b2138;--surface-2:#222a45;--line:#39425f;--text:#f3f4ff;--muted:#bcc4df;--violet:#b5a0ff;--cyan:#82e4e5;--green:#9de8c3;--warn:#ffdaad;--radius:20px;--shadow:0 16px 50px #080b1829;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6;background:var(--bg);color:var(--text)}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,input,select{min-height:46px}button{border:0;color:inherit;background:none}button:disabled{cursor:default;opacity:.48}button:not(:disabled),a,summary{touch-action:manipulation}a{color:var(--cyan);text-underline-offset:4px}a:hover{color:#c5ffff}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.22;letter-spacing:-.025em;text-wrap:balance}h1{font-size:clamp(1.9rem,3.5vw,2.75rem);font-weight:750}h2{font-size:1.4rem;font-weight:700}h3{font-size:1.12rem}p{margin-top:.75rem}p:first-child{margin-top:0}ul,ol{padding-left:1.4rem}strong{font-weight:680}small{font-size:.875rem}fieldset{border:0;padding:0;margin:1.5rem 0}legend{font-weight:650;margin-bottom:.7rem}input,select,textarea{width:100%;color:var(--text);background:#12182c;border:1px solid #64708e;border-radius:11px;padding:.72rem .9rem}input::placeholder{color:#9fa8c5}input[type=radio],input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--violet);flex-shrink:0}input[type=number]{min-width:64px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.file-button:focus-within{outline:3px solid var(--cyan);outline-offset:4px}main:focus{outline:none}button,summary,a,input,select{scroll-margin-block:100px}::selection{background:#584780;color:#fff}
.boot{padding:3rem;text-align:center}.muted{color:var(--muted)}.fine-print{font-size:.875rem;color:var(--muted);line-height:1.6}.eyebrow{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;font-weight:750;color:var(--cyan);margin-bottom:.6rem}.pill{display:inline-flex;align-items:center;border-radius:6px;padding:.32rem .65rem;min-height:30px;background:#b5a0ff1c;border:1px solid #b5a0ff40;color:#d9ccff;font-size:.75rem;letter-spacing:.07em;font-weight:700}.pill.subtle{background:#89e7c00d;border-color:#89e7c038;color:var(--green)}.panel{padding:1.7rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.panel+.panel{margin-top:1.2rem}.primary,.secondary,.file-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-align:center;line-height:1.4;min-height:48px;border-radius:11px;padding:.8rem 1.1rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:background .15s,transform .15s;max-width:100%}.primary{background:var(--violet);color:#18122e;border:1px solid transparent}.primary:hover:not(:disabled){background:#c8b8ff;color:#18122e;transform:translateY(-1px)}.secondary,.file-button{background:#ffffff04;border:1px solid #7883a4;color:var(--text)}.secondary:hover:not(:disabled),.file-button:hover{background:#ffffff0b;border-color:var(--violet);color:white}.small{padding:.45rem .85rem}.text-button,.back-button{color:#d4c7ff;padding:.5rem .2rem;font-size:.9rem;font-weight:650;text-align:left}.text-button:hover,.back-button:hover{text-decoration:underline;text-underline-offset:4px}.danger{color:#ffb3b3}.icon-button{width:44px;min-width:44px;height:44px;min-height:44px;border:1px solid #6a7491;border-radius:9px;font-size:1.3rem;padding:0;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover:not(:disabled){background:#ffffff0c}.actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin-top:1.3rem}.actions.center{justify-content:center}.row-heading{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;margin-bottom:1.5rem}.row-heading p{margin-top:.35rem}.row-heading>.secondary{flex-shrink:0}.section-heading{margin-bottom:1.8rem;max-width:780px}.section-heading>.muted{font-size:1rem;max-width:710px}.section-block{margin-top:2.3rem}.section-block>h2{margin-bottom:1.15rem}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.05rem}.card-grid>.panel{margin-top:0}.two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}.card-symbol{display:block;font-size:2.1rem;line-height:1;min-height:44px;margin-bottom:1rem}.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}.print-only{display:none}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:var(--cyan);color:#111426;padding:12px;border-radius:8px}.skip-link:focus{top:12px}.empty-state{padding:1.7rem;border:1px dashed #697596;border-radius:16px;color:var(--muted);background:#ffffff03}
.app{max-width:1480px;margin:0 auto;padding:0 2.5rem}.app-header{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.85rem;text-align:left;padding:0;letter-spacing:-.04em;font-weight:800;font-size:1.55rem;line-height:1.15}.brand-light{color:var(--violet)}.brand small{display:block;letter-spacing:.06em;font-weight:450;font-size:.72rem;color:var(--muted);margin-top:.25rem}.brand-mark{width:42px;height:47px;display:inline-flex;align-items:center;justify-content:center;position:relative;background:var(--violet);color:#18132e;font-size:2rem;border-radius:13px}.brand-mark>span{position:absolute;color:var(--cyan);font-size:1.2rem;right:-7px;top:-10px;text-shadow:0 0 1px #111426}.profile-chip{display:flex;align-items:center;gap:.75rem;text-align:left;padding:.4rem .6rem;border-radius:12px;max-width:40%}.profile-chip:hover{background:#ffffff06}.profile-chip>span:first-child{font-size:1.65rem;background:var(--surface);border:1px solid var(--line);width:48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-chip>span:last-child{min-width:0}.profile-chip strong{display:block;font-size:.95rem;overflow-wrap:anywhere}.profile-chip small{display:block;font-size:.75rem;color:var(--muted)}.header-link{font-size:.875rem}.app-layout{display:grid;grid-template-columns:164px minmax(0,1fr);gap:2.3rem}.main-nav{padding-top:2.8rem;position:sticky;top:0;align-self:start;display:flex;flex-direction:column;gap:.55rem}.main-nav button{display:flex;align-items:center;gap:.8rem;padding:.85rem 1rem;min-height:52px;text-align:left;border-radius:12px;color:var(--muted);font-weight:600;border:1px solid transparent}.main-nav button>span:first-child{font-size:1.4rem;line-height:1;width:22px;display:inline-block;text-align:center}.main-nav button:hover{background:#ffffff05;color:var(--text)}.main-nav button.active{color:#e2d8ff;background:#b5a0ff15;border-color:#b5a0ff35}.nav-note{margin:3rem 1rem;font-size:.8rem;line-height:1.7;letter-spacing:.02em;color:#a2aecf}.app-layout main{padding:2.8rem 0 0;min-width:0}.app-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;color:#a2aecf;border-top:1px solid var(--line);margin-top:3rem;padding:1.4rem 0 2rem;font-size:.75rem}.app-footer .text-button{font-size:.8rem}.onboarding .app-layout:not(:has(.main-nav)){display:block}.onboarding main{max-width:1160px;margin:0 auto}.welcome{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;padding:1.5rem 0}.welcome-copy h2{font-size:clamp(2.1rem,4vw,3.2rem);line-height:1.15}.welcome-copy>p:not(.eyebrow){font-size:1.05rem;color:var(--muted);max-width:440px;margin-top:1.3rem}.welcome-list{list-style:none;padding:0;margin:2.1rem 0 1rem}.welcome-list li{display:flex;align-items:center;gap:1rem;margin:1rem 0;color:#e0e3f5}.welcome-list li>span{font-size:.75rem;font-weight:750;color:var(--cyan);border:1px solid #82e4e53d;border-radius:50%;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.profile-editor{max-width:680px}.profile-editor h1{font-size:2rem}.profile-editor form{margin-top:1.5rem}.field{display:flex;flex-direction:column;gap:.45rem;font-size:.875rem;font-weight:650;min-width:0}.field input,.field select{font-weight:400;font-size:1rem}.option-row{display:flex;flex-wrap:wrap;gap:.6rem}.option{display:flex;align-items:center;gap:.4rem;border:1px solid #687392;border-radius:11px;min-height:48px;padding:.65rem .75rem;font-size:.875rem;cursor:pointer}.option.selected{border-color:var(--violet);background:#b5a0ff15}.option input{margin:0}.avatars{display:grid;grid-template-columns:repeat(5,1fr);gap:.55rem;max-width:375px}.avatar-choice{font-size:1.65rem;min-height:54px;border-radius:12px;border:1px solid var(--line);background:#11172a}.avatar-choice.selected{border:2px solid var(--violet);background:#b5a0ff20}.profile-editor>.fine-print{margin-top:1.5rem}
.today-hero{position:relative;display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;padding:2.1rem;border:1px solid #5b5484;border-radius:24px;background:linear-gradient(110deg,#302647,#23203b 62%,#1e3040);overflow:hidden}.today-hero h2{font-size:clamp(1.7rem,2.5vw,2.1rem);margin-top:1rem;line-height:1.18}.today-hero p{color:#d0cbe7;font-size:.95rem;max-width:480px}.today-hero .primary{margin-top:1.35rem}.hero-note{align-self:center;justify-self:end;text-align:center;width:100%;max-width:220px;position:relative}.hero-note>span{display:block;font-size:4.6rem;line-height:1.2;color:var(--cyan);transform:rotate(-8deg);margin-bottom:.5rem}.hero-note>strong{display:block;font-size:1.05rem;color:#e7fafa;line-height:1.4}.hero-note>p{font-size:.8rem;color:#a9c4d6}.routine-card{display:flex;flex-direction:column;min-height:270px}.routine-card .muted{font-size:.875rem}.first-step{font-size:.875rem;color:var(--muted);padding-top:.4rem;flex:1}.first-step strong{font-weight:500;color:#e0e5f7}.routine-card>.actions{gap:.9rem}.routine-card>.actions .primary{padding:.65rem 1.2rem}.resume-card h3{margin-top:.8rem}.resume-card>.muted{font-size:.875rem}.feature-link{background:#ffffff03;border:1px solid var(--line);border-radius:16px;padding:1.3rem;display:flex;text-align:left;align-items:center;gap:1rem;min-height:120px}.feature-link:hover{border-color:var(--violet);background:#b5a0ff09}.feature-link>span:first-child{font-size:1.8rem}.feature-link>span:last-child{font-size:1.4rem;margin-left:auto;color:var(--violet)}.feature-link p{font-size:.875rem;margin-top:.35rem;color:var(--muted)}.feature-link h3{font-size:1rem}.step-number{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;color:#ddd2ff;background:#b5a0ff19;border:1px solid #b5a0ff4f;font-size:.875rem;font-weight:700}.step-number.done{color:var(--green);border-color:#9de8c355;background:#9de8c318}.editor-steps{margin:1.5rem 0;display:flex;flex-direction:column;gap:1.1rem}.editor-step{display:grid;grid-template-columns:34px minmax(0,1fr) 80px auto;gap:.7rem;align-items:end;border-bottom:1px solid var(--line);padding-bottom:1.1rem}.editor-step>.step-number{align-self:center}.move-controls{display:flex;gap:.35rem;align-items:center}.routine-form>.actions{padding-top:1rem;border-top:1px solid var(--line)}.active-step{text-align:center;padding:2rem}.active-step>h2{font-size:clamp(1.5rem,3vw,2.3rem);max-width:700px;margin:0 auto}.timer-card{padding:1.4rem 0;text-align:center}.timer-card>.eyebrow{font-size:.7rem;margin-bottom:.3rem;color:var(--muted)}.timer-digits{font-size:clamp(3.8rem,8vw,5.5rem);font-weight:650;letter-spacing:-.04em;line-height:1.1;font-variant-numeric:tabular-nums;color:#efebff}.timer-card .actions{margin-top:1rem}.complete-step{background:var(--green);color:#122f24;min-height:54px}.complete-step:hover:not(:disabled){background:#baffdc;color:#122f24}.active-step>.fine-print{margin-top:1.1rem}.break-inline{margin:1.5rem -0.3rem 0;padding:1.5rem;border-radius:16px;background:#82e4e509;border:1px solid #82e4e53d}.routine-outline{margin-top:1.1rem}.plain-list,.history-list{padding:0;list-style:none}.plain-list li{display:flex;gap:.8rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.plain-list li:last-child{border:0}.plain-list li>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}.plain-list li .muted{flex-shrink:0;font-size:.875rem}.plain-list small{display:block;color:var(--warn)}.step-state{font-variant-numeric:tabular-nums;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;background:#ffffff08;border-radius:50%;flex-shrink:0}.step-state.done{background:#9de8c31a;color:var(--green)}
.filter-row{display:flex;gap:.55rem;flex-wrap:wrap;margin:1.5rem 0}.chip{display:inline-flex;align-items:center;justify-content:center;padding:.55rem .95rem;border-radius:100px;border:1px solid #657190;font-size:.875rem;min-height:44px;color:#d0d7ed;line-height:1.3}.chip:hover{background:#ffffff08}.chip.active{color:#17112d;background:var(--violet);border-color:var(--violet);font-weight:700}.mode-panel,.rank-panel{display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.mode-panel h2{font-size:1.1rem}.mode-panel p{font-size:.875rem;max-width:530px;margin-top:.4rem}.switch{display:flex;align-items:center;gap:.65rem;font-size:.875rem;font-weight:650;min-height:48px}.switch input{margin:0}.switch span{min-width:100px}.game-card{display:flex;flex-direction:column;padding:1.4rem}.game-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.7rem}.game-card-top .card-symbol{margin:0;font-size:1.8rem;min-height:38px}.area-label{font-size:.75rem;color:var(--cyan)}.game-card h2{font-size:1.1rem}.game-card>p{font-size:.875rem;flex:1;min-height:50px}.game-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:1.2rem}.game-card-bottom .fine-print{font-size:.75rem}.game-card-bottom .secondary{padding:.55rem .75rem;font-size:.875rem;flex-shrink:0}.back-button{margin-bottom:1.2rem}.game-heading{display:flex;align-items:center;gap:1rem;margin-bottom:1.6rem}.game-heading>span{font-size:2.6rem}.game-heading h1{font-size:clamp(1.8rem,3vw,2.4rem)}.game-heading .eyebrow{margin-bottom:.3rem}.game-stage{max-width:980px;margin:0 auto;padding:2rem}.game-intro{max-width:680px;padding:.8rem 0}.game-intro h2{margin-top:1.5rem}.game-intro>p{font-size:1.05rem;line-height:1.75;color:#d2d8ed}.game-intro>.primary{margin-top:1.3rem}.game-intro>.fine-print{font-size:.875rem;margin-top:1.2rem}.game-inner{text-align:center}.game-inner>.muted{margin-top:1.2rem}.game-inner>.primary{margin-top:1.1rem}.game-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;color:#c8d1eb;font-size:.9rem;padding-bottom:1.2rem;text-align:left;font-variant-numeric:tabular-nums}.game-meta+.question{margin-top:1.5rem}.question{font-size:clamp(1.4rem,3vw,2rem);margin-bottom:1.5rem}.color-word{font-size:clamp(2.1rem,5vw,3.4rem)}.answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1.5rem 0}.answer{min-height:62px;padding:1rem;border:1px solid #7a86a6;background:#141b30;border-radius:13px;text-align:center;font-weight:600;font-size:1rem;overflow-wrap:anywhere}.answer:hover:not(:disabled){border-color:var(--violet);background:#b5a0ff12}.answer:disabled{opacity:.78}.answer.correct{color:#cdffe3;border-color:var(--green);background:#2b554638;opacity:1}.feedback{border-radius:12px;padding:1rem 1.2rem;margin:1.2rem 0;font-size:.95rem;text-align:left;border:1px solid #9de8c355;color:#dcffed;background:#9de8c310}.feedback.hint{background:#ffdaad0c;color:#ffe4c3;border-color:#ffdaad55}.board{--cols:3;display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:9px;max-width:480px;margin:1.1rem auto}.tile{display:flex;align-items:center;justify-content:center;position:relative;min-width:0;aspect-ratio:1;padding:0;border:1px solid #7180a5;background:#131a30;border-radius:12px;font-size:clamp(1.2rem,2.6vw,1.8rem);font-variant-numeric:tabular-nums;line-height:1.2}.tile:disabled{opacity:1;color:#bac5e2}.tile:disabled:not(.lit):not(.correct):not(.empty):not(.puzzle){background:#171e32}.tile:not(:disabled):hover{border-color:var(--violet);background:#30334e}.tile.lit,.tile.lit:disabled{background:var(--violet);border-color:#d6caff;color:#17102f;font-weight:750;box-shadow:inset 0 0 0 2px #d6caff}.tile.correct,.tile.correct:disabled{background:#9de8c329;border-color:var(--green);color:#d5ffe8}.tile.missed,.tile.missed:disabled{border-color:#ffdaa9;background:#ffdaad16;color:#ffdaa9}.tile.puzzle{font-weight:750;font-size:1.8rem;background:#30304d;border-color:#8e86ad}.tile.puzzle:disabled{background:#262a42;color:#d3d8ed;border-color:#535e7b}.tile.puzzle:not(:disabled){box-shadow:inset 0 0 0 1px var(--violet);border-color:var(--violet)}.tile.empty:disabled{background:transparent;border:1px dashed #637091;color:#8492b6}.tile.symbol,.tile.target{font-size:clamp(1.2rem,3vw,2.1rem)}.tile-check{position:absolute;right:2px;top:1px;border-radius:50%;background:var(--green);color:#162e24;width:19px;height:19px;font-size:.75rem;font-weight:800;display:flex;align-items:center;justify-content:center}.two-boards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.two-boards .board{gap:5px}.two-boards h3{font-size:1rem}.two-boards .tile{border-radius:8px}.goal-board{max-width:230px}.goal-board .tile{font-size:.9rem;border-radius:7px}.plan-steps{list-style:none;padding:0;text-align:left;margin:1.5rem 0}.plan-steps li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:.8rem;align-items:center;margin:.6rem 0;padding:.85rem;border:1px solid var(--line);border-radius:12px;background:#131a2d}.plan-steps .move-controls{flex-wrap:nowrap}.plan-steps li>span:nth-child(2){font-size:.95rem;overflow-wrap:anywhere}.pattern-line,.letter-line{display:flex;justify-content:center;align-items:center;gap:.5rem;flex-wrap:wrap;margin:1.5rem 0}.pattern-line{font-size:1.8rem}.pattern-line>span{padding:.15rem}.missing{border:2px dashed var(--cyan);min-width:48px;border-radius:10px;color:var(--cyan)}.letter{display:flex;align-items:center;justify-content:center;width:48px;height:52px;min-height:48px;border:1px solid #827aa8;border-radius:9px;background:#282944;font-weight:750;font-size:1.35rem}.letter.slot{background:#141a2f;border-color:#5f6989;color:#d7cbff}.letter:disabled{opacity:.38}.guess{min-height:56px}.code-box{min-width:48px;background:#131a30;border:1px solid #5b6687;border-radius:10px;padding:.4rem .7rem}.code-box.current{border:2px solid var(--cyan)}.code-box>span{display:block;font-size:1.5rem}.code-box>strong{display:block;font-size:1.1rem}.legend{display:flex;gap:.65rem;flex-wrap:wrap;justify-content:center;margin-top:.85rem}.legend>span{border:1px solid var(--line);border-radius:8px;padding:.5rem .75rem;font-size:1rem}.result{max-width:750px;margin:0 auto;text-align:center;padding:2rem 1rem}.result>p{max-width:610px;margin-left:auto;margin-right:auto}.result .eyebrow{margin-top:1rem}.result h2{font-size:2.1rem}.result-icon{display:block;font-size:3.5rem;line-height:1.2;color:var(--cyan)}.result>.fine-print{margin-top:1.5rem}
.breathing{text-align:center}.breathing>.filter-row{justify-content:center}.breath-orb{width:220px;height:220px;border-radius:50%;margin:2.5rem auto;display:flex;align-items:center;justify-content:center;border:1px solid #9cc9e280;background:radial-gradient(circle at 40% 35%,#615586,#303f58 75%);box-shadow:0 0 0 14px #b5a0ff07,0 0 0 30px #82e4e504}.breath-orb>span{padding:2rem;font-weight:600;font-size:1.2rem;line-height:1.35}.breath-orb.paced{animation:breathe 7s infinite ease-in-out}.breathing>p{max-width:720px;margin-left:auto;margin-right:auto}@keyframes breathe{0%,100%{transform:scale(.92)}42%{transform:scale(1.06)}}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1.1rem}.stat{padding:1.3rem 1.15rem;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.stat>strong{display:block;font-size:2rem;font-variant-numeric:tabular-nums;line-height:1.2;color:#ded4ff}.stat>span{display:block;margin-top:.5rem;font-size:.8rem;color:var(--muted)}.rank-panel{margin-bottom:1.1rem}.rank-panel h2{font-size:1.3rem}.rank-panel p{font-size:.875rem;max-width:490px}.rank-progress{min-width:180px;max-width:300px;width:36%}.rank-progress>span{font-size:.8rem;color:var(--muted);display:block;margin-top:.4rem}progress{appearance:none;width:100%;height:8px;display:block;border:0;border-radius:20px;background:#3c4262;overflow:hidden}progress::-webkit-progress-bar{background:#3c4262;border-radius:20px}progress::-webkit-progress-value{background:var(--violet);border-radius:20px}progress::-moz-progress-bar{background:var(--violet);border-radius:20px}.week-chart{display:flex;gap:1rem;justify-content:space-around;margin:2rem 0 1.5rem;padding:0 .5rem}.chart-day{display:flex;flex:1;flex-direction:column;gap:.6rem;text-align:center;min-width:0}.chart-day>strong{font-size:.8rem;color:var(--cyan);font-weight:600}.chart-day>span{font-size:.75rem;color:var(--muted)}.bar-track{height:105px;display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #697294}.bar{width:55%;max-width:48px;background:linear-gradient(0deg,#9679db,#c3b0ff);border-radius:7px 7px 0 0;min-height:0}.table-scroll{overflow-x:auto;margin:1rem 0;max-width:100%}table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}th,td{padding:.8rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}thead th{font-weight:650;color:#c0cae5;font-size:.8rem}tbody th{font-weight:500}tbody tr:last-child>*{border:0}.reflection-box{margin-top:1.3rem;padding:1rem 1.2rem;border-left:3px solid var(--cyan);border-radius:0 9px 9px 0;background:#82e4e507}.reflection-box h3{font-size:1rem}.reflection-box p{font-size:.9rem;color:#cbdce9}.history-list{margin:0}.history-list li{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid var(--line);padding:1rem 0}.history-list li:first-child{padding-top:0}.history-list li:last-child{border:0;padding-bottom:0}.history-list strong{font-size:.95rem}.history-list p{font-size:.8rem;margin-top:.25rem}.history-list .pill{white-space:nowrap}.data-tools{margin-top:1.5rem}.data-tools>p{max-width:790px;font-size:.95rem}.data-tools details{margin-top:1.6rem}.data-tools details p{font-size:.9rem;color:var(--muted)}.data-tools summary{font-size:.9rem}.file-button{position:relative;cursor:pointer;overflow:hidden}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;padding:0}.import-confirm{border:1px solid var(--warn);border-radius:13px;background:#ffdaad07;padding:1.3rem;margin-top:1.3rem}.import-confirm p{font-size:.9rem}
details>summary{cursor:pointer;font-weight:650;list-style:none;display:flex;gap:1rem;align-items:center;min-height:46px}details>summary::after{content:'+';margin-left:auto;font-size:1.35rem;color:var(--violet);flex-shrink:0}details[open]>summary::after{content:'−'}details>summary::-webkit-details-marker{display:none}details[open]>summary{margin-bottom:1rem}details>summary>span:not(.step-number){line-height:1.4}details.panel{padding:1.2rem 1.5rem}.guide-intro{display:flex;align-items:center;gap:2.5rem;margin-bottom:1.5rem}.guide-intro>div:first-child{flex:1}.guide-intro h2{margin-top:1rem;font-size:1.7rem}.guide-intro p{color:var(--muted);font-size:.95rem}.guide-count{text-align:center;max-width:120px;flex-shrink:0}.guide-count>strong{display:block;font-size:3.3rem;line-height:1.2;color:var(--cyan);font-weight:600}.guide-count>strong>span{font-size:1.5rem;color:#8996b5}.guide-count>span{display:block;font-size:.75rem;color:var(--muted);margin-top:.45rem}.guide-list{margin-bottom:1.5rem}.guide-body{padding:0 .25rem .3rem 3.1rem;max-width:800px}.guide-body>p{font-size:.95rem;color:#d0d7ed}.guide-body>h3{font-size:1rem;margin-top:1.5rem}.guide-body>.secondary{margin-top:1.2rem}.example{padding:1rem 1.2rem;margin:1.2rem 0;background:#b5a0ff0a;border-left:3px solid var(--violet);border-radius:0 9px 9px 0;font-size:.95rem;color:#d4cfea}.example>strong{font-size:.8rem;color:var(--violet)}.example>p{margin-top:.4rem}.strategy-list details>p{max-width:750px;color:#d0d7ed}.contact-card{display:flex;align-items:center;justify-content:space-between;gap:2rem;background:#82e4e508;border:1px solid #82e4e53b;border-radius:20px;padding:1.8rem;margin:2.3rem 0 1rem}.contact-card h2{font-size:1.4rem}.contact-card p:not(.eyebrow){color:#bfd5e1;font-size:.9rem;max-width:590px}.contact-card>.primary{flex-shrink:0;background:var(--cyan);color:#12252a}.contact-card>.primary:hover{background:#abf9fa;color:#12252a}.source-links{display:flex;flex-direction:column;gap:.7rem;font-size:.9rem}.storage-warning{padding:1.2rem 1.4rem;border:1px solid #ffdaa96b;background:#ffdaa90a;color:#ffe0b7;border-radius:13px;margin-bottom:1.6rem;font-size:.9rem}.storage-warning p{margin-top:.3rem}.storage-warning button{margin-top:.75rem}.notice{display:flex;align-items:center;gap:1rem;justify-content:space-between;padding:.7rem 1rem;border:1px solid #9de8c355;background:#9de8c30c;color:#ddffed;border-radius:12px;margin-bottom:1.5rem;font-size:.9rem}.notice .icon-button{border-color:#9de8c355;flex-shrink:0}.fatal-error{max-width:700px;margin:10vh auto;padding:2.5rem}.fatal-error>.primary{margin-top:1.4rem}
@media(min-width:1500px){.app{padding:0 3rem}.app-layout{gap:3rem}}
@media(max-width:1150px){.app{padding:0 1.6rem}.app-layout{grid-template-columns:145px minmax(0,1fr);gap:1.6rem}.main-nav button{padding:.8rem .7rem}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-hero{grid-template-columns:1.4fr 1fr;padding:1.7rem}.editor-step{grid-template-columns:34px minmax(0,1fr) 74px}.editor-step .move-controls{grid-column:2 / -1;justify-content:flex-end}.welcome{gap:2rem}.panel{padding:1.4rem}.two-boards{gap:1rem}}
@media(max-width:850px){.app{padding:0 1.3rem}.app-header{min-height:94px}.app-layout{display:block}.main-nav{position:sticky;top:0;z-index:20;background:#111426f5;backdrop-filter:blur(10px);padding:.75rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem}.main-nav button{flex-direction:row;justify-content:center;gap:.5rem;min-height:48px;padding:.65rem .4rem;font-size:.875rem}.main-nav button>span:first-child{font-size:1.2rem;width:auto}.nav-note{display:none}.app-layout main{padding-top:2rem}.onboarding .main-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding main{padding-top:1.5rem}.welcome{grid-template-columns:1fr;max-width:660px;margin:0 auto;padding:0;gap:2rem}.welcome-copy h2{font-size:2.4rem}.welcome-copy>p:not(.eyebrow){max-width:600px}.welcome-list{display:none}.welcome-copy>.text-button{margin-top:.8rem}.profile-editor{max-width:none}.stats-grid{gap:.7rem}.stat{padding:1rem .8rem}.stat>span{font-size:.8rem}.contact-card{gap:1.2rem}.contact-card>.primary{max-width:200px}.header-link{font-size:.8rem}.hero-note{max-width:180px}.two-boards .board{max-width:330px}}
@media(max-width:600px){h1{font-size:1.85rem}h2{font-size:1.3rem}.app{padding:0 1rem}.app-header{min-height:85px;gap:.7rem}.brand{font-size:1.25rem;gap:.65rem}.brand-mark{width:35px;height:40px;font-size:1.7rem;border-radius:11px}.brand small{font-size:.65rem}.profile-chip{gap:.4rem;padding:0;max-width:44%}.profile-chip>span:first-child{width:38px;height:42px;border-radius:10px;font-size:1.35rem}.profile-chip strong{font-size:.8rem;line-height:1.3}.profile-chip small{font-size:.68rem;line-height:1.35;margin-top:.2rem}.header-link{font-size:.75rem;max-width:110px;text-align:right;line-height:1.4}.main-nav{gap:.2rem;padding:.6rem 0}.main-nav button{flex-direction:column;gap:.3rem;min-height:59px;border-radius:10px;font-size:.875rem;padding:.55rem .1rem;line-height:1.2}.main-nav button>span:first-child{font-size:1.25rem}.app-layout main{padding-top:1.6rem}.section-heading{margin-bottom:1.4rem}.section-heading>.muted{font-size:.95rem}.eyebrow{font-size:.68rem}.panel{padding:1.25rem;border-radius:16px}.row-heading{align-items:flex-start;flex-direction:column;gap:.9rem;margin-bottom:1.1rem}.row-heading>.secondary{min-height:44px}.today-hero{display:block;padding:1.5rem;border-radius:18px}.today-hero h2{font-size:1.8rem}.today-hero h2 br{display:none}.hero-note{max-width:none;margin-top:1.4rem;padding-top:1rem;border-top:1px solid #9e94c54d;text-align:left;display:grid;grid-template-columns:34px minmax(0,1fr);gap:.2rem .7rem}.hero-note>span{font-size:2rem;margin:0;grid-row:1/3}.hero-note>strong{font-size:.9rem;font-weight:550}.hero-note>strong>br{display:none}.hero-note>p{margin:0;font-size:.8rem;max-width:none}.today-hero .primary{width:100%;margin-top:1.15rem}.today-hero p{font-size:.9rem}.card-grid,.two-column{grid-template-columns:1fr}.card-grid{gap:.85rem}.routine-card{min-height:0;display:grid;grid-template-columns:44px 1fr;gap:.15rem .9rem}.routine-card>.card-symbol{grid-row:1 / 3;margin:0;align-self:center;font-size:1.8rem}.routine-card h3{align-self:end;overflow-wrap:anywhere}.routine-card>.muted{margin-top:0}.routine-card>.first-step,.routine-card>.actions{grid-column:1 / -1}.routine-card>.first-step{margin-top:.65rem}.routine-card>.actions{margin-top:.75rem}.feature-link{padding:1.15rem}.section-block{margin-top:1.8rem}.mode-panel,.rank-panel{align-items:flex-start;flex-direction:column;gap:.7rem}.switch{font-size:.875rem}.filter-row{gap:.45rem;margin:1.2rem 0}.chip{font-size:.875rem;padding:.5rem .8rem}.games-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.game-card{padding:1rem}.game-card-top{flex-direction:column;align-items:flex-start;gap:.55rem}.game-card-top .card-symbol{min-height:32px}.game-card h2{font-size:1.02rem;overflow-wrap:anywhere;min-height:2.5rem}.game-card>p{font-size:.875rem;min-height:72px}.game-card-bottom{flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:.8rem}.game-card-bottom .secondary{width:100%;font-size:.875rem}.game-card-bottom .fine-print{font-size:.7rem}.area-label{font-size:.7rem}.game-stage{padding:1.2rem}.game-heading{gap:.8rem}.game-heading h1{font-size:1.6rem;overflow-wrap:anywhere}.game-heading>span{font-size:2rem}.game-intro>p{font-size:1rem}.game-intro{padding:0}.answers{gap:.7rem}.answer{padding:.8rem .65rem;font-size:.95rem}.question{font-size:1.45rem}.game-meta{font-size:.8rem}.board{gap:7px}.tile{border-radius:10px;font-size:1.3rem}.tile.sequence{font-size:1.6rem}.tile.puzzle{font-size:1.7rem}.two-boards{grid-template-columns:1fr;gap:1rem}.two-boards .board{max-width:340px;gap:7px}.two-boards .tile.symbol{font-size:1.8rem}.plan-steps li{grid-template-columns:28px minmax(0,1fr);gap:.6rem;padding:.8rem}.plan-steps .step-number{width:28px;height:28px}.plan-steps .move-controls{grid-column:2;justify-content:flex-end}.plan-steps li>span:nth-child(2){font-size:.9rem}.pattern-line{font-size:1.5rem;gap:.3rem}.letter-line{gap:.35rem}.letter{width:44px;height:48px;font-size:1.15rem}.result{padding:1.4rem 0}.result h2{font-size:1.8rem}.feedback{font-size:.9rem;padding:.9rem 1rem}.timer-digits{font-size:4.6rem}.active-step{padding:1.5rem 1.1rem}.active-step>h2{font-size:1.6rem}.timer-card .primary,.timer-card .secondary{font-size:.875rem}.break-inline{padding:1rem .6rem}.active-step .complete-step{width:100%}.editor-step{grid-template-columns:28px minmax(0,1fr) 68px;gap:.65rem}.editor-step>.step-number{width:28px;height:28px}.editor-step .field{font-size:.8rem}.editor-step .field input{padding:.7rem .65rem}.editor-step>.field:not(.minutes-field){grid-column:2 / -1}.editor-step>.minutes-field{grid-column:2 / 3;width:76px}.editor-step .move-controls{grid-column:3;justify-self:end}.routine-form>.field{font-size:.875rem}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.stat{padding:1.15rem}.stat>strong{font-size:1.8rem}.rank-progress{width:100%;max-width:none}.week-chart{gap:.35rem;padding:0}.chart-day>span{font-size:.68rem}.bar-track{height:88px}.chart-day>strong{font-size:.75rem}.bar{width:70%}th,td{padding:.65rem .4rem;font-size:.8rem}thead th{font-size:.75rem}.history-list li{gap:.7rem;align-items:flex-start}.history-list .pill{font-size:.65rem;letter-spacing:0;padding:.25rem .45rem}.history-list strong{font-size:.875rem}.history-list p{font-size:.75rem}.guide-intro{gap:1rem;align-items:flex-start;flex-direction:column}.guide-intro h2{font-size:1.5rem}.guide-count{display:flex;gap:.7rem;align-items:center;max-width:none;text-align:left}.guide-count>strong{font-size:1.8rem}.guide-count>strong>span{font-size:1rem}.guide-count>span{font-size:.8rem;margin-top:0;max-width:140px}.guide-body{padding:0}.guide-step summary{font-size:1rem;gap:.7rem}details.panel{padding:1rem 1.2rem}.contact-card{padding:1.35rem;flex-direction:column;align-items:flex-start;border-radius:16px}.contact-card>.primary{max-width:none}.contact-card h2{font-size:1.3rem}.example{padding:.9rem 1rem}.app-footer{margin-top:2.3rem;padding-bottom:1.4rem;font-size:.7rem;justify-content:flex-start;gap:.5rem 1rem}.welcome-copy h2{font-size:2rem}.welcome-copy>p:not(.eyebrow){font-size:.95rem}.welcome{gap:1.5rem}.profile-editor h1{font-size:1.75rem}.option-row{gap:.45rem}.option{font-size:.8rem;padding:.65rem .5rem}.option>span{display:none}.avatars{max-width:none}.avatar-choice{min-height:50px}.profile-editor .primary{width:100%}.breath-orb{width:190px;height:190px}.breath-orb>span{font-size:1.1rem}.data-tools .actions{align-items:stretch}.data-tools .file-button,.data-tools .actions>.secondary{flex:1;min-width:180px}.fatal-error{margin:8vh 1rem;padding:1.6rem}}
@media(max-width:370px){.app{padding:0 .75rem}.main-nav{gap:0}.main-nav button{font-size:.82rem}.game-stage{padding:1rem .85rem}.tile{min-height:44px}.board{gap:5px}.two-boards .board{gap:4px}.two-boards .tile.symbol{font-size:1.45rem}.games-grid{grid-template-columns:1fr}.game-card-top{flex-direction:row;align-items:center}.game-card h2,.game-card>p{min-height:0}.game-card-bottom{flex-direction:row;align-items:center}.game-card-bottom .secondary{width:auto}.today-hero{padding:1.25rem}.timer-digits{font-size:3.8rem}.actions{gap:.55rem}.primary,.secondary,.file-button{font-size:.875rem;padding:.75rem .9rem}.editor-step{gap:.5rem}.profile-chip small{display:none}.profile-chip>span:first-child{display:none}.brand{font-size:1.2rem}.guide-step summary{font-size:.95rem}.stats-grid{gap:.55rem}.stat{padding:1rem .8rem}.week-chart{gap:.2rem}.option{font-size:.75rem;gap:.3rem}.option input{width:18px;height:18px;min-height:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.breath-orb.paced{transform:none}}
@media print{@page{size:A4;margin:16mm}:root{color-scheme:light;background:white;color:#1b2437;font-size:11pt}body,.app,.app-layout,main{display:block!important;background:white!important;margin:0!important;padding:0!important;max-width:none!important;min-width:0!important}.no-print,.skip-link,.section-heading,.app-footer{display:none!important}.print-only{display:block!important}.weekly-summary{border:0;padding:0!important;box-shadow:none!important;background:white!important;border-radius:0}.weekly-summary h2{font-size:21pt}.weekly-summary .row-heading{display:block}.weekly-summary .eyebrow,.weekly-summary .muted,.weekly-summary .fine-print,.weekly-summary p,.weekly-summary th,.weekly-summary td,.weekly-summary .reflection-box p{color:#34435a!important}.week-chart{display:none!important}.weekly-summary table{font-size:10pt}.weekly-summary th,.weekly-summary td{padding:9pt 6pt;border-color:#d6dce4}.weekly-summary .reflection-box{background:white;border-left:2pt solid #5b538d;margin-top:18pt;break-inside:avoid}.weekly-summary .reflection-box .print-only{line-height:1.8}.weekly-summary>p{font-size:11pt}.weekly-summary .fine-print{font-size:8.5pt}.table-scroll{overflow:visible}a{color:inherit;text-decoration:none}}
