@charset "UTF-8";.timetable:has(.staff-candidate-list){min-width:1050px}.staff-candidate-header{display:grid;grid-template-columns:18px minmax(50px,1fr) minmax(65px,1fr) minmax(35px,.65fr);gap:7px;padding:5px 7px 9px;font-size:8px;color:#90a4b3;border-bottom:1px solid #e1eaf2}.timetable.support-input-mode .lesson-chip.staff-candidate-row{display:grid;grid-template-columns:18px minmax(50px,1fr) minmax(65px,1fr) minmax(35px,.65fr);gap:7px;align-items:center;padding:9px 7px;text-align:left}.staff-candidate-row .support-card-check{position:static}.staff-candidate-name,.staff-candidate-location{font-size:10px;line-height:1.65;overflow-wrap:anywhere}.staff-candidate-row strong{font-size:10px;font-weight:600;color:inherit;overflow-wrap:anywhere}.staff-candidate-row small{display:block;font-size:8px;margin-top:4px}.support-review-message{margin:15px 0;padding:12px;background:#fff7ed;border:1px solid #f0e0ce;border-radius:7px;color:#a17f53;font-size:12px}@media print{.staff-candidate-header{display:none!important}}.special-class-switch{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 0 12px;align-items:center}.special-class-tabs{display:flex;gap:7px;flex-wrap:wrap}.special-class-tabs button{background:#fff;border:1px solid #dce6df;padding:10px 13px;font-size:12px;color:#819888}.special-class-tabs button[aria-selected=true]{background:#e5f1e9;border-color:#8eb79e;color:#276c47}.special-class-tabs span{margin-left:4px;color:#9eb1a4;font-size:10px}.special-class-switch>.inline>button{padding:8px 10px;font-size:10px}.special-class-context{font-size:11px;color:#83978a;margin:0 0 18px}.panel .special-class-switch{padding:16px 15px 0}.panel .special-class-context{padding:0 15px;margin-bottom:8px}.read-only-label{color:#719580;background:#eef5f0;font-size:10px;padding:9px 14px;border:1px solid #e2ece5;border-radius:6px;margin-bottom:13px}.panel .read-only-label{margin:8px 15px 0}.timetable.compact .lesson-card{margin:4px 0}.timetable.compact .lesson-card>div.lesson-chip{cursor:default}@media print{.special-class-switch,.read-only-label{display:none!important}.special-class-context{display:block;color:#333;font-size:12px}}.timetable.support-input-mode .lesson-chip{position:relative;padding-left:29px;min-height:42px;cursor:pointer;border-top:1px solid #dce8f1;border-right:1px solid #dce8f1;border-bottom:1px solid #dce8f1;transition:background .12s,box-shadow .12s}.support-input-mode .lesson-chip:hover{background:#eaf3fa}.support-input-mode .lesson-chip.support-checked{background:#d3e7f6;color:#285e83;border-top-color:#8db8d5;border-right-color:#8db8d5;border-bottom-color:#8db8d5;box-shadow:inset 0 0 0 1px #a1c5dd}.support-input-mode .lesson-chip.support-checked small{color:#5c829a}.support-card-check{display:grid;place-items:center;position:absolute;left:7px;top:10px;width:15px;height:15px;border:1.5px solid #aac2d4;border-radius:3px;background:#fff;color:#fff}.support-card-check.checked{border-color:#397eae;background:#397eae}.support-choice-content{display:block}.support-inline-students{display:flex;flex-direction:column;gap:6px}.support-shared-setting input{width:16px;height:16px;accent-color:#397eae}.support-input-mode .support-lesson-class{margin-top:4px}.support-input-toggle{font-size:11px}.support-input-toggle.active{background:#e7f0fa;color:#4c7fa8;border-color:#a9c4da}.support-palette{margin:12px 14px;padding:14px 16px;border:1px solid #cddfed;border-radius:8px;background:#f0f6fb;color:#6085a2}.support-mode-label{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600}.support-palette label{display:flex;align-items:center;gap:10px;font-size:11px}.support-palette select{padding:7px 10px;font-size:12px;border-color:#d1dfeb}.support-palette .icon-button{margin-left:auto}.support-palette p{font-size:10px;margin-top:10px;color:#829daf;line-height:1.9}.support-input-mode .support-input-cell{cursor:pointer;background:#f8fbfe;transition:background .15s}.support-input-mode .support-input-cell:hover{background:#eaf3fb;outline:2px solid #a3c3dd;outline-offset:-2px}.support-cell-button{display:flex;width:100%;margin:7px 0 3px;padding:7px 4px;border:1px dashed #b3cbdc;border-radius:5px;background:#eff6fc;color:#6b94b1;font-size:9px}.support-cell-button.assigned{color:#417b9f;background:#deedf8;border-style:solid}.support-location{margin:0 0 20px;font-size:12px}.support-student-list{display:flex;flex-direction:column;gap:0;border:1px solid #e1e8e3;border-radius:8px;max-height:290px;overflow:auto;padding:4px 14px}.support-student-list .check{padding:10px 0;margin:0;border-bottom:1px solid #edf1ee;gap:10px}.support-student-list .check:last-child{border-bottom:0}.support-student-list b{font-size:12px}.support-student-list small{display:block;margin-top:3px;color:#90a094;font-size:10px}.support-student-list .misplaced small{color:#bb8767}.support-student-list>p{padding:15px 0;font-size:11px}.lesson-support{display:flex;gap:3px;flex-wrap:wrap;margin:4px 2px}.lesson-support>span{display:inline-flex;align-items:center;gap:3px;font-size:8px;color:#6791a5;background:#edf5fa;padding:3px 4px;border-radius:4px}.lesson-support i{font-style:normal;border-left:1px solid #c9dce6;padding-left:3px;font-size:7px;color:#8ba7b7}@media(max-width:640px){.support-palette{padding:12px;margin:10px}.support-palette label{flex-wrap:wrap}.support-cell-button{min-height:35px}}@media print{.support-input-toggle,.support-palette,.support-cell-button{display:none!important}.support-input-mode .support-input-cell{background:#fff}.lesson-support>span{color:#444}}.lesson-card{margin:5px 0 9px;border-radius:5px}.cancelled-lessons{margin-top:9px;color:#a0afa4;font-size:9px}.cancelled-lessons summary{cursor:pointer;line-height:1.8}.cancelled-lessons button{display:flex;margin:5px 0;padding:4px 5px;font-size:9px;background:#f6f8f6}.lesson-card[draggable=true],.lesson-card[draggable=true] .lesson-chip{cursor:grab}.lesson-card[draggable=true]:active{cursor:grabbing}.lesson-card.is-dragging{opacity:.4}.lesson-card .lesson-chip{margin:0}.lesson-tools{display:flex;align-items:center;justify-content:flex-end;gap:2px;flex-wrap:wrap;padding-top:3px}.lesson-tools button{background:transparent;border:0;color:#8ca396;padding:3px 4px;gap:3px;font-size:9px;font-weight:400}.lesson-tools button:hover{background:#edf4ef;color:#176553}.cell-add{display:flex;width:100%;margin-top:7px;border:1px dashed #dce7df;background:transparent;padding:5px 3px;color:#8fa697;font-size:9px;font-weight:400}.timetable td.drop-target{background:#e6f3eb;outline:2px solid #73aa89;outline-offset:-2px}.timetable td.drop-blocked{background:#fff3ec;outline:2px solid #d3a28a;outline-offset:-2px}.timetable-undo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 16px;background:#eaf4ef;color:#5a8269;font-size:11px;border-top:1px solid #dfeae3}.timetable-undo button{padding:5px 8px;font-size:10px}.timetable-undo .icon-button{margin-left:auto}.timetable-edit-hint{padding:0 16px 12px;font-size:10px;color:#90a394;line-height:1.8}@media(pointer:coarse){.lesson-tools button{min-height:32px;padding:6px}.cell-add{min-height:34px}}@media print{.lesson-tools,.cell-add,.cancelled-lessons,.timetable-undo,.timetable-edit-hint{display:none!important}.lesson-card{margin-bottom:4px}}:root{font-family:Pretendard,Noto Sans KR,Malgun Gothic,-apple-system,BlinkMacSystemFont,sans-serif;color:#263e38;background:#f5f7f6;font-synthesis:none;font-size:14px;--green: #176553;--line: #e4ebe7;--muted: #7a8983;--shadow: 0 3px 14px #1c443405}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dce5df;border-radius:8px;padding:9px 13px;background:#fff;color:#465c52;font-weight:600;transition:background .16s,border-color .16s}button:hover{background:#edf4ef;border-color:#abc5b7}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #85bfa5;outline-offset:2px}h1,h2,h3,p{margin:0}h1{font-size:29px;letter-spacing:-1.1px;line-height:1.5}h2{font-size:18px;letter-spacing:-.5px}h3{font-size:15px;letter-spacing:-.3px}p{color:#74847c;line-height:1.75}small{font-size:11px}b,strong{font-weight:650}input,select,textarea{border:1px solid #dce4df;border-radius:7px;padding:10px 11px;background:#fff;color:#344c41;max-width:100%}textarea{min-height:76px;resize:vertical}input[type=checkbox]{width:16px;height:16px;accent-color:var(--green);flex-shrink:0}input[type=color]{height:40px;width:70px;padding:4px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.primary{background:var(--green);color:#fff;border-color:var(--green)}.primary:hover{background:#104b3d;border-color:#104b3d}.danger{color:#ad514b}.text-button{border:0;background:transparent;padding:5px 0;color:var(--green);font-size:12px}.text-button:hover{background:transparent;text-decoration:underline}.icon-button{padding:5px;border:0;background:transparent}.inline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.grow{flex:1;min-width:0}.muted{color:var(--muted);font-size:12px}.app-shell{display:flex;min-height:100vh}.sidebar{width:246px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:30;padding:28px 17px 17px}.brand{display:flex;align-items:center;gap:11px;padding:0 11px 25px}.brand-icon{width:42px;height:44px;border-radius:12px;background:var(--green);color:#fff;display:grid;place-items:center}.brand b{font-size:26px;letter-spacing:1px;display:flex;align-items:center;gap:9px;line-height:1.3}.brand b span{font-size:10px;color:#8ba295;letter-spacing:1.4px}.brand small{font-size:10px;color:#84948b;display:block;margin-top:3px}.workspace{border:1px solid var(--line);border-radius:9px;padding:11px 9px;display:flex;gap:9px;align-items:center;background:#fafcfb;margin-bottom:17px}.school-icon{display:grid;place-items:center;width:30px;height:34px;color:#668c7b}.workspace b{display:block;font-size:11px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace small{display:block;color:#8c9c93;font-size:10px;margin-top:4px}.sidebar nav{overflow-y:auto;scrollbar-width:thin;flex:1}.nav-group{font-size:10px;color:#a0ada5;font-weight:600;padding:12px 14px 7px;letter-spacing:.4px}.sidebar nav button{width:100%;justify-content:flex-start;gap:11px;border:0;font-size:12px;padding:10px 13px;margin:1px 0;font-weight:500;color:#718378;background:transparent}.sidebar nav button svg{stroke-width:1.6}.sidebar nav button:hover{background:#f6f9f7}.sidebar nav button.active{background:#eaf4ee;color:#176553;font-weight:700}.nav-dot{margin-left:auto;border-radius:50%;width:6px;height:6px;background:#cd9c48}.sidebar-bottom{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding:17px 5px 2px;margin-top:14px;color:#82948a}.sidebar-bottom b{font-size:10px;font-weight:600;color:#688273;display:block}.sidebar-bottom small{font-size:9px;display:block;margin-top:4px}.sidebar-bottom svg{margin-left:auto}.local-dot{height:6px;width:6px;border-radius:50%;background:#469772;display:inline-block;flex-shrink:0}.main-shell{margin-left:246px;width:calc(100% - 246px)}.topbar{height:67px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 36px;font-size:11px;color:#89978f;gap:12px}.topbar b{color:#5e7366;font-size:11px;font-weight:500}.top-status{color:#72887a;font-size:10px}.status{display:flex;gap:6px;align-items:center;color:#6c8e7c}.top-divider{height:16px;width:1px;background:var(--line);margin:0 7px}.teacher-avatar{width:27px;height:27px;border-radius:50%;background:#e7eee9;display:grid;place-items:center;color:#6b8575;font-weight:700}main{max-width:1710px;margin:0 auto;padding:30px 36px}.page-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.eyebrow{font-size:10px;letter-spacing:.6px;color:#698977;margin-bottom:4px}.page-title p{font-size:12px;margin-top:5px}.page-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.page-actions button{font-size:11px}.local-label{display:flex;gap:6px;align-items:center;font-size:10px;color:#75937f;background:#e9f3ed;border:1px solid #dfece3;padding:6px 8px;border-radius:5px}.demo-banner{background:#edf3f8;color:#647f93;border:1px solid #dde8f0;padding:10px 14px;border-radius:7px;display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:12px;margin-bottom:22px}.demo-banner button{border:0;background:transparent;color:#5f7c90;font-size:10px;padding:0}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:28px}.stat-card{display:block;text-align:left;border:1px solid var(--line);border-radius:11px;background:#fff;padding:19px 20px;box-shadow:var(--shadow)}.stat-card:hover{background:#fff;border-color:#96baa5;transform:translateY(-1px)}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px;color:#7c8d81}.stat-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px}.stat-icon.green{color:#41886c;background:#edf5ef}.stat-icon.blue{color:#6b91bb;background:#edf3fa}.stat-icon.purple{color:#9b7fb7;background:#f3eef8}.stat-icon.orange{color:#cc9b5b;background:#fcf3e8}.stat-number{font-size:31px;font-weight:600;color:#2e4c3c;margin:3px 0 13px;letter-spacing:-1px;line-height:1.2}.stat-number small{font-size:12px;color:#7d9083;font-weight:400;letter-spacing:0;margin-left:7px}.stat-bottom{border-top:1px solid #f0f3f0;padding-top:12px;display:flex;justify-content:space-between;font-size:10px;color:#99a59c;font-weight:400}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:24px}.dashboard-aside{display:flex;flex-direction:column;gap:18px;padding-top:65px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 17px}.section-head p{font-size:11px;margin-top:5px}.section-head h2,.section-head h3{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.panel{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);overflow:hidden}.schedule-section{min-width:0}.schedule-section>.section-head{height:48px;align-items:flex-start}.count{font-size:11px;background:#edf4ef;color:#608872;padding:3px 7px;border-radius:5px;font-weight:600}.badge{display:inline-flex;font-size:10px;align-items:center;color:#87968d;background:#f1f4f2;border-radius:4px;padding:4px 7px;white-space:nowrap;font-weight:500}.badge.green{background:#eaf4ec;color:#4b8b68}.badge.amber{background:#fbf1df;color:#b68a45}.checklist{padding:20px 17px 10px}.checklist .section-head{margin-bottom:12px}.checklist-row{border:0;background:transparent;padding:12px 0;width:100%;justify-content:flex-start;text-align:left;font-weight:400;gap:9px;border-bottom:1px solid #f2f5f2;border-radius:0}.checklist-row:last-child{border-bottom:0}.checklist-row>svg{color:#becbc2;margin-left:auto}.checklist-row b{font-size:11px;color:#5b7664;display:block}.checklist-row small{font-size:9px;color:#9ba99f;display:block;margin-top:5px}.step{display:grid;place-items:center;border:1px solid #e0e9e2;background:#f7f9f7;border-radius:50%;width:24px;height:24px;font-size:10px;color:#8ba491}.step.done{background:#eaf4ec;color:#75a58b;border-color:#d9eadd}.backup-reminder{background:#eaf3ed;border:1px solid #dfece3;border-radius:11px;padding:21px;color:#4d896b}.backup-reminder>svg{stroke-width:1.4;margin-bottom:13px}.backup-reminder h3{font-size:13px;color:#48705a}.backup-reminder p{font-size:10px;color:#81998b;margin:10px 0 15px;line-height:1.9}.backup-reminder button{font-size:10px;background:#fff;border-color:#dce9df;color:#71917e;width:100%;justify-content:space-between}.review-summary{padding:20px}.review-summary h3{font-size:12px;margin:9px 0}.review-summary p{font-size:10px;line-height:1.9}.review-summary button{margin-top:12px;font-size:10px}.amber-text{color:#bd985b}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:17px 0;flex-wrap:wrap}.timetable-toolbar{padding:0 16px}.segment{display:flex;gap:1px;background:#eef2ef;padding:3px;border-radius:7px}.segment button{font-size:11px;padding:6px 11px;border:0;background:transparent;color:#92a196;border-radius:5px;min-width:31px}.segment button.active{background:#fff;color:#3e7255;box-shadow:0 1px 4px #1b3a2110}.legend-dot{height:6px;width:6px;background:#87b79c;border-radius:50%;display:inline-block}.legend-dot.general{background:#c4cdd0}.toolbar small{font-size:9px;color:#94a297}.table-scroll{overflow-x:auto;max-width:100%}.timetable-wrap{background:#fff;border:1px solid var(--line);border-radius:8px}.panel .timetable-wrap{border-right:0;border-left:0;border-radius:0}.timetable{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.timetable th{font-weight:600}.timetable thead th{background:#f7faf8;color:#5f7b67;padding:16px 7px;border-right:1px solid #e7eee8;border-bottom:1px solid var(--line);text-align:center}.timetable thead th:last-child{border-right:0}.timetable thead th span{display:block}.timetable thead th small{display:block;color:#a3b0a5;font-size:9px;font-weight:400;margin-top:6px}.timetable .period-col{width:46px;background:#fafcfb;text-align:center;color:#83988a;padding:10px 0}.period-col b{display:block;font-size:15px;font-weight:500}.period-col small{display:block;font-size:8px;color:#adbaaf;margin-top:4px}.timetable td{border-right:1px solid #e7eee8;border-bottom:1px solid var(--line);padding:9px 7px;vertical-align:top;height:115px}.timetable td:last-child{border-right:0}.timetable tbody th{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.timetable tr:last-child td,.timetable tr:last-child th{border-bottom:0}.lesson-chip{width:100%;border:0;border-left:3px solid #76ab8c;border-radius:4px;display:block;text-align:left;background:#eff5f0;padding:8px 7px;margin:4px 0;color:#5c7864;font-size:10px;font-weight:400}.lesson-chip:hover{background:#e5efe8;border-left-width:3px}.lesson-chip.general{background:#f2f4f5;color:#839096}.lesson-chip.conflict{background:#fff0e9;color:#b47b5b}.lesson-title{display:flex;align-items:center;gap:4px;flex-wrap:wrap;line-height:1.5}.lesson-title b{margin-left:auto;color:inherit;font-size:10px;font-weight:500}.lesson-chip small{font-size:8px;display:block;color:#92a498;margin-top:5px;line-height:1.6}.cell-meta{display:flex;gap:3px;align-items:center;color:#a0b0a3;font-size:8px;justify-content:flex-end;margin-bottom:4px}.cell-empty{display:block;font-size:9px;color:#c1cbc4;text-align:center;padding:30px 0}.table-caption{padding:13px 16px;display:flex;align-items:center;gap:6px;font-size:9px;color:#9aab9e;flex-wrap:wrap}.table-caption small{font-size:9px}.compact td{padding:7px 5px;height:101px}.compact .lesson-chip{font-size:9px;padding:7px 5px}.compact .lesson-title b{font-size:9px}.table-caption svg{flex-shrink:0}.placement-tile{background:#edf4f5;border:1px solid #e1ebed;border-radius:5px;padding:10px;font-size:11px;color:#60838b;margin:3px 0}.placement-tile b,.placement-tile span,.placement-tile small{display:block;line-height:1.7}.placement-tile small{font-size:9px;color:#94a7ac}.page-footer{display:flex;justify-content:space-between;font-size:9px;color:#adb8b0;border-top:1px solid var(--line);padding-top:20px;margin-top:35px;gap:15px;flex-wrap:wrap}.notice{display:flex;align-items:center;gap:10px;background:#edf5ef;border:1px solid #dfebe1;padding:13px 15px;color:#62846d;border-radius:7px;font-size:11px;line-height:1.8;margin-bottom:18px}.notice svg{flex-shrink:0}.notice span{flex:1}.notice button{font-size:10px;white-space:nowrap}.notice.amber{background:#fdf6e9;border-color:#f0e5cc;color:#ab8a55}.welcome{display:flex;justify-content:space-between;gap:20px;padding:30px;background:#e9f1eb;border:1px solid #dce7df;border-radius:12px;margin-bottom:24px;overflow:hidden}.welcome .badge{background:#fff9}.welcome h2{font-size:26px;color:#335f45;line-height:1.65;margin:12px 0}.welcome p{font-size:12px;color:#7b9482;line-height:1.9}.welcome .inline{margin-top:20px}.welcome button{font-size:12px}.welcome-graphic{align-self:center;min-width:220px;width:260px;transform:rotate(-5deg);padding:18px;background:#fff;border:1px solid #d4e2d8;box-shadow:0 14px 30px #53775a12;border-radius:10px;margin-right:15px}.graphic-bar{height:8px;width:45%;background:#cbded0;border-radius:5px;margin-bottom:17px}.graphic-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.graphic-grid i{height:35px;background:#edf3ef;border-radius:4px;border-left:3px solid #b8d5bf}.graphic-grid .g1{background:#edf2f9;border-color:#bdcfe8}.graphic-grid .g2{background:#faf2e7;border-color:#e6d3b6}.graphic-grid .g3{background:#f2edf8;border-color:#d4c5e5}.welcome-graphic>span{display:flex;align-items:center;gap:6px;margin-top:16px;font-size:10px;color:#84a18c}.empty{text-align:center;padding:55px 20px;color:#96a59a}.empty-mark{display:inline-grid;place-items:center;width:47px;height:47px;border:1px solid #e1e9e3;background:#f3f7f4;border-radius:13px;color:#8fab95;margin-bottom:17px}.empty h3{color:#5d7b65;margin-bottom:10px;font-size:15px}.empty p{font-size:12px;margin:0 auto 20px;max-width:500px}.empty button{font-size:12px}.student-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.student-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px;box-shadow:var(--shadow)}.avatar{width:43px;height:43px;border-radius:12px;display:inline-grid;place-items:center;background:#edf4ef;color:#6f987d;font-size:18px;font-weight:600}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.row-actions{display:flex;gap:3px}.row-actions button{border:0;background:transparent;padding:5px;color:#a0afa5}.student-card h3{font-size:17px;margin-bottom:5px}.student-card p{font-size:12px}.student-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:18px 0 15px;border-top:1px solid #edf1ee;padding-top:15px;flex-wrap:wrap}.student-meta>span:first-child{display:flex;gap:5px;font-size:10px;color:#819788;align-items:center}.student-card>small{font-size:10px}.list{display:flex;flex-direction:column;gap:12px}.rule-card{display:flex;align-items:center;gap:15px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:20px}.rule-card h3{font-size:14px}.rule-card p{font-size:11px;margin-top:7px}.rule-card button{font-size:11px}.rule-icon{display:grid;place-items:center;flex-shrink:0;background:#eff5f0;color:#80a28a;border-radius:10px;width:40px;height:40px}.staff-strip{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:24px}.staff-strip article{display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;padding:15px;gap:10px}.staff-strip b{font-size:12px}.staff-strip small{display:block;color:#92a296;font-size:10px;margin-top:6px}.staff-strip button{border:0;padding:5px;color:#9cac9e}.data-table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.data-table th{padding:15px;text-align:left;background:#f8faf8;color:#819384;font-size:11px;font-weight:500}.data-table td{padding:17px 15px;border-top:1px solid var(--line);color:#6d8374}.data-table td b{color:#4d6a57}.data-table button{padding:6px}.upload-zone{border:1.5px dashed #a5c3af;border-radius:12px;text-align:center;padding:43px 20px;background:#f1f7f3}.upload-icon{display:inline-grid;place-items:center;width:72px;height:72px;border-radius:20px;background:#e4f0e8;color:#6c9a7d;margin-bottom:22px}.upload-zone h2{font-size:19px;color:#52765e}.upload-zone p{margin:11px 0 21px;font-size:12px;color:#99ab9d}.upload-zone>small{display:flex;align-items:center;justify-content:center;gap:5px;color:#91a899;font-size:10px;margin-top:23px}.import-help{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:28px 0}.import-help article{padding:5px 12px}.step-number{font-size:10px;color:#8da995;font-weight:600}.import-help h3{font-size:13px;margin:10px 0 8px}.import-help p{font-size:11px;color:#96a69a}.class-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.class-card{padding:19px;display:flex;align-items:center;gap:12px}.class-card h3{font-size:13px}.class-card p{font-size:10px;margin-top:5px}.class-card button{padding:6px;border:0;color:#92a89a}.file-icon{color:#82a28c;background:#edf5ef;border-radius:8px;padding:10px}.review-tabs{display:flex;gap:10px;overflow:auto;margin:15px 0}.review-tabs button{justify-content:space-between;gap:20px;font-size:12px;min-width:150px}.review-tabs button.active{background:#edf5ef;border-color:#88ac93;color:var(--green)}.review-tabs span{font-size:9px;color:#9aab9f}.review-panel{padding:25px}.edit-grid{width:100%;border-collapse:collapse;table-layout:fixed;min-width:550px}.edit-grid th{background:#f5f8f6;padding:13px;font-size:12px;color:#799181;font-weight:500}.edit-grid td{border:1px solid var(--line);padding:4px}.edit-grid th:first-child{width:50px}.edit-grid input{width:100%;border:0;padding:12px 8px;text-align:center;font-size:12px}.review-panel>.section-head{margin-top:25px}.diff-list{max-height:200px;overflow:auto;border:1px solid var(--line);border-radius:7px}.diff-list>div{display:flex;gap:16px;padding:11px 15px;border-bottom:1px solid #f1f4f1;font-size:11px;align-items:center}.diff-list b{color:#81998a;min-width:65px}.diff-list span{color:#abb6ae;min-width:60px}.diff-list strong{color:#61886c}.diff-list p{padding:15px}.approval-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;bottom:12px;background:#fff;box-shadow:0 5px 25px #143f2910;padding:17px 20px;margin-top:20px;border:1px solid var(--line);border-radius:10px}.approval-bar button{font-size:12px;white-space:nowrap}.check{display:flex;align-items:center;gap:8px;font-size:12px;color:#708575;margin:16px 0;line-height:1.8}.check input{padding:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px;margin:0 0 20px;min-width:0}.field>span{font-size:12px;font-weight:600;color:#63806b}.field small{font-size:10px;color:#9baa9e;font-weight:400;line-height:1.8}.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea{width:100%}.field input[type=color]{width:70px}.form-actions{display:flex;gap:10px;justify-content:flex-end;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.checkbox-list{display:flex;flex-wrap:wrap;gap:4px 19px;border:1px solid var(--line);border-radius:7px;padding:10px 14px}.folder-panel,.ai-entry{padding:22px;margin-bottom:20px}.ai-entry .section-head{gap:12px;align-items:start;flex-wrap:wrap}.ai-entry .muted{font-size:12px}.modal:has(.ai-edit-canvas){width:900px}.ai-editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}.ai-editor-toolbar button[aria-pressed=true]{background:#e4f3ea;border-color:#267453;color:#205d41}.ai-edit-canvas{display:block;max-width:100%;height:auto;border:1px solid var(--line);cursor:crosshair;touch-action:none;margin:12px auto}.ai-rect-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.ai-rect-fields input{width:100%}.ai-prepared-preview{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.ai-prepared-preview img{display:block;max-width:100%;height:auto;margin:12px auto;border:1px solid var(--line)}.compact-pdf-preview{display:block;width:100%;height:auto;margin:16px 0;border:1px solid var(--line)}.notice.recognition-empty{display:block}.recognition-empty strong,.recognition-empty span{display:block;line-height:1.8}.modal:has(.compact-pdf-preview){width:1100px}.folder-panel .section-head{align-items:start;gap:16px}.folder-panel .section-head>div{min-width:0}.folder-panel .section-head>button{flex-shrink:0}.folder-panel .muted{font-size:12px;margin:8px 0}.folder-connection{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:14px 0}.folder-connection>b{overflow-wrap:anywhere}.folder-results article{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 0;border-top:1px solid var(--line)}.folder-results article>div{flex:1 1 200px;min-width:0;overflow-wrap:anywhere}.folder-results small{display:block;color:#63776b;margin-top:4px;line-height:1.7}@media(max-width:600px){.folder-panel .section-head{flex-direction:column}}.checkbox-list .check{margin:4px 0}.student-chip-field{border:0;padding:0;margin:0 0 20px;min-width:0}.student-chip-field legend{font-size:12px;font-weight:600;color:#63806b;margin-bottom:8px}.student-chip-field>p{font-size:12px;margin-bottom:10px}.student-chip-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:9px}.selection-chip{display:flex;align-items:center;gap:9px;min-width:0;min-height:64px;padding:10px 12px;border:1px solid #d6e1da;border-radius:10px;background:#f8faf9;color:#344c41;cursor:pointer}.selection-chip:hover{border-color:#70a48d;background:#eff7f2}.selection-chip.selected{border-color:#267453;background:#e4f3ea;box-shadow:inset 0 0 0 1px #267453}.selection-chip:focus-within{outline:3px solid #85bfa5;outline-offset:2px}.selection-chip input[type=checkbox]{width:17px;height:17px;margin:0;padding:0;flex:0 0 17px}.selection-chip>span:first-of-type{min-width:0;flex:1}.selection-chip strong{display:block;font-size:14px;line-height:1.5;word-break:keep-all;overflow-wrap:anywhere}.selection-chip small{display:block;font-size:11px;line-height:1.6;color:#62786b;word-break:keep-all;overflow-wrap:anywhere}.selection-chip-status{flex:0 0 20px;color:#688073;text-align:center;font-weight:700}.selection-chip.selected .selection-chip-status{color:#19623f}.check:has(input:checked){color:#205d41}.slot-picker{display:grid;grid-template-columns:40px repeat(5,1fr);gap:5px;background:#f7faf8;padding:12px;border:1px solid var(--line);border-radius:8px}.slot-picker>b{font-size:10px;text-align:center;color:#8ea797;padding:3px}.slot-row{display:contents}.slot-row small{display:grid;place-items:center;font-size:9px;color:#9aac9e}.slot-row button{height:31px;padding:3px;color:#c2cdc5;font-size:13px}.slot-row button.selected{background:#dfeee4;border-color:#a6c7b2;color:#4b8b63}.modal-shade{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#172e2766;display:flex;align-items:center;justify-content:center;padding:25px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{width:560px;max-width:100%;max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:26px;box-shadow:0 20px 70px #152e2533}.modal>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.modal h2{font-size:19px}.modal form{margin:0}.modal input,.modal select,.modal textarea{font-size:13px}.toast{position:fixed;bottom:27px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:10px;padding:15px 18px;border:1px solid #d4e5d9;background:#fff;color:#487d5c;box-shadow:0 8px 35px #18382422;border-radius:10px;max-width:calc(100vw - 35px);font-size:12px;min-width:300px}.toast.error{color:#ac6749;border-color:#eedac9;background:#fff9f2}.toast>svg{flex-shrink:0}.toast button{margin-left:auto;border:0;background:transparent;padding:3px;color:inherit}.backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}.backup-card{padding:30px;display:flex;flex-direction:column;align-items:flex-start}.feature-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:#edf5ee;color:#7fa98c;margin-bottom:20px}.feature-icon.blue{background:#edf2f9;color:#8aa7c7}.backup-card h2{font-size:19px;margin-bottom:12px}.backup-card p{font-size:12px;min-height:65px}.backup-card button{margin-top:19px;font-size:12px}.backup-card small{font-size:10px;color:#9faf9f;margin-top:17px;line-height:1.8}.history-list{padding:0 22px}.history-list article{display:flex;align-items:center;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}.history-list article:last-child{border:0}.history-dot{width:8px;height:8px;border:2px solid #9ebda8;border-radius:50%;background:#eff5f1}.history-list b{font-size:12px;color:#5c7b66}.history-list small{display:block;color:#9aaa9e;font-size:10px;margin-top:6px}.history-list button{font-size:11px}.restore-summary{padding:20px;background:#f7faf8;border:1px solid var(--line);border-radius:8px;margin:20px 0}.restore-summary p{font-size:12px;margin-top:7px}.restore-summary small{display:block;color:#96a89c;margin-top:10px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}.settings-panel{padding:26px;margin-bottom:20px}.settings-panel h3{margin-bottom:24px}.settings-panel p{font-size:11px;margin:16px 0}.settings-panel button{font-size:12px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:22px 0;font-size:11px}.setting-row b{color:#6a8472}.setting-row>span{color:#9bad9f}.issue-list{display:flex;flex-direction:column;gap:12px}.issue-card{display:flex;align-items:center;gap:15px;padding:19px;background:#fff;border:1px solid var(--line);border-radius:9px;color:#bd9d65}.issue-card.error{color:#bd8068;border-color:#edddd2}.issue-card p{font-size:12px;margin-top:8px;color:#819586}.issue-card button{font-size:11px;white-space:nowrap}.fatal{max-width:600px;min-height:80vh;margin:auto;padding:35px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:23px;text-align:center;color:#60876d}.fatal p{font-size:13px}.mobile-only{display:none}.week-button{background:#fff;color:#668770;font-size:11px}.week-button span{font-size:9px;color:#9cb1a2;margin-left:5px}.week-list{max-height:260px;overflow:auto;display:flex;flex-direction:column;margin-top:15px;gap:8px}.week-list button{width:100%;justify-content:space-between;padding:14px;text-align:left;font-size:12px}.week-list small{display:block;color:#9aaa9e;margin-top:7px;font-size:10px}@media(min-width:1600px){.dashboard-columns{grid-template-columns:minmax(0,1fr) 285px}.compact td{height:114px}.compact .lesson-chip{font-size:11px;padding:8px}.compact .lesson-title b{font-size:11px}.timetable td{height:130px}}@media(max-width:1280px){.sidebar{width:215px;padding-left:11px;padding-right:11px}.main-shell{margin-left:215px;width:calc(100% - 215px)}main{padding:25px}.topbar{padding:0 25px}.dashboard-columns{grid-template-columns:minmax(0,1fr)}.dashboard-aside{display:grid;grid-template-columns:1.2fr 1fr 1fr;padding-top:0;gap:15px}.stat-card{padding:16px}.student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome-graphic{width:220px;min-width:180px;margin-right:0}.welcome{padding:25px}.page-title{align-items:flex-start}.page-actions{max-width:420px}.dashboard-aside .checklist{padding:17px}.backup-reminder,.review-summary{padding:18px}.dashboard-aside .section-head{margin-bottom:4px}}@media(max-width:850px){.sidebar{width:210px}.main-shell{margin-left:210px;width:calc(100% - 210px)}main{padding:22px 18px}.topbar{padding:0 18px}.top-status>span:last-child,.top-divider{display:none}.stats-grid{grid-template-columns:1fr 1fr;gap:12px}.page-title{flex-direction:column;gap:15px}.page-actions{max-width:none;justify-content:flex-start}.dashboard-aside{grid-template-columns:1fr 1fr}.dashboard-aside .review-summary{grid-column:1/-1}.welcome-graphic{display:none}.welcome h2{font-size:24px}.student-grid,.class-grid,.settings-grid,.backup-grid{grid-template-columns:1fr}.rule-card{gap:10px;padding:16px}.rule-icon{display:none}.form-grid{gap:12px}.section-head{flex-wrap:wrap}.import-help{gap:10px}.timetable{min-width:580px}.table-caption .grow{display:none}.approval-bar{flex-direction:column;align-items:flex-start;gap:5px}.approval-bar .check{margin:0 0 10px}.notice{align-items:flex-start}.notice button{margin-left:auto}.toolbar .muted{display:none}}@media(max-width:640px){.mobile-only{display:inline-flex}.sidebar{transform:translate(-100%);width:250px;transition:transform .2s}.sidebar.open{transform:translate(0)}.brand{padding-bottom:20px}.brand .mobile-only{margin-left:auto}.mobile-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#16392d66;z-index:25}.main-shell{width:100%;margin:0}.topbar{height:57px;padding:0 16px}.breadcrumb{display:none}.topbar .inline{gap:8px}.top-status{gap:5px}.top-status .status{font-size:9px}.teacher-avatar{width:23px;height:23px}.page-title{margin-bottom:22px}.page-title h1{font-size:24px}.eyebrow{font-size:9px}.page-title p{font-size:11px}.page-actions{gap:7px}.page-actions>button{padding:7px 9px;font-size:10px}.page-actions .local-label{display:none}.page-actions .week-button{font-size:10px}.page-actions .week-button span{font-size:8px}.demo-banner{font-size:10px;align-items:flex-start}.demo-banner button{font-size:9px;white-space:nowrap}.stats-grid{margin-bottom:24px}.stat-card{padding:14px}.stat-top{font-size:11px}.stat-icon{width:28px;height:28px}.stat-number{font-size:29px}.stat-bottom{font-size:9px;padding-top:10px}.section-head h2{font-size:16px}.section-head p{font-size:10px}.section-head>button,.section-head .inline>button{font-size:10px}.schedule-section>.section-head{height:auto;min-height:45px}.dashboard-aside{grid-template-columns:1fr}.dashboard-aside .review-summary{grid-column:auto}.timetable-toolbar{padding:0 11px;gap:12px}.timetable-toolbar .inline{gap:7px}.segment button{padding:6px 8px;font-size:10px}.timetable{min-width:540px}.timetable:has(thead tr th:nth-child(2):last-child){min-width:0}.timetable:has(thead tr th:nth-child(2):last-child) td{height:125px;padding:12px}.lesson-chip{font-size:11px}.timetable:has(thead tr th:nth-child(2):last-child) .lesson-chip{padding:11px}.table-caption{font-size:9px;padding:12px}.table-caption small{font-size:8px}.student-grid{grid-template-columns:1fr}.modal-shade{padding:12px}.modal{padding:22px;max-height:94vh;border-radius:12px}.modal>header{margin-bottom:20px}.modal h2{font-size:18px}.form-grid{grid-template-columns:1fr;gap:0}.rule-card{flex-wrap:wrap}.rule-card>.grow{min-width:180px}.rule-card .inline{gap:6px}.rule-card h3{font-size:13px}.rule-card p,.rule-card button{font-size:10px}.upload-zone{padding:30px 15px}.upload-zone h2{font-size:17px}.upload-zone p{font-size:10px}.upload-zone>small{font-size:9px}.import-help{grid-template-columns:1fr;gap:15px;margin:25px 0}.import-help article{position:relative;padding:0 0 0 35px}.import-help .step-number{position:absolute;left:0;top:3px}.import-help h3{margin:0 0 5px}.import-help p{font-size:10px}.class-card{padding:15px;gap:8px}.review-panel{padding:15px}.review-tabs button{min-width:130px}.notice{font-size:10px;padding:12px;gap:8px;flex-wrap:wrap}.notice svg{width:16px}.notice span{min-width:180px}.backup-card{padding:22px}.backup-card p{min-height:0}.history-list{padding:0 15px}.history-list article{gap:10px}.history-list b{font-size:11px}.history-list small{font-size:9px}.history-list button{padding:6px;font-size:9px}.issue-card{padding:14px;gap:10px;flex-wrap:wrap}.issue-card>.grow{min-width:200px}.issue-card p{font-size:11px}.issue-card button{margin-left:auto;font-size:10px}.settings-panel{padding:21px}.page-footer{font-size:8px;gap:8px;margin-top:26px}.welcome{padding:22px}.welcome h2{font-size:22px}.welcome p{font-size:11px}.welcome button{font-size:10px}.toast{font-size:11px;bottom:16px;min-width:0;width:calc(100vw - 30px)}.section-head>select{max-width:100%;font-size:11px}.approval-bar{bottom:5px;padding:14px}.approval-bar .check{font-size:10px}.week-list small{font-size:9px}}@media print{@page{size:A4 landscape;margin:12mm}body{background:#fff;color:#000}.sidebar,.topbar,.page-actions,.demo-banner,.notice,.toolbar,.page-footer,.toast,.table-caption,.dashboard-aside,.stats-grid,.welcome,.text-button,.modal-shade{display:none!important}.main-shell{width:100%;margin:0}main{padding:0;max-width:none}.page-title{margin-bottom:12px}.page-title h1{font-size:20px}.page-title p{font-size:10px}.eyebrow{display:none}.dashboard-columns{display:block}.panel,.timetable-wrap{border-radius:0;box-shadow:none}.table-scroll{overflow:visible}.timetable{min-width:0!important;width:100%;font-size:10px}.timetable td,.compact td{height:auto;min-height:70px;padding:5px;border-color:#bbb}.timetable thead th{padding:10px 5px}.timetable tr{break-inside:avoid}.lesson-chip{break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:9px;padding:5px}.lesson-chip small{font-size:8px;color:#555}.lesson-title b{font-size:9px}.cell-meta{color:#555}.cell-empty{padding:15px}.section-head{margin-bottom:10px}.timetable th{-webkit-print-color-adjust:exact;print-color-adjust:exact}.page-title:after{content:"자동 생성 결과 · 원본 및 참여 규칙 검토 후 사용";font-size:9px;color:#555}}
