/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.inline{display:inline}.table{display:table}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.clear-assignment{align-items:center;gap:10px;margin-top:14px;font-size:14px;display:flex}.clear-assignment input{accent-color:#0b9d63;width:18px;height:18px;min-height:0}body dialog.modal{width:calc(100% - 32px);height:fit-content;max-height:90dvh;margin:auto;position:fixed;inset:0;overflow:auto}.assignment-selectors{grid-template-columns:1fr 1fr;gap:16px;display:grid}.assignment-selectors .field{margin:8px 0}.subject-options{flex-wrap:wrap;gap:12px;display:flex}.subject-option{cursor:pointer;background:#fff;border:1px solid #dce9e1;border-radius:12px;align-items:center;gap:10px;min-width:100px;padding:13px 18px;font-size:16px;display:flex}.subject-option.selected{color:#087a4c;background:#e6f9ee;border-color:#0b9d63}.subject-option input{accent-color:#0b9d63;width:18px;height:18px;min-height:0;padding:0}.assignment-summary{background:#f2faf5;border-radius:14px;margin:18px 0;padding:18px}.assignment-summary p{margin-bottom:0;font-size:14px}.selected-courses{gap:8px;display:grid}.selected-courses>div{background:#fff;border:1px solid #e0eee4;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.assignment-empty{text-align:center;background:#f2faf5;border-radius:14px;margin:18px 0;padding:24px 18px}.assignment-empty>svg{color:#68a987;margin:0 auto 12px}.assignment-empty p{font-size:15px}.assignment-empty h3{font-size:20px}.assignment-empty .primary{margin:6px 0}.course-assignment>p{font-size:15px}.setup-notice{background:#f0fbf4;border:1px solid #cde9d8;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;padding:18px;display:flex}.setup-notice p{margin:0;font-size:15px}.setup-notice strong{margin-bottom:4px;display:block}@media (max-width:500px){.assignment-selectors{grid-template-columns:1fr}.subject-option{flex:1;justify-content:center}.selected-courses>div{font-size:14px}}html body{--ink:#123d34;--muted:#647c7a;--green:#0b9d63;--lime:#c9f25e;--line:#e0eee8;--bg:#effaf4;color:var(--ink);background:var(--bg)}body h1{letter-spacing:-.6px;margin-bottom:8px;font-size:clamp(28px,2.7vw,38px);font-weight:750}body small{font-size:13px}body .eyebrow{letter-spacing:1.2px;font-size:12px}body .brand small{font-size:10px}body .primary,body .subtle,body .text-button{border-radius:12px;min-height:42px;font-size:14px}body .primary{background:linear-gradient(110deg,#12ad6d,#089357);box-shadow:0 4px 12px #0a9f6315}body .primary:hover{background:#078654;box-shadow:0 6px 18px #07945525}body .subtle{color:#188758;border-color:#dcece4}body .tag{color:#1c9263;background:#e6f9ef;border-radius:8px;padding:6px 10px;font-size:13px}body input,body select,body textarea{border-color:#dbe9e2;border-radius:11px;min-height:46px;font-size:15px}body .field>span{font-size:14px}body .check-grid label{min-height:34px;font-size:14px;line-height:1.5}body .check-grid input{width:18px;height:18px;min-height:0}body legend{font-size:14px}body .sidebar{background:linear-gradient(#fff 60%,#edfdf5);border-right:1px solid #e0f0e8;width:240px;padding:28px 16px 22px}body .sidebar .brand{padding:0 8px;font-size:24px}body .brand-mark{color:#fff;background:linear-gradient(140deg,#37ce87,#11935c);border-radius:13px;box-shadow:0 4px 14px #1798631c}body .scope-card{background:#f3fbf7;border-color:#e2f0e9;border-radius:14px;margin:26px 0 18px;padding:14px 16px}body .scope-card>span:not(.eyebrow){font-size:13px}body .sidebar nav{gap:7px}body .sidebar nav button{color:#45625d;border-radius:13px;gap:15px;min-height:48px;padding:12px 15px;font-size:16px}body .sidebar nav button.active{color:#fff;background:linear-gradient(110deg,#11a966,#0b9c65);box-shadow:0 5px 14px #109d6420}body .sidebar-foot{font-size:13px}body .sidebar-foot small{font-size:12px}body .identity strong{font-size:15px}body .identity small{font-size:12px}body .avatar{color:#14845a;background:#ddf6e9;width:42px;height:42px;font-size:16px}body .sync-line{margin-bottom:22px;font-size:12px}body .page-heading p{max-width:700px;font-size:15px}body .welcome-banner{background:linear-gradient(120deg,#dff8e9,#edfbf0 70%,#e7f9cc);border:1px solid #e0f2e6;border-radius:20px;margin-bottom:20px;padding:26px 30px}body .welcome-banner h2{color:#164c37;font-size:28px}body .welcome-banner p{color:#64816f;font-size:16px}body .banner-art{display:none}body .stat-card{border:1px solid #e7f3ed;border-radius:18px;padding:24px;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 18px #26946b04}body .stat-card>strong{color:#173e34;font-size:34px}body .panel,body .task-card{border:1px solid #e8f3ee;border-radius:20px;padding:24px;box-shadow:0 4px 24px #168b6004}body .panel,body .panel-heading{margin-bottom:20px}body .panel-heading h2{padding-left:15px;font-size:23px;line-height:1.5;position:relative}body .panel-heading h2:before{content:"";background:#15b674;border-radius:4px;width:5px;position:absolute;top:6px;bottom:6px;left:0}body .panel-heading p{font-size:14px}body .school-grid{gap:16px}body .school-card{background:linear-gradient(140deg,#fff,#fbfefa);border-color:#e3efe8;border-radius:16px;padding:24px}body .school-card>svg{color:#15a968}body .school-card p,body .member-grid p{font-size:14px}body .member-grid article{border-color:#e3efe8;border-radius:15px}body .member-grid strong{font-size:16px}body table{font-size:14px}body th{color:#668073;background:#f4faf7;font-size:14px}body td{color:#516b60;padding:18px 16px;font-size:14px}body td small{font-size:13px}body .row-actions .text-button{font-size:14px}body .search{border-radius:12px}body .search input{font-size:14px}body .table-wrap{border-radius:14px}body .task-card h2{font-size:23px}body .task-meta{font-size:14px}body .feedback{background:#f1faf5;border-radius:12px;font-size:15px}body .feedback p,body .resource-list p{font-size:14px}body .empty-state p{max-width:470px;font-size:15px}body .muted-text{font-size:14px}body .error,body .success{border-radius:12px;font-size:14px}body .guide{background:#e8faee}body .guide p{font-size:15px}body .ai-output{color:#325d49;font-size:16px}body .page-footer{color:#7c968b;font-size:12px}body .modal{border-color:#dceee3;border-radius:22px;max-width:740px;padding:28px}body .modal-footer{z-index:1;background:#fff;padding-bottom:10px;position:sticky;bottom:-28px}.setup-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.setup-grid article{background:#fcfefd;border:1px solid #e0efe7;border-radius:16px;padding:22px}.setup-grid h3{margin:14px 0 6px;font-size:18px}.setup-grid p{min-height:48px;font-size:14px}.setup-icon{color:#13a569;justify-content:space-between;align-items:center;display:flex}.setup-grid .subtle{width:100%}.assignment-picker{background:#f7fcf9;border:1px solid #e0eee5;border-radius:16px;margin:20px 0;padding:20px}.assignment-picker h3{font-size:18px}.assignment-picker p{font-size:14px}.assignment-picker fieldset{background:#fff;margin:14px 0 0}.inline-help{color:#517461;background:#f0f8f3;border-radius:11px;padding:12px 16px}.teaching-context{gap:10px;max-width:360px;display:flex}.teaching-context select{min-width:90px;font-size:14px}.teaching-context select:first-child{min-width:180px}.section-title{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-title h2{border-left:6px solid #14b273;margin:0;padding-left:16px;font-size:27px}.teaching-stats .stat-card{align-items:center;gap:18px;min-height:126px;padding:22px;display:flex}.teaching-stats .stat-card span{color:#25453b;font-size:15px;display:block}.teaching-stats .stat-card strong{margin:6px 0;font-size:32px;display:block}.stat-icon{color:#0da965;background:#e3faed;border-radius:19px;flex-shrink:0;place-items:center;width:58px;height:58px;display:grid}.stat-icon.blue{color:#3b88f8;background:#eaf2ff}.stat-icon.orange{color:#ff8b37;background:#fff0e3}.dashboard-grid{grid-template-columns:1.06fr 1fr;gap:18px;display:grid}.dashboard-grid .panel{min-height:275px;margin:0}.dashboard-empty{text-align:center;color:#81b99a;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:205px;padding:18px;display:flex}.dashboard-empty h3{color:#446c59;margin:5px 0 0;font-size:18px}.dashboard-empty p{max-width:340px;margin:0 0 8px;font-size:14px}.progress-row{border:1px solid #e4f0e9;border-radius:14px;margin-bottom:12px;padding:18px}.progress-caption{justify-content:space-between;align-items:center;gap:12px;display:flex}.progress-caption strong{font-size:16px}.progress-caption small{color:#729082;margin-top:5px;display:block}.progress-track{background:#eef5f1;border-radius:12px;height:10px;margin:15px 0 7px;overflow:hidden}.progress-track span{background:linear-gradient(90deg,#1aae71,#77e3a7);border-radius:12px;height:100%;display:block}.review-row{border:1px solid #e7eee9;border-radius:14px;align-items:center;gap:14px;margin-bottom:10px;padding:14px;display:flex}.review-row>div:nth-child(2){flex:1;min-width:0}.review-row small{margin-top:6px;line-height:1.5;display:block}.review-row .resource-icon{color:#fb8d31;background:#fff0e3;padding:12px}.count-badge{color:#6d8c7b;font-size:17px}.course-row{border-bottom:1px solid #edf4ef;align-items:center;gap:14px;padding:12px 0;display:flex}.course-row>div{flex:1}.course-row small{margin-top:6px;display:block}.lesson-callout{background:linear-gradient(120deg,#f2fcf6,#ecf9e6);border-radius:15px;padding:20px}.lesson-callout .resource-icon{margin-bottom:12px;padding:12px;display:inline-flex}.lesson-callout p{font-size:14px}.lesson-context{background:#f0faf5;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0;padding:15px;display:flex}.lesson-context>span:last-child{color:#6c8e7a;font-size:13px}@media (max-width:1200px){body .sidebar{width:210px}body .main-area{margin-left:210px}body .sidebar .brand{font-size:21px}body .content{padding:18px 22px}body .topbar{padding:16px 22px}.teaching-stats .stat-card{gap:10px;padding:17px}.stat-icon{width:45px;height:45px}.teaching-context{max-width:270px}.teaching-context select:first-child{min-width:130px}}@media (max-width:900px){.dashboard-grid{grid-template-columns:1fr}.setup-grid{gap:10px}.setup-grid article{padding:16px}body .teaching-stats{grid-template-columns:repeat(2,1fr)}.teaching-context{max-width:100%}body .top-actions{flex-wrap:wrap}.teaching-context select:first-child{min-width:160px}}@media (max-width:800px){body .sidebar{width:100%;padding:18px 18px 10px;position:relative}body .main-area{margin-left:0}body .sidebar nav button{min-height:42px;padding:10px 12px;font-size:14px}body .scope-card{margin:14px 0 12px;padding:10px 14px}body .topbar{height:auto;padding:14px 18px}body .content{padding:20px 18px}body .top-actions{justify-content:space-between}body .teaching-context{order:3;width:100%;max-width:100%}.teaching-context select:first-child{flex:1}.teaching-context select:last-child{width:100px}body .page-heading h1{font-size:27px}.section-title h2{font-size:23px}body .panel-heading h2{font-size:21px}body .welcome-banner{padding:24px}body .welcome-banner h2{font-size:24px}body .page-heading{align-items:flex-start}body .page-heading>.subtle{flex-shrink:0;min-height:40px;padding:9px}body .sync-line{font-size:12px}body .school-grid,body .member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:550px){.setup-grid{grid-template-columns:1fr}.setup-grid article{padding:18px}.setup-grid p{min-height:0}.section-title{flex-wrap:wrap}body .school-grid,body .member-grid{grid-template-columns:1fr}body .panel,body .task-card{border-radius:17px;padding:20px}.teaching-stats .stat-card{gap:10px;padding:14px}.teaching-stats .stat-card span{font-size:14px}.teaching-stats .stat-card strong{font-size:28px}.teaching-stats .stat-card small{font-size:12px}.review-row{flex-wrap:wrap}.review-row .subtle{margin-left:48px}.assignment-picker{padding:16px}.lesson-context{gap:6px}body .modal{padding:22px}body .modal-footer{bottom:-22px}body .sidebar nav button{font-size:14px}}.answer-attachments{margin:20px 0}.answer-attachments p{color:var(--muted);font-size:14px;line-height:1.7}.attachment-pickers{flex-wrap:wrap;gap:12px;display:flex}.attachment-pickers label{cursor:pointer;flex-direction:column;gap:8px;display:flex}.attachment-pickers input{max-width:240px;font-size:14px}.attachment-list{gap:10px;margin:12px 0;display:grid}.attachment-list a{color:#16694d;overflow-wrap:anywhere;background:#f3fbf7;border:1px solid #dce9e3;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:12px 14px;text-decoration:none;display:flex}.attachment-list small{color:#63796e}.attachment-list strong{flex:1;min-width:120px}.account-directory .role-tabs{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.directory-class-filter{color:var(--muted);align-items:center;gap:10px;font-size:14px;display:flex}.directory-class-filter select{color:#194b40;background:#fff;border:1px solid #d9e8e3;border-radius:12px;min-width:180px;padding:12px}.directory-group{border-top:1px solid #e1eeea;margin-top:24px;padding-top:20px}.directory-group-heading{background:#eef9f4;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.directory-group-heading h3{color:#125044;margin:0;font-size:18px}.directory-group-heading span{color:#68897e;font-size:13px}.directory-group h4{color:#275d4f;margin:18px 0 10px;font-size:14px}@media (max-width:700px){.directory-group-heading{flex-direction:column;align-items:flex-start}.directory-class-filter,.directory-class-filter select{width:100%}.account-directory .toolbar{flex-wrap:wrap}}:root{--reference-green:#0c9f65;--reference-bg:#effaf4;--ink:#203b34;--muted:#73857d;--green:#16694d;--lime:#d8f5ab;--line:#e5ebe5;--bg:#f5f8f2;--white:#fff;color:var(--ink);background:var(--bg);font-synthesis:none;font-family:Inter,Microsoft YaHei,PingFang SC,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;transition:background .15s,box-shadow .15s}button:disabled{opacity:.5;cursor:not-allowed}:is(button:focus-visible,a:focus-visible){outline-offset:3px;outline:3px solid #90bc66}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-1px;margin-bottom:10px;font-size:32px;line-height:1.35}h2{margin-bottom:12px;font-size:21px;line-height:1.5}h3{margin-bottom:8px;font-size:17px}p{color:var(--muted);font-size:14px;line-height:1.8}small{color:var(--muted);font-size:11px}a{color:inherit;text-decoration:none}strong{font-weight:650}button{border:0}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dce5da;border-radius:9px;outline:0;min-height:45px;padding:12px 14px}input:focus,select:focus,textarea:focus{border-color:#4a916c;box-shadow:0 0 0 3px #e9f6db}textarea{resize:vertical;line-height:1.7}fieldset{border:1px solid var(--line);border-radius:10px;margin:20px 0;padding:18px}legend{padding:0 8px;font-size:13px;font-weight:600}.startup{text-align:center;place-content:center;gap:20px;min-height:100vh;display:grid}.startup svg{color:var(--green);margin:auto}.brand{white-space:nowrap;align-items:center;gap:11px;font-size:20px;font-weight:750;display:flex}.brand small{letter-spacing:1.5px;margin-top:3px;font-size:8px;display:block}.brand-mark{background:var(--green);width:42px;height:42px;color:var(--lime);border-radius:12px;place-items:center;display:grid}.brand-mark svg{width:27px}.eyebrow{letter-spacing:1.8px;color:#7d9278;margin-bottom:10px;font-size:10px;font-weight:700;display:block}.primary,.subtle,.text-button{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 16px;font-size:13px;font-weight:600;display:inline-flex}.primary{background:var(--green);color:#fff}.primary:hover{background:#0c503a}.subtle{color:#43624c;background:#fff;border:1px solid #dce5db}.subtle:hover{background:#eef6e8}.text-button{color:var(--green);background:0 0;min-height:32px;padding:7px 0}.text-button:hover{color:#123a2d;text-decoration:underline}.icon-button{color:#718474;background:0 0;border-radius:8px;place-items:center;min-width:32px;min-height:32px;display:inline-grid}.icon-button:hover{background:#edf3e7}.full{width:100%}.tag{color:#537841;background:#edf6df;border-radius:6px;align-items:center;padding:5px 9px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.tag.muted{color:#768273;background:#f0f3ee}.tags{flex-wrap:wrap;gap:7px;margin:12px 0 20px;display:flex}.field{margin:18px 0;display:block}.field>span{margin-bottom:8px;font-size:13px;font-weight:600;display:block}.muted-text{color:var(--muted);font-size:13px}.error,.success{border-radius:9px;margin:12px 0;padding:12px 16px;font-size:13px;line-height:1.7}.error{color:#a54232;background:#fff1ef;border:1px solid #f7d5cb}.success{color:#487538;background:#ebf6df;justify-content:space-between;align-items:center;display:flex}.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}.login-layout{grid-template-columns:1.1fr 1fr;min-height:100vh;display:grid}.login-brand{background:#e7f3d9;flex-direction:column;justify-content:space-between;padding:50px 7vw;display:flex;position:relative;overflow:hidden}.login-brand>div:nth-child(2){margin:70px 0}.login-brand h1{letter-spacing:-3px;margin:25px 0;font-size:clamp(40px,5vw,72px);line-height:1.2}.login-brand p{color:#68835f;font-size:16px}.login-brand small{color:#628055;letter-spacing:2px}.brand-orbit{gap:16px;margin:48px 0 0;display:flex;transform:rotate(-7deg)}.brand-orbit span{color:#337346;background:#fff9;border-radius:24px;place-items:center;width:90px;height:90px;font-size:38px;display:grid;box-shadow:0 10px 25px #9cbe811c}.brand-orbit span:nth-child(2){background:var(--green);color:var(--lime);transform:translateY(20px)}.login-form{background:#fff;place-items:center;padding:50px 35px;display:grid}.login-form form{width:min(100%,385px)}.login-form h2{margin-top:18px;font-size:30px}.login-form .primary{margin-top:12px}.login-note{color:#859c76;gap:10px;margin-top:25px;display:flex}.login-note svg{flex-shrink:0;margin-top:4px}.login-note p{font-size:12px}.workspace{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:10;background:#fff;flex-direction:column;width:230px;padding:30px 19px 20px;display:flex;position:fixed;inset:0 auto 0 0;overflow:auto}.sidebar .brand{padding:0 7px}.scope-card{background:#f5f8ee;border:1px solid #e8efdf;border-radius:12px;margin:30px 2px 20px;padding:16px}.scope-card strong,.scope-card>span:not(.eyebrow){overflow-wrap:anywhere;display:block}.scope-card strong{margin-bottom:4px;font-size:14px;line-height:1.6}.scope-card>span:not(.eyebrow){color:#8c9c83;font-size:11px}.scope-card .eyebrow{font-size:9px}.sidebar nav{gap:4px;display:grid}.sidebar nav button{color:#7c8c7d;text-align:left;background:0 0;border-radius:9px;align-items:center;gap:12px;width:100%;min-height:46px;padding:12px 14px;font-size:13px;display:flex}.sidebar nav button svg:last-child:not(:first-child){margin-left:auto}.sidebar nav button.active{color:#385931;background:#def1bc;font-weight:650}.sidebar nav button:hover{background:#eff5e7}.sidebar-foot{color:#8d9c85;margin-top:auto;padding:28px 7px 0;font-size:11px}.sidebar-foot small{font-size:9px;line-height:2;display:block}.live-dot{background:#67a24b;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.main-area{flex:1;min-width:0;margin-left:230px}.topbar{border-bottom:1px solid var(--line);background:#fff9;justify-content:space-between;align-items:center;gap:12px;height:84px;padding:16px 38px;display:flex}.topbar>span{color:#91a08a;align-items:center;gap:12px;min-width:0;font-size:12px;display:flex}.top-actions{align-items:center;gap:18px;display:flex}.identity{align-items:center;gap:10px;display:flex}.identity strong{font-size:13px;display:block}.identity small{margin-top:3px;font-size:10px;display:block}.avatar{color:#53753d;background:#e2efd0;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:14px;font-weight:650;display:inline-grid}.role-toggle{background:#f0f5e9;border-radius:8px;padding:3px;display:flex}.role-toggle button{color:#809373;background:0 0;border-radius:6px;padding:7px 12px;font-size:12px}.role-toggle button.selected{color:#2f6b4b;background:#fff;box-shadow:0 2px 5px #c8d3bf66}.content{max-width:1600px;margin:auto;padding:35px 38px 24px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:5px;display:flex}.page-heading p{margin-bottom:8px}.sync-line{color:#92a186;letter-spacing:.3px;margin:0 0 22px;font-size:10px}.welcome-banner{background:#e4f3cf;border-radius:18px;justify-content:space-between;gap:20px;margin-bottom:24px;padding:32px 36px;display:flex;position:relative;overflow:hidden}.welcome-banner h2{letter-spacing:-.5px;margin:16px 0 8px;font-size:27px}.welcome-banner p{color:#78976c;max-width:570px;font-size:13px}.welcome-banner .tag{background:#d5eabb}.banner-art{flex-shrink:0;place-content:center;width:210px;display:grid;position:relative}.banner-art>div{color:#6e9b4e;background:#fff8;border:1px solid #fff;border-radius:35px;place-items:center;width:125px;height:125px;display:grid;transform:rotate(-12deg);box-shadow:0 15px 30px #7cab4910}.banner-art span{letter-spacing:2px;color:#78955d;background:#fdfff2;border-radius:12px;padding:12px;font-size:10px;font-weight:800;position:absolute;top:25px;right:0;transform:rotate(10deg)}.banner-art span:last-child{background:#cced9b;inset:auto auto 10px 0}.stats-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0;display:grid}.stat-card{text-align:left;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;padding:22px;position:relative}.stat-card>span{color:#88987f;font-size:12px}.stat-card>strong{margin:14px 0 12px;font-size:33px;line-height:1;display:block}.stat-card>svg{color:#90a378;position:absolute;top:22px;right:22px}.stat-card small{color:#a0aa95;font-size:10px}.panel{border:1px solid var(--line);background:#fff;border-radius:14px;min-width:0;margin-bottom:24px;padding:26px}.panel-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.panel-heading h2{margin-bottom:4px;font-size:18px}.panel-heading p{margin:0;font-size:12px}.school-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.school-card{border:1px solid #e9eee3;border-radius:12px;min-width:0;padding:24px}.school-card>svg{color:#90ab75;margin-bottom:20px}.school-card h3{margin:12px 0 8px}.school-card p{font-size:12px}.school-card .subtle,.school-card .primary{margin-top:6px}.member-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.member-grid article{border:1px solid #e9eee3;border-radius:10px;padding:20px}.member-grid strong{margin:0 8px;font-size:14px;display:inline-block}.member-grid p{margin:12px 0;font-size:12px}.empty-state{text-align:center;place-items:center;min-height:200px;padding:42px 20px 36px;display:grid}.empty-state svg{color:#a1b392;box-sizing:content-box;background:#f4f8ef;border-radius:18px;margin-bottom:18px;padding:18px}.empty-state h3{color:#6d8161;margin-bottom:8px;font-size:15px}.empty-state p{max-width:450px;font-size:12px}.toolbar{justify-content:space-between;gap:16px;margin-bottom:22px;display:flex}.search{color:#9bab90;background:#fff;border:1px solid #e0e7d9;border-radius:9px;align-items:center;gap:8px;width:100%;max-width:400px;padding:0 14px;display:flex}.search input{box-shadow:none;background:0 0;border:0;min-height:42px;padding:10px 0;font-size:12px}.table-wrap{border:1px solid var(--line);border-radius:10px;width:100%;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;min-width:670px;font-size:12px}th{color:#8f9c86;background:#f7f9f3;padding:14px 16px;font-size:11px;font-weight:500}td{color:#748367;overflow-wrap:anywhere;border-top:1px solid #eef1e8;max-width:340px;padding:18px 16px}td strong{color:#3c5437}td small{margin-top:6px;font-size:10px;display:block}tr:hover td{background:#fcfdf9}.row-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.row-actions .text-button{font-size:11px}.task-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.task-card{border:1px solid var(--line);background:#fff;border-radius:14px;min-width:0;padding:26px}.task-top{justify-content:space-between;margin-bottom:20px;display:flex}.task-card h2{font-size:21px}.task-meta{font-size:11px}.feedback{background:#f5f8ef;border-radius:9px;margin:18px 0;padding:16px;font-size:13px}.feedback p{margin:7px 0;font-size:12px}.resource-list{gap:16px;display:grid}.resource-list article{border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:18px 0;display:flex}.resource-list article:last-child{border:0}.resource-list article>div:nth-child(2){flex:1;min-width:0}.resource-list p{margin:6px 0;font-size:12px}.resource-icon{color:#86a96b;background:#edf6df;border-radius:10px;padding:16px}.two-column{grid-template-columns:1fr 1fr;gap:24px;display:grid}.two-column .panel{padding:30px}.two-column h2{margin-top:14px}.guide{background:#edf6de}.guide>svg{color:#84a168;width:35px;height:35px}.guide ol{color:#6f8860;margin:25px 0;padding-left:22px;font-size:14px;line-height:2.6}.guide p{font-size:12px}.narrow{max-width:720px}.ai-output{color:#4c6645;max-height:700px;padding:10px 0 25px;font-size:14px;line-height:1.9;overflow:auto}.page-footer{color:#a0ad92;justify-content:space-between;padding:28px 0 10px;font-size:10px;display:flex}.modal{width:calc(100% - 32px);max-width:700px;max-height:90vh;color:var(--ink);background:#fff;border:1px solid #e1e9d8;border-radius:16px;padding:28px;box-shadow:0 25px 90px #142e2855}.modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#152d2755}.modal-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding-bottom:15px;display:flex}.modal-heading h2{margin:0;font-size:20px}.modal-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;display:flex}.check-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.check-grid label{cursor:pointer;align-items:center;gap:8px;font-size:12px;display:flex}.check-grid input{width:16px;height:16px;min-height:0;accent-color:var(--green)}.detail-body{max-height:60vh;padding:20px 0;font-size:14px;line-height:2;overflow:auto}.submission-detail{border-bottom:1px solid var(--line);padding:20px 0}@media (min-width:1600px){.content{padding-top:45px}.welcome-banner{padding:40px}}@media (max-width:1150px){.sidebar{width:200px;padding-left:12px;padding-right:12px}.sidebar .brand{font-size:17px}.main-area{margin-left:200px}.topbar{padding:16px 24px}.content{padding:28px 24px}.school-grid,.member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar>span{display:none}.topbar{justify-content:flex-end}.stats-grid{gap:12px}.banner-art{width:150px}.welcome-banner{padding:25px}.welcome-banner h2{font-size:23px}}@media (max-width:800px){.workspace{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);width:100%;padding:18px 18px 10px;position:relative}.sidebar .brand{font-size:19px}.scope-card{margin:15px 0 10px;padding:10px 14px}.scope-card .eyebrow{display:none}.scope-card strong{margin-right:12px;display:inline}.scope-card>span:not(.eyebrow){display:inline}.sidebar nav{gap:6px;padding-bottom:8px;display:flex;overflow-x:auto}.sidebar nav button{flex-shrink:0;width:auto;min-height:38px;padding:10px}.sidebar nav button svg:last-child:not(:first-child),.sidebar-foot{display:none}.main-area{margin-left:0}.topbar{height:auto;min-height:70px;padding:12px 18px}.top-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;width:100%}.identity{margin-right:auto}.identity strong{font-size:12px}.top-actions>.subtle{order:3;width:100%;font-size:11px}.content{padding:24px 18px}.page-heading h1{font-size:26px}.page-heading p{font-size:12px}.page-heading .subtle{padding:9px;font-size:11px}.stats-grid{grid-template-columns:repeat(2,1fr)}.two-column,.task-grid{grid-template-columns:1fr}.welcome-banner{padding:24px}.banner-art{display:none}.welcome-banner h2{font-size:22px}.school-grid,.member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:20px}.panel-heading{align-items:flex-start}.panel-heading .primary,.panel-heading .subtle{padding:9px;font-size:11px}.resource-list article{flex-wrap:wrap;align-items:flex-start}.resource-list article .row-actions{width:100%}.page-footer span{display:none}.login-layout{grid-template-columns:1fr}.login-brand{padding:25px}.login-brand>div:nth-child(2){margin:35px 0}.login-brand h1{font-size:42px}.login-brand p{font-size:13px}.brand-orbit{display:none}.login-form{padding:35px 25px}.login-brand small{font-size:10px}}@media (max-width:480px){.school-grid,.member-grid{grid-template-columns:1fr}.panel-heading,.toolbar{flex-wrap:wrap}.toolbar .search{max-width:100%}.check-grid{grid-template-columns:repeat(2,1fr)}.modal{padding:20px}.identity small{font-size:9px}.role-toggle button{padding:7px 9px}.welcome-banner .primary{font-size:12px}.stat-card{padding:19px}.stat-card>strong{font-size:30px}.two-column .panel{padding:22px}.page-heading{gap:10px}.page-heading .subtle{flex-shrink:0}}.workflow-builder{border-top:1px solid var(--line);margin-bottom:24px;padding-top:20px}.workflow-skill{border-bottom:1px solid var(--line);padding:18px 0}.workflow-skill h3{align-items:center;gap:10px;display:flex}.workflow-skill small{color:var(--muted);font-size:11px}.workflow-skill .field p{margin:4px 0 10px;font-size:12px}.workflow-bottom{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.assessment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.learning-hub details>summary{cursor:pointer;padding:10px 0;line-height:1.6}.learning-hub details>form{padding-top:16px}.learning-hub input[type=checkbox]{width:16px;min-height:0;accent-color:var(--green);vertical-align:middle}.learning-hub textarea{resize:vertical}.learning-hub .row-actions{margin-top:14px}@media (max-width:480px){.assessment-grid{grid-template-columns:1fr}.workflow-bottom button{justify-content:center;width:100%}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.ai-mode-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:24px;display:grid}.ai-mode{text-align:left;color:#244c40;cursor:pointer;background:#fff;border:1px solid #dbe8df;border-radius:18px;flex-direction:column;align-items:flex-start;gap:9px;padding:20px;display:flex}.ai-mode.selected{background:#e6f7e9;border-color:#15a06d;box-shadow:0 4px 20px #14664b0a}.ai-mode small{color:#698476;font-size:12px;line-height:1.6}.ai-workbench-columns{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:24px;display:grid}.ai-model-status{overflow-wrap:anywhere;background:#f3f9f3;border-radius:12px;flex-direction:column;gap:6px;margin-bottom:20px;padding:14px;display:flex}.ai-model-status small{color:#678173}.ai-select-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.ai-upload{cursor:pointer;background:#f5fbf4;border:1px dashed #7dbb98;border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex}.ai-upload small{text-align:center;color:#6c8272;width:100%}.ai-upload input{max-width:100%;font-size:13px}.ai-file-list>div{overflow-wrap:anywhere;border-bottom:1px solid #e6eee7;justify-content:space-between;align-items:center;padding:12px;display:flex}.ai-file-list small{color:#778b7d;margin-top:4px;display:block}.ai-history-item{text-align:left;cursor:pointer;color:#27483c;background:0 0;border:0;border-bottom:1px solid #e0eae3;flex-direction:column;gap:8px;width:100%;padding:14px;display:flex}.ai-history-item small{color:#75877b}.ai-warning{overflow-wrap:anywhere;background:#fff6df;border-radius:10px;padding:12px;font-size:13px}.ai-workbench .ai-output{max-height:650px;margin-bottom:20px;overflow:auto}.ai-workbench .panel>h2{align-items:center;gap:8px;display:flex}@media (max-width:1050px){.ai-workbench-columns{grid-template-columns:1fr}}@media (max-width:600px){.ai-mode-grid{grid-template-columns:1fr 1fr}.ai-mode{padding:15px}.ai-select-row{grid-template-columns:1fr}}.ai-chat{background:#fff;border:1px solid #dfede5;border-radius:24px;overflow:hidden}.ai-chat-heading{background:#f3fbf6;border-bottom:1px solid #e4eee8;justify-content:space-between;align-items:center;gap:14px;padding:22px 24px;display:flex}.ai-chat-heading h2{margin:0;font-size:23px}.ai-chat-heading p{margin:6px 0 0;font-size:12px}.ai-chat-heading>div:last-child{flex-wrap:wrap;gap:8px;display:flex}.ai-chat-heading button{color:#287758;background:#fff;border:1px solid #d7e8de;border-radius:12px;align-items:center;gap:6px;padding:10px 12px;font-size:12px;display:flex}.ai-chat-modes{border-bottom:1px solid #edf2ef;gap:8px;padding:14px 24px;display:flex;overflow-x:auto}.ai-chat-modes button{color:#517965;background:#f7fbf8;border:1px solid #dcebe2;border-radius:24px;flex-shrink:0;padding:8px 14px;font-size:12px}.ai-chat-modes button.active{color:#078958;background:#e3f5eb;border-color:#7ac9a4}.ai-chat-layout{grid-template-columns:minmax(0,1fr);display:grid}.ai-chat-layout.with-history{grid-template-columns:240px minmax(0,1fr)}.ai-chat-history{background:#f8fcf9;border-right:1px solid #e5eee8;max-height:900px;padding:20px;overflow:auto}.ai-chat-history h3{font-size:15px}.ai-chat-history button{text-align:left;color:#38634e;overflow-wrap:anywhere;background:#fff;border:1px solid #e2ebe5;border-radius:12px;width:100%;margin:10px 0;padding:12px;font-size:13px;display:block}.ai-chat-history button.active{background:#eaf7f0;border-color:#85c9a5}.ai-chat-history small{margin-top:6px;font-size:11px;display:block}.ai-chat-main{min-width:0}.ai-chat-main>.error,.ai-chat-notice{margin:14px 22px;font-size:12px}.ai-chat-log{overscroll-behavior:contain;background:#fbfdfb;min-height:350px;max-height:65vh;padding:24px;overflow:auto}.ai-chat-welcome{text-align:center;color:#739083;padding:55px 14px}.ai-chat-welcome h3{color:#195d43;margin:18px 0 12px;font-size:22px}.ai-chat-welcome p{font-size:13px}.ai-chat-bubble{overflow-wrap:anywhere;background:#fff;border:1px solid #e3ede6;border-radius:18px 18px 18px 4px;max-width:92%;margin:16px 0;padding:18px}.ai-chat-bubble.user{background:#e9f7ef;border-color:#d3eadd;border-radius:18px 18px 4px;margin-left:auto}.ai-chat-bubble>div{white-space:pre-wrap;font-size:15px;line-height:1.95}.ai-chat-bubble small{color:#718b7c;margin-bottom:8px;display:block}.ai-chat-file-tag{border:1px solid #d5e6da;border-radius:8px;margin:10px 5px 0 0;padding:5px 8px;font-size:12px;display:inline-block}.ai-chat-composer{background:#fff;border-top:1px solid #e0ebe4;padding:18px 24px 22px}.ai-chat-context{color:#62816e;margin-bottom:12px;font-size:12px}.ai-chat-context summary{cursor:pointer;padding:4px 0 10px}.ai-chat-context .ai-select-row{gap:12px}.ai-chat-context label{min-width:0}.ai-chat-context select{margin:6px 0;font-size:12px}.ai-chat-composer>textarea{resize:vertical;background:#f9fcfa;border-radius:16px;min-height:100px;font-size:15px;line-height:1.8}.ai-chat-files{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.ai-chat-files>span{overflow-wrap:anywhere;background:#edf7f1;border:1px solid #dcebe0;border-radius:10px;max-width:100%;padding:8px 10px;font-size:12px}.ai-chat-files button{color:#527a62;vertical-align:middle;background:0 0}.ai-chat-tools{align-items:center;gap:12px;margin:12px 0;display:flex}.ai-chat-tools>label{white-space:nowrap;color:#247454;cursor:pointer;border:1px solid #dce8df;border-radius:12px;align-items:center;gap:5px;padding:10px;font-size:12px;display:flex;position:relative;overflow:hidden}.ai-chat-tools input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.ai-chat-tools select{width:auto;min-width:0;max-width:240px;font-size:12px}.ai-chat-tools .primary{margin-left:auto}.ai-chat-confirm{color:#648272;align-items:flex-start;gap:8px;margin:10px 0;font-size:12px;line-height:1.8;display:flex}.ai-chat-confirm input{accent-color:#149a6b;flex-shrink:0;width:16px;height:16px;min-height:16px;margin-top:3px}.ai-chat-composer>small{color:#819288;font-size:11px;line-height:1.9;display:block}@media (max-width:850px){.ai-chat-layout.with-history{grid-template-columns:1fr}.ai-chat-history{border-bottom:1px solid #e5eee8;border-right:0;max-height:280px}.ai-chat-heading{flex-wrap:wrap}.ai-chat-log{min-height:300px}}@media (max-width:600px){.ai-chat-heading,.ai-chat-composer{padding:16px}.ai-chat-modes{padding:12px 16px}.ai-chat-log{padding:14px}.ai-chat-bubble{max-width:97%;padding:14px}.ai-chat-tools{flex-wrap:wrap;gap:8px}.ai-chat-tools select{max-width:140px}.ai-chat-heading h2{font-size:20px}}.workspace:has(.ai-chat) .page-heading{display:none}.ai-chat-welcome>svg{margin:0 auto;display:block}.ai-chat .ai-chat-log{min-height:240px;max-height:45vh}.ai-chat-context details{margin-top:12px}.ai-chat-context details button{color:#9a5638;font-size:12px}.ai-chat-old-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;font-size:12px;line-height:1.8;overflow:auto}.ai-chat-context{overflow-wrap:anywhere}.ai-chat-context table{width:100%;font-size:12px}.ai-chat.ai-simple{background:0 0;border:0;border-radius:0;flex-direction:column;height:calc(100dvh - 180px);min-height:480px;display:flex;position:relative;overflow:visible}.ai-simple-header{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;height:58px;padding:0 12px;display:flex}.ai-simple-header h2{color:#234d3e;margin:0;font-size:18px;font-weight:600}.ai-simple-header>div{align-items:center;gap:4px;display:flex}.ai-simple-header button,.ai-simple-sheet header button{color:#688374;width:38px;height:38px;min-height:38px;box-shadow:none;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.ai-simple-header button:hover{background:#e5f1e9}.ai-simple-header button.ai-connect{color:#078a61;width:auto;padding:0 12px;font-size:12px}.ai-simple-body{flex-direction:column;flex:1;min-height:0;display:flex}.ai-chat.ai-simple .ai-chat-log{scrollbar-width:thin;background:0 0;flex:1;min-height:0;max-height:none;padding:18px max(12px,50% - 400px);overflow:auto}.ai-simple .ai-chat-welcome{box-sizing:border-box;color:#739083;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:180px;padding:20px 12px;display:flex}.ai-simple .ai-chat-welcome h3{color:#264f3e;margin:20px 0 10px;font-size:25px;font-weight:600}.ai-simple .ai-chat-welcome p{color:#82958b;margin:0;font-size:13px}.ai-simple .ai-chat-bubble{background:0 0;border:0;border-radius:24px;max-width:90%;margin:20px 0;padding:16px 20px}.ai-simple .ai-chat-bubble.user{background:#e0f3e8;border-radius:22px 22px 6px;width:fit-content;margin-left:auto}.ai-simple .ai-chat-bubble.assistant{max-width:100%;margin-right:auto;padding-left:4px}.ai-simple .ai-chat-bubble>div{font-size:15px;line-height:1.9}.ai-simple .ai-chat-bubble small{color:#8a9c91;margin-bottom:8px;font-size:11px}.ai-simple .ai-chat-file-tag{background:#ffffff90;align-items:center;gap:6px;display:inline-flex}.ai-chat-working{color:#829488;padding:0 4px;font-size:12px}.ai-simple-bottom{box-sizing:border-box;flex-shrink:0;width:min(100%,800px);margin:0 auto;padding:10px 0 0}.ai-simple .ai-chat-composer{background:#fff;border:1px solid #dce8e0;border-radius:24px;padding:12px;position:relative;box-shadow:0 6px 24px #214f3210}.ai-simple-input-row{align-items:flex-end;gap:10px;display:flex}.ai-simple .ai-simple-input-row textarea{resize:none;min-width:0;height:42px;min-height:42px;max-height:160px;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;flex:1;margin:0;padding:10px 0;font-size:15px;line-height:22px}.ai-simple-input-row button{width:42px;height:42px;min-height:42px;box-shadow:none;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.ai-simple-input-row .ai-plus{color:#627b6d;background:#f2f6f3}.ai-simple-input-row .ai-plus.active{color:#078f61;background:#e0f3e8}.ai-simple-input-row .ai-send{color:#fff;background:#0aa375}.ai-simple-input-row .ai-send:disabled{color:#acb9b0;opacity:1;background:#e8eeea}.ai-simple .ai-chat-files{gap:6px;margin:0 0 8px}.ai-simple .ai-chat-files>span{border-radius:10px;align-items:center;gap:6px;max-width:100%;padding:6px 9px;font-size:12px;display:inline-flex}.ai-simple .ai-chat-files>span>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ai-simple-disclaimer{text-align:center;color:#94a298;margin:9px 0 0;font-size:11px;display:block}.ai-chat-error{color:#a45d38;overflow-wrap:anywhere;margin:0 10px 10px;font-size:12px;line-height:1.7}.ai-chat-error button{color:#11865e;background:0 0;padding:2px 8px;font-size:12px}.ai-chat-sr-only{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.ai-menu-dismiss{z-index:20;background:0 0;border:0;border-radius:0;width:100%;height:100%;padding:0;position:fixed;inset:0}.ai-attachment-menu{z-index:21;background:#fff;border:1px solid #e0e9e3;border-radius:18px;gap:4px;padding:8px;display:flex;position:absolute;bottom:calc(100% + 10px);left:0;box-shadow:0 8px 30px #184d3220}.ai-attachment-menu label{color:#416a54;cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:88px;height:82px;font-size:13px;display:flex;position:relative;overflow:hidden}.ai-attachment-menu label:hover{background:#eef7f1}.ai-attachment-menu input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.ai-sheet-backdrop{z-index:110;background:#153e302b;border:0;border-radius:0;width:100%;height:100%;padding:0;position:fixed;inset:0}.ai-simple-sheet{z-index:111;box-sizing:border-box;color:#345745;background:#fff;border:1px solid #e0eae3;border-radius:24px;width:min(360px,100vw - 32px);padding:20px;position:fixed;top:24px;bottom:24px;right:20px;overflow:auto;box-shadow:0 12px 50px #163f3020}.ai-simple-sheet header{justify-content:space-between;align-items:center;margin:0 0 18px;display:flex}.ai-simple-sheet h3{margin:0;font-size:17px;font-weight:600}.ai-simple-sheet details{margin:16px 0;font-size:13px;line-height:1.8}.ai-simple-sheet summary{cursor:pointer;color:#476c58}.ai-history-list>button,.ai-history-list details button{text-align:left;color:#345f47;overflow-wrap:anywhere;background:#f4f9f5;border:0;border-radius:12px;width:100%;margin:8px 0;padding:12px;font-size:13px;display:block}.ai-history-list button.active{background:#e1f3e8}.ai-history-list small{color:#91a094;margin-top:5px;font-size:10px;display:block}.ai-history-list>p{color:#91a094;font-size:13px}.ai-simple-settings>label{color:#678574;margin:18px 0;font-size:12px;display:block}.ai-simple-settings select{margin-top:6px;font-size:13px}.ai-model-link{text-align:left;color:#26704c;overflow-wrap:anywhere;background:#eef7f1;border:0;border-radius:12px;align-items:center;gap:8px;width:100%;padding:12px;font-size:13px;display:flex}.ai-simple-settings .ai-select-row{grid-template-columns:1fr;gap:10px;display:grid}.ai-simple-settings label{font-size:12px}.ai-simple-settings p{color:#809287;font-size:12px}.ai-simple-settings table{width:100%;font-size:11px}.ai-private-file{border-bottom:1px solid #e9f0eb;flex-wrap:wrap;gap:8px;padding:12px 0;font-size:12px;display:flex}.ai-private-file>span{overflow-wrap:anywhere;width:100%}.ai-private-file button{color:#487558;background:#edf6f0;border:0;border-radius:8px;padding:5px 10px;font-size:11px}.ai-simple-sheet .ai-chat-confirm{font-size:12px;line-height:1.8}.ai-chat.ai-simple button:focus-visible{outline-offset:3px;outline:2px solid #21996c}.ai-attachment-menu input:focus-visible{outline-offset:3px;outline:2px solid #21996c}@media (max-width:600px){.ai-chat.ai-simple{height:calc(100dvh - 340px);min-height:350px}.ai-simple-header{height:48px;padding:0 2px}.ai-simple-header h2{font-size:16px}.ai-simple .ai-chat-welcome h3{font-size:22px}.ai-chat.ai-simple .ai-chat-log{padding:10px 2px}.ai-simple .ai-chat-composer{border-radius:22px;padding:9px}.ai-simple-input-row{gap:6px}.ai-simple-input-row button{width:38px;height:38px;min-height:38px}.ai-simple .ai-simple-input-row textarea{height:38px;min-height:38px;padding:8px 0;font-size:14px}.ai-simple .ai-chat-bubble{max-width:94%;padding:12px 15px}.ai-simple-sheet{top:14px;bottom:14px;right:12px}.ai-attachment-menu{left:0}.ai-simple-disclaimer{font-size:10px}}@media (max-width:800px){body .workspace:has(.ai-simple){height:100dvh;min-height:0;overflow:hidden}body .workspace:has(.ai-simple) .sidebar{border:0;height:0;min-height:0;padding:0}:is(body .workspace:has(.ai-simple) .sidebar>.brand,body .workspace:has(.ai-simple) .sidebar>.scope-card){display:none}body .workspace:has(.ai-simple) .main-area{height:calc(100dvh - 92px - env(safe-area-inset-bottom));flex-direction:column;min-height:0;margin:0;padding-bottom:0;display:flex}body .workspace:has(.ai-simple) .topbar{flex-shrink:0;min-height:60px;padding:10px 16px}body .workspace:has(.ai-simple) .content{flex-direction:column;flex:1;width:100%;min-height:0;padding:0 16px 10px;display:flex}:is(body .workspace:has(.ai-simple) .sync-line,body .workspace:has(.ai-simple) .page-footer){display:none}body .workspace:has(.ai-simple) .ai-chat.ai-simple{flex:1;height:auto;min-height:0}}html body{--ink:#073b35;--muted:#70818d;--green:#109b68;--lime:#c9f25e;--line:#e4edf0;--bg:#effbf6;background:var(--bg);color:var(--ink);font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif}body .workspace{background:linear-gradient(135deg,#f7fdfa 0%,#e9faf3 44%,#f6fcfb 100%);min-height:100dvh}body h1,body h2,body h3{color:#063e36;letter-spacing:-.025em}body h1{font-size:clamp(28px,2.4vw,38px);font-weight:800;line-height:1.3}body h2{font-weight:750}body p{color:#657982}body .eyebrow{color:#6f978a;letter-spacing:1.4px}body small{color:#788b97}body .sidebar{isolation:isolate;background:linear-gradient(#fbfefd 0%,#f8fefa 57%,#eefbf5 100%);border-right:1px solid #e5f1ec;width:240px;padding:27px 15px 20px}body .sidebar:after{content:"";pointer-events:none;z-index:-1;opacity:.72;background:url(/ui-reference-student.png) 0 100%/1672px 941px no-repeat;width:100%;height:240px;position:absolute;bottom:0;left:0;-webkit-mask-image:linear-gradient(#0000,#000 32%);mask-image:linear-gradient(#0000,#000 32%)}body .sidebar .brand{color:#073c35;gap:12px;padding:0 10px;font-size:26px;font-weight:800}body .brand-mark{width:42px;height:42px;box-shadow:none;background:linear-gradient(135deg,#66d39a,#0d9e6b);border-radius:13px}body .brand small{color:#8b9da4;letter-spacing:1.3px;font-size:10px}body .scope-card{box-shadow:none;background:#ffffffb8;border:1px solid #e4f0ec;border-radius:14px;margin:24px 6px 20px;padding:13px 14px}body .scope-card strong{font-size:14px}body .scope-card .eyebrow{font-size:11px}body .scope-card>span:not(.eyebrow){color:#6d8b80}body .sidebar nav{gap:10px;position:relative}body .sidebar nav button{color:#415769;background:0 0;border-radius:13px;gap:17px;min-height:49px;padding:12px 17px;font-size:16px;font-weight:500;position:relative}body .sidebar nav button svg{width:21px;height:21px}body .sidebar nav button.active{color:#087b5f;box-shadow:none;background:#e0f5ee;font-weight:700}body .sidebar nav button.active:before{content:"";background:#119b79;border-radius:0 5px 5px 0;width:5px;position:absolute;top:8px;bottom:8px;left:-15px}body .sidebar-foot{color:#638579;z-index:1;background:#f3fcf7d9;border-radius:12px;padding:10px 12px;font-size:12px;position:relative}body .sidebar-foot small{color:#74978a;font-size:12px}body .main-area{margin-left:240px}body .topbar{background:#f8fdfb9c;border-bottom:1px solid #edf5f1;height:83px;padding:17px 30px}body .topbar>span{color:#739086;font-size:14px}body .top-actions{gap:14px}body .identity{gap:12px}body .identity strong{color:#123b35;font-size:15px;font-weight:750}body .identity small{color:#79948b;font-size:12px}body .identity .avatar{color:#087855;background:#ccf1e4;border:3px solid #eafaf4;width:46px;height:46px}body .topbar .icon-button{color:#658378}body .teaching-context select{color:#304d48;background:#ffffffd9;border-color:#e0eee7;border-radius:14px;height:44px;min-height:44px}body .role-toggle{background:#eaf5f1;border-radius:999px;padding:4px}body .role-toggle button{border-radius:999px;min-height:34px;padding:7px 14px;font-size:14px}body .role-toggle button.selected{color:#fff;box-shadow:none;background:#119a70}body .content{max-width:1536px;padding:24px 30px 30px}body .page-heading{isolation:isolate;gap:22px;margin-bottom:12px;position:relative}body .page-heading p{max-width:760px;margin-bottom:0;font-size:15px;line-height:1.7}body .page-heading h1{margin:7px 0 10px}body .page-heading>.subtle{background:#ffffffcf;border:1px solid #e0eee8;flex-shrink:0}body .sync-line{color:#77968b;gap:8px;margin-bottom:22px;font-size:12px}body .live-dot{box-shadow:none;background:#39b780}body .primary{background:linear-gradient(105deg,#1dbb7b,#109566);border:1px solid #0f9f6c;border-radius:12px;min-height:44px;padding:11px 18px;font-size:14px;font-weight:650;box-shadow:0 3px 9px #13966b0c}body .primary:hover:not(:disabled){background:linear-gradient(105deg,#14ab70,#078963);box-shadow:0 5px 12px #12976d18}body .subtle{color:#159971;background:#fff;border:1px solid #ccecdf;border-radius:11px;min-height:42px;font-weight:500}body .subtle:hover:not(:disabled){background:#edf9f3;border-color:#9edcbd}body .text-button{color:#158668;min-height:36px;font-size:14px;font-weight:500}body .icon-button{border-radius:10px}body button:disabled{opacity:.5;cursor:not-allowed}:is(body button:focus-visible,body a:focus-visible){outline-offset:3px;outline:3px solid #6cd4a9}body .panel,body .task-card{background:#ffffffed;border:1px solid #e6f0ed;border-radius:18px;margin-bottom:20px;padding:24px;box-shadow:0 5px 20px #147a5904}body .panel-heading{align-items:center;gap:16px;margin-bottom:18px}body .panel-heading h2{padding-left:14px;font-size:22px;font-weight:750;line-height:1.45}body .panel-heading h2:before{background:linear-gradient(#12b77b,#098e61);border-radius:4px;width:6px;top:5px;bottom:5px}body .panel-heading p{color:#7b8f98;font-size:14px}body .panel-heading .text-button{color:#5d7380}body .panel-heading .primary{white-space:normal}body .stats-grid{gap:16px;margin:18px 0 20px}body .stat-card{box-shadow:none;background:#fff;border-color:#e6f1eb;border-radius:18px;padding:24px}body .stat-card>span{color:#506670;font-size:15px}body .stat-card>strong{color:#0a3239;font-size:34px;font-weight:800}body .stat-card small{color:#82939e;font-size:13px}body .stat-card>svg{color:#60bc96}body button.stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #18885b0c}body .section-title{margin-top:9px;margin-bottom:18px}body .section-title h2{border-left:6px solid #0da96e;padding-left:15px;font-size:26px;line-height:1.3}body .section-title>.primary{border-radius:14px;min-width:164px;font-size:15px}body .teaching-stats .stat-card{gap:20px;min-height:126px;padding:22px}body .teaching-stats .stat-card strong{margin:7px 0 5px;font-size:34px;line-height:1}body .teaching-stats .stat-card span{color:#243e48;font-size:15px}body .stat-icon{color:#0eac68;background:#e5f9ed;border-radius:17px;width:56px;height:56px;box-shadow:inset 0 0 0 8px #f0fcf5}body .stat-icon.blue{color:#368cf9;background:#e5f0ff;box-shadow:inset 0 0 0 8px #f0f6ff}body .stat-icon.orange{color:#ff8c27;background:#fff0df;box-shadow:inset 0 0 0 8px #fff6ec}body .dashboard-grid{grid-template-columns:1.06fr 1fr;gap:18px}body .dashboard-grid .panel{min-height:270px;padding:20px}body .dashboard-grid>.panel:nth-child(2) .panel-heading h2:before{background:#ff9240}body .dashboard-grid .count-badge{color:#374e56;font-size:20px}body .progress-row{background:#fff;border-color:#e5edf1;border-radius:14px;padding:18px}body .progress-caption strong{color:#213e47;font-size:16px}body .progress-caption small{color:#7a8f9b;font-size:13px}body .progress-track{background:#eef2f5;border-radius:999px;height:12px}body .progress-track span{background:linear-gradient(90deg,#1cba77,#69dfa4);border-radius:999px}body .review-row{background:#fff;border:1px solid #e5edf1;border-radius:14px;gap:14px;padding:13px}body .review-row strong{color:#29424c;font-size:15px}body .review-row small{color:#788b99;font-size:13px}body .review-row .resource-icon{color:#fc8d25;background:#fff0df;border-radius:14px;padding:12px}body .review-row .subtle{min-height:36px;padding:8px 12px;font-size:13px}body .course-row{border-color:#e7f1ec}body .course-row .avatar{color:#16a36f;background:#e0f9ed}body .lesson-callout{background:linear-gradient(125deg,#effaf4,#f3fbea);border:1px solid #e4f2e4;border-radius:14px}body .welcome-banner{background:linear-gradient(115deg,#dff9eb,#effbf3 65%,#eefada);border:1px solid #daf0e4;border-radius:19px;padding:26px 28px}body .welcome-banner h2{font-size:28px;font-weight:750;line-height:1.4}body .welcome-banner p{color:#67877c}body .welcome-banner .tag{background:#d5f4e3}body .school-card,body .member-grid article,body .setup-grid article{box-shadow:none;background:#fff;border:1px solid #e4edf0;border-radius:15px;padding:22px}body .school-card h3,body .setup-grid h3{font-size:20px}body .school-card p,body .member-grid p{color:#778c93;line-height:1.8}body .school-card>.tags{gap:7px}body .setup-icon{color:#15aa70}body .setup-grid article:nth-child(2) .setup-icon{color:#3b91dc}body .setup-grid article:nth-child(3) .setup-icon{color:#f49535}body .tag{color:#079866;background:#e2f8ed;border-radius:8px;padding:5px 10px;font-size:13px;font-weight:500}body .tag.muted{color:#758892;background:#eef5f6}body .task-grid{gap:20px}body .task-top{margin-bottom:16px}body .task-card h2{color:#173d43;font-size:24px}body .task-meta{color:#7c909b;font-size:14px;line-height:1.7}body .feedback{color:#406b59;background:#edf9f3;border:1px solid #e2f0e7;border-radius:13px;padding:16px}body .resource-list article{border-color:#e6eef0;gap:16px}body .resource-icon{color:#109d76;background:#dff8ed;border-radius:13px}body .resource-list h3{font-size:18px}body .resource-list p{color:#7b909c}body table{min-width:650px;font-size:14px}body th{color:#7d8e9b;background:#f4f8f9;padding:14px 17px;font-size:14px;font-weight:500}body td{color:#57717b;border-color:#e9f0f1;padding:17px;font-size:14px}body td strong{color:#284852}body td small{color:#81929c;font-size:12px}body tr:hover td{background:#f7fcfa}body .search{color:#8496a0;border-color:#e0e9ed;border-radius:12px}body .search input{background:0 0}body .field>span,body legend{color:#34585d;font-size:14px;font-weight:600}body input,body select,body textarea{color:#344b55;min-height:45px;box-shadow:none;background:#fff;border:1px solid #dee9ed;border-radius:11px;font-size:15px}body input:focus,body select:focus,body textarea:focus{border-color:#80cdb1;outline:none;box-shadow:0 0 0 3px #26b78312}body textarea{resize:vertical;padding:14px 16px;line-height:1.9}body input[type=checkbox],body input[type=radio]{accent-color:#10a170;width:18px;height:18px;min-height:0}body .check-grid{gap:15px}body fieldset{border-color:#dfebe7;border-radius:13px}body .subject-option{border-color:#dfebe7;border-radius:11px}body .subject-option.selected{color:#068965;background:#e3f8ee;border-color:#5fc89e}body .two-column{grid-template-columns:minmax(0,1.8fr) minmax(310px,1fr);gap:20px}body .two-column .panel{padding:25px}body .guide{background:linear-gradient(150deg,#f3fcf6,#e8f8ed);border-color:#dceee0}body .guide ol{color:#507568;font-size:15px}body .inline-help{color:#6e857c;background:#f1f9f5;border:1px solid #e4f0e8;font-size:14px;line-height:1.75}body .empty-state{min-height:190px;padding:38px 20px}body .empty-state svg{color:#63b38e;background:#edfaf3;border-radius:17px}body .empty-state h3{color:#417767;font-size:18px}body .empty-state p{color:#81978c;font-size:14px}body .success{color:#178556;background:#eaf9f1;border-color:#ccecdf}body .error{color:#ba593a;background:#fff3ed;border-color:#ffd9c7}body dialog.modal{background:#fff;border:1px solid #dbeae4;border-radius:20px;width:calc(100% - 32px);max-width:740px;height:fit-content;max-height:90dvh;margin:auto;padding:26px;position:fixed;inset:0;overflow:auto;box-shadow:0 24px 85px #0d49372b}body .modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#174b3940}body .modal-heading{border-color:#e6efeb;padding-bottom:17px}body .modal-heading h2{font-size:24px;font-weight:750}body .modal-footer{z-index:2;background:#fff;border-color:#e6efeb;padding-bottom:10px;position:sticky;bottom:-26px}body .modal-footer .primary{min-width:116px}body .detail-body{color:#506f74;padding:20px 0}body .submission-detail{border-color:#e3eee8}body .assignment-summary{background:#f1faf5}body .assignment-empty{background:#f2faf6}body .attachment-list a{color:#177c5b;background:#f5fbf8;border:1px solid #dfebe7;border-radius:13px}body .ai-mode-grid{gap:12px;margin-bottom:20px}body .ai-mode{box-shadow:none;background:#fff;border-color:#e1eee7;border-radius:15px;gap:8px;padding:19px}body .ai-mode strong{color:#315c50;font-size:15px}body .ai-mode svg{color:#21a174}body .ai-mode small{color:#80988b;font-size:13px;line-height:1.7}body .ai-workbench-columns{grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr);gap:20px}body .ai-model-status{background:#eff9f4;border:1px solid #dfeee6;border-radius:12px}body .ai-upload{color:#4d8b72;background:#f8fcfa;border:1px dashed #b4d6c5;border-radius:12px;padding:18px}body .ai-upload small{color:#839a8f;font-size:13px}body .ai-output{color:#36575b;font-size:16px;line-height:1.95}body .ai-file-list>div{border-color:#e4efea}body .ai-history-item{border-color:#e5eee8;border-radius:8px}body .ai-history-item:hover{background:#f1faf5}body .ai-warning{color:#89733c;background:#fff8e3}body .page-footer{color:#8baa99;padding-top:25px;font-size:12px}body .login-layout{background:linear-gradient(135deg,#f5fdf9,#e2f8eb)}body .login-brand{color:#07553e;background:linear-gradient(150deg,#dff9eb,#d0f1df)}body .login-brand h1{color:#074f3b}body .login-brand p{color:#5e8d7b}body .login-form{background:#ffffffeb}body .login-form h1{color:#0c473b}body .login-form .error{margin:20px 0}@media (min-width:1100px){body .workspace[data-role=teacher] .page-heading:after{content:"";z-index:-1;opacity:.38;pointer-events:none;background:url(/ui-reference-teacher.png) -800px 0/1536px 1024px no-repeat;width:330px;height:125px;position:absolute;top:-13px;right:165px;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 28% 90%,#0000)}body .workspace[data-role=teacher] .sidebar nav button.active{color:#fff;background:linear-gradient(100deg,#1cb579,#159c69)}body .workspace[data-role=teacher] .sidebar nav button.active:before{display:none}}@media (max-width:1200px){body .sidebar{width:216px;padding-left:12px;padding-right:12px}body .main-area{margin-left:216px}body .sidebar .brand{font-size:22px}body .sidebar nav button{gap:13px;padding-left:14px}body .content{padding:22px}body .topbar{padding:16px 22px}body .teaching-stats .stat-card{gap:12px;padding:19px}body .stat-icon{width:48px;height:48px}body .teaching-context{max-width:300px}body .two-column,body .ai-workbench-columns{grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr)}}@media (max-width:1050px){body .ai-workbench-columns,body .two-column{grid-template-columns:1fr}body .teaching-stats{grid-template-columns:repeat(2,minmax(0,1fr))}body .dashboard-grid{grid-template-columns:1fr}body .teaching-context select:first-child{min-width:130px}}@media (max-width:800px){body .workspace{background:linear-gradient(160deg,#e4fcf2 0,#f2fcf7 320px,#eefbf5 100%)}body .sidebar{background:0 0;border-bottom:0;border-right:0;width:100%;padding:22px 20px 12px;position:relative}body .sidebar:after{display:none}body .sidebar .brand{padding:0;font-size:25px}body .brand-mark{width:40px;height:40px}body .scope-card{background:#ffffffb8;border-radius:13px;margin:15px 0 4px;padding:11px 14px}body .sidebar nav{z-index:30;overscroll-behavior:contain;padding:8px 12px calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);scrollbar-width:thin;background:#ffffffed;border-top:1px solid #dcebe4;gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-x:auto;box-shadow:0 -4px 20px #196b4810}body .sidebar nav button{white-space:nowrap;border-radius:13px;flex-direction:column;justify-content:center;gap:6px;min-width:78px;min-height:56px;padding:8px 10px;font-size:12px;display:flex}body .sidebar nav button.active{color:#05805c;background:#e1f7ec}body .sidebar nav button.active:before{display:none}body .sidebar nav button svg{flex-shrink:0;width:22px;height:22px}body .sidebar nav button svg:last-child:not(:first-child),body .sidebar-foot{display:none}body .main-area{padding-bottom:calc(92px + env(safe-area-inset-bottom));margin-left:0}body .topbar{background:0 0;border:0;height:auto;min-height:72px;padding:12px 20px}body .top-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;width:100%}body .identity{margin-right:auto}body .identity .avatar{width:42px;height:42px}body .identity strong{font-size:15px}body .identity small{font-size:12px}body .teaching-context{order:3;gap:10px;width:100%;max-width:100%}body .teaching-context select:first-child{flex:1;min-width:0}body .teaching-context select:last-child{width:108px}body .top-actions>.subtle{order:4;width:100%}body .content{padding:14px 20px 24px}body .page-heading{align-items:flex-start;gap:12px;margin-bottom:8px}body .page-heading h1{font-size:30px;line-height:1.35}body .page-heading p{font-size:14px}body .page-heading .eyebrow{font-size:11px}body .page-heading>.subtle{min-height:38px;margin-top:4px;padding:8px;font-size:12px}body .sync-line{margin-bottom:18px;font-size:12px;line-height:1.7}body .panel,body .task-card{border-radius:19px;padding:21px;box-shadow:0 5px 16px #0c8d4b04}body .panel-heading h2{font-size:20px}body .panel-heading p{font-size:13px}body .panel-heading .primary,body .panel-heading .subtle{padding:9px 12px;font-size:13px}body .section-title{flex-wrap:wrap;gap:14px}body .section-title h2{font-size:23px}body .section-title>.primary{width:auto;min-width:0}body .school-grid,body .member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body .welcome-banner{border-radius:19px;padding:22px}body .welcome-banner h2{font-size:25px}body .two-column,body .ai-workbench-columns{grid-template-columns:1fr}body .ai-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body .ai-mode{padding:16px}body .ai-mode strong{font-size:14px}body .ai-mode small{font-size:12px}body .ai-model-status{overflow-wrap:anywhere}body .page-footer{font-size:12px}body dialog.modal{border-radius:20px;max-height:calc(100dvh - 32px);padding:22px}body .modal-footer{bottom:-22px}body .primary{border-radius:13px;min-height:46px;font-size:14px}body .subtle{min-height:42px}body .task-meta{font-size:13px}body .task-grid,body .dashboard-grid{grid-template-columns:1fr}body .progress-caption{flex-wrap:wrap}body .review-row{padding:13px}body .review-row .subtle{margin-left:0}body .lesson-context{font-size:13px}}@media (max-width:550px){body .school-grid,body .member-grid,body .setup-grid{grid-template-columns:1fr}body .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body .stat-card{padding:20px 16px}body .stat-card>strong{font-size:30px}body .teaching-stats .stat-card{gap:11px;min-height:114px;padding:17px 14px}body .teaching-stats .stat-card span{font-size:13px}body .teaching-stats .stat-card strong{font-size:28px}body .teaching-stats .stat-card small{font-size:12px}body .stat-icon{width:43px;height:43px;box-shadow:none;border-radius:14px}body .stat-icon svg{width:23px;height:23px}body .toolbar{flex-wrap:wrap}body .toolbar .search{max-width:100%}body .panel-heading{flex-wrap:wrap}body .ai-select-row,body .assignment-selectors{grid-template-columns:1fr}body .check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body .ai-upload input{width:100%;max-width:100%}body .row-actions{gap:10px}body .role-toggle button{padding:7px 11px;font-size:13px}body .subject-option{min-width:0}body .selected-courses>div{font-size:14px}body .assignment-picker{padding:16px}body .two-column .panel{padding:21px}body .panel-heading h2{font-size:20px}body .review-row{flex-wrap:wrap}body .page-heading h1{font-size:28px}body .page-heading>.subtle{max-width:92px}body .modal-heading h2{font-size:22px}body .login-form{padding:30px 24px}}@media (prefers-reduced-motion:reduce){body button,body a{transition:none!important}body button.stat-card:hover{transform:none}}html body{--ink:#073b35;--green:#109b68;--muted:#70818d;--line:#e4edf0;--bg:#effbf6}body .workspace{background:linear-gradient(135deg,#f7fdfa 0%,#e9faf3 44%,#f6fcfb 100%)}body p{font-size:15px;line-height:1.8}body .sidebar:after{transform-origin:0 100%;animation:9s ease-in-out infinite campus-breathe;display:block}body .sidebar-foot{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffc7;border:1px solid #e1eee7}body .sidebar nav button{white-space:nowrap;border-radius:14px;gap:12px;min-height:49px;padding-left:14px;padding-right:26px;font-size:16px;line-height:1.5;position:relative}body .sidebar nav button svg:last-child:not(:first-child){width:13px;height:13px;margin:0;position:absolute;right:9px}body .sidebar .brand,body .sidebar .scope-card,body .sidebar-foot{flex-shrink:0}body .sidebar nav{scrollbar-width:thin;scrollbar-color:#b3d9c5 transparent;align-content:start;min-height:0;overflow-y:auto}body .sidebar-foot{margin-top:auto}body .sidebar nav button.active,body .workspace[data-role=teacher] .sidebar nav button.active{color:#fff;background:linear-gradient(100deg,#1cb579,#159c69);box-shadow:0 3px 10px #159c690c}body .sidebar nav button.active:before{display:none}body .sidebar nav button:hover:not(.active){color:#087856;background:#eaf8f0}body .topbar{background:#ffffffa8;min-height:82px}body .content{padding-top:26px}body .page-heading h1{letter-spacing:-.025em;font-size:clamp(28px,2.4vw,38px);font-weight:800;line-height:1.3}body .page-heading p{font-size:14px}body .panel,body .task-card{border-color:#e4eeea;border-radius:20px;box-shadow:0 5px 20px #147a5904}body .stat-card{border-radius:20px}body .primary{border-radius:14px;min-height:46px}body .subtle{border-radius:12px;min-height:44px}body .row-actions{gap:10px}body input,body select,body textarea{border-radius:12px;max-width:100%;min-height:46px;font-size:15px}body input[type=checkbox],body input[type=radio]{accent-color:#109b68;flex-shrink:0;min-height:0}body .field{margin:18px 0}body .field>span{line-height:1.6}body textarea{line-height:1.9}body .stat-icon{border-radius:17px}body .progress-row,body .review-row{border-radius:15px}body .account-directory .toolbar{grid-template-columns:minmax(200px,1fr) minmax(230px,.8fr) auto;align-items:center;gap:14px;display:grid}body .account-directory .search{width:100%;min-width:0;max-width:none}body .directory-class-filter{white-space:nowrap;align-items:center;gap:10px;min-width:0;display:flex}body .directory-class-filter select{flex:1;width:100%;min-width:0}body .account-directory .toolbar>.subtle{white-space:nowrap}body .directory-group-heading{flex-wrap:wrap;gap:12px}body .batch-fields{grid-template-columns:1fr 1fr;align-items:start;gap:0 20px;display:grid}body .batch-preview{overflow-wrap:anywhere;background:#f0f9f4;border:1px solid #e1ebe6;border-radius:14px;margin:16px 0;padding:16px;font-size:15px;line-height:1.8}body .modal .check-grid{gap:10px;padding:16px}body .modal .check-grid label{cursor:pointer;border:1px solid #e1ebe6;border-radius:12px;align-items:center;gap:8px;min-width:0;padding:10px;display:flex}body .modal .check-grid label:has(input:checked){color:#087b5f;background:#e5f5ed;border-color:#63bd96}body .task-card{flex-direction:column;align-items:flex-start;margin-bottom:0;display:flex}body .task-card>h2{margin-bottom:12px;font-size:24px;line-height:1.5}body .task-card>p{overflow-wrap:anywhere;width:100%;line-height:1.85}body .task-card .task-meta{color:#526c73;font-size:15px;line-height:1.85}body .task-card .feedback p{color:#456c5b;font-size:15px;line-height:1.85}body .task-card .feedback{width:100%;margin:16px 0}body .task-actions{flex-wrap:wrap;align-items:center;gap:10px;width:100%;margin-top:auto;padding-top:16px;display:flex}body .task-top{width:100%}body .task-actions .primary,body .task-actions .subtle{min-height:46px}body .resource-list article{background:#fff;border:1px solid #e4eeea;border-radius:16px;margin:12px 0;padding:18px}body .resource-list article>div{min-width:0}body .resource-list p,body .ai-output{overflow-wrap:anywhere}body .resource-list article:last-child{border:1px solid #e4eeea}body .submission-detail{border:1px solid #e1ebe6;border-radius:16px;margin:14px 0;padding:18px}body dialog.modal{border-radius:22px;padding:26px;scroll-padding-block:80px 90px}body .modal-heading{z-index:3;background:#fff;margin-top:-12px;padding:12px 0 16px;position:sticky;top:-26px}body .modal-heading h2{font-size:24px}body .modal-heading .icon-button{flex-shrink:0}body .modal-footer{gap:10px;margin-top:20px;padding:16px 0 10px;bottom:-26px}body .modal[data-kind=submission]{max-width:820px}body .modal[data-kind=submission] textarea{height:220px;min-height:200px;font-size:16px;line-height:1.9}body .modal[data-kind=submission] .answer-attachments{margin:16px 0}body .modal[data-kind=submission] .attachment-pickers{grid-template-columns:1fr 1fr;display:grid}body .modal[data-kind=submission] .attachment-pickers label{width:100%;min-width:0}body .modal[data-kind=submission] .attachment-pickers input{width:100%;max-width:100%}body .login-form form{background:#fff;border:1px solid #e1ebe6;border-radius:24px;width:100%;max-width:460px;padding:36px;box-shadow:0 12px 40px #123d3406}body .login-note{margin-top:22px}body .login-note p{font-size:12px}body{--campus-card:#fff;--campus-soft:#f0faf4;--campus-border:#e0eee7;--campus-radius:20px}body .panel>h2,body .learning-hub h2{color:#123d34;font-size:23px;line-height:1.5}body .panel>h3,body .learning-hub h3{font-size:19px;line-height:1.6}body .school-card,body .member-grid article,body .setup-grid article{border:1px solid var(--campus-border);border-radius:var(--campus-radius);background:var(--campus-card);padding:24px}body .school-card h3,body .member-grid h3{font-size:21px;line-height:1.5}body .school-card p,body .member-grid p,body .setup-grid p{font-size:15px;line-height:1.85}body .actions,body .toolbar,body .row-actions{align-items:center;gap:12px}body .actions{flex-wrap:wrap;display:flex}body .toolbar{flex-wrap:wrap}body .toolbar .search{background:#ffffffed;border-radius:14px;flex:1;min-width:200px;min-height:46px}body .directory-group-heading{border:1px solid var(--campus-border);background:#edf9f2;border-radius:16px;padding:17px 20px}body .account-directory .role-tabs{flex-wrap:wrap;gap:10px}body .table-wrap{border-color:var(--campus-border);border-radius:16px}body th{color:#55796d;background:#f0f9f4;padding:16px 18px;font-size:14px}body td{border-color:#e8f1ec;padding:18px;font-size:15px;line-height:1.7}body td small{font-size:12px;line-height:1.7}body .tag{border-radius:10px;padding:5px 11px;line-height:1.5}body .feedback,body .inline-help,body .assignment-summary,body .assignment-empty,body .setup-notice{border-radius:16px;line-height:1.85}body .empty,body .empty-state{color:#5f8073;border-radius:18px;line-height:1.85}body .empty{background:var(--campus-soft);text-align:center;border:1px dashed #cce4d6;padding:28px}body .error,body .success,body .ai-warning{overflow-wrap:anywhere;border-radius:14px;font-size:14px;line-height:1.8}body .learning-hub details,body details.submission-detail{border:1px solid var(--campus-border);background:#fbfefc;border-radius:16px;margin:16px 0;padding:18px 20px}body .learning-hub summary,body .submission-detail summary{cursor:pointer;color:#245a46;min-height:40px;padding:6px 0;font-size:16px;font-weight:650;line-height:1.8}body summary:focus-visible{outline-offset:4px;border-radius:8px;outline:3px solid #6cd4a9}body .learning-hub details[open]{background:#fff;box-shadow:0 5px 20px #147a5904}body .learning-hub details[open]>summary{border-bottom:1px solid #e4eee8;margin-bottom:14px;padding-bottom:14px}body .learning-hub .workflow-bottom{border-top:1px solid var(--campus-border);margin-top:18px;padding-top:18px}body .ai-mode{border-radius:18px;min-height:120px;padding:20px}body .ai-mode strong{font-size:16px}body .ai-mode.selected{background:#e7f8ee;border-color:#66bd94;box-shadow:inset 0 3px #18a970}body .ai-model-status,body .ai-upload{background:#f2fbf5;border-color:#cde6d7;border-radius:16px}body .ai-history-item{background:#fbfefc;border:1px solid #e1eee6;border-radius:14px;margin-bottom:8px;padding:16px}body .ai-output{overflow-wrap:anywhere;font-size:16px;line-height:1.95}body .ai-file-list>div{background:#f4fbf6;border-radius:12px;gap:12px;margin:8px 0}body .attachment-list{gap:12px}body .attachment-list a{background:#f3fbf6;border-color:#dbece1;border-radius:16px;padding:16px}body .attachment-list strong{overflow-wrap:anywhere}body .answer-attachments{border:1px solid var(--campus-border);background:#fbfefc;border-radius:18px;padding:20px}body .attachment-pickers .subtle{background:#fff;border-radius:14px;overflow:hidden}body input[type=file]{min-width:0;padding:10px;font-size:14px}body .narrow{max-width:780px}body .narrow .field{margin:22px 0}body .login-brand{isolation:isolate;position:relative;overflow:hidden}body .login-brand:after{content:"";opacity:.6;pointer-events:none;z-index:-1;background:url(/ui-reference-student.png) 0 100%/1672px 941px no-repeat;width:240px;height:240px;position:absolute;bottom:0;left:0;-webkit-mask-image:linear-gradient(#0000,#000 35%);mask-image:linear-gradient(#0000,#000 35%)}body .login-form h2{color:#123d34;font-size:30px}body .login-form .field>span{font-size:15px}body .login-form .primary{border-radius:15px;min-height:50px}@media (min-width:1100px){body .workspace:not([data-role=teacher]) .page-heading:after{content:"";z-index:-1;opacity:.25;pointer-events:none;background:url(/ui-reference-teacher.png) -800px 0/1536px 1024px no-repeat;width:330px;height:125px;animation:11s ease-in-out infinite heading-breeze;position:absolute;top:-13px;right:165px;-webkit-mask-image:linear-gradient(90deg,#0000,#000 28% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 28% 90%,#0000)}}@keyframes campus-breathe{0%,to{opacity:.72;transform:translateY(0)}50%{opacity:.84;transform:translateY(-3px)}}@media (min-width:1100px){body .workspace[data-role=teacher] .page-heading:after{animation:11s ease-in-out infinite heading-breeze;display:block}}@keyframes heading-breeze{0%,to{transform:translate(0)}50%{transform:translate(5px)}}@media (prefers-reduced-motion:reduce){body .sidebar:after,body .workspace .page-heading:after{animation:none;transform:none}body button,body a{transition:none}}@media (max-width:1200px) and (min-width:801px){body .account-directory .toolbar{grid-template-columns:1fr 1fr}body .account-directory .toolbar>.subtle{justify-self:start}}@media (max-width:800px){body .sidebar:after{display:none}body .sidebar nav button{gap:6px;min-height:60px;padding:8px 12px;font-size:13px}body .sidebar nav{align-content:normal;overflow-y:hidden}body .sidebar nav button.active,body .workspace[data-role=teacher] .sidebar nav button.active{color:#05805c;box-shadow:none;background:#e1f7ec}body .topbar{background:0 0;height:auto;min-height:72px;padding:12px 18px}body .content{padding:14px 18px 24px}body .page-heading h1{font-size:28px}body .page-heading:after{display:none}body .panel,body .task-card{padding:20px}body .account-directory .toolbar{grid-template-columns:1fr}body .directory-class-filter{width:100%}body .school-card,body .member-grid article{padding:20px}body .learning-hub details,body details.submission-detail,body .answer-attachments{padding:16px}body .toolbar .search{flex-basis:100%;min-width:0}body .login-brand:after{display:none}body .task-card>h2{font-size:22px}body .login-form{padding:24px}body .login-form form{padding:28px}}@media (max-width:550px){body .batch-fields{grid-template-columns:1fr;gap:0}body dialog.modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:18px}body .modal-heading{top:-18px}body .modal-footer{bottom:-18px}body .modal[data-kind=submission] .attachment-pickers{grid-template-columns:1fr}body .modal .check-grid{gap:8px;padding:12px}body .modal .check-grid label{padding:8px;font-size:14px}body .two-column .panel{padding:20px}body .login-form form{padding:24px}}.cs-root{--cs-green:#109b68;--cs-dark:#123d34;--cs-line:#e1ebe6;color:var(--cs-dark)}.cs-root button,.cs-root input,.cs-root select,.cs-root textarea{font:inherit}.cs-root button{cursor:pointer}.cs-root button:disabled{cursor:not-allowed;opacity:.48}.cs-root :focus-visible{outline-offset:3px;outline:3px solid #69caa6}.cs-heading{justify-content:space-between;align-items:center;gap:20px;margin:6px 0 24px;display:flex}.cs-heading h2{margin:0 0 8px;font-size:28px}.cs-heading p,.cs-muted{color:#70818d;font-size:13px;line-height:1.7}.cs-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cs-row button{justify-content:center;align-items:center;gap:7px;display:inline-flex}.cs-root .primary{color:#fff;background:linear-gradient(100deg,#109b68,#10b77c);border:0;border-radius:10px;min-height:44px;padding:12px 20px}.cs-root .subtle{color:#108456;background:#f7fcf9;border:1px solid #c6e5d5;border-radius:10px;min-height:42px;padding:10px 15px}.cs-root button:not(.primary):not(.subtle){color:#187953;background:0 0;border:0;border-radius:8px;padding:9px 12px}.cs-tabs{border-bottom:1px solid var(--cs-line);gap:20px;margin-bottom:22px;display:flex;overflow-x:auto}.cs-root .cs-tabs button{white-space:nowrap;color:#70818d;border-bottom:3px solid #0000;border-radius:0;min-height:46px}.cs-root .cs-tabs button.active{border-color:var(--cs-green);color:var(--cs-green);font-weight:700}.cs-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:22px;display:flex}.cs-search{border:1px solid var(--cs-line);background:#fff;border-radius:10px;flex:1;align-items:center;gap:8px;min-width:210px;padding:0 12px;display:flex}.cs-root .cs-search input{background:0 0;border:0;outline:0;width:100%;min-width:0}.cs-root input:not([type=checkbox]):not([type=file]),.cs-root select,.cs-root textarea{box-sizing:border-box;border:1px solid var(--cs-line);color:#294756;background:#fff;border-radius:10px;max-width:100%;min-height:44px;padding:10px 12px}.cs-root .cs-search input{border:0}.cs-root textarea{resize:vertical;width:100%;min-height:100px;line-height:1.7}.cs-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.cs-card,.cs-panel{border:1px solid var(--cs-line);background:#fff;border-radius:16px;min-width:0;padding:24px;box-shadow:0 5px 20px #123d3405}.cs-card{flex-direction:column;gap:12px;display:flex}.cs-card h3{overflow-wrap:anywhere;margin:0;font-size:19px}.cs-card h3 small{color:#7b8a94;font-size:12px;font-weight:400}.cs-card-top{justify-content:space-between;align-items:center;display:flex}.cs-icon{color:#0a9a69;background:linear-gradient(130deg,#e0f4e9,#f1faf5);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex}.cs-tags{flex-wrap:wrap;gap:7px;display:flex}.cs-tags span{color:#627986;background:#f0f5f6;border-radius:5px;padding:3px 8px;font-size:12px}.cs-description{color:#70818d;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.8;display:-webkit-box;overflow:hidden}.cs-card .cs-row{margin-top:auto}.cs-badge{color:#13976a;white-space:nowrap;background:#e6f6ed;border-radius:20px;padding:5px 11px;font-size:12px}.cs-badge.pending{color:#a9710e;background:#fff3d8}.cs-badge.changes,.cs-badge.offline{color:#bd642b;background:#fff0e3}.cs-badge.draft{color:#70818d;background:#f0f3f5}.cs-list{gap:14px;display:grid}.cs-list .cs-card{grid-template-columns:72px 1fr auto;align-items:center;gap:10px 16px;display:grid}.cs-list .cs-card-top{flex-direction:column;grid-row:span 2;gap:8px}.cs-list h3,.cs-list .cs-tags{grid-column:2}.cs-list .cs-description,.cs-list .cs-muted,.cs-list .cs-feedback{grid-column:2/-1;margin:0}.cs-list .cs-row{grid-column:2/-1;justify-content:flex-end}.cs-state-tabs{flex-wrap:wrap;gap:8px;display:flex}.cs-root .cs-state-tabs button{border:1px solid var(--cs-line);color:#70818d;background:#fff}.cs-root .cs-state-tabs .active{color:#0a8c5e;background:#e5f5ed;border-color:#75c7a6}.cs-feedback{color:#96622d;background:#fff4e4;border-radius:8px;padding:10px 14px;font-size:13px}.cs-empty{text-align:center;color:#7c9189;background:#fbfefc;border:1px dashed #cce5d8;border-radius:16px;padding:55px 20px}.cs-center{text-align:center}.cs-progress{justify-content:space-between;gap:18px;margin:24px 0;display:flex}.cs-progress>span{color:#85939b;align-items:center;gap:9px;display:flex}.cs-progress b,.cs-step>span{background:#edf3f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.cs-progress .active{color:var(--cs-green);font-weight:700}.cs-progress .active b{background:var(--cs-green);color:#fff}.cs-split{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;gap:20px;display:grid}.cs-live-preview{position:sticky;top:90px}.cs-fields{gap:16px;display:grid}.cs-fields>label,.cs-fields label,.cs-practice>label{color:#416257;gap:8px;font-size:14px;font-weight:600;display:grid}.cs-fields fieldset{border:1px solid var(--cs-line);border-radius:10px;min-width:0;padding:14px}.cs-fields legend{color:#416257;font-size:14px}.cs-form-row{grid-template-columns:1fr 1fr;gap:15px;display:grid}.cs-checks{flex-wrap:wrap;gap:10px 16px;margin:15px 0;display:flex}.cs-fields .cs-checks label,.cs-checks label,.cs-consent{align-items:flex-start;gap:8px;font-size:13px;line-height:1.8;display:flex}.cs-root input[type=checkbox]{-webkit-appearance:auto;appearance:auto;accent-color:#109b68;flex-shrink:0;width:17px;height:17px;margin:4px 0 0}.cs-step-edit{border-bottom:1px solid #edf3f0;margin-bottom:12px;padding:12px 0}.cs-preview h2{overflow-wrap:anywhere;margin-top:0;font-size:22px}.cs-preview h3{margin:24px 0 10px;font-size:16px}.cs-preview p{color:#70818d;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.cs-step{gap:12px;margin-bottom:14px;display:flex}.cs-step>span{color:#109b68;background:#e6f6ed;font-weight:700}.cs-step p{margin:0}.cs-root details{border-top:1px solid var(--cs-line);overflow-wrap:anywhere;padding:14px 0}.cs-root summary{cursor:pointer;color:#294756;font-weight:600}.cs-source,.cs-comparison pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f8f6;border-radius:10px;max-height:65vh;padding:18px;font:13px/1.8 ui-monospace,monospace;overflow:auto}.cs-model{background:#f0f9f4;border-radius:10px;gap:12px;margin:20px 0 12px;padding:14px;display:flex}.cs-model p{color:#70818d;margin:5px 0;font-size:12px}.cs-upload{background:#fafdfb;border:1px dashed #bfdccd;border-radius:12px;flex-direction:column;align-items:center;gap:14px;margin-bottom:22px;padding:25px;display:flex}.cs-upload p{text-align:center;color:#70818d;font-size:13px}.cs-file-button{color:#109b68;cursor:pointer;border:1px solid #91d5b5;border-radius:9px;padding:11px;display:inline-block}.cs-file-button input{max-width:240px;margin-top:8px;display:block}.cs-footer{border-top:1px solid var(--cs-line);flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:20px;display:flex}.cs-consent{margin-top:22px}.cs-detail{max-width:850px;margin:auto}.cs-detail>.cs-icon{margin-bottom:20px}.cs-practice{max-width:850px;margin:auto}.cs-practice>label{margin:24px 0}.cs-practice textarea{min-height:180px}.cs-modal-backdrop{z-index:110;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#14382e5e;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.cs-modal{box-sizing:border-box;width:min(720px,100%);max-height:88dvh;overflow:auto}.cs-modal p{color:#70818d;line-height:1.8}.cs-modal textarea{min-height:220px}.cs-modal .cs-row{justify-content:flex-end;margin-top:16px}@media (max-width:1150px){.cs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-split{grid-template-columns:1fr}.cs-live-preview{position:static}.cs-heading{align-items:flex-start}.cs-heading h2{font-size:24px}}@media (max-width:650px){.cs-grid{grid-template-columns:1fr}.cs-heading{flex-direction:column}.cs-panel,.cs-card{padding:16px}.cs-form-row{grid-template-columns:1fr}.cs-list .cs-card{align-items:stretch;display:flex}.cs-list .cs-card-top{flex-direction:row}.cs-root .cs-footer button{flex:1;min-width:120px}.cs-progress{gap:6px;font-size:12px}.cs-progress>span{flex-direction:column;gap:6px}.cs-root .cs-toolbar select{flex:1;min-width:120px}}body .cs-root .cs-toolbar{grid-template-columns:minmax(200px,1fr) 150px 150px;align-items:center;display:grid}body .cs-root .cs-toolbar select{width:100%;min-width:0}body .cs-root .cs-search{width:auto;min-width:0;max-width:none;margin:0}body .cs-root .cs-search input{width:100%;box-shadow:none;background:0 0;border:0;margin:0}body .cs-root .cs-grid .cs-card .cs-row{display:block}body .cs-root .cs-grid .cs-card .cs-row button{border:1px solid #9bd6bc;justify-content:center;width:100%}body .cs-root .cs-heading{margin-top:16px}body .cs-root .cs-state-tabs{grid-column:1/-1}@media (max-width:650px){body .cs-root .cs-toolbar{grid-template-columns:1fr 1fr}body .cs-root .cs-search{grid-column:1/-1}}.cs-practice .cs-progress{justify-content:flex-start;gap:14px;padding-bottom:8px;overflow-x:auto}.cs-practice .cs-progress>span{flex-shrink:0}.cs-comparison{grid-template-columns:1fr 1fr;gap:12px;display:grid}.cs-comparison h3:first-of-type{grid-area:1/1}.cs-comparison h3:nth-of-type(2){grid-area:1/2}.cs-comparison pre{grid-row:2;min-width:0}@media (max-width:650px){.cs-comparison{display:block}}.cs-visually-hidden{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.cs-directory{background:#fff;border:1px solid #e1ebe6;border-radius:16px;overflow:auto}.cs-directory table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.cs-directory th{text-align:left;color:#70818d;background:#f1f7f5;padding:16px;font-size:12px;font-weight:500}.cs-directory th:first-child{width:40%}.cs-directory th:nth-child(2){width:9%}.cs-directory th:nth-child(3){width:16%}.cs-directory th:nth-child(4){width:12%}.cs-directory td{vertical-align:top;color:#70818d;overflow-wrap:anywhere;border-top:1px solid #edf3f0;padding:18px 16px}.cs-directory-title{align-items:flex-start;gap:12px;display:flex}.cs-directory-title .cs-icon{border-radius:10px;width:42px;height:42px}.cs-directory-title img{width:42px;height:42px}.cs-directory strong{color:#123d34;font-size:14px}.cs-directory small{background:#f0f5f6;border-radius:4px;margin-left:8px;padding:2px 6px;font-size:11px;display:inline-block}.cs-directory p{margin:6px 0 0;font-size:12px;line-height:1.7}.cs-directory-actions .cs-row{gap:2px}.cs-root .cs-directory-actions button{background:0 0;border:0;min-height:32px;padding:5px 6px;font-size:12px}.cs-directory time{font-size:12px;line-height:1.8}.cs-directory .cs-directory-feedback{border:0;padding:8px 0 0}.cs-directory-feedback summary{color:#b27425;font-size:12px}.cs-directory .cs-live-version{background:#e7f6ee;margin:8px 0 0}.cs-review-grid{grid-template-columns:190px minmax(0,1fr) 250px;gap:16px}.cs-review-grid>.cs-panel{padding:18px}.cs-review-queue h3{margin:0;font-size:15px}.cs-root .cs-review-choice{text-align:left;color:#70818d;background:#f7faf8;border:1px solid #0000;border-radius:10px;flex-direction:column;align-items:flex-start;gap:8px;width:100%;margin-bottom:10px;padding:14px 10px;display:flex}.cs-review-choice strong{color:#123d34;font-size:13px}.cs-review-choice>span:not(.cs-badge){font-size:11px}.cs-root .cs-review-choice.selected{background:#e7f6ee;border-color:#7ac8a8}.cs-review-editor-shell{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:16px;display:grid}.cs-review-editor-shell h3{color:#70818d;font-size:13px}.cs-original-pane .cs-source{max-height:65vh;margin:0;padding:12px;font-size:12px}.cs-root[data-view=review]>.cs-progress{display:none}.cs-root[data-view=review] .cs-editor-panel{max-height:76vh;overflow:auto}.cs-root[data-view=review] .cs-fields{gap:12px}.cs-root[data-view=review] .cs-fields textarea{min-height:80px}.cs-root[data-view=review] .cs-checks{margin:16px 0;display:grid}.cs-root[data-view=review] .cs-footer{gap:10px;display:grid}.cs-root[data-view=review] .cs-footer button{width:100%}.cs-review-grid .cs-live-preview{top:20px}.cs-review-grid .cs-live-preview h3{margin-top:0;font-size:15px}.cs-review-grid .cs-model{font-size:12px}.cs-review-grid .cs-model svg{flex-shrink:0}.cs-review-grid .cs-model strong{overflow-wrap:anywhere}@media (max-width:1400px){.cs-review-grid{grid-template-columns:160px minmax(0,1fr) 220px}.cs-review-editor-shell{display:block}.cs-original-pane{display:none}}@media (max-width:1050px){.cs-review-grid{grid-template-columns:1fr}.cs-review-queue{display:none}.cs-root[data-view=review] .cs-editor-panel{max-height:none}.cs-review-grid .cs-live-preview{position:static}}@media (max-width:700px){.cs-directory table,.cs-directory tbody,.cs-directory tr,.cs-directory td{box-sizing:border-box;width:100%;display:block}.cs-directory thead{display:none}.cs-directory tr{border-bottom:1px solid #e1ebe6;padding:12px 0}.cs-directory td{border:0;padding:6px 16px}.cs-directory td:not(:first-child):before{content:attr(data-label);color:#85909c;min-width:72px;font-size:12px;display:inline-block}.cs-directory-actions{vertical-align:top;display:inline-block}.cs-directory-title{margin-bottom:10px}}.cs-directory-search{max-width:480px;min-height:44px;margin:0 0 18px;display:flex}.cs-root .cs-directory-search input{box-shadow:none;border:0}.cs-review-grid .cs-fields fieldset{padding:10px}.cs-review-grid .cs-fields .cs-checks{gap:6px 10px;display:flex}.cs-learning-workspace{grid-template-columns:minmax(300px,.85fr) minmax(420px,1.15fr);align-items:start;gap:24px;display:grid}.cs-learning-workspace .cs-practice{box-sizing:border-box;border-radius:24px;width:100%;max-width:none;margin:0;position:sticky;top:20px}.cs-learning-workspace .cs-practice h2{margin-top:18px;font-size:22px;line-height:1.5}.cs-learning-workspace .cs-practice h3{background:#f1faf5;border-radius:14px;padding:18px;font-size:16px;line-height:1.9}.cs-validation{color:#8c5420;background:#fff8ee;border:1px solid #edd3a6;border-radius:16px;margin-bottom:20px;padding:16px 18px;scroll-margin-top:110px;line-height:1.8}.cs-validation>div{flex-wrap:wrap;gap:6px 12px;display:flex}.cs-root .cs-validation button{color:#9a4521;text-underline-offset:3px;text-align:left;min-height:32px;padding:4px 0;text-decoration:underline}.cs-field-error{color:#b33e33;font-size:13px;line-height:1.8;display:block}.cs-guided-editor [aria-invalid=true]{background:#fffaf7!important;border-color:#cf7e6e!important}.cs-guided-editor label>small{color:#7c8e87;font-size:12px;line-height:1.8}.cs-editor-caption{background:#eef8f2;border-radius:14px;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:16px;display:flex}.cs-editor-caption span{color:#708278;font-size:12px}.cs-guided-editor fieldset,.cs-guided-editor input,.cs-guided-editor textarea{scroll-margin-top:100px}.cs-tutor{box-sizing:border-box;overflow-wrap:anywhere;border-radius:24px;min-width:0;padding:24px}.cs-tutor-heading{border-bottom:1px solid #e7f0ea;align-items:center;gap:12px;padding-bottom:16px;display:flex}.cs-tutor-heading>div{flex:1;min-width:0}.cs-tutor h3{margin:0;font-size:21px}.cs-tutor-heading p{color:#6d847b;margin:5px 0;font-size:12px}.cs-tutor-icon{color:#0d9a68;background:#e4f6ec;border-radius:15px;padding:12px;display:flex}.cs-tutor-intro{color:#6f837a;font-size:13px;line-height:1.9}.cs-tutor>label,.cs-tutor-session label{color:#496a5c;flex-direction:column;gap:8px;margin:18px 0;font-size:13px;display:flex}.cs-tutor>label input:not([type=checkbox]),.cs-tutor select{width:100%;min-width:0}.cs-tutor>label textarea{min-height:108px}.cs-tutor-session{align-items:end;gap:12px;display:flex}.cs-tutor-session label{flex:1;min-width:0;margin-bottom:0}.cs-tutor-session button{flex-shrink:0;align-items:center;gap:6px;display:flex}.cs-poem-search{background:#f4faf6;border:1px solid #dcece1;border-radius:16px;margin-top:20px;padding:16px}.cs-poem-search summary{color:#237452;cursor:pointer;font-size:14px}.cs-poem-search summary svg{vertical-align:middle}.cs-poem-search .cs-form-row{margin-top:12px}.cs-root .cs-poem-choice{text-align:left;background:#fff;border:1px solid #d9e8df;border-radius:12px;align-items:center;gap:10px;width:100%;margin-top:8px;padding:12px;display:flex}.cs-poem-choice span{color:#70857b;font-size:12px}.cs-poem-choice small{color:#129263;margin-left:auto}.cs-tutor-materials{background:#f8fbf9;border:1px dashed #cce2d4;border-radius:16px;margin:18px 0;padding:16px}.cs-tutor-materials>small{color:#7b8c83;margin-top:10px;font-size:12px;line-height:1.9;display:block}.cs-tutor .cs-file-button{box-sizing:border-box;background:#fff;max-width:100%}.cs-material{border-top:1px solid #e7efe9;align-items:center;gap:8px;margin-top:10px;padding-top:10px;font-size:12px;display:flex}.cs-material label{overflow-wrap:anywhere;flex:1;align-items:center;gap:7px;min-width:0;display:flex}.cs-material small{color:#83958b;white-space:nowrap}.cs-tutor label.cs-tutor-consent{background:#eff8f2;border-radius:12px;flex-direction:row;align-items:flex-start;gap:10px;padding:12px;font-size:12px;line-height:1.9;display:flex}.cs-tutor-consent input{accent-color:#109b68;flex-shrink:0;margin-top:5px}.cs-tutor-start{justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.cs-tutor-plan{background:#f8fcfa;border:1px solid #cfe7d9;border-radius:16px;margin:20px 0;padding:16px}.cs-tutor-plan summary{cursor:pointer;font-size:14px;font-weight:600}.cs-tutor-plan div{margin-top:12px}.cs-tutor-plan b{font-size:13px}.cs-tutor-plan p{white-space:pre-wrap;color:#657d70;margin:6px 0;font-size:13px;line-height:1.9}.cs-chat-log{overscroll-behavior:contain;background:#f4f8f6;border:1px solid #e7efea;border-radius:18px;min-height:180px;max-height:460px;margin:20px 0 10px;padding:14px;overflow:auto}.cs-chat-message{background:#fff;border:1px solid #e3ece6;border-radius:16px 16px 16px 4px;max-width:94%;margin:12px 0;padding:14px}.cs-chat-message.user{background:#e6f5ed;border-color:#cde7d8;border-radius:16px 16px 4px;margin-left:auto}.cs-chat-message strong{color:#3d7d60;font-size:12px}.cs-chat-message p{white-space:pre-wrap;margin:8px 0 0;font-size:14px;line-height:1.9}.cs-chat-message small{color:#698475;font-size:11px}.cs-chat-welcome{text-align:center;color:#7b9385;padding:30px 16px}.cs-chat-welcome p{font-size:13px;line-height:1.9}.cs-tutor-modes{flex-wrap:wrap;gap:6px;display:flex}.cs-root .cs-tutor-modes button{background:#f8fcf9;border:1px solid #d8e9de;border-radius:20px;min-height:36px;padding:8px 10px;font-size:12px}.cs-tutor-notice{color:#4f7d61;background:#edf8f1;border-radius:12px;padding:12px;font-size:12px;line-height:1.9}.cs-tutor-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.cs-tutor-footer small{color:#7d8f83;font-size:11px;line-height:1.8}.cs-tutor-footer button{flex-shrink:0;align-items:center;gap:8px;display:flex}@media (max-width:1150px){.cs-learning-workspace{grid-template-columns:1fr}.cs-learning-workspace .cs-practice{position:static}.cs-tutor{width:100%}}@media (max-width:650px){.cs-tutor{padding:16px}.cs-tutor-session{flex-wrap:wrap}.cs-tutor-session label{flex-basis:100%}.cs-tutor-heading{flex-wrap:wrap}.cs-tutor-heading h3{font-size:19px}.cs-tutor-footer{align-items:flex-end}.cs-chat-log{max-height:400px}.cs-poem-choice small{display:none}}body .cs-root .cs-tutor details.cs-poem-search,body .cs-root .cs-tutor details.cs-tutor-plan{border:1px solid #dcece1;padding:16px}body .cs-root .cs-tutor .cs-poem-search>summary{align-items:center;gap:8px;font-size:14px;list-style:none;display:flex}body .cs-root .cs-tutor .cs-poem-search>summary::-webkit-details-marker{display:none}body .cs-root .cs-tutor button.cs-poem-choice{background:#fff;border:1px solid #d9e8df;border-radius:12px;padding:12px}body .cs-root .cs-tutor details.cs-tutor-setup{background:#fbfefc;border:1px solid #dcece1;border-radius:16px;margin:18px 0;padding:16px}.cs-tutor-setup>summary{font-size:14px;line-height:1.8}.cs-tutor-setup>label{color:#496a5c;flex-direction:column;gap:8px;margin:18px 0;font-size:13px;display:flex}.cs-tutor-setup>label input:not([type=checkbox]){width:100%}.cs-tutor-setup>label textarea{min-height:108px}body .cs-root .cs-tutor .cs-tutor-modes button{background:#f8fcf9;border:1px solid #d8e9de;border-radius:20px;min-height:36px;padding:8px 10px;font-size:12px}
