:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f6f9;--bg-soft:#e6eff4;--panel:#fff;--ink:#0f1e28;--muted:#5a6b75;--line:#cddae2;--brand:#1a6a94;--brand-dark:#0e4d70;--brand-light:#e8f4fb;--accent:#b56b3a;--accent-soft:#f5dfc9;--igs-navy:#052b55;--igs-navy-soft:#e8eef5;--blue-soft:#d4e8f5;--mint-soft:#d8ede9;--sage-soft:#dde8d8;--lavender-soft:#e2e1f0;--danger:#9e3535;--success:#2a6e45;--panel-soft:#f8fbfd;--info-soft:#eef6fb;--info-border:#bfd7ea;--info-fg:#205f8f;--danger-soft:#fff6f6;--success-soft:#edf6f0;--success-border:#cfe6d8;--success-fg:#1f5b31;--warn-soft:#fff1cf;--warn-fg:#6d5600;--orange-soft:#ffe1c7;--orange-fg:#7b4300;--shadow:0 12px 36px #0f1e281a;--shadow-sm:0 4px 14px #0f1e2812;--radius:10px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:calc(16px * var(--textskala,1))}html[data-schrift=s]{--textskala:.92}html[data-schrift=l]{--textskala:1.16}html[data-theme=dunkel]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1822;--bg-soft:#16232f;--panel:#1b2833;--ink:#e8eef3;--muted:#9fb0bb;--line:#30424f;--brand:#4ea6d0;--brand-dark:#7cc0e2;--brand-light:#16323f;--accent:#d68f57;--accent-soft:#3d2c1c;--igs-navy:#a9c4e0;--igs-navy-soft:#1b2838;--blue-soft:#17313f;--mint-soft:#163029;--sage-soft:#1f2c1e;--lavender-soft:#262541;--danger:#e08d8d;--success:#6dc493;--panel-soft:#16212c;--info-soft:#182a3a;--info-border:#2e4a63;--info-fg:#9cc6e8;--danger-soft:#38201f;--success-soft:#17301f;--success-border:#31543c;--success-fg:#8fd3a6;--warn-soft:#33290f;--warn-fg:#e8d391;--orange-soft:#372313;--orange-fg:#f0b988;--shadow:0 12px 36px #00000080;--shadow-sm:0 4px 14px #0006}html[data-theme=dunkel] .yearButtons button:nth-child(3){background:#332b16}html[data-theme=dunkel] .quarterButtons button:first-child{background:#322a12}html[data-theme=dunkel] .quarterButtons button:nth-child(2){background:#17301f}html[data-theme=dunkel] .quarterButtons button:nth-child(3){background:#17293a}html[data-theme=dunkel] .quarterButtons button:nth-child(4){background:#2e1d2c}html[data-theme=dunkel] body{background:var(--bg)}html[data-theme=dunkel] .studentAccentBlue{--modal-accent:#5bb8ec;--modal-deep:#d0e6f7;--modal-tint:#14283a}html[data-theme=dunkel] .studentAccentGold{--modal-accent:#e6bd44;--modal-deep:#f0e0a8;--modal-tint:#2c2611}html[data-theme=dunkel] .studentAccentOrange{--modal-accent:#f39b52;--modal-deep:#f6d3b2;--modal-tint:#2f2013}html[data-theme=dunkel] .studentAccentPurple{--modal-accent:#9d85f5;--modal-deep:#ddd4fb;--modal-tint:#201d39}html[data-theme=dunkel] .studentAccentGreen{--modal-accent:#5cbb7b;--modal-deep:#c6e8d0;--modal-tint:#16261d}html[data-theme=dunkel] .studentAccentMedia{--modal-accent:#9d85f5;--modal-deep:#ddd4fb;--modal-tint:#1f1b35}html[data-theme=dunkel] .primary:hover,html[data-theme=dunkel] .tabs button.active:hover,html[data-theme=dunkel] .planDone{background:var(--brand);border-color:var(--brand);color:#0f1822}html[data-theme=dunkel] .matrixBlue{--accent:#5bb8ec;--deep:#d0e6f7;--tint:#14283a}html[data-theme=dunkel] .matrixGold{--accent:#e6bd44;--deep:#f0e0a8;--tint:#2c2611}html[data-theme=dunkel] .matrixOrange{--accent:#f39b52;--deep:#f6d3b2;--tint:#2f2013}html[data-theme=dunkel] .matrixPurple{--accent:#9d85f5;--deep:#ddd4fb;--tint:#201d39}html[data-theme=dunkel] .matrixGreen{--accent:#5cbb7b;--deep:#c6e8d0;--tint:#16261d}html[data-theme=dunkel] .matrixMedia{--accent:#9d85f5;--deep:#ddd4fb;--tint:#1f1b35}html[data-theme=dunkel] .studentTaskPreview,html[data-theme=dunkel] .fitmStatus{color:var(--muted)}html[data-theme=dunkel] .fitmStatus i{background:#4a5c6a}html[data-theme=dunkel] .studentGoalTag{color:var(--muted)}html[data-theme=dunkel] .studentMatrixCell.studentProgress-erledigt,html[data-theme=dunkel] .studentPhoneCard.studentProgress-erledigt{background:color-mix(in srgb, #37a55a 20%, var(--panel));border-color:#4faf74}html[data-theme=dunkel] .studentMatrixCell.studentProgress-angefangen,html[data-theme=dunkel] .studentPhoneCard.studentProgress-angefangen{background:color-mix(in srgb, #d68f57 20%, var(--panel));border-color:#d68f57}html[data-theme=dunkel] .studentPhoneCard.matrixBlue,html[data-theme=dunkel] .studentPhoneCard.matrixGold,html[data-theme=dunkel] .studentPhoneCard.matrixOrange,html[data-theme=dunkel] .studentPhoneCard.matrixPurple,html[data-theme=dunkel] .studentPhoneCard.matrixGreen,html[data-theme=dunkel] .studentPhoneCard.matrixMedia{background:var(--panel)}html[data-theme=dunkel] .studentPhoneCard.active{background:color-mix(in srgb, var(--brand) 16%, var(--panel))}html[data-theme=dunkel] .studentGoalDetail{background:var(--panel)}html[data-einfach-lesen="1"] body,html[data-einfach-lesen="1"] button,html[data-einfach-lesen="1"] input,html[data-einfach-lesen="1"] select,html[data-einfach-lesen="1"] textarea{font-family:"Atkinson Hyperlegible", var(--font-sans,system-ui, sans-serif)}html[data-einfach-lesen="1"]{letter-spacing:.012em;line-height:1.65}html[data-kontrast="1"]{--ink:#000;--muted:#33414b;--line:#7a8a95;--brand:#0d4b6e;--brand-dark:#08324c;--igs-navy:#041d3a}html[data-kontrast="1"][data-theme=dunkel]{--ink:#fff;--muted:#d7e0e7;--line:#8ea3b0;--brand:#a9d6f2;--brand-dark:#cfe8fa;--igs-navy:#cfe0f2;--bg:#000;--panel:#0c1219}.anzeigeMenu{display:inline-flex;position:relative}.anzeigeIconBtn{color:var(--igs-navy);background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:999px;min-width:40px;height:40px;min-height:40px;padding:0 10px;font-size:.9rem;font-weight:700}.anzeigeIconBtn:hover{border-color:var(--brand);color:var(--brand)}.anzeigePanel{z-index:60;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);width:250px;box-shadow:var(--shadow);flex-direction:column;gap:12px;padding:12px 14px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.anzeigePanelKopf{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.anzeigePanelKopf span{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.72rem;font-weight:700}.anzeigeSchliessen{color:var(--muted);cursor:pointer;background:0 0;border:none;min-height:0;padding:2px 6px;font-size:1.1rem;line-height:1}.anzeigeSchliessen:hover{color:var(--ink)}.anzeigeZeile{justify-content:space-between;align-items:center;gap:10px;display:flex}.anzeigeZeile>span{color:var(--ink);font-size:.9rem}.anzeigeSegment{border:1px solid var(--line);border-radius:999px;flex:none;display:flex;overflow:hidden}.anzeigeSegment button{color:var(--muted);background:var(--panel);cursor:pointer;border:none;min-height:34px;padding:6px 14px;font-size:.78rem;font-weight:700}.anzeigeSegment button+button{border-left:1px solid var(--line)}.anzeigeSegmentAktiv{background:var(--brand)!important;color:#fff!important}.anzeigeToggle{background:var(--line);cursor:pointer;border:none;border-radius:999px;flex:none;width:46px;height:26px;min-height:26px;padding:0;transition:background .15s;position:relative}.anzeigeToggle:after{content:"";background:var(--panel);border-radius:50%;width:20px;height:20px;transition:left .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000040}.anzeigeToggleAn{background:var(--brand)}.anzeigeToggleAn:after{left:23px}html{-webkit-text-size-adjust:100%;width:100%;max-width:100%;overflow-x:clip}*{box-sizing:border-box}body{background:linear-gradient(180deg, color-mix(in srgb, var(--panel) 72%, transparent), #fff0), var(--bg);min-height:100vh;color:var(--ink);margin:0;overflow-x:clip}#root{width:100%;max-width:100%;overflow-x:clip}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.shell{width:min(1680px,100% - 32px);margin:0 auto;padding:24px 0 64px}.topbar{border-bottom:2px solid var(--igs-navy);grid-template-columns:1fr auto auto;align-items:center;gap:18px;margin-bottom:24px;padding:20px 0 28px;display:grid}.eyebrow{color:var(--brand);letter-spacing:.06em;text-transform:uppercase;margin:0 0 5px;font-size:.75rem;font-weight:800}h1,h2{letter-spacing:0;margin:0}h1{color:var(--igs-navy);font-size:clamp(1.9rem,4.5vw,3.8rem);line-height:1}h2{color:var(--ink);font-size:1.15rem}h3{color:var(--ink);font-size:1rem}h4{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.9rem;font-weight:700}.tabs,.actions,.rowActions,.checks{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tabs{border:1px solid var(--line);background:var(--bg-soft);border-radius:8px;padding:4px}.tabs button,.secondary,button{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);min-height:44px;color:var(--ink);cursor:pointer;padding:9px 14px;font-size:.95rem}.tabs button.active,.primary{border-color:var(--brand);background:var(--brand);color:#fff;font-weight:700}.primaryButton{border:1px solid var(--brand-dark);background:linear-gradient(180deg, #3d89b2 0%, var(--brand) 100%);color:#fff;border-radius:12px;min-height:48px;padding:10px 18px;font-weight:800;box-shadow:0 8px 18px #0e4d702e}.primary:hover,.tabs button.active:hover{background:var(--brand-dark);border-color:var(--brand-dark)}button:disabled{cursor:wait;opacity:.7}.session{color:var(--muted);align-items:center;gap:8px;font-size:.9rem;display:flex;position:relative}.sessionInfo{flex-wrap:wrap;justify-content:flex-end;align-items:stretch;gap:8px;display:flex}.roleBadge{border:1px solid var(--line);border-radius:var(--radius);background:var(--igs-navy-soft);gap:1px;min-width:170px;padding:8px 10px;display:grid}.roleBadge strong{overflow-wrap:anywhere;color:var(--igs-navy);font-size:.82rem;font-weight:700;line-height:1.15}.roleBadge small{overflow-wrap:anywhere;color:var(--muted);font-size:.74rem;font-weight:600;line-height:1.15}.sessionButton{border-color:var(--line);background:var(--panel);min-width:112px;min-height:40px;color:var(--igs-navy);padding:8px 12px;font-weight:700}.logoutButton{background:var(--danger-soft);color:var(--danger);border-color:#e6b9b9;justify-content:center;align-items:center;min-width:112px;min-height:40px;padding:8px 12px;font-weight:800;display:inline-flex}.logoutIcon{font-size:1.3rem;line-height:1;display:none}.logoutBox{justify-items:center;gap:2px;display:grid}.logoutX{background:var(--danger-soft);width:30px;min-height:30px;color:var(--danger);border-color:#e6b9b9;border-radius:999px;place-items:center;padding:0;font-size:1.2rem;font-weight:800;line-height:1;display:grid}.logoutText{min-height:auto;color:var(--danger);background:0 0;border:0;padding:0;font-size:.76rem}.menuWrap{position:relative}.burger{grid-template-rows:repeat(3,2px);align-content:center;gap:4px}.burger span{background:var(--ink);border-radius:2px;width:16px;height:2px}.menuPanel{z-index:10;border:1px solid var(--line);background:var(--panel);min-width:150px;box-shadow:var(--shadow);border-radius:8px;padding:6px;position:absolute;top:calc(100% + 8px);right:0}.menuPanel button{text-align:left;background:0 0;border:0;justify-content:flex-start;width:100%}.iconButton{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);width:44px;height:44px;color:var(--ink);place-items:center;padding:0;text-decoration:none;display:inline-grid}.iconButton.danger{color:var(--danger);border-color:#e2b8b8}.textButton{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);min-height:44px;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;padding:9px 14px;font-size:.95rem;text-decoration:none;display:inline-flex}.textButton:hover{border-color:var(--brand);background:var(--brand-light)}.textButton.danger{color:var(--danger);border-color:#e2b8b8}.textButton.disabled{cursor:default;opacity:.7}.deleteHelpWrap{display:inline-flex;position:relative}.deleteHint{z-index:20;border:1px solid var(--line);background:var(--panel);width:min(280px,100vw - 48px);color:var(--ink);border-radius:8px;padding:10px;font-size:.84rem;line-height:1.4;display:none;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 12px 28px #17211b24}.deleteHelpWrap:hover .deleteHint,.deleteHelpWrap:focus-within .deleteHint{display:block}.notice{border-left:4px solid var(--brand);background:var(--brand-light);border-radius:0 var(--radius) var(--radius) 0;color:var(--brand-dark);margin:0 0 20px;padding:14px 16px;font-size:.95rem}.workspace,.teacherWorkspace{gap:18px;display:grid}.teacherBackBar{border-bottom:1px solid var(--line);margin-bottom:4px;padding-bottom:4px}.teacherShell{grid-template-columns:204px minmax(0,1fr);align-items:start;gap:18px;display:grid}.teacherShell--collapsed{grid-template-columns:60px minmax(0,1fr)}.teacherSidebar{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;align-self:start;gap:14px;padding:14px 12px;display:flex;position:sticky;top:16px}.teacherSidebarTop{justify-content:space-between;align-items:center;gap:8px;min-height:32px;display:flex}.teacherSidebar--collapsed .teacherSidebarTop{justify-content:center}.teacherSidebarBrand{color:var(--ink);letter-spacing:-.01em;white-space:nowrap;font-size:.98rem;font-weight:800;overflow:hidden}.teacherSidebar--collapsed .teacherSidebarBrand{font-size:.82rem}.teacherSidebarToggle{border:1px solid var(--line);background:var(--panel);width:30px;height:30px;min-height:30px;color:var(--muted);cursor:pointer;border-radius:8px;flex:none;padding:0;font-size:1rem;line-height:1}.teacherSidebarToggle:hover{color:var(--ink);border-color:var(--accent)}.teacherSidebarNav{flex-direction:column;gap:14px;display:flex}.teacherNavGroup{flex-direction:column;gap:3px;display:flex}.teacherNavGroupLabel{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:4px 8px 2px;font-size:.7rem;font-weight:800}.teacherNavGroupRule{background:var(--line);height:1px;margin:4px 6px}.teacherNavItem{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;padding:9px 10px;font-size:.92rem;font-weight:600;transition:background .12s,color .12s;display:flex;position:relative}.teacherNavItem:hover{background:var(--bg-soft,#f6f3f0)}.teacherNavItem.active{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--brand-dark,var(--ink));font-weight:800}.teacherNavItem.active:before{content:"";background:var(--accent);border-radius:999px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.teacherNavIcon{text-align:center;width:22px;color:var(--muted);flex:none;font-size:1rem}.teacherNavItem.active .teacherNavIcon{color:var(--accent)}.teacherNavLabel{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.teacherNavBadge{background:var(--accent);color:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.72rem;font-weight:800;display:inline-flex}.teacherSidebar--collapsed .teacherNavItem{justify-content:center;padding:9px 0}.teacherSidebar--collapsed .teacherNavBadge{min-width:16px;height:16px;padding:0 4px;font-size:.62rem;position:absolute;top:3px;right:6px}.teacherMain{min-width:0}.teacherNavDivider{background:var(--line);height:1px;margin:8px 6px;display:block}.planTileGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-top:14px;display:grid}.planTile{aspect-ratio:1;text-align:center;border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:16px;justify-content:center;align-items:center;padding:12px;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex}.planTile:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--line));transform:translateY(-2px);box-shadow:0 10px 24px #0f1e281f}.planTileKey{font-family:var(--font-mono,ui-monospace, monospace);color:var(--ink);letter-spacing:.01em;font-size:1.15rem;font-weight:800}.planningList{gap:10px;margin-top:12px;display:grid}.planningRow{border:1px solid var(--line);background:var(--panel);cursor:pointer;text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:14px 16px;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex}.planningRow:hover{box-shadow:var(--shadow-sm);border-color:color-mix(in srgb, var(--accent) 40%, var(--line));transform:translateY(-1px)}.planningRowMain{flex-direction:column;gap:2px;min-width:0;display:flex}.planningRowMain strong{color:var(--ink)}.planningRowMain span{color:var(--muted);font-size:.9rem}.planningRowMeta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.planningRowGroup,.planningRowTime{color:var(--muted);font-size:.84rem}.assignList{gap:12px;margin-top:12px;display:grid}.assignRow{border:1px solid var(--line);background:var(--panel);border-radius:12px;gap:8px;padding:14px 16px;display:grid}.assignRowHead{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.assignRowHead strong{color:var(--ink)}.assignRowHead span{color:var(--muted);font-size:.9rem}.assignChips{flex-wrap:wrap;gap:8px;display:flex}@media (width<=820px){.teacherShell,.teacherShell--collapsed{grid-template-columns:minmax(0,1fr)}.teacherSidebar{top:var(--app-topbar-height,64px);z-index:35;-webkit-overflow-scrolling:touch;flex-flow:row;align-self:stretch;align-items:center;gap:4px;padding:8px;position:sticky;overflow-x:auto}.teacherSidebarTop{display:none}.teacherSidebarNav{flex-flow:row;align-items:center;gap:4px;width:100%}.teacherNavGroup{flex-flow:row;gap:4px}.teacherNavGroupLabel{display:none}.teacherNavGroupRule,.teacherNavDivider{background:var(--line);flex:none;width:1px;height:26px;margin:0 2px}.teacherNavItem{flex-direction:column;flex:none;justify-content:center;gap:0;width:44px;min-width:44px;height:44px;padding:0}.teacherNavLabel{display:none}.teacherNavIcon{width:auto;font-size:1.3rem}.teacherNavItem.active:before{width:auto;height:3px;inset:auto 10px 3px}.teacherNavBadge{min-width:16px;height:16px;padding:0 4px;font-size:.62rem;position:absolute;top:2px;right:2px}.teacherMain{margin-top:12px}}.workspace.split{grid-template-columns:minmax(280px,420px) 1fr;align-items:start}.workspace.adminWorkspace,.workspace.split.adminWorkspace{grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.panel,.planCard{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:22px}.panel.narrow{width:min(440px,100%)}.studentLoginPanel{margin:0 auto}.teacherDashboard{gap:16px;display:grid}.previewNotice{border-color:var(--line);background:var(--info-soft);color:var(--brand-dark)}.focusPlanCard{border:1px solid var(--line);border-left:4px solid var(--igs-navy);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 97%, transparent);box-shadow:var(--shadow-sm);grid-template-columns:1fr auto;align-items:end;gap:18px;padding:22px;display:grid}.focusPlanCard h2{color:var(--igs-navy);margin:0}.focusLabel{color:var(--muted);text-transform:uppercase;margin:0 0 4px;font-size:.84rem;font-weight:700}.focusMeta{color:var(--muted);margin:10px 0 0;font-size:.86rem}.focusActions{align-items:center;gap:10px;display:flex}.buttonDraftShowcase{background:color-mix(in srgb, var(--panel) 92%, transparent);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;padding:18px}.buttonDraftRow{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.teacherActionGrid{grid-template-columns:repeat(4,minmax(180px,1fr));gap:16px;display:grid}.toolTile{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 95%, transparent);min-height:170px;box-shadow:var(--shadow-sm);text-align:center;cursor:pointer;align-content:center;justify-items:center;gap:12px;padding:22px;transition:border-color .12s,box-shadow .12s,background .12s;display:grid}.toolTile strong{color:var(--igs-navy);font-size:1.05rem}.toolTile small{color:var(--muted);font-size:.88rem;line-height:1.4}.toolTile:hover{border-color:var(--brand);background:var(--brand-light);box-shadow:0 6px 20px #1a6a941f}.tileIcon{border-radius:var(--radius);background:var(--igs-navy-soft);width:48px;height:48px;color:var(--igs-navy);place-items:center;font-size:1.4rem;font-weight:900;display:grid}.buttonDraftTheme .primary,.buttonDraftTheme .primaryButton{color:#fff;box-shadow:0 10px 18px #114f722e, inset 0 1px 0 color-mix(in srgb, var(--panel) 20%, transparent);background:linear-gradient(#3f88b1 0%,#226b92 55%,#165675 100%);border-color:#114f72;transition:transform .14s,box-shadow .14s,background .14s;transform:translateY(0)}.buttonDraftTheme .primary:hover,.buttonDraftTheme .primaryButton:hover{box-shadow:0 12px 24px #114f7238, inset 0 1px 0 color-mix(in srgb, var(--panel) 22%, transparent);background:linear-gradient(#4a95bf 0%,#1f6286 60%,#114b68 100%);transform:translateY(-1px)}.buttonDraftTheme .secondary,.buttonDraftTheme .textButton{border-color:var(--line);color:var(--igs-navy);background:linear-gradient(#fff 0%,#f2f8fb 100%);border-radius:12px;font-weight:700;box-shadow:0 6px 14px #0f1e280f}.buttonDraftTheme .secondary:hover,.buttonDraftTheme .textButton:hover{color:var(--brand-dark);background:linear-gradient(#fff 0%,#eaf4fa 100%);border-color:#91b9d2}.buttonDraftTheme .iconButton{border-color:var(--line);background:linear-gradient(180deg, #fff 0%, var(--info-soft) 100%);border-radius:12px;box-shadow:0 6px 14px #0f1e280f}.buttonDraftTheme .portalSwitch{box-shadow:inset 0 1px 0 color-mix(in srgb, var(--panel) 65%, transparent);background:linear-gradient(#eff6fa 0%,#ddebf3 100%);border-radius:14px;padding:5px}.buttonDraftTheme .portalSwitch button{border-radius:10px;font-weight:800}.buttonDraftTheme .toolTile{border-color:var(--line);background:linear-gradient(180deg, color-mix(in srgb, var(--panel) 98%, transparent) 0%, #f2f8fcf0 100%);box-shadow:0 12px 24px #0f1e2814, inset 0 1px 0 color-mix(in srgb, var(--panel) 75%, transparent);border-radius:16px;transition:transform .14s,box-shadow .14s,border-color .14s}.buttonDraftTheme .toolTile:hover{box-shadow:0 16px 28px #0f1e281f, inset 0 1px 0 color-mix(in srgb, var(--panel) 80%, transparent);background:linear-gradient(#fff 0%,#edf6fb 100%);border-color:#8db4cb;transform:translateY(-2px)}.buttonDraftTheme .tileIcon{background:linear-gradient(180deg, var(--info-soft) 0%, #dcecf7 100%);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--panel) 72%, transparent);border-radius:14px}.compactTrash{color:var(--danger)}.compactTrash .tileIcon{background:var(--danger-soft);color:var(--danger)}.dashboardHint{color:var(--muted);flex-wrap:wrap;grid-column:1/-1;justify-self:start;align-items:center;gap:8px;display:flex}.dashboardHint strong{color:var(--brand-dark)}.studentPreviewPanel{margin-bottom:18px}.materialSearchBar{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 16px;display:flex}.materialSearchInput{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);min-width:0;min-height:44px;color:var(--ink);flex:220px;padding:0 14px;font-size:.95rem}.materialTypeFilters{flex-wrap:wrap;gap:6px;display:flex}.materialTypeChip{border:1px solid var(--line);background:var(--panel);min-height:36px;color:var(--muted);cursor:pointer;border-radius:999px;padding:0 14px;font-size:.84rem;font-weight:700}.materialTypeChip.active{background:var(--brand-dark,var(--brand));border-color:var(--brand-dark,var(--brand));color:#fff}.materialSortSelect{color:var(--muted);align-items:center;gap:8px;font-size:.84rem;font-weight:700;display:flex}.materialSortSelect select{border:1px solid var(--line);background:var(--panel);min-height:36px;color:var(--ink);border-radius:8px}.materialPlanList{gap:22px;display:grid}.materialPlanGroup{gap:8px;display:grid}.materialPlanGroupHead{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:10px;padding-bottom:6px;display:flex}.materialPlanGroupHead h3{color:var(--muted);margin:0;font-size:1rem;font-weight:700}.materialFlatList{gap:8px;display:grid}.materialFlatRow{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;display:flex}.materialFlatIcon{background:var(--bg-soft);border-radius:8px;flex:none;place-items:center;width:34px;height:34px;font-size:1.1rem;display:grid}.materialFlatMain{flex-direction:column;flex:160px;gap:2px;min-width:0;display:flex}.materialFlatMain strong{color:var(--ink);overflow-wrap:anywhere}.materialCreatePanel{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 96%, transparent);margin:16px 0 20px;padding:18px}.materialCreatePanel h3{color:var(--igs-navy);margin:0 0 12px}.evaluationWorkspace{gap:16px;display:grid}.evaluationSummaryGrid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:16px;display:grid}.evaluationStatCard{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--panel) 96%, transparent);min-height:132px;box-shadow:var(--shadow-sm);align-content:start;gap:6px;padding:20px;display:grid}.evaluationStatCard strong{color:var(--igs-navy);font-size:clamp(1.9rem,3vw,2.6rem);line-height:1}.evaluationStatCard span{color:var(--muted);font-weight:700}.evaluationSections{gap:16px;display:grid}.embeddedPanelSection{gap:12px;display:grid}.embeddedPanelSection>h2{margin:0}.embeddedPanelSection .studentProfileDetail{margin-top:8px}.studentPreviewWrap{gap:14px;display:grid}.studentPreviewHeading{margin:0}.studentPreviewWrap .studentPreviewSelector{justify-self:start}.studentPreviewWrap .studentPreviewSelector select{min-width:200px}.studentPreviewSelector{gap:6px;min-width:220px;display:grid}.studentPreviewSelector span{color:var(--muted);font-size:.78rem;font-weight:700}.sectionHead{justify-content:space-between;align-items:center;gap:12px;display:flex}.filterbar{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);align-items:start;gap:16px;padding:18px;display:grid}.filterLabel,.form label,fieldset{color:var(--muted);gap:7px;font-size:.88rem;font-weight:650;display:grid}.filterLabel{margin-bottom:8px}.buttonGroup{flex-wrap:wrap;gap:8px;display:flex}.buttonGroup button{min-width:48px;color:var(--ink);border:1px solid #0000;font-weight:750}.yearButtons button:first-child{background:var(--sage-soft)}.yearButtons button:nth-child(2){background:var(--blue-soft)}.yearButtons button:nth-child(3){background:#f0e8d2}.yearButtons button:nth-child(4){background:var(--accent-soft)}.yearButtons button:nth-child(5){background:var(--lavender-soft)}.yearButtons button:nth-child(6){background:var(--mint-soft)}.quarterButtons button:first-child{background:#f2e5be}.quarterButtons button:nth-child(2){background:#d8ebdd}.quarterButtons button:nth-child(3){background:#d7e6f0}.quarterButtons button:nth-child(4){background:#ead8e8}.planButtons button{background:var(--success-soft)}.buttonGroup button.active{border-color:var(--brand-dark);box-shadow:inset 0 0 0 2px #0d493f2e}input,select,textarea{border:1px solid var(--line);background:var(--panel);width:100%;min-height:40px;color:var(--ink);border-radius:7px;padding:8px 10px}textarea{resize:vertical}fieldset{border:1px solid var(--line);border-radius:8px;margin:0;padding:12px}legend{padding:0 6px}.inline,.checks label{flex-direction:row;align-items:center;display:flex}.inline input,.checks input{width:18px;min-height:18px}.matrix{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.fitMatrixEditor,.studentMatrix{gap:12px;display:grid;overflow-x:auto}.teacherMatrixShell{grid-template-columns:1fr;align-items:start;gap:18px;margin-top:12px;display:grid}.sectionHeadActions{align-items:center;gap:8px;display:flex}.matrixUploadLabel{cursor:pointer}.columnControls{align-items:center;gap:10px;display:flex}.undoColumnButton{color:var(--accent);font-size:.82rem;font-weight:700;animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.teacherPlanMetaBar{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px 14px;display:grid}.teacherPlanMetaBar label{gap:5px}.teacherPlanMetaBar input,.teacherPlanMetaBar select{min-height:38px;padding:6px 10px;font-size:.9rem}.teacherGroupSelector{gap:8px;margin-top:12px;display:grid}.teacherGroupSelectorLabel{color:var(--muted);text-transform:uppercase;font-size:.82rem;font-weight:700}.teacherGroupChips{flex-wrap:wrap;gap:8px;display:flex}.groupChip{border:1px solid var(--info-border);background:var(--info-soft);min-height:38px;color:var(--info-fg);border-radius:999px;padding:0 14px;font-weight:700}.groupChip.active{background:var(--blue-soft);color:var(--igs-navy);border-color:#3f94f2;box-shadow:inset 0 0 0 1px #3f94f22e}.matrixHeaderLine{color:var(--ink);grid-template-columns:auto minmax(240px,1fr) auto;align-items:center;gap:12px;display:grid}.matrixHeaderActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.matrixHeaderLine em{font-style:normal;font-weight:800}.planFormTop{flex-wrap:wrap;align-items:start;gap:16px 28px;display:flex}.planThemeField{flex:100%;max-width:520px}.planFormRow2{flex-wrap:wrap;align-items:start;gap:16px 36px;margin-top:16px;display:flex}.planThemeField,.planSegField,.planToggleField,.planRangeField{gap:7px;display:grid}.planSegField>span,.planToggleField>span,.planRangeField>span{color:var(--muted);font-size:.82rem;font-weight:700}.segGroup{border:1px solid var(--line);border-radius:9px;flex-wrap:wrap;width:max-content;max-width:100%;display:inline-flex;overflow:hidden}.segBtn{border:0;border-right:1px solid var(--line);background:var(--panel);min-width:42px;min-height:38px;color:var(--ink);cursor:pointer;padding:0 12px;font-weight:700}.segBtn:last-child{border-right:0}.segBtn:hover{background:var(--bg-soft,#f6f3f0)}.segBtn.active{background:var(--accent);color:#fff}.switch{cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:9px;padding:0;display:inline-flex}.switch:disabled{cursor:not-allowed;opacity:.6}.switchTrack{background:var(--line);border-radius:999px;flex:none;width:42px;height:24px;transition:background .14s;position:relative}.switchThumb{background:var(--panel);border-radius:50%;width:18px;height:18px;transition:transform .14s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000040}.switch.on .switchTrack{background:var(--success,#2a6e45)}.switch.on .switchThumb{transform:translate(18px)}.switchLabel{color:var(--ink);font-size:.9rem;font-weight:700}.planToggleField{gap:7px}.archiveChip{border:1px solid var(--line);background:var(--panel);min-height:30px;color:var(--muted);cursor:pointer;border-radius:999px;justify-self:start;padding:0 12px;font-size:.82rem;font-weight:700}.archiveChip.active{border-color:var(--accent);color:var(--brand-dark,var(--ink));background:color-mix(in srgb, var(--accent) 12%, var(--panel))}.planRangeInputs{align-items:center;gap:8px;display:flex}.planRangeInputs input{min-height:38px}.planRangeSep{color:var(--muted);font-size:.85rem}.rangePicker{width:max-content;position:relative}.rangeTrigger{border:1px solid var(--line);background:var(--panel);min-height:38px;color:var(--ink);cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:0 14px;font-weight:600;display:inline-flex}.rangeTrigger:hover{border-color:var(--accent)}.rangeTrigger.iconOnly{justify-content:center;width:38px;padding:0}.rangeCalIcon{font-size:1.05rem;line-height:1}.rangePop{z-index:40;border:1px solid var(--line);background:var(--panel);border-radius:12px;width:280px;padding:12px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 14px 40px #0f1e2829}.rangePopHead{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.rangePopHead strong{text-transform:capitalize}.rangeNav{border:1px solid var(--line);background:var(--panel);cursor:pointer;width:30px;height:30px;min-height:30px;color:var(--ink);border-radius:8px;padding:0;font-size:1.1rem;line-height:1}.rangeNav:hover{border-color:var(--accent);color:var(--accent)}.rangeGrid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.rangeWd{text-align:center;color:var(--muted);padding:4px 0;font-size:.72rem;font-weight:700}.rangeDay{aspect-ratio:1;cursor:pointer;color:var(--ink);background:0 0;border:0;border-radius:8px;font-size:.85rem}.rangeDay:hover{background:var(--bg-soft,#f6f3f0)}.rangeDay.inRange{background:color-mix(in srgb, var(--accent) 16%, transparent);border-radius:0}.rangeDay.sel{background:var(--accent);color:#fff;font-weight:700}.rangePopFoot{border-top:1px solid var(--line);justify-content:space-between;margin-top:8px;padding-top:8px;display:flex}.matrixGoalBar{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.matrixGoalField{gap:6px;display:grid}.matrixGoalField span{color:var(--muted);font-size:.82rem;font-weight:700}.matrixGoalField input{min-height:38px}.columnStepBtn{border:1px solid var(--line);background:var(--panel);width:38px;height:38px;min-height:38px;color:var(--ink);cursor:pointer;border-radius:9px;padding:0;font-size:1.25rem;font-weight:700;line-height:1}.columnStepBtn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.columnStepBtn:disabled{opacity:.4;cursor:not-allowed}.fitMatrixGrid,.fitMatrixPreview{min-width:var(--matrix-min-width,920px);grid-template-columns:var(--matrix-grid-columns,150px repeat(4, minmax(150px, 1fr)));background:0 0;border:0;align-items:stretch;gap:12px;display:grid}.matrixSymbolCell{background:0 0;border:0;justify-content:center;align-items:center;min-height:122px;padding:4px;display:flex}.matrixSymbolCell img{aspect-ratio:1;object-fit:contain;align-self:center;width:100%;max-width:116px;height:auto}.matrixTaskCell{border:2px solid var(--accent,#c4cfd6);background:var(--panel);border-radius:14px;grid-template-rows:auto auto minmax(0,1fr) auto;gap:7px;min-height:122px;padding:12px;display:grid;position:relative}.teacherMatrixGrid{min-width:840px}.teacherMatrixCard{text-align:left;cursor:pointer;width:100%;min-height:122px;transition:transform .12s,box-shadow .12s}.teacherMatrixCard:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0f1e281a}.teacherCellTopline{justify-content:space-between;align-items:center;gap:8px;display:flex}.teacherCellHint{color:var(--muted);font-size:.74rem;font-weight:700}.teacherCellCode{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 88%, transparent);width:max-content;min-height:28px;color:var(--brand-dark);border-radius:999px;align-items:center;gap:7px;padding:0 8px;font-size:.74rem;font-weight:800;display:inline-flex}.teacherCellLocator,.studentGoalModalLocator{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.matrixCellMarker{align-items:center;gap:6px;display:inline-flex}.matrixCellMarkerIcon{object-fit:contain;width:16px;height:16px}.matrixCellMarkerNumber{line-height:1}.teacherCellFocusPanel{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), var(--panel-soft));border-radius:8px;gap:14px;padding:16px;display:grid;box-shadow:0 12px 36px #14303f14}.teacherCellModalBackdrop{z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#121e2457;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.teacherCellFocusModal{width:min(780px,100%);max-height:min(88vh,980px);animation:.18s teacherModalIn;overflow:auto}@keyframes teacherModalIn{0%{opacity:0;filter:blur(6px);transform:translateY(18px)scale(.97)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.teacherCellFocusHead{justify-content:space-between;align-items:start;gap:12px;display:flex}.teacherCellFocusHead h3{margin:6px 0 0}.teacherCellTopicField{gap:6px;display:grid}.teacherCellTopicLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:800}.teacherCellTopicField input{border:1px solid var(--line);background:var(--panel);min-height:44px;color:var(--ink);border-radius:8px;padding:0 12px;font-size:1.1rem;font-weight:800}.teacherFormatToolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.teacherFormatToolbar select{width:auto;min-width:120px}.teacherFormatToolbar option{font-size:1rem}.teacherRichTextEditor{border:1px solid var(--line);background:var(--panel);text-align:justify;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;border-radius:8px;min-height:260px;padding:14px;line-height:1.55}.teacherRichTextEditor:focus{border-color:var(--brand);outline:2px solid #286f922e}.teacherRichTextEditor .fitCellRichText{text-align:justify;-webkit-hyphens:auto;hyphens:auto}.teacherMaterialPanel{border-top:1px solid var(--line);gap:12px;padding-top:12px;display:grid}.teacherMaterialActions{align-items:center;gap:10px;display:flex}.teacherSquareAction{border:1px solid #b8d7ef;border-radius:10px;place-items:center;width:92px;min-width:92px;min-height:44px;font-weight:800;text-decoration:none;display:inline-grid}.teacherSquareActionPrimary{background:var(--blue-soft);color:var(--info-fg)}.teacherSquareActionPreview{background:var(--panel-soft);color:var(--info-fg)}.teacherSquareActionDisabled{background:var(--panel-soft);color:var(--muted);border-color:var(--line);cursor:default}.teacherPreviewBackdrop{z-index:70}.teacherPreviewModal{border:1px solid var(--line);background:var(--panel);border-radius:10px;gap:14px;width:min(960px,100%);max-height:min(90vh,1000px);padding:18px;display:grid;overflow:auto;box-shadow:0 18px 44px #0f223029}.teacherPreviewFrameWrap{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;overflow:hidden}.teacherPreviewFrame{background:var(--panel);border:0;width:100%;min-height:70vh}.teacherPreviewImage{background:var(--panel);width:100%;height:auto;display:block}.teacherDocxPreview{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:20px;line-height:1.6}.teacherDocxPreview :first-child{margin-top:0}.teacherPreviewFallback{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;justify-items:start;gap:12px;padding:16px;display:grid}.teacherEditorFooter{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.matrixTaskCell textarea{background:0 0;border:0;border-radius:0;min-height:96px;padding:4px;line-height:1.35}.matrixTaskCell p{white-space:pre-wrap;color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.86rem;line-height:1.34;display:-webkit-box;overflow:hidden}.matrixTaskCell textarea~p,.matrixTaskCell textarea{-webkit-line-clamp:initial}.matrixBlue{--accent:#3aa6e0;--deep:#155f88;--tint:#f1f8fe}.matrixGold{--accent:#dca81c;--deep:#876710;--tint:#fffbef}.matrixOrange{--accent:#ef8a2e;--deep:#a4540f;--tint:#fff6ee}.matrixPurple{--accent:#7c5cf0;--deep:#553bbd;--tint:#f6f3ff}.matrixGreen{--accent:#37a55a;--deep:#216c39;--tint:#f1faf3}.matrixMedia{--accent:#7a5cc4;--deep:#3b1f7a;--tint:#f4f0ff}.matrixTaskCell.matrixMedia{position:relative}.matrixTaskCell.matrixMedia:after{content:"💻";opacity:.55;pointer-events:none;font-size:1.1rem;position:absolute;bottom:8px;right:10px}.matrixTopicCell.matrixMedia span:before,.matrixTopicInput.matrixMedia>span:before{content:"💻 ";font-size:.9em}.matrixTopicCell,.matrixTopicInput{border:1px solid color-mix(in srgb, var(--accent,#c4cfd6) 26%, transparent);background:var(--tint,var(--panel));min-height:48px;color:var(--deep,var(--ink));border-radius:12px;display:grid}.matrixTopicLegend{color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.06em;place-items:center;padding:10px;font-size:.78rem;font-weight:800;display:grid}.matrixTopicCell{color:var(--deep,var(--ink));place-items:center;padding:11px 10px;font-size:.9rem;font-weight:800}.matrixTopicInput{align-items:center;gap:6px;padding:10px 12px;display:flex}.matrixTopicInput input{flex:1;min-width:0}.columnRemoveButton{border-color:var(--line);background:var(--panel);width:28px;min-height:28px;color:var(--muted);cursor:pointer;border-radius:6px;flex-shrink:0;padding:0;font-size:1rem;line-height:1}.columnRemoveButton:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.matrixTopicInput input{border:1px solid var(--line);background:var(--panel);text-align:left;border-radius:8px;width:100%;min-height:42px;padding:0 12px;font-size:.96rem;font-weight:700}.srOnly{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cellQrButton{border-color:var(--line);background:var(--panel-soft);min-height:28px;color:var(--brand-dark);justify-self:end;padding:4px 8px;font-size:.78rem}.cellQr{border:1px solid var(--line);background:var(--panel);border-radius:6px;justify-self:end;width:82px;padding:4px}.plainTitleButton{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;justify-items:start;padding:0;display:grid}.planHead{color:var(--brand-dark);justify-content:space-between;gap:12px;margin-bottom:14px;font-weight:800;display:flex}.currentPlanCard{border-color:var(--brand);border-left:4px solid var(--igs-navy);box-shadow:0 6px 24px #1a6a9421}.studentPlanPicker{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.filterbar{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.filterSelectField{gap:6px;display:grid}.filterSelectField select{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-height:44px;padding:0 12px}.studentPlanCard{align-content:start}.studentPlanSelect{text-align:left;border:1px solid var(--line);background:var(--panel);border-radius:7px;gap:6px;width:100%;padding:12px;display:grid}.studentPlanSelect.active{border-color:var(--brand);background:var(--panel-soft);box-shadow:inset 0 0 0 2px #286f921f}.studentPlanWorkspace{gap:12px;display:grid}.studentPlanHead{align-items:flex-start}.studentPlanTitle{margin:0;font-size:1.5rem;line-height:1.15}.studentHeaderTools{justify-items:end;gap:10px;display:grid}.studentPlanProgress{border-top:1px solid var(--line,#cddae2);gap:9px;margin-top:6px;padding-top:14px;display:grid}.studentPlanProgress .planProgressLegend{margin:0}.planProgressRow{align-items:center;gap:16px;margin:12px 0 9px;display:flex}.planProgressBar{background:var(--bg-soft);border-radius:999px;flex:1;min-width:0;height:12px;position:relative;overflow:hidden}.planProgressBarFill{position:absolute;top:0;bottom:0}.planProgressBarFillDone{background:#2a6e45;border-radius:999px;left:0}.planProgressBarFillStarted{background:#b56b3a}.planProgressPct{color:var(--ink);flex:none;font-size:1.05rem;font-weight:800}.planProgressLegend{color:var(--muted);flex-wrap:wrap;gap:16px;margin:0 0 8px;font-size:.9rem;display:flex}.planProgressLegend span{align-items:center;gap:7px;display:inline-flex}.planLegendDot{border-radius:999px;width:10px;height:10px;display:inline-block}.planLegendDotDone{background:#2a6e45}.planLegendDotStarted{background:#b56b3a}.planProgressLabel{color:var(--muted);margin:0 0 6px;font-size:.9rem}.studentPhoneOverview,.studentPhoneList{gap:12px;display:grid}.studentPhoneGroup{gap:10px;display:grid}.studentPhoneGroupCards{gap:12px;display:grid}.studentPhoneGroupHead{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-left-width:4px;border-radius:8px;padding:10px 12px}.studentPhoneGroupHead.matrixBlue{border-left-color:#2eb7ff}.studentPhoneGroupHead.matrixGold{border-left-color:#f6bf26}.studentPhoneGroupHead.matrixOrange{border-left-color:#f28c28}.studentPhoneGroupHead.matrixPurple{border-left-color:#7c4dff}.studentPhoneGroupHead.matrixGreen{border-left-color:#49a35a}.studentPhoneGroupHead.matrixMedia{border-left-color:#5c35a8}.studentPhoneCard{text-align:left;border:1px solid var(--line);background:var(--panel);border-left-width:4px;border-radius:8px;grid-template-rows:auto auto minmax(0,1fr) auto;gap:10px;padding:14px;display:grid}.studentPhoneCard.matrixBlue{background:var(--panel-soft);border-left-color:#2eb7ff}.studentPhoneCard.matrixGold{background:#fffdf5;border-left-color:#f6bf26}.studentPhoneCard.matrixOrange{background:#fffaf6;border-left-color:#f28c28}.studentPhoneCard.matrixPurple{background:#faf8ff;border-left-color:#7c4dff}.studentPhoneCard.matrixGreen{background:#f8fcf8;border-left-color:#49a35a}.studentPhoneCard.matrixMedia{background:#f4f0ff;border-style:solid;border-left-color:#5c35a8}.studentPhoneCard.active{border-color:var(--brand);background:var(--panel-soft);box-shadow:inset 0 0 0 2px #286f921f}.studentPhoneCardHead{flex-wrap:wrap;gap:8px;display:flex}.planMaterialStrip{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.studentGoalTag{color:var(--muted);font-size:.8rem;font-weight:700}.studentTaskPreview{color:var(--muted);font-size:.86rem;line-height:1.34;display:block}.fitmStatus{color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.fitmStatus i{background:#c4cfd6;border-radius:999px;flex:none;width:9px;height:9px;display:inline-block}.fitmStatus-angefangen i{background:#b56b3a}.fitmStatus-erledigt i{background:#2a6e45}.fitmTaskTitle{color:var(--deep,#20303a);overflow-wrap:anywhere;font-size:.95rem;font-weight:800;line-height:1.24;display:block}.studentPlanMatrix{min-width:920px}.studentMatrixCell{text-align:left;cursor:pointer;width:100%;transition:box-shadow .14s,transform .14s}.studentMatrixCell:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0f1e281a}.studentMatrixCell.studentProgress-erledigt,.studentPhoneCard.studentProgress-erledigt{border-color:var(--success);background:color-mix(in srgb, #2a6e45 7%, var(--panel))}.studentMatrixCell.studentProgress-erledigt:after{content:"✓";color:#fff;background:#2a6e45;border-radius:999px;place-items:center;width:22px;height:22px;font-size:13px;font-weight:800;line-height:1;display:grid;position:absolute;top:8px;right:10px}.studentMatrixCell.studentProgress-angefangen,.studentPhoneCard.studentProgress-angefangen{background:color-mix(in srgb, #b56b3a 6%, var(--panel));border-color:#b56b3a}.activeStudentCell,.studentMatrixCell.activeStudentCell:hover{box-shadow:inset 0 0 0 2px var(--accent,#3aa6e0), 0 8px 20px #0f1e281f}.studentPlanMatrix .matrixTopicCell{place-items:center stretch;min-height:48px;padding:11px 12px}.studentPlanMatrix .matrixTopicCell span{color:var(--deep,var(--ink));text-align:center;white-space:normal;overflow-wrap:anywhere;font-size:.9rem;font-weight:800;line-height:1.25;display:block}.studentGoalDetail{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;gap:16px;padding:18px;display:grid}.studentAccentBlue{--modal-accent:#3aa6e0;--modal-deep:#155f88;--modal-tint:#f1f8fe}.studentAccentGold{--modal-accent:#dca81c;--modal-deep:#876710;--modal-tint:#fffbef}.studentAccentOrange{--modal-accent:#ef8a2e;--modal-deep:#a4540f;--modal-tint:#fff6ee}.studentAccentPurple{--modal-accent:#7c5cf0;--modal-deep:#553bbd;--modal-tint:#f6f3ff}.studentAccentGreen{--modal-accent:#37a55a;--modal-deep:#216c39;--modal-tint:#f1faf3}.studentAccentMedia{--modal-accent:#7a5cc4;--modal-deep:#3b1f7a;--modal-tint:#f4f0ff}.studentGoalDetailCompact{gap:18px}.studentGoalDetailHead{justify-content:space-between;align-items:start;gap:12px;display:flex}.detailMetaRow{flex-wrap:wrap;gap:8px;display:flex}.detailMetaChip{border:1px solid var(--line);background:var(--panel);min-height:38px;color:var(--brand-dark);border-radius:10px;align-items:center;padding:0 12px;font-weight:800;display:inline-flex}.studentGoalText{color:var(--ink,#1f2d36);text-align:left;margin:0;font-size:1.3rem;font-weight:500;line-height:1.7}.studentDetailBottom .materialActions{gap:8px}.studentDetailBottom .materialActions a,.studentDetailBottom .materialActions button{min-height:32px;padding:5px 12px;font-size:.8rem;font-weight:600}.studentGoalModalBackdrop{z-index:65;-webkit-backdrop-filter:blur(6px);background:#101c265c;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.studentGoalModal{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-top:4px solid var(--modal-accent,var(--accent));background:var(--panel);border-radius:16px;gap:18px;width:min(980px,100%);max-height:min(88vh,1000px);padding:22px;animation:.18s studentGoalModalIn;display:grid;overflow:auto;box-shadow:0 18px 44px #0f22302e}.studentGoalModalHead h3,.studentGoalModal .studentGoalBlock h4{color:var(--modal-deep,var(--ink))}@keyframes studentGoalModalIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.studentGoalModalHead{justify-content:space-between;align-items:start;gap:12px;display:flex}.studentGoalModalHead h3{margin:6px 0 0}.studentModalClose{border:1px solid var(--line);background:var(--panel);width:42px;min-width:42px;min-height:42px;color:var(--brand-dark);border-radius:10px;place-items:center;padding:0;font-size:1.5rem;font-weight:700;line-height:1;display:inline-grid}.studentModalGrid{align-items:start}.studentGoalBlock{gap:6px;display:grid}.studentGoalBlock h4,.studentGoalActions h4{margin:0}.studentGoalLayout{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:start;gap:16px;display:grid}.studentCompactGrid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start;gap:16px;display:grid}.studentCompactColumn{gap:16px;display:grid}.studentGoalMaterials,.studentGoalActions{gap:12px;display:grid}.studentSectionCard{border:1px solid var(--line);background:var(--modal-tint,var(--panel-soft));border-radius:14px;padding:16px}.studentDetailHeadMain{align-items:center;gap:15px;min-width:0;display:flex}.studentDetailSymbol{object-fit:contain;flex:none;width:60px;height:60px}.studentDetailTitleWrap{gap:7px;min-width:0;display:grid}.studentDetailTitleWrap h3{margin:0;font-size:1.45rem;line-height:1.2}.studentDetailStatusRow .statusField{margin-top:0}.studentDetailStatusRow .statusField>span{display:none}.studentDetailStatusRow .statusButtons{flex-wrap:wrap;grid-template-columns:none;gap:8px;display:flex}.studentDetailStatusRow .statusButton{flex:none;padding:8px 18px}.studentDetailBody{gap:16px;display:grid}.studentDetailTask{border-left:3px solid var(--modal-accent,var(--accent))}.studentDetailBottom{grid-template-columns:minmax(0,1.4fr) minmax(266px,1fr);align-items:stretch;gap:16px;display:grid}.compactEmptyMaterial{margin-top:0}.materialCardBody{gap:10px;display:grid}.materialActions{flex-wrap:wrap;gap:8px;display:flex}.materialPrimaryLink{background:#2c769d;border-radius:10px;align-items:center;min-height:38px;padding:0 14px;font-weight:800;text-decoration:none;display:inline-flex;color:#fff!important}.materialExternalLink{background:#e7902f}.materialGhostButton{background:var(--panel-soft);min-height:38px;color:var(--brand-dark);border:1px solid #cbdde7;padding:0 12px}.textButtonLink{color:var(--warn-fg);font-weight:800}.backLinkButton{border-color:var(--line);background:var(--panel-soft);min-height:34px;color:var(--brand-dark);justify-self:start;padding:6px 10px}.matrixMeta,.cellMeta{flex-wrap:wrap;gap:6px;display:flex}.matrixMeta span,.cellMeta span{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:999px;padding:4px 8px;font-size:.76rem;font-weight:700}.cellMeta{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px;margin-top:auto;display:grid}.cellMeta span{background:color-mix(in srgb, var(--panel) 78%, transparent);overflow-wrap:anywhere;border-radius:6px;justify-content:center;align-items:center;width:100%;min-width:0;min-height:32px;padding:4px 10px;font-size:.72rem;line-height:1.2;display:inline-flex}.cellMetaStatus,.cellMetaMaterial{text-align:center;justify-self:stretch}.studentMatrixCell .cellMetaStatus.status-offen,.studentPhoneCard .cellMetaStatus.status-offen{background:var(--warn-soft);color:var(--warn-fg);border-color:#f0d768}.studentMatrixCell .cellMetaStatus.status-angefangen,.studentPhoneCard .cellMetaStatus.status-angefangen{background:var(--orange-soft);color:var(--orange-fg);border-color:#f3b269}.studentMatrixCell .cellMetaStatus.status-erledigt,.studentPhoneCard .cellMetaStatus.status-erledigt{background:var(--success-soft);color:var(--success-fg);border-color:#81c98d}.cellMetaMaterialIcons{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:auto;display:flex}.cellMetaMaterialIcon{background:color-mix(in srgb, var(--panel) 82%, transparent);width:30px;height:30px;color:var(--brand-dark);border:1px solid #88a0b06b;border-radius:999px;justify-content:center;align-items:center;font-size:.95rem;line-height:1;display:inline-flex}.materialType-link,.materialType-pdf{color:var(--orange-fg)}.materialType-document{color:var(--info-fg)}.materialType-image{color:var(--success-fg)}.cellMaterialList,.cellMaterialStack{gap:8px;display:grid}.cellQuickUpload{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 70%, transparent);border-radius:8px;gap:8px;margin-top:8px;padding:10px;display:grid}.compactMaterialEntry{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}.compactMaterialEntry small{color:var(--muted);font-size:.78rem}.compactMaterialEntry .primary{justify-self:end}.emptyCellMaterial{color:var(--muted);font-size:.84rem}.cellMaterialCard{border:1px solid var(--line);background:var(--panel-soft);border-radius:7px;gap:8px;padding:8px;display:grid}.cellMaterialCard strong{margin-bottom:2px;font-size:.9rem;display:block}.cellMaterialCard small{color:var(--muted)}.planMaterialList{gap:8px;display:grid}.materialLink{border:1px solid var(--line);background:var(--panel-soft);color:var(--ink);border-radius:7px;gap:8px;margin-top:10px;padding:12px;text-decoration:none;display:grid}.materialLink:hover{border-color:var(--brand)}.materialLink a{color:var(--ink);gap:4px;text-decoration:none;display:grid}.materialLink small,.hint,.row span{color:var(--muted)}.qrButton{background:var(--success-soft);min-height:32px;color:var(--brand-dark);border-color:#cbded3;justify-self:start;margin-top:4px;padding:6px 10px}.qrBox,.qrPreview{background:var(--panel-soft);border:1px dashed #cbded3;border-radius:8px;place-items:center;margin-top:8px;padding:10px;display:grid}.qrBox img{width:min(180px,100%)}.qrPreview img{width:min(240px,100%)}.qrGenerator{gap:10px;display:grid}.fieldHelpWrap{align-items:center;gap:7px;width:max-content;display:inline-flex;position:relative}.helpIcon{background:var(--success-soft);width:20px;height:20px;color:var(--brand-dark);cursor:help;border:1px solid #bdd4c6;border-radius:999px;place-items:center;font-size:.78rem;font-weight:800;display:inline-grid}.helpBubble{z-index:20;border:1px solid var(--line);background:var(--panel);width:min(320px,100vw - 48px);box-shadow:var(--shadow);color:var(--ink);border-radius:8px;padding:12px;font-size:.84rem;font-weight:500;line-height:1.45;display:none;position:absolute;top:50%;left:100%;transform:translate(10px,-50%)}.helpIcon:hover+.helpBubble,.helpIcon:focus+.helpBubble{display:block}.form,.list{gap:14px;margin-top:16px;display:grid}.loginShell,.landingShell{background:linear-gradient(150deg, #052b550f 0%, #1a6a940d 50%, #dcefeb99 100%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid;position:relative}.entryShell{background:radial-gradient(circle at 50% 12%, #fff 0%, var(--panel-soft) 55%, #f1f3f6 100%);place-items:center;min-height:100vh;padding:24px;display:grid;position:relative}.entryLogoButton{cursor:pointer;background:0 0;border:0;width:min(680px,82vw);min-height:auto;padding:0}.entryLogoButton img{mix-blend-mode:multiply;filter:saturate(1.02)contrast(1.01);width:100%;height:auto;display:block}.loginPanel,.landingHero{border:1px solid var(--line);background:color-mix(in srgb, var(--panel) 94%, transparent);box-shadow:var(--shadow);border-radius:8px;gap:28px;padding:clamp(22px,5vw,36px);display:grid}.loginPanel{width:min(520px,100%)}.landingHero{width:min(980px,100%)}.landingBrand{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(18px,4vw,32px);display:grid}.landingBrand img{mix-blend-mode:multiply;width:min(240px,44vw);height:auto}.landingBrand h1{color:var(--igs-navy);font-size:clamp(2.75rem,7vw,5rem);line-height:.96}.landingDemo{color:var(--brand);font-size:.8rem}.loginBrand{text-align:center;justify-items:center;gap:18px;display:grid}.loginBrand img{width:min(150px,42vw);height:auto}.loginBrand h1{color:var(--igs-navy);font-size:clamp(2.35rem,8vw,4.2rem);line-height:.98}.loginWelcome{color:var(--muted);margin:8px 0 0;font-size:clamp(1.05rem,3vw,1.35rem);font-weight:700}.loginChoices{grid-template-columns:repeat(2,minmax(160px,220px));justify-content:center;gap:16px;display:grid}.loginChoice{aspect-ratio:1;border-radius:var(--radius);width:100%;color:var(--igs-navy);text-align:center;border:2px solid #0000;place-items:center;padding:14px;font-size:clamp(1rem,2vw,1.15rem);font-weight:800;transition:border-color .15s,box-shadow .15s;display:grid}.studentChoice{background:var(--blue-soft)}.teacherChoice{background:var(--igs-navy-soft)}.loginChoice:hover{border-color:var(--brand);box-shadow:0 6px 20px #1a6a9426}.legalLinks{grid-template-columns:repeat(3,minmax(120px,170px));justify-content:center;gap:16px;display:grid}.legalLinks button,.imprintLink{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:8px;justify-self:stretch;min-height:44px;padding:8px 10px;font-weight:700;text-decoration:none}.legalText{gap:12px;line-height:1.55;display:grid}.legalText p{margin:0}.modalBackdrop{z-index:50;background:#18231f5c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modalPanel{border:1px solid var(--line);background:var(--panel);width:min(860px,100%);max-height:min(86vh,900px);box-shadow:var(--shadow);border-radius:8px;padding:20px;overflow:auto}.modalHeader{justify-content:space-between;align-items:start;gap:16px;margin-bottom:14px;display:flex}.imprintGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.imprintGrid section{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;padding:14px}.imprintGrid h3{margin:0 0 8px;font-size:.98rem}.imprintGrid p{color:var(--muted);margin:0;line-height:1.5}.emptyImprint{border:1px dashed var(--line);background:var(--panel-soft);min-height:180px;color:var(--muted);border-radius:8px;place-items:center;display:grid}.emptyImprint p{margin:0}.studentScope{background:var(--panel-soft);color:var(--muted);border:1px solid #c9dccf;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.studentScope strong{color:var(--brand-dark);white-space:nowrap}.lockedQuarter{border:1px solid var(--brand-dark);background:var(--accent-soft);min-width:48px;min-height:38px;color:var(--brand-dark);border-radius:7px;place-items:center;font-weight:800;display:inline-grid}.submissionForm{border-top:1px solid var(--line);gap:8px;margin-top:10px;padding-top:10px;display:grid}.statusField,.feedbackForm,.feedbackGrid{gap:8px;display:grid}.statusField{margin-top:8px}.statusButtons{grid-template-columns:auto repeat(2,minmax(0,1fr));gap:8px;display:grid}.statusButton{border-width:2px;min-height:42px;padding:8px 10px;font-size:.84rem;font-weight:800;line-height:1.2}.statusButton.active{color:var(--ink);box-shadow:inset 0 0 0 2px #15313e14}.statusResetButton{background:var(--panel-soft);min-width:42px;min-height:42px;color:var(--brand-dark);border:1px solid #cbdde7;border-radius:10px;place-items:center;padding:0;font-size:1rem;font-weight:800;display:inline-grid}.statusResetButton:disabled{opacity:.52}.status-offen{background:var(--warn-soft);border-color:#f0d768}.status-angefangen{background:var(--orange-soft);border-color:#f3b269}.status-erledigt{background:var(--success-soft);border-color:#81c98d}.uploadToggleButton{justify-self:start}.uploadPanel{gap:10px;padding-top:6px;display:grid}.statusField span{color:var(--muted);font-size:.8rem;font-weight:700}.studentQuarterGoal{background:0 0;border:0;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0 0 14px 162px;padding:0;display:flex}.studentQuarterGoal strong{color:var(--igs-navy);flex:none;font-size:1.15rem;font-weight:600}.studentQuarterGoal span{color:var(--igs-navy);font-size:1.15rem;font-style:italic;font-weight:500;line-height:1.4}.studentHeaderTools{align-self:flex-start}.studentFeedbackTrigger{border:1px solid var(--brand-dark,#0e4d70);background:var(--brand-dark,#0e4d70);color:#fff;cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:.95rem;font-weight:800;transition:filter .12s,box-shadow .12s;display:inline-flex}.studentFeedbackTrigger:hover{filter:brightness(1.08)}.studentFeedbackTrigger.hasFeedback{background:var(--success-soft);border-color:var(--success-border);color:var(--success)}.studentFeedbackTrigger.isOpen{box-shadow:0 0 0 3px #0e4d702e}.studentFeedbackPanel{border:1px solid var(--line,#cddae2);background:var(--panel-soft);border-radius:10px;margin-bottom:16px;padding:16px 18px}.feedbackForm{border:1px solid var(--line);background:var(--panel-soft);border-radius:10px;margin-top:18px;padding:18px}.studentFeedbackForm{background:var(--panel-soft);gap:14px}.studentFeedbackForm label{gap:8px;display:grid}.studentFeedbackForm span{color:var(--brand-dark);font-size:.92rem;font-weight:800}.studentFeedbackForm textarea{border:1px solid var(--line);background:var(--panel);resize:vertical;border-radius:8px;min-height:132px;padding:12px 14px;font-size:1rem;line-height:1.5}.feedbackActionRow{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.feedbackDeleteButton{color:var(--danger);background:var(--danger-soft);border-color:#9a2f2f40}.feedbackDeleteButton:hover:not(:disabled){background:var(--danger-soft);border-color:#9a2f2f66}.feedbackToggleSection{gap:0;margin-top:18px;padding:0;display:grid;overflow:hidden}.feedbackToggleButton{background:var(--panel-soft);width:100%;min-height:52px;color:var(--ink);text-align:left;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-weight:800;display:flex}.feedbackToggleButton.active{background:var(--info-soft);color:var(--brand-dark)}.feedbackToggleMeta{color:var(--muted);font-size:.84rem;font-weight:700}.feedbackToggleBody{background:var(--panel-soft);padding:0 18px 18px}.feedbackToggleBody .feedbackForm{margin-top:0}.teacherInsightGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.teacherInsightCard{border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;padding:14px}.compactList{gap:10px}.feedbackRow,.progressRow{align-items:start}.feedbackRow small{color:var(--muted);margin-top:4px;line-height:1.45;display:block}.readStateBadge{border-radius:999px;align-items:center;min-height:30px;padding:4px 10px;font-size:.78rem;font-weight:800;display:inline-grid}.readStateBadge.ungelesen{background:var(--warn-soft);color:var(--warn-fg)}.readStateBadge.gelesen{background:var(--success-soft);color:var(--success-fg)}.feedbackAggList{flex-direction:column;gap:16px;margin-top:14px;display:flex}.feedbackAggHead{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:7px;display:flex}.feedbackAggLabel{color:var(--ink);font-size:.95rem;font-weight:800}.feedbackAggTop{color:var(--muted);font-size:.88rem}.feedbackAggTop strong{color:var(--ink);font-weight:700}.feedbackAggBar{border-radius:6px;gap:2px;height:22px;display:flex;overflow:hidden}.feedbackAggSeg{flex-basis:0;justify-content:center;align-items:center;min-width:3px;font-size:11px;font-weight:700;display:flex}.feedbackCardList{gap:12px;margin-top:12px;display:grid}.feedbackCard{border:1px solid var(--line);background:var(--panel);border-radius:14px;gap:10px;padding:16px 18px;display:grid}.feedbackCardUnread{box-shadow:inset 3px 0 0 var(--accent)}.feedbackCardHead{justify-content:space-between;align-items:center;gap:12px;display:flex}.feedbackCardHead strong{color:var(--ink)}.feedbackComment{color:var(--ink);text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;margin:0;line-height:1.55}.feedbackRatingsGrid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;display:grid}.feedbackRatingCell{border:1px solid var(--line);background:var(--bg-soft,#f6f3f0);border-radius:10px;align-content:start;gap:2px;min-height:52px;padding:8px 12px;display:grid}.feedbackRatingLabel{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:.72rem;font-weight:700}.feedbackRatingValue{color:var(--ink);font-size:.9rem;font-weight:700}.feedbackActions{flex-wrap:wrap;gap:10px;margin-top:2px;display:flex}.feedbackActionBtn{border:1px solid var(--line);background:var(--panel);min-width:200px;height:40px;color:var(--ink);cursor:pointer;border-radius:10px;padding:0 16px;font-size:.88rem;font-weight:700;transition:border-color .12s,background .12s,color .12s}.feedbackActionBtn:hover{border-color:var(--accent)}.feedbackActionBtn.danger{color:var(--danger)}.feedbackActionBtn.danger:hover{border-color:var(--danger);background:var(--danger-soft)}.feedbackGrid{grid-template-columns:1fr}@media (width<=960px){.teacherInsightGrid{grid-template-columns:1fr}}.submissionForm strong{color:var(--brand-dark);font-size:.9rem}.savePlanButton.saved,.feedbackSaveButton.saved{background:var(--success-soft);color:var(--success-fg);border-color:#7fb98a}.pageFooter{justify-content:center;margin-top:42px;display:flex}.pageFooter button,.imprintLink{opacity:.58;color:var(--muted);background:0 0;border:0;font-size:.82rem;text-decoration:none}.pageFooter button:hover,.imprintLink:hover{opacity:1;text-decoration:underline}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.row{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;transition:border-color .1s;display:grid}.row:hover{border-color:var(--brand)}.row div:first-child{gap:4px;min-width:0;display:grid}.studentProfileFilters{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.studentProfileRow{align-items:start}.activeStudentProfileRow{border-color:var(--brand);box-shadow:0 0 0 1px #2e73a11f}.studentProfileLink{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.studentProfileLink strong{color:var(--igs-navy)}.studentProfileStats{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.studentProfileDetail{border-top:1px solid var(--line);gap:16px;margin-top:20px;padding-top:18px;display:grid}.studentProfileMeta{flex-wrap:wrap;gap:8px;display:flex}.studentProfileDetailGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.studentProfileSection{gap:12px;display:grid}.adminStatsGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:16px;display:grid}.adminStatCard{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);align-content:start;gap:4px;min-height:128px;padding:16px 18px;display:grid}.adminStatCard strong{color:var(--igs-navy);font-size:1.9rem}.adminStatCard span{font-weight:700;line-height:1.3}.adminStatCard small{color:var(--muted);line-height:1.35}.adminSectionHead{margin-bottom:18px}.adminSectionHead.compact{margin-bottom:12px}.adminSectionTabs{margin-bottom:18px}.adminSectionBody{gap:16px;width:100%;display:grid}.adminContentGrid{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.adminStatsDetailGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.adminWorkspace .panel{justify-self:stretch;width:100%;max-width:none;display:block}.adminSidebarForm{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);align-self:start;padding:18px;position:sticky;top:16px}.adminWideList{min-width:0}.adminWideList .row{align-items:start}.adminWorkspace .adminSectionTabs{justify-content:space-between;width:100%}.adminWorkspace .adminSectionTabs button{flex:1 1 0;justify-content:center}.adminStatsSection{align-content:start;gap:12px;display:grid}.row strong,.row span{overflow-wrap:anywhere}@media (width<=1024px){.shell{padding-top:0}.topbar{z-index:40;background:color-mix(in srgb, var(--bg) 96%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:2px solid var(--igs-navy);margin:0 calc(-50vw + min(1180px,100% - 32px)/2);padding:14px max(16px,50vw + min(1180px,100% - 32px)/-2);position:sticky;top:0}.shell>:not(.topbar):first-of-type{margin-top:20px}.topbar{grid-template-columns:1fr auto;gap:12px}h1{font-size:clamp(1.5rem,4vw,2.4rem)}.filterbar{grid-template-columns:repeat(2,1fr);gap:12px;padding:14px}.studentPlanPicker{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.teacherActionGrid{grid-template-columns:repeat(2,minmax(140px,1fr))}.toolTile{min-height:140px;padding:16px}.studentProfileFilters{grid-template-columns:1fr}.studentProfileStats{justify-content:flex-start}.studentProfileDetailGrid,.adminStatsGrid,.adminStatsDetailGrid,.adminContentGrid{grid-template-columns:1fr}.adminSidebarForm{position:static}.tabs{justify-content:stretch}.tabs button{flex:1}.cellMeta{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:6px}.cellMetaStatus,.cellMetaMaterial{text-align:center;justify-self:stretch;width:100%;min-height:30px;padding:4px 8px;font-size:.68rem}}@media (width<=900px){.topbar,.workspace.split,.matrix,.imprintGrid,.landingBrand,.studentGoalLayout,.studentCompactGrid,.focusPlanCard{grid-template-columns:1fr}.focusActions{flex-wrap:wrap}.studentGoalDetailHead{display:grid}.teacherMatrixShell,.teacherPlanMetaBar{grid-template-columns:1fr}.studentHeaderTools{justify-items:stretch;width:100%}.studentFeedbackTrigger{justify-content:center;width:100%}.studentQuarterGoal{margin-left:0}.studentQuarterGoal strong{font-size:1rem}.studentQuarterGoal span{font-size:1.05rem}.fitMatrixPreview,.fitMatrixGrid{min-width:var(--matrix-min-width,680px)}.studentMatrix,.fitMatrixEditor{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;overflow-x:auto}.studentCompactGrid{grid-template-columns:1fr;gap:12px}.statusButton{min-height:52px;font-size:1rem}.filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.shell{width:calc(100% - 16px);max-width:1180px;padding-top:max(14px, env(safe-area-inset-top))}.topbar{padding:max(16px, env(safe-area-inset-top)) 0 20px;grid-template-columns:1fr;gap:10px;margin:0 0 18px}.studentPlanWorkspace,.studentMatrix,.studentPhoneOverview,.studentPhoneList,.studentGoalDetail,.studentCompactGrid,.studentCompactColumn,.studentSectionCard,.planMaterialStrip,.fitMatrixPreview{max-width:100%}.session{width:100%}.anzeigePanel{left:0;right:auto}.studentGoalModalBackdrop{padding:12px}.studentGoalModal{width:100%;max-height:min(90vh,1000px);padding:16px}.studentDetailBottom,.grid2,.row,.teacherActionGrid{grid-template-columns:1fr}.rowActions{justify-content:flex-start}.studentScope{display:grid}.filterbar{grid-template-columns:1fr}.loginPanel{gap:22px}.sessionInfo{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px;align-items:stretch;gap:8px;display:grid}.roleBadge{min-width:0;padding:8px 10px}.roleBadge span{font-size:.68rem}.roleBadge strong{font-size:.78rem}.sessionButton{min-width:0;padding:8px 10px;font-size:.82rem}.logoutButton{place-items:center;width:48px;min-width:48px;min-height:48px;padding:0;display:grid}.logoutLabel{display:none}.logoutIcon{display:block}.studentGoalFocus{padding:16px}.studentGoalFocus .cellMeta span{width:100%}.statusButtons{grid-template-columns:1fr}.statusButton{min-height:52px;font-size:1rem}.loginChoices,.legalLinks{grid-template-columns:1fr;justify-items:stretch}.loginChoice{aspect-ratio:auto;min-height:80px}.panel,.planCard{padding:16px}.filterbar{padding:14px}}.classGenForm{flex-wrap:wrap;align-items:end;gap:16px;margin:12px 0 8px;display:flex}.classGenForm label{gap:6px;min-width:200px;display:grid}.classGenForm input,.classGenForm select{min-height:40px}.credentialBox{border:1px solid var(--line);background:var(--panel);border-radius:12px;margin:14px 0;padding:16px}.credentialTable{border-collapse:collapse;width:100%;margin-top:8px}.credentialTable th,.credentialTable td{text-align:left;border-bottom:1px solid var(--line);padding:8px 12px;font-size:.95rem}.credentialTable th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.78rem}.credPw{font-family:var(--font-mono,ui-monospace, monospace);font-weight:700}@media print{body *{visibility:hidden}.credentialBox,.credentialBox *{visibility:visible}.credentialBox{border:0;width:100%;position:absolute;top:0;left:0}.credentialBox button{display:none}}.kontenClassChips{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.kontenClassChip{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-weight:700;display:inline-flex}.kontenClassChip:hover{border-color:var(--accent)}.kontenClassChip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.kontenChipCount{color:inherit;background:#00000014;border-radius:999px;padding:1px 7px;font-size:.78rem;font-weight:800}.kontenClassChip.active .kontenChipCount{background:#ffffff40}.kontenGrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:6px;display:grid}.kontenCard{border:1px solid var(--line);background:var(--panel);border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.kontenCard strong{font-family:var(--font-mono,ui-monospace, monospace);font-size:.9rem}.kontenResetBtn{border:1px solid var(--line);background:var(--panel);width:28px;height:28px;min-height:28px;color:var(--muted);cursor:pointer;border-radius:7px;flex:none;padding:0;font-size:1rem;line-height:1}.kontenResetBtn:hover{border-color:var(--accent);color:var(--accent)}.yearBlock{border-bottom:1px solid var(--line);padding:10px 0}.yearBlock:last-child{border-bottom:0}.yearBlockHead{color:var(--ink);align-items:center;gap:8px;margin-bottom:8px;font-weight:800;display:flex}.yearGroupChips{flex-wrap:wrap;gap:8px;display:flex}.groupTag{border:1px solid var(--line);background:var(--panel);border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:.9rem;font-weight:700;display:inline-flex}.groupTag.inactive{opacity:.5}.kontenYearList{gap:10px;margin:12px 0;display:grid}.kontenYearRow{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.kontenYearLabel{color:var(--muted);min-width:48px;font-weight:800}.userFilterBar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.userSearchInput{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex:1;min-width:200px;min-height:40px;padding:8px 12px}.planStrip{background:var(--panel-soft);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:11px 14px;display:flex}.planStripThema{flex-direction:column;line-height:1.2;display:inline-flex}.planCapSm{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:800}.planStripVal{color:var(--ink);font-size:14px;font-weight:700}.planStripDiv{background:var(--line);width:1px;height:26px}.planPill{background:var(--panel);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:700;display:inline-flex}.planPill b{color:var(--muted);font-weight:700}.planPill i{background:#c4cfd6;border-radius:999px;width:8px;height:8px;display:inline-block}.planPill.on{background:var(--success-soft);border-color:var(--success-border);color:var(--success)}.planPill.on i{background:var(--success)}.planPill.off{color:#7a8790}.planEditBtn{border:1px solid var(--line);background:var(--panel);cursor:pointer;color:var(--brand-dark);border-radius:9px;margin-left:auto;padding:8px 14px;font-size:13px;font-weight:700}.planEditBtn:hover{border-color:var(--brand-dark)}.planSettings{background:var(--panel-soft);border:1px solid var(--line);border-radius:10px;padding:18px}.planSettingsHead{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.planCap{letter-spacing:.08em;text-transform:uppercase;color:#8a98a2;font-size:11px;font-weight:800}.planDone{background:var(--brand-dark);color:#fff;cursor:pointer;border:0;border-radius:9px;padding:8px 16px;font-size:13px;font-weight:700}.planGoalBand{background:#b56b3a12;border:1px solid #b56b3a38;border-radius:10px;flex-wrap:wrap;align-items:center;gap:18px;margin-top:16px;padding:14px 18px;display:flex}.planGoalMain{flex:460px;gap:5px;min-width:300px;display:grid}.planCapGoal{color:#a4651f}.planGoalInput{font:inherit;color:var(--ink);background:0 0;border:0;width:100%;padding:2px 0;font-size:18px;font-weight:700}.planGoalInput:focus{border-bottom:1px solid #b56b3a80;outline:none}.planGoalActions{align-items:center;gap:10px;display:flex}.planGoalCode{color:var(--brand-dark);background:var(--igs-navy-soft);border-radius:8px;padding:7px 11px;font-size:13px;font-weight:800}
