:root{--ink:#14151a;--ink-2:#474a55;--ink-3:#767a86;--paper:#fff;--canvas:#f6f7fa;--line:#e6e7ee;--line-soft:#f0f1f6;--brand:#5b5fef;--brand-strong:#4b45d6;--brand-soft:#eef0fe;--accent:var(--brand);--accent-soft:var(--brand-soft);--grad:linear-gradient(135deg, #6d5ef6 0%, #5b5fef 48%, #7c4dff 100%);--grad-rail:linear-gradient(185deg, #211d47 0%, #17162c 100%);--error:#c02636;--error-soft:#fdecec;--shadow-sm:0 1px 2px #14151a0a, 0 1px 3px #14151a0f;--shadow-md:0 18px 40px -18px #2d28783d, 0 4px 12px -4px #14151a14;--font-ui:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--font-document:Georgia, "Times New Roman", serif;--rail:15rem;--ease:cubic-bezier(.2, 0, 0, 1)}*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}.visually-hidden{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.shell{min-height:100vh}.rail{width:var(--rail);background:var(--grad-rail);color:#fff;flex-direction:column;gap:2.5rem;padding:2rem 1.25rem;display:flex;position:fixed;inset:0 auto 0 0}.rail-brand{align-items:center;gap:.625rem;display:flex}.rail-mark{background:var(--grad);color:#fff;width:1.875rem;height:1.875rem;font-family:var(--font-document);border-radius:9px;flex:none;justify-content:center;align-items:center;font-size:1.0625rem;font-weight:700;display:inline-flex;box-shadow:0 4px 12px -4px #5b5fef8c}.rail-name{font-family:var(--font-document);letter-spacing:-.015em;font-size:1.375rem;font-weight:700}.rail-nav{flex-direction:column;gap:.125rem;display:flex}.rail-link{color:#ffffff9e;transition:color .18s var(--ease), background-color .18s var(--ease);border-radius:8px;padding:.5rem .75rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:block;position:relative}.rail-link:hover{color:#fff;background:#ffffff12}.rail-link.active{color:#fff;background:var(--brand)}.rail-link.is-locked{color:#ffffff47;cursor:default}.rail-link.is-locked:hover{color:#ffffff47;background:0 0}.rail-logout{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;margin-top:auto}.rail-foot{letter-spacing:.08em;text-transform:uppercase;color:#fff6;margin:auto 0 0;font-size:.75rem}.content{margin-left:var(--rail);padding:3.5rem 2.5rem 5rem}.page{max-width:52rem;margin:0 auto}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .75rem;font-size:.6875rem;font-weight:700}.page-head h1{font-family:var(--font-document);letter-spacing:-.02em;max-width:22ch;margin:0;font-size:2.25rem;font-weight:700;line-height:1.15}.lede{max-width:56ch;color:var(--ink-2);margin:.875rem 0 0;font-size:1.0625rem}.page-head .button{margin-top:1.75rem}.page-head-note{color:var(--ink-3);margin:.75rem 0 0;font-size:.875rem}.button{font:inherit;cursor:pointer;transition:transform .15s var(--ease), background-color .18s var(--ease), box-shadow .18s var(--ease);border:0;border-radius:8px;padding:.6875rem 1.25rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-block}.button-primary{background:var(--grad);color:#fff;box-shadow:0 6px 18px -6px #5b5fef80}.button-primary:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.button-primary:active{transform:translateY(0)}.plan-form button,.deck-actions-row button,.deck-refine button,.deck-header button,.deck-nav button,.exercise-form button,.plan-download-button{font:inherit;color:#fff;background:var(--brand);cursor:pointer;transition:opacity .18s var(--ease), background-color .18s var(--ease);border:0;border-radius:9px;padding:.5625rem 1rem;font-size:.875rem;font-weight:600}.plan-form button:hover:enabled,.deck-actions-row button:hover:enabled,.deck-refine button:hover:enabled,.deck-header button:hover:enabled,.deck-nav button:hover:enabled,.exercise-form button:hover:enabled,.plan-download-button:hover:enabled{background:var(--brand-strong)}.plan-form button:disabled,.deck-actions-row button:disabled,.deck-refine button:disabled,.deck-header button:disabled,.deck-nav button:disabled,.exercise-form button:disabled,.plan-download-button:disabled{opacity:.35;cursor:default}input{font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);transition:border-color .18s var(--ease), box-shadow .18s var(--ease);border-radius:8px;padding:.5625rem .75rem}input:focus-visible{border-color:var(--ink);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.plan-form{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;grid-template-columns:2fr 1fr 1fr;gap:1.125rem;padding:1.75rem;display:grid}.plan-form label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);flex-direction:column;gap:.4375rem;font-size:.75rem;font-weight:700;display:flex}.plan-form input{text-transform:none;letter-spacing:normal;font-weight:400}.plan-form button{grid-column:1/-1;justify-self:start;padding:.6875rem 1.25rem;font-size:.9375rem}.cards{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:box-shadow .2s var(--ease), transform .2s var(--ease);border-radius:14px;padding:1.5rem}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .875rem;font-size:.6875rem;font-weight:700}.card-value{font-family:var(--font-document);letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:700;line-height:1.3}.card-note{color:var(--ink-3);margin:.375rem 0 0;font-size:.875rem}.card-empty{color:var(--ink-3);margin:0;font-size:.9375rem}.card-link{color:var(--ink);border-bottom:2px solid var(--accent);transition:border-color .18s var(--ease);margin-top:1rem;padding-bottom:1px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-block}.card-link:hover{border-color:var(--ink)}.publish{margin-top:1rem}.publish-code{flex-wrap:wrap;align-items:center;gap:.625rem;margin-top:1rem;display:flex}.publish-code-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:.6875rem;font-weight:700}.publish-code-value{font-family:var(--font-document);letter-spacing:.14em;border:1px solid var(--accent);background:var(--accent-soft);color:var(--ink);cursor:pointer;border-radius:8px;padding:.25rem .75rem;font-size:1.125rem;font-weight:700}.publish-code-value:hover{border-color:var(--ink)}.publish-copied{color:var(--ink-3);font-size:.8125rem;font-weight:600}.panels{gap:1rem;display:grid}.panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:box-shadow .24s var(--ease), border-color .24s var(--ease);border-radius:14px;overflow:hidden}.panel.is-open{box-shadow:var(--shadow-md)}.panel-heading{margin:0;font-size:1rem}.panel-toggle{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;transition:background-color .18s var(--ease);background:0 0;border:0;align-items:center;gap:.875rem;padding:1.125rem 1.375rem;display:flex}.panel-toggle:hover{background:var(--canvas)}.panel-step{border:1px solid var(--line);background:var(--paper);width:1.625rem;height:1.625rem;color:var(--ink-3);transition:background-color .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.panel.is-open .panel-step{background:var(--brand);border-color:var(--brand);color:#fff}.panel-title{font-family:var(--font-document);letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.panel-summary{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-left:auto;font-size:.75rem;font-weight:600}.panel-chevron{border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);width:.5rem;height:.5rem;transition:transform .28s var(--ease);flex:none;margin-left:.25rem;transform:rotate(-45deg)}.panel.is-open .panel-chevron{transform:rotate(45deg)}.panel-body{transition:grid-template-rows .3s var(--ease);grid-template-rows:0fr;display:grid}.panel.is-open .panel-body{grid-template-rows:1fr}.panel-body-clip{min-height:0;overflow:hidden}.panel-content{border-top:1px solid var(--line-soft);margin-top:-1px;padding:.25rem 1.375rem 1.625rem}.hint{color:var(--ink-3);text-align:center;padding:2rem 0}.loading{color:var(--ink-3);justify-content:center;align-items:center;gap:.75rem;padding:2.5rem 0;display:flex}.loading p{margin:0}.spinner{border:3px solid var(--line);border-top-color:var(--ink);border-radius:50%;flex:none;width:1.25rem;height:1.25rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error{background:var(--error-soft);border-left:3px solid var(--error);border-radius:8px;margin-top:1.25rem;padding:.875rem 1rem}.plan{font-family:var(--font-document);overflow-wrap:break-word;padding-top:1rem}.plan-eyebrow{font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:0 0 .5rem;font-size:.6875rem;font-weight:700}.plan h2{letter-spacing:-.015em;margin:0;font-size:1.625rem;line-height:1.25}.plan-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.plan-download-actions{gap:.5rem;display:flex}.plan-download-button{font-family:var(--font-ui);white-space:nowrap;font-size:.8125rem}.plan-total{font-family:var(--font-ui);color:var(--ink-3);margin-top:.5rem;font-size:.8125rem;display:block}.plan-download-error{background:var(--error-soft);border-left:3px solid var(--error);font-family:var(--font-ui);border-radius:8px;margin-top:1rem;padding:.75rem .875rem}.plan-objectives,.plan-section{border-top:1px solid var(--line-soft);margin-top:1.5rem;padding-top:1.5rem}.plan-objectives h3,.plan-section h3{margin:0 0 .5rem;font-size:1.125rem}.plan-objectives ul{margin:0;padding-left:1.25rem}.plan-objectives li{margin-bottom:.375rem}.plan-objectives li::marker{color:var(--accent)}.plan-section header{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.duration{font-family:var(--font-ui);letter-spacing:.04em;color:var(--ink-2);background:var(--canvas);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:.125rem .625rem;font-size:.6875rem;font-weight:700}.plan-section p{margin:.5rem 0 0}.deck-controls{gap:1rem;padding-top:1rem;display:grid}.deck-actions-row{gap:.625rem;display:flex}.deck-refine{grid-template-columns:1fr auto;gap:.625rem;display:grid}.deck-section{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:1.25rem}.deck-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.deck-header h3{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:0;font-size:.75rem;font-weight:700}.deck-actions{align-items:center;gap:.75rem;display:flex}.deck-counter{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:.8125rem}.deck-slide{background:var(--ink);color:#fff;border-radius:10px;margin-top:1rem;padding:1.75rem}.deck-slide.presenting{border-radius:0;flex-direction:column;justify-content:center;height:100%;margin:0;padding:4rem;display:flex}.deck-slide h4{font-family:var(--font-document);letter-spacing:-.01em;border-bottom:2px solid var(--accent);margin:0 0 1rem;padding-bottom:.625rem;font-size:1.375rem;font-weight:700}.deck-slide.presenting h4{font-size:2.5rem}.deck-slide ul{color:#ffffffd1;margin:0;padding-left:1.25rem}.deck-slide li{margin-bottom:.5rem}.deck-slide li::marker{color:var(--accent)}.deck-slide.presenting li{margin-bottom:1rem;font-size:1.5rem}.deck-notes{background:var(--canvas);border:1px solid var(--line);color:var(--ink-2);border-radius:10px;margin-top:1rem;padding:.875rem 1rem;font-size:.9375rem}.deck-notes strong{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-size:.6875rem;font-weight:700}.deck-notes p{margin:.375rem 0 0}.deck-nav{justify-content:space-between;margin-top:1rem;display:flex}.exercise-controls{padding-top:1rem}.exercise-form fieldset{border:1px solid var(--line);background:var(--paper);border-radius:12px;margin:0;padding:1.5rem}.exercise-form fieldset:disabled{opacity:.6}.exercise-form legend{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:0 .5rem;font-size:.75rem;font-weight:700}.exercise-form .hint{text-align:left;color:var(--ink-3);margin:0 0 1.25rem;padding:0;font-size:.9rem}.chips{flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.chip{border:1px solid var(--line);background:var(--canvas);color:var(--ink-2);transition:border-color .18s var(--ease);border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .5rem .3rem .75rem;font-size:.875rem;display:inline-flex}.chip:hover{border-color:var(--ink-3)}.chip-remove{color:var(--ink-3);cursor:pointer;transition:background-color .18s var(--ease), color .18s var(--ease);background:0 0;border:0;border-radius:999px;padding:0 .15rem;font-size:1.1rem;line-height:1}.chip-remove:hover:enabled{background:var(--ink);color:#fff}.chip-add{align-items:flex-end;gap:.5rem;margin-bottom:1.25rem;display:flex}.chip-add label,.exercise-form .quantidade{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);flex-direction:column;gap:.4375rem;font-size:.75rem;font-weight:700;display:flex}.chip-add input{text-transform:none;letter-spacing:normal;min-width:18rem;font-weight:400}.exercise-form .quantidade{max-width:12rem;margin-bottom:1.25rem}.exercise-form .quantidade input{text-transform:none;letter-spacing:normal;font-weight:400}.exercise-form .chip-add button{background:var(--paper);color:var(--ink);border:1px solid var(--line);font-weight:500}.exercise-form .chip-add button:hover:enabled{background:var(--canvas);border-color:var(--ink-3)}.exercises{margin-top:1.75rem}.exercise-cards{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.exercise-card{border:1px solid var(--line);background:var(--paper);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:12px;padding:1.5rem}.exercise-card:hover{border-color:var(--ink-3);box-shadow:var(--shadow-sm)}.exercise-header{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.exercise-number{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-right:auto;font-size:.75rem;font-weight:700}.badge{border:1px solid var(--line);color:var(--ink-3);background:var(--paper);border-radius:999px;padding:.2rem .6rem;font-size:.75rem;font-weight:600}.badge-facil{background:var(--canvas)}.badge-medio{border-color:var(--accent);background:var(--accent-soft);color:var(--ink-2)}.badge-dificil{border-color:var(--ink);background:var(--ink);color:#fff}.exercise-statement{font-family:var(--font-document);margin:0 0 1.25rem;font-size:1.0625rem;line-height:1.55}.exercise-options{flex-direction:column;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.exercise-options li{align-items:baseline;gap:.65rem;display:flex}.option-letter{border:1px solid var(--line);height:1.5rem;color:var(--ink-3);border-radius:50%;flex:0 0 1.5rem;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.exercise-answer summary{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);transition:color .18s var(--ease);font-size:.8125rem;font-weight:700}.exercise-answer summary:hover{color:var(--ink)}.exercise-answer p{color:var(--ink-2);margin:.625rem 0 0;font-size:.9375rem}.exercise-answer p strong{color:var(--ink)}@media (width<=820px){.rail{flex-direction:row;align-items:center;gap:1.25rem;width:auto;padding:.875rem 1.25rem;position:static}.rail-nav{flex-direction:row;gap:.25rem;overflow-x:auto}.rail-foot{display:none}.content{margin-left:0;padding:2.5rem 1.25rem 4rem}.page-head h1{font-size:1.875rem}.plan-form,.deck-refine{grid-template-columns:1fr}.plan-header{flex-direction:column}.plan-download-actions{flex-wrap:wrap;width:100%}.chip-add{flex-direction:column;align-items:stretch}.chip-add input{min-width:0}}@keyframes rise{0%{opacity:0;transform:translateY(.5rem)}}.page-head,.cards>*,.panels>*,.attempt-cards>*,.score{animation:rise .42s var(--ease) backwards}.cards>:nth-child(2),.panels>:nth-child(2),.attempt-cards>:nth-child(2){animation-delay:50ms}.cards>:nth-child(3),.panels>:nth-child(3),.attempt-cards>:nth-child(3){animation-delay:.1s}.attempt-cards>:nth-child(n+4){animation-delay:.15s}.score{color:var(--ink-3);margin:0 0 1.5rem;font-size:.9375rem}.score strong{color:var(--ink);font-variant-numeric:tabular-nums}.attempt-cards{gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.attempt-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;padding:1.75rem}.attempt-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.875rem;display:flex}.verdict-tag{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.125rem .625rem;font-size:.6875rem;font-weight:700}.verdict-tag.verdict-ok{background:var(--ink);color:#fff}.verdict-tag.verdict-no{background:var(--error-soft);color:var(--error)}.attempt-options{border:0;gap:.5rem;margin:1.25rem 0 1.5rem;padding:0;display:grid}.attempt-option{border:1px solid var(--line);cursor:pointer;font-family:var(--font-document);transition:border-color .18s var(--ease), background-color .18s var(--ease);border-radius:10px;align-items:baseline;gap:.75rem;padding:.875rem 1rem;display:flex}.attempt-option:hover{border-color:var(--ink-3)}.attempt-options:disabled .attempt-option{cursor:default}.attempt-options:disabled .attempt-option:hover{border-color:var(--line)}.attempt-option input{accent-color:var(--ink);margin:0}.attempt-option.is-chosen{border-color:var(--accent);background:var(--accent-soft)}.attempt-option.is-correct{border-color:var(--ink);background:var(--ink);color:#fff}.attempt-option.is-correct .option-letter{color:#fff;background:#ffffff2e}.attempt-option.is-wrong{border-color:var(--error);background:var(--error-soft);color:var(--error)}.attempt-option.is-muted{color:var(--ink-3);opacity:.6}.verdict{border-left:3px solid var(--ink);padding-left:1rem}.verdict.verdict-no{border-left-color:var(--error)}.verdict-line{margin:0;font-weight:700}.verdict.verdict-no .verdict-line{color:var(--error)}.verdict-answer{font-family:var(--font-document);margin:.375rem 0 0}.verdict-explanation{color:var(--ink-2);font-family:var(--font-document);margin:.5rem 0 0}.finalize{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.75rem}.finalize-lede{color:var(--ink-2);font-family:var(--font-document);margin:0 0 1rem}.finalize-round{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:2rem}.finalize-round .page-head{margin-bottom:1.5rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/plus-jakarta-sans-latin.woff2)format("woff2")}:root{--ink:#131b2e;--ink-2:#464555;--ink-3:#625f73;--paper:#fff;--canvas:#faf8ff;--line:#dedbea;--line-soft:#eeebf5;--brand:#3525cd;--brand-strong:#2c1eac;--brand-soft:#f2f3ff;--grad:linear-gradient(120deg, #4f46e5, #3525cd);--font-ui:"Plus Jakarta Sans", "Inter", system-ui, sans-serif;--rail:18rem;--surface-raised:#eaedff}.skip-link{z-index:100;color:var(--brand);background:#fff;padding:.75rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.rail{background:var(--paper);color:var(--ink);border-right:1px solid var(--line-soft);z-index:30;gap:1.5rem;padding:1.5rem 1rem;overflow-y:auto}.rail-brand{color:var(--ink);padding:0 .5rem;text-decoration:none}.rail-name{font-family:var(--font-ui);font-size:1.25rem}.rail-name>span{color:var(--brand)}.teacher-space{background:var(--brand-soft);border-radius:12px;gap:.25rem;padding:.75rem;font-size:.8125rem;display:grid}.teacher-space span{color:var(--ink-2);font-size:.75rem}.rail-link{color:var(--ink-2);padding:.75rem}.rail-link:hover{background:var(--brand-soft);color:var(--brand)}.rail-link.active{background:var(--brand);color:#fff}.rail-logout{margin-top:auto}.rail-logout:disabled{cursor:wait}.topbar{z-index:20;margin-left:var(--rail);background:var(--paper);border-bottom:1px solid var(--line-soft);min-height:4rem;color:var(--ink-2);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 2rem;font-size:.875rem;display:flex;position:sticky;top:0}.content{min-width:0;padding:2rem 2rem 4rem}.page{max-width:72rem}.page-narrow{max-width:48rem}.page-head{margin-bottom:1.75rem}.page-head h1{font-family:var(--font-ui);max-width:32ch;font-size:clamp(1.75rem,2.5vw,2.5rem);line-height:1.25}.lede{font-size:1rem}.button{border-radius:10px;justify-content:center;align-items:center;gap:.5rem;min-height:44px;display:inline-flex}.button:disabled{opacity:.55;cursor:default}.button-secondary{background:var(--brand-soft);color:var(--brand);border:1px solid var(--line)}.prompt-card{border:1px solid var(--line);background:linear-gradient(120deg,#f2f3ff,#fff);border-radius:16px;grid-template-columns:1fr auto;align-items:start;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;display:grid}.prompt-card>.button{align-self:center}.prompt-field{min-width:0}.prompt-field label{margin-bottom:.625rem;font-size:.9375rem;font-weight:600;display:block}.prompt-field textarea{resize:vertical;width:100%;min-height:7rem;font:inherit;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:12px;padding:1rem;line-height:1.6;display:block}.prompt-field-compact textarea{min-height:5rem}.field-hint{color:var(--ink-2);margin:.625rem 0 0;font-size:.8125rem}.quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:2rem}.quick-actions .card{background:var(--brand-soft);box-shadow:none;padding:1.25rem}.quick-actions h2{margin:.75rem 0 .25rem;font-size:1rem}.quick-actions p{color:var(--ink-2);margin:0;font-size:.875rem}.action-symbol{width:2rem;height:2rem;color:var(--brand);background:#fff;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.section-link{color:var(--ink-2);margin-top:.75rem;font-size:.8125rem;display:block}.dashboard-materials{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;display:grid}.material-section{border:1px solid var(--line-soft);background:var(--paper);border-radius:12px;min-width:0;padding:1.25rem}.section-heading{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:1rem;display:flex}.section-heading h2{margin:0;font-size:1rem}.section-heading a{color:var(--brand);white-space:nowrap;font-size:.8125rem}.material-list{margin:0;padding:0;list-style:none}.material-list li{border-bottom:1px solid var(--line-soft);overflow-wrap:anywhere;gap:.375rem;padding:.875rem 0;display:grid}.material-list li:last-child{border-bottom:none}.material-list a{color:var(--ink);font-size:.875rem;font-weight:600}.material-list span,.empty-state{color:var(--ink-2);font-size:.8125rem}.natural-plan-form>label{min-width:0}.natural-plan-form>label input{width:100%;min-width:0}.natural-plan-form{grid-template-columns:1fr 1fr}.natural-plan-form>.prompt-field,.natural-plan-form>.input-mode,.form-review-note,.natural-plan-form>.topic-field{grid-column:1/-1}.natural-plan-form .prompt-field label,.input-mode label{text-transform:none;letter-spacing:normal;color:var(--ink)}.input-mode{border:0;flex-wrap:wrap;gap:1rem;min-inline-size:0;margin:0 0 .5rem;padding:0;display:flex}.input-mode legend{margin-bottom:.75rem;font-size:.875rem;font-weight:600}.input-mode label{flex-direction:row;align-items:center;gap:.5rem;font-size:.875rem;font-weight:400;display:inline-flex}.input-mode input{accent-color:var(--brand)}.form-review-note{color:var(--ink-2);margin:0;font-size:.8125rem}.studio-page .plan{font-family:var(--font-ui);border:1px solid var(--line-soft);background:#fff;border-radius:16px;padding:1.75rem}.studio-page .plan h2{font-size:1.5rem}.studio-page .plan-section{background:var(--brand-soft);border-radius:12px;padding:1.25rem}.studio-page .plan-section h3{font-size:1rem}.studio-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.studio-toolbar p{color:var(--ink-2);margin:0;font-size:.875rem}.studio-actions{flex-wrap:wrap;gap:.5rem;display:flex}.studio-note{color:var(--ink-2);font-size:.875rem}@media (width<=1100px){.dashboard-materials,.prompt-card{grid-template-columns:1fr}.prompt-card>.button{justify-self:start}}@media (width<=820px){.rail{border-right:none;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:.75rem;width:auto;padding:1rem;position:static}.teacher-space{display:none}.rail-nav{flex-flow:wrap;gap:.25rem;overflow:visible}.rail-link{min-height:44px;font-size:.875rem}.rail-logout{align-self:flex-start;width:auto;margin-top:0}.topbar{margin-left:0;padding:.75rem 1rem}.content{margin-left:0;padding:1.5rem 1rem 3rem}.quick-actions{grid-template-columns:1fr}.natural-plan-form{grid-template-columns:1fr;padding:1.25rem}.prompt-card,.studio-page .plan{padding:1.25rem}.studio-actions{width:100%}}.slides-create-intro{background:var(--surface-raised);border-radius:16px;gap:1rem;margin-bottom:1.5rem;padding:1.25rem;display:flex}.slides-create-intro p{color:var(--ink-2);margin:.35rem 0 0}.slides-create-mark{color:var(--brand);flex:none;font-size:2rem}.slide-deck-form{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:16px;padding:clamp(1rem,3vw,2rem)}.slide-deck-form fieldset{border:0;gap:1.25rem;min-width:0;margin:0;padding:0;display:grid}.slide-deck-form fieldset>label{gap:.5rem;font-weight:600;display:grid}.slide-deck-form input:not([type=radio]),.slide-deck-form select{width:100%;min-width:0;min-height:48px;font:inherit;color:var(--ink);border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:.75rem}.slide-deck-form select{text-overflow:ellipsis}.slide-deck-form .mode-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;padding-bottom:.25rem;display:grid}.slide-deck-form .mode-choice label{border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:.6rem;padding:1rem;line-height:1.4;display:flex}.slide-deck-form .mode-choice label:has(input:checked){border-color:var(--brand);color:var(--brand);background:var(--brand-soft)}.slide-deck-form input[type=radio]{accent-color:var(--brand);flex:none;width:1.1rem;height:1.1rem}.slide-deck-form .button{justify-self:start;padding:.8rem 1.5rem}.slide-deck-form fieldset:disabled{opacity:.65}.presentation-preview{min-width:0;margin-top:1.5rem}.presentation-toolbar,.presentation-navigation{justify-content:space-between;align-items:center;gap:1rem;display:flex}.presentation-toolbar h4{overflow-wrap:anywhere;margin:.25rem 0 1rem;font-size:1.25rem}.presentation-toolbar .eyebrow{margin:0}.presentation-canvas{aspect-ratio:16/9;box-shadow:var(--shadow-md);background:#eef2f5;border-radius:12px;position:relative;overflow:hidden}.presentation-canvas img{object-fit:contain;width:100%;height:100%;display:block}.presentation-canvas:fullscreen{background:#111;border-radius:0;justify-content:center;align-items:center;display:flex}.presentation-canvas:fullscreen img{max-height:100vh}.presentation-exit{color:var(--ink);background:#fff;padding:.6rem;position:absolute;bottom:1rem;right:1rem}.presentation-navigation{margin:1.25rem 0}.presentation-notes{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:1.25rem}.presentation-notes summary{cursor:pointer;font-weight:600}.presentation-notes p{white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:0}.presentation-caption,.preview-status{color:var(--ink-2);font-size:.875rem}.preview-status{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}@media (width<=600px){.slide-deck-form .mode-choice{grid-template-columns:1fr}.slide-deck-form .button{width:100%}.presentation-toolbar{align-items:start}.presentation-navigation{gap:.5rem;font-size:.8125rem}.presentation-navigation .button{padding:.5rem}}.presentation-action-card{background:linear-gradient(160deg, var(--paper), var(--brand-soft));border-color:#cbc5fb}.fraction-action-preview{grid-template-columns:repeat(4,1fr);gap:3px;height:1rem;margin:.25rem 0 1rem;display:grid}.fraction-action-preview span{border:1px solid var(--brand);border-radius:3px}.fraction-action-preview span:nth-child(-n+3){background:var(--brand)}.skip-link:not(:focus){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;overflow:hidden;transform:none}
