/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.report-auto{color:#319b70;background:#eaf8f2;border-radius:14px;padding:7px 11px;font-size:9px}.report-auto i{background:#3bb27e;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.report-schedule{justify-content:space-between;align-items:center;margin-bottom:16px;padding:17px 20px;display:flex}.report-schedule>div{align-items:center;gap:12px;display:flex}.report-schedule section{flex-direction:column;display:flex}.report-schedule section b{font-size:11px}.report-schedule section p,.report-app-note p{color:#8c96a6;margin:5px 0 0;font-size:9px}.report-schedule>em{color:#5368df;background:#eef1ff;border-radius:12px;padding:6px 10px;font-size:9px;font-style:normal}.report-table-old table{min-width:850px}.report-table-old td:first-child{display:table-cell}.report-table-old td:first-child .avatar{margin-right:7px}.comment-ready{color:#3da277;font-size:9px}.report-actions{gap:5px;display:flex}.report-actions button{color:#657084;white-space:nowrap;background:#fff;border:1px solid #dfe4ec;border-radius:6px;padding:6px 8px;font-size:8px}.report-actions button:nth-child(2){color:#5368df;background:#eef1ff;border-color:#e0e5ff}.report-actions .kakao-send{color:#332e20;background:#ffe719;border-color:#f1da00}.report-app-note{align-items:center;gap:13px;margin-top:16px;padding:18px 21px;display:flex}.report-app-note>div{flex-direction:column;display:flex}.report-app-note b{font-size:11px}@media (width<=760px){.report-schedule{align-items:flex-start;gap:12px}.report-schedule>em{display:none}.report-auto{white-space:nowrap}}.report-head-actions{align-items:center;gap:9px;display:flex}.example-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#111a2c99;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow:auto}.example-modal{background:#edf0f5;border-radius:13px;width:min(820px,100%);max-height:96vh;overflow:auto}.example-modal>header{z-index:2;background:#fff;align-items:center;gap:7px;height:56px;padding:0 16px;display:flex;position:sticky;top:0}.example-modal>header div{flex-direction:column;margin-right:auto;display:flex}.example-modal>header b{font-size:11px}.example-modal>header small{color:#939cab;margin-top:3px;font-size:8px}.example-modal>header button{background:#fff;border:1px solid #dfe4ec;border-radius:6px;height:30px;padding:0 10px;font-size:9px}.example-modal>header button:last-child{width:30px;padding:0;font-size:16px}.example-paper{background:#fff;width:680px;min-height:920px;margin:20px auto;padding:35px 43px 25px;box-shadow:0 6px 24px #26345222}.example-brand{border-bottom:2px solid #17213a;justify-content:space-between;align-items:center;padding-bottom:13px;display:flex}.example-brand img{object-fit:contain;width:128px;height:34px}.example-brand span{letter-spacing:1px;color:#8993a3;font-size:7px}.example-title{justify-content:space-between;padding:23px 0 18px;display:flex}.example-title small{color:#5c70e0;font-size:8px;font-weight:800}.example-title h1{margin:6px 0;font-size:25px}.example-title p{color:#8993a3;font-size:8px}.example-title>em{color:#aab2c4;text-align:center;background:#17213a;border-radius:8px;width:70px;height:65px;padding-top:13px;font-size:8px;font-style:normal}.example-title>em b{color:#fff;line-height:2}.example-kpis{background:#f7f8fc;border-radius:9px;grid-template-columns:1fr 1fr 1.15fr;margin-bottom:14px;padding:17px;display:grid}.example-ring-box{text-align:center;border-right:1px solid #e3e7ef}.example-ring{border-radius:50%;place-items:center;width:68px;height:68px;margin:0 auto 7px;display:grid}.example-ring>span{background:#fff;border-radius:50%;place-items:center;width:54px;height:54px;font-size:7px;display:grid}.example-ring b{font-size:17px}.example-ring-box small,.example-kpis>section:last-child small{color:#7e8898;font-size:8px}.example-ring-box p{color:#3da176;font-size:7px}.example-kpis>section:last-child{flex-direction:column;padding:14px 0 0 23px;display:flex}.example-kpis strong{margin:6px 0;font-size:31px}.example-kpis strong em{font-size:9px;font-style:normal}.example-kpis>section:last-child p{font-size:7px}.example-kpis>section:last-child b{color:#39a276}.example-grid{grid-template-columns:1fr 1fr;gap:13px;margin-bottom:13px;display:grid}.example-grid>section,.score-compare{border:1px solid #e4e8ef;border-radius:8px;padding:15px}.example-grid h3,.score-compare h3{margin:0 0 11px;font-size:10px}.example-grid section>div{grid-template-columns:28px 38px 1fr;align-items:center;gap:6px;margin:7px 0;font-size:7px;display:grid}.example-grid section>div span{text-align:center;border-radius:7px;padding:3px}.example-grid .ok{color:#30996f;background:#e8f8f1}.example-grid .late{color:#d98c32;background:#fff3e5}.example-grid section>div i{background:#596ee3;border-radius:4px;height:4px}.score-compare{grid-template-columns:1fr 2fr;height:145px;margin-bottom:13px;display:grid}.score-compare p{color:#9099a8;font-size:7px}.score-bars{border-bottom:1px solid #e6e9f0;justify-content:space-around;align-items:flex-end;display:flex}.score-bars span{flex-direction:column;justify-content:flex-end;align-items:center;width:34px;height:105px;display:flex;position:relative}.score-bars i{background:#5a6ff0;border-radius:3px 3px 0 0;width:15px}.score-bars b{font-size:7px;position:absolute;top:0}.score-bars small{margin-top:4px;font-size:7px}.example-comment{color:#fff;background:#17213a;border-radius:9px;grid-template-columns:90px 1fr;gap:16px;padding:18px 21px;display:grid}.example-comment>span{color:#8e99b2;border-right:1px solid #35405a;font-size:7px}.example-comment h3{margin:0 0 7px;font-size:10px}.example-comment p{color:#d8deea;margin:0;font-size:8px;line-height:1.7}.example-comment small{text-align:right;color:#8e99ad;margin-top:7px;font-size:7px;display:block}.example-paper footer{color:#99a2b1;justify-content:space-between;padding-top:18px;font-size:7px;display:flex}.example-paper footer b{color:#28334b}@media (width<=760px){.report-head-actions{flex-direction:column;align-items:flex-end}.example-paper{transform-origin:0 0;margin-bottom:-310px;transform:scale(.65)}.example-modal{overflow-x:hidden}}@media print{body>*{visibility:hidden}.example-backdrop,.example-backdrop *{visibility:visible}.example-backdrop{background:#fff;padding:0;position:absolute;inset:0}.example-modal{background:#fff;width:100%;max-height:none;overflow:visible}.example-modal>header{display:none}.example-paper{box-shadow:none;width:210mm;min-height:297mm;margin:0;padding:14mm 16mm}}.actual-report .example-grid section>div{grid-template-columns:minmax(55px,1fr) 42px 1fr}.actual-report .score-bars span{width:74px}.actual-report .score-bars small{white-space:nowrap;text-overflow:ellipsis;max-width:70px;overflow:hidden}.score-bars span>em{color:#8a93a3;white-space:nowrap;margin-top:2px;font-size:6px;font-style:normal;line-height:1.4;position:static}.edit-comment textarea{resize:none;color:#e7ebf3;background:#202c47;border:1px solid #43506a;border-radius:6px;outline:none;width:100%;height:78px;padding:9px;font:8px/1.7 inherit}.edit-comment textarea:focus{border-color:#7d8ef0}.report-editor-actions{background:#fff;border-top:1px solid #e7eaf0;justify-content:flex-end;gap:7px;padding:12px 17px;display:flex;position:sticky;bottom:0}.report-editor-actions button{background:#fff;border:1px solid #dfe4ec;border-radius:6px;height:32px;padding:0 12px;font-size:9px}.report-editor-actions .primary{color:#fff;background:#536ae5}.report-empty-row{color:#9ba3b1;text-align:center;padding:26px 0;font-size:8px}.report-actions button:first-child{color:#5368df;border-color:#dce2ff}.report-table-old td:first-child{white-space:nowrap}.example-ring>span{justify-content:center;align-items:center;display:flex;position:relative}.example-ring>span>b{line-height:1}.example-ring>span>em{text-align:center;color:#5f6979;font-size:7px;font-style:normal;position:absolute;bottom:8px;left:0;right:0}.monthly-report{min-height:760px}.monthly-report .example-title{padding-bottom:25px}.monthly-kpis{grid-template-columns:1fr 1fr;margin-bottom:18px;padding:22px 70px}.monthly-kpis .example-ring-box:nth-child(2){border-right:0}.monthly-kpis .example-ring{width:84px;height:84px}.monthly-kpis .example-ring>span{width:66px;height:66px}.monthly-kpis .example-ring b{font-size:21px}.monthly-score{grid-template-columns:1fr 2.6fr;height:250px;margin-bottom:18px}.monthly-score .score-bars{height:205px}.monthly-score .score-bars span{width:68px;height:180px}.monthly-score .score-bars i{width:20px}.monthly-score .score-bars small{color:#596477;margin-top:7px;font-size:8px;font-weight:700}.monthly-score .score-bars b{font-size:8px}.monthly-score+.example-comment{margin-top:0}.monthly-kpis>.example-ring-box{align-self:start;padding:0;display:block}.monthly-kpis>.example-ring-box:last-child{padding:0;display:block}.monthly-score{padding:18px 24px;display:block}.monthly-score>h3{margin:0 0 12px;font-size:10px}.monthly-score .score-bars{justify-content:center;gap:34px;width:100%;height:195px;padding:0 20px}.monthly-score .score-bars span{flex:0 0 72px}.monthly-kpis .example-ring-box .example-ring b{color:#172033!important}.monthly-kpis>.example-ring-box p,.monthly-kpis>.example-ring-box:last-child p{color:#697487;font-size:8.5px;font-weight:600}.monthly-score .score-bar-plot{flex-direction:column;justify-content:flex-end;align-items:center;height:150px;display:flex}.monthly-score .score-bar-plot b{margin-bottom:4px;font-size:8px;line-height:1;position:static}.monthly-score .score-bar-plot i{background:#5a6ff0;border-radius:3px 3px 0 0;flex:none;width:20px}.report-tabs{border-bottom:1px solid #e1e5ed;gap:8px;margin:-8px 0 20px;display:flex}.report-tabs button{text-align:left;color:#8a94a5;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;min-width:170px;padding:13px 18px}.report-tabs button b,.report-tabs button span{display:block}.report-tabs button b{font-size:13px}.report-tabs button span{margin-top:5px;font-size:9px}.report-tabs button.active{color:#5368df;border-bottom-color:#596ee8}.daily-report-table table{min-width:1000px}.daily-status{border-radius:10px;padding:5px 9px;font-size:9px;font-weight:800;display:inline-block}.daily-status.present{color:#29966b;background:#e8f8f1}.daily-status.late{color:#d5882d;background:#fff3e4}.daily-status.absent{color:#d35460;background:#fff0f1}.daily-preview-modal{width:min(620px,100%)}.daily-talk-preview{background:#b7cad7;border-radius:18px;width:min(460px,100% - 36px);margin:22px auto;padding:24px}.talk-channel{align-items:center;gap:10px;margin-bottom:13px;display:flex}.talk-channel .kakao{border-radius:10px;width:38px;height:38px}.talk-channel>div{flex-direction:column;display:flex}.talk-channel b{font-size:12px}.talk-channel small{color:#5e6c77;font-size:8px}.talk-bubble{background:#fff;border-radius:4px 16px 16px;padding:24px 22px;position:relative;box-shadow:0 6px 18px #40515e16}.talk-bubble:before{content:"";border-top:15px solid #fff;border-left:10px solid #0000;position:absolute;top:0;left:-9px}.talk-bubble h2{color:#1f293b;letter-spacing:-.7px;margin:0;font-size:17px}.talk-date{color:#8a94a4;margin:7px 0 19px;font-size:9px}.talk-row{border-top:1px solid #edf0f4;grid-template-columns:78px 1fr;gap:11px;padding:13px 0;display:grid}.talk-row>span{color:#6271d8;font-size:9px;font-weight:800}.talk-row>div{flex-direction:column;gap:4px;display:flex}.talk-row b{white-space:pre-line;color:#354054;font-size:10px;line-height:1.65}.talk-row small{color:#929baa;font-size:8px}.talk-comment{background:#f6f7fb;border-radius:10px;margin-top:8px;padding:14px}.talk-comment>b{color:#4858bc;margin-bottom:8px;font-size:9px;display:block}.talk-comment textarea{resize:vertical;color:#394459;background:#fff;border:1px solid #dfe4ed;border-radius:7px;outline:none;width:100%;min-height:85px;padding:9px;font:10px/1.7 inherit}.talk-comment small{text-align:right;color:#9ba3b1;margin-top:5px;font-size:7px;display:block}.talk-bubble footer{color:#a0a7b2;text-align:center;margin-top:15px;font-size:7px}.monthly-summary-preview .talk-bubble{border-radius:15px}.monthly-summary-preview .talk-bubble:before{display:none}@media (width<=760px){.report-tabs button{flex:1;min-width:0;padding:11px 8px}.daily-talk-preview{width:calc(100% - 24px);padding:15px}.talk-bubble{padding:20px 16px}.talk-row{grid-template-columns:68px 1fr}}.alimtalk-modal{background:#f4f5f7;width:min(920px,100%)}.alimtalk-workspace{grid-template-columns:390px 1fr;align-items:start;gap:30px;padding:28px 36px;display:grid}.kakao-phone{background:#b2c7d9;border:8px solid #202124;border-radius:38px;width:360px;height:680px;overflow:hidden;box-shadow:0 18px 40px #1c25342e}.kakao-status{color:#111;background:#fff;justify-content:space-between;align-items:center;height:28px;padding:0 20px;font-size:9px;display:flex}.kakao-chat-head{color:#181818;background:#fff;grid-template-columns:35px 1fr auto;align-items:center;height:54px;padding:0 14px;display:grid}.kakao-chat-head button{text-align:left;background:0 0;border:0;font-size:27px}.kakao-chat-head b{text-align:center;font-size:14px}.kakao-chat-head span{font-size:13px}.kakao-chat-body{height:calc(100% - 82px);padding:18px 14px;position:relative;overflow:auto}.kakao-profile{align-items:center;gap:9px;margin-bottom:8px;display:flex}.kakao-profile>span{color:#fff;background:#596ee8;border-radius:15px;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.kakao-profile>div{flex-direction:column;gap:2px;display:flex}.kakao-profile b{color:#24303b;font-size:11px}.kakao-profile small{color:#6d7881;font-size:8px}.alimtalk-bubble{background:#fff;border-radius:3px 12px 12px;width:275px;margin-left:47px;position:relative;box-shadow:0 1px 2px #50606d24}.alimtalk-bubble:before{content:"";border-top:12px solid #fff;border-left:9px solid #0000;position:absolute;top:0;left:-8px}.alimtalk-bubble pre{white-space:pre-wrap;word-break:keep-all;color:#222;margin:0;padding:17px 16px 13px;font:10px/1.58 Apple SD Gothic Neo,sans-serif}.alimtalk-channel-note{color:#999;border-top:1px solid #ececec;padding:9px 14px;font-size:7px}.alimtalk-bubble button{color:#333;background:#f2f2f2;border:0;border-radius:4px;width:calc(100% - 24px);height:33px;margin:0 12px 12px;font-size:9px}.kakao-chat-body>time{color:#52616d;margin:5px 0 0 47px;font-size:7px;display:block}.alimtalk-editor{padding-top:10px}.alimtalk-template-info{background:#fff;border:1px solid #dfe3ea;border-radius:12px;flex-direction:column;gap:7px;padding:18px;display:flex}.alimtalk-template-info b{font-size:13px}.alimtalk-template-info span{color:#7d8798;font-size:10px;line-height:1.6}.alimtalk-template-info em{color:#596ee8;font-size:9px;font-style:normal;font-weight:800}.alimtalk-editor>label{color:#3e495b;flex-direction:column;gap:8px;margin-top:18px;font-size:11px;font-weight:800;display:flex}.alimtalk-editor textarea{color:#303b4f;resize:vertical;background:#fff;border:1px solid #d9dfe8;border-radius:10px;outline:none;min-height:155px;padding:13px;font:11px/1.7 inherit}.alimtalk-editor label small{text-align:right;color:#9ba3b0;font-size:8px}.alimtalk-data-note{color:#5368df;background:#eef1ff;border-radius:10px;margin-top:17px;padding:15px}.alimtalk-data-note b{font-size:10px}.alimtalk-data-note p{color:#6875a8;margin:6px 0 0;font-size:9px;line-height:1.6}@media (width<=760px){.alimtalk-workspace{grid-template-columns:1fr;padding:18px}.kakao-phone{width:330px;max-width:100%;margin:auto}.alimtalk-editor{padding:0}.alimtalk-modal{overflow-x:hidden}}.badge.due-soon{color:#df9943;background:#fff5e8}.winners-brand{background:url(/winners-high-logo-clean.png) 0/contain no-repeat;justify-content:flex-start;height:58px;padding:2px 5px}.winners-brand+nav{margin-top:24px}.loading-state{text-align:center;color:#8d96a7;place-content:center;min-height:70vh;font-size:12px;display:grid}.loading-state i{border:3px solid #e7eaff;border-top-color:#5a6ff0;border-radius:50%;width:28px;height:28px;margin:auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.refresh{color:#657085;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:8px;padding:9px 12px;font-size:10px}.quick-panel{padding-bottom:12px}.quick-panel>button{text-align:left;cursor:pointer;background:#f8f9fc;border:0;border-radius:10px;align-items:center;gap:10px;width:calc(100% - 30px);margin:6px 15px;padding:10px;display:flex}.quick-panel>button:hover{background:#f0f2ff}.quick-panel .stat-icon{width:31px;height:31px;font-size:12px}.quick-panel button div{flex-direction:column;flex:1;display:flex}.quick-panel button b{color:#3f485a;font-size:10px}.quick-panel button small{color:#929baa;margin-top:3px;font-size:8px}.quick-panel button em{color:#8d96a7;font-style:normal}.module-table select{color:#576174;background:#fff;border:1px solid #dfe4ec;border-radius:7px;padding:6px 24px 6px 8px;font-size:10px}.delete{color:#d9646d;cursor:pointer;background:#fff0f1;border:0;border-radius:6px;padding:6px 9px;font-size:9px}.empty{text-align:center;color:#8d96a7;padding:55px}.empty b{color:#596274;font-size:12px}.empty p{font-size:10px}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17203380;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:min(470px,100%);padding:24px;box-shadow:0 22px 70px #17203355}.modal-head{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.modal-head h2{margin:0;font-size:19px}.modal-head>button{color:#687184;background:#f1f3f7;border:0;border-radius:8px;width:30px;height:30px;font-size:17px}.modal label{color:#586274;flex-direction:column;gap:7px;margin-bottom:14px;font-size:10px;font-weight:700;display:flex}.modal input,.modal select{color:#283246;background:#fff;border:1px solid #dfe4ed;border-radius:8px;outline:0;height:40px;padding:0 11px;font:11px inherit}.modal input:focus,.modal select:focus{border-color:#7182ef;box-shadow:0 0 0 3px #5a6ff018}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.modal-actions{border-top:1px solid #edf0f5;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:18px;display:flex}.modal-actions button{background:#fff;border:1px solid #dfe4ed;border-radius:8px;height:37px;padding:0 16px;font-size:11px}.modal-actions .primary{color:#fff;background:#5a6ff0;border-color:#5a6ff0}.toast.error{background:#a83e48}.toast button{color:#fff;background:0 0;border:0;margin-left:14px}.notice{margin-top:16px}.module-table tbody small{margin-top:3px;display:block}.module-table td:first-child b{margin-right:5px}@media (width<=760px){.form-grid{grid-template-columns:1fr}.modal{padding:19px}.quick-panel{min-height:auto}}.modal{max-height:calc(100vh - 40px);overflow-y:auto}.modal.student-modal{width:min(610px,100%)}.form-section-title{color:#3f485a;border-top:1px solid #edf0f5;margin:2px 0 12px;padding-top:15px;font-size:11px;font-weight:800}.form-help{color:#d46d46;margin-top:2px;font-size:9px;font-weight:500}.class-picker{color:#667085;flex-direction:column;gap:6px;font-size:10px;font-weight:700;display:flex}.class-picker select,.record-form input,.record-form select,.score-list input{color:#283246;background:#fff;border:1px solid #dfe4ed;border-radius:8px;height:38px;padding:0 10px}.inline-notice{color:#4d61d6;background:#eef1ff;border-radius:8px;margin-bottom:12px;padding:10px 13px;font-size:10px}.record-form{margin-bottom:16px;padding-bottom:18px}.record-form .panel-head input{width:150px}.record-fields{grid-template-columns:1.5fr 1fr 2fr auto;align-items:end;gap:10px;padding:0 22px;display:grid}.record-fields label{color:#667085;flex-direction:column;gap:6px;font-size:10px;font-weight:700;display:flex}.record-fields .primary{height:38px}.exam-fields{grid-template-columns:2fr 1fr 1fr}.roster-list{padding:0 22px}.roster-list>label{border-bottom:1px solid #f0f2f6;grid-template-columns:30px 100px 1fr 130px;align-items:center;gap:9px;padding:9px 0;display:grid}.roster-list small,.student-assign small,.score-list small{color:#929baa;font-size:9px}.record-actions{justify-content:flex-end;padding:15px 22px 0;display:flex}.empty-row{text-align:center;color:#929baa;padding:25px;font-size:10px}.student-assign{border-top:1px solid #edf0f5;grid-template-columns:repeat(3,1fr);gap:8px;margin:17px 22px 0;padding-top:14px;display:grid}.student-assign>b{grid-column:1/-1;font-size:11px}.student-assign label{background:#f8f9fc;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:3px 7px;padding:9px;font-size:10px;display:grid}.student-assign label small{grid-column:2}.exam-list{gap:14px;display:grid}.score-list{padding:0 22px 16px}.score-list>label{border-top:1px solid #f0f2f6;grid-template-columns:100px 1fr auto;align-items:center;padding:10px 0;display:grid}.score-list>label>span{align-items:center;gap:7px;display:flex}.score-list input{width:100px}.score-list em{color:#7d8798;font-size:10px;font-style:normal}.score-list button{color:#4d61d6;background:#eef1ff;border:0;border-radius:7px;height:32px;padding:0 12px;font-size:10px}@media (width<=760px){.record-fields,.exam-fields{grid-template-columns:1fr}.roster-list>label{grid-template-columns:30px 1fr}.roster-list select{grid-column:1/-1}.student-assign,.score-list>label{grid-template-columns:1fr}.score-list>label>span{margin-top:8px}}:root{--ink:#172033;--muted:#7d8799;--line:#e9edf4;--blue:#5a6ff0;--blue-deep:#4055dc;--panel:#fff;--bg:#f5f7fb}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--font-geist-sans),"Apple SD Gothic Neo",sans-serif;margin:0}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);z-index:10;background:#fff;flex-direction:column;width:238px;padding:25px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:9px;height:42px;padding:0 8px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#5e75f7,#4055d9);border-radius:9px;place-items:center;width:28px;height:28px;font-size:16px;font-weight:900;display:grid;box-shadow:0 5px 14px #596fe04d}.brand strong{letter-spacing:-.6px;font-size:19px}.brand>span:last-child{color:#a1a9b7;letter-spacing:1.5px;margin-top:4px;margin-left:-4px;font-size:9px}.academy-switch{background:#f7f8fc;border:1px solid #eef0f5;border-radius:10px;align-items:center;gap:9px;margin:19px 0 22px;padding:10px;display:flex}.academy-logo{width:30px;height:30px;color:var(--blue);background:#fff;border:1px solid #e4e8f0;border-radius:8px;place-items:center;font-weight:800;display:grid}.academy-switch div{flex-direction:column;flex:1;display:flex}.academy-switch b{font-size:12px}.academy-switch small,.profile small{color:#9aa2b0;margin-top:2px;font-size:10px}.nav-label{letter-spacing:1.3px;color:#b0b6c2;margin:0 11px 8px;font-size:9px}.sidebar nav button,.sidebar-bottom>button{color:#6f788a;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;width:100%;height:43px;margin:2px 0;padding:0 12px;font-size:13px;font-weight:600;display:flex}.sidebar nav button:hover,.sidebar nav button.active{color:#4c61e7;background:#eef1ff}.sidebar nav button em{color:#e65561;background:#ffeff0;border-radius:10px;margin-left:auto;padding:2px 7px;font-size:10px;font-style:normal}.nav-icon{opacity:.85;border:1.7px solid;border-radius:4px;width:17px;height:17px;display:inline-block;position:relative}.i-home{border-radius:3px 3px 7px 7px}.i-attendance{border-radius:50%}.i-grades:after,.i-assignments:after{content:"";border-top:2px solid;width:7px;position:absolute;top:5px;left:3px;box-shadow:0 4px}.i-consulting{border-radius:50% 50% 50% 4px}.i-billing{border-radius:50%}.i-reports:after{content:"";border-left:2px solid;border-right:2px solid;position:absolute;inset:3px}.sidebar-bottom{margin-top:auto}.profile{border-top:1px solid var(--line);align-items:center;gap:9px;padding:16px 4px 0;display:flex}.profile>span{color:#596ce2;background:#e7eaff;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.profile div{flex-direction:column;flex:1;display:flex}.profile b{font-size:11px}.profile button{color:#9ba3b2;background:0 0;border:0}.content{width:calc(100% - 238px);margin-left:238px}.topbar{border-bottom:1px solid var(--line);z-index:5;background:#fff;justify-content:space-between;align-items:center;height:70px;padding:0 32px;display:flex;position:sticky;top:0}.search,.inner-search{color:#8993a5;background:#f6f7fa;border:1px solid #eef0f4;border-radius:9px;align-items:center;gap:9px;width:350px;height:38px;padding:0 12px;display:flex}.search input,.inner-search input{background:0 0;border:0;outline:0;width:100%;font-size:12px}.search kbd{white-space:nowrap;background:#fff;border:1px solid #dfe3eb;border-radius:5px;padding:3px 6px;font:10px inherit}.top-actions{align-items:center;gap:8px;display:flex}.top-actions>button{color:#687184;cursor:pointer;background:#fff;border:0;border-radius:9px;width:35px;height:35px;font-size:15px}.top-actions .primary,.primary{background:var(--blue);color:#fff;border:0;border-radius:8px;width:auto;height:36px;padding:0 16px;font-size:12px;font-weight:700;box-shadow:0 4px 12px #5a6ff033}.bell{position:relative}.bell i{background:#f05c68;border-radius:50%;width:5px;height:5px;position:absolute;top:7px;right:7px}.dashboard,.module-page{max-width:1500px;margin:auto;padding:31px 34px 50px}.welcome-row{justify-content:space-between;align-items:flex-end;margin-bottom:27px;display:flex}.eyebrow{color:#8d96a7;letter-spacing:.8px;margin:0 0 8px;font-size:10px}.welcome-row h1,.module-title h1{letter-spacing:-1px;margin:0 0 7px;font-size:25px}.welcome-row>div>p:last-child,.module-title p:last-child{color:#8d96a7;margin:0;font-size:12px}.weather{align-items:center;gap:10px;display:flex}.weather>span{font-size:28px}.weather div{flex-direction:column;display:flex}.weather b{font-size:20px}.weather small{color:#8c95a5;font-size:10px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:16px;display:grid}.stats-grid article{border:1px solid var(--line);background:#fff;border-radius:13px;align-items:flex-start;gap:12px;min-height:128px;padding:21px;display:flex;position:relative;box-shadow:0 3px 12px #24376408}.stat-icon{border-radius:10px;place-items:center;width:37px;height:37px;font-weight:800;display:grid}.stat-icon.blue{color:#586deb;background:#eef1ff}.stat-icon.violet{color:#7f68e6;background:#f0eefe}.stat-icon.amber{color:#eea34a;background:#fff5e8}.stat-icon.pink{color:#e97785;background:#fff0f2}.stats-grid article>div:nth-child(2){flex-direction:column;display:flex}.stats-grid span{color:#858e9f;margin-bottom:7px;font-size:10px}.stats-grid strong{letter-spacing:-.7px;font-size:22px}.stats-grid strong small{margin-left:2px;font-size:11px;font-weight:500}.stats-grid p{color:#9ba2ae;margin:8px 0 0;font-size:9px}.stats-grid p.up{color:#39a77a}.stats-grid p i{color:#9aa2ae;margin-left:3px;font-style:normal}.donut,.progress-ring{color:#6774db;background:conic-gradient(#687bef 94%,#eef0f6 0);border-radius:50%;place-items:center;width:49px;height:49px;font-size:9px;display:grid;position:absolute;top:32px;right:18px;box-shadow:inset 0 0 0 6px #fff}.progress-ring{background:conic-gradient(#f1ad55 83%,#eef0f6 0);color:#d79543}.mini-bars{align-items:end;gap:3px;height:35px;display:flex;position:absolute;bottom:28px;right:18px}.mini-bars i{background:#7b6ce6;border-radius:3px;width:4px;height:15px}.mini-bars i:nth-child(2){height:21px}.mini-bars i:nth-child(3){height:18px}.mini-bars i:nth-child(4){height:29px}.mini-bars i:nth-child(5){height:25px}.mini-bars i:nth-child(6){height:34px}.arrow{color:#9aa2b0;background:0 0;border:0;font-size:18px;position:absolute;bottom:20px;right:18px}.main-grid{grid-template-columns:minmax(0,1.7fr) minmax(270px,.8fr);gap:16px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:13px;box-shadow:0 3px 12px #24376408}.attendance-panel,.schedule-panel{min-height:406px}.panel-head{justify-content:space-between;align-items:flex-start;padding:20px 22px 14px;display:flex}.panel-head h2{margin:0 0 5px;font-size:14px}.panel-head p{color:#9aa2b0;margin:0;font-size:10px}.panel-head button{color:#7180d9;cursor:pointer;background:0 0;border:0;font-size:10px}.attendance-summary{background:#f8f9fc;border-radius:9px;align-items:center;gap:25px;height:55px;margin:0 22px 10px;padding:0 14px;display:flex}.attendance-summary div{align-items:baseline;gap:4px;display:flex}.attendance-summary strong{font-size:17px}.attendance-summary span{color:#9099a9;font-size:9px}.attendance-summary .bar{flex-direction:column;align-items:flex-end;gap:5px;margin-left:auto}.attendance-summary .bar i{background:linear-gradient(90deg,var(--blue) 94%,#e9ecf2 94%);border-radius:5px;width:130px;height:5px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;color:#9aa3b3;border-bottom:1px solid var(--line);padding:9px 16px;font-size:9px;font-weight:500}td{color:#697284;border-bottom:1px solid #f0f2f6;padding:11px 16px;font-size:10px}td:first-child{align-items:center;gap:7px;display:flex}.avatar{color:#6172e1;background:#eef0ff;border-radius:50%;place-items:center;width:27px;height:27px;font-size:10px;font-weight:700;display:inline-grid}td b{color:#3f485a;font-size:10px}td small{color:#a4abba;font-size:9px}.badge{color:#6e7787;background:#eff1f6;border-radius:10px;padding:4px 8px;font-size:9px;display:inline-block}.badge.출석,.badge.완료{color:#37a077;background:#eaf8f2}.badge.미출석,.badge.미납{color:#df626c;background:#fff0f1}.timeline{padding:8px 22px}.timeline>div{grid-template-columns:39px 3px 1fr;gap:12px;min-height:72px;display:grid}.timeline time{color:#9aa3b1;padding-top:4px;font-size:9px}.timeline>div>i{background:#6d7deb;border-radius:3px;height:100%}.timeline .violet-line{background:#8b72df}.timeline .amber-line{background:#edaa56}.timeline section{flex-direction:column;padding-bottom:15px;display:flex}.timeline section span{color:#7c86e3;margin-bottom:4px;font-size:8px}.timeline section b{margin-bottom:4px;font-size:11px}.timeline section small{color:#9ca4b2;font-size:9px}.bottom-grid{grid-template-columns:1.7fr .8fr;gap:16px;margin-top:16px;display:grid}.notice{background:linear-gradient(110deg,#fff 65%,#fafbff);justify-content:space-between;align-items:center;min-height:125px;padding:20px 24px;display:flex}.notice>div{align-items:center;gap:16px;display:flex}.kakao{color:#322e23;background:#ffe500;border-radius:12px;place-items:center;width:45px;height:45px;font-size:8px;font-weight:900;display:grid}.notice h3{margin:0 0 7px;font-size:13px}.notice p{color:#8d96a5;max-width:440px;margin:0;font-size:10px;line-height:1.6}.notice button,.channel-card button,.app-guide button{color:#596579;background:#fff;border:1px solid #dfe4ee;border-radius:8px;height:34px;padding:0 14px;font-size:10px}.tasks{padding-bottom:8px}.tasks .panel-head{padding-bottom:7px}.tasks label{align-items:center;gap:8px;padding:8px 20px;font-size:10px;display:flex}.tasks input{accent-color:var(--blue)}.tasks label span{flex:1}.tasks input:checked+span{color:#a2a9b5;text-decoration:line-through}.tasks label small{color:#9ba3b1;font-size:8px}.module-title{justify-content:space-between;align-items:flex-end;margin-bottom:25px;display:flex}.module-kpis{grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:16px;display:grid}.module-kpis>div{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:1fr auto;padding:19px 21px;display:grid}.module-kpis span{color:#7d8798;font-size:11px}.module-kpis b{grid-area:1/2/3;font-size:20px}.module-kpis small{color:#48a982;margin-top:7px;font-size:9px}.module-table{overflow:hidden}.filter-row{gap:8px;padding:16px;display:flex}.inner-search{width:260px;height:34px}.filter-row button{color:#687184;background:#fff;border:1px solid #e0e4ec;border-radius:8px;padding:0 12px;font-size:10px}.module-table td{padding:14px 16px}.more{color:#9098a7;background:0 0;border:0}.report-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.channel-card{padding:25px}.channel-icon{border-radius:13px;place-items:center;width:47px;height:47px;margin-bottom:17px;font-weight:800;display:grid}.channel-icon.report{color:#5b6fe9;background:#eef1ff;font-size:22px}.channel-card h2,.app-guide h2{margin:0 0 9px;font-size:16px}.channel-card>p,.app-guide p{color:#7f8999;max-width:420px;font-size:11px;line-height:1.65}.channel-status{border-top:1px solid var(--line);align-items:center;gap:7px;margin-top:18px;padding:17px 0;font-size:10px;display:flex}.channel-status i{background:#48bd86;border-radius:50%;width:7px;height:7px}.channel-status b{color:#7e8796;margin-left:auto;font-size:9px}.app-guide{grid-column:1/-1;align-items:center;gap:20px;padding:25px;display:flex}.app-guide>span{color:#fff;background:linear-gradient(145deg,#7183f2,#4e63dc);border-radius:17px;place-items:center;width:65px;height:65px;font-weight:900;display:grid}.app-guide>div{flex:1}.app-guide>div>div{align-items:center;gap:10px;font-size:9px;display:flex}.app-guide i{background:#e8ebf1;border-radius:5px;width:130px;height:5px}.app-guide em{background:var(--blue);border-radius:5px;width:68%;height:100%;display:block}.toast{color:#fff;z-index:50;background:#172033;border-radius:10px;padding:13px 18px;font-size:11px;position:fixed;bottom:25px;right:26px;box-shadow:0 10px 30px #17203344}@media (width<=1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.main-grid,.bottom-grid{grid-template-columns:1fr}.schedule-panel{min-height:auto}}@media (width<=760px){.sidebar{width:72px;padding:20px 10px}.brand strong,.brand>span:last-child,.academy-switch div,.academy-switch>span:last-child,.nav-label,.sidebar nav button:not(.active),.sidebar nav button{font-size:0}.academy-switch{padding:8px}.sidebar nav button{justify-content:center;padding:0}.sidebar nav button em,.profile div,.profile button{display:none}.content{width:calc(100% - 72px);margin-left:72px}.topbar{padding:0 14px}.search{width:48%}.search kbd,.top-actions>button:not(.primary){display:none}.dashboard,.module-page{padding:23px 15px}.welcome-row{align-items:flex-start}.weather{display:none}.stats-grid,.module-kpis,.report-grid{grid-template-columns:1fr}.stats-grid article{min-height:110px}.notice{align-items:flex-start;gap:10px}.notice p{display:none}.module-title{align-items:flex-start}.module-title .primary{white-space:nowrap}.app-guide{flex-wrap:wrap;grid-column:auto;align-items:flex-start}.table-wrap,.module-table{overflow-x:auto}table{min-width:620px}}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f8f9ff}.teacher-table{overflow:hidden}.teacher-table td:first-child{display:table-cell}.teacher-name{color:#33405a;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:0;display:flex}.teacher-name:hover b{color:#5367df;text-decoration:underline}.permission-tags{flex-wrap:wrap;gap:5px;display:flex}.permission-tags span{color:#5367d9;background:#eef1ff;border-radius:12px;padding:5px 9px;font-size:9px;font-weight:700}.permission-tags small{color:#9aa3b2}.account-status{color:#a15b65;background:#fff0f1;border-radius:12px;align-items:center;gap:5px;padding:5px 9px;font-size:9px;display:inline-flex}.account-status.active{color:#2f8b64;background:#eaf8f2}.teacher-modal{width:min(570px,100%)}.teacher-modal>label{color:#4d576c;flex-direction:column;gap:7px;margin-bottom:13px;font-size:11px;font-weight:700;display:flex}.teacher-modal input[type=text],.teacher-modal input[type=tel],.teacher-modal>label input{border:1px solid #dfe4ed;border-radius:8px;height:40px;padding:0 11px}.teacher-modal fieldset{border:0;margin:15px 0 0;padding:0}.teacher-modal legend{margin-bottom:10px;font-size:11px;font-weight:800}.modal-guide{color:#7f899b;background:#f5f7fb;border-radius:9px;padding:11px 13px;font-size:10px;line-height:1.5}.teacher-modal .modal-active{background:#f7f8fb;border-radius:9px;flex-direction:row;align-items:center;margin-top:15px;padding:11px 13px}.teacher-edit-actions{grid-template-columns:auto 1fr auto auto;display:grid}.teacher-edit-actions .danger{color:#d34f5b;background:#fff8f8;border-color:#f0cfd3}.teacher-class-tags{flex-wrap:wrap;gap:5px;display:flex}.teacher-class-tags span{color:#2f8b64;background:#eaf8f2;border-radius:11px;padding:5px 8px;font-size:9px;font-weight:750}.teacher-class-tags small{color:#a0a8b5}.class-assignment-grid label{background:#f4fbf8;border-color:#dbeee6}.teacher-modal{max-height:calc(100vh - 36px);overflow:auto}.top-profile{border-top:0;gap:12px;min-width:0;padding:0}.top-profile>div{flex:none}.top-profile .logout{border-left:1px solid #e6e9f0!important;margin-left:0!important;padding:7px 0 7px 12px!important}.top-profile>span{width:34px;height:34px}.auth-page{background:radial-gradient(circle at 20% 10%,#eef2ff,#0000 38%),#f7f8fc;place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:#fff;border:1px solid #e4e8f1;border-radius:24px;flex-direction:column;gap:17px;width:min(430px,100%);padding:38px;display:flex;box-shadow:0 24px 70px #1b275e1f}.auth-card>img{width:230px;height:auto;margin:0 auto 5px}.auth-card>h1{margin:4px 0 -8px;font-size:23px}.auth-card>p{text-align:center;color:#7b8498;margin:0 0 4px}.auth-card label,.teacher-form>label{color:#424b61;flex-direction:column;gap:7px;font-size:13px;font-weight:700;display:flex}.auth-card input,.teacher-form input{font:inherit;border:1px solid #dce1eb;border-radius:10px;outline:none;padding:13px 14px}.auth-card input:focus,.teacher-form input:focus{border-color:#6374ee;box-shadow:0 0 0 3px #eef0ff}.auth-card .primary{justify-content:center;height:48px}.auth-card>small{text-align:center;color:#98a0b1}.auth-error,.inline-notice{color:#28734a;background:#eef7f1;border-radius:10px;padding:11px 14px;font-size:13px}.auth-error,.inline-notice.error{color:#bd3e4b;background:#fff0f0}.profile .logout{white-space:nowrap;color:#8d95a7!important;background:0 0!important;margin-left:auto!important;padding:5px 7px!important;font-size:11px!important}.sidebar-bottom>button.active{color:#5567e8;background:#eef0ff}.teacher-layout{grid-template-columns:minmax(300px,360px) 1fr;align-items:start;gap:22px;display:grid}.teacher-form{flex-direction:column;gap:15px;padding:24px;display:flex}.teacher-form h2,.teacher-list h2{margin:0;font-size:19px}.teacher-form>p{color:#80899b;margin:-7px 0 3px;font-size:13px;line-height:1.55}.teacher-form fieldset{border:0;margin:2px 0;padding:0}.teacher-form legend{margin-bottom:10px;font-size:13px;font-weight:800}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.permission-grid label{color:#50596d;background:#f7f8fb;border:1px solid #e8ebf2;border-radius:8px;align-items:center;gap:7px;padding:9px 10px;font-size:12px;display:flex}.permission-grid input{accent-color:#5f70eb}.teacher-list{flex-direction:column;gap:12px;display:flex}.teacher-list>h2 small{color:#8992a5;font-weight:500}.teacher-card{padding:20px}.teacher-card>header,.teacher-card>footer{justify-content:space-between;align-items:center;display:flex}.teacher-card>header{margin-bottom:16px}.teacher-card .profile{padding:0}.active-toggle{align-items:center;gap:6px;font-size:12px;display:flex}.teacher-card>footer{border-top:1px solid #edf0f5;margin-top:14px;padding-top:13px}.teacher-card>footer small{color:#8b94a5}.teacher-card>footer button{color:#4f5fd3;background:#fff;border:1px solid #dfe3ec;border-radius:8px;padding:8px 12px;font-weight:700}@media (width<=900px){.teacher-layout{grid-template-columns:1fr}.auth-card{padding:28px 22px}.profile .logout{display:none}}.calendar-grid>button{vertical-align:top;align-content:start;position:relative;display:block!important}.calendar-grid>button>span{position:relative;top:0;left:0;margin:0!important}.calendar-grid>button>div{width:100%}.calendar-grid em.other{color:#4c60d4;background:#eef1ff}.event-detail-modal{width:min(580px,100%)}.event-details{color:#5f697c;background:#f7f8fb;border-radius:9px;padding:13px;font-size:11px;line-height:1.6}.event-students{border:1px solid #e7eaf1;border-radius:10px;margin-top:15px;overflow:hidden}.event-students header{background:#fafbfc;justify-content:space-between;padding:12px 14px;font-size:11px;display:flex}.event-students header span{color:#586bde}.event-students>div{border-top:1px solid #edf0f5;grid-template-columns:34px 100px 1fr auto;align-items:center;gap:8px;padding:10px 14px;display:grid}.event-students small{color:#8f98a9}.event-students em{color:#677287;font-size:10px;font-style:normal}.event-students>p{text-align:center;color:#9099aa;padding:18px;font-size:10px}.delete-event{color:#c24e5a!important;border-color:#efc9cd!important;margin-right:auto!important}.calendar-title{justify-content:space-between;align-items:end;margin-bottom:22px;display:flex}.calendar-title>div>p:last-child{color:#8d96a7;margin:0;font-size:12px}.academy-calendar{overflow:hidden}.academy-calendar>header{border-bottom:1px solid #e9edf4;justify-content:center;align-items:center;gap:14px;height:68px;display:flex;position:relative}.academy-calendar>header h2{text-align:center;min-width:145px;font-size:18px}.academy-calendar>header button{color:#566178;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:8px;width:34px;height:34px;font-size:19px}.academy-calendar>header .today-button{width:auto;padding:0 13px;font-size:10px;position:absolute;right:20px}.calendar-week,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-week{background:#fafbfc;border-bottom:1px solid #e9edf4}.calendar-week b{text-align:center;color:#8c95a6;padding:11px;font-size:10px}.calendar-week b:first-child{color:#dc6974}.calendar-week b:last-child{color:#6075e6}.calendar-grid>button,.calendar-grid>.blank{text-align:left;background:#fff;border:1px solid #edf0f5;border-top:0;border-left:0;min-height:130px;padding:10px;overflow:hidden}.calendar-grid>button{cursor:pointer}.calendar-grid>button:hover{background:#fafbff}.calendar-grid>button>span{color:#566074;border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;display:grid}.calendar-grid>button.today>span{color:#fff;background:#5a6ff0;font-weight:800}.calendar-grid>button>div{flex-direction:column;gap:4px;margin-top:6px;display:flex}.calendar-grid em{color:#4c60d4;white-space:nowrap;text-overflow:ellipsis;background:#eef1ff;border-radius:5px;padding:5px 6px;font-size:9px;font-style:normal;display:block;overflow:hidden}.calendar-grid em i{margin-right:5px;font-style:normal;font-weight:800}.calendar-grid em.absence{color:#c55460;background:#fff0f1}.calendar-grid em.late,.calendar-grid em.time_change{color:#bd792b;background:#fff5e8}.calendar-grid em.holiday{color:#765ed2;background:#f2efff}.calendar-grid em.exam{color:#2b8962;background:#eaf8f2}.calendar-grid small{color:#8c95a5;padding-left:4px;font-size:9px}.calendar-modal{width:min(540px,100%)}.calendar-modal>label{color:#4d576b;flex-direction:column;gap:7px;margin-bottom:13px;font-size:11px;font-weight:700;display:flex}.calendar-modal textarea{resize:vertical;min-height:90px;font:inherit;border:1px solid #dfe4ed;border-radius:8px;padding:11px}.calendar-modal input,.calendar-modal select{background:#fff;border:1px solid #dfe4ed;border-radius:8px;height:40px;padding:0 11px}@media (width<=760px){.calendar-title{align-items:flex-start;gap:12px}.calendar-grid>button,.calendar-grid>.blank{min-height:90px;padding:5px}.calendar-grid em{height:7px;padding:0;font-size:0}.calendar-grid em i{display:none}.academy-calendar>header .today-button{right:8px}.calendar-title h1{font-size:20px}}.academy-calendar .calendar-grid>button{padding:10px!important;display:block!important;position:relative!important}.academy-calendar .calendar-grid>button>span{margin:0!important;position:absolute!important;top:10px!important;left:10px!important}.academy-calendar .calendar-grid>button>div{width:auto!important;margin:0!important;position:absolute!important;top:41px!important;left:10px!important;right:10px!important}.academy-calendar .calendar-grid em.holiday{color:#c55460;background:#fff0f1}.academy-calendar .calendar-grid em.other{color:#765ed2;background:#f2efff}.scheduled-section{margin-bottom:16px}.scheduled-head{justify-content:space-between;align-items:end;margin-bottom:10px;display:flex}.scheduled-head h2{margin:0 0 4px;font-size:14px}.scheduled-head p{color:#929bab;margin:0;font-size:10px}.scheduled-head>div:last-child{gap:6px;display:flex}.scheduled-head button{color:#58657b;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:8px;width:34px;height:34px;font-size:21px}.scheduled-class-rail{scroll-snap-type:x mandatory;scrollbar-width:none;gap:11px;padding-bottom:3px;display:flex;overflow-x:auto}.scheduled-class-rail::-webkit-scrollbar{display:none}.scheduled-class-rail>button{scroll-snap-align:start;text-align:left;color:#30394d;cursor:pointer;background:#fff;border:1px solid #e2e6ef;border-radius:12px;flex-direction:column;flex:0 0 220px;gap:6px;padding:16px;display:flex}.scheduled-class-rail>button.active{background:#f0f2ff;border-color:#6576ed;box-shadow:0 5px 16px #5a6ff01f}.scheduled-class-rail small{color:#8d96a7}.scheduled-class-rail em{color:#5b6fe2;font-size:10px;font-style:normal;font-weight:700}.no-scheduled{color:#9099aa;text-align:center;background:#fff;border:1px dashed #dfe4ed;border-radius:12px;width:100%;padding:22px;font-size:11px}.attendance-row.status-head,.attendance-row.status-row{grid-template-columns:120px 1.2fr 1fr 120px minmax(250px,1.3fr)}.attendance-options{gap:6px;display:flex}.attendance-options label{cursor:pointer;position:relative}.attendance-options input{opacity:0;pointer-events:none;position:absolute}.attendance-options span{text-align:center;color:#7c8699;background:#fff;border:1px solid #dfe4ed;border-radius:8px;min-width:64px;padding:9px 10px;font-weight:700;display:block}.attendance-options label.active.present span{color:#27865e;background:#eaf8f2;border-color:#91d9b9}.attendance-options label.active.late span{color:#c98027;background:#fff5e8;border-color:#f2c98f}.attendance-options label.active.absent span{color:#c64c58;background:#fff0f1;border-color:#efb0b6}.title-actions>button.primary{background:var(--blue);color:#fff;border-color:var(--blue);box-shadow:0 4px 12px #5a6ff033}.inline-time{color:#34405a;background:#fff;border:1px solid #dfe4ed;border-radius:7px;height:32px;padding:0 7px}.title-actions{gap:8px;display:flex}.title-actions>button{color:#586276;background:#fff;border:1px solid #dfe4ed;border-radius:8px;height:36px;padding:0 15px;font-weight:700}.compact-class-form{grid-template-columns:1.4fr 1fr 1fr 1fr auto;align-items:end;gap:10px;margin-bottom:16px;padding:18px;display:grid}.compact-class-form label,.filter-toolbar label{color:#667085;flex-direction:column;gap:6px;font-size:10px;font-weight:700;display:flex}.compact-class-form input,.compact-class-form select,.filter-toolbar input,.filter-toolbar select{background:#fff;border:1px solid #dfe4ed;border-radius:8px;height:38px;padding:0 10px}.class-summary{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin-bottom:14px;display:grid}.class-summary button{text-align:left;color:#30394d;background:#fff;border:1px solid #e4e8f0;border-radius:11px;flex-direction:column;gap:7px;padding:15px;display:flex}.class-summary button.active{background:#f0f2ff;border-color:#6576ed}.class-summary small{color:#8e97a8}.filter-toolbar{align-items:end;gap:10px;margin-bottom:14px;padding:13px 16px;display:flex}.filter-toolbar label{min-width:160px}.filter-toolbar>span{color:#6470d7;margin-left:auto;padding:11px;font-size:11px;font-weight:700}.attendance-roster{overflow-x:auto}.attendance-row{border-bottom:1px solid #eef1f5;grid-template-columns:35px 110px 1.2fr 1fr 120px 130px;align-items:center;gap:12px;min-width:850px;padding:11px 22px;font-size:11px;display:grid}.attendance-row.head{color:#9099aa;background:#fafbfc;font-size:9px}.student-link{text-align:left;color:#465bd7;cursor:pointer;background:0 0;border:0;font-weight:800}.clickable-table tbody tr{cursor:pointer}.clickable-table tbody tr:hover{background:#f8f9ff}.contact-modal{width:min(520px,100%)}.contact-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.contact-grid section{background:#f7f8fb;border-radius:10px;flex-direction:column;gap:7px;padding:15px;display:flex}.contact-grid small{color:#8e97a8}.contact-grid a{color:#4e62dc;font-weight:800;text-decoration:none}.assignment-students{gap:7px;display:grid}.assignment-students label{border:1px solid #e8ebf2;border-radius:9px;grid-template-columns:24px 34px 100px 1fr auto;align-items:center;gap:8px;padding:10px;display:grid}.assignment-students small{color:#8f98a9}.assignment-students em{color:#5669df;font-size:10px;font-style:normal}.student-assign>b button{color:#5367df;cursor:pointer;background:0 0;border:0;margin-left:8px;font-size:10px}@media (width<=900px){.compact-class-form{grid-template-columns:1fr 1fr}.attendance-row{grid-template-columns:30px 90px 160px 130px 110px 110px}.contact-grid{grid-template-columns:1fr}}.class-editor{grid-template-columns:1.2fr 2fr 1fr auto}.weekday-field{border:0;margin:0;padding:0}.weekday-field legend{color:#667085;margin-bottom:6px;font-size:10px;font-weight:700}.weekday-checks{flex-wrap:wrap;gap:5px;display:flex}.weekday-checks label{display:block}.weekday-checks input{opacity:0;pointer-events:none;position:absolute}.weekday-checks span{color:#667085;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:8px;place-items:center;width:34px;height:34px;font-size:11px;display:grid}.weekday-checks label.active span{color:#fff;background:#6576ed;border-color:#6576ed}.class-summary article{background:#fff;border:1px solid #e4e8f0;border-radius:11px;overflow:hidden}.class-summary article.active{background:#f0f2ff;border-color:#6576ed}.class-summary .class-select{background:0 0;border:0;border-radius:0;width:100%}.class-card-actions{border-top:1px solid #edf0f5;display:flex}.class-card-actions button{flex:1;font-size:10px;display:block;text-align:center!important;color:#6470d7!important;background:0 0!important;border:0!important;border-radius:0!important;padding:8px!important}.class-card-actions button+button{border-left:1px solid #edf0f5!important}.class-card-actions .delete{color:#dc5d68!important}.class-edit-modal .weekday-field{margin:6px 0 14px}@media (width<=900px){.class-editor{grid-template-columns:1fr}.weekday-checks span{width:32px;height:32px}}.work-create-modal{width:min(920px,100vw - 32px);max-height:calc(100vh - 32px);overflow:auto}.work-fields{grid-template-columns:1.5fr 1fr 1fr;gap:12px;display:grid}.work-fields label,.class-target>label,.student-search{color:#4d576b;flex-direction:column;gap:7px;font-size:11px;font-weight:700;display:flex}.work-fields input,.class-target select,.student-search input{height:42px;font:inherit;background:#fff;border:1px solid #dfe4ed;border-radius:9px;padding:0 12px}.target-field{border:0;margin:20px 0 12px;padding:0}.target-field legend{margin-bottom:9px;font-size:11px;font-weight:800}.target-tabs{border:1px solid #dfe4ed;border-radius:10px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.target-tabs button{color:#8a93a4;cursor:pointer;background:0 0;border:0;border-radius:7px;height:40px;font-weight:700}.target-tabs button.active{color:#5367df;background:#eef1ff}.class-target{grid-template-columns:240px 1fr;align-items:stretch;gap:13px;display:grid}.class-target>div{background:#f7f8fb;border:1px solid #e8ebf2;border-radius:10px;grid-template-columns:1fr auto;gap:5px 12px;padding:14px;display:grid}.class-target>div span{color:#5367df;font-size:11px;font-weight:800}.class-target>div small{color:#858fa1;grid-column:1/-1;line-height:1.5}.student-picker{grid-template-columns:1fr 1fr;gap:12px;min-height:330px;display:grid}.student-pool,.selected-pool{background:#fff;border:1px solid #dfe4ed;border-radius:11px;overflow:hidden}.student-search{border-bottom:1px solid #e8ebf2;padding:13px}.student-pool>div,.selected-pool>div{max-height:300px;overflow:auto}.student-pool button,.selected-pool button{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;width:100%;padding:11px 13px;display:flex}.student-pool button:hover,.student-pool button.selected{background:#f4f6ff}.student-pool button span,.selected-pool button span{flex-direction:column;gap:4px;display:flex}.student-pool small,.selected-pool small{color:#9099aa;font-size:9px}.student-pool em,.selected-pool em{color:#5267df;font-style:normal;font-weight:800}.selected-pool header{border-bottom:1px solid #e8ebf2;justify-content:space-between;align-items:center;height:54px;padding:0 14px;display:flex}.selected-pool header span{color:#5367df;font-size:11px;font-weight:800}.selected-pool p{color:#9aa3b2;place-items:center;min-height:220px;margin:0;font-size:11px;display:grid}.work-create-modal .modal-actions{margin-top:18px}@media (width<=760px){.work-fields,.class-target,.student-picker{grid-template-columns:1fr}.student-picker{min-height:0}.student-pool>div,.selected-pool>div{max-height:210px}.work-create-modal{padding:18px}.target-tabs button{font-size:11px}}.work-fields.assessment-fields{grid-template-columns:minmax(0,2fr) minmax(160px,1fr)}.multi-class-target{border:1px solid #dfe4ed;border-radius:11px;overflow:hidden}.multi-class-target>header{background:#fafbfc;border-bottom:1px solid #e8ebf2;justify-content:space-between;align-items:center;padding:13px 15px;display:flex}.multi-class-target>header span{color:#5367df;font-size:11px;font-weight:800}.class-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:13px;display:grid}.class-choice-grid label{cursor:pointer;background:#fff;border:1px solid #e4e8f0;border-radius:9px;align-items:center;gap:10px;padding:11px 12px;display:flex}.class-choice-grid label.active{background:#f2f4ff;border-color:#6576ed}.class-choice-grid input{accent-color:#5b6ff0}.class-choice-grid label>span{flex-direction:column;flex:1;gap:4px;display:flex}.class-choice-grid small{color:#8d96a7}.class-choice-grid em{color:#6374e8;font-size:10px;font-style:normal;font-weight:800}.multi-class-target>p{color:#8791a3;border-top:1px solid #edf0f5;margin:0;padding:11px 14px;font-size:10px;line-height:1.55}.multi-class-target>p:not(:empty){background:#fcfcfe}@media (width<=760px){.work-fields.assessment-fields,.class-choice-grid{grid-template-columns:1fr}}.attendance-filter-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.attendance-filter-actions>span{color:#6470d7;font-size:11px;font-weight:700}.absence-filter{color:#bd4e59;cursor:pointer;background:#fff;border:1px solid #e5bfc4;border-radius:8px;height:38px;padding:0 13px;font-weight:800}.absence-filter b{color:#bd4e59;background:#fff0f1;border-radius:10px;place-items:center;min-width:20px;height:20px;margin-left:5px;font-size:10px;display:inline-grid}.absence-filter.active{color:#fff;background:#cf5b66;border-color:#cf5b66}.absence-filter.active b{color:#bd4e59;background:#fff}.attendance-empty{text-align:center;color:#929bab;padding:30px;font-size:11px}@media (width<=760px){.filter-toolbar{flex-wrap:wrap}.attendance-filter-actions{justify-content:space-between;width:100%;margin-left:0}}.checkin-page{color:#172033;min-height:100vh;font-family:var(--font-geist-sans),"Apple SD Gothic Neo",sans-serif;background:#f2f5fb;flex-direction:column;padding:0 5vw;display:flex}.checkin-header{border-bottom:1px solid #dfe5ef;justify-content:space-between;align-items:center;height:105px;display:flex}.checkin-brand{letter-spacing:-.8px;font-size:20px;font-weight:900}.checkin-brand span{color:#586de8}.checkin-header>div:last-child{align-items:baseline;gap:14px;display:flex}.checkin-header b{letter-spacing:-1px;font-size:28px}.checkin-header span{color:#7d8798;font-size:13px}.checkin-shell{grid-template-columns:1fr 470px;align-items:center;gap:9vw;width:min(1120px,100%);margin:auto;padding:40px 0;display:grid}.checkin-kicker{letter-spacing:2.4px;font-weight:800;color:#5a6ff0!important;font-size:12px!important}.checkin-intro h1{letter-spacing:-2.5px;margin:18px 0;font-size:48px;line-height:1.22}.checkin-intro h1 strong{color:#556bea}.checkin-intro>p:not(.checkin-kicker){color:#7d8798;font-size:16px;line-height:1.75}.checkin-summary{background:#fff;border:1px solid #e2e7f0;border-radius:16px;justify-content:space-between;align-items:center;width:220px;margin-top:36px;padding:17px 19px;display:flex;box-shadow:0 8px 28px #253b720c}.checkin-summary span{color:#838da0;font-size:12px}.checkin-summary b{color:#5268e7;font-size:23px}.checkin-summary small{color:#929baa;font-size:12px}.checkin-card{background:#fff;border:1px solid #e1e6ef;border-radius:28px;padding:28px 30px 30px;box-shadow:0 22px 60px #273d7114}.checkin-result{align-items:center;gap:12px;min-height:57px;display:flex}.checkin-result i{color:#6073e7;background:#eef1ff;border-radius:50%;place-items:center;width:38px;height:38px;font-style:normal;font-weight:900;display:grid}.checkin-result div{flex-direction:column;gap:4px;display:flex}.checkin-result b{font-size:15px}.checkin-result span{color:#8993a5;font-size:11px}.checkin-card.success .checkin-result i{color:#29916a;background:#e8f8f0}.checkin-card.error .checkin-result i{color:#d55360;background:#fff0f1}.checkin-code{grid-template-columns:repeat(6,1fr);gap:8px;margin:23px 0;display:grid}.checkin-code span{color:#5b70e8;background:#f8f9fc;border:1.5px solid #dfe5ef;border-radius:11px;place-items:center;height:55px;font-size:16px;display:grid}.checkin-code span.filled{background:#f1f3ff;border-color:#8e9cf0}.number-pad{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.number-pad button{color:#293348;cursor:pointer;touch-action:manipulation;background:#f8f9fc;border:1px solid #e1e6ef;border-radius:13px;height:62px;font-size:23px;font-weight:750}.number-pad button:active{background:#edf0fa;transform:scale(.97)}.number-pad .pad-clear{color:#8490a3;font-size:11px}.number-pad .pad-back{color:#68748a;font-size:20px}.checkin-submit{color:#fff;cursor:pointer;background:#586de8;border:0;border-radius:14px;width:100%;height:59px;margin-top:14px;font-size:16px;font-weight:800;box-shadow:0 9px 20px #586de83d}.checkin-submit:disabled{box-shadow:none;cursor:not-allowed;background:#cbd1e0}.checkin-footer{text-align:center;color:#8c96a8;padding:22px;font-size:11px}.checkin-code-value{letter-spacing:4px;color:#5268e7;font-size:22px}@media (width<=820px){.checkin-page{padding:0 24px}.checkin-header{height:76px}.checkin-shell{grid-template-columns:1fr;gap:24px;padding:26px 0}.checkin-intro{text-align:center}.checkin-intro h1{margin:8px 0;font-size:30px}.checkin-intro>p:not(.checkin-kicker){font-size:13px}.checkin-summary{margin:18px auto 0}.checkin-card{width:min(470px,100%);margin:auto}.checkin-header>div:last-child span{display:none}}@media (height<=760px) and (width>=821px){.checkin-header{height:76px}.checkin-shell{padding:20px 0}.number-pad button{height:52px}.checkin-code span{height:47px}.checkin-card{padding:22px 28px}.checkin-intro h1{font-size:40px}}.class-pool{background:#fff;border:1px solid #dfe4ed;border-radius:11px;overflow:hidden}.class-pool>header{background:#fafbfc;border-bottom:1px solid #e8ebf2;justify-content:space-between;align-items:center;height:54px;padding:0 14px;display:flex}.class-pool>header span{color:#5367df;font-size:11px;font-weight:800}.class-pool>div{max-height:300px;overflow:auto}.class-pool button{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;width:100%;padding:13px 14px;display:flex}.class-pool button:hover,.class-pool button.selected{background:#f4f6ff}.class-pool button>span{flex-direction:column;gap:4px;display:flex}.class-pool small{color:#9099aa;font-size:9px}.class-pool em{color:#5267df;font-style:normal;font-weight:800}.selected-class-pool header span{white-space:nowrap}.class-picker-layout{min-height:310px}@media (width<=760px){.class-pool>div{max-height:210px}.class-picker-layout{min-height:0}}.attendance-toolbar{padding-right:22px}.attendance-toolbar .attendance-filter-actions{gap:14px}.attendance-toolbar .absence-filter{justify-content:center;align-items:center;width:204px;padding:0 12px;display:flex}.attendance-toolbar .absence-filter b{margin-left:10px}@media (width<=760px){.attendance-toolbar{padding-right:16px}.attendance-toolbar .absence-filter{width:204px;max-width:70%}}.module-title-actions{align-items:center;gap:9px;display:flex}.mathflat-link{color:#4d596f;white-space:nowrap;background:#fff;border:1px solid #dfe4ed;border-radius:8px;justify-content:center;align-items:center;height:36px;padding:0 15px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.mathflat-link:hover{color:#5367df;background:#f8f9ff;border-color:#6576ed}@media (width<=760px){.module-title-actions{flex-wrap:wrap;justify-content:flex-end}.mathflat-link{padding:0 11px}}@media (width>=761px){.attendance-toolbar{grid-template-columns:120px 1.2fr 1fr 120px minmax(250px,1.3fr);align-items:end;gap:12px;padding-left:22px;padding-right:22px;display:grid}.attendance-toolbar>label:first-child{grid-column:1/2;min-width:0}.attendance-toolbar>label:nth-child(2){grid-column:2/3;min-width:0}.attendance-toolbar .attendance-filter-actions{display:contents}.attendance-toolbar .attendance-filter-actions>span{grid-column:4/5;place-self:center end;padding-right:0}.attendance-toolbar .absence-filter{box-sizing:border-box;grid-column:5/6;justify-self:start;width:204px;max-width:100%;padding:0 12px;font-size:11px}.attendance-toolbar .attendance-filter-actions>span{grid-column:5/6;place-self:center end;padding:0}.attendance-toolbar .absence-filter,.attendance-toolbar .attendance-filter-actions>span{grid-row:1}.attendance-toolbar .attendance-filter-actions>span{align-self:end;align-items:center;height:38px;display:flex}}.assessment-list td:first-child b{display:block}.assessment-list td:first-child small{color:#8e97a8;margin-top:5px;display:block}.assessment-modal{width:min(820px,100vw - 32px);max-height:calc(100vh - 40px);overflow:auto}.modal-score-list{padding:0}.modal-score-list>label{grid-template-columns:34px 110px 1fr auto;padding:12px 2px}.modal-score-list .avatar{width:30px;height:30px}.modal-score-list input{width:105px}@media (width<=760px){.modal-score-list>label{grid-template-columns:34px 1fr}.modal-score-list>label>small{grid-column:2}.modal-score-list>label>span:last-child{grid-column:1/-1;margin-top:7px}}.row-actions{gap:6px;display:flex}.row-actions button{color:#59657a;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:7px;padding:7px 10px;font-size:10px;font-weight:700}.row-actions .delete{color:#d34f5b;background:#fff8f8;border-color:#f0cfd3}.record-edit-modal{width:min(540px,100%)}.avatar{display:none}.teacher-name .avatar{display:inline-grid}tbody td:first-child{display:table-cell}th,td{vertical-align:middle}.roster-list>label,.score-list>label,.assignment-students>label{margin-bottom:0}.event-students>div{grid-template-columns:110px 1fr auto}.assignment-students label{grid-template-columns:24px 100px 1fr auto}.assignment-modal{width:min(720px,100%)}.assignment-students{border-top:1px solid #e8ebf2;display:block}.assignment-students label{border:0;border-bottom:1px solid #e8ebf2;border-radius:0;grid-template-columns:24px 34px 120px 1fr auto;align-items:center;gap:10px;padding:13px 4px;display:grid}.assignment-filter{justify-content:space-between;align-items:center;margin-bottom:14px;padding:10px 14px;display:flex}.assignment-filter-tabs{gap:5px;display:flex}.assignment-filter-tabs button{color:#7a8497;cursor:pointer;background:0 0;border:0;border-radius:8px;height:38px;padding:0 18px;font-weight:800}.assignment-filter-tabs button.active{color:#5367df;background:#eef0ff}.assignment-search{color:#8e97a8;background:#fff;border:1px solid #dfe4ed;border-radius:8px;align-items:center;gap:8px;width:min(360px,36vw);height:38px;margin-left:12px;padding:0 12px;display:flex}.assignment-search input{color:#30394d;width:100%;font:inherit;background:0 0;border:0;outline:0}.assignment-search input::placeholder{color:#a4adbd}.assignment-filter>span{color:#6470d7;font-size:11px;font-weight:800}@media (width<=760px){.assignment-filter{flex-wrap:wrap;align-items:flex-end;gap:10px}.assignment-filter-tabs{overflow-x:auto}.assignment-filter-tabs button{white-space:nowrap;padding:0 12px}.assignment-search{order:3;width:100%;margin-left:0}.assignment-students label{grid-template-columns:24px 34px 90px 1fr auto}}.topbar-profile-only{justify-content:flex-end}.sidebar-profile{gap:7px;margin-top:10px;padding:14px 2px 0}.sidebar-profile>span{flex:none;width:30px;height:30px}.sidebar-profile b{white-space:nowrap}.sidebar-profile .logout{padding-left:5px!important;padding-right:0!important;font-size:10px!important}.assignment-search,.filter-toolbar label.section-search{color:#8993a5;background:#f6f7fa;border:1px solid #eef0f4;border-radius:9px;flex-direction:row;align-items:center;gap:9px;width:350px;min-width:0;height:38px;margin-left:12px;padding:0 12px;display:flex}.assignment-search input,.filter-toolbar label.section-search input{color:#30394d;background:0 0;border:0;outline:0;width:100%;height:auto;padding:0;font-size:12px}.student-filter-toolbar .section-search{margin-left:auto}.student-management-tabs{background:#e9edf5;border-radius:10px;gap:5px;width:max-content;margin-bottom:14px;padding:4px;display:flex}.student-management-tabs button{color:#788294;cursor:pointer;background:0 0;border:0;border-radius:7px;height:38px;padding:0 20px;font-size:11px;font-weight:800}.student-management-tabs button.active{color:#4d61d6;background:#fff;box-shadow:0 2px 8px #24376412}.student-management-tabs b{background:#eef1ff;border-radius:10px;place-items:center;min-width:20px;height:20px;margin-left:6px;padding:0 5px;display:inline-grid}.class-list-table .row-actions{gap:6px;display:flex}.class-list-table .row-actions button,.set-time-button{color:#59657a;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:7px;height:32px;padding:0 11px;font-size:10px;font-weight:700}.class-list-table .row-actions .delete{color:#d34f5b;border-color:#f0cfd3}.student-edit-actions{grid-template-columns:auto 1fr auto auto;display:grid!important}.student-edit-actions .danger{color:#d34f5b!important;background:#fff8f8!important;border-color:#f0cfd3!important}@media (width<=900px){.student-filter-toolbar .section-search{order:4;width:100%;margin-left:0}.assignment-search{order:3;width:100%;margin-left:0}}.contact-grid section{justify-content:flex-start;min-height:112px}.contact-grid section>a,.contact-grid section>b{margin-top:8px}.contact-grid .guardian-heading{align-items:center;gap:6px;display:flex}.contact-grid .guardian-heading b{font-size:inherit;color:#1f293b}.school-score-tab{gap:14px;display:grid}.school-score-form{background:#f7f8fb;border-radius:10px;grid-template-columns:1fr .9fr 1fr 1fr .8fr .8fr auto;align-items:end;gap:8px;padding:13px;display:grid}.school-score-form label{color:#667085;flex-direction:column;gap:5px;font-size:9px;font-weight:700;display:flex}.school-score-form input,.school-score-form select{width:100%;height:36px;font:inherit;background:#fff;border:1px solid #dfe4ed;border-radius:8px;padding:0 8px}.school-score-form button{white-space:nowrap;height:36px}.school-score-list{border-top:1px solid #e7eaf1;max-height:330px;overflow:auto}.school-score-list article{border-bottom:1px solid #e7eaf1;justify-content:space-between;align-items:center;padding:13px 4px;display:flex}.school-score-list article>div{flex-direction:column;gap:4px;display:flex}.school-score-list article b{font-size:11px}.school-score-list article small{color:#9099aa;font-size:9px}.school-score-list article>strong{color:#5367df;font-size:17px}.school-score-list article>strong small{font-weight:500}@media (width<=760px){.school-score-form{grid-template-columns:1fr 1fr}.school-score-form button{grid-column:1/-1}.student-detail-tabs{overflow-x:auto}.student-detail-tabs button{white-space:nowrap}}.attendance-roster.loading{min-height:180px;position:relative}.attendance-roster.loading .status-row{visibility:hidden}.attendance-roster.loading:after{content:"저장된 출결을 불러오는 중입니다.";color:#929baa;background:#fff;place-items:center;font-size:11px;display:grid;position:absolute;inset:54px 0 0}.modal-head-actions{align-items:center;gap:8px;display:flex}.modal-head-actions .primary{height:36px}.modal-head-actions .modal-close{color:#687184;background:#f1f3f7;border:0;border-radius:8px;width:30px;height:30px;font-size:17px;position:static}.modal-score-list>label{grid-template-columns:110px 1fr auto}.modal-score-list>label>span:last-child{align-items:center;gap:7px;display:flex}tbody tr:last-child td,.roster-list>label:last-child,.score-list>label:last-child,.attendance-roster>.attendance-row:last-child,.student-pool>div>button:last-child,.selected-pool>div>button:last-child,.class-pool>div>button:last-child{border-bottom:0}@media (width<=760px){.modal-score-list>label{grid-template-columns:1fr}.modal-score-list>label>small{grid-column:auto}.modal-head-actions{align-items:flex-start}}.calendar-title{margin-bottom:15px}.calendar-title h1 strong{font-weight:850}.calendar-dashboard-grid{grid-template-columns:minmax(0,1fr) 245px;align-items:start;gap:15px;display:grid}.academy-calendar>header{height:56px}.calendar-head-actions{gap:7px;display:flex;position:absolute;right:14px}.academy-calendar>header .calendar-head-actions button{width:auto;height:32px;padding:0 11px;font-size:10px;position:static}.academy-calendar>header .calendar-add{background:var(--blue);border-color:var(--blue);color:#fff;font-weight:800}.calendar-grid>.calendar-day,.calendar-grid>.blank{background:#fff;border-bottom:1px solid #edf0f5;border-right:1px solid #edf0f5;min-height:74px;padding:8px;position:relative;overflow:hidden}.calendar-grid>.calendar-day>span{color:#566074;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.calendar-grid>.calendar-day.today>span{color:#fff;background:#5a6ff0;font-weight:800}.calendar-grid>.calendar-day>div{gap:4px;display:flex;position:absolute;bottom:9px;left:8px;right:8px}.event-block{cursor:pointer;border:0;border-radius:5px;flex:1;height:8px;padding:0}.event-block.exam{background:#55b88c}.event-block.holiday{background:#ec727d}.event-block.other{background:#8473dd}.event-block:hover{filter:brightness(.9)}.today-dashboard{gap:11px;display:grid}.today-card{border:1px solid var(--line);text-align:left;cursor:pointer;width:100%;min-height:127px;color:var(--ink);background:#fff;flex-direction:column;padding:17px;display:flex}.today-card>span{color:#8993a5;font-size:10px}.today-card>strong{margin:12px 0;font-size:25px}.today-card strong small{color:#8d96a7;font-size:10px;font-weight:600}.today-card>p{color:#7180d9;margin:auto 0 0;font-size:9px}.today-card>p b{float:right}.today-card>div{gap:18px;margin:12px 0;display:flex}.today-card>div strong{flex-direction:column;gap:4px;font-size:20px;display:flex}.attendance-card{background:linear-gradient(140deg,#fff 60%,#eef1ff)}.assignment-card{background:linear-gradient(140deg,#fff 60%,#fff5e8)}.report-card{background:linear-gradient(140deg,#fff 60%,#f2efff)}.day-events-modal{width:min(650px,100%)}.day-event-list{gap:8px;display:grid}.day-event-list article{border:1px solid #e7eaf1;border-radius:10px;grid-template-columns:9px 1fr auto auto;align-items:center;gap:10px;padding:12px;display:grid}.day-event-list i{border-radius:6px;width:9px;height:36px}.day-event-list i.exam{background:#55b88c}.day-event-list i.holiday{background:#ec727d}.day-event-list i.other{background:#8473dd}.day-event-list article>div{flex-direction:column;gap:4px;display:flex}.day-event-list small{color:#8d96a7;font-size:9px}.day-event-list p{color:#687286;margin:2px 0 0;font-size:10px}.day-event-list article>button{color:#59657a;background:#fff;border:1px solid #dfe4ed;border-radius:7px;padding:7px 10px;font-size:9px}.day-event-list article>.delete{color:#d34f5b;background:#fff8f8;border-color:#f0cfd3}@media (width<=1050px){.calendar-dashboard-grid{grid-template-columns:1fr}.today-dashboard{grid-template-columns:repeat(3,1fr)}.today-card{min-height:110px}.calendar-head-actions{right:8px}}@media (width<=760px){.today-dashboard{grid-template-columns:1fr}.calendar-grid>.calendar-day,.calendar-grid>.blank{min-height:64px}.calendar-head-actions{position:static}.academy-calendar>header{justify-content:flex-start;padding:0 8px}.academy-calendar>header h2{min-width:95px;font-size:14px}.calendar-head-actions .today-button{display:none}}.calendar-dashboard{padding-top:31px}.calendar-title{align-items:flex-end;min-height:55px;margin-bottom:25px}.calendar-title h1{margin:0 0 7px;font-size:25px}.calendar-dashboard>.today-dashboard{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:15px}.calendar-dashboard>.today-dashboard .today-card{min-height:105px}.calendar-dashboard-grid{grid-template-columns:minmax(0,1fr) 310px}.calendar-grid>.calendar-day{cursor:pointer;text-align:left;border-top:0;border-left:0}.calendar-grid>.calendar-day.selected{background:#f4f6ff;box-shadow:inset 0 0 0 2px #6576ed}.calendar-grid>.calendar-day>div .event-block{pointer-events:none;display:block}.selected-day-panel{min-height:100%;padding:17px;overflow:hidden}.selected-day-panel>header{border-bottom:1px solid #e9edf4;justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.selected-day-panel h2{margin:0;font-size:16px}.selected-day-panel .eyebrow{margin-bottom:5px}.selected-day-panel>header .primary{height:32px;padding:0 11px;font-size:10px}.selected-day-panel .day-event-list{max-height:460px;margin-top:12px;overflow:auto}.selected-day-panel .day-event-list article{grid-template-columns:7px minmax(0,1fr);padding:11px}.selected-day-panel .day-event-list article>button{grid-row:2;margin-top:3px}.selected-day-panel .day-event-list article>button:not(.delete){grid-column:2;justify-self:start}.selected-day-panel .day-event-list article>.delete{grid-area:2/2;justify-self:end}.day-event-empty{text-align:center;color:#8d96a7;padding:45px 12px}.day-event-empty b{color:#596274;font-size:11px}.day-event-empty p{font-size:9px;line-height:1.5}@media (width<=1050px){.calendar-dashboard-grid{grid-template-columns:1fr}.selected-day-panel{min-height:auto}.calendar-dashboard>.today-dashboard{grid-template-columns:repeat(3,1fr)}}@media (width<=760px){.calendar-dashboard>.today-dashboard{grid-template-columns:1fr}.calendar-title{min-height:0}.selected-day-panel .day-event-list{max-height:none}}.selected-day-panel>header{justify-content:flex-start}.selected-day-panel .day-event-actions{flex-direction:row;grid-column:2;justify-content:flex-end;align-items:center;gap:5px;margin-top:5px;display:flex}.selected-day-panel .day-event-actions button{color:#59657a;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:7px;flex:none;width:auto;min-width:42px;padding:6px 9px;font-size:9px}.selected-day-panel .day-event-actions .delete{color:#d34f5b;background:#fff8f8;border-color:#f0cfd3}.calendar-grid>.calendar-day>div{flex-direction:column;align-items:stretch;display:flex}.calendar-grid>.calendar-day>div .event-block{pointer-events:none;flex:0 0 6px;width:100%;height:6px;min-height:6px;display:block}.lesson-view-tabs{background:#e9edf5;border-radius:10px;gap:5px;width:max-content;margin-bottom:14px;padding:4px;display:flex}.lesson-view-tabs button{color:#788294;cursor:pointer;background:0 0;border:0;border-radius:7px;height:36px;padding:0 18px;font-size:11px;font-weight:800}.lesson-view-tabs button.active{color:#4d61d6;background:#fff;box-shadow:0 2px 8px #24376412}.lesson-toolbar{align-items:end;gap:10px;margin-bottom:14px;padding:13px 16px;display:flex}.lesson-toolbar label,.lesson-card>label{color:#667085;flex-direction:column;gap:6px;font-size:10px;font-weight:700;display:flex}.lesson-toolbar input,.lesson-toolbar select,.lesson-card input,.lesson-card select,.lesson-card textarea{height:38px;font:inherit;background:#fff;border:1px solid #dfe4ed;border-radius:8px;padding:0 10px}.lesson-toolbar>span{color:#6470d7;margin-left:auto;padding:11px;font-size:10px;font-weight:800}.lesson-grid{grid-template-columns:1.2fr 1fr 1fr;align-items:start;gap:14px;display:grid}.lesson-card{padding:18px}.lesson-card>header{justify-content:space-between;margin-bottom:15px;display:flex}.lesson-card h2,.recent-progress h2{margin:0 0 5px;font-size:14px}.lesson-card header p{color:#929baa;margin:0;font-size:9px}.lesson-card header>b{color:#5367df}.assignment-check-card>div{max-height:370px;overflow:auto}.assignment-check-card label{border-bottom:1px solid #edf0f5;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;margin:0;padding:10px 0;display:grid}.assignment-check-card label>span{flex-direction:column;gap:3px;display:flex}.assignment-check-card small{color:#9099aa}.assignment-check-card em{color:#6a75df;font-size:9px;font-style:normal}.lesson-card>label{margin-bottom:10px}.lesson-card textarea{resize:vertical;height:92px;padding:10px}.lesson-card>.primary{margin-top:12px;margin-left:auto;display:block}.lesson-empty{text-align:center;color:#929baa;padding:25px;font-size:10px}.recent-progress{margin-top:14px;padding:18px}.recent-progress>header{margin-bottom:9px}.recent-progress>div{border-bottom:1px solid #edf0f5;grid-template-columns:90px 170px 1fr auto;align-items:center;gap:10px;padding:10px 0;font-size:10px;display:grid}.recent-progress time,.recent-progress small{color:#8d96a7}.student-detail-modal{width:min(660px,100%)}.student-detail-tabs{border-bottom:1px solid #e7eaf1;margin-bottom:16px;display:flex}.student-detail-tabs button{color:#8a93a4;background:0 0;border:0;padding:10px 14px;font-size:10px;font-weight:800}.student-detail-tabs button.active{color:#5367df;border-bottom:2px solid #5367df}.student-detail-tabs b{background:#eef1ff;border-radius:9px;place-items:center;min-width:18px;height:18px;margin-left:4px;display:inline-grid}.student-note-history{gap:9px;max-height:470px;display:grid;overflow:auto}.student-note-history article{border:1px solid #e7eaf1;border-radius:10px;padding:13px}.student-note-history article header{justify-content:space-between;display:flex}.student-note-history article header span{color:#5367df;font-size:9px;font-weight:800}.student-note-history time,.student-note-history small{color:#929baa;font-size:9px}.student-note-history article p{margin:9px 0;font-size:11px;line-height:1.6}@media (width<=1100px){.lesson-grid{grid-template-columns:1fr 1fr}.assignment-check-card{grid-column:1/-1}}@media (width<=760px){.lesson-grid{grid-template-columns:1fr}.assignment-check-card{grid-column:auto}.lesson-toolbar{flex-wrap:wrap}.lesson-toolbar>span{width:100%;margin-left:0}.recent-progress>div{grid-template-columns:1fr}.lesson-view-tabs{width:100%}.lesson-view-tabs button{flex:1}}.lesson-grid.lesson-record-grid{grid-template-columns:minmax(300px,.85fr) minmax(520px,1.65fr)}.class-note-card>header>b{color:#5367df}.class-note-list{max-height:430px;display:grid;overflow:auto}.class-note-row{border-bottom:1px solid #edf0f5;grid-template-columns:130px minmax(220px,1fr) auto;align-items:center;gap:10px;padding:10px 0;display:grid}.class-note-row>span{flex-direction:column;gap:4px;display:flex}.class-note-row small{color:#9099aa;font-size:9px}.class-note-row textarea{resize:vertical;width:100%;height:54px;min-height:54px;font:inherit;border:1px solid #dfe4ed;border-radius:8px;padding:9px}.class-note-row>button{color:#4d61d6;cursor:pointer;background:#eef1ff;border:0;border-radius:7px;height:34px;padding:0 11px;font-size:9px;font-weight:800}.class-note-row>button:disabled{opacity:.45;cursor:default}@media (width<=1000px){.lesson-grid.lesson-record-grid{grid-template-columns:1fr}.class-note-row{grid-template-columns:110px 1fr auto}}@media (width<=620px){.class-note-row{grid-template-columns:1fr auto}.class-note-row textarea{grid-area:2/1/auto/-1}.class-note-row>button{grid-area:1/2}}.grade-view-tabs{margin-bottom:14px}.internal-add{white-space:nowrap;margin-left:0!important}.internal-exam-table strong{color:#4055dc}.internal-exam-modal{width:min(560px,100%)}.student-internal-history{gap:8px;max-height:430px;display:grid;overflow:auto}.student-internal-history article{border:1px solid #e7eaf1;border-radius:9px;grid-template-columns:90px 1fr auto;align-items:center;gap:12px;padding:12px;display:grid}.student-internal-history article>div{flex-direction:column;gap:4px;display:flex}.student-internal-history time,.student-internal-history article small{color:#929baa;font-size:9px}.student-internal-history article>strong{color:#4055dc;font-size:17px}.readonly-guide{color:#8791a3;text-align:center;background:#f7f8fb;border-radius:8px;margin:5px 0 0;padding:11px;font-size:9px}@media (width<=760px){.student-internal-history article{grid-template-columns:1fr auto}.student-internal-history time{grid-column:1/-1}}.assessment-list .rank-button{color:#4d61d6;white-space:nowrap;cursor:pointer;background:#f3f5ff;border:1px solid #d9def5;border-radius:8px;height:32px;padding:0 11px;font-size:10px;font-weight:800}.ranking-modal{width:min(780px,100vw - 32px)}.ranking-table{display:grid}.ranking-head,.ranking-table>div:not(.ranking-head){border-bottom:1px solid #e8ebf2;grid-template-columns:65px 120px minmax(160px,1fr) 110px 110px;align-items:center;gap:10px;padding:12px 5px;display:grid}.ranking-head{color:#929baa;font-size:9px;font-weight:800}.ranking-table>div:not(.ranking-head){font-size:10px}.ranking-table>div:not(.ranking-head)>strong{color:#5367df}.ranking-table em{color:#4055dc;font-style:normal;font-weight:850}.internal-student-table td:first-child b,.internal-student-table td:first-child small,.internal-student-table td:last-child b,.internal-student-table td:last-child small{display:block}.internal-student-table td small{color:#929baa;margin-top:4px}.student-internal-modal{width:min(920px,100vw - 32px);max-height:calc(100vh - 40px);overflow:auto}.student-internal-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:18px;display:grid}.internal-score-form{background:#f7f8fb;border-radius:11px;gap:12px;padding:16px;display:grid}.internal-score-form>header,.internal-score-history>header{justify-content:space-between;align-items:center;display:flex}.internal-score-form>header button{color:#6470d7;cursor:pointer;background:0 0;border:0;font-size:9px}.internal-score-form label{color:#667085;flex-direction:column;gap:6px;font-size:9px;font-weight:700;display:flex}.internal-score-form input{height:38px;font:inherit;background:#fff;border:1px solid #dfe4ed;border-radius:8px;padding:0 10px}.internal-score-form>.primary{justify-self:end}.internal-score-history>header{padding:5px 3px 10px}.internal-score-history>header span{color:#6470d7;font-size:9px;font-weight:800}.internal-score-history article{border-bottom:1px solid #e8ebf2;grid-template-columns:86px minmax(130px,1fr) 90px auto;align-items:center;gap:10px;padding:12px 3px;display:grid}.internal-score-history article>div:not(.row-actions){flex-direction:column;gap:4px;display:flex}.internal-score-history time,.internal-score-history small{color:#929baa;font-size:9px}.internal-score-history strong{color:#4055dc;font-size:15px}.internal-score-history .row-actions{justify-content:flex-end}@media (width<=760px){.ranking-table{min-width:620px}.ranking-modal{overflow:auto}.student-internal-layout{grid-template-columns:1fr}.internal-score-history article{grid-template-columns:1fr auto}.internal-score-history article time,.internal-score-history article .row-actions{grid-column:1/-1}.internal-score-history article .row-actions{justify-content:flex-end}}.weekly-test-modal{width:min(520px,100vw - 32px)}.weekly-period-grid{grid-template-columns:1.25fr 1fr 1fr;gap:10px;display:grid}.weekly-test-preview{background:#f5f7ff;border:1px solid #e2e6f5;border-radius:10px;flex-direction:column;gap:6px;margin-top:4px;padding:14px;display:flex}.weekly-test-preview small{color:#8b94a5;font-size:9px}.weekly-test-preview b{color:#4055dc;font-size:13px}@media (width<=520px){.weekly-period-grid{grid-template-columns:1fr}}.student-note-history article header{justify-content:flex-end}.student-note-history article textarea{resize:vertical;width:100%;min-height:86px;font:inherit;border:1px solid #cfd6ea;border-radius:8px;outline:0;margin:9px 0;padding:10px;line-height:1.6}.student-note-history article textarea:focus{border-color:#6576ed;box-shadow:0 0 0 3px #6576ed18}.student-note-history article footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.note-actions{gap:5px;display:flex}.note-actions button{color:#59657a;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:7px;min-width:42px;height:29px;padding:0 9px;font-size:9px;font-weight:700}.note-actions .save{color:#fff;background:#6576ed;border-color:#6576ed}.note-actions .delete{color:#d34f5b;background:#fff8f8;border-color:#f0cfd3}.note-actions button:disabled{opacity:.5;cursor:default}.homework-check-card{margin-bottom:14px;padding:17px}.homework-check-card>header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.homework-check-card h2{margin:0 0 5px;font-size:14px}.homework-check-card header p{color:#929baa;margin:0;font-size:9px}.homework-check-card header>b{color:#5367df}.homework-check-card section{border-bottom:1px solid #edf0f5;align-items:center;gap:7px;padding:11px 2px;display:flex}.homework-check-card section:last-child{border-bottom:0}.homework-check-card section>div{flex-direction:column;gap:4px;display:flex}.homework-check-card section small{color:#929baa;font-size:9px}.homework-check-card section small.assignment-teacher{color:#68758c;font-weight:700}.homework-check-card section strong{color:#5367df;margin-left:auto;font-size:10px}.lesson-assignment-fields{grid-template-columns:minmax(0,1fr) 125px;gap:9px;display:grid}.lesson-assignment-fields label{color:#667085;flex-direction:column;gap:6px;font-size:10px;font-weight:700;display:flex}.homework-note-row{grid-template-columns:115px 110px minmax(220px,1fr) auto}.homework-done{color:#8a93a4;align-items:center;gap:6px;font-size:9px;flex-direction:row!important;display:flex!important}.homework-done input{width:16px;height:16px}.homework-done.checked{color:#37a077;font-weight:800}.history-filter{justify-content:space-between}.progress-history-table td:nth-child(3) small,.progress-history-table td:nth-child(3) b{display:block}.progress-history-table td:nth-child(3) small{color:#929baa;margin-bottom:4px}.progress-edit-modal{width:min(520px,100vw - 32px)}@media (width<=900px){.homework-note-row{grid-template-columns:110px 100px 1fr}.homework-note-row>button{grid-column:3;justify-self:end}.homework-note-row textarea{grid-column:1/-1}}@media (width<=620px){.lesson-assignment-fields{grid-template-columns:1fr}.homework-note-row{grid-template-columns:1fr auto}.homework-note-row .homework-done{grid-column:2}.homework-note-row textarea{grid-column:1/-1}.homework-note-row>button{grid-column:2}}.lesson-today{grid-template-columns:minmax(300px,.85fr) minmax(520px,1.65fr);grid-template-areas:"notice notice""toolbar toolbar""homework notes""progress notes";align-items:stretch;gap:14px;display:grid}.lesson-today>.lesson-toolbar{grid-area:toolbar;margin-bottom:0}.lesson-today>.homework-check-card{grid-area:homework;margin-bottom:0}.lesson-today>.lesson-record-grid{display:contents}.lesson-today .progress-card{grid-area:progress}.lesson-today .class-note-card{grid-area:notes;min-height:720px}.lesson-today .class-note-list{max-height:650px}@media (width<=1000px){.lesson-today{display:block}.lesson-today>.lesson-toolbar,.lesson-today>.homework-check-card,.lesson-today .progress-card{margin-bottom:14px}.lesson-today>.lesson-record-grid{display:grid}.lesson-today .class-note-card{min-height:560px}.lesson-today .class-note-list{max-height:490px}}.inline-notice,.toast{color:#283246!important;text-align:center!important;z-index:300!important;background:#fff!important;border:1px solid #dfe4ed!important;border-radius:16px!important;width:min(390px,100vw - 36px)!important;margin:0!important;padding:29px 25px 23px!important;font-size:13px!important;font-weight:750!important;line-height:1.55!important;position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;box-shadow:0 24px 80px #17203366,0 0 0 100vmax #17203380!important}.inline-notice{cursor:pointer}.inline-notice:after{content:"확인";color:#fff;background:#5a6ff0;border-radius:8px;width:78px;margin:20px auto 0;padding:9px 0;font-size:10px;font-weight:800;display:block}.inline-notice.error{color:#bd3e4b!important}.inline-notice.error:after{background:#bd3e4b}.inline-notice[data-dismissed=true]{display:none!important}.toast.error{color:#bd3e4b!important}.toast button{cursor:pointer;border:0;border-radius:8px;width:78px;height:34px;font-size:10px;font-weight:800;display:block;position:static;color:#fff!important;background:#5a6ff0!important;margin:20px auto 0!important}.toast.error button{background:#bd3e4b!important}.lesson-today>.inline-notice{grid-area:auto}.inline-checkin-code{color:#4055dc;width:88px;height:34px;font:800 12px/1 var(--font-geist-mono),monospace;letter-spacing:1.4px;text-align:center;background:#f8f9fc;border:1px solid #dce1eb;border-radius:8px;outline:0;padding:0 9px}.inline-checkin-code:focus{background:#fff;border-color:#6576ed;box-shadow:0 0 0 3px #6576ed18}.inline-checkin-code:disabled{opacity:.55}.time-select{align-items:center;gap:5px;display:inline-flex}.time-select select{color:#3f485a;cursor:pointer;background:#fff;border:1px solid #dfe4ee;border-radius:8px;min-width:72px;height:34px;padding:0 8px}.time-select b{color:#8993a5}.student-edit-modal{width:min(620px,100vw - 32px)}.student-edit-modal .time-select{margin-top:7px}.auth-loading{color:#788295;background:#f5f7fb;place-content:center;justify-items:center;gap:13px;min-height:100vh;font-size:12px;display:grid}.auth-loading i{border:3px solid #dfe3f6;border-top-color:#5a6ff0;border-radius:50%;width:29px;height:29px;animation:.75s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.login-page{background:#fff;grid-template-columns:minmax(420px,44%) minmax(480px,56%);min-height:100vh;display:grid}.login-visual{color:#fff;background:linear-gradient(145deg,#17204f 0%,#3349bc 54%,#687af0 100%);flex-direction:column;justify-content:space-between;padding:48px 58px 68px;display:flex;position:relative;overflow:hidden}.login-visual:before,.login-visual:after{content:"";pointer-events:none;border:1px solid #ffffff24;border-radius:50%;position:absolute}.login-visual:before{width:520px;height:520px;top:-80px;right:-270px;box-shadow:0 0 0 90px #ffffff08,0 0 0 180px #ffffff05}.login-visual:after{width:290px;height:290px;bottom:-145px;left:-160px;box-shadow:0 0 0 65px #ffffff08}.login-brand,.login-visual-copy{z-index:1;position:relative}.login-brand .winners-brand{filter:brightness(0)invert();width:190px;height:74px}.login-brand>p{color:#e5e9ff;margin:11px 5px;font-size:12px;line-height:1.7}.login-visual-copy>span{color:#cbd3ff;letter-spacing:2.2px;margin-bottom:20px;font-size:9px;font-weight:800;display:block}.login-visual-copy h1{letter-spacing:-2px;margin:0 0 20px;font-size:38px;line-height:1.28}.login-visual-copy p{color:#dce2ff;margin:0;font-size:13px;line-height:1.9}.login-panel{place-items:center;padding:48px;display:grid}.login-card{width:min(400px,100%)}.login-card .eyebrow{color:#6173df;letter-spacing:1.6px;margin-bottom:12px;font-weight:800}.login-card h2{color:#172033;letter-spacing:-1.3px;margin:0 0 12px;font-size:29px}.login-guide{color:#858fa1;margin:0 0 30px;font-size:12px;line-height:1.7}.login-card>label{color:#455066;flex-direction:column;gap:8px;margin-top:17px;font-size:11px;font-weight:800;display:flex}.login-card input{color:#263146;width:100%;height:50px;font:inherit;background:#fff;border:1px solid #dce1eb;border-radius:10px;outline:0;padding:0 14px;transition:all .15s}.login-card input:focus{border-color:#6576ed;box-shadow:0 0 0 3px #6576ed18}.login-card input::placeholder{color:#b0b7c3}.password-field{position:relative}.password-field input{padding-right:66px}.password-field button{color:#6470d7;cursor:pointer;background:#f2f4fb;border:0;border-radius:7px;height:34px;padding:0 11px;font-size:10px;font-weight:800;position:absolute;top:8px;right:8px}.login-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#5f73ed,#465bd9);border:0;border-radius:10px;width:100%;height:50px;margin-top:27px;font-size:12px;font-weight:850;box-shadow:0 8px 20px #5368e139}.login-submit:disabled{opacity:.65;cursor:wait}.login-error{color:#d34f5b;background:#fff3f4;border:1px solid #f2d0d4;border-radius:9px;margin:18px 0 4px;padding:12px 14px;font-size:11px}.login-help{text-align:center;color:#a1a9b6;margin-top:18px;font-size:9px;display:block}.mobile-login-brand{display:none}.password-change-page{background:radial-gradient(circle at 50% 0,#eef0ff,#f5f7fb 48%);place-items:center;min-height:100vh;padding:35px;display:grid}.password-change-card{background:#fff;border:1px solid #e3e7f0;border-radius:18px;padding:37px 40px;box-shadow:0 18px 55px #23346914}.password-change-card .winners-brand{width:170px;margin-bottom:26px}.password-change-card .login-guide b{color:#5367df}.auth-logout{color:#8a93a4;cursor:pointer;background:0 0;border:0;margin:17px auto 0;font-size:10px;text-decoration:underline;display:block}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-panel{min-height:100vh;padding:34px 24px}.mobile-login-brand{margin-bottom:39px;display:block}.mobile-login-brand .winners-brand{width:180px}.login-card h2{font-size:26px}.password-change-page{padding:20px}.password-change-card{padding:31px 24px}}.login-page{background:radial-gradient(circle at 50% 0,#f3f5ff 0,#f8f9fc 46%,#f2f4f9 100%);grid-template-columns:1fr;place-items:center;padding:40px 24px}.login-panel{width:100%;padding:0}.login-card{background:#fff;border:1px solid #e3e7f0;border-radius:20px;width:min(420px,100%);padding:42px 40px 38px;box-shadow:0 22px 65px #26366b14}.login-logo{justify-content:center;margin-bottom:36px;display:flex}.login-logo .winners-brand{width:210px;height:70px}@media (width<=900px){.login-page{padding:24px 18px}.login-panel{min-height:0;padding:0}.login-card{padding:34px 24px 30px}.login-logo{margin-bottom:30px}.login-logo .winners-brand{width:185px}.mobile-login-brand{display:none}}.summary-loading .today-card strong{color:#b8bfcc}.summary-loading .today-card{pointer-events:none}.progress-card .primary[aria-busy=true]{cursor:wait;opacity:.78;align-items:center;gap:8px;display:flex}.progress-card .primary[aria-busy=true]:before{content:"";border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:12px;height:12px;animation:.7s linear infinite auth-spin}.homework-check-card section>em{color:#5367df;background:#eef1ff;border-radius:7px;flex:0 0 24px;place-items:center;width:24px;height:24px;font-size:10px;font-style:normal;font-weight:850;display:grid}.homework-status-list{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.homework-status-list .homework-done{cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:8px;place-items:center;width:30px;height:30px;display:grid!important}.homework-status-list .homework-done input{opacity:0;pointer-events:none;position:absolute}.homework-status-list .homework-done span{color:#8791a3;font-size:10px;font-weight:850}.homework-status-list .homework-done.checked{background:#eaf9f2;border-color:#68cfa2}.homework-status-list .homework-done.checked span{color:#28966b}.homework-status-list>small{color:#a0a8b6;font-size:9px}.internal-score-form select{height:38px;font:inherit;color:#1f2937;background:#fff;border:1px solid #dfe4ed;border-radius:8px;padding:0 10px}.internal-period-grid{grid-template-columns:1.25fr 1fr 1.2fr;gap:8px;display:grid}.student-attendance-view{min-height:390px}.student-attendance-view>header{grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:12px;display:grid}.student-attendance-view>header b{text-align:center;font-size:15px}.student-attendance-view>header button{color:#59657a;cursor:pointer;background:#fff;border:1px solid #dfe4ed;border-radius:8px;height:32px;font-size:18px}.attendance-calendar-weekdays,.attendance-calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.attendance-calendar-weekdays{background:#fafbfc;border:1px solid #e7eaf1;border-bottom:0;border-radius:10px 10px 0 0}.attendance-calendar-weekdays span{text-align:center;color:#929baa;padding:8px 0;font-size:9px;font-weight:800}.attendance-calendar-weekdays span:first-child{color:#e36b76}.attendance-calendar-weekdays span:last-child{color:#596fe8}.attendance-calendar-grid{border-top:1px solid #e7eaf1;border-left:1px solid #e7eaf1}.attendance-calendar-grid>div,.attendance-calendar-grid>i{background:#fff;border-bottom:1px solid #e7eaf1;border-right:1px solid #e7eaf1;min-height:62px;padding:7px;font-style:normal}.attendance-calendar-grid>div{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.attendance-calendar-grid>div span{color:#687184;font-size:10px}.attendance-calendar-grid>div b{text-align:center;border-radius:5px;align-self:stretch;padding:4px 2px;font-size:8px}.attendance-calendar-grid .present b{color:#27865e;background:#eaf8f2}.attendance-calendar-grid .late b{color:#c98027;background:#fff5e8}.attendance-calendar-grid .absent b{color:#c64c58;background:#fff0f1}.attendance-calendar-grid .excused b{color:#5367df;background:#eef1ff}.student-attendance-view>footer{justify-content:flex-end;gap:12px;padding-top:11px;display:flex}.student-attendance-view>footer span{color:#7d8799;align-items:center;gap:5px;font-size:9px;display:flex}.student-attendance-view>footer span:before{content:"";background:#e7eaf1;border-radius:3px;width:8px;height:8px}.student-attendance-view>footer .present:before{background:#68cfa2}.student-attendance-view>footer .late:before{background:#efb767}.student-attendance-view>footer .absent:before{background:#ee8790}.student-attendance-view>footer .excused:before{background:#7c8cf0}.report-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.solapi-balance{background:#fff;border:1px solid #dfe4ed;border-radius:8px;align-items:center;gap:7px;height:36px;padding:0 12px;display:flex}.solapi-balance small{color:#8b94a5;font-size:9px}.solapi-balance b{color:#4055dc;font-size:11px}.solapi-balance.unavailable b{color:#9aa2b0}.solapi-link{color:#4055dc;border-color:#5a6ff0}.solapi-link:hover{background:#eef1ff}@media (width<=760px){.report-head-actions{margin-top:12px}.solapi-balance{order:3}}.checkin-alimtalk-setting{border:1px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px 20px;display:flex}.checkin-alimtalk-setting>div{flex-direction:column;gap:4px;display:flex}.checkin-alimtalk-setting b{font-size:13px}.checkin-alimtalk-setting small{color:#7d8798;font-size:10px}.checkin-alimtalk-setting em{color:#df626c;font-size:10px;font-style:normal}.toggle-switch{cursor:pointer;background:#d9dee8;border:0;border-radius:20px;width:44px;height:24px;padding:3px}.toggle-switch i{background:#fff;border-radius:50%;width:18px;height:18px;transition:all .2s;display:block}.toggle-switch.active{background:#5a6ff0}.toggle-switch.active i{transform:translate(20px)}.toggle-switch:disabled{opacity:.5;cursor:not-allowed}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
