/* PrepSesh Canvas visual system. This layer intentionally preserves every
   existing product ID, form contract and data attribute. */
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/fonts/geist-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/fonts/geist-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/fonts/geist-mono-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Geist Mono";font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/fonts/geist-mono-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{
  --ink:#14213b;
  --blue:#234acb;
  --blue2:#e8edff;
  --paper:#fffaf0;
  --cream:#f5eddb;
  --card:#fffdf7;
  --line:#c4cede;
  --muted:#56627a;
  --green:#087b59;
  --green2:#dff7ec;
  --orange:#a45700;
  --orange2:#fff0cf;
  --red:#9d2138;
  --red2:#ffe3e7;
  --purple:#6e4df6;
  --canvas-coral:#ff715b;
  --canvas-yellow:#ffd75a;
  --canvas-mint:#59d9ac;
  --canvas-shadow:7px 7px 0 rgba(20,33,59,.16);
  --shadow:0 0 0 1px rgba(20,33,59,.05),5px 6px 0 rgba(20,33,59,.12);
}

html{background:var(--cream);scroll-behavior:smooth}
body{background:linear-gradient(rgba(35,74,203,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(35,74,203,.045) 1px,transparent 1px),var(--cream);background-size:28px 28px;color:var(--ink);font-family:Geist,Arial,sans-serif}
button,a,input,select,textarea{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background-color .16s ease}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 6px var(--canvas-yellow)!important}
.skip-link{position:fixed;z-index:20000;top:10px;left:10px;padding:10px 14px;border:2px solid var(--ink);border-radius:10px;background:var(--canvas-yellow);color:var(--ink);font-weight:900;text-decoration:none;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}body:has(#app:not([hidden])) .skip-landing,body:not(:has(#app:not([hidden]))) .skip-app{display:none}

/* Stable logo lockups: fixed boxes prevent the clipping/letter overlap shown in
   the previous small and large mark variants. */
.landing-brand{gap:12px;color:var(--ink)}
.landing-brand>span,.brand-mark,.product-logo{position:relative;isolation:isolate;display:grid!important;place-items:center!important;flex:0 0 auto;width:46px!important;height:46px!important;min-width:46px;min-height:46px;overflow:visible!important;border:2px solid var(--ink)!important;border-radius:14px!important;background:var(--ink)!important;color:#fff!important;box-shadow:5px 5px 0 var(--canvas-yellow)!important;font-size:1rem!important;font-weight:950!important;line-height:1!important;letter-spacing:-.06em!important;transform:rotate(-1.5deg)}
.landing-brand>span::after,.brand-mark::after,.product-logo::after{content:"";position:absolute;z-index:3;right:-7px;top:-7px;width:12px;height:12px;border:2px solid var(--ink);border-radius:50%;background:var(--canvas-coral)}
.landing-brand>strong{display:grid;line-height:1;font-size:1.06rem;letter-spacing:-.03em}
.landing-brand>strong small{display:block;margin-top:6px;color:var(--blue);font-family:"Geist Mono",monospace;font-size:.43rem;font-weight:900;letter-spacing:.13em}
.product-logo{width:42px!important;height:42px!important;min-width:42px;min-height:42px;border-radius:13px!important;box-shadow:4px 4px 0 var(--canvas-yellow)!important}
.brand-mark{margin-bottom:18px}

/* Core controls */
.primary,.landing-create{border:2px solid var(--ink)!important;border-radius:12px!important;background:var(--ink)!important;color:#fff!important;box-shadow:5px 5px 0 var(--canvas-coral)!important;font-weight:900!important}
.primary:hover,.landing-create:hover{transform:translate(2px,2px)!important;box-shadow:3px 3px 0 var(--canvas-coral)!important}
.secondary{border:2px solid var(--ink)!important;border-radius:11px!important;background:var(--blue)!important;color:#fff!important}
.quiet,.landing-signin{border:1.5px solid var(--ink)!important;border-radius:11px!important;background:#fff!important;color:var(--ink)!important}
.danger{border:1.5px solid #b42318!important;background:var(--red2)!important;color:#9f1f18!important}
.icon-btn{border-radius:8px}
input,select,textarea,.compact-input{border:1.5px solid #aeb9cc!important;border-radius:10px!important;background:#fff!important;color:var(--ink)!important}
input:focus,select:focus,textarea:focus{border-color:var(--blue)!important;box-shadow:0 0 0 3px rgba(35,74,203,.12)}

/* Public landing */
.landing-screen{background:transparent;color:var(--ink)}
.landing-nav{width:min(1420px,calc(100% - 48px));padding:14px 0;border-bottom:0;background:rgba(245,237,219,.92)}
.landing-nav>div{gap:5px}.landing-nav>div>a{color:var(--muted);font-size:.72rem}
.landing-nav .landing-create{padding:11px 16px!important}
.landing-main{width:min(1420px,calc(100% - 48px))}
.landing-hero{min-height:720px;grid-template-columns:1fr .86fr;gap:clamp(44px,7vw,105px);padding:72px 0}
.landing-kicker,.eyebrow{color:var(--blue);font-family:"Geist Mono",monospace;font-size:.62rem;font-weight:900;letter-spacing:.13em;opacity:1}
.landing-kicker::before{content:"";display:inline-block;width:9px;height:9px;margin-right:8px;border:2px solid var(--ink);border-radius:50%;background:var(--canvas-mint);vertical-align:-1px}
.landing-hero h1{max-width:780px;font-size:clamp(4rem,7vw,7.4rem);line-height:.83;letter-spacing:-.075em}
.landing-hero h1::after{content:none}
.landing-hero-copy>p:not(.landing-kicker){max-width:650px;color:var(--muted);font-family:Georgia,serif;font-size:1.15rem;line-height:1.6}
.landing-hero-actions{gap:10px}.landing-hero-actions .landing-create{padding:15px 20px!important}
.landing-text-button{color:var(--blue)}
.landing-trust{color:#526079;font-size:.66rem}.landing-trust span::first-letter{color:var(--green)}
.landing-product{padding-right:18px}
.product-window{padding:22px;border:3px solid var(--ink);border-radius:28px;background:#fff;box-shadow:13px 13px 0 var(--ink);transform:rotate(1deg)}
.product-tabs{border:1.5px solid var(--ink);background:var(--paper)}
.product-tabs button.active{background:var(--blue);color:#fff}
.product-progress{border:1.5px solid var(--ink);background:var(--canvas-mint);color:var(--ink)}
.demo-task{border:1.5px solid var(--ink);border-left:8px solid var(--purple);border-radius:14px;background:#f1edff;box-shadow:3px 4px 0 rgba(110,77,246,.28);transform:rotate(-.35deg)}
.demo-task:nth-child(even){transform:rotate(.35deg)}
.demo-task.paper{border-left-color:var(--canvas-coral);background:var(--red2)}
.demo-task em,.demo-focus button{border:1.5px solid var(--ink);background:var(--ink)}
.floating-note{border:2px solid var(--ink);border-radius:14px;box-shadow:5px 6px 0 var(--ink)}
.note-one{background:var(--canvas-yellow);transform:rotate(-2deg)}.note-two{background:var(--green2);transform:rotate(2deg)}
.landing-proof{border:2px solid var(--ink);border-radius:20px;background:#fff;box-shadow:6px 6px 0 rgba(20,33,59,.14)}
.landing-proof div+div{border-left:1.5px solid var(--ink)}
.landing-section{padding:105px 0}.landing-section h2,.landing-cta h2,.landing-faq h2{letter-spacing:-.06em}
.landing-section-head>p:last-child,.landing-steps p,.feature-grid p,.difference-copy>p:not(.landing-kicker),.difference-stack p,.landing-faq details p{color:var(--muted);font-family:Georgia,serif}
.landing-steps{gap:16px}.landing-steps article,.feature-grid article,.difference-stack article{border:2px solid var(--ink);border-radius:20px;background:#fff;box-shadow:5px 5px 0 rgba(20,33,59,.13)}
.landing-steps article:nth-child(1),.feature-grid article:nth-child(1){background:var(--orange2)}
.landing-steps article:nth-child(2),.feature-grid article:nth-child(2){background:var(--green2)}
.landing-steps article:nth-child(3),.feature-grid article:nth-child(3){background:var(--red2)}
.landing-steps article:nth-child(4),.feature-grid article:nth-child(4){background:var(--blue2)}
.step-icon,.feature-grid article>span{border:1.5px solid var(--ink);background:#fff;color:var(--blue)}
.difference-stack article{border-left-width:8px}.difference-stack article:first-child{border-left-color:var(--green)}
.landing-cta{border:3px solid var(--ink);border-radius:26px;background:var(--blue);box-shadow:10px 10px 0 var(--canvas-yellow)}
.landing-cta .landing-kicker{color:var(--canvas-yellow)}.landing-cta .landing-kicker::before{background:var(--canvas-coral)}
.landing-cta .landing-create{background:var(--canvas-yellow)!important;color:var(--ink)!important;box-shadow:5px 5px 0 var(--ink)!important}
.landing-footer{width:min(1420px,calc(100% - 48px));border-top:2px solid var(--ink)}

/* Signed-in app shell */
#app{background:transparent}
.hero{position:relative;padding:44px max(24px,calc((100% - 1420px)/2)) 78px;border-bottom:3px solid var(--ink);background:var(--blue);color:#fff;overflow:hidden}
.hero::after{content:"";position:absolute;right:-120px;top:-170px;width:520px;height:520px;border:70px solid var(--canvas-yellow);border-radius:50%;opacity:.95;pointer-events:none}
.hero>div{position:relative;z-index:1}.hero h1{max-width:900px;font-size:clamp(2.5rem,5vw,5.3rem);line-height:.92;letter-spacing:-.07em}
.hero-copy{max-width:760px;color:#e4e9ff;font-family:Georgia,serif;font-size:1rem}
.hero .eyebrow{color:var(--canvas-yellow)}
.hero-actions .quiet{background:var(--canvas-yellow)!important}
#app>main{max-width:1420px;padding:0 24px 70px}
.stats{gap:13px;margin-top:-46px}.stats article{position:relative;z-index:3;min-height:112px;padding:19px;border:2px solid var(--ink);border-radius:17px;background:#fff;box-shadow:5px 5px 0 rgba(20,33,59,.15)}
.stats article:nth-child(4){background:var(--canvas-yellow)}.stats span{color:var(--muted);font-family:"Geist Mono",monospace;font-size:.55rem;letter-spacing:.08em;text-transform:uppercase}.stats strong{font-size:1.45rem;letter-spacing:-.04em}
.progress-section{margin:28px 0 19px}.progress-track,.mini-progress{border:1px solid #aeb9cc;background:#fff}.progress-track div,.mini-progress div{background:var(--canvas-mint)}
.global-subject-filter{border:2px solid var(--ink)!important;border-radius:17px!important;background:#fff!important;box-shadow:5px 5px 0 rgba(20,33,59,.12)!important}
.tabs{position:sticky;z-index:20;top:0;gap:2px;margin:20px 0 28px;padding:0 8px;overflow:auto;border:2px solid var(--ink);border-radius:15px;background:rgba(255,253,247,.95);box-shadow:5px 5px 0 rgba(20,33,59,.12);backdrop-filter:blur(12px)}
.tab{min-height:45px;border-bottom:3px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:.68rem}
.tab.active{border-bottom-color:var(--blue);background:transparent;color:var(--ink)}
.task,.day-card,.subject-card,.panel,.coach-result,.notice,.empty{border:1.5px solid var(--ink);border-radius:16px;background:#fff;box-shadow:4px 4px 0 rgba(20,33,59,.11)}
.task{border-left-width:8px}.task:hover{transform:translateY(-1px);box-shadow:5px 6px 0 color-mix(in srgb,var(--subject,#234acb) 28%,transparent)}
.day-card.today{border:2px solid var(--blue);background:var(--blue2)}
.subject-card{border-top-width:9px}.notice{background:var(--blue2);color:var(--ink)}
.tag{border:1px solid currentColor}.empty{border-style:dashed;background:rgba(255,255,255,.55)}

/* Dialogs own the screen and never allow background movement. */
dialog{border:2px solid var(--ink);border-radius:24px;background:var(--card);box-shadow:11px 11px 0 var(--ink)}
dialog::backdrop{background:rgba(20,33,59,.62);backdrop-filter:blur(8px)}
html:has(dialog[open]),body:has(dialog[open]){overflow:hidden;overscroll-behavior:none}
.dialog-close{display:grid;place-items:center;width:40px;height:40px;border:2px solid var(--ink);border-radius:50%;background:#fff;line-height:1}
.timer{font-family:"Geist Mono",monospace;letter-spacing:-.08em}
.focus-rule{font-family:Georgia,serif}

@media(max-width:960px){
  .landing-nav,.landing-main,.landing-footer{width:calc(100% - 28px)}
  .landing-hero{grid-template-columns:1fr}.landing-hero h1{max-width:900px}.landing-product{width:min(680px,100%);padding-right:0;margin:auto}
  .hero::after{right:-260px}.tabs{margin-left:0;margin-right:0}
}
@media(max-width:620px){
  .landing-brand>strong small{display:none}.landing-nav>div>a{display:none}.landing-hero h1{font-size:clamp(3rem,15vw,4.5rem)}
  .product-window{border-width:2px;box-shadow:7px 7px 0 var(--ink);transform:none}.landing-proof div+div{border-left:0;border-top:1.5px solid var(--ink)}
  .hero{padding-bottom:76px}.hero::after{right:-360px;opacity:.45}.stats{grid-template-columns:1fr 1fr}.stats article{min-height:94px}.tabs{border-radius:12px}
}
@media(max-width:420px){.stats{grid-template-columns:1fr}.stats article{min-height:72px}.canvas-wordmark small{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* --------------------------------------------------------------------------
   Approved Canvas welcome page — real layout and copy, not a palette reskin.
   -------------------------------------------------------------------------- */
.landing-screen.canvas-welcome{overflow-x:clip;overflow-y:visible;background:transparent}
.canvas-welcome-nav{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;width:100%;max-width:none;min-height:82px;padding:13px clamp(20px,5vw,78px);border-bottom:2px solid var(--ink);background:rgba(255,250,240,.96);backdrop-filter:blur(14px)}
.canvas-welcome-links{display:flex;justify-content:center;gap:24px}.canvas-welcome-links a{color:var(--muted);font-size:.78rem;font-weight:850;text-decoration:none}
.canvas-welcome-actions{justify-self:end;display:flex;gap:8px}.canvas-welcome-actions button{min-height:44px;padding:0 15px}
.canvas-welcome-main{width:100%;max-width:none}
.canvas-welcome-hero{display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:clamp(40px,7vw,105px);width:min(1420px,calc(100% - 48px));min-height:720px;margin:0 auto;padding:70px 0}
.canvas-welcome-copy h1{margin:0;font-size:clamp(4rem,7vw,7.6rem);font-weight:700;line-height:.82;letter-spacing:-.08em}.canvas-welcome-copy h1 em{color:var(--blue);font-family:Georgia,serif;font-weight:500}
.canvas-welcome-copy>p:not(.landing-kicker){max-width:650px;margin:27px 0;color:var(--muted);font-family:Georgia,serif;font-size:1.2rem;line-height:1.55}
.canvas-welcome-buttons{display:flex;gap:9px}.canvas-welcome-buttons .quiet{display:flex;align-items:center;padding:0 17px;text-decoration:none}.canvas-welcome-copy ul{display:flex;flex-wrap:wrap;gap:12px 22px;margin:24px 0 0;padding:0;list-style:none}.canvas-welcome-copy li{color:#4f5b72;font-size:.7rem;font-weight:850}.canvas-welcome-copy li::before{content:"✓ ";color:var(--green)}
.canvas-welcome-board{position:relative;padding:27px;border:3px solid var(--ink);border-radius:30px;background:#fff;box-shadow:14px 14px 0 var(--ink);transform:rotate(1deg)}
.canvas-welcome-tape,.canvas-tape{position:absolute;left:50%;top:-13px;padding:6px 20px;background:var(--canvas-yellow);box-shadow:0 2px 5px rgba(20,33,59,.14);font-family:"Geist Mono",monospace;font-size:.55rem;font-weight:900;letter-spacing:.1em;white-space:nowrap;transform:translateX(-50%) rotate(-2deg)}
.canvas-welcome-board>header{display:flex;align-items:center;justify-content:space-between}.canvas-board-brand .landing-brand>strong small,.canvas-board-brand small{display:none}.canvas-welcome-board>header>span{padding:6px 9px;border:1.5px solid var(--ink);border-radius:999px;background:var(--canvas-mint);font-size:.62rem;font-weight:900}
.canvas-welcome-board>h2{margin:34px 0 3px;font-size:2.2rem;letter-spacing:-.06em}.canvas-welcome-board>p{margin:0 0 20px;color:var(--muted);font-family:Georgia,serif}
.canvas-welcome-stages{display:grid;gap:9px}.canvas-welcome-stages article{padding:13px 14px;border:1.5px solid var(--ink);border-left:7px solid var(--blue);border-radius:13px;background:#f3f0ff}.canvas-welcome-stages article:nth-child(2){margin-left:24px;border-left-color:var(--canvas-coral);background:#ffecef}.canvas-welcome-stages article:nth-child(3){margin-left:48px;border-left-color:var(--green);background:#e7f7ef}.canvas-welcome-stages small,.canvas-welcome-stages b,.canvas-welcome-stages span{display:block}.canvas-welcome-stages small{color:var(--blue);font-family:"Geist Mono",monospace;font-size:.52rem;font-weight:900}.canvas-welcome-stages b{margin:5px 0 2px;font-size:.76rem}.canvas-welcome-stages span{color:var(--muted);font-size:.62rem}
.canvas-board-start{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;margin-top:18px;padding:0 14px;border:2px solid var(--ink);border-radius:11px;background:var(--ink);color:#fff;font-size:.72rem;font-weight:900;cursor:pointer}.canvas-welcome-sticker{position:absolute;right:-34px;bottom:66px;display:grid;place-items:center;width:88px;height:88px;border:2px solid var(--ink);border-radius:50%;background:var(--canvas-yellow);font-size:.72rem;font-style:normal;font-weight:950;text-align:center;transform:rotate(9deg)}.canvas-legacy-demo{display:none!important}
.canvas-welcome-how,.canvas-welcome-features,.canvas-welcome-cta,.canvas-welcome-faq{width:min(1420px,calc(100% - 48px));margin-inline:auto}.canvas-welcome-how{padding:80px 0;border-top:2px solid var(--ink)}.canvas-welcome-how>div{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.canvas-welcome-how article{position:relative;min-height:260px;padding:25px;border:2px solid var(--ink);border-radius:22px;background:#fff;box-shadow:7px 7px 0 rgba(20,33,59,.15)}.canvas-welcome-how article>span{display:grid;place-items:center;width:42px;height:42px;border:2px solid var(--ink);border-radius:50%;background:var(--canvas-yellow);font-weight:950}.canvas-welcome-how h2{margin:44px 0 8px;font-size:1.55rem;letter-spacing:-.05em}.canvas-welcome-how p,.canvas-welcome-features p{color:var(--muted);font-family:Georgia,serif;line-height:1.5}
.canvas-welcome-features{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;padding:90px 0}.canvas-welcome-features header h2{margin:0;font-size:clamp(2.5rem,5vw,5rem);line-height:.94;letter-spacing:-.07em}.canvas-welcome-features header em{color:var(--blue);font-family:Georgia,serif;font-weight:500}.canvas-welcome-features>div{display:grid;grid-template-columns:1fr 1fr;gap:13px}.canvas-welcome-features article{min-height:220px;padding:21px;border:2px solid var(--ink);border-radius:20px;box-shadow:5px 5px 0 var(--ink)}.canvas-welcome-features article>span{font-size:1.5rem}.canvas-welcome-features h3{margin:35px 0 7px}.feature-yellow{background:var(--canvas-yellow)!important}.feature-mint{background:var(--green2)!important}.feature-coral{background:var(--red2)!important}.feature-blue{background:var(--blue2)!important}
.canvas-welcome-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:80px;padding:38px;border:3px solid var(--ink);border-radius:26px;background:var(--blue);color:#fff;box-shadow:10px 10px 0 var(--canvas-yellow)}.canvas-welcome-cta h2{max-width:800px;margin:0;font-size:clamp(2rem,4vw,4rem);line-height:1;letter-spacing:-.06em}.canvas-welcome-cta .landing-kicker{color:var(--canvas-yellow)}.canvas-welcome-cta .landing-create{flex:none;background:var(--canvas-yellow)!important;color:var(--ink)!important;box-shadow:5px 5px 0 var(--ink)!important}
.canvas-welcome-faq{padding:60px 0 90px}.canvas-welcome-faq h2{font-size:clamp(2.2rem,4vw,4rem);letter-spacing:-.06em}.canvas-welcome-faq details{border:2px solid var(--ink);border-radius:14px;background:#fff;box-shadow:3px 3px 0 rgba(20,33,59,.1)}.canvas-welcome-faq summary{font-weight:850}.canvas-welcome-footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:30px;width:100%;max-width:none;padding:28px clamp(20px,5vw,78px);border-top:2px solid var(--ink);background:var(--paper)}.canvas-welcome-footer p{color:var(--muted);font-family:Georgia,serif}.canvas-welcome-footer>span{font-family:"Geist Mono",monospace;font-size:.55rem;font-weight:900;letter-spacing:.1em}

/* Signed-in Canvas shell. */
.canvas-appbar{position:sticky;top:0;z-index:45;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:76px;padding:12px max(24px,calc((100% - 1420px)/2));border-bottom:2px solid var(--ink);background:rgba(255,250,240,.95);backdrop-filter:blur(14px)}
.canvas-app-brand{text-decoration:none}.canvas-appbar>nav{display:flex;gap:3px;padding:4px;border:1.5px solid var(--ink);border-radius:13px;background:#fff;box-shadow:3px 3px 0 rgba(20,33,59,.13)}.canvas-appbar>nav button{min-height:35px;padding:0 14px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:.72rem;font-weight:850;cursor:pointer}.canvas-appbar>nav button:hover,.canvas-appbar>nav button.active{background:var(--blue);color:#fff}.canvas-app-actions{display:flex;align-items:center;justify-self:end;gap:9px}.canvas-date-jump{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:7px;min-height:43px;padding:0 12px;border:1.5px solid var(--ink);border-radius:12px;background:#fff;cursor:pointer}.canvas-date-jump small{color:#a9273e;font-family:"Geist Mono",monospace;font-size:.55rem;font-weight:900}.canvas-date-jump b{font-size:.72rem}.canvas-date-jump span{color:var(--muted)}.canvas-avatar{display:grid!important;place-items:center!important;width:43px!important;height:43px!important;min-height:43px!important;padding:0!important;border:1.5px solid var(--ink)!important;border-radius:50%!important;background:var(--canvas-yellow)!important;color:var(--ink)!important;box-shadow:3px 3px 0 var(--ink);cursor:pointer}.canvas-avatar>span:first-child{width:auto!important;height:auto!important;background:transparent!important}.canvas-app-actions .profile-menu{top:calc(100% + 11px)}
.hero{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:42px;min-height:240px;padding:28px max(24px,calc((100% - 1420px)/2)) 30px;border-bottom:0;background:transparent;color:var(--ink);overflow:visible}.hero::after{content:none}.hero>div{position:relative;z-index:1}.hero h1{max-width:920px;margin:0;font-size:clamp(3.2rem,6vw,6.8rem);font-weight:650;line-height:.83;letter-spacing:-.075em}.hero h1 em{position:relative;color:var(--blue);font-family:Georgia,serif;font-weight:500}.hero h1 em::after{content:"";position:absolute;right:0;bottom:-6px;left:3%;height:10px;border-top:4px solid var(--canvas-coral);border-radius:50%;transform:rotate(-1.5deg)}.hero-copy{justify-self:end;max-width:520px;margin:0;color:#4f5d76;font-family:Georgia,serif;font-size:clamp(1.08rem,2vw,1.4rem);line-height:1.48}.hero .eyebrow{color:var(--blue)}.hero-actions{align-items:flex-end;justify-content:flex-start;padding-bottom:4px}.hero-actions .quiet{background:#fff!important}.profile-menu{border:2px solid var(--ink);border-radius:14px;background:var(--paper);box-shadow:6px 6px 0 var(--ink)}
#app>main{width:min(1420px,calc(100% - 48px));max-width:none;margin:0 auto;padding:0 0 80px}.stats,.progress-section{display:none!important}.global-subject-filter{margin:18px 0!important}.global-filter-summary,.global-filter-label{font-family:"Geist Mono",monospace!important;font-size:.62rem!important;letter-spacing:.07em}.global-filter-options label,.filter-chip{border:1.5px solid var(--ink)!important;border-radius:999px!important;background:#f5f7fb!important}#app:not([data-canvas-view="today"])>.hero,#app:not([data-canvas-view="today"]) main>.hero,#app:not([data-canvas-view="today"]) #globalSubjectFilter{display:none!important}
.tabs{top:76px;z-index:40;margin:20px 0 24px}.view{animation:canvas-rise .2s ease-out}.view-title{margin:0;font-size:clamp(2.2rem,4vw,4.5rem);line-height:.95;letter-spacing:-.065em}.view-subtitle{max-width:850px;color:var(--muted);font-family:Georgia,serif;font-size:1rem;line-height:1.55}.canvas-view-kicker{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:var(--blue);font-family:"Geist Mono",monospace;font-size:.62rem;font-weight:900;letter-spacing:.12em}.canvas-view-kicker::before{content:"";width:9px;height:9px;border:2px solid var(--ink);border-radius:50%;background:var(--canvas-mint)}
.canvas-original-heading{display:none!important}.canvas-today-workspace{display:grid;grid-template-columns:minmax(720px,1fr) 330px;align-items:start;gap:20px}.canvas-plan-board{overflow:hidden;border:2px solid var(--ink);border-radius:26px;background:var(--card);box-shadow:9px 9px 0 var(--ink)}.canvas-board-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 25px 21px;border-bottom:2px solid var(--ink)}.canvas-board-head h2{margin:0;font-size:clamp(1.5rem,2.7vw,2.2rem);letter-spacing:-.045em}.canvas-completion{display:grid;grid-template-columns:92px auto;align-items:center;gap:7px 9px}.canvas-completion>span{height:10px;overflow:hidden;border:1.5px solid var(--ink);border-radius:999px;background:#e8ebf2}.canvas-completion i{display:block;height:100%;background:var(--canvas-mint)}.canvas-completion small{grid-column:1/-1;justify-self:end;color:var(--muted);font-family:"Geist Mono",monospace;font-size:.5rem;letter-spacing:.08em}.canvas-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.canvas-lane{min-height:510px;padding:18px 14px 20px;border-right:1.5px dashed #9aa8c1}.canvas-lane:last-child{border-right:0}.canvas-lane-1{background:#fff8d9}.canvas-lane-2{background:#eef2ff}.canvas-lane-3{background:#e9f8f1}.canvas-lane>header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:54px;padding:0 5px 15px}.canvas-lane>header>span{display:grid;place-items:center;width:34px;height:34px;border:1.5px solid var(--ink);border-radius:50%;background:#fff;font-family:"Geist Mono",monospace;font-size:.65rem;font-weight:900}.canvas-lane h3,.canvas-lane p{margin:0}.canvas-lane h3{font-size:.85rem}.canvas-lane header p{margin-top:3px;color:var(--muted);font-family:Georgia,serif;font-size:.68rem}.canvas-lane header>b{display:grid;place-items:center;min-width:25px;height:25px;border-radius:8px;background:var(--ink);color:#fff;font-size:.65rem}.canvas-lane-tasks{display:grid;align-content:start;gap:12px}.canvas-lane .task{display:grid!important;grid-template-columns:auto 1fr!important;gap:9px!important;margin:0!important;padding:13px!important;border:1.8px solid var(--ink)!important;border-left:8px solid var(--subject)!important;border-radius:15px!important;background:#fff!important;box-shadow:3px 4px 0 rgba(20,33,59,.14)!important;transform:rotate(var(--canvas-tilt))}.canvas-lane .task:hover{z-index:3;transform:rotate(0) translateY(-2px);box-shadow:5px 7px 0 color-mix(in srgb,var(--subject) 62%,white)!important}.canvas-lane .task>input{width:24px;height:24px}.canvas-lane .task-name{font-size:.86rem}.canvas-lane .task-meta{margin-top:5px;color:var(--muted);font-family:Georgia,serif;font-size:.65rem;line-height:1.4}.canvas-lane .tag{grid-column:2;justify-self:start}.canvas-lane .start-study-session{grid-column:1/-1;width:100%;min-height:37px;margin-top:5px;border:1.5px solid var(--ink);border-radius:9px;background:var(--ink);color:#fff;font-weight:850}.canvas-empty-lane{padding:18px;border:1.5px dashed #8795ad;border-radius:13px;background:rgba(255,255,255,.5);color:var(--muted);text-align:center}.canvas-board-note{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:11px;padding:15px 18px;border-top:2px solid var(--ink);background:#fff}.canvas-board-note>span{color:var(--canvas-coral);font-size:1.5rem;font-weight:900}.canvas-board-note>p{margin:0;color:var(--muted);font-size:.72rem}.canvas-board-note>p b{color:var(--ink)}.canvas-board-note .notice{grid-column:1/-1;margin:6px 0 0}
.canvas-side-stack{display:grid;gap:18px}.canvas-rhythm-card,.canvas-next-card,.canvas-note-card{border:2px solid var(--ink);border-radius:21px;background:#fff;box-shadow:6px 6px 0 rgba(20,33,59,.16)}.canvas-rhythm-card{position:relative;padding:25px 21px 20px;background:var(--canvas-yellow);transform:rotate(1deg)}.canvas-rhythm-card header{display:flex;align-items:end;gap:10px}.canvas-rhythm-card header>span{font-size:3.2rem;font-weight:950;line-height:.9;letter-spacing:-.09em}.canvas-rhythm-card header small{padding-bottom:3px;font-family:"Geist Mono",monospace;font-size:.53rem}.canvas-rhythm-track{display:flex;gap:5px;margin:22px 0 15px}.canvas-rhythm-track i{flex:1;height:35px;border:1.5px solid var(--ink);border-radius:8px 8px 3px 3px;background:#fff}.canvas-rhythm-track i:nth-child(2),.canvas-rhythm-track i:nth-child(3){height:52px;margin-top:-17px;background:var(--canvas-coral)}.canvas-rhythm-track i:nth-child(4){background:var(--canvas-mint)}.canvas-rhythm-card>p{min-height:49px;margin:0;font-family:Georgia,serif;font-size:.76rem;line-height:1.4}.canvas-rhythm-card>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px;padding-top:13px;border-top:1.5px solid var(--ink);font-size:.58rem}.canvas-rhythm-card>div:last-child b{display:block;font-family:"Geist Mono",monospace}.canvas-next-card{position:relative;overflow:hidden;padding:22px}.canvas-next-card::after{content:"";position:absolute;right:-28px;top:-28px;width:95px;height:95px;border:18px solid #edf1ff;border-radius:50%}.canvas-subject-stamp{position:relative;z-index:1;display:inline-grid;place-items:center;min-width:50px;height:28px;margin:4px 0 11px;padding:0 8px;border:1.5px solid var(--ink);border-radius:8px;background:#e9e4ff;color:#5633db;font-family:"Geist Mono",monospace;font-size:.56rem;font-weight:900}.canvas-next-card h2{position:relative;z-index:1;margin:0;font-size:1.5rem;line-height:1.05;letter-spacing:-.05em}.canvas-next-card>p:not(.canvas-view-kicker){color:var(--muted);font-family:Georgia,serif;font-size:.75rem;line-height:1.5}.canvas-next-card>button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:45px;padding:0 14px;border:1.5px solid var(--ink);border-radius:11px;background:var(--blue);color:#fff;font-weight:900}.canvas-note-card{display:grid;grid-template-columns:auto 1fr;gap:13px;padding:17px;background:#e5f7ef;transform:rotate(-.65deg)}.canvas-note-card>span{display:grid;place-items:center;width:32px;height:32px;border:1.5px solid var(--ink);border-radius:50%;background:var(--canvas-mint)}.canvas-note-card p{margin:4px 0 0;color:#405f55;font-family:Georgia,serif;font-size:.67rem;line-height:1.4}

/* Exact interactive Canvas composition around the existing planner controls. */
.canvas-control-strip{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:20px 0 18px!important;padding:10px 12px!important;border:2px solid var(--ink)!important;border-radius:18px!important;background:#fff!important;box-shadow:6px 6px 0 rgba(20,33,59,.12)!important}.canvas-control-strip .global-filter-heading{display:block;margin:0;padding:0;border:0}.canvas-control-strip .global-filter-heading .eyebrow{margin:0;color:var(--muted);font-size:.61rem}.canvas-control-strip .global-filter-chips{display:flex;flex-wrap:wrap;gap:7px}.canvas-control-strip .filter-chip{min-height:36px;padding:0 11px!important;font-size:.63rem;font-weight:850}.canvas-control-strip .filter-chip:has(input:checked){background:#eef2ff!important;box-shadow:inset 0 0 0 1.5px var(--blue)}.canvas-energy-control{display:flex;align-items:center;gap:2px;padding:3px;border:1.5px solid var(--ink);border-radius:12px;background:var(--paper)}.canvas-energy-control p{margin:0 9px 0 5px;color:var(--muted);font-family:"Geist Mono",monospace;font-size:.54rem;font-weight:900;letter-spacing:.04em}.canvas-energy-control button{min-height:31px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:.57rem;font-weight:850;text-transform:capitalize}.canvas-energy-control button.active{background:var(--canvas-yellow);color:var(--ink);box-shadow:inset 0 0 0 1px rgba(20,33,59,.18)}
.canvas-study-card{position:relative;padding:13px;border:1.8px solid var(--ink);border-left:8px solid var(--canvas-card-colour);border-radius:15px;background:#fff;box-shadow:3px 4px 0 rgba(20,33,59,.14);cursor:pointer;transform:rotate(var(--canvas-tilt));transition:transform .18s,box-shadow .18s}.canvas-study-card:hover,.canvas-study-card.selected,.canvas-study-card:focus-within{z-index:3;transform:rotate(0) translateY(-2px);box-shadow:5px 7px 0 color-mix(in srgb,var(--canvas-card-colour) 52%,var(--ink))}.canvas-study-card.done{background:#f1f3f7}.canvas-study-card.done .task-name{text-decoration:line-through}.canvas-card-top{display:flex;align-items:center;gap:7px;padding-right:31px}.canvas-card-top>span{display:flex;align-items:center;gap:5px;color:var(--ink);font-family:"Geist Mono",monospace;font-size:.72rem;font-weight:900}.canvas-card-top>span::before{content:"";width:8px;height:8px;border:1px solid var(--ink);border-radius:50%;background:var(--canvas-card-colour)}.canvas-card-top>small{padding:3px 6px;border-radius:999px;background:#eee9ff;color:#4d31bd;font-family:"Geist Mono",monospace;font-size:.46rem;font-weight:900}.canvas-card-controls-toggle{min-height:28px;margin-left:auto;margin-right:25px;padding:0 7px;border:1px solid var(--ink);border-radius:7px;background:#fff;color:var(--ink);font-size:.5rem;font-weight:850}.canvas-card-controls-toggle[aria-expanded="true"]{background:var(--canvas-yellow)}.canvas-lane .task.canvas-task-label{display:block!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important;opacity:1!important}.canvas-task-label>input{position:absolute;z-index:2;right:12px;top:12px;width:24px!important;height:24px!important;margin:0;accent-color:var(--canvas-mint)}.canvas-task-label>span{display:block!important}.canvas-task-label .task-name{display:block;margin:11px 0 5px;font-size:.88rem!important;line-height:1.24;letter-spacing:-.025em}.canvas-task-label .task-meta,.canvas-task-label>.tag,.canvas-task-label>.start-study-session{display:none!important}.canvas-card-reason{margin:0!important;color:var(--muted)!important;font-family:Georgia,serif!important;font-size:.64rem!important;line-height:1.4!important}.canvas-card-tools{display:none;grid-template-columns:1fr auto 1fr;gap:5px;margin-top:12px;padding-top:10px;border-top:1px dashed #aeb8cb}.canvas-study-card.selected .canvas-card-tools,.canvas-study-card:focus-within .canvas-card-tools{display:grid}.canvas-card-tools button{min-height:31px;padding:0 7px;border:1.3px solid var(--ink);border-radius:8px;background:#fff;color:var(--ink);font-size:.55rem;font-weight:850}.canvas-card-tools [data-canvas-focus]{background:var(--ink);color:#fff}.canvas-card-tools button:disabled{opacity:.34;cursor:not-allowed}.canvas-board-note{grid-template-columns:auto 1fr auto}.canvas-board-note>button{min-height:38px;padding:0 13px;border:1.5px solid var(--ink);border-radius:10px;background:var(--canvas-yellow);color:var(--ink);font-size:.63rem;font-weight:900}.canvas-board-note>button:disabled{background:#edf0f5;color:#56627a;box-shadow:none}.canvas-next-facts{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0}.canvas-next-facts span{padding:5px 7px;border:1px solid #bdc7d9;border-radius:7px;background:#f6f7fb;font-size:.54rem;font-weight:850}.canvas-next-card>button:disabled{opacity:.5}.canvas-rhythm-stats{display:grid!important}.canvas-original-heading+.notice,.canvas-original-heading+.notice+.notice{margin-bottom:18px}

/* Dynamic feature surfaces, kept on their original functional hooks. */
.week-heading,.paper-heading,.question-heading,.mistake-heading,.readiness-heading,.mastery-heading,.calendar-viewbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.week-metrics,.paper-metrics,.mistake-metrics,.readiness-summary{gap:14px}.week-metrics article,.paper-metrics article,.mistake-metrics article,.readiness-summary article{min-height:115px;padding:20px;border:2px solid var(--ink);border-radius:18px;background:#fff;box-shadow:5px 5px 0 rgba(20,33,59,.13)}.week-metrics article:last-child,.paper-metrics article:first-child,.readiness-summary article:first-child{background:var(--canvas-yellow)}
.week-layout,.paper-layout,.question-layout,.readiness-layout,.gradepath-layout,.coach-shell,.edit-grid{gap:18px}.week-schedule,.week-side,.paper-form-panel,.paper-history,.question-form-panel,.question-history,.readiness-panel,.mastery-card,.coach-shell>.panel,.coach-result,.edit-grid>.panel,.availability-panel,.vision-upload-panel,.gradepath-panel,.pending-plan-update{border:2px solid var(--ink)!important;border-radius:22px!important;background:var(--card)!important;box-shadow:6px 6px 0 rgba(20,33,59,.14)!important}.week-day,.paper-table,.question-list>article,.mistake-card,.readiness-card,.mastery-topic,.approval-row,.availability-row,.topic-row,.calendar-viewbar{border:1.5px solid var(--ink)!important;border-radius:15px!important;background:#fff!important}.week-day:nth-child(odd),.mastery-topic:nth-child(odd){background:#fff8d9!important}.paper-form-panel,.question-form-panel{background:#eef2ff!important}.vision-upload-panel{background:#e7f7ef!important}.coach-shell>.panel{background:#fff8d9!important}.coach-result,.pending-plan-update{background:#eef2ff!important}.mistake-card{border-left:8px solid var(--subject,var(--canvas-coral))!important}.readiness-card{border-top:8px solid var(--canvas-mint)!important}.mastery-card{border-top:10px solid var(--subject,var(--purple))!important}.mastery-bar i,.readiness-bar i,.gradepath-bar i{background:var(--canvas-mint)!important}
.paper-heading .primary,.question-heading .primary,.mistake-heading .primary,.readiness-heading .primary,.mastery-heading .primary{flex:none}.paper-score,.readiness-score,.gradepath-score{font-family:"Geist Mono",monospace}.paper-table,.paper-history,.question-history{overflow:hidden}.paper-table th,.paper-table td{border-color:#aeb9cc}.paper-files,.question-attempt-meta,.mistake-meta,.readiness-breakdown{color:var(--muted);font-family:Georgia,serif}.coach-shell{grid-template-columns:minmax(320px,.85fr) minmax(480px,1.15fr)}.coach-shell h2,.coach-result h3{letter-spacing:-.05em}.coach-shell .panel>p:not(.eyebrow),.coach-result>p{font-family:Georgia,serif}.coach-shell .panel,.coach-result{padding:25px!important}.coach-result::before{content:"NOTHING MOVED YET";float:right;margin-top:-38px;padding:5px 14px;background:var(--canvas-yellow);font-family:"Geist Mono",monospace;font-size:.5rem;font-weight:900;letter-spacing:.08em;transform:rotate(2deg)}
.form-grid{gap:14px}.field{font-size:.76rem}.field>small{color:var(--muted);font-family:Georgia,serif}.availability-day-head{border-bottom:1px dashed #9ba8be}.availability-day{font-family:"Geist Mono",monospace}.danger-zone{background:var(--red2)!important}.education-stage-card,.wizard-preference label,.distribution-picker label{border:1.5px solid var(--ink)!important;border-radius:14px!important;background:#fff!important}.education-stage-card:has(input:checked),.wizard-preference label:has(input:checked),.distribution-picker label:has(input:checked){background:var(--canvas-yellow)!important;box-shadow:4px 4px 0 var(--ink)}

/* Timetable: the only feature allowed to scroll horizontally. */
.weekly-timetable-scroll{border:2px solid var(--ink)!important;border-radius:22px!important;background:#fff!important;box-shadow:7px 7px 0 rgba(20,33,59,.14)!important;scrollbar-color:var(--ink) transparent}.weekly-timetable-day-head,.weekly-timetable-corner{background:var(--paper)!important;border-color:var(--ink)!important}.weekly-timetable-day.is-today,.weekly-timetable-day-head.is-today{background:#fff3c7!important}.weekly-timetable-axis span{font-family:"Geist Mono",monospace!important;color:#40506c!important}.weekly-timetable-hour-line{border-color:#c6d0df!important}.weekly-timetable-session,#calendar .calendar-task{border:1.5px solid var(--ink)!important;border-left:7px solid var(--subject,#6e4df6)!important;border-radius:14px!important;background:#f1edff!important;box-shadow:3px 4px 0 rgba(20,33,59,.12)!important}.weekly-timetable-session:hover,#calendar .calendar-task:hover{transform:translateY(-1px);box-shadow:5px 6px 0 color-mix(in srgb,var(--subject,#6e4df6) 35%,white)!important}.timetable-session-toggle{position:absolute;z-index:5;top:5px;right:5px;display:grid;place-items:center;width:27px;height:27px;padding:0;border:1px solid var(--ink);border-radius:8px;background:#fff;color:var(--ink);font-size:.72rem;font-weight:900;line-height:1;opacity:.15}.weekly-timetable-session:hover .timetable-session-toggle,.weekly-timetable-session:focus-within .timetable-session-toggle,.weekly-timetable-session.controls-open .timetable-session-toggle{opacity:1}.calendar-time-controls,.session-menu{z-index:25!important;border:2px solid var(--ink)!important;border-radius:16px!important;background:var(--paper)!important;box-shadow:7px 7px 0 var(--ink)!important}.weekly-timetable-empty{color:#56627a!important}

/* One accessible modal system over all legacy feature-specific declarations. */
dialog[class]{max-width:min(760px,calc(100vw - 28px))!important;max-height:calc(100dvh - 28px)!important;overflow:auto!important;overscroll-behavior:contain!important;touch-action:pan-y!important;border:3px solid var(--ink)!important;border-radius:26px!important;background:var(--paper)!important;box-shadow:13px 13px 0 var(--ink)!important;color:var(--ink)!important}dialog[class]::backdrop{background:rgba(20,33,59,.62)!important;backdrop-filter:blur(8px)!important}dialog.planner-approval-dialog{width:min(1040px,calc(100vw - 28px))!important;max-width:min(1040px,calc(100vw - 28px))!important}dialog.gradepath-dialog{width:min(1100px,calc(100vw - 28px))!important;max-width:min(1100px,calc(100vw - 28px))!important}dialog.recommendation-dialog{width:min(900px,calc(100vw - 28px))!important;max-width:min(900px,calc(100vw - 28px))!important}.study-session-dialog,.tutorial-dialog,.learning-check-dialog,.account-settings-dialog,.password-recovery-dialog{padding:clamp(24px,4vw,44px)!important}.study-session-dialog .timer{display:grid;place-items:center;width:min(350px,100%);aspect-ratio:2/1;margin:22px auto;border:2px solid var(--ink);border-radius:50%;background:#fff;box-shadow:inset 0 0 0 11px #edf1ff,5px 6px 0 var(--blue);font-size:clamp(2.8rem,8vw,4.8rem)}.dialog-close{position:sticky;float:right;top:0;z-index:2}.tutorial-tip,.session-goal{border:1.5px solid var(--ink)!important;border-radius:14px!important;background:#e7f7ef!important}.account-settings-dialog{width:min(620px,calc(100vw - 28px))}.account-danger{border:2px solid var(--ink);border-radius:16px;background:var(--red2)}
body.prepsesh-modal-open,html.guided-tour-open,body.guided-tour-open{touch-action:auto!important}.guided-tour{max-height:calc(100dvh - 2rem);overflow:auto;touch-action:pan-y}.feedback-rating{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:4px!important}.feedback-rating input:focus-visible+span,.feedback-tags input:focus-visible+span,.distribution-picker input:focus-visible+span,.wizard-preference label:focus-within,.education-stage-cards label:focus-within,.wizard-file-drop:focus-within{outline:3px solid var(--ink)!important;outline-offset:3px;box-shadow:0 0 0 6px var(--canvas-yellow)!important}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.prepsesh-toast-region{right:max(18px,env(safe-area-inset-right))!important;bottom:max(18px,env(safe-area-inset-bottom))!important}.toast,.prepsesh-toast,.calendar-action-toast{border:2px solid var(--ink)!important;border-radius:13px!important;background:var(--ink)!important;color:#fff!important;box-shadow:6px 6px 0 var(--canvas-yellow)!important}.prepsesh-toast p,.prepsesh-toast button{color:#fff!important}.calendar-action-toast{bottom:max(24px,env(safe-area-inset-bottom))!important}
.mistake-cycle span{color:#56627a!important}.mistake-cycle span.done,.mistake-cycle span.active{color:var(--ink)!important}.task.done,.calendar-task.done,.month-day.past,.day-card.past,.mistake-card.fixed{opacity:1!important}.month-day.past,.day-card.past{background:#f1f3f7!important}.mistake-card.new .mistake-status,.readiness-mistake-impact{color:var(--red)!important}
.coach-result::before{content:none!important}

@keyframes canvas-rise{from{opacity:0;transform:translateY(8px)}}
@media(max-width:1160px){.canvas-today-workspace{grid-template-columns:1fr}.canvas-side-stack{grid-template-columns:repeat(3,1fr)}.canvas-rhythm-card,.canvas-note-card{transform:none}}
@media(max-width:1100px){.coach-shell{grid-template-columns:1fr}.canvas-welcome-hero{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:900px){.canvas-welcome-nav{grid-template-columns:1fr auto}.canvas-welcome-links{display:none}.canvas-welcome-hero{grid-template-columns:1fr}.canvas-welcome-board{width:min(610px,100%);margin:auto}.canvas-welcome-how>div{grid-template-columns:1fr}.canvas-welcome-features{grid-template-columns:1fr}.canvas-appbar{grid-template-columns:1fr auto}.canvas-appbar>nav{display:none}.hero{grid-template-columns:1fr;gap:30px}.hero-copy{justify-self:start}.canvas-lanes{grid-template-columns:1fr}.canvas-lane{min-height:0;border-right:0;border-bottom:1.5px dashed #9aa8c1}.canvas-lane:last-child{border-bottom:0}.canvas-side-stack{grid-template-columns:1fr 1fr}.canvas-note-card{grid-column:1/-1}.week-heading,.paper-heading,.question-heading,.mistake-heading,.readiness-heading,.mastery-heading{align-items:flex-start;flex-direction:column}.edit-grid{grid-template-columns:1fr!important}}
@media(max-width:650px){.canvas-welcome-nav{padding:10px 14px}.canvas-welcome-actions .quiet{display:none}.canvas-welcome-main{width:100%}.canvas-welcome-hero{width:calc(100% - 24px);padding:45px 0}.canvas-welcome-copy h1{font-size:3.7rem}.canvas-welcome-buttons{flex-direction:column}.canvas-welcome-sticker{right:-7px;width:72px;height:72px}.canvas-welcome-how,.canvas-welcome-features,.canvas-welcome-cta,.canvas-welcome-faq{width:calc(100% - 24px)}.canvas-welcome-features>div{grid-template-columns:1fr}.canvas-welcome-cta{align-items:stretch;flex-direction:column}.canvas-welcome-footer{grid-template-columns:1fr}.canvas-welcome-footer>span{display:none}.canvas-appbar{min-height:65px;padding:10px 14px}.canvas-date-jump{display:none}.hero{min-height:330px;padding:45px 14px}.hero h1{font-size:3.5rem}.hero-actions{flex-wrap:wrap}.hero-copy{font-size:1rem}#app>main{width:calc(100% - 24px)}.tabs{top:65px}.stats{grid-template-columns:1fr 1fr}.canvas-control-strip{grid-template-columns:1fr!important;align-items:stretch}.canvas-control-strip .global-filter-chips{min-width:0}.canvas-energy-control{justify-content:space-between;width:100%;overflow:hidden}.canvas-energy-control p{margin-right:auto}.canvas-energy-control button{padding-inline:8px}.canvas-side-stack{grid-template-columns:1fr}.canvas-note-card{grid-column:auto}.view-title{font-size:2.8rem}.calendar-time-controls{position:static!important;width:100%!important;margin-top:8px!important}.weekly-timetable-session.controls-open{height:auto!important;min-height:145px!important}.canvas-lane .task{transform:none}.canvas-board-head{align-items:flex-start;flex-direction:column}.canvas-board-note{grid-template-columns:auto 1fr}.canvas-board-note>button{grid-column:1/-1;width:100%}.canvas-welcome-stages article:nth-child(2),.canvas-welcome-stages article:nth-child(3){margin-left:0}}
@media(pointer:coarse){.timetable-session-toggle{opacity:1}}
@media(max-width:390px){.stats{grid-template-columns:1fr}.canvas-welcome-copy h1,.hero h1{font-size:3rem}.canvas-completion{display:none}.feedback-rating{grid-template-columns:repeat(3,minmax(0,1fr))!important;flex-wrap:wrap}}
@media(forced-colors:active){*{box-shadow:none!important}.landing-brand>span,.brand-mark,.product-logo{border:2px solid CanvasText!important}.canvas-view-kicker::before{forced-color-adjust:none}}
@media(max-width:650px){.hero{min-height:285px;padding:32px 14px}}
