:root{color:#171717;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--sidebar:#f7f7f8;--sidebar-border:#ececf1;--muted:#6b7280;--soft:#f4f4f5;--line:#e5e7eb;--text:#171717;--accent:#111827;--green:#10a37f;background:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer;border:0}#root{min-height:100vh}.qm-page{color:#f4fbff;background:#020914;grid-template-rows:auto auto 1fr auto;min-height:100vh;display:grid;position:relative;overflow:hidden}.qm-page:before{content:"";pointer-events:none;background:radial-gradient(circle at 82% 14%,#2dcbee2e,#0000 24%),radial-gradient(circle at 8% 52%,#1278a41f,#0000 30%),linear-gradient(#5fe6ff09 1px,#0000 1px) 0 0/64px 64px,linear-gradient(90deg,#5fe6ff09 1px,#0000 1px) 0 0/64px 64px;position:absolute;inset:0}.qm-page>*{z-index:1;position:relative}.qm-topbar{border-bottom:1px solid #63e7ff38;justify-content:space-between;align-items:center;gap:24px;width:min(1240px,100% - 48px);min-height:98px;margin:0 auto;display:flex}.qm-brand{color:inherit;letter-spacing:-.045em;white-space:nowrap;align-items:baseline;gap:.22em;font-size:clamp(25px,2.5vw,32px);font-weight:780;line-height:1;text-decoration:none;display:inline-flex}.qm-brand-quantum{color:#69e8f9}.qm-brand-mantis{color:#f7fcff}.qm-topbar-note{color:#87ddec;letter-spacing:.03em;font-size:clamp(15px,1.35vw,17px);font-weight:650}.qm-hero{grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr);align-items:center;gap:clamp(42px,6vw,84px);width:min(1240px,100% - 48px);margin:0 auto;padding:clamp(46px,6vw,78px) 0 clamp(44px,6vw,78px);display:grid}.qm-intro{min-width:0}.qm-kicker,.qm-product-label{color:#67e8f9;letter-spacing:.14em;text-transform:uppercase;margin:0 0 16px;font-size:12px;font-weight:780}.qm-intro h1{color:#f7fcff;letter-spacing:-.055em;text-wrap:balance;max-width:720px;margin:0;font-size:clamp(48px,6.5vw,84px);font-weight:680;line-height:.98}.qm-intro>p:last-child{color:#a9c4d4;letter-spacing:-.012em;max-width:650px;margin:28px 0 0;font-size:clamp(17px,1.8vw,20px);line-height:1.58}.qm-hero-art{background:#06111f;border:1px solid #6aeaff5c;border-radius:30px;justify-self:end;width:min(100%,520px);margin:0;position:relative;overflow:hidden;box-shadow:0 28px 90px #0000007a,0 0 70px #44d5f21f}.qm-hero-art:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 70px #4ae1ff14}.qm-hero-art img{width:100%;height:auto;display:block}.qm-products{grid-template-columns:repeat(2,minmax(0,1fr));align-self:start;gap:18px;width:min(1240px,100% - 48px);margin:0 auto;display:grid}.qm-product-card{border-radius:28px;flex-direction:column;gap:20px;min-width:0;min-height:500px;padding:22px;transition:transform .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 65px #0003}.qm-product-card:before{display:none}.qm-mira-card{color:#111827;background:linear-gradient(#fff 0%,#f7f7f8 100%);border:1px solid #dfe3e8}.qm-steam-card{color:#ecf0f5;background:linear-gradient(160deg,#1a222e 0%,#0b1420 100%);border:1px solid #33404d}.qm-snack-card{color:#132036;background:linear-gradient(#fff 0%,#eaf1f8 100%);border:1px solid #d5e0ec}.qm-sim-card{isolation:isolate;color:#f8f4ff;background:#020205;border:1px solid #ff41be80;box-shadow:0 24px 65px #00000061,0 0 48px #5b3fff1a}.qm-sim-card:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#020205 0% 45%,#020205b8 50%,#02020500 56%);position:absolute;inset:0}.qm-product-card:hover{transform:translateY(-5px);box-shadow:0 30px 75px #00000052}.qm-product-preview{border-radius:20px;flex:0 0 190px;height:190px;position:relative;overflow:hidden}.qm-mira-preview{color:#111827;background:#fff;border:1px solid #e3e6eb;grid-template-columns:48px 1fr;display:grid;box-shadow:0 12px 30px #0f172a14}.mira-preview-rail{background:#f4f4f5;border-right:1px solid #e5e7eb;flex-direction:column;align-items:center;gap:13px;padding:12px 9px;display:flex}.mira-preview-rail i{background:#d4d4d8;border-radius:999px;width:23px;height:6px}.mira-preview-workspace{flex-direction:column;gap:14px;min-width:0;padding:13px;display:flex}.mira-preview-bar{color:#6b7280;justify-content:space-between;gap:8px;font-size:9px;display:flex}.mira-preview-bar b{color:#111827;font-size:12px}.mira-preview-message{color:#4b5563;background:#fff;border:1px solid #e5e7eb;border-radius:14px 14px 14px 4px;gap:4px;width:84%;padding:12px;font-size:9px;line-height:1.35;display:grid}.mira-preview-message b{color:#111827}.mira-preview-prompt{color:#9ca3af;border:1px solid #d9d9df;border-radius:999px;justify-content:space-between;margin-top:auto;padding:9px 10px;font-size:9px;display:flex;box-shadow:0 5px 16px #0f172a14}.mira-preview-prompt span{color:#fff;background:#111827;border-radius:50%;place-items:center;width:18px;height:18px;margin:-5px -5px -5px 0;display:grid}.qm-steam-preview{--steam-teal:#35b9b3;--steam-orange:#ff9b57;color:#e5e7eb;background:#151d28;border:1px solid #3a4551;padding:15px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;box-shadow:inset 0 1px #ffffff0a}.steam-preview-brand{color:#e8edf3;letter-spacing:-.04em;font-size:13px}.steam-preview-brand span{color:var(--steam-teal)}.steam-preview-headline{color:#f2f4f7;text-align:center;max-width:280px;margin:20px auto 16px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:22px;font-weight:720;line-height:1.06}.steam-preview-headline em{color:var(--steam-orange);font-style:normal}.steam-preview-headline strong{color:var(--steam-teal)}.qm-steam-subjects{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.qm-steam-subjects span{background:#202833;border:1px solid #36414d;border-radius:9px;place-items:center;height:32px;font-size:11px;font-weight:800;display:grid}.steam-science{color:#ff655e}.steam-tech{color:var(--steam-teal)}.steam-engineering{color:#ac8df6}.steam-arts{color:var(--steam-orange)}.steam-math{color:#7bd957}.steam-preview-tools{grid-template-columns:1fr 1fr;gap:7px;margin-top:9px;display:grid}.steam-preview-tools span{color:#aeb8c6;text-align:center;background:#202833;border:1px solid #36414d;border-radius:9px;padding:7px;font-size:8px}.qm-snack-preview{color:#162033;background:#fff;border:1px solid #dce4ed;padding:15px;box-shadow:0 12px 30px #1d34531a}.snack-preview-header{align-items:center;gap:9px;display:flex}.snack-preview-header img{object-fit:contain;width:39px;height:39px}.snack-preview-header div{gap:1px;display:grid}.snack-preview-header b{font-size:12px}.snack-preview-header span{color:#4b5e78;font-size:9px}.snack-preview-items{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px;display:grid}.snack-preview-items span{color:#334155;text-align:center;background:#f8fafc;border:1px solid #d9e1ea;border-radius:9px;min-width:0;padding:10px 4px;font-size:8px;font-weight:700}.snack-preview-total{color:#475569;justify-content:space-between;align-items:center;margin-top:12px;font-size:9px;display:flex}.snack-preview-total span{color:#047857;background:#d1fae5;border-radius:999px;padding:4px 7px;font-weight:750}.snack-preview-total b{color:#111827;font-size:14px}.snack-preview-action{color:#fff;text-align:center;background:#4f46e5;border-radius:9px;margin-top:9px;padding:9px;font-size:9px;font-weight:750}.qm-sim-preview{z-index:0;height:auto;box-shadow:none;background:0 0;border:0;border-radius:0;flex:none;display:block;position:absolute;inset:38px 10px 78px 52%;overflow:visible}.qm-sim-preview img{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.qm-card-copy{flex:none;position:relative}.qm-sim-card .qm-card-copy{z-index:1;width:46%}.qm-sim-card .qm-product-description{max-width:285px}.qm-card-copy .qm-product-label{margin-bottom:10px;font-size:10px}.qm-mira-card .qm-product-label{color:#667085}.qm-steam-card .qm-product-label{color:#35b9b3}.qm-snack-card .qm-product-label{color:#2563eb}.qm-sim-card .qm-product-label{color:#ff5fc7}.qm-card-copy h2{letter-spacing:-.045em;margin:0;font-size:clamp(30px,3vw,39px);font-weight:680;line-height:1.02}.qm-mira-card .qm-card-copy h2{color:#111827}.qm-steam-card .qm-card-copy h2{color:#f1f5f9;letter-spacing:-.055em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(27px,2.65vw,35px);font-weight:560}.qm-snack-card .qm-card-copy h2{color:#111827}.qm-sim-card .qm-card-copy h2{color:#f9f4ff;text-shadow:0 0 18px #ff2ebd38}.qm-product-tagline{letter-spacing:-.02em;margin:15px 0 0;font-size:18px;font-weight:620;line-height:1.28}.qm-mira-card .qm-product-tagline{color:#263244}.qm-steam-card .qm-product-tagline{color:#d9e0e8}.qm-snack-card .qm-product-tagline{color:#24364f}.qm-sim-card .qm-product-tagline{color:#eee7ff}.qm-product-description{margin:13px 0 0;font-size:14px;line-height:1.52}.qm-mira-card .qm-product-description{color:#667085}.qm-steam-card .qm-product-description{color:#94a3b3}.qm-snack-card .qm-product-description{color:#52657e}.qm-sim-card .qm-product-description{color:#afa6c5}.qm-product-link{border:0;border-radius:999px;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:48px;padding:0 17px;font-size:14px;font-weight:760;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex;position:relative}.qm-mira-card .qm-product-link{color:#fff;background:#111827}.qm-steam-card .qm-product-link{color:#0b1420;background:#d8f4f1}.qm-snack-card .qm-product-link{color:#fff;background:#4f46e5}.qm-sim-card .qm-product-link{z-index:1;color:#fff;background:linear-gradient(90deg,#f02aa7 0%,#7d3cff 58%,#3478ff 100%);margin-top:auto;box-shadow:0 0 24px #f02aa72e}.qm-product-link:hover{box-shadow:0 10px 28px #0f172a33}.qm-product-link:active{transform:scale(.98)}.qm-product-link:focus-visible,.qm-brand:focus-visible{outline-offset:4px;outline:3px solid #fff}.qm-footer{color:#7896a7;border-top:1px solid #63e7ff33;justify-content:space-between;align-items:center;gap:24px;width:min(1240px,100% - 48px);min-height:96px;margin:50px auto 0;padding:28px 0;font-size:13px;display:flex}.qm-footer span:first-child{color:#73eaff;font-weight:740}.qm-footer a{color:#9ab7c6;text-underline-offset:3px;text-decoration:underline}@media (width<=900px){.qm-hero{grid-template-columns:1fr;gap:38px}.qm-hero-art{justify-self:start;width:min(100%,620px)}}@media (width<=760px){.qm-topbar,.qm-hero,.qm-products,.qm-footer{width:min(100% - 32px,1240px)}.qm-topbar{min-height:84px}.qm-brand{font-size:27px}.qm-topbar-note{display:none}.qm-hero{padding:44px 0 42px}.qm-intro h1{font-size:clamp(44px,14vw,64px)}.qm-intro>p:last-child{margin-top:22px}.qm-hero-art{border-radius:24px}.qm-products{grid-template-columns:1fr}.qm-product-card{border-radius:24px;min-height:410px}.qm-card-copy h2{font-size:clamp(32px,10vw,42px)}.qm-sim-card{min-height:570px}.qm-sim-card .qm-card-copy{width:100%}.qm-sim-preview{z-index:1;flex:0 0 210px;width:100%;height:210px;position:relative;inset:auto}.qm-sim-card .qm-product-link{margin-top:0}.qm-sim-card:after{background:linear-gradient(#020205 0%,#020205b3 58%,#02020500 82%)}.qm-footer{flex-direction:column;align-items:flex-start;margin-top:36px}}@media (prefers-reduced-motion:reduce){.qm-product-card,.qm-product-link{transition:none}.qm-product-card:hover{transform:none}}.terms-page{color:#1f2937;background:#f5f7fa;min-height:100vh;padding:48px 20px}.terms-document{background:#fff;border:1px solid #e3e7ee;border-radius:28px;width:min(820px,100%);margin:0 auto;padding:clamp(28px,5vw,56px);box-shadow:0 24px 70px #0f172a14}.terms-back,.login-terms a,.account-terms{color:#334e9b;text-underline-offset:3px;font-weight:700;text-decoration:underline}.terms-brand{color:#5b6473;letter-spacing:.1em;text-transform:uppercase;margin:30px 0 8px;font-size:12px;font-weight:760}.terms-document h1{color:#111827;letter-spacing:-.05em;margin:0;font-size:clamp(38px,7vw,58px);line-height:1}.terms-effective{color:#5b6473}.terms-document>p{line-height:1.7}.terms-document section{margin-top:32px}.terms-document h2{color:#111827;margin:0 0 10px;font-size:21px}.terms-document section p,.terms-document li{color:#4b5563;line-height:1.7}.terms-document section p{margin:10px 0}.terms-document ul{margin:12px 0 0;padding-left:22px}.terms-document li+li{margin-top:7px}.login-terms{text-align:center;margin:12px 0 0;font-size:12px}.account-terms{margin-top:16px;font-size:13px;display:inline-block}@media (width<=640px){.terms-page{padding:16px 12px}.terms-document{border-radius:20px}}.login-page{background:linear-gradient(#fff 0%,#f7f7f8 100%);place-items:center;min-height:100vh;padding:32px;display:grid}.login-card{border:1px solid var(--line);background:#ffffffeb;border-radius:28px;width:min(480px,100%);padding:36px;box-shadow:0 24px 80px #0f172a14}.eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:20px 0 10px;font-size:13px;font-weight:650}.login-card>.eyebrow{margin-top:0}.login-card h1{letter-spacing:-.04em;margin:0;font-size:36px;line-height:1.05}.login-copy,.notice{color:var(--muted);line-height:1.5}.login-copy{margin:16px 0 26px}.notice{margin:22px 0 0;font-size:13px}.login-form{gap:14px;display:grid}label{color:#374151;gap:8px;font-size:14px;font-weight:600;display:grid}input{border:1px solid var(--line);background:#fff;border-radius:14px;outline:none;width:100%;padding:13px 14px}input:focus{border-color:#a1a1aa;box-shadow:0 0 0 4px #1118270f}.login-form button,.header-actions button,.student-card button,.topbar button,.profile-card button,.workspace-head button,.doc-row button{background:var(--accent);color:#fff;border-radius:999px;padding:12px 16px;font-weight:650}button.secondary,.header-actions button.secondary{background:var(--soft);color:var(--text)}.login-form button:disabled{cursor:not-allowed;opacity:.55}.form-error{color:#b91c1c;background:#fef2f2;border-radius:12px;margin:-2px 0 0;padding:10px 12px;font-size:13px}.app-shell{background:#fff;grid-template-columns:280px minmax(0,1fr);height:100vh;display:grid}.sidebar{background:var(--sidebar);border-right:1px solid var(--sidebar-border);flex-direction:column;justify-content:space-between;gap:16px;min-height:0;padding:14px;display:flex}.sidebar-top{flex-direction:column;gap:14px;min-height:0;display:flex}.brand-row{align-items:center;gap:10px;padding:4px 4px 10px;display:flex}.new-chat{text-align:left;width:100%;color:var(--text);border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 14px}nav{gap:4px;display:grid}nav button,.sidebar-section button{color:#333;text-align:left;background:0 0;border-radius:12px;width:100%;padding:10px 12px;text-decoration:none;display:block}nav button.active,nav button:hover,.sidebar-section button:hover{background:#ececf0}.sidebar-section{min-height:0;overflow:auto}.sidebar-section p{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:18px 10px 8px;font-size:12px;font-weight:700}.profile-card{border:1px solid var(--line);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:8px;padding:10px;font-size:14px;display:flex}.profile-card button{padding:7px 10px;font-size:12px}.status-dot{background:var(--green);border-radius:999px;width:9px;height:9px}.chat-panel{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100vh;min-height:0;display:grid}.chat-panel:has(.active-project-switcher){grid-template-rows:auto auto minmax(0,1fr) auto}.topbar{border-bottom:1px solid #f1f1f2;justify-content:space-between;align-items:center;height:58px;padding:0 22px;display:flex}.topbar div{align-items:baseline;gap:10px;display:flex}.topbar span{color:var(--muted);font-size:13px}.topbar button{background:var(--soft);color:var(--text);padding:9px 12px}.active-project-switcher{border-bottom:1px solid var(--line);background:#fbfbfc;grid-template-columns:auto minmax(180px,320px) 1fr;align-items:center;gap:10px;padding:10px 22px;display:grid}.active-project-switcher label{font-size:13px;font-weight:800}.active-project-switcher select{border:1px solid var(--line);width:100%;color:var(--text);background:#fff;border-radius:12px;padding:9px 12px}.active-project-switcher span{color:var(--muted);font-size:12px}.chat-main{align-content:center;justify-items:center;min-height:0;padding:32px 20px;display:grid;overflow:hidden auto}.chat-main.with-thread{grid-template-rows:minmax(0,1fr);align-content:start;gap:20px}.message-thread{align-self:safe end;gap:16px;width:min(780px,100%);display:grid}.bubble{border-radius:20px;max-width:78%;padding:14px 16px;line-height:1.5}.bubble.user{background:#f4f4f5;justify-self:end}.bubble.assistant{border:1px solid var(--line);background:#fff;justify-self:start}.message-author{margin-bottom:7px;display:block}.message-content{overflow-wrap:anywhere;min-width:0}.message-content>:first-child{margin-top:0}.message-content>:last-child{margin-bottom:0}.message-content p{margin:0 0 .78em;line-height:1.55}.message-content ol,.message-content ul{margin:.45em 0 .9em;padding-left:1.55em}.message-content li{margin:.32em 0;padding-left:.15em}.message-content li>p{margin:0}.message-content blockquote{border-left:3px solid var(--line);color:var(--muted);margin:.75em 0;padding:.15em 0 .15em .9em}.message-content code{background:var(--soft);border-radius:5px;padding:.12em .32em;font-size:.92em}.message-content pre{color:#f9fafb;background:#111827;border-radius:10px;max-width:100%;padding:12px;overflow-x:auto}.message-content pre code{color:inherit;background:0 0;padding:0}.message-content a{color:#2563eb;text-underline-offset:2px;text-decoration:underline}.student-card:hover,.workspace-card:hover{box-shadow:0 10px 30px #0f172a0f}.composer-wrap{padding:16px 20px 24px}.composer{border:1px solid #d9d9df;border-radius:28px;align-items:center;gap:8px;width:min(820px,100%);min-height:58px;margin:0 auto;padding:8px;display:flex;box-shadow:0 8px 30px #0f172a14}.composer textarea{box-shadow:none;resize:none;field-sizing:content;min-height:42px;max-height:180px;line-height:22px;font:inherit;border:0;flex:1;padding:10px}.composer button{background:var(--soft);border-radius:999px;width:38px;height:38px}.composer button.send{background:var(--accent);color:#fff}.composer-wrap p{text-align:center;color:var(--muted);margin:10px 0 0;font-size:12px}.workspace-main{background:#fbfbfc;padding:34px;overflow:auto}.workspace-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.workspace-head .eyebrow{margin:0 0 8px}.workspace-head h1{letter-spacing:-.04em;margin:0;font-size:38px}.workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.workspace-card{border:1px solid var(--line);background:#fff;border-radius:24px;padding:22px;transition:box-shadow .16s,transform .16s}.workspace-card.project-tile{width:100%;color:var(--text);text-align:left}.workspace-card.primary{background:#fcfcff;border-color:#c7d2fe}.workspace-card h2{margin:0 0 10px;font-size:20px}.workspace-card p{color:var(--muted);margin:0 0 18px;line-height:1.5}.workspace-card span{color:var(--muted);font-size:13px}.doc-list{gap:10px;display:grid}.sort-row{color:var(--muted);align-items:center;gap:8px;margin:-4px 0 16px;display:flex}.sort-row button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 12px}.sort-row button.active{color:#fff;background:#111827;border-color:#111827}.project-actions{flex-wrap:wrap;gap:10px;margin:-4px 0 18px;display:flex}.project-actions button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px}.doc-row{border:1px solid var(--line);background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;padding:16px;display:flex}.doc-row span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.doc-row button{padding:9px 14px}.admin-main{background:#fbfbfc;padding:28px;overflow:auto}.admin-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.admin-header h1{letter-spacing:-.04em;margin:0;font-size:38px}.admin-header .eyebrow{margin:0 0 8px}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.active-strip{border:1px solid var(--line);background:#fff;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-bottom:18px;padding:16px 18px;display:grid}.active-strip span,.active-strip aside{color:var(--muted)}.student-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.student-card{border:1px solid var(--line);background:#fff;border-radius:24px;padding:20px;transition:box-shadow .16s,transform .16s}.student-card.clickable{width:100%;color:var(--text);text-align:left}.student-card:hover{transform:translateY(-1px)}.student-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.student-card h2{letter-spacing:-.02em;margin:0;font-size:20px}.student-card p{color:var(--muted);margin:12px 0 18px}.pill{background:var(--soft);color:#52525b;white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px}.pill.green{color:#047857;background:#10a37f1f}.pill.red{color:#b91c1c;background:#fee2e2}.student-card.paused{background:snow;border-color:#fca5a5}.active-strip.safety-active{background:#fff7f7;border-color:#fca5a5}.chat-pause-notice{color:#7f1d1d;background:#fff7f7;border:1px solid #fca5a5;border-radius:16px;gap:4px;width:min(780px,100%);padding:14px 16px;display:grid}.chat-pause-notice span{font-size:13px;line-height:1.45}.safety-panel{background:snow;border:1px solid #fecaca;border-radius:22px;margin-bottom:18px;padding:18px}.safety-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.safety-panel-head .eyebrow{color:#b91c1c;margin:0 0 5px}.safety-panel-head h2{margin:0}.safety-list{gap:10px;display:grid}.safety-flag{border:1px solid var(--line);background:#fff;border-left:4px solid #f59e0b;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:18px;padding:14px;display:flex}.safety-flag.severity-high,.safety-flag.severity-urgent{border-left-color:#dc2626}.safety-flag>div:first-child{gap:5px;min-width:0;display:grid}.safety-flag span,.safety-flag small{color:var(--muted);font-size:12px}.safety-flag p{overflow-wrap:anywhere;margin:4px 0 0;line-height:1.45}.safety-flag-actions{flex:none;justify-items:end;gap:8px;display:grid}.safety-flag-actions button,.safety-actions button{padding:9px 13px}.safety-actions{justify-content:flex-end;margin:-8px 0 18px;display:flex}.role-pill{color:#4338ca;white-space:nowrap;background:#eef2ff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800}.role-owner{color:var(--green);background:#ecfdf3}.role-admin{color:#2563eb;background:#eff6ff}.role-faculty{color:#c2410c;background:#fff7ed}.role-student{color:#3f3f46;background:#f4f4f5}dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;display:grid}dt{color:var(--muted);font-size:12px}dd{margin:2px 0 0;font-weight:650}.student-card button{width:100%}@media (width<=850px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.student-grid,.active-strip,.workspace-grid{grid-template-columns:1fr}.admin-header,.workspace-head{flex-direction:column;align-items:flex-start}.bubble{max-width:92%}}.account-card{border:1px solid var(--line);width:100%;color:var(--text);text-align:left;background:#fff;border-radius:16px;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.account-card:hover{background:#fafafa;box-shadow:0 8px 24px #0f172a0f}.account-avatar{color:#fff;background:#111827;border-radius:999px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.account-text{gap:2px;min-width:0;display:grid}.account-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.account-text small{color:var(--muted);text-transform:capitalize}.account-caret{color:var(--muted);font-weight:800}.modal-backdrop{z-index:50;background:#0f172a61;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.account-modal{background:#fff;border-radius:26px;gap:14px;width:min(520px,100%);padding:24px;display:grid;box-shadow:0 28px 90px #0f172a42}.modal-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.modal-head .eyebrow{margin:0 0 8px}.modal-head h2{letter-spacing:-.03em;margin:0 0 4px;font-size:28px}.modal-head span,.account-summary p{color:var(--muted)}.icon-button{background:var(--soft);border-radius:999px;width:36px;height:36px;font-size:22px}.account-summary{border:1px solid var(--line);background:#fbfbfc;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.account-summary p{margin:0;font-size:13px}.account-modal>button,.modal-actions button{background:var(--accent);color:#fff;border-radius:999px;padding:12px 16px;font-weight:650}.account-modal>button:disabled{cursor:not-allowed;opacity:.55}.form-success{color:#047857;background:#ecfdf3;border-radius:12px;margin:-2px 0 0;padding:10px 12px;font-size:13px}.modal-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:14px;display:flex}.modal-actions button.secondary{background:var(--soft);color:var(--text)}textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:110px;font:inherit;background:#fff;border-radius:14px;outline:none;padding:13px 14px}textarea:focus{border-color:#a1a1aa;box-shadow:0 0 0 4px #1118270f}.head-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.workspace-head button.secondary,.head-actions button.secondary{background:var(--soft);color:var(--text)}.project-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.project-overview article,.empty-card,.summary-stack article,.doc-preview{border:1px solid var(--line);background:#fff;border-radius:18px;padding:16px}.project-overview span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;font-size:12px;font-weight:800;display:block}.project-overview strong{font-size:18px;display:block}.project-overview p,.empty-card p,.modal-copy,.summary-stack p{color:var(--muted);margin:8px 0 0;line-height:1.5}.project-context-card{text-align:left;width:100%;color:var(--text);background:#fcfcff;border:1px solid #c7d2fe;border-radius:20px;gap:6px;margin-bottom:18px;padding:18px;display:grid}.project-context-card span{color:#4338ca;letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:800}.project-context-card strong{font-size:20px}.project-context-card p{color:var(--muted);margin:0;line-height:1.45}.project-context-card small{color:var(--muted)}.project-context-editor textarea{min-height:420px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.55}.autosave-status{color:#047857;justify-self:end;font-size:13px;font-weight:750}.autosave-status.error{color:#b91c1c}.project-modal{max-height:min(760px,100vh - 40px);overflow:auto}.google-doc-instructions{background:#f5f7ff;border:1px solid #c7d2fe;border-radius:16px;margin-bottom:14px;padding:14px}.google-doc-instructions strong{color:#3730a3;display:block}.google-doc-instructions p{color:var(--muted);margin:6px 0 0;line-height:1.5}.project-modal input[type=file]{background:#fafaff;border:1px dashed #a5b4fc;padding:10px}.project-modal input[type=file]::file-selector-button{color:#fff;font:inherit;cursor:pointer;background:#4338ca;border:0;border-radius:10px;margin-right:12px;padding:8px 12px;font-weight:750}.format-guidance{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 14px;display:grid}.format-guidance span{background:var(--soft);color:var(--muted);border-radius:12px;padding:10px 12px;font-size:13px}.format-guidance strong{color:var(--text);display:block}.modal-list{margin-top:10px}.modal-actions.right{justify-content:flex-end}.summary-stack{gap:12px;display:grid}.summary-stack ol{color:var(--muted);margin:8px 0 0 20px;line-height:1.6}.doc-preview{min-height:120px;color:var(--muted);text-align:center;place-items:center;display:grid}.danger-outline{color:#b91c1c!important;background:#fff!important;border-color:#fecaca!important}button.danger{color:#fff;background:#dc2626}.danger-copy{color:#991b1b}.delete-summary{background:#fef2f2;border:1px solid #fecaca;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.delete-summary span{color:#991b1b;font-size:13px}.safety-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.safety-filters label,.review-grid label,.review-form label{color:var(--muted);gap:6px;font-size:12px;font-weight:700;display:grid}.safety-filters select,.review-grid select{border:1px solid var(--line);width:100%;color:var(--text);font:inherit;background:#fff;border-radius:12px;padding:10px 12px}.safety-flag-main{flex:auto;gap:6px;min-width:0;display:grid}.review-grid{grid-template-columns:minmax(150px,.45fr) minmax(240px,1fr);gap:10px;margin-top:8px;display:grid}.review-grid textarea{min-height:76px}.review-form{background:#fff7f7;border:1px solid #fca5a5;border-radius:18px;grid-template-columns:1fr auto;align-items:end;gap:12px;margin:-8px 0 18px;padding:16px;display:grid}.review-form textarea{min-height:76px}.continuity-section{border:1px solid var(--line);background:#fff;border-radius:22px;margin-top:20px;padding:20px}.continuity-section>p{color:var(--muted);line-height:1.55}.chat-history-panel{border:1px solid var(--line);background:#fff;border-radius:22px;margin-top:20px;padding:20px}.chat-history-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.chat-history-head .eyebrow{margin:0 0 6px}.chat-history-head h2{margin:0}.chat-history-head p:last-child{color:var(--muted);margin:8px 0 0;line-height:1.5}.chat-history-head button{background:var(--soft);color:var(--text);border-radius:999px;flex:none;padding:10px 14px}.chat-history-controls{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;margin:18px 0;display:flex}.chat-history-controls label{min-width:min(280px,100%)}.chat-history-controls select{border:1px solid var(--line);width:100%;color:var(--text);font:inherit;background:#fff;border-radius:12px;padding:10px 12px}.day-sort{flex-wrap:wrap;gap:8px;display:flex}.day-sort button{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:999px;padding:9px 12px}.day-sort button.active{color:#fff;background:#111827;border-color:#111827}.chat-history-days{gap:18px;display:grid}.chat-history-day{border:1px solid var(--line);background:#fbfbfc;border-radius:18px;overflow:hidden}.chat-history-day>header{border-bottom:1px solid var(--line);background:#f4f4f5;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.chat-history-day h3{margin:0;font-size:16px}.chat-history-day header span{color:var(--muted);font-size:12px}.chat-history-thread{gap:10px;padding:14px;display:grid}.history-message{border:1px solid var(--line);background:#fff;border-radius:16px;width:min(88%,760px);padding:12px 14px}.history-message.student{background:#f4f4f5;justify-self:end}.history-message.system{background:#fffbeb;border-style:dashed}.history-message>.history-message-meta{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.history-message time{color:var(--muted);white-space:nowrap;font-size:12px}.history-message>.message-content{margin-top:7px}.section-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.section-heading h2{margin:0}.section-heading .eyebrow{margin:0 0 6px}.memory-list{gap:10px;margin-top:14px;display:grid}.memory-row{border:1px solid var(--line);background:#fbfbfc;border-radius:16px;justify-content:space-between;gap:16px;padding:14px;display:flex}.memory-row p{margin:6px 0;line-height:1.5}.memory-row small{color:var(--muted);text-transform:capitalize}.memory-row>div:last-child{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.guide-page{width:min(880px,100% - 40px);margin:0 auto;padding:48px 0 80px}.guide-page header{margin-bottom:28px}.guide-page section{border:1px solid var(--line);background:#fff;border-radius:20px;margin:14px 0;padding:20px}.guide-page li{margin:7px 0;line-height:1.5}@media (width<=850px){.safety-filters,.review-grid,.review-form{grid-template-columns:1fr}.safety-flag,.memory-row,.chat-history-head{flex-direction:column}.safety-flag-actions{justify-items:stretch}.history-message{width:96%}.project-overview{grid-template-columns:1fr}.active-project-switcher{grid-template-columns:1fr;padding:10px 16px}.active-project-switcher span{display:none}}
