:root{--font-body: "Hiragino Kaku Gothic ProN", "Avenir Next", "Trebuchet MS", sans-serif;--font-heading: "Avenir Next", "Hiragino Sans", "Trebuchet MS", sans-serif;--font-display: Georgia, "Times New Roman", serif;--bg: #eef3f1;--bg-secondary: #fbf7ef;--surface: rgba(255, 255, 255, .94);--panel: #f8f6f0;--border: rgba(30, 41, 59, .13);--input-border: rgba(30, 41, 59, .18);--text: #263445;--text-strong: #0f172a;--muted: #64748b;--brand: #2563eb;--brand-deep: #1d4ed8;--accent: #0f766e;--accent-soft: #ccfbf1;--brand-soft: #dbeafe;--brand-gradient: linear-gradient(135deg, #0f766e 0%, #2563eb 100%);--brand-gradient-reverse: linear-gradient(135deg, #2563eb 0%, #0891b2 100%);--color-writing: #c2410c;--color-writing-bg: #fff7ed;--color-review: #2563eb;--color-review-bg: #eff6ff;--color-classes: #0f766e;--color-classes-bg: #f0fdfa;--color-tools: #be123c;--color-tools-bg: #fff1f2;--color-reports: #4d7c0f;--color-reports-bg: #f7fee7;--success: #15803d;--success-bg: #f0fdf4;--warning: #b45309;--warning-bg: #fffbeb;--danger: #b42318;--danger-bg: #fff1f2;--ai: #7c3aed;--ai-bg: #f5f3ff;--ai-border: rgba(124, 58, 237, .24);--radius-xl: 16px;--radius-2xl: 22px;--paper: #fffdf8;--paper-soft: rgba(255, 253, 248, .92);--surface-tint: rgba(240, 253, 250, .58);--surface-blue-tint: rgba(239, 246, 255, .62);--shadow: 0 14px 38px rgba(15, 23, 42, .1);--soft-shadow: 0 12px 28px rgba(42, 34, 22, .07)}*{box-sizing:border-box}html,body{min-height:100%}#root{min-height:100dvh}body{margin:0;color:var(--text);font-family:var(--font-body);background:linear-gradient(90deg,rgba(15,23,42,.025) 1px,transparent 1px),linear-gradient(180deg,rgba(15,23,42,.018) 1px,transparent 1px),radial-gradient(circle at 12% -10%,rgba(255,247,237,.86),transparent 30rem),radial-gradient(circle at 88% 8%,rgba(240,253,250,.76),transparent 28rem),linear-gradient(180deg,var(--paper) 0%,var(--bg-secondary) 34%,var(--bg) 100%);background-size:28px 28px,28px 28px,auto,auto,auto;background-attachment:fixed}a{color:inherit}code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.92em;background:#14202b0f;border-radius:8px;padding:.15rem .4rem}h1,h2,h3{margin:0;color:var(--text-strong);font-family:var(--font-heading);line-height:1.1}h1{font-size:clamp(2rem,4.2vw,3.6rem);margin-bottom:.9rem}h2{font-size:clamp(1.35rem,2.2vw,2rem)}h3{font-size:1.12rem}p{margin:0}label{display:block;margin:1rem 0 .45rem;font-weight:700;color:var(--text-strong)}label.inline{display:inline-flex;align-items:center;gap:.7rem;margin:0}label.inline input{width:auto}input,select,textarea{width:100%;border:1px solid var(--input-border);border-radius:12px;padding:.95rem 1rem;background:#fffdf8e6;color:var(--text-strong);font:inherit;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}select{border-radius:12px}input:focus,select:focus,textarea:focus{outline:none;border-color:#2563eb7a;box-shadow:0 0 0 4px #2563eb21}textarea{min-height:150px;resize:vertical}button,.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:999px;border:1px solid rgba(37,99,235,.16);background:linear-gradient(180deg,#fffdf8f5,#eff6ffbd);color:var(--text-strong);cursor:pointer;font:inherit;font-weight:700;text-decoration:none;padding:.82rem 1.15rem;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}button:hover,.btn:hover{transform:translateY(-1px);background:#fffdf8fa;box-shadow:0 14px 32px #14202b1a}button:disabled,.btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}button:focus-visible,.btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}button:active:not(:disabled),.btn:active:not(:disabled){transform:scale(.97);box-shadow:none}button.primary,.btn.primary,button[type=submit]{color:#fff;border-color:transparent;background:var(--brand-gradient-reverse);box-shadow:0 12px 26px #2563eb29}button.primary:hover,.btn.primary:hover,button[type=submit]:hover{background:linear-gradient(135deg,var(--brand-deep),var(--accent))}button.danger{color:var(--danger);border-color:#b423182e;background:var(--danger-bg)}button.danger:hover{background:#b4231814}button.ai-action,.btn.ai-action{color:var(--ai);border-color:var(--ai-border);background:var(--ai-bg)}button.ai-action:hover,.btn.ai-action:hover{background:#ede9fe;box-shadow:0 14px 28px #7c3aed1f}.language-toggle{color:var(--brand-deep);border-color:#2563eb33;background:#eff6ff}.language-toggle:hover{background:#dbeafe}.page-shell{max-width:1180px;margin:0 auto;padding:1.8rem 1.1rem 3.8rem}.student-page-shell{max-width:min(1680px,100vw)}.site-footer{padding:0 1.1rem 1.6rem}.site-footer-inner{max-width:1180px;margin:0 auto;padding-top:.4rem;color:var(--muted);font-size:.9rem;text-align:center}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.3rem}.page-header.compact{align-items:flex-start}.page-header.compact h1{margin-bottom:.55rem;font-size:clamp(1.95rem,3.5vw,3.05rem)}.teacher-shell .page-header.compact h1{max-width:18ch}.teacher-shell .page-header.compact,.page-header.compact{margin-bottom:1rem}.page-copy{max-width:60ch;color:var(--muted);line-height:1.7;font-size:1.02rem}.eyebrow{margin-bottom:.7rem;color:var(--brand-deep);font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.muted{color:var(--muted)}.field-hint{margin-top:.5rem;color:var(--muted);font-size:.94rem}.status-message{margin-top:1rem;padding:.9rem 1rem;border-radius:16px;border:1px solid var(--border);background:#ffffffa6}.status-message.error{color:var(--danger);border-color:#b4231829;background:var(--danger-bg)}.status-message.success{color:var(--success);border-color:#15803d33;background:var(--success-bg)}.status-message.warning{color:var(--warning);border-color:#f59e0b3d;background:var(--warning-bg)}.compact-status{margin-top:.75rem;padding:.7rem .85rem;border-radius:12px;font-size:.9rem}.usage-message{color:var(--success);border-color:#15803d33;background:var(--success-bg)}.auth-note{margin-top:1rem;color:var(--muted);line-height:1.7}.auth-chip{display:inline-flex;align-items:center;min-height:48px;padding:.7rem 1rem;border-radius:999px;border:1px solid rgba(23,107,179,.16);background:#ffffffb8;color:var(--brand-deep);font-size:.92rem;font-weight:700}.usage-chip{display:inline-flex;align-items:center;min-height:48px;padding:.7rem 1rem;border-radius:999px;border:1px solid rgba(22,101,52,.18);background:#f0fdf4db;color:var(--success);font-size:.92rem;font-weight:800}.access-chip{display:inline-flex;align-items:center;min-height:48px;padding:.7rem 1rem;border-radius:999px;border:1px solid rgba(37,99,235,.18);background:#eff6ffe6;color:var(--brand-deep);font-size:.92rem;font-weight:850}.access-chip.paid{border-color:#c2410c38;background:var(--color-writing-bg);color:var(--color-writing)}.teacher-dashboard-header{position:relative;padding-top:1.45rem}.access-corner{position:absolute;top:0;right:0;display:inline-flex;align-items:center;min-height:28px;padding:.28rem .62rem;border:1px solid rgba(37,99,235,.16);border-top:0;border-right:0;border-radius:0 0 0 10px;background:#eff6ffb8;color:var(--brand-deep);font-size:.74rem;font-weight:750;letter-spacing:.04em;line-height:1;text-transform:uppercase}.access-corner.paid{border-color:#0f766e2e;background:#f0fdfacc;color:var(--accent)}.teacher-header-actions{display:grid;justify-items:end;gap:.55rem;min-width:min(100%,430px);padding-top:.1rem}.teacher-account-strip{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;color:var(--muted)}.teacher-header-actions .auth-chip{min-height:30px;max-width:min(100%,280px);padding:.12rem 0;border:0;border-radius:0;background:transparent;color:var(--muted);font-size:.85rem;font-weight:620;line-height:1.35;overflow-wrap:anywhere}.teacher-header-actions .auth-chip:before{content:"";flex:0 0 auto;width:7px;height:7px;margin-right:.48rem;border-radius:999px;background:var(--accent);opacity:.72}.teacher-header-actions .usage-chip{min-height:32px;padding:.34rem .62rem;border-color:#0f766e21;background:#f0fdfa8a;color:#167047;font-size:.84rem;font-weight:680}.teacher-header-nav{justify-content:flex-end;gap:.45rem}.teacher-header-nav .btn,.teacher-header-nav button{min-height:38px;padding:.5rem .78rem;border-color:#2563eb24;background:#fffdf8ad;color:var(--text-strong);font-size:.9rem;font-weight:660;box-shadow:0 8px 18px #1c4a760d}.field-hint-valid{color:var(--brand-deep);font-weight:700}.surface-card{border-radius:var(--radius-xl);border:1px solid rgba(30,41,59,.11);background:linear-gradient(180deg,#fffdf8f5,#ffffffe6);box-shadow:var(--soft-shadow)}.quickwrite-logo{display:inline-flex;align-items:center;gap:.52rem;color:inherit;text-decoration:none}.quickwrite-logo:hover{transform:none;box-shadow:none}.quickwrite-logo-icon{width:56px;height:56px;object-fit:contain;display:block}.quickwrite-logo-word{display:inline-flex;align-items:baseline;font-family:var(--font-heading);font-size:2rem;font-style:italic;font-weight:900;line-height:1;color:#2fb2f6}.quickwrite-logo-word strong{color:#ff5b14;font-weight:900}.quickwrite-logo-compact{gap:.42rem}.quickwrite-logo-compact .quickwrite-logo-icon{width:38px;height:38px}.quickwrite-logo-compact .quickwrite-logo-word{font-size:1.35rem}.workspace-logo{margin-bottom:.55rem}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:.7rem}.home-shell{padding-top:1rem}.home-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.home-brand .quickwrite-logo-icon{width:48px;height:48px}.home-brand .quickwrite-logo-word{font-size:1.85rem}.home-status-pill{display:inline-flex;align-items:center;min-height:34px;padding:.45rem .78rem;border-radius:999px;border:1px solid rgba(37,99,235,.14);background:#fffdf8d1;color:var(--muted);font-size:.84rem;font-weight:800}.hero-panel{position:relative;overflow:hidden;padding:clamp(1.35rem,3.2vw,2.05rem) clamp(1.25rem,4vw,2.6rem);border:1px solid rgba(15,118,110,.22);border-radius:18px;background:radial-gradient(circle at 88% 18%,rgba(255,255,255,.18),transparent 28%),var(--brand-gradient);box-shadow:0 18px 42px #0f172a26}.hero-panel h1,.hero-panel .eyebrow{color:#fffaf3}.hero-panel h1{max-width:18ch;margin-bottom:.55rem;font-size:clamp(2rem,4vw,3.7rem)}.hero-panel .page-copy{max-width:64ch;color:#f5f7fad4;line-height:1.55}.hero-copy{position:relative;z-index:1}.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin-top:.95rem}.role-grid-primary{margin-top:.8rem}.role-card{display:flex;flex-direction:column;gap:.55rem;min-height:156px;padding:1.1rem 1.2rem;border-radius:14px;border:1px solid rgba(30,41,59,.1);background:linear-gradient(180deg,#fffdf8f5,#f0fdfa6b);text-decoration:none;box-shadow:var(--soft-shadow);transition:transform .18s ease,border-color .18s ease,background .18s ease}.role-card:hover{transform:translateY(-3px)}.student-card:hover{border-color:#2563eb3d}.teacher-card:hover{border-color:#0f766e42}.role-card p{color:var(--muted);line-height:1.55;font-size:.95rem}.role-kicker{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--brand-deep);line-height:1}.role-action{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;margin-top:auto;padding:.55rem .8rem;border-radius:999px;border:1px solid rgba(37,99,235,.12);background:#eff6ffbd;font-size:.9rem;font-weight:800;color:var(--brand-deep)}.paid-access-box{display:flex;flex-direction:column;gap:.85rem;padding:1rem;border:1px solid rgba(15,118,110,.16);border-radius:14px;background:linear-gradient(180deg,#f0fdfabd,#fffdf8eb)}.paid-access-box strong{color:var(--accent)}.paid-access-box span,.paid-access-box p{color:var(--muted);line-height:1.55}.teacher-access-request-form{padding:1rem;border:1px solid rgba(37,99,235,.12);border-radius:14px;background:#fffdf8c7}.teacher-access-request-form.compact{padding:.95rem}.request-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.teacher-access-request-form label{margin-top:0}.teacher-access-request-form input{margin-top:.45rem}.teacher-access-gate-card{width:100%;max-width:1320px;padding:clamp(1.35rem,3vw,2rem)}.teacher-access-gate-card h1{max-width:12em;margin-bottom:.65rem;font-size:clamp(2.4rem,4.2vw,4.35rem);line-height:1.03}.access-gate-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:clamp(1.25rem,3vw,2.4rem);align-items:start;padding-bottom:1rem;border-bottom:1px solid var(--border)}.access-gate-account{justify-self:end;max-width:340px;padding:.75rem .9rem;border:1px solid rgba(37,99,235,.14);border-radius:12px;background:#eff6ffb8;color:var(--muted);font-size:.92rem;line-height:1.45}.access-gate-account strong{display:block;margin-top:.18rem;color:var(--text-strong);overflow-wrap:anywhere}.access-panel-head{display:grid;gap:.35rem}.access-panel-head h2{font-size:1.24rem}.access-panel-head p{color:var(--muted);line-height:1.55}.access-gate-layout{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(500px,1.1fr);gap:1rem;margin-top:1rem;align-items:start}.access-gate-panel{min-width:0}.request-access-panel{display:grid;gap:.85rem;padding:1rem;border:1px solid rgba(37,99,235,.12);border-radius:14px;background:#f0fdfa75}.request-access-panel .teacher-access-request-form{padding:0;border:none;background:transparent}.teacher-access-gate-card .teacher-access-request-form .button-row{margin-top:.15rem}.teacher-access-gate-card .teacher-access-request-form button[type=submit]{width:100%}.pricing-list{display:grid;gap:.55rem}.pricing-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,auto);gap:1rem;align-items:center;padding:.85rem 0;border-top:1px solid rgba(194,65,12,.14)}.pricing-row:first-child{border-top:none;padding-top:.1rem}.pricing-row-copy{display:grid;gap:.2rem;min-width:0}.pricing-row-copy span{color:var(--color-writing);font-size:.74rem;font-weight:850;letter-spacing:.1em;line-height:1.2;text-transform:uppercase}.pricing-row-copy h3{font-size:1.05rem}.pricing-row-copy p{color:var(--muted);font-size:.92rem;line-height:1.45}.pricing-row-action{display:grid;gap:.5rem;justify-items:end}.pricing-row-action strong{color:var(--text-strong);font-size:1.2rem;line-height:1;white-space:nowrap}.pricing-row-action small{margin-left:.18rem;color:var(--muted);font-size:.78rem;font-weight:800}.pricing-row-action button{min-width:148px;min-height:42px;padding:.62rem .95rem}.pricing-note{color:var(--muted);font-size:.9rem;line-height:1.5}.access-gate-footer{margin-top:1rem}.quick-start{margin-top:1.35rem;padding:1.5rem}.quick-start h3{margin-bottom:.9rem}.quick-start-list{margin:0;padding-left:1.2rem;color:var(--muted);line-height:1.75}.center-panel{min-height:calc(100vh - 170px);display:flex;align-items:center;justify-content:center}.auth-card,.submission-confirmation{max-width:660px;padding:clamp(1.7rem,4vw,2.6rem)}.teacher-gate-shell{max-width:1460px}.center-panel .teacher-access-gate-card{max-width:1320px}.submission-confirmation-wide{max-width:none;margin-bottom:1.25rem}.student-layout{display:grid;grid-template-columns:1fr;gap:1.25rem;width:100%}.classroom-layout{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:1.25rem;margin-bottom:1rem}.student-form-panel,.student-helper-panel,.classroom-create-panel,.classroom-list-panel,.feedback-tool-panel,.teacher-detail-panel,.teacher-list-panel,.export-layout{padding:1.45rem}.student-form-panel form{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(360px,1.28fr);gap:.9rem;align-items:start}.student-form-panel form>.form-step{margin:0}.student-form-panel form>.form-step:nth-of-type(3),.student-form-panel form>.button-row{grid-column:1 / -1}.student-form-panel form>.button-row{margin-top:.15rem}.form-step{--step-color: var(--color-review);--step-bg: var(--color-review-bg);margin:0 0 1rem;padding:1rem;border:1px solid rgba(30,41,59,.1);border-radius:13px 15px 12px 14px;background:linear-gradient(180deg,color-mix(in srgb,var(--step-bg) 42%,var(--paper)),#fffdf8f0);box-shadow:0 8px 18px #5b3d1c0d}.form-step:nth-of-type(2){--step-color: var(--color-classes);--step-bg: var(--color-classes-bg)}.form-step:nth-of-type(3){--step-color: var(--color-writing);--step-bg: var(--color-writing-bg)}.form-step:last-of-type{margin-bottom:0}.form-step legend{padding:0 .35rem;color:var(--text-strong);font-family:var(--font-heading);font-weight:680;letter-spacing:0}.form-step legend span{display:inline-flex;align-items:center;justify-content:center;margin-right:.45rem;padding:.2rem .46rem;border:1px solid color-mix(in srgb,var(--step-color) 16%,transparent);border-radius:999px;background:#fffdf8eb;color:var(--step-color);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.form-step label:first-of-type{margin-top:.35rem}.student-form-panel .form-step:nth-of-type(1),.student-form-panel .form-step:nth-of-type(2){padding:.82rem .9rem .9rem}.student-form-panel .form-step:nth-of-type(1) label,.student-form-panel .form-step:nth-of-type(2) label{margin-top:.25rem}.student-form-panel .form-step:nth-of-type(1) input,.student-form-panel .form-step:nth-of-type(2) input{min-height:46px;padding:.72rem .85rem}.student-form-panel .form-step:nth-of-type(1) .field-hint{margin-top:.45rem;font-size:.9rem;line-height:1.4}.student-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.student-info-grid label{margin-top:.25rem}.local-draft-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.85rem;padding:.85rem;border:1px solid rgba(15,118,110,.18);border-radius:12px;background:#f0fdfab8}.local-draft-panel strong{color:#0f766e}.local-draft-panel p{margin-top:.2rem;color:var(--muted);font-size:.92rem;line-height:1.55}.local-draft-panel button{flex-shrink:0}.student-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.15rem 0}.student-helper-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:.8rem 1.1rem;align-items:start}.student-helper-panel>.eyebrow,.student-helper-panel>h2,.student-helper-panel>.student-stats,.student-helper-panel>.normal-writing-goals-panel{grid-column:1 / -1}.student-helper-panel>.student-stats{margin:.45rem 0 .3rem}.student-helper-panel>.quick-start-list{grid-column:1;margin-top:.15rem}.student-helper-panel>.draft-note{grid-column:1;margin:.15rem 0 0}.student-helper-panel>.quick-prompt-mini-panel{grid-column:2;margin-top:0}.normal-writing-goals-panel{display:grid;gap:.65rem;margin:0 0 1rem;padding:.85rem;border:1px solid rgba(37,99,235,.16);border-radius:12px;background:linear-gradient(180deg,#eff6ff9e,#fffdf8e0)}.normal-writing-goals-panel strong{color:#1d4ed8}.normal-writing-goals-panel p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.5}.normal-writing-goal-menu{display:flex;flex-wrap:wrap;gap:.5rem}.stat-chip,.stat-card{display:flex;flex-direction:column;gap:.5rem}.stat-chip{padding:1rem;border-radius:18px;border:1px solid rgba(30,41,59,.1);background:#fffdf8c2}.stat-chip:nth-child(1),.stat-card:nth-child(1){border-color:#2563eb29;background:linear-gradient(180deg,#eff6ffbd,#fffdf8e6)}.stat-chip:nth-child(2),.stat-card:nth-child(2){border-color:#0f766e29;background:linear-gradient(180deg,#f0fdfac7,#fffdf8e6)}.stat-chip:nth-child(3),.stat-card:nth-child(3){border-color:#2563eb1f;background:linear-gradient(180deg,#eff6ff8a,#f0fdfa75)}.stat-chip span,.stat-card span{color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.stat-chip strong,.stat-card strong{color:var(--text-strong);font-size:1.32rem}.draft-note{margin-top:1rem;color:var(--muted);line-height:1.7}.student-history-panel{margin-top:1.25rem;padding:1.45rem}.portfolio-filter-row{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 1rem;padding:.55rem;border:1px solid var(--border);border-radius:999px;background:var(--panel)}.portfolio-filter-row button{min-height:42px;padding:.55rem .85rem}.quick-prompt-watch-note{margin:0 0 1rem;padding:.85rem 1rem;border-radius:14px;border:1px solid rgba(15,118,110,.16);background:linear-gradient(90deg,#f0fdfacc,#eff6ffb3);color:var(--accent);font-weight:800}.quick-prompt-banner{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0 0 1rem;padding:1.1rem 1.25rem;border-radius:var(--radius-xl);border:1px solid rgba(15,118,110,.18);background:linear-gradient(135deg,#f0fdfad6,#eff6ffeb);box-shadow:var(--soft-shadow)}.quick-prompt-banner.has-prompt{border-color:#2563eb3d;background:linear-gradient(135deg,#f0fdfae6,#eff6fff5)}.quick-prompt-banner .eyebrow{margin-bottom:.35rem}.quick-prompt-banner h2{margin-bottom:.3rem}.quick-prompt-mini-panel{display:grid;gap:.55rem;margin-top:1rem;padding:.9rem;border-radius:14px;border:1px solid rgba(15,118,110,.16);background:linear-gradient(180deg,#f0fdfac2,#fffdf8e6)}.quick-prompt-mini-panel strong{color:var(--accent)}.quick-prompt-mini-panel p{color:var(--muted);line-height:1.55}.quick-prompt-mini-panel button{justify-self:start;min-height:40px;padding:.56rem .85rem}.writing-task-picker,.writing-task-switcher,.writing-task-assignment-card,.writing-task-empty{margin-bottom:1rem}.writing-task-picker-list{display:grid;gap:.65rem}.writing-task-picker-list button{display:grid;gap:.25rem;justify-items:start;text-align:left}.writing-task-picker-list span{color:var(--muted);font-size:.86rem}.writing-task-switcher{display:grid;gap:.45rem}.writing-task-switcher label{margin:0}.writing-task-assignment-card{padding:1rem;border:1px solid rgba(15,118,110,.18);border-radius:14px;background:linear-gradient(180deg,#f0fdfac7,#fffdf8f2)}.editable-submission-note{display:inline-flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem;padding:.45rem .65rem;border-radius:999px;border:1px solid rgba(21,128,61,.18);background:var(--success-bg);color:var(--success);font-size:.86rem;font-weight:800}.writing-task-assignment-card h2{margin:.2rem 0 .35rem;font-size:1.35rem}.writing-task-assignment-card .quick-prompt-combined-text{margin-top:.75rem;color:var(--text-strong);line-height:1.7;white-space:pre-wrap}.modal-overlay.quick-prompt-overlay{align-items:center;overflow-y:auto;padding:.45rem}.modal-card.quick-prompt-modal{width:min(1500px,calc(100vw - .9rem));max-width:1500px;max-height:calc(100dvh - .9rem);margin:0 auto;overflow:auto;padding:.85rem}.quick-prompt-modal .panel-head{align-items:center;margin-bottom:.55rem;gap:.75rem}.quick-prompt-modal .panel-head h2{margin:.16rem 0 .04rem;font-size:clamp(1.35rem,2vw,1.95rem);line-height:1.08}.quick-prompt-modal .panel-head button{min-height:40px;padding:.5rem .9rem}.quick-prompt-modal-grid{display:grid;grid-template-columns:minmax(230px,.72fr) minmax(420px,1.45fr) minmax(210px,.62fr);gap:.7rem;align-items:start}.quick-prompt-left-column,.quick-prompt-compose-column,.quick-prompt-side-column{min-width:0}.quick-prompt-left-column,.quick-prompt-side-column{max-height:calc(100dvh - 6.3rem);overflow:auto}.quick-prompt-compose-column{display:grid;gap:.5rem}.quick-prompt-identity-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.7fr);gap:.55rem}.quick-prompt-identity-row label{margin:0;font-size:.86rem}.quick-prompt-identity-row input{margin-top:.28rem;min-height:40px;padding:.56rem .7rem;font-size:.94rem}.quick-prompt-side-column{display:grid;gap:.55rem;align-content:start}.quick-prompt-student-copy{display:grid;gap:.55rem;margin-bottom:0}.quick-prompt-student-copy>div{padding:.72rem .78rem;border-radius:12px;border:1px solid var(--border);background:var(--panel)}.quick-prompt-student-copy .eyebrow{margin-bottom:.38rem;font-size:.72rem}.quick-prompt-student-copy p:last-child{color:var(--text-strong);line-height:1.5;white-space:pre-wrap}.quick-prompt-live-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:0}.quick-prompt-side-column .quick-prompt-live-stats{grid-template-columns:1fr}.quick-prompt-live-stats .stat-chip{min-height:76px;padding:.7rem .78rem;border-radius:12px}.quick-prompt-live-stats .stat-chip strong{font-size:1.7rem}.quick-prompt-advice-tools{display:grid;gap:.55rem;margin:0;padding:.72rem;border-radius:12px;border:1px solid rgba(37,99,235,.16);background:#eff6ffb8}.quick-prompt-advice-tools .button-row{gap:.42rem}.quick-prompt-advice-tools .eyebrow{margin-bottom:0}.quick-prompt-advice-tools button{min-height:34px;padding:.42rem .62rem;font-size:.84rem}.quick-prompt-advice-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:280;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:1.2rem;background:#0f172a6b}.quick-prompt-advice-popup{position:relative;width:min(1180px,calc(100vw - 2rem));min-height:min(620px,calc(100dvh - 2.4rem));padding:clamp(1.2rem,3vw,2rem);border-radius:10px;background:#fff;color:#030712;box-shadow:0 24px 80px #0f172a47}.quick-prompt-advice-popup h2{margin:0 2.5rem .9rem;color:#030712;font-size:clamp(2rem,4.4vw,4rem);line-height:1.02;text-align:center}.advice-popup-close{position:absolute;top:.8rem;right:.9rem;width:42px;min-width:42px;height:42px;min-height:42px;padding:0;border:none;background:transparent;color:#030712;font-size:2.6rem;line-height:1;box-shadow:none}.advice-popup-lead{max-width:1060px;margin:0 auto 1.5rem;color:#030712;font-size:clamp(1.25rem,2.4vw,2rem);font-weight:800;line-height:1.45;text-align:center}.advice-popup-chart{display:grid;gap:.75rem;width:min(920px,100%);margin:0 auto 1.4rem}.advice-popup-chart h3{color:#64748b;font-size:clamp(1.1rem,2.2vw,1.8rem);text-align:center}.advice-popup-legend{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;color:#64748b;font-size:clamp(1rem,2vw,1.55rem);font-weight:900}.advice-popup-legend span{width:86px;height:28px;border-radius:5px;background:#ef4444}.advice-popup-bar-row{display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:1rem;align-items:center}.advice-popup-bar-row>strong{color:#64748b;font-size:clamp(.98rem,1.8vw,1.45rem);text-align:right}.advice-popup-bar{height:54px;min-height:54px;border-left:2px solid #cbd5e1;background:repeating-linear-gradient(to right,transparent,transparent calc(20% - 1px),rgba(203,213,225,.42) calc(20% - 1px),rgba(203,213,225,.42) 20%)}.advice-popup-bar span{display:flex;align-items:center;justify-content:center;height:100%;min-width:52px;padding:0 .55rem;color:#fff;font-size:clamp(1rem,2vw,1.55rem);font-weight:900}.advice-popup-bar.target span{background:#ef4444}.advice-popup-bar.student span{background:#2b59d9}.missing-word-list .word-chip-list span,.copied-phrase-list mark{color:#b91c1c;border-color:#b91c1c24;background:#fee2e2cc}.copied-phrase-list{display:flex;flex-wrap:wrap;gap:.55rem}.copied-phrase-list mark{padding:.45rem .65rem;border-radius:10px;font-weight:800}.quick-prompt-advice-panel{max-height:190px;overflow:auto;padding:.72rem;border-radius:12px;border:1px solid var(--border);background:#ffffffdb}.quick-prompt-advice-panel h3{margin-bottom:.55rem;font-size:1rem}.quick-prompt-compose-column label{margin:0}.quick-prompt-compose-column textarea{height:clamp(220px,42vh,390px);min-height:220px}.quick-prompt-compose-column .field-hint{margin-top:-.15rem;font-size:.86rem}.advice-meter{height:14px;overflow:hidden;border-radius:999px;background:#2563eb1f}.advice-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--accent))}.advice-facts{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.75rem}.advice-facts span{padding:.58rem .75rem;border-radius:12px;border:1px solid var(--border);background:var(--panel);color:var(--muted)}.advice-facts strong{color:var(--text-strong)}.repeated-word-list a{color:var(--danger);border-color:#b4231824;background:#fef2f2e6}.short-sentence-list{display:grid;gap:.5rem}.short-sentence-list mark{padding:.55rem .7rem;border-radius:12px;background:#2563eb1f;color:var(--brand-deep);line-height:1.55}.quick-prompt-submit-row{margin-top:0}.student-feedback-card{margin-top:1rem;padding:1rem;border-radius:20px;border:1px solid rgba(51,144,220,.18);background:#e9f6ffc7}.student-history-list{display:grid;gap:.9rem}.saved-submission-card{padding:1.15rem;border-radius:22px;border:1px solid var(--border);background:var(--panel)}.saved-submission-card.is-latest{border-color:#3390dc47;box-shadow:0 18px 44px #1c4a7614}.saved-submission-text{margin:0;color:var(--text-strong);line-height:1.8;white-space:pre-wrap}.rich-feedback-view{white-space:normal}.rich-feedback-content,.rich-feedback-view{color:var(--text-strong)}.rich-feedback-content p,.rich-feedback-content div,.rich-feedback-view p,.rich-feedback-view div{margin:0 0 .65rem;line-height:1.8}.rich-feedback-content p:last-child,.rich-feedback-content div:last-child,.rich-feedback-view p:last-child,.rich-feedback-view div:last-child{margin-bottom:0}.rich-feedback-original{color:var(--text-strong)}.rich-feedback-correction{color:var(--danger)}.confirmation-meta{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.1rem 0 1.5rem}.confirmation-meta span{padding:.7rem .95rem;border-radius:999px;border:1px solid var(--border);background:var(--panel);font-weight:700}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.9rem;margin-bottom:1rem}.teacher-shell{display:flex;flex-direction:column}.teacher-shell>*{order:20}.teacher-shell>.page-header{order:0}.teacher-shell>.teacher-dashboard-tabs{order:1}.teacher-shell>.teacher-tab-panel{order:2}.teacher-dashboard-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:.45rem;margin:0 0 .85rem;padding:.5rem;overflow-x:auto;border:1px solid rgba(30,41,59,.12);border-radius:16px;background:#fffdf8d1;box-shadow:var(--soft-shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.teacher-tab-button{--tab-color: var(--brand);--tab-wash: rgba(239, 246, 255, .94);--tab-border: rgba(37, 99, 235, .24);position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:.7rem;min-height:68px;justify-content:stretch;align-items:center;margin:0;padding:.78rem .92rem;overflow:hidden;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--muted);box-shadow:none}.teacher-tab-button:after{content:"";position:absolute;left:.95rem;right:.95rem;bottom:.38rem;height:3px;border-radius:999px;background:var(--tab-color);opacity:0;transform:scaleX(.6);transform-origin:left center;transition:opacity .16s ease,transform .16s ease}.teacher-tab-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid color-mix(in srgb,var(--tab-color) 18%,transparent);border-radius:10px 12px 9px 11px;background:color-mix(in srgb,var(--tab-color) 9%,#ffffff);color:var(--tab-color);font-size:1.05rem;font-weight:650;line-height:1}.teacher-tab-copy{display:grid;gap:.16rem;min-width:0;text-align:left}.teacher-tab-label{color:var(--text-strong);font-size:.98rem;font-weight:720;letter-spacing:0}.teacher-tab-meta{color:var(--muted);font-size:.76rem;font-weight:620}.teacher-tab-button:hover{transform:translateY(-1px);border-color:#1e293b1a;background:#ffffffad;box-shadow:0 10px 22px #0f172a0f}.teacher-tab-button.is-active{z-index:2;border-color:var(--tab-border);background:linear-gradient(180deg,rgba(255,255,255,.98),var(--tab-wash));color:var(--tab-color);box-shadow:0 14px 28px #0f172a1a}.teacher-tab-button.is-active:after{opacity:1;transform:scaleX(1)}.teacher-tab-button.is-active .teacher-tab-icon{border-color:color-mix(in srgb,var(--tab-color) 28%,transparent);background:#fff;box-shadow:inset 0 -8px 16px color-mix(in srgb,var(--tab-color) 8%,transparent)}.teacher-tab-button.is-active .teacher-tab-label,.teacher-tab-button.is-active .teacher-tab-meta{color:var(--tab-color)}.teacher-tab-button.is-active .teacher-tab-label{font-weight:780}.teacher-tab-panel{--tab-color: var(--brand);--tab-wash: rgba(239, 246, 255, .72);--tab-border: rgba(37, 99, 235, .2);min-width:0;margin-bottom:1rem;padding:.95rem;border:1px solid var(--tab-border);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.92),var(--tab-wash));box-shadow:0 18px 42px #0f172a14}.teacher-tab-review,.teacher-tab-panel-review{--tab-color: var(--color-review);--tab-wash: var(--color-review-bg);--tab-border: rgba(37, 99, 235, .26)}.teacher-tab-classes,.teacher-tab-panel-classes{--tab-color: var(--color-classes);--tab-wash: var(--color-classes-bg);--tab-border: rgba(15, 118, 110, .26)}.teacher-tab-quick-prompts,.teacher-tab-panel-quick-prompts{--tab-color: var(--color-writing);--tab-wash: var(--color-writing-bg);--tab-border: rgba(194, 65, 12, .16)}.teacher-tab-tools,.teacher-tab-panel-tools{--tab-color: var(--color-tools);--tab-wash: var(--color-tools-bg);--tab-border: rgba(190, 18, 60, .22)}.teacher-tab-reports,.teacher-tab-panel-reports{--tab-color: var(--color-reports);--tab-wash: var(--color-reports-bg);--tab-border: rgba(77, 124, 15, .24)}.teacher-tab-panel>.surface-card,.teacher-tab-panel>.collapsible-block>.surface-card,.teacher-tab-panel>.stats-grid>.surface-card{border-color:var(--tab-border)}.teacher-tab-panel-quick-prompts .quick-prompts-section{border-color:var(--tab-border);background:linear-gradient(90deg,rgba(15,23,42,.02) 1px,transparent 1px),linear-gradient(180deg,#fffdf8fa,#f8f6f0f0);background-size:30px 30px,auto}.teacher-tab-panel-quick-prompts .quick-prompt-form,.teacher-tab-panel-quick-prompts .quick-prompt-export-panel,.teacher-tab-panel-quick-prompts .quick-prompt-card,.teacher-tab-panel-quick-prompts .quick-prompt-empty{border-color:var(--border);background:#fffdf8db}.teacher-tab-panel-quick-prompts .quick-prompt-advice-chips span{border-color:#c2410c2e;background:var(--color-writing-bg);color:var(--tab-color)}.teacher-tab-panel-tools .teacher-tools-panel,.teacher-tab-panel-tools .translation-panel{background:linear-gradient(180deg,var(--tab-wash),rgba(255,255,255,.96))}.teacher-tab-panel-reports .stat-card{background:linear-gradient(180deg,#f7fee7e6,#fffffff0)}.stat-card{min-height:128px;justify-content:space-between;padding:1.2rem}.filter-panel{margin-bottom:1rem;padding:1.25rem}.feedback-tool-panel,.class-setup-section{margin-bottom:1rem}.quick-prompts-section{margin-bottom:1rem;padding:1.2rem;border-color:#0f766e33;background:#fffffff5}.quick-prompts-workflow-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.quick-prompts-workflow-head h2{margin-bottom:.25rem;font-weight:680;letter-spacing:0}.quick-prompts-head-actions{display:flex;align-items:flex-start;justify-content:flex-end}.quick-prompts-head-actions .primary{min-height:48px;box-shadow:0 12px 24px #2563eb21}.quick-prompt-workflow-actions{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end}.quick-prompts-workspace{display:grid;grid-template-columns:minmax(220px,255px) minmax(0,1fr);gap:1.2rem;align-items:start;margin-top:1rem}.quick-prompts-flow-rail{display:grid;gap:.72rem;padding:.78rem;border:1px solid rgba(194,65,12,.11);border-radius:15px 17px 14px 16px;background:#fffdf8a8;box-shadow:inset 0 1px #ffffffb8,var(--soft-shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.quick-prompts-main-panel{min-width:0}.quick-prompt-stepper{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem;align-items:center;padding:.05rem .08rem .18rem}.quick-prompt-stepper:before{content:"";position:absolute;left:1rem;right:1rem;top:50%;height:2px;border-radius:999px;background:linear-gradient(90deg,#0f766e42,#2563eb33,#0891b238)}.quick-prompt-stepper span{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;justify-self:center;width:28px;height:28px;border:1px solid rgba(37,99,235,.14);border-radius:999px;background:#fffdf8f5;color:var(--accent);font-size:.88rem;font-weight:650;box-shadow:0 5px 12px #1c4a760f}.quick-prompt-flow-step{display:grid;gap:.48rem;padding:.74rem;border:1px solid rgba(15,118,110,.11);border-radius:13px 15px 12px 14px;background:#f0fdfa80;box-shadow:0 8px 18px #5b3d1c0d;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.quick-prompt-step-head{display:flex;justify-content:flex-start;align-items:center;gap:.7rem}.quick-prompt-step-number{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;border:1px solid rgba(15,118,110,.14);background:#ffffffb8;color:var(--accent);font-size:1.02rem;font-weight:650;box-shadow:inset 0 -8px 14px #2563eb12}.quick-prompt-flow-step:hover{transform:translateY(-1px);box-shadow:0 12px 22px #5b3d1c14}.quick-prompt-flow-step:nth-of-type(1){background:linear-gradient(180deg,#f0fdfaa3,#fffdf8d6);border-color:#0f766e21}.quick-prompt-flow-step:nth-of-type(2){min-height:156px;border-radius:15px 12px 16px 13px;background:linear-gradient(180deg,#eff6ff9e,#fffdf8db)}.quick-prompt-flow-step h3{margin:0;font-size:1rem;font-weight:660;letter-spacing:0}.quick-prompt-flow-step label,.quick-prompt-flow-step .field-hint{margin:0}.quick-prompt-flow-actions-panel{min-height:132px;border-color:#0891b221;border-radius:12px 16px 14px 13px;background:linear-gradient(180deg,#ecfeff75,#fffdf8e6)}.quick-prompt-flow-actions-panel .quick-prompt-workflow-actions{display:grid;justify-content:stretch}.quick-prompt-flow-actions-panel .quick-prompt-workflow-actions>*{width:100%}.quick-prompt-total-row{display:flex;flex-wrap:wrap;gap:.6rem;margin:.9rem 0}.quick-prompt-total-row span{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .65rem;border-radius:999px;border:1px solid var(--border);background:var(--panel);color:var(--muted);font-size:.86rem;font-weight:800}.quick-prompt-total-row strong{color:var(--text-strong)}.quick-prompt-flow-summary{display:grid;margin:0}.quick-prompt-flow-summary span{justify-content:space-between;border-radius:12px}.quick-prompt-status-select{display:grid;gap:.4rem}.quick-prompt-status-select label{margin:0}.quick-prompt-status-select select{min-height:48px;border-color:#2563eb29;background-color:#fffdf8eb;font-weight:650}.quick-prompt-inline-create{width:100%;min-height:42px;border-color:#0f766e2e;background:#f0fdfad1;color:var(--accent);font-weight:700}.quick-prompt-inline-create:hover{background:#fffdf8fa;box-shadow:0 10px 20px #0f766e1a}.quick-prompt-form-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.quick-prompt-form-head h3{margin:.1rem 0 0}.quick-prompt-mode-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;padding:.35rem;border:1px solid var(--border);border-radius:14px;background:#fffdf8b8}.quick-prompt-mode-toggle button{min-height:44px;border-color:transparent;background:transparent;color:var(--muted)}.quick-prompt-mode-toggle button.is-active{border-color:#2563eb33;background:#fff;color:var(--brand-deep);box-shadow:0 8px 18px #0f172a0f}.quick-prompt-form{display:grid;gap:.8rem;margin:.9rem 0;padding:.95rem;border:1px solid rgba(15,118,110,.14);border-radius:14px;background:linear-gradient(180deg,#f0fdfaa8,#fffdf8f2)}.quick-prompt-form label{margin-top:0}.quick-prompt-goals-panel{display:grid;gap:.7rem;padding:.75rem;border:1px solid rgba(37,99,235,.12);border-radius:14px;background:#fffdf8bd}.quick-prompt-readonly-status{display:grid;gap:.45rem;align-items:start;padding:.58rem;border-radius:14px;border:1px solid rgba(37,99,235,.12);background:#fffdf8bd}.resubmission-toggle{align-self:start;padding:.72rem .85rem;border-radius:14px;border:1px solid rgba(21,128,61,.18);background:var(--success-bg)}.resubmission-toggle span{color:var(--success)}.quick-prompt-goal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.6rem}.quick-prompt-goal-card{min-width:0;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:#fffdf8e6}.quick-prompt-goal-card.wide{grid-column:1 / -1}.goal-card-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.55rem}.quick-prompt-goal-toggle{color:var(--text-strong);font-size:.92rem;font-weight:800}.quick-prompt-goal-toggle input{width:auto}.quick-prompt-help-button{width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border-radius:50%;color:var(--brand-deep);border-color:#2563eb2e;background:var(--color-review-bg);font-weight:900}.goal-help-text{margin:-.15rem 0 .65rem;padding:.62rem .7rem;border-radius:12px;border:1px solid rgba(15,118,110,.14);background:#f0fdfab8;color:#115e59;line-height:1.55;font-size:.92rem}.goal-settings-grid{display:grid;grid-template-columns:minmax(140px,.45fr) minmax(0,1fr);gap:.75rem;align-items:start}.goal-settings-grid.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.writing-goals-disclosure{display:grid;gap:.85rem}.writing-goals-main-toggle{padding:.75rem;border-radius:12px;border:1px solid rgba(15,118,110,.16);background:linear-gradient(180deg,#f0fdfabd,#fffdf8e6)}.writing-goals-main-toggle>span:first-child{display:grid;gap:.2rem}.writing-goals-main-toggle .field-hint{margin:0;font-weight:500}.writing-goals-group-label{margin:0;color:var(--accent);font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.writing-goals-advanced{display:grid;gap:.75rem}.compact-toggle{padding:.75rem .9rem;border-radius:12px;border:1px solid rgba(37,99,235,.12);background:#fffdf8b8}.advanced-goal-grid{margin-top:0}.class-writing-goals-panel{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(15,23,42,.08)}.class-writing-goals-body{display:grid;gap:.85rem}.writing-goals-actions{margin-top:.2rem}.goal-settings-grid textarea{min-height:96px}.quick-prompt-main-fields,.quick-prompt-settings-grid{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(180px,1.1fr);gap:.75rem}.quick-prompt-secondary-fields{align-items:start}.quick-prompt-settings-grid{grid-template-columns:minmax(140px,.55fr) minmax(140px,.55fr) minmax(240px,1.4fr)}.quick-prompt-vocab-field textarea{min-height:88px}.quick-prompt-advice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.quick-prompt-check{display:flex;align-items:center;gap:.6rem;min-height:54px;margin:0;padding:.75rem .85rem;border:1px solid var(--border);border-radius:14px;background:#fffdf8c2;color:var(--text-strong)}.quick-prompt-check input{width:auto}.quick-prompt-export-panel{display:grid;gap:.75rem;margin-top:.9rem;padding:.95rem;border:1px solid rgba(37,99,235,.16);border-radius:14px;background:linear-gradient(180deg,#eff6ff9e,#fffdf8f2)}.quick-prompt-export-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.38fr);gap:.85rem;align-items:end}.quick-prompt-export-head h3{margin:.15rem 0 .25rem}.quick-prompt-export-controls label{margin:0 0 .35rem}.quick-prompt-export-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.55rem}.quick-prompt-export-option{display:flex;align-items:flex-start;gap:.55rem;min-height:68px;margin:0;padding:.7rem .78rem;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.quick-prompt-export-option input{width:auto;margin-top:.18rem}.quick-prompt-export-option span{display:grid;gap:.2rem;min-width:0}.quick-prompt-export-option strong{color:var(--text-strong)}.quick-prompt-export-option small{color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.quick-prompt-export-actions{align-items:center}.quick-prompt-list{display:grid;gap:.65rem;margin-top:.75rem}.quick-prompt-groups{display:grid;gap:1rem;margin-top:1rem}.quick-prompt-group{display:grid;gap:.6rem;padding:0;border:0;border-radius:0;background:transparent}.quick-prompt-group-head,.quick-prompt-card-head{align-items:flex-start}.quick-prompt-group-head{display:flex;justify-content:space-between;gap:1rem;padding-top:.25rem}.quick-prompt-group-head h3{margin:0}.quick-prompt-card{padding:.95rem 1rem;border-radius:12px 14px 13px 12px;border:1px solid rgba(30,41,59,.1);background:#fffdf8e6;box-shadow:0 10px 24px #0f172a0f;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.quick-prompt-card:hover{transform:translateY(-1px);box-shadow:0 16px 30px #0f172a14}.quick-prompt-card-active{border-color:#0f766e24;background:linear-gradient(180deg,#f0fdfab3,#fffdf8f0)}.quick-prompt-card-draft{border-color:#c2410c24;border-radius:14px 12px 13px 15px;background:linear-gradient(180deg,#fff7edc7,#fffdf8f2)}.quick-prompt-card-closed{border-color:#64748b21;border-radius:12px 15px 12px 14px;background:linear-gradient(180deg,#f8fafcb8,#fffdf8f2)}.quick-prompt-card h3{margin:0;font-size:1.06rem;font-weight:680;letter-spacing:0;line-height:1.25}.quick-prompt-card-main{display:grid;gap:.65rem}.quick-prompt-card-content{min-width:0}.quick-prompt-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.quick-prompt-card-kicker{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.45rem;flex:0 0 auto}.quick-prompt-progress-ring{--response-progress: 0deg;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:3px;border-radius:999px;background:conic-gradient(var(--color-classes) var(--response-progress),rgba(100,116,139,.13) 0deg)}.quick-prompt-progress-ring>span{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:999px;background:#fffdf8f5;color:var(--text-strong);font-size:.75rem;font-weight:720}.quick-prompt-card-facts{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.quick-prompt-card-facts .quick-prompt-advice-chips{display:contents}.quick-prompt-response-count{display:inline-flex;align-items:center;padding:.25rem .48rem;border-radius:999px;border:1px solid var(--border);background:var(--panel);color:var(--muted);font-size:.76rem;font-weight:800}.quick-prompt-card-status-copy{margin:.2rem 0 0;font-size:.88rem}.quick-prompt-primary-actions,.quick-prompt-secondary-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-start}.quick-prompt-primary-actions button,.quick-prompt-secondary-actions button{min-height:34px;padding:.4rem .65rem;border-radius:9px;font-size:.86rem}.quick-prompt-primary-actions .quick-prompt-response-toggle{min-width:150px}.quick-prompt-state-action{border-color:#0f766e33;background:#f0fdfad1;color:var(--color-classes)}.quick-prompt-card .status-badge,.quick-prompt-card .class-pill,.quick-prompt-card .resubmission-badge,.quick-prompt-meta-chip,.quick-prompt-card-facts .quick-prompt-advice-chips span{min-height:26px;padding:.24rem .48rem;border-radius:999px;font-size:.75rem;line-height:1.1}.quick-prompt-card .status-badge{text-transform:capitalize}.quick-prompt-meta-chip{display:inline-flex;align-items:center;border:1px solid rgba(100,116,139,.16);background:#f8fafceb;color:var(--muted);font-weight:800}.quick-prompt-secondary-actions{margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--border)}.quick-prompt-card-details{display:grid;gap:.6rem;margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--border)}.quick-prompt-detail-meta{display:flex;flex-wrap:wrap;gap:.5rem;color:var(--muted);font-size:.86rem;font-weight:700}.quick-prompt-copy{display:grid;gap:.65rem;margin:0;padding:.75rem;border-radius:12px;border:1px solid var(--border);background:var(--panel);line-height:1.7;white-space:pre-wrap}.quick-prompt-advice-chips,.word-chip-list{display:flex;flex-wrap:wrap;gap:.38rem}.quick-prompt-advice-chips.compact span{padding:.28rem .5rem;font-size:.76rem}.quick-prompt-advice-chips span,.word-chip-list span,.word-chip-list a,.source-badge,.resubmission-badge,.edited-badge{display:inline-flex;align-items:center;padding:.38rem .65rem;border-radius:999px;border:1px solid rgba(15,118,110,.14);background:#f0fdfad1;color:var(--accent);font-size:.82rem;font-weight:800;text-decoration:none}.source-badge.free-write{color:var(--brand-deep);border-color:#2563eb24;background:#eff6ffe6}.source-badge.quick-prompt{color:var(--color-writing);border-color:#c2410c29;background:var(--color-writing-bg)}.resubmission-badge.is-on,.edited-badge{color:var(--success);border-color:#15803d2e;background:var(--success-bg)}.resubmission-badge.is-off{color:var(--muted);border-color:#64748b29;background:#f8fafceb}.quick-prompt-response-anchor{display:flex;flex-wrap:wrap;gap:.45rem .7rem;align-items:center;margin-top:.65rem;padding:.55rem .65rem;border:1px dashed rgba(100,116,139,.22);border-radius:10px;background:#fffdf8ad;color:var(--text-strong);font-size:.86rem}.quick-prompt-response-anchor strong{color:var(--accent)}.quick-prompt-response-drawer{position:relative;display:grid;gap:.75rem;margin:.75rem 0 0 1.05rem;padding:.85rem;border:1px solid rgba(15,118,110,.14);border-radius:14px;background:linear-gradient(180deg,#f0fdfa9e,#fffdf8f0)}.quick-prompt-response-drawer:before{content:"";position:absolute;top:-.8rem;left:1rem;width:3px;height:.8rem;border-radius:999px;background:var(--accent)}.quick-prompt-response-drawer-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem}.quick-prompt-response-drawer-head h4{margin:.1rem 0 0;font-size:1rem}.quick-prompt-response-drawer-actions,.quick-prompt-response-actions{display:flex;flex-wrap:wrap;gap:.45rem}.quick-prompt-responses{display:grid;gap:.7rem;margin-top:.75rem}.quick-prompt-response-drawer .quick-prompt-responses{margin-top:0}.quick-prompt-response-row{padding:.85rem;border-radius:14px;border:1px solid var(--border);background:var(--panel)}.quick-prompt-response-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:.55rem;margin-bottom:.45rem}.quick-prompt-response-heading>div{display:grid;gap:.2rem;min-width:0}.quick-prompt-response-heading strong{color:var(--text-strong);font-weight:900}.quick-prompt-response-row summary{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.45rem;cursor:pointer;color:var(--text-strong);font-weight:800}.quick-prompt-response-row summary::marker{color:var(--color-writing)}.quick-prompt-response-row p{color:var(--text-strong);line-height:1.7;white-space:pre-wrap}.quick-prompt-response-preview{margin:0}.quick-prompt-response-actions{margin:.2rem 0 .65rem}.quick-prompt-empty{position:relative;overflow:hidden;min-height:360px;border:1px solid rgba(15,118,110,.12);border-radius:14px 16px 13px 15px;background:linear-gradient(90deg,rgba(15,23,42,.018) 1px,transparent 1px),linear-gradient(180deg,#f0fdfa6b,#fffdf8e6);background-size:26px 26px,auto;box-shadow:inset 0 1px #ffffffb8,var(--soft-shadow)}.quick-prompt-empty-primary{display:grid;justify-items:center;align-content:center;gap:.72rem;padding:2rem 1.25rem}.quick-prompt-empty-primary h3{max-width:34rem;font-weight:680;letter-spacing:0}.quick-prompt-empty-primary p:not(.eyebrow){max-width:42rem;line-height:1.65}.quick-prompt-empty-illustration{position:relative;width:114px;height:82px;margin-bottom:.15rem}.quick-prompt-empty-illustration:before{content:"";position:absolute;top:8px;right:18px;bottom:0;left:6px;border:1px solid rgba(15,118,110,.16);border-radius:10px 12px 9px 11px;background:linear-gradient(#c2410c21,#c2410c21) 18px 22px / 54px 2px no-repeat,linear-gradient(#c2410c1a,#c2410c1a) 18px 34px / 44px 2px no-repeat,linear-gradient(#c2410c14,#c2410c14) 18px 46px / 60px 2px no-repeat,#fffdf8eb;box-shadow:0 14px 24px #5b3d1c1a;transform:rotate(-2deg)}.quick-prompt-empty-illustration:after{content:"";position:absolute;right:10px;top:12px;width:48px;height:8px;border-radius:999px;background:linear-gradient(90deg,#2563ebb3,#0f766eb8);transform:rotate(-28deg);box-shadow:0 8px 16px #2563eb1f}.quick-prompt-empty-illustration span{position:absolute;right:5px;top:44px;width:22px;height:16px;border:1px solid rgba(37,99,235,.18);border-radius:3px 9px 9px 3px;background:#eff6ffdb;transform:rotate(9deg)}.quick-prompt-empty-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;width:min(100%,560px);margin:.25rem 0}.quick-prompt-empty-stats span{display:grid;gap:.18rem;min-height:72px;align-content:center;padding:.75rem .8rem;border:1px solid rgba(30,41,59,.09);border-radius:12px;background:#ffffffa3;color:var(--muted);font-size:.78rem;font-weight:650}.quick-prompt-empty-stats strong{color:var(--text-strong);font-size:1.35rem;line-height:1}.quick-prompt-empty-cta{min-height:50px;padding-inline:1.35rem;box-shadow:0 14px 28px #2563eb26}.quick-prompt-template-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;width:min(100%,640px);margin-top:.35rem}.quick-prompt-template-card{display:grid;grid-template-columns:32px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:.58rem;row-gap:.08rem;min-height:76px;padding:.68rem .78rem;border-color:#0f766e1f;border-radius:12px 13px 11px 14px;background:#f0fdfab8;box-shadow:none}.quick-prompt-template-card:hover{background:#ffffffeb;box-shadow:0 12px 20px #5b3d1c14}.quick-prompt-template-icon{grid-row:1 / span 2;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px 12px 9px 11px;background:#ffffffc2;color:var(--accent);font-weight:720}.quick-prompt-template-card strong,.quick-prompt-template-card small{min-width:0;text-align:left}.quick-prompt-template-card strong{color:var(--text-strong);font-size:.9rem;font-weight:690}.quick-prompt-template-card small{color:var(--muted);font-size:.75rem;font-weight:560;line-height:1.25}.class-setup-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1.25rem;margin-bottom:.9rem;padding:1.35rem 1.45rem;border-radius:var(--radius-xl);border:1px solid rgba(15,118,110,.24);background:linear-gradient(135deg,#0f766e,#2563eb);box-shadow:0 16px 40px #0f172a24}.class-setup-header h2,.class-setup-header .eyebrow{color:#fff}.class-setup-header .eyebrow{margin-bottom:.35rem}.class-setup-header .page-copy{color:#ffffffdb}.class-setup-summary{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}.class-setup-summary span{min-width:98px;padding:.75rem .9rem;border-radius:14px;border:1px solid rgba(255,255,255,.22);background:#ffffff26;color:#ffffffdb;font-size:.82rem;font-weight:800;text-transform:uppercase}.class-setup-summary strong{display:block;margin-bottom:.18rem;color:#fff;font-size:1.5rem;line-height:1}.class-setup-layout{margin-bottom:0}.class-primary-create-panel{border-color:#0f766e3d;background:linear-gradient(180deg,#f0fdfafa,#fffffff5)}.class-primary-create-panel .eyebrow{color:var(--accent)}.class-primary-create-panel h3,.classroom-list-panel h3{font-size:1.24rem}.classroom-create-form{margin-top:.2rem}.class-create-actions{margin-top:1rem}.classroom-picker{margin-bottom:.95rem}.classroom-picker label{margin-top:0}.selected-classroom-card{margin-top:.85rem}.review-filter-panel{border-color:#2563eb33;padding:1rem;overflow:hidden}.ai-config-panel{border-color:var(--ai-border);background:linear-gradient(180deg,#f5f3ff9e,#fffdf8f0)}.assisted-info-row{display:flex;justify-content:space-between;align-items:center;gap:.85rem;margin-top:.9rem}.assisted-info-row .field-hint{margin:0}.info-icon-button{width:34px;min-width:34px;height:34px;min-height:34px;padding:0;border-radius:50%;color:var(--ai);border-color:var(--ai-border);background:var(--ai-bg);font-weight:900}.assisted-info-panel{margin-top:.8rem;color:var(--ai);border-color:var(--ai-border);background:var(--ai-bg)}.anonymous-section-toggle{border-color:#0f766e3d;background:linear-gradient(135deg,#f0fdfad1,#eff6ffb8)}.anonymous-section-toggle .eyebrow,.anonymous-section-toggle .collapse-hint{color:var(--accent)}.anonymous-grader-panel{padding:1.45rem;border-color:#0f766e33}.anonymous-grader-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);gap:1.1rem;align-items:start}.anonymous-input-panel,.anonymous-results-panel{min-width:0}.anonymous-controls{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.anonymous-drop-zone{display:grid;gap:.35rem;place-items:center;min-height:118px;margin-bottom:.9rem;padding:1rem;border:2px dashed rgba(15,118,110,.28);border-radius:14px;background:linear-gradient(180deg,#f0fdfa94,#fffdf8db);color:var(--accent);text-align:center}.anonymous-drop-zone strong{color:var(--text-strong);font-size:1.02rem}.anonymous-drop-zone span{color:var(--muted);font-weight:700}.anonymous-drop-zone.is-dragging{border-color:var(--accent);background:#ccfbf1b8}.compact-toggle{min-height:42px;padding:.58rem .85rem}.compact-action{min-height:42px;padding:.58rem .85rem;font-size:.92rem}.secondary-action{color:var(--muted);border-color:#14202b24;background:#fffdf8d1}.anonymous-summary{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.8rem}.anonymous-summary span{padding:.48rem .75rem;border-radius:999px;border:1px solid rgba(15,118,110,.16);background:#f0fdfad9;color:#0f766e;font-size:.82rem;font-weight:800}.anonymous-generate-panel{display:grid;gap:.75rem;margin:1rem 0;padding:1rem;border:1px solid rgba(15,118,110,.16);border-radius:14px;background:linear-gradient(180deg,#f0fdfa9e,#fffdf8e6)}.anonymous-generate-panel label:not(.anonymous-review-check){margin:0}.anonymous-generate-panel textarea{min-height:92px;background:#fffdf8e6}.anonymous-review-check{justify-content:flex-start;gap:.65rem;color:var(--text-strong)}.anonymous-review-check input{width:auto}.primary-action{width:100%;min-height:52px;font-size:1rem}.anonymous-progress{display:grid;gap:.45rem}.anonymous-progress-track{height:12px;overflow:hidden;border-radius:999px;background:#2563eb1f}.anonymous-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--brand-gradient);transition:width .22s ease}.anonymous-progress p{color:var(--muted);font-size:.9rem;font-weight:800}.anonymous-map-details{margin:.8rem 0 1rem;color:var(--muted)}.anonymous-map-details summary{cursor:pointer;font-weight:800;color:var(--text-strong)}.anonymous-map-list{display:grid;gap:.55rem;max-height:220px;overflow:auto;margin-top:.7rem;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.anonymous-map-list div{display:grid;grid-template-columns:64px minmax(0,1fr);gap:.7rem;align-items:start}.anonymous-map-list strong{color:var(--accent)}.anonymous-map-list span{overflow-wrap:anywhere}.compact-panel-head{margin-bottom:.75rem}.anonymous-feedback-table{width:100%;border-collapse:collapse;table-layout:fixed}.anonymous-feedback-table th{text-align:left;padding:.65rem .75rem;color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid var(--border)}.anonymous-feedback-table td{padding:.8rem .75rem;border-bottom:1px solid var(--border);vertical-align:top;white-space:pre-wrap;line-height:1.6}.anonymous-feedback-table td:first-child{color:var(--accent);font-weight:900;white-space:nowrap}.anonymous-feedback-table th:first-child,.anonymous-feedback-table td:first-child{width:76px}.anonymous-feedback-table th:nth-child(2),.anonymous-feedback-table td:nth-child(2){width:180px}.anonymous-feedback-table tr:last-child td{border-bottom:none}.translation-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,340px);gap:1rem;align-items:end;margin-bottom:1rem;padding:1.25rem}.translation-panel h2{margin-top:.25rem}.teacher-tools-panel{margin-bottom:1rem;padding:1.25rem}.teacher-tool-list{border-top:1px solid var(--border)}.teacher-tool-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border)}.teacher-tool-row:last-child{border-bottom:none}.teacher-tool-row strong{display:block;color:var(--text-strong)}.translation-control label{margin-top:0}.inline-translation-select{display:inline-flex;align-items:center;gap:.45rem;margin:0;color:var(--muted);font-size:.82rem;font-weight:700}.inline-translation-select span{white-space:nowrap}.inline-translation-select select{min-width:150px;padding:.62rem .75rem;border-radius:12px}.toolbar-grid{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(6,minmax(130px,1fr)) auto;gap:.9rem;align-items:end}.review-filter-panel .toolbar-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:.7rem;align-items:end;width:100%;max-width:100%}.review-filter-panel .toolbar-grid>div,.review-filter-panel .toolbar-grid>label{min-width:0}.review-search-filter{grid-column:span 3}.review-class-filter{grid-column:span 2}.review-task-filter{grid-column:span 4}.review-account-filter,.review-title-filter,.review-type-filter,.review-sort-filter,.review-filter-names-toggle{grid-column:span 3}.review-filter-panel .toolbar-grid>div>label{margin:0 0 .32rem;color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;line-height:1.1;text-transform:uppercase}.review-filter-panel input,.review-filter-panel select{min-height:46px;min-width:0;max-width:100%;padding:.62rem .78rem;border-radius:12px;font-size:.94rem;line-height:1.2}.review-filter-panel input::placeholder{color:#5c748cc7}.review-task-filter{min-width:0}.review-task-summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem;padding:.85rem 1rem;border:1px solid rgba(15,118,110,.14);border-radius:14px;background:linear-gradient(180deg,#f0fdfaa8,#fffdf8f0)}.review-task-summary h3{margin:.1rem 0 .2rem;font-size:1rem}.review-task-summary .field-hint{margin:0}.review-task-accordion{display:grid;gap:.75rem}.review-task-accordion-head,.review-legacy-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.85rem}.review-task-accordion-head h3,.review-legacy-head h3{margin:.12rem 0 0;font-size:1.05rem}.review-task-group-list{display:grid;gap:.75rem}.review-task-group{padding:.85rem;border:1px solid rgba(15,118,110,.14);border-radius:14px;background:linear-gradient(180deg,#f0fdfa99,#fffdf8f2)}.review-task-group.is-expanded{border-color:#2563eb33;box-shadow:0 18px 42px #0f172a14}.review-task-group-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:start}.review-task-expand-button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:.85rem;min-height:72px;padding:.75rem .85rem;border-radius:12px;border:1px solid rgba(37,99,235,.12);background:#fffdf8e0;color:var(--text-strong);text-align:left}.review-task-expand-button>span:first-child{display:grid;gap:.24rem;min-width:0}.review-task-expand-button strong{overflow-wrap:anywhere;font-size:1.02rem}.review-task-expand-button small{color:var(--muted);font-weight:800}.review-task-count{display:inline-flex;align-items:center;white-space:nowrap;padding:.36rem .58rem;border-radius:999px;border:1px solid rgba(15,118,110,.16);background:var(--color-classes-bg);color:var(--accent);font-size:.8rem;font-weight:900}.review-task-group-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}.review-task-group-actions button{min-height:38px;padding:.48rem .72rem;border-radius:10px;font-size:.86rem}.review-task-response-stack{margin-top:.85rem;padding-top:.85rem;border-top:1px solid rgba(15,118,110,.12)}.review-legacy-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.toggle-row{align-self:end;min-height:56px;padding:.9rem 1rem;border-radius:18px;border:1px solid var(--border);background:var(--panel)}.review-filter-panel .toggle-row{justify-content:center;min-height:46px;width:100%;padding:.62rem .72rem;border-radius:12px;gap:.5rem;color:var(--muted);font-size:.86rem;font-weight:900;line-height:1.15;white-space:nowrap}.review-filter-panel .toggle-row span{min-width:0;overflow:hidden;text-overflow:ellipsis}.review-filter-panel .toggle-row input{width:16px;min-width:16px;height:16px;min-height:16px;padding:0}.classroom-stack{display:grid;gap:.9rem}.classroom-card{padding:1rem;border-radius:22px;border:1px solid var(--border);background:var(--panel)}.classroom-card.is-active{border-color:#3390dc38}.classroom-card.is-inactive{opacity:.82}.classroom-name{margin-bottom:.65rem;font-size:1.08rem;font-weight:800;color:var(--text-strong)}.classroom-code-label{margin-bottom:.25rem;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.classroom-code-value{display:inline-flex;margin-bottom:.35rem;padding:.36rem .58rem;border-radius:10px;border:1px solid rgba(37,99,235,.16);background:#eff6fff0;color:var(--brand-deep);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:clamp(1.15rem,2.4vw,1.65rem);font-weight:900;letter-spacing:.06em;overflow-wrap:anywhere}.classroom-empty-state{border:1px dashed rgba(15,118,110,.24);border-radius:14px;background:#f0fdfa8f}.status-badge{display:inline-flex;align-items:center;padding:.45rem .8rem;border-radius:999px;font-size:.8rem;font-weight:800}.status-badge.active{background:var(--success-bg);color:var(--success)}.status-badge.inactive{background:#5c748c24;color:var(--muted)}.status-badge.feedback-draft{background:var(--warning-bg);color:var(--warning)}.status-badge.feedback-published{background:var(--success-bg);color:var(--success)}.status-badge.feedback-none{background:var(--color-review-bg);color:var(--color-review)}.dashboard-layout{display:grid;grid-template-columns:1fr;gap:1.25rem;align-items:start}.teacher-detail-panel{position:sticky;top:1.5rem;max-height:calc(100vh - 3rem);overflow-y:auto}.teacher-review-panel{scroll-margin-top:1rem}.collapsible-block{margin-bottom:1rem}.collapsible-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;text-align:left;cursor:pointer;padding:1.1rem 1.45rem}.collapsible-toggle .eyebrow{margin-bottom:.3rem}.collapsible-label{font-size:1.12rem;font-weight:700;color:var(--text-strong);font-family:var(--font-heading)}.collapse-hint{color:var(--muted);font-size:.9rem;font-weight:600;white-space:nowrap;flex-shrink:0}.collapsible-body{margin-top:.75rem}.panel-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;text-align:left;cursor:pointer;background:none;border:none;padding:0;font:inherit;margin-bottom:0}.panel-toggle h2{color:var(--text-strong)}.selection-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 0 .85rem;margin-bottom:.85rem;border-bottom:1px solid var(--border)}.submission-card.feedback-draft{border-left:4px solid var(--warning);background:linear-gradient(90deg,var(--warning-bg),var(--panel) 32%)}.submission-card.feedback-published{border-left:4px solid var(--success);background:linear-gradient(90deg,var(--success-bg),var(--panel) 32%)}.card-actions{margin:.85rem 0 0}.feedback-editor-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:0}.feedback-editor-head label{margin:.85rem 0 .45rem}.grade-editor{display:grid;grid-template-columns:minmax(140px,.24fr) minmax(180px,1fr);gap:.8rem;align-items:end;margin-top:1rem}.grade-editor label{margin:0 0 .45rem}.grade-editor input{border-radius:14px}.amber-section{background:linear-gradient(135deg,#fbbf241a,#f59e0b0f)!important;border-color:#f59e0b47!important}.amber-section .eyebrow,.amber-section .collapsible-label,.amber-section .collapse-hint{color:var(--warning)}.ai-instructions-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1rem}.file-label{display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.6rem 1rem;border-radius:999px;border:1px solid rgba(20,32,43,.12);background:#ffffffd6;color:var(--text-strong);font-weight:700;font-size:.92rem;cursor:pointer}.file-label:hover{background:#fff}.file-input-hidden{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#11253c80;display:flex;align-items:center;justify-content:center;z-index:200;padding:1.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-card{max-width:540px;width:100%;max-height:80vh;overflow-y:auto;padding:1.45rem}.student-roster{margin-top:.5rem}.student-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--border)}.student-row:last-child{border-bottom:none}.student-row-name{display:block;font-weight:700;color:var(--text-strong)}.student-row-meta{font-size:.88rem}@media (max-width: 720px){.ai-instructions-grid{grid-template-columns:1fr}}.teacher-list-panel-wide{min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.detail-meta{margin-top:.65rem;color:var(--muted);line-height:1.6}.detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0 1.1rem;padding:0}.detail-facts>div{padding:.95rem 1rem;border-radius:18px;border:1px solid var(--border);background:var(--panel)}.detail-facts dt{margin-bottom:.4rem;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.detail-facts dd{margin:0;color:var(--text-strong);font-weight:700}.detail-body{min-height:320px;padding:1.25rem;border-radius:22px;border:1px solid var(--border);background:var(--panel)}.detail-body p{white-space:pre-wrap;line-height:1.8}.detail-body-compact{min-height:0}.translation-result{margin-top:.85rem;padding:1rem;border-radius:20px;border:1px solid rgba(23,107,179,.18);background:#eef8ffd1}.translation-result .eyebrow{margin-bottom:.55rem}.translation-result p:last-child{color:var(--text-strong);line-height:1.8;white-space:pre-wrap}.feedback-editor{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.feedback-source-card{margin-top:1rem;padding:1rem;border-radius:20px;border:1px solid var(--border);background:#ffffffb8}.empty-state{padding:1.7rem .8rem;text-align:center;color:var(--muted)}.submission-stack{display:grid;gap:.9rem}.submission-stack-scrollable{max-height:72vh;overflow-y:auto;padding-right:.3rem;scrollbar-gutter:stable}.panel-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.submission-card{padding:1.15rem;border-radius:22px;border:1px solid var(--border);background:var(--panel);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.submission-card.is-active{border-color:#3390dc47;box-shadow:0 18px 44px #1c4a7614}.submission-card:hover{transform:translateY(-1px)}.submission-expanded{margin-top:1.15rem;padding-top:1.15rem;border-top:1px solid var(--border)}.submission-top h3{margin:.55rem 0 .35rem}.submission-select-row{display:flex;justify-content:space-between;align-items:center;gap:.9rem;margin-bottom:.9rem}.selection-toggle{min-height:40px;padding:.55rem .8rem;border-radius:999px;border:1px solid var(--border);background:#ffffffb3}.meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem}.class-pill{display:inline-flex;align-items:center;padding:.45rem .8rem;border-radius:999px;border:1px solid rgba(15,118,110,.16);background:var(--color-classes-bg);color:var(--color-classes);font-size:.84rem;font-weight:800}.card-preview{margin:.95rem 0 0;color:var(--muted);line-height:1.75}.export-layout{margin-top:1rem}.combined{min-height:62vh;border:none;border-radius:22px;background:#12304ff5;color:#f8fafc;padding:1.25rem;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.95rem;line-height:1.7;white-space:pre-wrap;word-break:break-word}.display-page{min-height:100vh;background:linear-gradient(180deg,#0f3f67,#dcefff)}.display-toolbar{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;gap:.65rem;padding:1rem 1.1rem;background:#0a2a46e0;border-bottom:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.display-toolbar button{color:#fff;border-color:#ffffff24;background:#ffffff14}.display-toolbar select{width:auto;min-height:48px;max-width:230px;color:#fff;border-color:#ffffff24;background:#ffffff14}.display-toolbar select option{color:#11253c}.display-toolbar button:hover{background:#ffffff29}.display-toolbar button:focus-visible{outline-color:#ffffffb3}.display-position{margin-left:auto;align-self:center;color:#ffffffb8;font-weight:700}.display-shell{max-width:1180px;margin:0 auto;padding:1.55rem 1rem 2.6rem}.display-header{margin-bottom:1rem}.display-title{max-width:22ch;margin:.75rem 0 .7rem;color:#fff;font-size:clamp(2rem,5vw,4rem)}.display-meta{color:#ffffffc7;line-height:1.6}.display-paper{padding:clamp(1.35rem,4vw,2.8rem);border-radius:32px;background:#fffcf8f5;box-shadow:0 34px 70px #0000002e}.display-editor-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.display-editor-label{color:var(--muted);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.display-format-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem}.display-format-toolbar button{min-height:40px;padding:.48rem .78rem;border-radius:12px}.display-format-toolbar button[aria-label=Italic]{font-style:italic}.display-format-toolbar button[aria-label=Underline]{text-decoration:underline}.display-format-toolbar button[aria-label=Strikethrough]{text-decoration:line-through}.display-format-toolbar .correction-mode-active{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--danger),#ef4444)}.translation-display-paper{margin-top:1rem;background:#eef8fff5}.display-translation-label{margin:0 0 1rem;color:var(--brand-deep);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.display-message{margin:1rem 0 0;padding:.9rem 1rem;border-radius:16px;border:1px solid rgba(255,255,255,.25);background:#ffffffd1}.display-message.error{color:var(--danger);border-color:#b423182e;background:#fff1f2eb}.display-text{margin:0;color:#17202e;line-height:1.62;white-space:pre-wrap;font-family:var(--font-display)}.display-rich-editor{min-height:min(50vh,560px);color:#17202e;outline:none}.display-rich-editor:focus{outline:3px solid rgba(193,18,31,.18);outline-offset:.45rem}.display-rich-editor p,.display-rich-editor div{margin:0 0 .8rem}.display-rich-editor p:last-child,.display-rich-editor div:last-child{margin-bottom:0}.display-rich-editor .rich-feedback-original{color:#17202e}.display-rich-editor .rich-feedback-correction,.display-rich-editor font[color]{color:var(--danger)}@media (prefers-color-scheme: dark){:root{--bg: #101719;--bg-secondary: #15120e;--surface: rgba(24, 30, 32, .94);--panel: #1b2224;--border: rgba(226, 232, 240, .14);--input-border: rgba(226, 232, 240, .18);--text: #cbd5d9;--text-strong: #f8fafc;--muted: #94a3a8;--brand: #7aa2ff;--brand-deep: #9cc2ff;--accent: #5eead4;--accent-soft: rgba(15, 118, 110, .3);--brand-soft: rgba(37, 99, 235, .26);--brand-gradient: linear-gradient(135deg, #0f766e 0%, #3b82f6 100%);--brand-gradient-reverse: linear-gradient(135deg, #3b82f6 0%, #0f766e 100%);--color-writing: #fb923c;--color-writing-bg: rgba(154, 52, 18, .24);--color-review: #93c5fd;--color-review-bg: rgba(37, 99, 235, .2);--color-classes: #5eead4;--color-classes-bg: rgba(15, 118, 110, .22);--color-tools: #fda4af;--color-tools-bg: rgba(190, 18, 60, .2);--color-reports: #bef264;--color-reports-bg: rgba(77, 124, 15, .22);--paper: #16130f;--paper-soft: rgba(24, 30, 32, .9);--surface-tint: rgba(15, 118, 110, .18);--surface-blue-tint: rgba(37, 99, 235, .18);--shadow: 0 16px 42px rgba(0, 0, 0, .32);--soft-shadow: 0 12px 30px rgba(0, 0, 0, .24)}body{background:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.02) 1px,transparent 1px),radial-gradient(circle at 12% -10%,rgba(154,52,18,.22),transparent 30rem),radial-gradient(circle at 88% 8%,rgba(15,118,110,.16),transparent 28rem),linear-gradient(180deg,#16130f,#15120e 46%,#101719);background-size:28px 28px,28px 28px,auto,auto,auto}input,select,textarea{background:#0f1719b8;color:var(--text-strong)}select option{background:#151a1c;color:var(--text-strong)}button,.btn{border-color:#e2e8f024;background:linear-gradient(180deg,#1e292beb,#161c1edb);color:var(--text-strong)}button:hover,.btn:hover{background:#222c2ef5;box-shadow:0 14px 30px #0000003d}button.primary,.btn.primary,button[type=submit]{color:#fff;border-color:transparent;background:linear-gradient(135deg,#3b82f6,#0f766e)}button.primary:hover,.btn.primary:hover,button[type=submit]:hover{background:linear-gradient(135deg,#2563eb,#0e7490)}.surface-card,.teacher-dashboard-tabs,.teacher-tab-panel,.teacher-tab-panel-quick-prompts .quick-prompts-section,.quick-prompts-flow-rail,.quick-prompt-flow-step,.quick-prompt-card,.quick-prompt-empty,.quick-prompt-export-panel,.quick-prompt-form,.quick-prompt-response-row,.quick-prompt-copy,.form-step,.role-card,.lti-open-full-card,.lti-launch-card,.lti-topbar,.lti-panel,.lti-response-row,.lti-activity-form,.lti-readonly-field,.quick-prompt-template-card,.quick-prompt-empty-stats span{background-color:#181e20db}.teacher-tab-icon,.quick-prompt-step-number,.quick-prompt-stepper span,.quick-prompt-progress-ring>span,.quick-prompt-template-icon,.quick-prompt-empty-illustration:before{background-color:#161c1eeb}.teacher-tab-button:hover,.teacher-tab-button.is-active,.quick-prompt-inline-create,.quick-prompt-template-card:hover{background:#1e292bf0}.quick-prompt-empty-illustration:before{box-shadow:0 14px 24px #00000038}.quick-prompt-empty-illustration span{background:#2563eb38}.access-corner{border-color:#93c5fd29;background:#2563eb33;color:var(--brand-deep)}.access-corner.paid{background:#0f766e33;color:var(--accent)}.teacher-header-actions .auth-chip{color:var(--muted)}.teacher-header-actions .usage-chip{border-color:#5eead429;background:#0f766e2e;color:#a7f3d0}.teacher-header-nav .btn,.teacher-header-nav button{border-color:#e2e8f024;background:#161c1ec7;color:var(--text-strong)}}@media (max-width: 980px){.role-grid,.student-layout,.classroom-layout,.anonymous-grader-grid,.dashboard-layout,.quick-prompt-modal-grid,.quick-prompt-export-head,.quick-prompts-workspace,.quick-prompt-main-fields,.quick-prompt-settings-grid,.access-gate-layout,.stats-grid{grid-template-columns:1fr}.quick-prompts-workflow-head,.quick-prompt-card-main{display:grid;grid-template-columns:1fr}.quick-prompts-head-actions,.quick-prompt-workflow-actions,.quick-prompt-primary-actions,.quick-prompt-secondary-actions{justify-content:flex-start}.toolbar-grid,.review-filter-panel .toolbar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-search-filter,.review-task-filter{grid-column:span 2}.review-class-filter,.review-account-filter,.review-title-filter,.review-type-filter,.review-sort-filter,.review-filter-names-toggle{grid-column:span 1}.quick-prompt-advice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-prompt-goal-grid,.goal-settings-grid,.goal-settings-grid.two-column,.student-form-panel form,.student-info-grid,.student-helper-panel,.student-stats{grid-template-columns:1fr}.student-helper-panel>.quick-start-list,.student-helper-panel>.draft-note,.student-helper-panel>.quick-prompt-mini-panel{grid-column:1}.quick-prompt-identity-row,.translation-panel{grid-template-columns:1fr}.class-setup-header{flex-direction:column;align-items:stretch}.class-setup-summary{justify-content:flex-start}.inline-translation-select{width:100%;justify-content:space-between}.inline-translation-select select{flex:1;min-width:0}.teacher-dashboard-tabs{grid-template-columns:repeat(3,minmax(150px,1fr))}.access-gate-hero{grid-template-columns:1fr}.access-gate-account{justify-self:stretch;max-width:none}}@media (max-width: 720px){.page-shell{padding:1rem .85rem 2.5rem}.page-header{flex-direction:column;align-items:stretch}.teacher-dashboard-header{padding-top:0}.access-corner{position:static;align-self:flex-start;border:1px solid rgba(37,99,235,.14);border-radius:8px;margin-bottom:-.15rem}.teacher-header-actions{justify-items:stretch;min-width:0}.teacher-account-strip,.teacher-header-nav{justify-content:flex-start}.teacher-header-actions .auth-chip{max-width:100%}.toolbar-grid,.request-form-grid,.detail-facts,.grade-editor,.student-stats,.review-filter-panel .toolbar-grid{grid-template-columns:1fr}.review-search-filter,.review-class-filter,.review-task-filter,.review-account-filter,.review-title-filter,.review-type-filter,.review-sort-filter,.review-filter-names-toggle{grid-column:span 1}.review-filter-panel .toggle-row{justify-content:flex-start}.submission-select-row,.panel-actions,.local-draft-panel,.quick-prompt-banner,.quick-prompt-response-anchor,.quick-prompt-response-drawer-head,.review-task-summary,.review-task-accordion-head,.review-legacy-head{flex-direction:column;align-items:stretch}.review-task-group-head{grid-template-columns:1fr}.review-task-expand-button{flex-direction:column;align-items:stretch}.review-task-count{align-self:flex-start}.review-task-group-actions{justify-content:stretch}.review-task-group-actions button{flex:1 1 150px}.quick-prompt-card-heading{flex-direction:column;gap:.55rem}.quick-prompt-card-kicker{justify-content:flex-start}.quick-prompt-mode-toggle{grid-template-columns:1fr}.quick-prompt-workflow-actions>*,.quick-prompt-primary-actions>*,.quick-prompt-secondary-actions>*{flex:1 1 160px}.quick-prompt-advice-grid,.quick-prompt-live-stats{grid-template-columns:1fr}.quick-prompt-advice-popup-overlay{padding:.55rem}.quick-prompt-advice-popup{width:100%;min-height:calc(100dvh - 1.1rem);padding:1rem .85rem}.quick-prompt-advice-popup h2{margin:0 2.1rem .8rem}.advice-popup-lead{text-align:left}.advice-popup-bar-row{grid-template-columns:1fr;gap:.35rem}.advice-popup-bar-row>strong{text-align:left}.modal-overlay.quick-prompt-overlay{align-items:flex-start}.modal-card.quick-prompt-modal{max-height:none}.quick-prompt-left-column,.quick-prompt-side-column{max-height:none;overflow:visible}.portfolio-filter-row{border-radius:18px}.button-row>*{flex:1 1 180px}.teacher-access-gate-card h1{font-size:clamp(2rem,12vw,2.8rem)}.pricing-row{grid-template-columns:1fr;gap:.75rem}.pricing-row-action{justify-items:stretch}.pricing-row-action strong{white-space:normal}.pricing-row-action button{width:100%}.home-topbar{align-items:flex-start;flex-direction:column;gap:.65rem}.home-status-pill{align-self:flex-start}.teacher-dashboard-tabs{grid-template-columns:repeat(5,minmax(150px,1fr));padding:.35rem}.teacher-tab-button{grid-template-columns:30px minmax(0,1fr);min-height:60px;padding:.68rem .72rem}.teacher-tab-icon{width:30px;height:30px}.teacher-tab-label{font-size:.9rem}.quick-prompts-section{padding:.85rem}.quick-prompts-head-actions .primary{width:100%}.quick-prompts-flow-rail{padding:.65rem}.quick-prompt-empty{min-height:0}.quick-prompt-empty-primary{padding:1.35rem .75rem}.quick-prompt-empty-stats,.quick-prompt-template-gallery{grid-template-columns:1fr}.teacher-tool-row{grid-template-columns:1fr;align-items:stretch}.hero-panel{padding:1.3rem 1.1rem}.display-toolbar{padding:.85rem}.display-toolbar select{width:100%;max-width:none}.display-position{width:100%;margin-left:0}.display-paper{border-radius:24px}}.date-view-selectors{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-bottom:1.25rem}.date-view-table{width:100%;border-collapse:collapse;margin-top:.5rem}.date-view-table th{text-align:left;padding:.55rem .75rem;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid var(--border)}.date-view-table td{padding:.6rem .75rem;border-bottom:1px solid var(--border);vertical-align:middle}.date-view-table tr:last-child td{border-bottom:none}.date-view-table td:first-child{font-weight:600;color:var(--text-strong)}.btn-sm{padding:.3rem .75rem;font-size:.88rem}.notice-summary{display:grid;gap:.85rem}.notice-summary{padding:1rem;border:1px solid rgba(15,23,42,.12);border-radius:8px;background:#fffcf8f5}.notice-list{display:grid;gap:.55rem;margin:0;padding-left:1.15rem;color:var(--muted);line-height:1.6}.notice-list strong{color:var(--text-strong)}.home-privacy-notice{margin:1rem 0}@media (max-width: 720px){.date-view-selectors{grid-template-columns:1fr}}.lti-shell{max-width:none;padding:.75rem .9rem 1.4rem}.lti-shell-fullscreen{max-width:1460px;padding:1rem 1.1rem 3rem}.lti-shell-fullscreen.student-page-shell{max-width:min(1680px,100vw)}.lti-shell .eyebrow{margin:0 0 .35rem;letter-spacing:0}.lti-shell,.lti-shell .surface-card,.lti-shell .teacher-tab-panel,.lti-shell .quick-prompt-flow-step,.lti-shell .submission-card,.lti-shell .saved-submission-card{min-width:0;overflow-wrap:anywhere}.lti-shell-embedded{display:grid;min-height:52vh;place-items:center}.lti-open-full-card{display:grid;gap:.85rem;width:min(100%,620px);padding:1.15rem;border:1px solid rgba(15,118,110,.14);border-radius:10px;background:linear-gradient(180deg,#fffdf8f5,#f0fdfa8f);box-shadow:var(--soft-shadow)}.lti-open-full-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.lti-open-full-card h1{margin:0;color:var(--text-strong);font-size:clamp(1.35rem,2.8vw,2rem);line-height:1.15;overflow-wrap:anywhere}.lti-open-full-card p{margin:0;color:var(--muted);line-height:1.55}.lti-open-full-copy{padding-top:.2rem}.lti-open-full-actions{display:flex;justify-content:flex-end}.lti-moodle-pill{display:inline-flex;align-items:center;min-height:28px;padding:.28rem .6rem;border-radius:999px;border:1px solid rgba(15,118,110,.18);background:#f0fdfad1;color:var(--accent);font-size:.78rem;font-weight:850}.lti-readonly-field{display:grid;gap:.18rem;padding:.78rem .85rem;border:1px solid rgba(37,99,235,.12);border-radius:12px;background:#fffdf8c7;min-width:0}.lti-readonly-field span{color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.lti-readonly-field strong{color:var(--text-strong);overflow-wrap:anywhere}.lti-readonly-field p{margin:0;color:var(--muted);overflow-wrap:anywhere}.lti-quick-prompts-workspace{grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr)}.lti-activity-form{display:grid;gap:.85rem;padding:1rem;border:1px solid rgba(15,118,110,.14);border-radius:14px;background:linear-gradient(180deg,#f0fdfa94,#fffdf8e6)}.lti-activity-form textarea{min-height:220px}.lti-teacher-preview{margin-top:1rem}.lti-shell-fullscreen .teacher-dashboard-tabs{grid-template-columns:repeat(3,minmax(150px,1fr));margin-bottom:0}.lti-launch-card{display:flex;align-items:center;gap:.85rem;max-width:680px;padding:1rem;border:1px solid rgba(15,118,110,.14);border-radius:10px;background:linear-gradient(180deg,#fffdf8f5,#eff6ff7a)}.lti-launch-card h1{margin:0 0 .25rem;font-size:1.35rem}.lti-launch-card p{margin:0;color:var(--muted)}.lti-launch-card-error{align-items:flex-start}.lti-topbar{display:flex;align-items:center;justify-content:space-between;gap:.9rem;min-height:54px;margin-bottom:.75rem;padding:.65rem .75rem;border:1px solid rgba(15,118,110,.14);border-radius:10px;background:linear-gradient(180deg,#fffdf8f5,#f0fdfa75);box-shadow:var(--soft-shadow)}.lti-title-block{display:flex;align-items:center;min-width:0;gap:.65rem;overflow-wrap:anywhere}.lti-topbar .lti-brand{flex:0 0 auto}.lti-topbar .lti-brand .quickwrite-logo-icon{width:30px;height:30px}.lti-topbar .lti-brand .quickwrite-logo-word{display:none}.lti-shell-fullscreen .lti-topbar .lti-brand .quickwrite-logo-icon{width:38px;height:38px}.lti-shell-fullscreen .lti-topbar .lti-brand .quickwrite-logo-word{display:inline-flex;font-size:1.32rem}.lti-fullscreen-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin-bottom:.15rem;color:var(--muted);font-size:.82rem;font-weight:800}.lti-title-block h1{margin:0;color:var(--text-strong);font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.2;overflow-wrap:anywhere}.lti-title-block p{margin:.12rem 0 0;color:var(--muted);font-size:.88rem;line-height:1.35}.lti-toolbar{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;gap:.55rem}.lti-toolbar button,.lti-panel-heading button,.lti-segmented button{min-height:36px}.lti-status-message{margin:0 0 .75rem}.lti-workspace{display:grid;gap:.75rem}.lti-segmented{display:inline-flex;align-items:center;width:fit-content;max-width:100%;padding:.18rem;border:1px solid rgba(37,99,235,.12);border-radius:10px;background:#fffdf8c7}.lti-segmented button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.45rem .8rem;border:0;border-radius:8px;background:transparent;color:var(--muted);box-shadow:none;font-weight:800}.lti-segmented button.is-active{background:#fffffff0;color:var(--brand-deep);box-shadow:0 4px 14px #1c4a7614}.lti-segmented span{min-width:1.45rem;padding:.08rem .42rem;border-radius:999px;background:var(--color-review-bg);color:var(--color-review);font-size:.78rem}.lti-setup-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);gap:.75rem;align-items:start}.lti-student-view{grid-template-columns:minmax(260px,.72fr) minmax(420px,1.28fr);align-items:start}.lti-panel{min-width:0;padding:.95rem;border:1px solid rgba(30,41,59,.1);border-radius:10px;background:linear-gradient(180deg,#fffdf8f2,#ffffffe0);box-shadow:var(--soft-shadow)}.lti-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.lti-panel-heading h2{margin:0;color:var(--text-strong);font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.25}.lti-panel-heading p{margin:.18rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.lti-form,.lti-field{display:grid;gap:.45rem}.lti-form{gap:.85rem}.lti-field label{color:var(--text-strong);font-size:.9rem;font-weight:800}.lti-form input,.lti-form textarea{width:100%}.lti-form textarea{resize:vertical}.lti-editor-panel textarea{min-height:180px}.lti-writing-panel textarea{min-height:340px}.lti-toggle-row{display:flex;align-items:center;gap:.65rem;padding:.75rem;border:1px solid rgba(37,99,235,.12);border-radius:10px;background:#eff6ff85}.lti-toggle-row input{width:auto}.lti-toggle-row span{display:grid;gap:.12rem}.lti-toggle-row strong{color:var(--text-strong)}.lti-toggle-row small{color:var(--muted);font-size:.82rem}.lti-form-actions{display:flex;justify-content:flex-end}.lti-prompt-text{margin:0;white-space:pre-wrap;line-height:1.65;color:var(--text-strong)}.lti-prompt-panel .lti-prompt-text,.lti-preview-panel .lti-prompt-text{max-height:16rem;overflow:auto;padding-right:.25rem}.lti-preview-writing{display:grid;gap:.45rem;margin-top:1rem;padding:.85rem;border:1px dashed rgba(15,118,110,.22);border-radius:10px;background:#f0fdfa8a}.lti-preview-writing span{height:.6rem;border-radius:999px;background:#5c748c2e}.lti-preview-writing span:nth-child(2){width:84%}.lti-preview-writing span:nth-child(3){width:58%}.lti-response-list{display:grid;gap:.55rem}.lti-response-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem .8rem;padding:.75rem;border:1px solid rgba(30,41,59,.1);border-radius:10px;background:#fffdf8eb}.lti-response-meta{min-width:0}.lti-response-meta h3{margin:0;color:var(--text-strong);font-size:1rem;line-height:1.25}.lti-response-meta p{margin:.16rem 0 0;color:var(--muted);font-size:.86rem;line-height:1.35;overflow-wrap:anywhere}.lti-response-preview{grid-column:1 / -1;max-height:9rem;margin:.2rem 0 0;overflow:auto;white-space:pre-wrap;color:var(--text-strong);line-height:1.65}.lti-empty-state{padding:1rem;border:1px dashed rgba(15,118,110,.22);border-radius:10px;background:#f0fdfa80}.lti-empty-state h3{margin:0 0 .3rem;color:var(--text-strong);font-size:1rem}.lti-empty-state p{margin:0;color:var(--muted)}.lti-endpoint-box{display:grid;gap:.35rem;padding:.9rem;margin:1rem 0;border:1px solid rgba(37,99,235,.12);border-radius:10px;background:#fffdf8c2}.lti-endpoint-box span{font-weight:700;color:var(--text-strong)}.lti-endpoint-box code{display:block;overflow-wrap:anywhere;font-size:.86rem;color:var(--muted)}@media (max-width: 920px){.lti-setup-grid,.lti-student-view,.lti-quick-prompts-workspace{grid-template-columns:1fr}}@media (max-width: 640px){.lti-shell{padding:.6rem .65rem 1rem}.lti-shell-fullscreen{padding:1rem .85rem 2.5rem}.lti-shell .teacher-dashboard-tabs{grid-template-columns:repeat(3,minmax(150px,1fr))}.lti-shell-embedded{min-height:48vh}.lti-open-full-actions{justify-content:stretch}.lti-open-full-actions .btn{width:100%}.lti-topbar,.lti-panel-heading{align-items:flex-start;flex-direction:column}.lti-toolbar{justify-content:flex-start;width:100%}.lti-toolbar>*,.lti-shell .button-row>*{flex:1 1 150px}.lti-segmented{width:100%}.lti-segmented button{flex:1 1 0}.lti-response-row{grid-template-columns:1fr}}
