:root{--gk-navy: #20275f;--gk-gold: #e5b84c;--gk-cream: #fffaf0;--gk-border: #c8c1af;--gk-radius: 10px;--gk-shadow: 0 16px 38px rgb(28 31 63 / 18%);color:#1c2430;background:#f6f7f2;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}.class-command-bar{display:flex;gap:8px;min-height:52px;padding:6px 8px;color:var(--gk-navy);background:#fffaf0f0;border-color:var(--gk-border);border-radius:var(--gk-radius);box-shadow:var(--gk-shadow)}.class-title{gap:6px}.class-app-icon{width:88px;height:32px}.class-app-icon img{width:86px;height:29px}.class-title h1{font-size:1rem}.class-title .eyebrow{display:none}.class-period-controls{gap:3px;flex:0 0 auto}.class-period-controls>button{width:30px;min-height:32px}.period-pills{grid-template-columns:repeat(6,30px);gap:3px}.period-pills button{min-height:32px}.class-live-tools{flex:1 1 auto;gap:5px;overflow-x:auto;scrollbar-width:thin}.class-primary-tools{display:flex;align-items:center;gap:5px;flex:0 0 auto}.toolbar-field{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0 7px;color:#5e6174;background:var(--gk-cream);border:1px solid var(--gk-border);border-radius:7px;font-size:.68rem;font-weight:900;text-transform:uppercase}.toolbar-field input{width:112px;min-height:26px;padding:0;color:var(--gk-navy);background:transparent;border:0;outline:0;font-size:.74rem;font-weight:850}.toolbar-homework-field input{width:44px}.class-live-tools button,.class-period-controls>button{min-height:32px;padding:0 8px;color:var(--gk-navy);background:var(--gk-cream);border-color:var(--gk-border);border-radius:7px;font-size:.76rem}.view-switcher{gap:3px;padding:2px;flex:0 0 auto;border-color:var(--gk-border)}.view-switcher button{min-height:28px;padding:0 7px}.class-mode-grid{gap:6px;padding-top:6px}.daily-workflow-panel{display:flex;gap:6px;margin-bottom:6px;padding:5px 7px;background:#fffaf0f0;border-color:var(--gk-border);border-radius:var(--gk-radius);box-shadow:0 6px 16px #1c1f3f1a}.daily-workflow-panel div{justify-content:flex-start}.daily-workflow-panel button{min-height:30px;padding:0 8px;font-size:.76rem}.random-picker-panel{margin-bottom:6px;padding:6px 8px;background:#fffaf0f0;border-color:var(--gk-border);border-radius:var(--gk-radius);box-shadow:0 6px 16px #1c1f3f1a}.random-picked-student h2{font-size:1rem}.class-mode-grid .seating-engine{height:calc(100vh - 184px);padding:8px}.class-mode-grid .seating-toolbar{margin-bottom:6px}.seat-card{transition:left .18s ease,top .18s ease,filter .14s ease}.seated-student strong{font-size:1.08rem}.card-participation-strip span,.seat-card-back .card-participation-strip span{color:var(--gk-navy);background:#fffaf0eb;border-color:var(--gk-gold)}.class-side-panel,.report-window{border-color:var(--gk-border);border-radius:var(--gk-radius);box-shadow:var(--gk-shadow)}.class-side-panel{box-shadow:0 0 0 100vmax #181c3a6b,var(--gk-shadow)}.class-side-panel.is-open,.report-window.is-floating{animation:gokashi-popup-in .14s ease-out}.report-window-header{background:var(--gk-cream);border-bottom-color:var(--gk-border)}@keyframes gokashi-popup-in{0%{opacity:0;transform:translateY(5px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.seat-card,.seat-card-inner,.report-window,.class-side-panel{animation:none;transition:none}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.class-mode-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;min-height:100vh;padding:12px;color:#18202b;background:linear-gradient(180deg,#eef9f75c,#e8f4d97a),url(/assets/gokashi/class-background-2627.gif) center / cover fixed}.class-command-bar{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(240px,1fr);gap:14px;align-items:center;min-height:68px;padding:10px 12px;color:#273087;background:#f7fcfad6;border:1px solid rgb(39 48 135 / 30%);border-radius:8px;box-shadow:0 12px 30px #1c243014;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.class-title{display:flex;align-items:center;gap:11px;min-width:0}.class-app-icon{display:grid;place-items:center;width:124px;height:42px;flex:0 0 auto;overflow:hidden;background:transparent;border:0;border-radius:8px}.class-app-icon img{width:120px;height:38px;object-fit:contain}.class-title h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.35rem;color:#273087}.class-command-bar .eyebrow{color:#5963a8}.class-period-controls{display:flex;align-items:center;justify-content:center;gap:8px}.class-period-controls>button,.class-live-tools button,.panel-icon-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:800}.class-period-controls>button{width:38px}.class-period-controls>button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef}.period-pills{display:grid;grid-template-columns:repeat(6,38px);gap:6px}.period-pills button{min-height:38px;color:#fff0b4;background:#313b8fc7;border:1px solid rgb(255 211 109 / 38%);border-radius:8px;font-weight:900}.period-pills button.is-active{color:#18205f;background:#ffd36d;border-color:#f0b72d}.class-live-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.save-status{flex:0 0 auto;padding:7px 9px;border-radius:999px;font-size:.75rem;font-weight:900}.save-status.saved{color:#204e4a;background:#e8f2ed;border:1px solid #d2e5db}.save-status.saving{color:#6a4a16;background:#fff6df;border:1px solid #ead28f}.save-status.error{color:#8a1f11;background:#fff0ed;border:1px solid #f3c3ba}.class-live-tools button{gap:8px;max-width:100%;padding:0 12px}.view-switcher{display:flex;gap:6px;padding:4px;background:#f3f5ef;border:1px solid #d9dfd3;border-radius:10px}.view-switcher button{gap:6px;min-height:32px;padding:0 10px;background:transparent;border-color:transparent}.view-switcher button.is-active{color:#fff;background:#204e4a;border-color:#204e4a}.class-live-tools span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.class-mode-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-height:0;padding-top:12px}.class-mode-grid.is-room-setup{grid-template-columns:minmax(0,1fr)}.class-mode-grid.is-room-setup .daily-workflow-panel,.class-mode-grid.is-room-setup .date-focus-banner,.class-mode-grid.is-room-setup .doe-summary-panel,.class-mode-grid.is-room-setup .random-picker-panel,.class-mode-grid.is-room-setup .class-side-panel,.class-mode-shell.is-room-setup .class-command-bar{display:none}.class-mode-shell.is-room-setup .class-mode-grid{margin-top:0}.class-chart-zone{min-width:0;min-height:0}.daily-workflow-panel{display:grid;grid-template-columns:minmax(160px,220px) minmax(160px,220px) minmax(0,1fr);gap:10px;align-items:center;margin-bottom:10px;padding:10px 12px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 12px 30px #1c243014}.daily-workflow-panel label{display:grid;grid-template-columns:1fr 82px;gap:8px;align-items:center;color:#394452;font-size:.82rem;font-weight:900}.daily-workflow-panel input{width:100%;min-height:36px;padding:0 8px;color:#18202b;background:#f9faf7;border:1px solid #d9dfd3;border-radius:8px}.date-focus-banner{margin-bottom:10px;padding:9px 12px;color:#204e4a;background:#e8f2edf0;border:1px solid #b8d8bf;border-radius:8px;font-size:.9rem;font-weight:900}.daily-workflow-panel div{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.daily-workflow-panel button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 10px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.random-picker-panel{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(180px,.7fr);gap:10px;align-items:center;margin-bottom:10px;padding:10px 12px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 12px 30px #1c243014}.random-picked-student{min-width:0}.random-picked-student h2{overflow:hidden;margin-bottom:0;color:#18202b;text-overflow:ellipsis;white-space:nowrap;font-size:1.18rem}.random-picker-options,.random-picker-history{display:flex;align-items:center;gap:8px;min-width:0}.random-picker-options label{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;color:#394452;font-size:.8rem;font-weight:800}.random-picker-options input{width:auto}.random-picker-options button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 10px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.doe-summary-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.doe-summary-panel button,.doe-summary-controls label{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 10px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.doe-summary-panel button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.doe-summary-controls input{min-height:30px;color:#18202b;background:transparent;border:0;outline:0}.doe-summary-table-wrap{overflow:auto;background:#fff;border:1px solid #e1e5dc;border-radius:10px}.doe-summary-table{width:100%;min-width:560px;border-collapse:collapse}.doe-summary-table th,.doe-summary-table td{padding:7px 10px;text-align:left;border-bottom:1px solid #e1e5dc}.doe-summary-table tbody tr:last-child td{border-bottom:0}.doe-summary-table th{color:#667085;background:#f9faf7;font-size:.68rem;font-weight:900;text-transform:uppercase}.doe-summary-table td{color:#18202b;font-size:.88rem;font-weight:850}.doe-summary-table .doe-student-name{font-size:.98rem;font-weight:900}.doe-status-dot{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;vertical-align:1px}.doe-status-dot.is-absent{background:#dc2626}.doe-status-dot.is-late{background:#d97706}.doe-status-pill,.doe-seat-badge{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:24px;padding:2px 8px;border-radius:999px;font-size:.76rem;font-weight:900}.report-window{display:grid;align-self:start;width:min(calc(100% - 24px),1160px);max-height:calc(100vh - 116px);margin:12px auto;overflow:hidden;color:#18202b;background:#fffffff7;border:1px solid #bfc8bb;border-radius:12px;box-shadow:0 18px 48px #1c243029}.report-window.is-floating{position:fixed;z-index:90;inset:86px 12px auto;margin:0 auto}.report-window-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:#f6f8f3;border-bottom:1px solid #d9dfd3}.report-window-heading{min-width:0}.report-window-heading .eyebrow{margin-bottom:2px}.report-window-title-row,.report-window-actions,.report-window-subtitle{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.report-window-title-row h2{margin:0;font-size:1.35rem;line-height:1.15}.report-window-badge{padding:4px 8px;color:#204e4a;background:#e6f1e9;border:1px solid #c9ddce;border-radius:999px;font-size:.74rem;font-weight:900;line-height:1}.report-window-subtitle{margin-top:4px;color:#667085;font-size:.8rem;font-weight:800}.report-window-actions{justify-content:flex-end}.report-window-actions>button,.report-window-actions button,.report-window-actions label{min-height:34px}.report-window-actions>button{display:inline-flex;align-items:center;gap:6px;padding:0 10px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:7px;font-weight:900}.report-window-body{min-height:0;overflow:auto;padding:12px 14px 14px}.report-window-footer{position:sticky;bottom:0;z-index:2;padding:10px 14px;background:var(--gk-cream, #fffaf0);border-top:1px solid var(--gk-border, #c8c1af);box-shadow:0 -8px 18px #1c1f3f14}.grouping-preview-footer-warning{margin:0 0 8px;color:#8b3540;font-size:.82rem;font-weight:900}.grouping-preview-footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.grouping-preview-footer-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:0 13px;color:var(--gk-navy, #20275f);background:#fff;border:1px solid var(--gk-border, #c8c1af);border-radius:7px;font-weight:900}.grouping-preview-footer-actions button:last-child{color:#fff;background:var(--gk-navy, #20275f);border-color:var(--gk-navy, #20275f)}.grouping-preview-footer-actions button:disabled{cursor:default;color:#8b94a2;background:#eef1eb;border-color:#d9dfd3}.reports-window,.student-summary-window{min-height:0}.doe-status-pill.is-absent{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.doe-status-pill.is-late{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.doe-seat-badge{color:#344054;background:#f2f4f0;border:1px solid #dde2d8}.doe-summary-empty{margin-bottom:0;padding:12px;color:#667085;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-weight:850}.random-picker-options button:first-of-type{color:#fff;background:#204e4a;border-color:#204e4a}.random-picker-history{justify-content:flex-end;overflow:hidden}.random-picker-history span,.random-picker-history strong{flex:0 0 auto;padding:6px 8px;border-radius:999px;font-size:.73rem;font-weight:900}.random-picker-history span{color:#667085;background:#f3f5ef;border:1px solid #dfe5d9}.random-picker-history strong{max-width:132px;overflow:hidden;color:#204e4a;background:#e8f2ed;border:1px solid #d2e5db;text-overflow:ellipsis;white-space:nowrap}.class-mode-grid .seating-engine{display:grid;grid-template-rows:auto minmax(0,1fr);height:calc(100vh - 244px);min-height:620px;padding:12px;background:#f7fcfac2;border-color:#27308738;box-shadow:0 18px 48px #1c24301a}.class-mode-grid .seating-toolbar{margin-bottom:10px}.class-mode-grid .seating-toolbar .eyebrow{display:none}.class-mode-grid .seating-toolbar h2{font-size:1.05rem}.class-mode-grid .seating-workbench{grid-template-columns:minmax(0,1fr);min-height:0}.class-mode-grid .seating-workbench.has-unassigned{grid-template-columns:190px minmax(0,1fr)}.class-mode-grid .student-tray{overflow:auto}.class-mode-grid .classroom-stage-wrap{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}.class-mode-grid .classroom-stage{min-height:0;height:100%}.class-mode-grid .seat-card{width:clamp(76px,13.5%,118px);height:68px;min-height:68px}.class-mode-grid .seating-engine.grid-6 .seated-student strong,.class-mode-grid .seating-engine.grid-7 .seated-student strong{font-size:1.15rem}.class-mode-grid .seating-engine.grid-6 .seated-student span,.class-mode-grid .seating-engine.grid-7 .seated-student span{font-size:.78rem}.class-mode-grid .seating-engine.grid-6 .homework-strip,.class-mode-grid .seating-engine.grid-7 .homework-strip{min-height:20px;font-size:.7rem}.class-side-panel{position:fixed;top:50%;left:50%;z-index:100;display:none;overflow:auto;width:min(720px,calc(100vw - 32px));max-height:min(88vh,900px);padding:18px;background:#fffffffa;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 0 0 100vmax #11182775,0 24px 70px #1118274d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translate(-50%,-50%)}.class-side-panel.is-open{display:block}.panel-icon-button{position:absolute;top:12px;right:12px;width:34px;min-height:34px}.student-identity{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:center;padding-right:32px}.student-photo{display:grid;place-items:center;width:72px;height:72px;color:#204e4a;background:#e8f2ed;border:1px solid #d2e5db;border-radius:8px}.student-identity h2{margin-bottom:0;overflow-wrap:anywhere;font-size:1.45rem}.student-official-class{display:inline-block;margin-top:5px;padding:3px 7px;color:#273087;background:#eef0ff;border:1px solid #cfd3f4;border-radius:6px;font-size:.72rem;font-weight:950}.status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}.status-tile{min-height:74px;padding:10px;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px}.status-tile span{display:block;color:#667085;font-size:.72rem;font-weight:800}.status-tile strong{display:block;margin-top:8px;overflow-wrap:anywhere;color:#18202b;font-size:.98rem}.quick-actions,.correction-panel,.schedule-panel,.student-notes-panel,.contact-panel,.future-panel{margin-top:16px}.quick-actions h3,.correction-panel h3,.correction-panel h4,.schedule-panel h3,.schedule-panel h4,.student-notes-panel h3,.contact-panel h3,.future-panel h3{margin-bottom:9px;font-size:.92rem}.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.action-grid button{display:flex;align-items:center;gap:7px;min-height:42px;min-width:0;padding:7px 9px;color:#1c2430;background:#fff;border:1px solid #d9dfd3;border-radius:8px;font-size:.82rem;font-weight:800;text-align:left}.action-grid button:hover{color:#fff;background:#204e4a;border-color:#204e4a}.action-grid button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.correction-panel{padding:12px;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px}.correction-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.correction-heading h3{margin-bottom:0}.correction-heading button,.correction-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 9px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-size:.8rem;font-weight:900}.correction-form{display:grid;gap:8px;margin-top:10px}.correction-error,.correction-empty-codes{margin-bottom:0;padding:9px 10px;border-radius:8px;font-size:.82rem;font-weight:850}.correction-error{color:#8a1f11;background:#fff0ed;border:1px solid #f3c3ba}.correction-empty-codes{display:grid;gap:8px;color:#6a4a16;background:#fff6df;border:1px solid #ead28f}.correction-empty-codes p{margin-bottom:0}.correction-empty-codes button{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:fit-content;min-height:34px;padding:0 9px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-size:.8rem;font-weight:900}.correction-form label{display:grid;gap:5px}.correction-form label span{color:#667085;font-size:.72rem;font-weight:900;text-transform:uppercase}.correction-form select,.correction-form input,.correction-form textarea{width:100%;min-width:0;padding:8px 9px;color:#18202b;background:#fff;border:1px solid #d9dfd3;border-radius:8px}.scheduled-list{margin-top:12px}.scheduled-list p{display:grid;gap:3px;margin:0 0 8px;padding:9px;color:#394452;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-size:.84rem}.scheduled-list span{color:#667085;font-size:.78rem;font-weight:800}.correction-form textarea{min-height:70px;resize:vertical}.correction-actions{display:flex;flex-wrap:wrap;gap:8px}.correction-actions button:first-child{color:#fff;background:#204e4a;border-color:#204e4a}.correction-actions button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.correction-history-grid{display:grid;gap:10px;margin-top:12px}.correction-history-grid h4{margin-bottom:6px}.correction-history-grid p{display:grid;gap:3px;margin-bottom:6px;padding:8px;background:#fff;border:1px solid #e1e5dc;border-radius:8px;font-size:.8rem}.correction-history-grid strong,.correction-history-grid span{overflow-wrap:anywhere}.correction-history-grid span{color:#667085;font-weight:800}.student-notes-panel textarea{width:100%;min-height:104px;resize:vertical;padding:10px;color:#18202b;background:#f9faf7;border:1px solid #d9dfd3;border-radius:8px}.contact-panel dl{display:grid;gap:8px;margin:0}.contact-panel dl div{padding:10px;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px}.contact-panel dt{display:flex;align-items:center;gap:6px;color:#667085;font-size:.73rem;font-weight:800;text-transform:uppercase}.contact-panel dd{margin:5px 0 0;overflow-wrap:anywhere;font-weight:700}.future-panel div{display:flex;flex-wrap:wrap;gap:6px}.future-panel span{padding:6px 8px;color:#667085;background:#f3f5ef;border:1px solid #dfe5d9;border-radius:999px;font-size:.75rem;font-weight:800}.empty-class-panel{display:grid;place-items:center;align-content:center;min-height:100%;color:#667085;text-align:center}.empty-class-panel h2{margin:12px 0 6px;color:#18202b;font-size:1.3rem}.empty-class-panel p{max-width:240px;margin-bottom:0;line-height:1.45}.shortcut-bar{display:flex;flex-wrap:wrap;gap:7px;align-items:center;min-height:42px;overflow:visible;padding:10px 0 4px}.shortcut-bar span{flex:0 0 auto;padding:5px 8px;color:#5b6472;background:#ffffffb3;border:1px solid #d9dfd3;border-radius:999px;font-size:.72rem;font-weight:800}.roster-page{min-height:calc(100vh - 102px);margin-top:12px;padding:16px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 18px 48px #1c24301a}.roster-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.roster-header h2{margin-bottom:0;font-size:1.45rem}.roster-search{display:flex;align-items:center;gap:8px;min-width:260px;padding:0 10px;background:#f9faf7;border:1px solid #d9dfd3;border-radius:8px}.roster-search input{width:100%;min-height:40px;min-width:0;background:transparent;border:0;outline:0}.roster-layout{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:14px;align-items:start}.roster-import-panel{display:grid;gap:10px;margin-bottom:14px;padding:14px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.roster-import-heading,.roster-import-actions,.roster-import-actions a,.roster-upload-button{display:flex;align-items:center}.roster-import-heading{justify-content:space-between;gap:16px}.roster-import-title{align-items:flex-start}.roster-import-title p{margin:3px 0 0;color:#667085;font-size:.82rem;font-weight:750;line-height:1.4}.roster-import-actions{flex:0 0 auto;gap:8px}.roster-import-actions a,.roster-upload-button{justify-content:center;gap:7px;min-height:40px;padding:0 12px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900;text-decoration:none;cursor:pointer}.roster-upload-button{color:#fff;background:#204e4a;border-color:#204e4a}.roster-upload-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.roster-import-format{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;padding:10px 12px;color:#394452;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-size:.8rem}.roster-import-format strong{color:#204e4a}.roster-import-format small{grid-column:1 / -1;color:#667085;font-weight:750}.roster-import-preview{display:grid;gap:10px}.import-preview-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.import-preview-summary strong,.import-preview-summary span{padding:6px 8px;border-radius:999px;font-size:.78rem;font-weight:900}.import-preview-summary strong{color:#204e4a;background:#e8f2ed;border:1px solid #d2e5db}.import-preview-summary span{color:#667085;background:#f3f5ef;border:1px solid #dfe5d9}.import-preview-summary button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 10px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.import-preview-summary button:first-of-type{color:#fff;background:#204e4a;border-color:#204e4a}.import-preview-summary button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.import-preview-table-wrap{overflow:auto;border:1px solid #e1e5dc;border-radius:8px}.import-preview-table{width:100%;min-width:880px;border-collapse:collapse}.import-preview-table th,.import-preview-table td{padding:10px;text-align:left;border-bottom:1px solid #e1e5dc;vertical-align:top}.import-preview-table th{color:#667085;background:#f9faf7;font-size:.74rem;font-weight:900;text-transform:uppercase}.import-preview-table tr.has-errors{background:#fff8f6}.import-preview-table td strong,.import-preview-table td span{display:block}.import-preview-table td span{margin-top:3px;color:#667085;font-size:.8rem}.import-preview-table ul{margin:0;padding-left:18px}.roster-form,.roster-table-wrap{background:#fff;border:1px solid #e1e5dc;border-radius:8px}.roster-form{display:grid;gap:11px;padding:14px}.form-heading{display:flex;align-items:center;gap:8px}.form-heading h3{margin-bottom:0;font-size:1rem}.roster-form label{display:grid;gap:5px}.roster-form label span,.period-assignment>span{color:#667085;font-size:.74rem;font-weight:900;text-transform:uppercase}.roster-form input,.roster-form textarea{width:100%;min-width:0;padding:9px 10px;color:#18202b;background:#f9faf7;border:1px solid #d9dfd3;border-radius:8px}.roster-form textarea{min-height:72px;resize:vertical}.form-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.duplicate-warning{display:flex;align-items:center;gap:6px;margin-bottom:0;padding:8px 10px;color:#8a1f11;background:#fff0ed;border:1px solid #f3c3ba;border-radius:8px;font-size:.84rem;font-weight:800}.period-assignment{display:grid;gap:8px}.period-assignment div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.period-assignment label,.active-toggle{display:flex;align-items:center;gap:7px;padding:8px;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-weight:800}.period-assignment input,.active-toggle input{width:auto}.form-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.form-actions button,.row-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 10px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.form-actions button[type=submit]{color:#fff;background:#204e4a;border-color:#204e4a}.form-actions button:disabled,.row-actions button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.roster-message{margin-bottom:0;color:#667085;font-size:.85rem;font-weight:800}.roster-table-wrap{overflow:auto}.roster-table{width:100%;border-collapse:collapse;min-width:820px}.roster-table th,.roster-table td{padding:12px;text-align:left;border-bottom:1px solid #e1e5dc;vertical-align:top}.roster-table th{color:#667085;background:#f9faf7;font-size:.75rem;font-weight:900;text-transform:uppercase}.roster-table td strong,.roster-table td span{display:block}.roster-table td span{margin-top:3px;color:#667085;font-size:.8rem}.roster-table tr.is-inactive{color:#798293;background:#f8f8f5}.row-actions{display:flex;flex-wrap:wrap;gap:6px}.backup-page{min-height:calc(100vh - 102px);margin-top:12px;padding:16px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 18px 48px #1c24301a}.backup-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.backup-header h2{margin-bottom:0;font-size:1.45rem}.backup-status{display:inline-flex;align-items:center;gap:7px;max-width:min(520px,100%);padding:8px 10px;color:#667085;background:#f9faf7;border:1px solid #e1e5dc;border-radius:999px;font-size:.82rem;font-weight:800}.backup-status span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backup-status.success{color:#204e4a;background:#e8f2ed;border-color:#d2e5db}.backup-status.error{color:#8a1f11;background:#fff0ed;border-color:#f3c3ba}.backup-status.working{color:#6a4a16;background:#fff6df;border-color:#ead28f}.backup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.local-data-warning{display:flex;align-items:flex-start;gap:10px;margin:12px 0;padding:12px 14px;color:#5d4614;background:#fff4cf;border:1px solid #dfc46a;border-radius:8px}.local-data-warning svg{flex:0 0 auto;margin-top:2px}.local-data-warning h3,.local-data-warning p{margin:0}.local-data-warning h3{color:#20275f;font-size:.95rem}.local-data-warning p{margin-top:3px;font-size:.84rem;line-height:1.4}.backup-card{display:grid;gap:14px;padding:16px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.backup-card-heading{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start}.backup-card-heading>svg{margin-top:2px;color:#204e4a}.backup-card h3{margin-bottom:4px;font-size:1rem}.backup-card p{margin-bottom:0;color:#5b6472;line-height:1.5}.backup-meta,.restore-warning dl{display:grid;gap:8px;margin:0}.backup-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.backup-meta div,.restore-warning dl div{padding:10px;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px}.backup-meta dt,.restore-warning dt{color:#667085;font-size:.72rem;font-weight:900;text-transform:uppercase}.backup-meta dd,.restore-warning dd{margin:4px 0 0;overflow-wrap:anywhere;color:#18202b;font-weight:800}.backup-card button,.restore-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;width:fit-content;padding:0 12px;color:#fff;background:#204e4a;border:1px solid #204e4a;border-radius:8px;font-weight:900}.backup-card button:disabled,.restore-actions button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.backup-file-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 12px;color:#204e4a;background:#f9faf7;border:1px dashed #b8c4b2;border-radius:8px;font-weight:900}.backup-file-picker input{max-width:220px;min-width:0;color:#5b6472}.restore-warning{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:12px;color:#6a4a16;background:#fff6df;border:1px solid #ead28f;border-radius:8px}.restore-warning>svg{margin-top:2px}.restore-warning h4{margin:0 0 5px;color:#412d0c;font-size:.98rem}.restore-warning dl{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.restore-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.restore-actions button:last-child{color:#204e4a;background:#fff;border-color:#cfd6ca}.reports-page{min-height:calc(100vh - 102px);margin-top:12px;padding:16px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 18px 48px #1c24301a}.reports-header,.report-subheader{display:flex;align-items:center;justify-content:space-between;gap:14px}.reports-header{margin-bottom:12px}.reports-header h2{margin-bottom:0;font-size:1.45rem}.report-controls{display:flex;align-items:center;gap:8px}.report-controls label,.report-controls button{display:inline-flex;align-items:center;gap:7px;min-height:40px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.report-controls label{padding:0 10px}.daily-workflow-panel .print-option{display:inline-flex;grid-template-columns:none;gap:6px;width:auto;min-height:36px;padding:0 8px;color:#394452;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-size:.78rem;font-weight:900}.daily-workflow-panel .print-option input{width:auto;min-height:auto;padding:0}.report-controls input{min-height:32px;color:#18202b;background:transparent;border:0;outline:0}.report-controls button{justify-content:center;padding:0 12px}.report-controls button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.report-subheader{justify-content:flex-start;padding:10px 12px;color:#667085;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-size:.85rem;font-weight:900}.report-subheader strong{margin-left:auto;color:#204e4a}.report-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(124px,1fr));gap:8px;margin-top:12px}.report-summary-tile{min-height:82px;padding:10px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.report-summary-tile span{display:block;min-height:28px;color:#667085;font-size:.72rem;font-weight:900;line-height:1.2;text-transform:uppercase}.report-summary-tile strong{display:block;margin-top:8px;color:#18202b;font-size:1.45rem;line-height:1}.report-table-wrap{overflow:auto;margin-top:12px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.report-table{width:100%;min-width:880px;border-collapse:collapse}.report-table th,.report-table td{padding:12px;text-align:left;border-bottom:1px solid #e1e5dc;vertical-align:top}.report-table th{color:#667085;background:#f9faf7;font-size:.75rem;font-weight:900;text-transform:uppercase}.report-table td{color:#18202b;font-weight:750}.report-table td strong,.report-table td span{display:block}.report-table td span{margin-top:3px;color:#667085;font-size:.8rem;font-weight:800}.sheet-page{min-height:calc(100vh - 102px);margin-top:12px;padding:16px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 18px 48px #1c24301a}.sheet-header,.sheet-subheader{display:flex;align-items:center;justify-content:space-between;gap:14px}.sheet-header{margin-bottom:12px}.sheet-header h2{margin-bottom:0;font-size:1.45rem}.sheet-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.sheet-controls label,.sheet-controls button{display:inline-flex;align-items:center;gap:7px;min-height:40px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.sheet-controls label{padding:0 10px}.sheet-controls label span{color:#667085;font-size:.75rem;text-transform:uppercase}.sheet-controls input{min-height:32px;color:#18202b;background:transparent;border:0;outline:0}.sheet-controls button{justify-content:center;padding:0 12px}.sheet-controls button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.sheet-subheader{justify-content:flex-start;padding:10px 12px;color:#667085;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-size:.85rem;font-weight:900}.sheet-subheader strong{margin-left:auto;color:#204e4a}.sheet-table-wrap{overflow:auto;max-height:calc(100vh - 242px);margin-top:12px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.sheet-table{width:100%;min-width:1320px;border-collapse:separate;border-spacing:0}.sheet-table th,.sheet-table td{max-width:220px;padding:10px;text-align:left;border-right:1px solid #e8ece3;border-bottom:1px solid #e1e5dc;vertical-align:top}.sheet-table th{position:sticky;top:0;z-index:2;color:#667085;background:#f9faf7;font-size:.72rem;font-weight:900;text-transform:uppercase}.sheet-table td{color:#18202b;font-size:.82rem;font-weight:750}.sheet-table th:first-child,.sheet-table td:first-child{position:sticky;left:0;z-index:3;background:#fff}.sheet-table th:first-child{z-index:4;background:#f9faf7}.sheet-table .date-column{min-width:92px;text-align:center}.sheet-table .date-column span,.sheet-table .date-column small,.daily-code-cell span{display:block}.sheet-table .date-column small{margin-top:2px;color:#8a93a3;font-size:.66rem}.daily-code-cell{min-width:92px;text-align:center;white-space:nowrap}.daily-code-cell span{margin-bottom:3px}.daily-code-cell .empty-code{color:#a4acb8}.grades-page{min-height:calc(100vh - 102px);margin-top:12px;padding:16px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 18px 48px #1c24301a}.grades-header,.grades-subheader{display:flex;align-items:center;justify-content:space-between;gap:14px}.grades-header{margin-bottom:12px}.grades-header h2{margin-bottom:0;font-size:1.45rem}.grades-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.grades-controls label,.grades-controls button{display:inline-flex;align-items:center;gap:7px;min-height:40px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.grades-controls label{padding:0 10px}.grades-controls label span{color:#667085;font-size:.75rem;text-transform:uppercase}.grades-controls input{min-height:32px;color:#18202b;background:transparent;border:0;outline:0}.grades-controls button{justify-content:center;padding:0 12px}.grades-controls button:first-of-type{color:#fff;background:#273087;border-color:#273087}.grades-controls button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.grades-subheader{justify-content:flex-start;padding:10px 12px;color:#667085;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-size:.85rem;font-weight:900}.grades-subheader strong{margin-left:auto;color:#204e4a}.grades-table-wrap{overflow:auto;max-height:calc(100vh - 242px);margin-top:12px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.grades-table{width:100%;min-width:980px;border-collapse:separate;border-spacing:0}.grades-table th,.grades-table td{padding:11px 12px;text-align:left;border-right:1px solid #e8ece3;border-bottom:1px solid #e1e5dc}.grades-table th{position:sticky;top:0;z-index:2;color:#667085;background:#f9faf7;font-size:.72rem;font-weight:900;text-transform:uppercase}.grades-table td{color:#18202b;font-size:.88rem;font-weight:750}.grades-table .grade-percent,.compact-gradebook-table .grade-points{color:#273087;font-size:1rem;font-weight:950}.groups-page{min-height:calc(100vh - 102px);margin-top:12px;padding:16px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 18px 48px #1c24301a}.groups-header,.groups-subheader,.groups-import-date,.grade-import-actions{display:flex;align-items:center;gap:10px}.groups-header{justify-content:space-between;margin-bottom:12px}.groups-header h2{margin-bottom:0;font-size:1.45rem}.groups-import-date{min-height:40px;padding:0 10px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.groups-import-date span{color:#667085;font-size:.75rem;text-transform:uppercase}.groups-import-date input{min-height:32px;color:#18202b;background:transparent;border:0;outline:0}.groups-subheader{padding:10px 12px;color:#667085;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-size:.85rem;font-weight:900}.groups-subheader strong{margin-left:auto;color:#204e4a}.grade-import-workspace{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:14px;margin-top:12px}.grade-import-entry textarea{width:100%;min-height:340px;resize:vertical;padding:14px;color:#18202b;background:#fbfcfa;border:1px solid #cfd6ca;border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.84rem;line-height:1.55}.grade-import-actions{align-items:stretch;margin-top:8px}.grade-import-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 12px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.grade-import-actions button:last-child{color:#fff;background:#273087;border-color:#273087}.grade-import-actions button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.grade-import-preview-wrap{max-height:calc(100vh - 250px);overflow:auto;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.grade-import-preview{width:100%;min-width:780px;border-collapse:separate;border-spacing:0}.grade-import-preview th,.grade-import-preview td{padding:10px;text-align:left;border-right:1px solid #e8ece3;border-bottom:1px solid #e1e5dc}.grade-import-preview th{position:sticky;top:0;z-index:2;color:#667085;background:#f9faf7;font-size:.7rem;font-weight:900;text-transform:uppercase}.grade-import-preview td{color:#18202b;font-size:.82rem;font-weight:750}.grade-import-preview tr.is-unmatched td{color:#8a1f11;background:#fff5f2}.grade-set-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.grade-set-controls label,.grade-set-controls button{display:inline-flex;align-items:center;gap:7px;min-height:40px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.grade-set-controls label{padding:0 10px}.grade-set-controls label span{color:#667085;font-size:.72rem;text-transform:uppercase}.grade-set-controls input{min-height:32px;color:#18202b;background:transparent;border:0;outline:0}.grade-set-controls input[type=text]{width:150px}.grade-set-controls button{justify-content:center;padding:0 12px;color:#fff;background:#273087;border-color:#273087}.grade-set-controls .clear-grades-button{color:#8a1f11;background:#fff;border-color:#f0c7c0}.grade-set-controls button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.groups-grade-table-wrap{max-height:calc(100vh - 286px);margin-top:12px;overflow:auto;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.grade-paste-note{margin:12px 0 0;color:#667085;font-size:.82rem;font-weight:800}.bulk-grade-paste{margin-top:12px}.bulk-grade-paste header{display:flex;align-items:center;gap:8px;margin-bottom:7px;color:#273087}.bulk-grade-paste h3{margin:0;font-size:1rem}.bulk-grade-paste textarea{width:100%;min-height:180px;resize:vertical;padding:13px 14px;color:#18202b;background:#fbfcfa;border:1px solid #cfd6ca;border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.84rem;line-height:1.5}.bulk-grade-paste textarea:focus{border-color:#273087;box-shadow:0 0 0 3px #2730871f;outline:0}.bulk-grade-paste-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.bulk-grade-paste-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 14px;color:#fff;background:#273087;border:1px solid #273087;border-radius:8px;font-weight:900}.bulk-grade-paste-actions button:last-child{color:#8a1f11;background:#fff;border-color:#f0c7c0}.bulk-grade-paste-actions button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.grade-paste-warning{margin:10px 0 0;padding:10px 12px;color:#8a1f11;background:#fff5f2;border:1px solid #f3c3ba;border-radius:8px;font-size:.86rem;font-weight:850}.grade-preview-section{margin-top:16px}.grade-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.grade-preview-heading h3,.grade-preview-heading p{margin:0}.grade-preview-heading h3{color:#18202b;font-size:1rem}.grade-preview-heading p{margin-top:3px;color:#667085;font-size:.8rem;font-weight:800}.grade-preview-ready,.match-status{display:inline-flex;align-items:center;gap:6px;color:#17624e;font-size:.76rem;font-weight:900}.grade-preview-ready{padding:7px 9px;background:#edf8f2;border:1px solid #b9dec9;border-radius:7px}.grade-set-footer{justify-content:flex-end;margin-top:12px}.groups-grade-table{width:100%;border-collapse:separate;border-spacing:0}.groups-grade-table th,.groups-grade-table td,.unmatched-grades th,.unmatched-grades td{padding:10px 12px;text-align:left;border-right:1px solid #e8ece3;border-bottom:1px solid #e1e5dc}.groups-grade-table th,.unmatched-grades th{color:#667085;background:#f9faf7;font-size:.72rem;font-weight:900;text-transform:uppercase}.groups-grade-table th{position:sticky;top:0;z-index:2}.groups-grade-table td{color:#18202b;font-size:.88rem;font-weight:750}.groups-grade-table td:last-child{width:190px}.groups-grade-table td input{width:100%;max-width:150px;min-height:36px;padding:0 10px;color:#18202b;background:#fbfcfa;border:1px solid #cfd6ca;border-radius:7px;font-weight:900}.groups-grade-table td input:focus{border-color:#273087;box-shadow:0 0 0 3px #2730871f;outline:0}.unmatched-grades{margin-top:14px;overflow:hidden;border:1px solid #f3c3ba;border-radius:8px}.unmatched-grades header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;color:#8a1f11;background:#fff5f2}.unmatched-grades h3{display:flex;align-items:center;gap:7px;margin:0;font-size:1rem}.unmatched-grades table{width:100%;border-collapse:collapse}.unmatched-grades td{color:#8a1f11;background:snow;font-size:.82rem}.grouping-preview-workspace{margin-top:12px}.grouping-preview-workspace>header,.grouping-mode-actions,.grouping-preview-summary{display:flex;align-items:center;gap:8px}.grouping-preview-workspace h3{margin:0;font-size:1.05rem}.grouping-mode-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:0 12px;color:#fff;background:#273087;border:1px solid #273087;border-radius:8px;font-weight:900}.grouping-mode-actions button:last-child{background:#176b5b;border-color:#176b5b}.grouping-mode-actions button:disabled{color:#8b94a2;background:#eef1eb;border-color:#d9dfd3}.grouping-preview-summary{flex-wrap:wrap;margin-top:12px;padding:9px 10px;color:#526070;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-size:.8rem;font-weight:850}.grouping-preview-summary strong{color:#204e4a}.grouping-preview-table-wrap{max-height:430px;margin-top:10px;overflow:auto;border:1px solid #e1e5dc;border-radius:8px}.grouping-preview-table{width:100%;border-collapse:collapse}.grouping-preview-table th,.grouping-preview-table td{padding:9px 11px;text-align:left;border-bottom:1px solid #e8ece3}.grouping-preview-table th{position:sticky;top:0;color:#667085;background:#f9faf7;font-size:.72rem;font-weight:900;text-transform:uppercase}.grouping-preview-table td{color:#18202b;font-size:.86rem;font-weight:750}.grouping-preview-warning,.grouping-preview-note{margin:9px 0 0;padding:9px 11px;border-radius:7px;font-size:.82rem;font-weight:850}.grouping-preview-warning{color:#8a1f11;background:#fff5f2;border:1px solid #f3c3ba}.grouping-preview-note{color:#204e4a;background:#edf8f2;border:1px solid #b9dec9}.grouping-apply-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.grouping-apply-row .grouping-preview-note{flex:1 1 auto}.grouping-apply-row button{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:7px;min-height:40px;margin-top:9px;padding:0 13px;color:#fff;background:#204e4a;border:1px solid #204e4a;border-radius:8px;font-weight:900}.grouping-apply-row button:disabled{color:#8b94a2;background:#eef1eb;border-color:#d9dfd3}.student-summary-page{min-height:calc(100vh - 102px);margin-top:12px;padding:16px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 18px 48px #1c24301a}.student-summary-header,.student-summary-subheader{display:flex;align-items:center;justify-content:space-between;gap:14px}.student-summary-header{margin-bottom:12px}.student-summary-header h2{margin-bottom:0;font-size:1.45rem}.student-summary-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.student-summary-controls label,.student-summary-controls button{display:inline-flex;align-items:center;gap:7px;min-height:40px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.student-summary-controls label{padding:0 10px}.student-summary-controls label span{color:#667085;font-size:.75rem;text-transform:uppercase}.student-summary-controls input{min-height:32px;color:#18202b;background:transparent;border:0;outline:0}.student-summary-controls button{justify-content:center;padding:0 12px}.student-summary-controls button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.student-summary-subheader{justify-content:flex-start;padding:10px 12px;color:#667085;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-size:.85rem;font-weight:900}.student-summary-subheader strong{margin-left:auto;color:#204e4a}.student-summary-profile{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;margin-top:12px;padding:14px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.student-summary-photo{display:grid;place-items:center;width:92px;height:92px;color:#204e4a;background:#e8f2ed;border:1px solid #d2e5db;border-radius:8px}.student-summary-profile dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.student-summary-profile div{min-width:0}.student-summary-profile dt,.student-summary-stats span{color:#667085;font-size:.72rem;font-weight:900;text-transform:uppercase}.student-summary-profile dd{margin:3px 0 0;overflow-wrap:anywhere;color:#18202b;font-weight:850}.student-summary-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.student-summary-stats div{min-height:76px;padding:10px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.student-summary-stats span,.student-summary-stats strong{display:block}.student-summary-stats strong{margin-top:8px;color:#18202b;font-size:1.4rem;line-height:1}.student-summary-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:12px;margin-top:12px}.student-summary-card{min-width:0;padding:14px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.student-summary-card.wide{grid-row:span 2}.student-summary-card h3{margin-bottom:10px;font-size:1rem}.student-summary-card article{display:grid;gap:4px;padding:10px 0;border-top:1px solid #e8ece3}.student-summary-card article:first-of-type{border-top:0}.student-summary-card article strong,.student-summary-card article span{overflow-wrap:anywhere}.student-summary-card article span{color:#667085;font-size:.82rem;font-weight:800}.student-summary-card article p,.student-summary-empty{margin-bottom:0;color:#394452}.student-summary-table-wrap{overflow:auto;border:1px solid #e1e5dc;border-radius:8px}.student-summary-table{width:100%;min-width:780px;border-collapse:collapse}.student-summary-table th,.student-summary-table td{padding:10px;text-align:left;border-bottom:1px solid #e1e5dc;vertical-align:top}.student-summary-table th{color:#667085;background:#f9faf7;font-size:.72rem;font-weight:900;text-transform:uppercase}.student-summary-table td{color:#18202b;font-size:.84rem;font-weight:750}.student-summary-table td span{display:block;margin-bottom:3px}.code-settings-page{min-height:calc(100vh - 102px);margin-top:12px;padding:16px;background:#ffffffeb;border:1px solid #d9dfd3;border-radius:8px;box-shadow:0 18px 48px #1c24301a}.code-settings-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.code-settings-header h2{margin-bottom:0;font-size:1.45rem}.code-settings-actions{display:flex;align-items:center;gap:8px}.code-settings-actions span{color:#667085;font-size:.84rem;font-weight:900}.code-settings-actions button,.code-settings-table button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 10px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.code-settings-table button{color:#fff;background:#204e4a;border-color:#204e4a}.code-settings-table button:disabled{cursor:default;color:#a4acb8;background:#f3f5ef;border-color:#d9dfd3}.code-settings-table-wrap{overflow:auto;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.code-settings-table{width:100%;min-width:1160px;border-collapse:collapse}.code-settings-table th,.code-settings-table td{padding:10px;text-align:left;border-bottom:1px solid #e1e5dc;vertical-align:top}.code-settings-table th{color:#667085;background:#f9faf7;font-size:.74rem;font-weight:900;text-transform:uppercase}.code-settings-table input,.code-settings-table select{width:100%;min-width:0;min-height:36px;padding:7px 8px;color:#18202b;background:#f9faf7;border:1px solid #d9dfd3;border-radius:8px}.compact-check,.code-flag-list label{display:flex;align-items:center;gap:6px;color:#394452;font-size:.78rem;font-weight:850}.compact-check input,.code-flag-list input{width:auto;min-height:auto}.code-flag-list{display:grid;gap:6px}.app-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:24px 0 40px}.top-bar{display:flex;align-items:center;gap:14px;padding:6px 0 22px}.brand-mark,.section-icon{display:grid;place-items:center;flex:0 0 auto;color:#f8fafc;background:#204e4a}.brand-mark{width:44px;height:44px;border-radius:8px}.eyebrow{margin:0 0 2px;color:#667085;font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(2rem,3vw,2.7rem);line-height:1}.summary-band{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:stretch;padding:30px;color:#f8fafc;background:#204e4a;border-radius:8px;box-shadow:0 18px 50px #204e4a2e}.summary-copy h2{max-width:720px;margin-bottom:12px;font-size:clamp(1.9rem,4vw,3.7rem);line-height:1.03}.summary-copy p{max-width:680px;margin-bottom:0;color:#d6e5df;font-size:1rem;line-height:1.65}.summary-metrics{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:10px;align-content:end;min-width:330px}.summary-metrics div{padding:16px;background:#ffffff1a;border:1px solid rgb(255 255 255 / 16%);border-radius:8px}.summary-metrics span{display:block;margin-bottom:4px;font-size:1.5rem;font-weight:800}.summary-metrics p,.section-card p,.periods-panel p,.foundation-panel p{margin-bottom:0}.summary-metrics p{color:#d6e5df;font-size:.82rem}.workspace-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:18px}.section-card{display:grid;grid-template-rows:auto 1fr auto;min-height:218px;padding:18px;background:#fff;border:1px solid #e1e5dc;border-radius:8px;box-shadow:0 10px 30px #1c24300f}.section-icon{width:40px;height:40px;margin-bottom:18px;border-radius:8px}.section-copy h3{margin-bottom:8px;font-size:1.08rem}.section-copy p{color:#5b6472;font-size:.94rem;line-height:1.5}.section-status{width:fit-content;margin-top:18px;padding:6px 9px;color:#204e4a;background:#e8f2ed;border:1px solid #d2e5db;border-radius:999px;font-size:.78rem;font-weight:700}.periods-panel{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px;margin-top:18px;padding:22px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.foundation-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:22px;align-items:center;margin-top:18px;padding:22px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.foundation-panel h2{margin-bottom:6px;font-size:1.35rem}.foundation-panel p{color:#5b6472;line-height:1.55}.period-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.period-switcher button{min-height:42px;color:#204e4a;background:#f7faf6;border:1px solid #cfd6ca;border-radius:8px;font-weight:800}.period-switcher button:hover,.period-switcher button.is-active{color:#fff;background:#204e4a;border-color:#204e4a}.seating-shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:stretch;margin-top:18px}.seating-engine,.student-side-panel,.seating-loading{background:#fff;border:1px solid #e1e5dc;border-radius:8px;box-shadow:0 10px 30px #1c24300f}.seating-engine{min-width:0;padding:18px}.seating-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.seating-toolbar h2{margin-bottom:0;font-size:1.35rem}.seating-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.seating-actions select,.seating-actions button{min-height:38px;border-radius:8px}.seating-actions select{max-width:190px;padding:0 10px;color:#1c2430;background:#fff;border:1px solid #cfd6ca}.seating-actions button{display:inline-flex;align-items:center;gap:7px;padding:0 12px;color:#fff;background:#204e4a;border:1px solid #204e4a;font-weight:800}.seating-actions button.is-active{color:#3f2f07;background:#f7c948;border-color:#b7791f}.seating-actions button:disabled{cursor:default;color:#798293;background:#eef1eb;border-color:#d9dfd3}.room-builder{margin-bottom:14px;padding:14px;background:#f9faf7;border:1px solid #d9dfd3;border-radius:8px}.room-builder-controls,.room-builder>footer{display:flex;align-items:center;gap:10px}.room-builder-controls{justify-content:space-between;flex-wrap:wrap;padding:9px 11px;background:#fff;border:1px solid #e1e5dc;border-radius:8px}.room-builder-controls>span,.room-builder-controls>strong{color:#667085;font-size:.8rem;font-weight:900}.room-builder-controls .room-front-label{padding:5px 8px;color:var(--gk-navy, #20275f);background:var(--gk-cream, #fffaf0);border:1px solid var(--gk-border, #c8c1af);border-radius:999px;font-size:.76rem;font-weight:900}.room-builder-controls label{display:inline-flex;align-items:center;gap:8px;color:#394452;font-size:.8rem;font-weight:900}.room-builder-controls select{min-height:34px;padding:0 9px;color:#18202b;background:#fff;border:1px solid #cfd6ca;border-radius:7px;font-weight:850}.room-builder-warning{margin:9px 0 0;padding:8px 10px;color:#6a4a16;background:#fff6df;border:1px solid #ead28f;border-radius:7px;font-size:.8rem;font-weight:850}.room-group-selector{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-top:10px}.room-group-selector button{min-height:36px;min-width:0;padding:4px 6px;overflow:hidden;color:var(--group-text, #ffffff);background:var(--group-color, #596273);border:2px solid transparent;border-radius:7px;font-size:.74rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.room-group-selector button.is-selected{border-color:#111827;box-shadow:0 0 0 2px #fff,0 0 0 4px #111827}.group-none{--group-color: #596273;--group-text: #ffffff}.group-1{--group-color: #2563a8;--group-text: #ffffff}.group-2{--group-color: #277a50;--group-text: #ffffff}.group-3{--group-color: #e2ae30;--group-text: #251a00}.group-4{--group-color: #c94a4a;--group-text: #ffffff}.group-5{--group-color: #7454a6;--group-text: #ffffff}.group-6{--group-color: #168080;--group-text: #ffffff}.group-7{--group-color: #b94b82;--group-text: #ffffff}.group-8{--group-color: #6f7d2d;--group-text: #ffffff}.group-9{--group-color: #247b9f;--group-text: #ffffff}.group-10{--group-color: #c66a2b;--group-text: #ffffff}.room-builder>footer button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 11px;color:#204e4a;background:#fff;border:1px solid #cfd6ca;border-radius:8px;font-weight:900}.room-builder-grid{display:grid;gap:5px;width:min(100%,760px);margin:14px auto}.room-builder-grid button{aspect-ratio:1;min-width:0;padding:2px;overflow:hidden;color:#8b94a2;background:#fff;border:1px dashed #cfd6ca;border-radius:6px;font-size:clamp(.54rem,1vw,.72rem);font-weight:900}.room-builder-grid button.is-seat{color:var(--group-text, #ffffff);background:var(--group-color, #596273);border-color:var(--group-color, #596273);border-style:solid;box-shadow:inset 0 -3px #00000024}.room-builder-grid button span,.room-builder-grid button strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-builder-grid button strong{margin-top:2px;font-size:clamp(.52rem,.9vw,.7rem)}.room-builder>footer{justify-content:space-between;color:#667085;font-size:.82rem;font-weight:800}.room-builder>footer button{color:#fff;background:#204e4a;border-color:#204e4a}.room-builder>footer button:disabled{color:#8b94a2;background:#eef1eb;border-color:#d9dfd3}.seating-workbench{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.seating-workbench.has-unassigned{grid-template-columns:210px minmax(0,1fr)}.student-tray{min-width:0;padding:12px;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px}.tray-header,.stage-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.tray-header h3{margin-bottom:0;font-size:1rem}.tray-header span,.stage-meta span{color:#204e4a;font-size:.78rem;font-weight:800}.student-list{display:grid;gap:8px;margin-top:12px}.student-chip,.seated-student{width:100%;min-width:0;text-align:left;border-radius:8px}.student-chip{padding:10px;color:#1c2430;background:#fff;border:1px solid #dfe5d9}.student-chip strong,.student-chip span,.seated-student strong,.seated-student span,.seated-student small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-chip strong{font-size:.9rem}.student-chip span{margin-top:3px;color:#667085;font-size:.76rem}.empty-note{margin-bottom:0;color:#667085;font-size:.9rem;line-height:1.45}.classroom-stage-wrap{position:relative;z-index:1;min-width:0}.stage-meta{margin-bottom:8px}.classroom-stage{position:relative;z-index:1;isolation:isolate;min-height:560px;overflow:hidden;background:linear-gradient(180deg,#f2faf9b8,#e8f4d99e),#e8f4e9;border:1px solid rgb(39 48 135 / 24%);border-radius:8px;touch-action:none}.seat-card{position:absolute;z-index:2;width:clamp(76px,13.5%,118px);height:68px;min-height:68px;perspective:800px;-webkit-user-select:none;user-select:none;transform:translate(0);background:transparent;border:0;border-radius:10px}.seat-card.is-layout-editing{z-index:4;cursor:grab}.seat-card.is-layout-editing:active{cursor:grabbing}.seat-card:not(.is-layout-editing){cursor:default}.seat-card-inner{position:relative;width:100%;height:100%;min-height:0;transition:transform .18s ease;transform-style:preserve-3d}.seat-card.is-flipped .seat-card-inner{transform:rotateY(180deg)}.seat-card-face{position:absolute;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;z-index:1;padding:5px 6px;overflow:hidden;background:url(/assets/gokashi/present-card.png) center / cover;border:1px solid #245eb1;border-radius:12px;box-shadow:0 8px 16px #171e5b38;backface-visibility:hidden;-webkit-backface-visibility:hidden}.seat-card.has-student .seat-card-front{grid-template-rows:minmax(0,1fr) auto auto}.seat-card.has-student .seat-card-back{grid-template-rows:minmax(0,1fr) auto auto auto}.seat-card-front{z-index:2;pointer-events:auto}.seat-card-back{z-index:1;align-content:start;gap:3px;pointer-events:none;background:url(/assets/gokashi/present-card.png) center / cover;transform:rotateY(180deg)}.seat-card.is-flipped .seat-card-front{z-index:1;pointer-events:none}.seat-card.is-flipped .seat-card-back{z-index:2;pointer-events:auto}.seat-card.is-absent .seat-card-face,.seat-card.is-absent .seat-card-back{color:#4b075e;background:url(/assets/gokashi/absent-card.png) center / cover;border-color:#c51662;box-shadow:0 8px 18px #b4235b4d}.seat-card.is-late .seat-card-face,.seat-card.is-late .seat-card-back{background:linear-gradient(180deg,#ffeea4e0,#f1ae2fb8),url(/assets/gokashi/present-card.png) center / cover;border-color:#b7791f}.seat-card.is-excused .seat-card-face,.seat-card.is-excused .seat-card-back{background:linear-gradient(180deg,#e8f2fff0,#aed0f6e0),url(/assets/gokashi/present-card.png) center / cover;border-color:#3b82c4}.seat-card.is-neutral-day .seat-card-face,.seat-card.is-neutral-day .seat-card-back{color:#64748b;background:#e5e7eb;border-color:#cbd5e1;box-shadow:none;filter:saturate(.55)}.seat-card.has-student .seat-card-face{border-color:#2e83d0}.seat-card.is-absent .seat-grip,.seat-card.is-absent .seat-card-back strong,.seat-card.is-absent .seat-card-back span,.seat-card.is-absent .seated-student span,.seat-card.is-absent .seat-card-back small{color:#4b075e}.seat-grip{display:flex;align-items:center;justify-content:flex-end;gap:6px;color:#273087;font-size:.72rem;font-weight:800}.seat-card.has-student .seat-grip{display:none}.seat-card:not(.has-student) .seat-card-face{color:#555b83;background:#f6fcfa9e;border:1px dashed rgb(73 82 151 / 48%);box-shadow:none}.drop-hint{display:grid;place-items:center;width:100%;min-height:38px;color:#5c63a1;background:transparent;font-size:.77rem;font-weight:800;border:0;border-radius:6px}.homework-strip{width:100%;min-height:19px;margin-top:2px;padding:1px 5px;overflow:hidden;color:#204e4a;background:#ffffffdb;border:1px solid #b8d8bf;border-radius:5px;font-size:.63rem;font-weight:900;text-align:center;text-overflow:ellipsis;white-space:nowrap}.card-bottom-actions{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:3px;min-width:0}.card-bottom-actions .homework-strip{min-width:0;margin-top:0}.card-details-button{min-width:0;min-height:19px;padding:1px 4px;overflow:hidden;color:#273087;background:#ffffffe0;border:1px solid #9da5df;border-radius:5px;font-size:.61rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.seat-card.is-absent .card-details-button{color:#5c086f;background:#ffffffb8;border-color:#bd70a7}.homework-strip.is-homework-complete{color:#1d5c45;background:#e8f2ed;border-color:#b8d8bf}.homework-strip.is-homework-missing{color:#fff;background:#b42318;border-color:#8a1f11}.homework-strip.is-homework-late{color:#3f2f07;background:#f7c948;border-color:#b7791f}.homework-strip.is-homework-absent{color:#204e4a;background:#dbeafe;border-color:#8fbce8}.homework-strip.is-no-homework,.homework-strip:disabled{cursor:default;color:#64748b;background:#eef2f7;border-color:#d5dde8}.seated-student{display:grid;align-content:center;margin:0;padding:1px 5px;color:#d9f3ff;background:transparent;border:0;box-shadow:none;font-family:Bradley Hand,Chalkboard SE,Comic Sans MS,cursive;text-align:center}.seated-student.is-selected{border-radius:7px;box-shadow:inset 0 0 0 2px #ffd36d}.seated-student strong{color:#dff6ff;font-size:1rem;line-height:1;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;text-shadow:0 1px 0 #0b2f7c}.seated-student span{margin-top:1px;color:#6fd2ff;font-size:.7rem;font-weight:800;text-align:right}.seated-student small{margin-top:1px;color:#dff6ff;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.54rem;font-weight:950;line-height:1;text-align:left}.seat-card.is-absent .seated-student strong,.seat-card.is-absent .seated-student span,.seat-card.is-absent .seated-student small{color:#5c086f;text-shadow:0 1px 0 rgb(255 255 255 / 52%)}.seat-card-back strong,.seat-card-back span,.seat-card-back small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seat-card-back strong{font-size:.76rem}.seat-card-back span{color:#dff6ff;font-family:Bradley Hand,Chalkboard SE,Comic Sans MS,cursive;font-size:.82rem;font-weight:900;text-align:center}.seat-card-back small{color:#9fddff;font-size:.7rem;font-weight:900}.seat-card.has-student .seat-card-back>strong,.seat-card.has-student .seat-card-back>small{display:none}.seat-card-back-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:5px}.card-participation-strip{display:grid;grid-template-columns:22px minmax(0,1fr) 22px;gap:3px;align-items:center;min-width:0;min-height:18px;margin-top:2px}.card-participation-strip button{display:grid;place-items:center;width:22px;min-height:18px;padding:0;color:#273087;background:#ffffffe0;border:1px solid #9da5df;border-radius:5px}.card-participation-strip span,.seat-card-back .card-participation-strip span{display:block;margin:0;overflow:hidden;color:#173f73;background:#e1f4ffe5;border:1px solid #84b9dd;border-radius:5px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.62rem;font-weight:950;line-height:16px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.seat-card.is-absent .card-participation-strip button,.seat-card.is-absent .card-participation-strip span{color:#5c086f;background:#ffffffbd;border-color:#bd70a7}.seat-card-back-actions button,.seat-assign-list button{min-height:20px;padding:1px 5px;color:#24175f;background:#ffd36d;border:1px solid #e5aa20;border-radius:6px;font-size:.64rem;font-weight:900}.seat-assign-list{display:grid;gap:3px;max-height:44px;overflow:auto}.seat-assign-list button{width:100%;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.student-side-panel{position:sticky;top:18px;align-self:start;min-height:360px;padding:18px}.student-side-panel h2{margin-bottom:14px;font-size:1.25rem}.student-side-panel p{color:#5b6472;line-height:1.5}.panel-close{float:right;padding:6px 9px;color:#204e4a;background:#e8f2ed;border:1px solid #d2e5db;border-radius:8px;font-size:.78rem;font-weight:800}.student-side-panel dl{display:grid;gap:10px;margin:0}.student-side-panel dl div{padding:10px;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px}.student-side-panel dt{color:#667085;font-size:.72rem;font-weight:800;text-transform:uppercase}.student-side-panel dd{margin:4px 0 0;overflow-wrap:anywhere;color:#1c2430;font-weight:700}.seating-loading{min-height:180px;padding:24px;color:#5b6472}.error-message{padding:12px 14px;color:#8a1f11;background:#fff0ed;border:1px solid #f3c3ba;border-radius:8px}.periods-panel h2{margin-bottom:6px;font-size:1.25rem}.periods-panel p{color:#5b6472;line-height:1.55}.foundation-facts{display:grid;gap:10px}.foundation-facts span{padding:10px 12px;background:#f9faf7;border:1px solid #e1e5dc;border-radius:8px;font-weight:700}@media(max-width:980px){.summary-band,.periods-panel,.foundation-panel,.random-picker-panel{grid-template-columns:1fr}.roster-header,.roster-import-heading{align-items:stretch;flex-direction:column}.roster-search{min-width:0}.roster-import-actions{flex-wrap:wrap}.roster-layout,.daily-workflow-panel{grid-template-columns:1fr}.daily-workflow-panel div{justify-content:flex-start}.random-picker-options,.random-picker-history{flex-wrap:wrap;justify-content:flex-start}.reports-header,.grades-header,.code-settings-header,.report-controls,.grades-controls{align-items:stretch;flex-direction:column}.grades-controls button,.grades-controls label{width:100%}.groups-header,.groups-subheader{align-items:stretch;flex-direction:column}.groups-subheader strong{margin-left:0}.grouping-preview-workspace>header,.grouping-mode-actions{align-items:stretch;flex-direction:column}.grouping-apply-row{align-items:stretch;flex-direction:column}.grade-import-workspace{grid-template-columns:1fr}.grade-set-controls{align-items:stretch;justify-content:flex-start}.code-settings-actions{align-items:stretch;flex-direction:column}.report-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-metrics{min-width:0}.workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.backup-grid,.backup-header{grid-template-columns:1fr}.backup-header{align-items:stretch;flex-direction:column}.period-switcher{grid-template-columns:repeat(6,minmax(0,1fr))}.seating-shell,.seating-workbench,.seating-workbench.has-unassigned{grid-template-columns:1fr}.student-side-panel{position:static}}@media(max-width:620px){.app-shell{width:min(100% - 24px,1180px);padding-top:16px}.summary-band{padding:22px}.summary-metrics,.workspace-grid,.period-switcher,.backup-meta,.restore-warning dl{grid-template-columns:1fr}.section-card{min-height:190px}.report-summary-grid{grid-template-columns:1fr}.room-builder>footer{align-items:stretch;flex-direction:column}.room-builder-grid{gap:3px}.room-group-selector{grid-template-columns:repeat(3,minmax(0,1fr))}.roster-import-actions,.roster-import-actions a,.roster-upload-button{width:100%}.roster-import-format{grid-template-columns:1fr}.roster-import-format small{grid-column:auto}.seating-toolbar,.seating-actions{align-items:stretch;flex-direction:column}.seating-actions select,.seating-actions button{max-width:none;width:100%}.classroom-stage{min-height:620px}.seat-card{width:98px}}.print-seating-chart,.doe-print-summary{display:none}@media print{@page{size:letter landscape;margin:.35in}html,body,#root{width:100%;min-height:0;background:#fff}.class-mode-shell{min-height:0;padding:0;background:#fff}.class-mode-shell:not(.is-printing-doe)>:not(.print-seating-chart){display:none!important}.class-mode-shell.is-printing-doe>:not(.doe-print-summary){display:none!important}.print-seating-chart{display:block;width:10.3in;height:7.75in;color:#111827;background:#fff;page-break-after:avoid;page-break-before:avoid}.print-seating-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.25in;height:.72in;padding-bottom:.12in;border-bottom:1px solid #cbd5e1}.print-seating-header p{margin:0 0 .04in;color:#475569;font-size:9pt;font-weight:800;text-transform:uppercase}.print-seating-header h1{margin:0;color:#111827;font-size:20pt;line-height:1}.print-seating-header dl{display:grid;grid-template-columns:repeat(2,minmax(1.45in,auto));gap:.12in;margin:0}.print-seating-header div{display:grid;gap:.03in}.print-seating-header dt{color:#64748b;font-size:7.5pt;font-weight:800;text-transform:uppercase}.print-seating-header dd{margin:0;color:#111827;font-size:10pt;font-weight:800}.print-stage{position:relative;width:100%;height:6.85in;margin-top:.14in;overflow:hidden;background:#f8fafc;border:1px solid #cbd5e1;border-radius:.06in}.print-stage:before{position:absolute;top:.1in;left:50%;width:1.2in;padding:.04in 0;color:#64748b;border:1px solid #cbd5e1;border-radius:999px;content:"Front";font-size:8pt;font-weight:900;text-align:center;text-transform:uppercase;transform:translate(-50%)}.print-seat{position:absolute;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.04in .06in;width:1.15in;min-height:.62in;padding:.05in;background:#fff;border:1px solid #94a3b8;border-radius:.05in;break-inside:avoid;transform:translate(-50%,-50%)}.print-seat.has-student{border-color:#334155}.print-seat-code{grid-column:1 / -1;color:#334155;font-size:7.5pt;line-height:1}.print-student-name{min-width:0;color:#111827;font-size:8pt;font-weight:900;line-height:1.05}.print-student-name span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.print-seat p{grid-column:1 / -1;margin:.02in 0 0;color:#475569;font-size:6.8pt;font-weight:700;line-height:1.1}.doe-print-summary{display:block;width:7.8in;color:#111827;background:#fff}.doe-print-summary header{display:flex;align-items:flex-start;justify-content:space-between;gap:.25in;padding-bottom:.16in;border-bottom:1px solid #cbd5e1}.doe-print-summary p{margin:0 0 .05in;color:#475569;font-size:9pt;font-weight:800;text-transform:uppercase}.doe-print-summary h1{margin:0;color:#111827;font-size:19pt;line-height:1}.doe-print-summary dl{display:grid;grid-template-columns:repeat(2,minmax(1.2in,auto));gap:.14in;margin:0}.doe-print-summary dt{color:#64748b;font-size:7.5pt;font-weight:800;text-transform:uppercase}.doe-print-summary dd{margin:.03in 0 0;color:#111827;font-size:11pt;font-weight:900}.doe-print-summary .doe-summary-table-wrap{margin-top:.18in;overflow:visible;border:1px solid #cbd5e1;border-radius:0}.doe-print-summary .doe-summary-table{min-width:0;border-collapse:collapse}.doe-print-summary .doe-summary-table th,.doe-print-summary .doe-summary-table td{padding:.07in;border-bottom:1px solid #cbd5e1;font-size:9pt}.doe-print-summary .doe-summary-table th{color:#334155;background:#f1f5f9}.doe-print-summary .doe-summary-empty{margin-top:.18in;border:1px solid #cbd5e1}}.class-mode-shell .class-command-bar{display:flex;grid-template-columns:none;gap:8px;min-height:52px;padding:6px 8px;background:#fffaf0f0;border-color:var(--gk-border);border-radius:var(--gk-radius);box-shadow:var(--gk-shadow)}.class-mode-shell .class-command-bar{width:100%;max-width:100%;min-width:0;overflow:hidden}.class-mode-shell .class-title{gap:6px}.class-mode-shell .class-title{flex:0 1 auto}.class-mode-shell .class-app-icon{width:88px;height:32px}.class-mode-shell .class-app-icon img{width:86px;height:29px}.class-mode-shell .class-title h1{font-size:1rem}.class-mode-shell .class-title .eyebrow{display:none}.class-mode-shell .class-period-controls{gap:3px}.class-mode-shell .class-period-controls>button{width:30px;min-height:32px}.class-mode-shell .period-pills{grid-template-columns:repeat(6,30px);gap:3px}.class-mode-shell .period-pills button{min-height:32px}.class-mode-shell .class-live-tools{flex:1 1 auto;gap:5px;overflow-x:auto}.class-mode-shell .class-live-tools button{min-height:32px;padding:0 8px;font-size:.76rem}.class-mode-shell .view-switcher{gap:3px;padding:2px;flex:0 0 auto}.class-mode-shell .view-switcher button{min-height:28px;padding:0 7px}.class-mode-shell .class-mode-grid{gap:6px;padding-top:6px}.class-mode-shell .daily-workflow-panel{display:flex;grid-template-columns:none;gap:6px;margin-bottom:6px;padding:5px 7px;background:#fffaf0f0;border-color:var(--gk-border);border-radius:var(--gk-radius);box-shadow:0 6px 16px #1c1f3f1a}.class-mode-shell .daily-workflow-panel div{justify-content:flex-start}.class-mode-shell .daily-workflow-panel button{min-height:30px;padding:0 8px;font-size:.76rem}.class-mode-shell .random-picker-panel{margin-bottom:6px;padding:6px 8px;background:#fffaf0f0;border-color:var(--gk-border);border-radius:var(--gk-radius);box-shadow:0 6px 16px #1c1f3f1a}.class-mode-shell .random-picked-student h2{font-size:1rem}.class-mode-shell .class-mode-grid .seating-engine{height:calc(100vh - 184px);padding:8px}.class-mode-shell .class-mode-grid .seating-toolbar{margin-bottom:6px}.class-mode-shell .class-command-bar{justify-content:flex-start;overflow:visible}.class-mode-shell .class-command-bar>.save-status{margin-left:auto}.class-chart-zone{display:grid;grid-template-columns:210px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:6px 8px}.class-chart-zone>.daily-workflow-panel{grid-column:1;grid-row:1;display:grid;align-content:start;gap:8px;margin:0;padding:9px}.daily-workflow-panel h2{margin:0;color:var(--gk-navy);font-size:1rem}.daily-workflow-panel .class-tool-field{display:grid;grid-template-columns:1fr;gap:3px;color:#5e6174;font-size:.68rem;font-weight:900;text-transform:uppercase}.daily-workflow-panel .class-tool-field input{width:100%;min-height:30px;padding:0 7px}.daily-workflow-panel .class-tool-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.daily-workflow-panel .class-tool-buttons button,.daily-workflow-panel .class-tool-buttons .print-option{width:100%;min-width:0;min-height:30px;padding:3px 5px;justify-content:flex-start;overflow:hidden;font-size:.68rem;line-height:1.1}.class-chart-zone>.random-picker-panel{grid-column:1;grid-row:2;display:grid;grid-template-columns:1fr;align-content:start;gap:8px;margin:0;overflow:auto}.random-picker-options,.random-picker-history{flex-wrap:wrap;justify-content:flex-start}.class-chart-zone>.date-focus-banner{grid-column:2;grid-row:1;margin:0}.class-chart-zone>.seating-engine,.class-chart-zone>.seating-loading{grid-column:2;grid-row:2}.class-chart-zone:not(:has(>.date-focus-banner))>.seating-engine,.class-chart-zone:not(:has(>.date-focus-banner))>.seating-loading{grid-row:1 / span 2}.class-mode-shell .class-mode-grid .seating-engine{height:calc(100vh - 72px);min-height:640px}.class-mode-grid.is-room-setup .class-chart-zone{display:block}.seat-card.has-student .seat-card-back{grid-template-rows:minmax(22px,1fr) 20px 19px 18px;gap:2px}.seat-card.has-student .seat-card-back>span{position:relative;z-index:2;align-self:center;min-height:20px;color:#f2f7ff;font-size:.8rem;line-height:1.1}.seat-card.is-absent .seat-card-back>span{color:#4b075e;font-weight:950}.seat-card-back-actions{align-self:end}@media(max-width:800px){.class-chart-zone{grid-template-columns:180px minmax(520px,1fr)}.daily-workflow-panel .class-tool-buttons{grid-template-columns:1fr}}.class-mode-shell{padding:10px;background:linear-gradient(180deg,#e2f4f19e,#eff7e0b8),url(/assets/gokashi/class-background-2627.gif) center / cover fixed}.class-mode-shell .class-command-bar{min-height:58px;padding:7px 12px;background:#fffbf0f5;border:1px solid #c9bea5;box-shadow:0 8px 22px #232a4c1f}.class-mode-shell .class-app-icon{width:104px;height:36px}.class-mode-shell .class-app-icon img{width:102px;height:34px}.class-mode-shell .class-title h1{color:#1f2868;font-family:Chalkboard SE,Bradley Hand,ui-sans-serif,system-ui,sans-serif;font-size:1.15rem}.class-title-copy{min-width:0}.period-name-button,.period-name-editor button{display:inline-flex;align-items:center;justify-content:center;color:#20275f;background:transparent;border:0}.period-name-button{gap:6px;max-width:190px;min-height:30px;padding:0 4px;font-family:Chalkboard SE,Bradley Hand,ui-sans-serif,system-ui,sans-serif;font-size:1.15rem;font-weight:900}.period-name-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.period-name-button svg{flex:0 0 auto;opacity:.55}.period-name-button:hover svg,.period-name-button:focus-visible svg{opacity:1}.period-name-editor{display:flex;align-items:center;gap:4px}.period-name-editor input{width:min(190px,24vw);min-height:32px;padding:0 8px;color:#20275f;background:#fff;border:1px solid #d1b752;border-radius:7px;font-weight:900;outline:0}.period-name-editor button{width:30px;min-height:30px;color:#fff5c8;background:#34388a;border:1px solid #242765;border-radius:7px}.class-mode-shell .period-pills{grid-template-columns:repeat(6,38px);gap:5px}.class-mode-shell .period-pills button{min-height:38px;border-radius:9px;font-size:1rem;box-shadow:inset 0 -2px #0000001f}.class-mode-shell .class-period-controls>button{width:34px;min-height:38px}.gokashi-home-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:0 9px;color:#fff2b8;background:#34388a;border:1px solid #242765;border-radius:8px;box-shadow:inset 0 -2px #00000029;font-size:.76rem;font-weight:900;text-decoration:none}.gokashi-home-button:hover,.gokashi-home-button:focus-visible{color:#fff;background:#542278;border-color:#dcb746;outline:0}.class-command-bar>.save-status{padding:8px 12px;color:#315f50;background:#e7f3ed;border-color:#c8dfd3}.class-chart-zone{grid-template-columns:198px minmax(0,1fr);gap:10px 12px}.class-chart-zone>.daily-workflow-panel,.class-chart-zone>.random-picker-panel{background:#fffbf0f2;border:1px solid #cfc3aa;border-radius:11px;box-shadow:0 8px 22px #232a4c1a}.class-chart-zone>.daily-workflow-panel{gap:10px;padding:12px}.daily-workflow-panel h2{font-family:Chalkboard SE,Bradley Hand,ui-sans-serif,system-ui,sans-serif;font-size:1.2rem}.daily-workflow-panel .class-tool-field span,.class-tool-group h3{color:#67647a;font-size:.66rem;font-weight:950;letter-spacing:0;text-transform:uppercase}.daily-workflow-panel .class-tool-field input{min-height:34px;color:#252c59;background:#fffef8;border-color:#d9d2c2;font-weight:900}.daily-workflow-panel .class-tool-buttons{display:grid;grid-template-columns:1fr;gap:10px}.class-tool-group{display:grid;gap:5px;padding-top:9px;border-top:1px solid #ddd4c1}.class-tool-group:first-child{padding-top:0;border-top:0}.class-tool-group h3{margin:0}.class-tool-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.daily-workflow-panel .class-tool-group button,.daily-workflow-panel .class-tool-group .print-option{width:100%;min-height:34px;padding:4px 6px;color:#254f49;background:#fffef9;border:1px solid #d3cbb9;border-radius:8px;box-shadow:0 2px #352f200f;font-size:.7rem;font-weight:900}.daily-workflow-panel .class-tool-group.is-live button:first-child,.random-picker-options button:first-of-type{color:#fff;background:#245c53;border-color:#245c53}.class-tool-group.is-quiet button,.class-tool-group.is-quiet .print-option{color:#5d6170;background:#f7f4eb}.class-chart-zone>.random-picker-panel{gap:10px;padding:12px}.random-picked-student .eyebrow{color:#8d6a17}.random-picked-student h2{color:#20275f;font-family:Chalkboard SE,Bradley Hand,ui-sans-serif,system-ui,sans-serif;font-size:1.12rem}.class-mode-shell .class-mode-grid .seating-engine{padding:10px;background:#f9fdf8db;border:1px solid rgb(58 75 122 / 25%);border-radius:12px;box-shadow:0 14px 34px #232a4c21}.class-mode-grid .seating-toolbar h2{color:#20275f;font-family:Chalkboard SE,Bradley Hand,ui-sans-serif,system-ui,sans-serif;font-size:1.3rem}.classroom-stage{background:radial-gradient(circle at 50% 0%,rgb(255 255 255 / 78%),transparent 45%),linear-gradient(180deg,#f3fbf8,#eef7df);border-color:#34527b4d;border-radius:10px}.seat-card-face{border-width:1px;box-shadow:0 7px 15px #1a245d3d}.seat-card:hover .seat-card-face{box-shadow:0 10px 20px #1a245d4d;filter:saturate(1.06)}.seated-student{padding:2px 6px}.seated-student strong,.class-mode-grid .seating-engine.grid-6 .seated-student strong,.class-mode-grid .seating-engine.grid-7 .seated-student strong{font-size:1.22rem;line-height:1.02}.seated-student span,.class-mode-grid .seating-engine.grid-6 .seated-student span,.class-mode-grid .seating-engine.grid-7 .seated-student span{font-size:.8rem;line-height:1}.seat-card.is-absent .seat-card-face,.seat-card.is-absent .seat-card-back{border-color:#b54c72;box-shadow:0 8px 18px #95305445}.seat-card.is-late .seat-card-face,.seat-card.is-late .seat-card-back{border-color:#bc8626;box-shadow:0 8px 18px #a06f1b3d}.card-bottom-actions,.card-participation-strip{gap:4px}.card-details-button,.card-bottom-actions .homework-strip,.card-participation-strip button,.card-participation-strip span{border-radius:6px}@media(max-width:1050px){.class-chart-zone{grid-template-columns:184px minmax(650px,1fr)}.class-tool-group>div{grid-template-columns:1fr}}.daily-workflow-panel .class-tool-group button,.daily-workflow-panel .class-tool-group .print-option{min-height:38px;color:#fff0b4;background:#34388a;border-color:#242765;border-radius:10px;box-shadow:inset 0 -2px #0000002e,0 3px 7px #231e5329}.daily-workflow-panel .class-tool-group button:hover,.daily-workflow-panel .class-tool-group .print-option:hover{color:#fff;background:#454aa4;border-color:#e1b84f;transform:translateY(-1px)}.daily-workflow-panel .class-tool-group button:active{transform:translateY(1px);box-shadow:inset 0 2px 2px #0000002e}.daily-workflow-panel .class-tool-group.is-live button{color:#fff5c8;background:#542278;border-color:#3c1559}.daily-workflow-panel .class-tool-group.is-live button:hover{background:#6b2e91}.daily-workflow-panel .class-tool-group.is-quiet button,.daily-workflow-panel .class-tool-group.is-quiet .print-option{color:#e5e6ff;background:#292d6b;border-color:#202457}.daily-workflow-panel .class-tool-group.is-quiet .print-option{grid-column:1 / -1;justify-content:flex-start;padding-inline:12px}.random-picker-options button:first-of-type{min-height:42px;padding:0 14px;color:#fff2b8;background:#542278;border-color:#3c1559;border-radius:10px;font-size:.88rem}.picker-winner-overlay{position:fixed;inset:0;z-index:160;display:grid;place-items:center;width:100%;height:100%;padding:28px;color:inherit;background:#0c101fc2;border:0;border-radius:0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:picker-overlay-in .15s ease-out}.picker-winner-stage{position:relative;display:grid;place-items:center;width:min(760px,92vw);min-height:330px;padding:38px 52px;overflow:hidden;color:#fff8d6;background:radial-gradient(circle at 50% 0%,#252525,#050505 62%),#050505;border:6px solid #e5b84c;border-radius:18px;box-shadow:0 28px 80px #00000094,inset 0 0 0 2px #7e5c12;text-align:center;animation:picker-stage-in .22s ease-out}.picker-winner-stage small{color:#e5b84c;font-size:1rem;font-style:normal;font-weight:950;letter-spacing:0;text-transform:uppercase}.picker-winner-stage strong,.picker-winner-stage>span{display:block;max-width:100%;overflow-wrap:anywhere;font-family:Chalkboard SE,Bradley Hand,ui-sans-serif,system-ui,sans-serif;line-height:.96}.picker-winner-stage strong{margin-top:18px;color:#fff;font-size:4.6rem}.picker-winner-stage>span{color:#e5b84c;font-size:3rem}.picker-winner-stage em{margin-top:22px;font-size:2.4rem;font-style:normal}.picker-confetti{position:absolute;z-index:2;margin:0 0 390px 720px;font-size:3rem;transform:rotate(12deg)}@keyframes picker-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes picker-stage-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@media(max-width:700px){.picker-winner-stage{min-height:280px;padding:30px 24px}.picker-winner-stage strong{font-size:2.9rem}.picker-winner-stage>span{font-size:2.1rem}.picker-confetti{display:none}}@media(prefers-reduced-motion:reduce){.picker-winner-overlay,.picker-winner-stage{animation:none}.daily-workflow-panel .class-tool-group button{transform:none}}.seat-card.has-student .seat-card-front{grid-template-rows:minmax(0,1fr) auto}.seat-card.has-student .seat-card-back{grid-template-rows:minmax(28px,1fr) 20px auto}.seated-student{position:relative;display:grid;grid-template-rows:auto auto;align-content:center;min-height:0;padding:3px 7px 14px}.seated-student strong,.class-mode-grid .seating-engine.grid-6 .seated-student strong,.class-mode-grid .seating-engine.grid-7 .seated-student strong{display:block;width:100%;margin:0;font-size:1.18rem;line-height:1.02;text-align:center}.seated-student span,.class-mode-grid .seating-engine.grid-6 .seated-student span,.class-mode-grid .seating-engine.grid-7 .seated-student span{display:block;width:100%;margin:2px 0 0;font-size:.72rem;line-height:1;text-align:right}.seated-student small{position:absolute;bottom:1px;left:6px;margin:0}.card-attendance-code{position:absolute;right:5px;bottom:0;max-width:58%;overflow:hidden;padding:2px 5px;color:#31215d;background:#ffd969;border:1px solid #d9a929;border-radius:999px;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.56rem;font-weight:950;line-height:1;text-overflow:ellipsis;white-space:nowrap}.card-accommodations{display:block;width:100%;margin-top:3px;overflow:hidden;color:#fff2a8;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.52rem;font-style:normal;font-weight:900;line-height:1.1;text-align:center;text-overflow:ellipsis;white-space:nowrap}.seat-card.is-absent .card-accommodations,.seat-card.is-late .card-accommodations{color:#5b2255}.seat-card.is-neutral-day .card-attendance-code{color:#fff;background:#687080;border-color:#565d6b}.class-side-panel{padding:18px;color:#242744;background:#fffaf0;border:2px solid #d0b764}.class-side-panel .student-identity{grid-template-columns:minmax(0,1fr);margin:-18px -18px 14px;padding:18px 52px 16px 18px;color:#fff5c8;background:linear-gradient(135deg,#20275f,#34388a);border-bottom:3px solid #e5b84c;border-radius:8px 8px 0 0}.class-side-panel .student-identity .eyebrow,.class-side-panel .student-identity h2{color:#fff5c8}.class-side-panel .student-identity h2{margin:2px 0 0;font-family:Chalkboard SE,Bradley Hand,ui-sans-serif,system-ui,sans-serif;font-size:1.65rem}.class-side-panel .status-grid{gap:8px;margin-bottom:12px}.class-side-panel .status-grid>div{background:#fffef8;border-color:#ddd2b7;border-radius:8px;box-shadow:0 3px 8px #28264312}.attendance-code-picker{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(220px,1.2fr);gap:12px;align-items:center;margin:0 0 12px;padding:11px 12px;background:#fff4cf;border:1px solid #e0c66e;border-radius:9px}.attendance-code-picker h3,.attendance-code-picker span{margin:0}.attendance-code-picker h3{color:#20275f;font-size:.92rem}.attendance-code-picker span{display:block;margin-top:2px;color:#76652f;font-size:.74rem;font-weight:850}.attendance-code-picker select{width:100%;min-height:38px;padding:0 9px;color:#20275f;background:#fff;border:1px solid #cbb45f;border-radius:8px;font-weight:900}.class-side-panel .quick-actions,.class-side-panel .student-notes-panel,.class-side-panel .contact-panel,.class-side-panel .schedule-panel,.class-side-panel .correction-panel{padding:12px;background:#fffef9;border:1px solid #ddd2b7;border-radius:9px}.class-side-panel .quick-actions h3,.class-side-panel .student-notes-panel h3,.class-side-panel .contact-panel h3{color:#20275f;font-size:1rem}.class-side-panel .action-grid button{min-height:38px;color:#292d6b;background:#f8f4e9;border-color:#d7ccb3;border-radius:8px}.class-side-panel .action-grid button:hover{color:#fff5c8;background:#34388a;border-color:#34388a}.class-side-panel .future-panel{opacity:.65}@media(max-width:640px){.attendance-code-picker{grid-template-columns:1fr}}
