@font-face{font-family:Inter;src:url(/platform/fonts/inter/InterVariable.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Inter;src:url(/platform/fonts/inter/InterVariable-Italic.woff2)format("woff2");font-style:italic;font-weight:100 900;font-display:swap}@font-face{font-family:Montserrat;src:url(/platform/fonts/montserrat/MontserratVariable.ttf)format("truetype");font-style:normal;font-weight:100 900;font-display:swap}:root{--brand-green:#055560;--brand-lime:#ccef00;--brand-pink:#fc75eb;--brand-yellow:#ff9e00;--ink:#193f40;--page-bg:#f5f7f4;--surface:#fff;--line:#e0e7e2;--heading-font:Montserrat, Inter, sans-serif;color:var(--ink);background:var(--page-bg);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,input,textarea,select{font:inherit}input::file-selector-button{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{background:var(--brand-green);color:#f9fbf5;justify-content:space-between;align-items:center;gap:22px;min-height:80px;padding:0 32px;display:flex}.brand,.auth-brand{color:inherit;letter-spacing:-.04em;align-items:center;gap:10px;font-size:22px;font-weight:500;text-decoration:none;display:inline-flex}.brand-logo{width:220px;max-width:100%;height:auto;display:block}.workspace-layout{grid-template-columns:210px minmax(0,1fr);min-height:calc(100vh - 80px);display:grid}.workspace-sidebar{border-right:1px solid var(--line);background:var(--surface);padding:28px 16px}.workspace-nav{gap:8px;display:grid;position:sticky;top:24px}.workspace-nav button{color:#435f55;text-align:left;background:0 0;border:0;border-radius:11px;min-height:46px;padding:12px 16px;font-weight:700}.workspace-nav button:hover{background:#e8eeea}.workspace-nav button[aria-current=page]{color:var(--brand-green);background:var(--brand-lime)}.material-breadcrumbs{color:#60716a;overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:24px;font-size:14px;display:flex}.material-breadcrumbs>span{align-items:center;gap:10px;min-width:0;display:inline-flex}.material-breadcrumbs a{color:var(--brand-green);text-underline-offset:4px}.material-list-tools{align-items:center;gap:16px;margin-top:32px;display:flex}.material-search{flex:1;min-width:0;position:relative}.material-search svg{fill:none;stroke:#8ba299;stroke-width:2px;width:24px;height:24px;position:absolute;top:15px;left:16px}.material-search input{width:100%;min-height:54px;color:var(--ink);background:#fff;border:1px solid #dbe4de;border-radius:12px;padding:14px 16px 14px 50px}.material-sort select{color:#435f55;background:#fff;border:1px solid #dbe4de;border-radius:12px;max-width:100%;min-height:54px;padding:12px}.material-list-count{color:#71807a;margin:24px 0;font-size:14px;font-weight:650}.material-create{width:100%;min-height:126px;color:var(--brand-green);background:#fff;border:1px solid #dbe4de;border-radius:16px;align-content:center;justify-items:center;gap:10px;margin-bottom:24px;padding:20px;font-size:20px;font-weight:720;display:grid}.material-create>span{font-size:30px;line-height:1}.material-create:hover{background:var(--surface);border-color:#91b1a4}.material-create:focus-visible,.material-node-link:focus-visible,.material-order:focus-visible{outline-offset:3px;outline:3px solid #b7d958}.material-node-list{margin:0;padding:0;list-style:none}.material-node-list>li{border-top:1px solid var(--line);align-items:center;gap:20px;padding:22px 0;display:flex}.material-node-list>li:last-child{border-bottom:1px solid var(--line)}.material-node-link{min-width:0;color:var(--ink);border-radius:12px;flex:1;align-items:center;gap:22px;padding:8px;text-decoration:none;display:flex}.material-node-link:hover{background:#eaf0e7}.material-node-initial{width:54px;height:70px;color:var(--brand-lime);background:var(--brand-green);font-family:var(--heading-font);border-radius:4px 11px 11px 4px;flex-shrink:0;place-items:center;font-size:26px;font-weight:800;display:grid;box-shadow:inset 4px 0 #ffffff1f}.material-node-list>li:nth-child(3n+2) .material-node-initial{color:var(--brand-green);background:var(--brand-lime)}.material-node-list>li:nth-child(3n) .material-node-initial{color:var(--brand-green);background:#f3dbef}.material-node-label{overflow-wrap:anywhere;gap:10px;min-width:0;display:grid}.material-node-label strong{font-size:21px;font-weight:650}.material-node-label small{color:#71807a}.material-node-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.material-order{color:#315048;background:#fff;border:1px solid #dbe4de;border-radius:10px;width:44px;height:44px}.material-order:disabled{opacity:.4;cursor:default}.material-node-actions .danger{color:#934336}.workspace-nav button:focus-visible,.sidebar-menu-toggle:focus-visible{outline-offset:3px;outline:3px solid #b7d958}.sidebar-menu-toggle{color:#f9fbf5;background:0 0;border:1px solid #55776f;border-radius:9px;min-height:44px;padding:8px 12px;font-weight:700;display:none}.account-menu{align-items:center;gap:14px;display:flex}.account-menu>span{text-align:right;line-height:1.15;display:grid}.account-menu small{color:#bcd0c8;margin-top:4px}.logout-control{gap:6px;display:flex;position:relative}.logout-control button{color:#f9fbf5;background:0 0;border:1px solid #55776f;border-radius:9px;padding:8px 11px;font-weight:700}.logout-control button:disabled{opacity:.7;cursor:wait}.logout-control .switch-user-button{place-items:center;width:40px;height:40px;padding:8px;display:grid}.switch-user-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.logout-control [role=alert]{z-index:5;color:#843e31;background:#fbe8e3;border-radius:9px;width:230px;padding:9px 11px;font-size:12px;line-height:1.35;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 10px 28px #09241d29}.auth-page{background:radial-gradient(circle at 20% 15%, #e8f2c6 0, transparent 36%), var(--page-bg);place-items:center;min-height:100vh;padding:32px 20px;display:grid}.auth-card{background:#fffffff0;border:1px solid #dce4de;border-radius:24px;width:min(460px,100%);padding:42px;box-shadow:0 24px 70px #183e351f}.auth-brand{color:var(--brand-green);margin-bottom:36px}.auth-card h1{font-size:clamp(38px,9vw,52px)}.auth-lede{color:#65736e;margin:16px 0 28px;line-height:1.55}.auth-form{gap:20px;display:grid}.auth-form>label{color:#43564f;gap:8px;font-size:14px;font-weight:720;display:grid}.auth-form input:not([type=hidden]){width:100%;min-height:50px;color:var(--ink);font:inherit;background:#fff;border:1px solid #c4d2ca;border-radius:11px;padding:12px 13px}.auth-submit{min-height:50px;margin-top:4px}.auth-loading{color:#5e6c67;justify-content:center;align-items:center;gap:12px;display:flex}.auth-messages{color:#843e31;background:#fbe8e3;border-radius:10px;padding:11px 13px;font-size:13px;font-weight:500}.auth-messages p{margin:0}.content{width:min(1180px,100% - 64px);min-width:0;margin:0 auto;padding:40px 0 80px}.page-heading{justify-content:space-between;align-items:flex-start;gap:32px;display:flex}.eyebrow{color:#5b746b;letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:750}h1,h2,h3{font-family:var(--heading-font)}h1{letter-spacing:-.04em;overflow-wrap:anywhere;margin:0;font-size:clamp(30px,3.5vw,42px);font-weight:700;line-height:1.18}.lede{color:#5e6c67;max-width:620px;margin:14px 0 0;font-size:16px;line-height:1.55}.heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.refresh-button,.load-more,.state-card button,.primary-button,.secondary-button{border:0;border-radius:12px;padding:12px 18px;font-weight:700;transition:transform .15s,background .15s}.refresh-button,.load-more,.state-card button,.primary-button{color:#fff;background:var(--brand-green)}.secondary-button{color:var(--brand-green);background:#e8eeea}.refresh-button:hover,.load-more:hover,.state-card button:hover,.primary-button:hover{background:#1b5547;transform:translateY(-1px)}.refresh-button:focus-visible,.load-more:focus-visible,.state-card button:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,.icon-button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible,.clear-button:focus-visible{outline-offset:3px;outline:3px solid #b7d958}.filter-panel{border:1px solid var(--line);background:#ffffffd1;border-radius:18px;grid-template-columns:minmax(190px,1fr) minmax(240px,1.4fr) auto;align-items:end;gap:16px;margin-top:42px;padding:18px;display:grid;box-shadow:0 12px 36px #1f372f0f}.filter-panel label{color:#52635d;gap:8px;font-size:13px;font-weight:700;display:grid}.filter-panel select{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #cdd7d1;border-radius:11px;padding:0 42px 0 14px}.clear-button{min-height:46px;color:var(--brand-green);background:0 0;border:0;padding:0 14px;font-weight:700}.results-line{color:#6c7974;min-height:46px;padding:18px 2px 10px;font-size:14px}.data-table-wrap{border:1px solid var(--line);background:#fff;border-radius:18px;overflow-x:auto;box-shadow:0 12px 36px #1f372f0f}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e8ece8;padding:14px 15px}.data-table th{color:#52635d;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;background:#f3f6f1;font-size:12px;font-weight:800}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--surface)}.material-table{table-layout:fixed;min-width:980px}.material-table th:first-child{width:180px}.material-table th:nth-child(2){width:94px}.material-table th:nth-child(3){width:145px}.material-table th:nth-child(4){width:150px}.material-table th:nth-child(5){width:175px}.material-table th:nth-child(7){width:100px}.material-table td{color:#44544e;font-size:14px;line-height:1.4}.material-table td small{color:#7a8782;margin-top:3px;display:block}.material-question{overflow-wrap:anywhere;font-weight:650;color:var(--ink)!important}.material-heading h3{margin-bottom:8px}.material-description{white-space:pre-wrap;overflow-wrap:anywhere;color:#52635d}.material-actions{position:relative;text-align:center!important}.action-menu{display:inline-block;position:relative}.action-menu-trigger{color:#315048;cursor:pointer;background:#f6f8f5;border:1px solid #d8e0db;border-radius:9px;place-items:center;width:34px;height:34px;padding:0;display:grid}.action-menu-trigger:hover,.action-menu.is-open .action-menu-trigger{background:#eaf1ed;border-color:#95afa5}.action-menu-trigger:focus-visible{outline-offset:2px;outline:3px solid #2f7c6738}.action-menu-trigger svg{fill:currentColor;width:19px;height:19px}.action-menu-popover{z-index:20;border:1px solid var(--line);background:#fff;border-radius:10px;gap:2px;width:164px;padding:5px;display:grid;position:fixed;box-shadow:0 12px 28px #14312929}.action-menu-popover button{color:#294940;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:9px 10px;font-size:13px;font-weight:700}.action-menu-popover button:hover{background:#f0f4f1}.action-menu-popover button.danger{color:#9a4438}.material-actions .archive-confirm{z-index:3;background:#fff7f4;border:1px solid #ead5cf;border-radius:9px;min-width:190px;padding:7px;position:absolute;top:8px;right:8px;box-shadow:0 10px 24px #562a221f}.material-actions .archive-confirm button{border:0;border-radius:7px;padding:6px 8px;font-size:12px;font-weight:700}.pagination{color:#60716a;justify-content:center;align-items:center;gap:14px;padding-top:24px;font-size:14px;font-weight:700;display:flex}.pagination button:disabled{opacity:.5;cursor:default}.material-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.material-card{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;min-height:300px;padding:24px;display:flex;box-shadow:0 14px 34px #1f372f0e}.card-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.scope-badge,.type-label,.topic-chip{white-space:nowrap;border-radius:999px;align-items:center;display:inline-flex}.scope-badge{letter-spacing:.04em;text-transform:uppercase;padding:5px 9px;font-size:11px;font-weight:800}.scope-badge.shared{color:#325127;background:#e7f2bf}.scope-badge.personal{color:#30557b;background:#e2edf8}.type-label{color:#6b7672;font-size:12px}.material-card h2{margin:22px 0 10px;font-size:20px;line-height:1.35}.explanation{color:#68736f;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 18px;line-height:1.5;display:-webkit-box;overflow:hidden}.topic-row{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.topic-chip{color:#496057;background:#f0f3ed;padding:5px 9px;font-size:12px}.card-details{border-top:1px solid #edf0eb;grid-template-columns:auto 1fr;gap:6px 10px;margin:16px 0 0;padding-top:14px;font-size:12px;display:grid}.card-details dt{color:#87918d}.card-details dd{color:#4f5c57;margin:0}.card-actions{border-top:1px solid #edf0eb;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;padding-top:14px;display:flex}.card-actions button{color:#315048;background:#edf2ee;border:0;border-radius:9px;padding:7px 10px;font-weight:700}.card-actions .danger-link{color:#934537;background:0 0}.card-actions .add-task-button{flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;padding:8px;display:inline-flex}.add-task-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:24px;height:24px}.archive-confirm{color:#75463d;grid-template-columns:1fr auto auto;align-items:center;gap:8px;width:100%;font-size:12px;display:grid}.archive-confirm .danger-button{color:#fff;background:#a34a3d}.action-error{color:#843e31;background:#fbe8e3;border-radius:11px;margin:0 0 18px;padding:13px 15px}.action-success{color:#285d43;background:#e1f2e8;border-radius:11px;margin:0 0 18px;padding:13px 15px}.state-card{text-align:center;color:#5e6c67;background:#ffffffa6;border:1px dashed #cbd6cf;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:230px;padding:42px;display:flex}.state-card strong{color:#23302c;font-size:20px}.state-card p{max-width:500px;margin:0 0 8px;line-height:1.5}.error-state{background:#fff8f5;border-color:#dec3bb}.spinner{border:3px solid #d9e2dd;border-top-color:var(--brand-green);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}.load-more-row{text-align:center;padding-top:26px}.load-more:disabled{opacity:.65;cursor:wait;transform:none}.editor-backdrop{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a1f1a7a;justify-content:flex-end;display:flex;position:fixed;inset:0}.editor-panel{background:var(--surface);width:min(680px,100%);height:100%;padding:34px 38px 48px;overflow-y:auto;box-shadow:-24px 0 70px #09241d33}.editor-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;display:flex}.editor-header h2{margin:0;font-size:34px;font-weight:500}.icon-button{color:#42544e;background:#edf1ed;border:0;border-radius:12px;width:42px;height:42px;font-size:28px;line-height:1}.editor-panel form{gap:20px;display:grid}.form-field{color:#43564f;gap:8px;font-size:14px;font-weight:720;display:grid}.form-field input,.form-field textarea,.form-field select{width:100%;color:var(--ink);font:inherit;resize:vertical;background:#fff;border:1px solid #cbd7d0;border-radius:11px;padding:12px 13px;font-weight:450}.form-field select,.form-field input{min-height:45px}.form-field small{color:#71807a;font-weight:450;line-height:1.4}.choice-field,.topic-field{border:1px solid #d7dfda;border-radius:13px;flex-wrap:wrap;gap:12px 20px;margin:0;padding:16px;display:flex}.choice-field legend,.topic-field legend{color:#43564f;padding:0 6px;font-size:14px;font-weight:720}.choice-field label,.topic-field label,.checkbox-line{color:#40524c;align-items:center;gap:8px;display:flex}.topic-field p{color:#7a6257;width:100%;margin:0}.form-columns{grid-template-columns:1.3fr 1fr;gap:14px;display:grid}.editor-error{color:#843e31;background:#fbe8e3;border-radius:11px;padding:13px 15px}.media-field{border:1px solid #d7dfda;border-radius:13px;grid-template-columns:1fr auto;align-items:start;gap:12px;padding:16px;display:grid}.media-field>div{gap:5px;display:grid}.media-field small{color:#71807a;line-height:1.4}.upload-button{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.upload-button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.upload-button.disabled{opacity:.55;cursor:wait}.media-list{color:#52635d;grid-column:1/-1;margin:0;padding-left:22px}.media-list a{color:var(--brand-green);font-weight:700}.upload-success{color:#315f51;grid-column:1/-1;margin:0;font-size:13px}.compact-heading{margin-bottom:32px}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.template-card{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;min-height:260px;padding:24px;display:flex;box-shadow:0 14px 34px #1f372f0e}.template-card h2{margin:20px 0 12px}.template-card ol{color:#5e6c67;margin:0 0 18px;padding-left:22px;line-height:1.55}.template-card .card-actions{margin-top:auto}.card-actions .primary-inline{color:#fff;background:var(--brand-green)}.lesson-summary{background:#eaf1ec;border-radius:18px;margin-top:36px;padding:24px}.lesson-summary h2{margin-top:0}.lesson-summary>div{border-top:1px solid #d4dfd8;justify-content:space-between;align-items:center;gap:20px;padding:12px 0;display:flex}.lesson-summary>div>div{gap:4px;display:grid}.lesson-summary span{color:#60716a}.lesson-summary button{color:#fff;background:var(--brand-green);border:0;border-radius:9px;padding:8px 12px;font-weight:700}.builder-section,.builder-library{gap:10px;display:grid}.builder-section h3,.builder-library h3{margin:0;font-size:17px}.builder-section>p{color:#71807a;margin:0}.builder-item{background:#fff;border:1px solid #d9e1dc;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.builder-item>div{gap:5px;display:flex}.builder-item button{color:#39544c;background:#edf2ee;border:0;border-radius:7px;padding:6px 8px}.builder-library{max-height:300px;padding:2px;overflow-y:auto}.builder-library>button{text-align:left;color:#24352f;background:#fff;border:1px solid #d9e1dc;border-radius:11px;justify-content:space-between;gap:12px;padding:12px;display:flex}.builder-library>button:disabled{opacity:.5;cursor:default}.builder-library small{color:#71807a}.preparation-form{gap:22px;display:grid}.workspace-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:10px;max-width:430px;display:flex}.lesson-flow{border:1px solid var(--line);background:#f0f5ed;border-radius:16px;margin:24px 0;padding:18px 22px}.lesson-flow p,.lesson-created p{color:#5e6c67;margin:8px 0 0;line-height:1.55}.lesson-flow button{margin-top:14px}.lesson-created{background:#eaf1ec;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:24px 0;padding:20px 22px;display:flex}.preparation-notice{color:#5c5135;background:#faf3df;border-radius:12px;margin:12px 0;padding:14px 16px;line-height:1.55}.snapshot-note{color:#426056;background:#e9f1ec;border-radius:11px;margin:0;padding:14px}.lesson-overlay{z-index:30;border-top:6px solid var(--brand-lime);background:var(--page-bg);position:fixed;inset:0;overflow-y:auto}.lesson-drawing-layout{grid-template-columns:64px minmax(0,920px);justify-content:center;gap:12px;padding:0 16px;display:grid}.drawing-toolbar{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-self:start;justify-items:center;gap:8px;margin-top:36px;padding:8px;display:grid;position:sticky;top:20px;box-shadow:0 8px 24px #05556012}.drawing-toolbar>button{border:1px solid var(--line);width:40px;height:40px;color:var(--brand-green);background:#fff;border-radius:10px;place-items:center;padding:0;display:grid}.drawing-toolbar>button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.drawing-toolbar>button.selected{background:var(--brand-lime);border-color:var(--brand-green);font-weight:750}.drawing-toolbar>button:focus-visible,.drawing-color:focus-visible{outline-offset:3px;outline:3px solid #b7d958}.drawing-palette-toggle{position:relative}.drawing-current-color{border:1px solid #fff;border-radius:50%;width:11px;height:11px;position:absolute;bottom:3px;right:3px;box-shadow:0 0 0 1px #66786d}.drawing-palette{z-index:8;border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:repeat(4,1fr);justify-items:center;gap:10px;width:176px;padding:12px;display:grid;position:absolute;top:188px;left:calc(100% + 8px);box-shadow:0 12px 28px #05556026}.drawing-toolbar .drawing-width{border-top:1px solid var(--line);width:46px;color:var(--brand-green);justify-items:center;gap:4px;padding-top:8px;display:grid}.drawing-width svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:22px;height:22px}.drawing-color{border:2px solid #fff;border-radius:50%;width:28px;height:28px;padding:0;box-shadow:0 0 0 1px #bcc9c1}.drawing-color.selected{box-shadow:0 0 0 2px var(--brand-green)}.homework-completion{align-items:center;gap:8px;margin:12px 0;font-weight:650;display:inline-flex}.drawing-toolbar input[type=range]{width:44px;accent-color:var(--brand-green)}.drawing-surface{min-height:20px;position:relative}.drawing-overlay{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.drawing-overlay.active{pointer-events:all;touch-action:none}.drawing-overlay.active:has(.erasable-stroke){cursor:crosshair}.drawing-overlay.active path.erasable-stroke{cursor:pointer}.lesson-laser{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.lesson-laser line{stroke:#f529a6;stroke-width:5px;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 5px #fc75eb)}.lesson-laser-head{z-index:4;pointer-events:none;background:#f529a6;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #fc75eb66,0 0 13px 6px #fc75eb}.lesson-panel{width:min(920px,100% - 32px);margin:0 auto;padding:36px 0 72px}.lesson-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;display:flex}.lesson-header h2{margin:0;font-size:38px;font-weight:500}.lesson-header>div:last-child{gap:10px;display:flex}.lesson-item-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;margin-bottom:20px;padding:26px}.lesson-focus-button{margin-left:auto}.lesson-focus-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:22px;height:22px}.lesson-item-card h3{margin:20px 0;font-size:22px}.answer-options,.ordering-answer,.structured-answer{border:1px solid #d7dfda;border-radius:12px;gap:10px;margin:0;padding:16px;display:grid}.answer-options legend,.ordering-answer legend,.structured-answer legend{padding:0 6px;font-weight:720}.answer-options label{border:1px solid var(--line);border-radius:10px;align-items:center;gap:12px;min-height:44px;padding:10px 13px;display:flex}.answer-options label:has(input:checked){background:#f0f7d9;border-color:#96b236}.answer-options input{accent-color:var(--brand-green);flex-shrink:0}.ordering-answer>div{grid-template-columns:1fr auto auto;align-items:center;gap:7px;display:grid}.ordering-answer button{background:#edf2ee;border:0;border-radius:8px;width:34px;height:34px}.structured-answer label{grid-template-columns:minmax(120px,.7fr) 1fr;align-items:center;gap:12px;display:grid}.structured-answer select,.structured-answer input,.comments input{min-height:42px;font:inherit;background:#fff;border:1px solid #cbd7d0;border-radius:9px;padding:9px 11px}.inline-blanks{white-space:pre-wrap;border:1px solid #d7dfda;border-radius:12px;padding:16px;font-size:18px;line-height:2.4;display:block}.inline-blank-result{vertical-align:baseline;margin:0 5px;display:inline-block;position:relative}.inline-blanks input{min-width:3ch;height:34px;color:var(--ink);font:inherit;text-align:center;background:#f3f7f3;border:0;border-bottom:2px solid #6b8b80;border-radius:4px 4px 0 0;margin:0;padding:2px 5px}.inline-blanks input:focus{border-bottom-color:var(--brand-green);outline:3px solid var(--brand-lime);outline-offset:1px}.inline-blank-result.correct input{color:#24633f;background:#e1f2e8;border-bottom-color:#3f8a5c;font-weight:750}.inline-blank-result.incorrect input{color:#9b4035;background:#fbe8e3;border-bottom-color:#b34f42;font-weight:750;text-decoration:line-through;text-decoration-thickness:2px}.inline-correct-answer{color:#24633f;white-space:normal;text-align:center;width:max-content;max-width:220px;font-size:11px;font-weight:750;line-height:1.2;position:absolute;bottom:calc(100% - 3px);left:50%;transform:translate(-50%)}.lesson-actions{gap:10px;margin-top:14px;display:flex}.conflict-message{color:#823f32;background:#fbe8e3;border-radius:10px;gap:4px;margin-top:14px;padding:12px 14px;display:grid}.answer-result{border-radius:10px;margin-top:14px;padding:12px 14px;font-weight:750}.answer-result.correct{color:#285d43;background:#e1f2e8}.answer-result.incorrect{color:#843e31;background:#fbe8e3}.answer-explanation{color:#3d584f;background:#eef3ef;border-radius:10px;padding:12px 14px}.comments{border-top:1px solid #e6ebe7;margin-top:22px;padding-top:18px}.comments h4{margin:0 0 10px}.comments p{color:#52635d;margin:7px 0}.comments>div{grid-template-columns:1fr auto;gap:8px;margin-top:12px;display:grid}.comments button{color:#fff;background:var(--brand-green);border:0;border-radius:9px;padding:9px 13px;font-weight:700}.extra-section{margin-top:36px}.extra-section>h2{margin-bottom:18px;font-size:30px;font-weight:500}.homework-section{border-top:2px solid #dce4de;margin-top:38px;padding-top:28px}.homework-section>h2{margin:0 0 12px;font-size:30px;font-weight:500}.homework-assignment{gap:16px;display:grid}.homework-assignment>p,.homework-state{color:#60716a}.homework-submit{justify-items:start;gap:12px;display:grid}.demo-header{margin-bottom:18px}.demo-header p:last-child{color:#60716a;margin-bottom:0}.role-switcher{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border:1px solid #cbd7d0;border-radius:13px;gap:4px;width:fit-content;margin:0 auto 12px;padding:5px;display:flex;position:sticky;top:12px;box-shadow:0 8px 24px #1f372f1a}.role-switcher button{color:#496057;background:0 0;border:0;border-radius:9px;min-width:120px;padding:10px 18px;font-weight:750}.role-switcher button.active{color:#fff;background:var(--brand-green)}.demo-role-note{text-align:center;color:#60716a;margin:0 0 24px}.admin-filters{background:#fff;border:1px solid #dce4de;border-radius:16px;grid-template-columns:repeat(4,minmax(140px,1fr)) auto;align-items:end;gap:12px;margin-bottom:28px;padding:18px;display:grid}.admin-filters label{color:#52635d;gap:6px;font-size:13px;font-weight:700;display:grid}.admin-filters select,.admin-filters input{min-height:42px;font:inherit;background:#fff;border:1px solid #cbd7d0;border-radius:9px;padding:8px 10px}.admin-lesson-list{gap:12px;display:grid}.admin-lesson-list article{background:#fff;border:1px solid #dce4de;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:18px;display:flex}.admin-lesson-list article>div{gap:4px;display:grid}.admin-lesson-list span,.admin-empty{color:#60716a}.admin-lesson-list button{color:#fff;background:var(--brand-green);border:0;border-radius:9px;padding:9px 13px;font-weight:700}.admin-detail>h3{margin:30px 0 12px;font-size:25px}.admin-result-card{background:#fff;border:1px solid #dce4de;border-radius:12px;gap:10px;margin-bottom:10px;padding:16px;display:grid}.admin-result{border-radius:8px;width:fit-content;padding:5px 9px;font-weight:700}.admin-result.correct{color:#285d43;background:#e1f2e8}.admin-result.incorrect{color:#843e31;background:#fbe8e3}.admin-comments{border-top:1px solid #e6ebe7;padding-top:8px}.admin-comments p{color:#52635d;margin:5px 0}.account-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.account-create{background:#fff;border:1px solid #dce4de;border-radius:18px;gap:17px;padding:26px;display:grid;box-shadow:0 14px 34px #1f372f0e}.account-create h2{margin:0 0 4px;font-size:28px;font-weight:500}.account-create label,.account-controls label{color:#52635d;gap:7px;font-size:13px;font-weight:700;display:grid}.account-create input,.account-create select,.account-controls select{min-height:44px;font:inherit;background:#fff;border:1px solid #cbd7d0;border-radius:9px;padding:9px 11px}.account-create p{color:#71807a;margin:0;font-size:13px;line-height:1.45}.account-list{gap:12px;display:grid}.account-list article{background:#fff;border:1px solid #dce4de;border-radius:15px;grid-template-columns:minmax(180px,1fr) minmax(280px,auto);gap:20px;padding:20px;display:grid}.account-summary{align-content:start;justify-items:start;gap:5px;display:grid}.account-summary>span:not(.activation-status){color:#60716a}.activation-status{border-radius:999px;margin-top:5px;padding:4px 8px;font-size:12px;font-weight:750}.activation-status.verified{color:#285d43;background:#e1f2e8}.activation-status.pending{color:#875d28;background:#fff0cf}.account-controls{align-content:start;justify-items:stretch;gap:9px;min-width:280px;display:grid}.account-controls>button,.role-confirm button{color:#315048;background:#edf2ee;border:0;border-radius:9px;padding:9px 12px;font-weight:700}.role-confirm{color:#75463d;background:#fbede8;border-radius:10px;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:10px;font-size:12px;display:grid}.role-confirm .danger-button{color:#fff;background:#a34a3d}.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.directory-card{background:#fff;border:1px solid #dce4de;border-radius:18px;padding:26px;box-shadow:0 14px 34px #1f372f0e}.directory-card h2{margin:0 0 20px;font-size:28px;font-weight:500}.directory-card form{border-bottom:1px solid #e6ebe7;gap:14px;padding-bottom:24px;display:grid}.directory-card form .primary-button{justify-self:start}.directory-list{gap:8px;max-height:360px;margin-top:18px;display:grid;overflow-y:auto}.directory-list>div{color:#324740;background:#f0f3ef;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:11px 13px;display:flex}.directory-list>div>div{overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}.directory-list .secondary-button{flex-shrink:0}.directory-list span,.directory-list p{color:#71807a}.editor-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fbfcf8f5;border-top:1px solid #dfe5df;justify-content:flex-end;gap:10px;margin:4px -38px -48px;padding:18px 38px;display:flex;position:sticky;bottom:-48px}.primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1200px){.admin-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filters .primary-button{justify-self:start}.account-layout,.account-list article{grid-template-columns:1fr}}@media (width<=880px){.topbar{padding:0 24px}.workspace-layout,.sidebar-menu-toggle{display:block}.workspace-sidebar{border-right:0;border-bottom:1px solid var(--line);padding:16px;display:none}.workspace-sidebar.is-open{display:block}.workspace-nav{position:static}.content{width:min(100% - 32px,720px);padding-top:40px}.material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-panel{grid-template-columns:1fr 1fr}.clear-button{grid-column:1/-1;justify-self:start}.account-menu>span{display:none}.account-layout{grid-template-columns:1fr}}@media (width<=600px){.topbar{flex-wrap:wrap;gap:10px;min-height:64px;padding:12px 16px}.brand{gap:7px;font-size:18px}.account-menu{flex-wrap:wrap;justify-content:flex-end;gap:6px}.account-menu a{padding:7px;font-size:12px}.auth-card{padding:30px 24px}.content{width:calc(100% - 24px);padding:32px 0 56px}.material-list-tools{flex-direction:column;align-items:stretch}.material-sort select{width:100%}.material-node-list>li{flex-wrap:wrap;gap:10px}.material-node-link{flex-basis:100%;gap:14px}.material-node-label strong{font-size:18px}.material-node-actions{padding-left:8px}.page-heading{gap:22px;display:grid}.workspace-actions{justify-content:flex-start;max-width:none}.refresh-button{justify-self:start}.heading-actions{justify-content:flex-start}.filter-panel{grid-template-columns:1fr;margin-top:30px}.clear-button{grid-column:auto}.material-grid,.template-grid{grid-template-columns:1fr}.material-card{min-height:230px}.archive-confirm{grid-template-columns:1fr}.state-card{padding:28px 20px}.editor-panel{padding:26px 20px 40px}.form-columns,.media-field{grid-template-columns:1fr}.builder-item,.lesson-summary>div,.lesson-header{flex-direction:column;align-items:flex-start}.lesson-panel{width:calc(100% - 24px);padding-top:24px}.lesson-drawing-layout{padding:0;display:block}.drawing-toolbar{z-index:5;border-radius:0;flex-wrap:wrap;align-items:center;margin:0;padding:8px 12px;display:flex;position:sticky;top:0}.drawing-toolbar>button{width:40px;height:40px}.drawing-palette{top:calc(100% + 4px);left:12px}.drawing-toolbar .drawing-width{border:0;width:90px;padding:0;display:flex}.lesson-item-card{padding:20px}.structured-answer label,.comments>div,.admin-filters,.directory-grid{grid-template-columns:1fr}.admin-lesson-list article{flex-direction:column;align-items:flex-start}.account-list article{grid-template-columns:1fr}.account-controls{min-width:0}.role-confirm{grid-template-columns:1fr}.editor-actions{margin:4px -20px -40px;padding:16px 20px;bottom:-40px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.assignment-section{margin-top:24px}.assignment-section form{gap:12px;max-width:620px;display:grid}.assignment-section select{width:100%;min-width:0}.assignment-section li{overflow-wrap:anywhere;margin:8px 0}.correct-answer{color:#245d3b;overflow-wrap:anywhere}.media-editor>small{margin-block:6px;display:block}.media-block>small{margin-top:6px;display:block}.media-block>.secondary-button{margin-top:8px}.material-media{gap:12px;margin-block:12px;display:grid}.material-media img{width:100%;max-width:100%;height:auto;margin-bottom:8px;display:block}.lesson-add-item{border:1px solid #ddd;border-radius:12px;margin-bottom:20px;padding:16px}.answer-summary{overflow-wrap:anywhere}.material-media video{max-width:100%;max-height:480px}.material-media audio{width:100%}@media (width<=600px){.topbar{flex-wrap:wrap;gap:10px;padding:12px 16px}.account-menu{margin-left:auto}.lesson-summary>div>div{overflow-wrap:anywhere;min-width:0}.inline-blank-result,.inline-blanks input{max-width:100%}}.homework-toggle{color:#365e4d;align-items:center;gap:10px;margin:14px 0;font-weight:600;display:flex}.homework-toggle input{accent-color:#527e68;width:18px;height:18px}.homework-reserved{color:#70551e;background:#fff3d8;border-radius:12px;gap:6px;padding:14px 18px;display:grid}.homework-reserved span{font-size:14px}.homework-selection{background:#eef5ef;border-radius:12px;padding:14px 18px}.media-editor{border:1px solid #d7dfda;border-radius:13px;min-width:0;margin-block:16px;padding:16px}.media-editor legend{font-weight:700}.media-editor>p,.media-editor>small{color:#52635d}.media-add-actions,.media-item-actions{flex-wrap:wrap;gap:8px;display:flex}.media-add-actions{margin-bottom:12px}.image-dropzone{color:#43564f;text-align:center;overflow-wrap:anywhere;background:#f4f8f5;border:2px dashed #a6bdb0;border-radius:11px;gap:8px;margin-bottom:12px;padding:20px 16px;display:grid}.image-dropzone.is-dragging,.image-dropzone:focus-visible{outline-offset:2px;background:#e4f1e8;border-color:#365e4d;outline:2px solid #365e4d}.image-dropzone[aria-disabled=true]{opacity:.6}.media-editor-list{gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.media-editor-list>li{border:1px solid #d7dfda;border-radius:10px;padding:12px}.media-item-heading{overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.media-file-details{flex:220px;gap:8px;min-width:0;display:grid}.media-file-details .media-item-actions{align-items:center}.media-file-details small{color:#52635d}.media-explanation{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 10px}.youtube-player{aspect-ratio:16/9;border:0;width:100%;display:block}.media-block{min-width:0}.lesson-material .lesson-task-text,.lesson-material .material-description{white-space:pre-wrap}.direct-link{gap:.4rem;margin:1rem 0;display:grid}.direct-link input{border:1px solid #dbe3e7;border-radius:.5rem;width:100%;min-width:0;padding:.6rem}.curriculum-source{background:#fff;border:1px solid #dce3ef;border-radius:1rem;padding:1rem}.editable-lesson-title{cursor:pointer;touch-action:manipulation}.editable-lesson-title:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #365e4d}.curriculum-row{flex-wrap:wrap;align-items:center;gap:.75rem;padding-block:.5rem;display:flex}.curriculum-task-title{overflow-wrap:anywhere;flex:180px;min-width:0}.curriculum-task-actions{justify-content:flex-end;align-items:center;gap:6px;margin-left:auto;display:flex}.task-control{flex-shrink:0;justify-content:center;align-items:center;padding:8px;display:inline-flex}.task-control svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.curriculum-source>.workspace-heading>.card-actions{justify-content:flex-end;margin-left:auto}.task-image-thumbnails{flex-wrap:wrap;gap:10px;display:flex}.task-image-thumbnails:not(:empty){padding-block:8px 16px}.task-image-thumbnails img{object-fit:contain;background:var(--page-bg);border:1px solid #dce4de;border-radius:10px;width:128px;max-width:100%;height:96px;display:block}.task-image-error{color:#843e31;overflow-wrap:anywhere;font-size:12px}.topic-picker{gap:8px;display:grid}.topic-picker-label{color:#43564f;font-size:14px;font-weight:720}.topic-picker-toggle{text-align:left;width:100%;color:var(--ink);background:#fff;border:1px solid #cbd7d0;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;display:flex}.topic-picker-toggle>span:first-child{overflow-wrap:anywhere;min-width:0}.topic-picker-panel{background:#fff;border:1px solid #cbd7d0;border-radius:11px;gap:16px;padding:16px;display:grid}.topic-picker-options{gap:12px;max-height:240px;display:grid;overflow-y:auto}.topic-picker-options label{overflow-wrap:anywhere;align-items:center;gap:8px;display:flex}.topic-picker-options input{flex-shrink:0}.topic-picker-create{gap:12px;display:grid}.topic-picker-create p{color:#922b2b;margin:0}.login-page{background:var(--page-bg);padding:40px 24px}.login-layout{border:1px solid var(--line);background:var(--surface);border-radius:24px;grid-template-columns:1.06fr 1fr;width:min(1040px,100%);display:grid;overflow:hidden}.login-story{min-width:0;min-height:660px;color:var(--ink);background:linear-gradient(120deg, var(--brand-pink) 0%, var(--brand-yellow) 35%, var(--brand-lime) 75%);flex-direction:column;padding:40px;display:flex}.login-story .auth-brand{margin:0}.login-story-text{margin-top:90px}.login-story-text .eyebrow{color:var(--ink);font-size:11px}.login-story-text h2{letter-spacing:-.04em;overflow-wrap:anywhere;margin:22px 0;font-size:clamp(32px,3.8vw,44px);font-weight:800;line-height:1.15}.login-story-text>p:last-child{max-width:300px;margin:22px 0;line-height:1.6}.login-stickers{flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0 50px;display:flex}.login-stickers span{border:2px solid var(--ink);color:var(--ink);background:var(--brand-pink);box-shadow:3px 4px 0 var(--ink);border-radius:50px;padding:12px 17px;font-weight:700;transform:rotate(-9deg)}.login-stickers span:last-child{background:var(--brand-lime);transform:rotate(7deg)}.login-story-footer{margin-top:auto;font-size:13px}.login-layout .auth-card{background:var(--surface);width:auto;min-width:0;box-shadow:none;border:0;border-radius:0;align-self:center;padding:48px}.login-layout .auth-card h1{font-size:clamp(28px,3vw,34px);font-weight:600;line-height:1.2}.login-layout .eyebrow{font-size:11px}.login-layout .auth-lede{font-size:14px}.login-session{overflow-wrap:anywhere;gap:16px;display:grid}.login-session .auth-lede{margin-bottom:8px}.login-session>a{text-align:center;text-decoration:none}.login-switch-user{display:grid}.login-switch-user button{min-height:50px;color:var(--brand-green);border-color:var(--brand-green)}.login-switch-user [role=alert]{width:auto;margin-top:12px;font-size:14px;position:static}.auth-form>a{color:var(--brand-green);text-underline-offset:4px;justify-self:end;font-size:13px}.login-activation-hint{border-top:1px solid var(--line);color:#5e6c67;margin:28px 0 0;padding-top:20px;font-size:12px;line-height:1.6}.topbar .account-menu>a{color:#f9fbf5;text-underline-offset:4px;font-size:13px}.workspace-nav button[aria-current=page]{color:var(--ink)}.material-node-label strong{font-weight:600}.material-list-count{margin:24px 0 12px}.material-create{justify-content:center;gap:12px;min-height:78px;font-size:16px;display:flex}.lesson-brand{color:var(--brand-green);margin-bottom:28px}.lesson-display-title{letter-spacing:-.04em;overflow-wrap:anywhere;margin:0;font-size:clamp(28px,4vw,38px);font-weight:700;line-height:1.2}.lesson-header .lesson-state-badge{width:fit-content;color:var(--ink);background:#e7efd7;border-radius:20px;align-items:center;gap:8px;margin:14px 0 0;padding:7px 11px;font-size:12px;display:flex}.lesson-header .lesson-state-badge.completed{background:#e8eeea}.lesson-state-badge>span{font-size:9px}.lesson-task-number{background:var(--brand-lime);width:30px;height:30px;color:var(--ink);border-radius:9px;place-items:center;font-size:13px;font-weight:700;display:grid}.lesson-header>div:last-child,.lesson-actions{flex-wrap:wrap}.comments>div{grid-template-columns:minmax(0,1fr) auto}.comments input{width:100%;min-width:0}.answer-options legend,.structured-answer legend,.answer-options label{overflow-wrap:anywhere}@media (width<=760px){.login-page{padding:24px 16px}.login-story{padding:28px}.login-layout .auth-card{padding:32px 28px}}@media (width<=600px){.login-layout{border-radius:18px;grid-template-columns:1fr}.login-story{min-height:350px;padding:26px}.login-story-text{margin-top:32px}.login-story-text h2{margin:14px 0;font-size:32px}.login-story-text>p:last-child{margin:14px 0;font-size:14px}.login-stickers{margin:12px 0 28px}.login-stickers span{padding:9px 12px;font-size:13px}.login-layout .auth-card{padding:32px 24px}.topbar .brand{margin-right:auto}.brand-logo{width:185px}.topbar .account-menu{max-width:100%}.lesson-header>div:last-child{justify-content:space-between;width:100%}.comments>div{grid-template-columns:minmax(0,1fr)}.answer-options,.structured-answer,.inline-blanks{padding:12px}}.game-editor{border:1px solid var(--border,#d7e3e4);border-radius:20px;min-width:0;margin:1.5rem 0;padding:1rem}.game-editor legend{font-weight:700}.game-pair-editor{border-bottom:1px solid #d7e3e4;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;padding:1rem 0;display:grid}.game-pair-editor>button{grid-column:1/-1;justify-self:end}.game-card-editor{min-width:0}.game-card-editor input[type=file]{max-width:100%}.game-player{background:#f4f8f7;border:1px solid #d7e3e4;border-radius:24px;margin:1rem 0;padding:1.25rem}.game-player-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.game-player-heading h3{margin:0}.matching-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0;display:grid}.matching-column{align-content:start;gap:.75rem;display:grid}.game-card{color:#055560;overflow-wrap:anywhere;background:#fff;border:2px solid #b5cccd;border-radius:16px;flex-direction:column;justify-content:center;gap:.5rem;width:100%;min-height:90px;padding:.85rem;display:flex}.game-card.selected{background:#eef8b5;border-color:#055560;box-shadow:0 0 0 2px #ccef00}.game-card.solved{opacity:1;background:#e7f4e9;border-color:#518b68}.game-card.incorrect{background:#ffe7e7;border-color:#c83232}.game-card-content{white-space:pre-wrap;flex-direction:column;align-items:center;gap:.6rem;min-width:0;display:flex}.game-card-content img{object-fit:contain;border-radius:10px;width:auto;max-width:100%;max-height:160px;display:block}.game-controls{flex-wrap:wrap;gap:.6rem;margin:1rem 0;display:flex}.game-praise{text-align:center;color:#055560;background:#ccef00;border-radius:20px;margin:1rem 0;padding:1.5rem}.game-praise>span{font-size:2rem}.game-praise h4{margin:.25rem;font-size:1.4rem}.game-pairs ul{gap:.5rem;padding:0;list-style:none;display:grid}.game-pairs li{background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.6rem;padding:.6rem;display:grid}.game-pairs img{max-height:75px}.game-revealed{border-top:2px solid #fc75eb}.game-last-action{font-size:.9rem}.game-history{border-top:1px solid #b5cccd;margin-top:1rem;padding-top:1rem}.game-history li{overflow-wrap:anywhere;padding:.3rem 0}@media (width<=480px){.game-player{padding:.7rem}.game-pair-editor{grid-template-columns:minmax(0,1fr)}.game-card{padding:.5rem}.game-controls>button{width:100%}}.matching-targets{grid-column:span 2}.matching-board .game-card{height:var(--matching-card-height,90px);min-height:var(--matching-card-height,90px);box-sizing:border-box}.matching-board .game-card-content{flex-shrink:0}.matching-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;display:grid}.matching-slot{background:#f4f8f7;border-style:dashed}.matching-slot.solved{border-style:solid}.matching-slot.drag-over{background:#eef8b5;border-color:#055560;box-shadow:inset 0 0 0 2px #ccef00}.matching-draggable:not(:disabled){cursor:grab}.matching-draggable:not(:disabled):active{cursor:grabbing}.matching-instructions{font-size:.9rem}@media (width<=600px){.matching-board{grid-template-columns:repeat(2,minmax(0,1fr))}.matching-source{grid-column:span 2;grid-template-columns:repeat(2,minmax(0,1fr))}}.matching-source-space{height:var(--matching-card-height,90px)}.quiz-choices{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:.75rem;margin:1rem 0;display:grid}.quiz-prompt{padding:1rem;font-size:1.15rem}.quiz-question-editor{border-bottom:1px solid var(--border);padding:1rem 0}.quiz-question-editor>div{margin-bottom:1rem}.quiz-choices .game-card{height:var(--quiz-card-height,90px);box-sizing:border-box}.quiz-choices .game-card-content{flex-shrink:0}.quiz-editor{padding:1rem}.quiz-editor .quiz-question-editor{background:#f3f5f4;border:1px solid #e1e7e5;border-radius:14px;grid-template-columns:1.5rem minmax(0,1fr) 36px;gap:.65rem;margin:1rem 0;padding:1rem .75rem;display:grid}.quiz-editor .quiz-question-editor>div{margin-bottom:0}.quiz-question-number{padding-top:2rem;font-size:1.15rem;font-weight:700}.quiz-question-content,.quiz-edit-visual{min-width:0}.quiz-field-title{margin:0 0 .4rem;font-size:.9rem;font-weight:650;display:block}.quiz-answers-title{margin-top:1rem}.quiz-edit-input{background:#fff;border:1px solid #c4d1ce;border-radius:9px;align-items:center;min-width:0;display:flex}.quiz-edit-input:focus-within{border-color:#055560;box-shadow:0 0 0 2px #ccef00}.quiz-edit-input>input{width:100%;min-width:0;box-shadow:none;background:0 0;border:0;border-radius:9px;flex:1;padding:.75rem;font-size:1rem}.quiz-edit-input>input:focus{box-shadow:none;outline:none}.quiz-image-picker{color:#6c8583;cursor:pointer;flex-shrink:0;margin-right:.25rem;position:relative}.quiz-file-input{opacity:0;cursor:pointer;width:100%;height:100%;padding:0;position:absolute;inset:0}.quiz-edit-answers{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1.25rem;display:grid}.quiz-edit-answer{grid-template-columns:auto 38px minmax(0,1fr) 30px;align-items:start;gap:.35rem;min-width:0;display:grid}.quiz-answer-letter{padding-top:.8rem;font-weight:650}.quiz-correct-toggle{cursor:pointer;align-items:center;height:48px;display:flex;position:relative}.quiz-correct-toggle>input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.quiz-toggle-track{pointer-events:none;background:#c9d0ce;border-radius:20px;width:38px;height:19px}.quiz-toggle-track>span{color:#fff;background:#bb3c3c;border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;display:flex;position:relative;top:-4px}.quiz-correct-toggle.is-correct .quiz-toggle-track>span{background:#27824f;margin-left:11px}.quiz-toggle-track svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.quiz-correct-toggle:has(input:focus-visible){outline-offset:3px;border-radius:6px;outline:2px solid #055560}:is(.quiz-correct-toggle:has(input:disabled),.quiz-image-picker:has(input:disabled)){opacity:.45;cursor:default}.quiz-question-actions{flex-direction:column;align-items:flex-end;gap:.35rem;display:flex}.quiz-remove-choice{width:30px;height:36px;margin-top:.35rem;padding:.35rem}.quiz-add-answer{color:#055560;background:0 0;border:0;justify-content:center;align-items:center;gap:.35rem;margin:.65rem auto 0;padding:.45rem .75rem;font-weight:600;display:flex}.quiz-add-answer svg{stroke:currentColor;stroke-width:2px;fill:none;width:22px;height:22px}.quiz-edit-preview{align-items:flex-start;gap:.5rem;margin-top:.5rem;display:flex}.quiz-edit-preview .game-card-content{flex:1}.quiz-edit-preview img{max-height:90px}.quiz-editor-footer{justify-content:space-between;align-items:center;gap:1rem;display:flex}@media (width<=700px){.quiz-edit-answers{grid-template-columns:minmax(0,1fr)}}@media (width<=480px){.quiz-editor{padding:.5rem}.quiz-editor .quiz-question-editor{grid-template-columns:minmax(0,1fr) 32px;gap:.45rem;padding:.65rem}.quiz-question-number{grid-column:1;padding:0}.quiz-question-content{grid-column:1}.quiz-question-actions{grid-area:1/2/span 2}.quiz-edit-answer{grid-template-columns:auto 32px minmax(0,1fr) 26px;gap:.2rem}.quiz-edit-input>input{padding:.7rem .5rem;font-size:.9rem}.quiz-editor-footer{align-items:flex-start}}.quiz-editor .icon-button{flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:.4rem;display:inline-flex}.quiz-editor .icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.quiz-editor .quiz-remove-choice{width:30px}@media (width<=480px){.quiz-editor .icon-button{width:32px;height:36px}.quiz-editor .quiz-remove-choice{width:26px;padding:.25rem}.quiz-toggle-track{width:32px}.quiz-correct-toggle.is-correct .quiz-toggle-track>span{margin-left:5px}}.editor-panel:has(.quiz-editor){width:min(1040px,100%)}.editor-panel:has(.grouping-editor){width:min(1160px,100%)}.grouping-editor-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.grouping-edit-group{background:#f3f5f4;border:1px solid #e1e7e5;border-radius:14px;min-width:0;padding:1rem}.grouping-edit-heading{align-items:center;gap:.3rem;margin-bottom:1rem;display:flex}.grouping-title-input{color:#055560;background:0 0;border:1px solid #0000;border-radius:7px;width:100%;min-width:0;padding:.35rem;font-size:1.15rem;font-weight:700}.grouping-title-input:focus{background:#fff}.grouping-delete-group{margin-left:auto}.grouping-editor .icon-button{flex-shrink:0;justify-content:center;align-items:center;width:30px;height:36px;padding:.35rem;display:inline-flex}.grouping-editor .icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.grouping-edit-item{grid-template-columns:20px minmax(0,1fr) auto;align-items:start;gap:.35rem;margin:.75rem 0;display:grid}.grouping-item-number{padding-top:.8rem;font-weight:600}.grouping-item-actions{align-items:center;gap:.1rem;padding-top:.25rem;display:flex}.grouping-add-group{margin:1rem 0}.grouping-groups,.grouping-source{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.grouping-group{background:#fff;border:2px dashed #b5cccd;border-radius:16px;min-width:0;padding:12px}.grouping-group.drag-over{background:#eef8b5;border-color:#055560}.grouping-group-target{color:#055560;background:0 0;border:0;width:100%;margin:0 0 .6rem;padding:.25rem;display:block}.grouping-group-target h4{overflow-wrap:anywhere;margin:.35rem 0;font-size:1.1rem}.grouping-group-target:disabled{opacity:1;cursor:default}.grouping-placed{gap:.6rem;display:grid}.grouping-source{margin-top:1rem}.grouping-source-cell{min-width:0;padding:0 14px}.grouping-board .game-card,.grouping-source-space{height:var(--grouping-card-height,90px);min-height:var(--grouping-card-height,90px);box-sizing:border-box}.grouping-board .game-card-content{flex-shrink:0}.grouping-source button:not(:disabled){cursor:grab}@media (width<=850px){.grouping-editor-groups{grid-template-columns:minmax(0,1fr)}}@media (width<=480px){.grouping-editor{padding:.5rem}.grouping-edit-group{padding:.6rem}.grouping-edit-item{grid-template-columns:16px minmax(0,1fr)}.grouping-item-actions{grid-column:2;justify-content:flex-end;padding:0}.grouping-groups,.grouping-source{grid-template-columns:minmax(0,1fr)}}.grouping-source{margin:0 0 1rem}.game-timer-settings{border:1px solid #cddbd8;border-radius:12px;flex-wrap:wrap;gap:12px;margin:12px 0;padding:12px;display:flex}.game-timer-settings label{gap:5px;display:grid}.game-timer-settings p{flex-basis:100%;margin:0}.game-timer-button{flex:none;align-self:center}.game-controls>.game-timer-button{width:40px;height:40px}.game-timer-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.timer-settings-dialog{border:1px solid var(--line);width:min(460px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ink);background:var(--surface);border-radius:18px;padding:24px;overflow:auto;box-shadow:0 24px 70px #183e353d}.timer-settings-dialog::backdrop{background:#09241d6b}.timer-settings-dialog>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.timer-settings-dialog h2{font-family:var(--heading-font);overflow-wrap:anywhere;margin:0;font-size:22px}.timer-settings-dialog .game-timer-settings{border:0;margin:20px 0 0;padding:0}.timer-settings-dialog .form-field{flex:180px;min-width:0}.timer-settings-dialog select,.timer-settings-dialog input{width:100%;min-width:0}.game-timer{font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:16px;margin:12px 0;display:flex}.game-live-board{position:relative}.game-remote-cursor{z-index:5;pointer-events:none;color:#055560;transition:transform .1s linear;position:absolute;top:0;left:0}.game-remote-cursor>span{white-space:nowrap;background:#ccef00;border-radius:6px;padding:3px 6px}.game-remote-card{opacity:.9;box-shadow:0 5px 18px #05556040}.image-search-dialog{color:#292538;background:#fff;border:1px solid #ddd8ec;border-radius:22px;width:min(760px,100vw - 32px);max-height:calc(100dvh - 32px);padding:24px;box-shadow:0 24px 80px #25134540}.image-search-dialog::backdrop{background:#21133280}.image-search-dialog header{justify-content:space-between;align-items:center;gap:16px;display:flex}.image-search-dialog h2{margin:0 0 16px}.image-search-controls{grid-template-columns:1fr auto;align-items:end;gap:12px;display:grid}.image-search-controls .form-field{min-width:0}.image-search-credit{color:#665e78;font-size:13px}.image-search-results{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.image-search-results article{min-width:0}.image-search-results button{cursor:pointer;background:#f7f5fb;border:1px solid #ddd8ec;border-radius:12px;width:100%;height:130px;padding:4px}.image-search-results button:hover{border-color:#7040b7}.image-search-results img{object-fit:contain;width:100%;height:100%}.image-search-results a{overflow-wrap:anywhere;margin-top:4px;font-size:12px;display:block}.image-search-pages{justify-content:center;align-items:center;gap:16px;margin-top:20px;display:flex}@media (width<=600px){.image-search-controls{grid-template-columns:1fr}.image-search-results{grid-template-columns:repeat(2,minmax(0,1fr))}.image-search-dialog{padding:16px}}.game-editor .icon-button svg,.image-search-dialog .icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.account-create-fields{border:0;gap:17px;min-width:0;margin:0;padding:0;display:grid}.account-teacher-options{border:1px solid #cbd7d0;border-radius:9px;gap:12px;min-width:0;margin:0;padding:12px;display:grid}.account-teacher-options legend{color:#52635d;padding:0 5px;font-size:13px;font-weight:700}.account-teacher-options label{overflow-wrap:anywhere;align-items:center;gap:8px;display:flex}.account-teacher-options input[type=checkbox]{flex-shrink:0;width:20px;height:20px;min-height:20px;padding:0}.missing-thing-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;display:grid}.missing-thing-card{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;width:100%;height:220px;display:flex;overflow:hidden}.missing-thing-card .game-card-content{overflow-wrap:anywhere;min-height:0;max-height:100%;overflow:auto}.missing-thing-card .game-card-content img{object-fit:contain;flex-shrink:0;max-height:145px}.missing-thing-card.is-hidden{background:#eef3ee;border:2px dashed #055560}.missing-thing-cover{color:#ccef00;background:#055560;border-radius:12px;place-items:center;width:100%;height:100%;font-size:4rem;display:grid}.missing-thing-hint{color:#055560;margin-top:.5rem;font-size:.8rem}.missing-editor>section{border-bottom:1px solid #d9e4dd;padding:.75rem}.account-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.account-page-nav{gap:8px;margin-bottom:20px;display:flex}.account-page-nav a{color:var(--brand-green,#055560);background:#fff;border:1px solid #cbd7d0;border-radius:12px;padding:12px 20px;font-weight:700;text-decoration:none}.account-page-nav a[aria-current=page]{background:#ccef00;border-color:#ccef00}.account-admins{margin-top:24px}.account-admins summary{cursor:pointer;color:#055560;padding:12px 0;font-weight:700}.account-delete-panel{max-width:620px}.account-controls .danger-button,.account-delete-panel .danger-button{color:#fff;background:#a34a3d}.account-create{box-sizing:border-box;width:min(100%,620px)}.account-list-area{min-width:0}.account-table-scroll{background:#fff;border:1px solid #dce4de;border-radius:16px;overflow-x:auto}.account-table{border-collapse:collapse;text-align:left;width:100%}.account-table caption{text-align:left;padding:20px;font-size:22px;font-weight:700}.account-table th,.account-table td{vertical-align:top;border-top:1px solid #e6ebe7;padding:16px}.account-table thead{color:#52635d;background:#f4f7f4;font-size:13px}.account-table tbody th{min-width:130px}.account-table .account-controls{min-width:165px;display:grid}.account-table td.account-controls{display:table-cell}.account-table .account-email{overflow-wrap:anywhere;min-width:180px}.account-table .activation-status{white-space:nowrap;margin:0;display:inline-block}.account-table .role-confirm{grid-template-columns:1fr}.student-book{background:var(--surface,#fff);border:1px solid #dfe6dc;border-radius:1rem;margin:1.5rem 0;padding:1.25rem}.students-workspace .material-node-link{text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.students-workspace .lesson-summary{margin-bottom:2rem}.shared-media-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.shared-media-controls label{gap:4px;display:grid}.shared-media-player video{width:100%;max-height:65vh}.shared-media-player>p{font-size:.9rem}.shared-media-player audio{display:none}.shared-media-controls input[type=range]{accent-color:#055560}.shared-media-controls>span{white-space:nowrap}.teacher-script{flex-direction:column;align-items:flex-end;margin:6px 0;display:flex}.teacher-script-toggle{color:#055560;width:30px;min-width:30px;height:30px;padding:5px}.teacher-script-toggle[aria-expanded=true]{background:#ccef00}.teacher-script-text{color:#055560;white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f7ef;border-left:3px solid #055560;border-radius:8px;align-self:stretch;margin-top:8px;padding:14px 16px}.game-screen{min-width:0}.game-screen-stage{overflow-clip-margin:4px;position:relative;overflow:clip}.game-screen-content{transform-origin:top;display:flow-root}.game-screen-content>h3{margin-top:0}.game-pagination{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:.6rem;margin:.4rem 0;display:flex}.game-pagination button{color:#055560;background:#fff;border:1px solid #b5cccd;border-radius:10px;width:44px;min-height:44px;font-size:1.35rem}.game-pagination button:disabled{opacity:.4;cursor:default}.game-pagination button:focus-visible{outline-offset:2px;outline:3px solid #ccef00}.game-revealed ul{gap:.4rem;margin:.5rem 0;padding:0;list-style:none;display:grid}.game-revealed li{justify-content:center;align-items:center;gap:.5rem;display:flex}.game-revealed li>.game-card-content{flex:1}.game-screen .game-revealed img{max-height:48px}.game-screen .game-history{max-height:20dvh;overflow:auto}@media (width>=640px){.game-screen{border-radius:18px;padding:12px}.game-screen-content>p,.game-screen .game-timer{margin:.4rem 0}.game-screen .game-card{border-radius:12px;padding:.5rem}.game-screen .game-card-content{gap:.3rem}.game-screen .game-card-content img{max-height:80px}.game-screen :is(.matching-board,.grouping-board) .game-card-content{flex-direction:row;justify-content:center}.game-screen :is(.matching-board,.grouping-board) .game-card-content>span{min-width:0}.game-screen :is(.matching-board,.grouping-board) .game-card-content img{max-width:45%;max-height:64px}.game-screen .matching-board,.game-screen .quiz-choices{gap:.5rem;margin:.5rem 0}.game-screen .matching-column,.game-screen .matching-row{gap:.5rem}.game-screen .quiz-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.game-screen .quiz-prompt{padding:.5rem}.game-screen .quiz-prompt img{max-height:100px}.game-screen .grouping-board{grid-template-columns:minmax(0,calc(33.3333% - .5rem)) minmax(0,1fr);gap:.75rem;display:grid}.game-screen .grouping-source{grid-area:1/1;grid-template-columns:minmax(0,1fr);align-content:start;margin:0}.game-screen .grouping-groups{grid-area:1/2;align-content:start}.game-screen .grouping-source+.game-pagination{grid-area:2/1}.game-screen .grouping-groups+.game-pagination{grid-area:2/2}.game-screen .missing-thing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.game-screen .missing-thing-card{height:max(140px, var(--missing-card-height,140px))}.game-screen .missing-thing-card .game-card-content{flex-shrink:0;max-height:none;overflow:visible}.game-screen .game-timer-settings{gap:8px;margin:.4rem 0;padding:6px 10px}.game-screen .game-timer-settings label{align-items:center;gap:8px;display:flex}.game-screen .game-timer-settings select,.game-screen .game-timer-settings input{min-height:36px;padding:6px 8px}.game-screen .game-controls{margin:.5rem 0}.game-screen .game-praise{margin:.5rem 0;padding:.5rem}.game-screen .game-praise>span,.game-screen .game-praise h4{font-size:1.2rem}.game-screen .game-praise p{margin:.25rem 0}}.game-feedback{min-height:80px}.game-feedback .game-praise{flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;margin:.25rem 0;padding:.4rem;display:flex}.game-feedback .game-praise h4,.game-feedback .game-praise p{margin:0}.game-feedback .game-last-action{margin:.4rem 0}.game-screen .grouping-placed{min-height:calc(var(--grouping-card-height,90px) * 2 + .6rem);align-content:start}.grouping-page-controls{min-height:58px}.grouping-feedback{min-height:1.5em;margin:.4rem 0}@media (height<=700px){.game-screen .grouping-placed{min-height:var(--grouping-card-height,90px)}}.homework-entry{background:#fff;border-radius:18px;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:28px;padding:20px;display:flex}.homework-entry p{margin:0}.standalone-homework .homework-section{border:0;margin-top:20px;padding-top:0}.image-answer-viewport{max-width:100%;padding:3px;overflow:auto}.image-answer-canvas{width:100%;min-width:640px;position:relative;container-type:inline-size}.material-media .image-answer-canvas>img{border-radius:0;width:100%;height:auto;margin:0;display:block}.image-blank-result{min-height:24px;margin:0;display:block;position:absolute}.image-blank-result input{box-sizing:border-box;width:100%;min-width:0;height:100%;min-height:24px;color:var(--ink);text-align:left;background:#fff;border:1px solid #6b8b80;border-radius:3px;margin:0;padding:0 3px;font-size:clamp(16px,2.2cqw,28px)}.image-blank-result input:focus{outline:3px solid var(--brand-lime);outline-offset:1px}.image-blank-result .inline-correct-answer{z-index:2;white-space:nowrap;background:#fff;border-radius:3px;padding:2px 4px;font-size:14px}.image-blank-editor{gap:12px;margin-block:16px;display:grid}.image-blank-editor-controls{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.image-blank-editor-controls .form-field{flex:160px;margin:0}.image-blank-editor-canvas{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.image-blank-marker{color:#392052;background:#f3e7ffdd;border:2px solid #7756aa;border-radius:3px;min-width:0;min-height:0;padding:0;font-weight:700;position:absolute;overflow:hidden}.image-blank-marker.selected{outline:3px solid var(--brand-lime)}.image-blank-field{border:1px solid #d7dfda;border-radius:8px;padding:12px}.image-blank-field .form-columns{grid-template-columns:repeat(4,minmax(0,1fr))}.image-blank-mode{flex-wrap:wrap;gap:12px;display:flex}.editor-panel:has(.image-blank-editor){width:min(1120px,100%)}
