@font-face{font-family:Pretendard;src:url(fonts/PretendardVariable.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:SquareRound;src:url(fonts/NanumSquareRoundB.woff)format("woff");font-style:normal;font-weight:700 900;font-display:swap}:root{--primary:#4f8bff;--primary-hover:#3778ed;--primary-strong:#2864ce;--navy:#1f2d48;--mint:#4fd7a7;--light-blue:#eaf2ff;--background:#f8fbff;--white:#fff;--secondary:#64748b;--border:#dce6f2;--danger:#a44e50;--font:Pretendard,-apple-system,BlinkMacSystemFont,"Noto Sans KR",sans-serif;--round:SquareRound,Pretendard,sans-serif;--radius:18px}*{box-sizing:border-box}body{font-family:var(--font);color:var(--navy);background:var(--background);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}button,input,textarea{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default}button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:3px solid #95baff}button{transition:background .15s,border-color .15s,color .15s}button:active:not(:disabled){filter:brightness(.97)}.logo-lockup{white-space:nowrap;font-family:var(--round);letter-spacing:-.6px;align-items:center;gap:8px;font-weight:800;line-height:1;display:inline-flex}.logo-lockup .logo-symbol{flex-shrink:0;width:34px;height:34px;display:block}.logo-word{color:var(--navy)}.logo-word span{color:var(--primary)}.logo-lockup.ieum-lockup{--ieum-mark-height:38px;width:calc(var(--ieum-mark-height) * 184 / 77);height:var(--ieum-mark-height);vertical-align:middle;mix-blend-mode:multiply;flex-shrink:0;line-height:0;display:inline-block;position:relative;overflow:hidden}.ieum-lockup .ieum-art{max-width:none;width:calc(var(--ieum-mark-height) * 216 / 77);height:calc(var(--ieum-mark-height) * 130 / 77);left:calc(var(--ieum-mark-height) * -23 / 77);top:calc(var(--ieum-mark-height) * -28 / 77);pointer-events:none;display:block;position:absolute}html,body{height:100%;overflow:hidden}.presentation,.mode{display:none}.stage,.phone-shell{width:100%;height:100svh;padding:0}.phone{background:var(--background);flex-direction:column;width:100%;height:100svh;display:flex;position:relative;overflow:hidden}.phone:before{content:"";z-index:4;background:#162133;border-radius:22px;width:113px;height:29px;position:absolute;top:9px;left:50%;transform:translate(-50%)}.status{flex-shrink:0;justify-content:space-between;align-items:center;height:53px;padding:0 25px;font-size:13px;font-weight:750;display:flex}.status svg{color:var(--navy)}.top{border-bottom:1px solid var(--border);background:var(--white);flex-shrink:0;padding:12px 20px 13px;position:relative}.brand-row{align-items:center;gap:10px;min-width:0;display:flex}.brand{flex-shrink:0;align-items:center;font-size:19px;display:flex}.school-name{letter-spacing:.1px;color:var(--navy);border-left:1px solid var(--border);white-space:nowrap;padding-left:10px;font-size:16px;font-weight:750}.topline{justify-content:flex-end;align-items:center;gap:8px;min-height:33px;margin-top:8px;display:flex}.top:after{content:attr(data-role);color:var(--secondary);font-size:12px;font-weight:600;position:absolute;bottom:20px;left:20px}.reset{border:1px solid var(--border);background:var(--background);width:32px;height:32px;color:var(--secondary);border-radius:10px;flex-shrink:0;place-items:center;font-size:20px;display:grid}.reset:hover{background:var(--light-blue);color:var(--primary-strong)}.notification-toggle{white-space:nowrap;background:var(--light-blue);color:var(--primary-strong);border:1px solid #c5d9ff;border-radius:10px;min-height:32px;padding:5px 9px;font-size:12px;font-weight:750}.notification-toggle.off{color:var(--secondary);border-color:var(--border);background:#f1f5f9}.content{scrollbar-width:thin;scrollbar-color:#cdddf4 transparent;overscroll-behavior:contain;flex:1;min-height:0;padding:23px 20px 30px;overflow:hidden auto}h2{font-family:var(--round);letter-spacing:-.6px;word-break:keep-all;margin:4px 0 10px;font-size:25px;font-weight:700;line-height:1.45}h3{letter-spacing:-.3px;margin:0;font-size:18px;font-weight:700;line-height:1.5}.sub{color:var(--secondary);margin:0 0 18px;font-size:13px;line-height:1.6}.eyebrow{color:var(--primary-strong);letter-spacing:1.3px;margin-bottom:7px;font-size:12px;font-weight:700}.muted{color:var(--secondary)}.info,.tip,.char,.form-hint{color:var(--secondary);font-size:12px;line-height:1.75}.info{margin-top:12px}.tip{padding:15px 2px 0}.char{text-align:right;margin:4px 0 13px}.form-hint{margin:6px 0 0}.recipient{background:var(--light-blue);border-radius:var(--radius);border:1px solid #d6e5ff;align-items:center;gap:13px;margin:20px 0;padding:18px 16px;display:flex}.avatar{background:var(--light-blue);width:42px;height:42px;color:var(--primary-strong);border-radius:14px;flex-shrink:0;place-items:center;font-size:16px;font-weight:750;display:grid}.teacher-photo{object-fit:cover;object-position:center 35%;flex-shrink:0}.recipient .teacher-photo{border:2px solid var(--white);border-radius:50%;width:58px;height:58px}.recipient b{letter-spacing:-.4px;font-size:21px;font-weight:750;line-height:1.5}.recipient small{color:#425776;margin-top:3px;font-size:13px;font-weight:600;line-height:1.8;display:block}.section-title{justify-content:space-between;align-items:center;gap:8px;margin:22px 0 12px;display:flex}.section-title span{color:var(--secondary);font-size:12px}.chips{flex-wrap:wrap;gap:7px;margin-bottom:3px;display:flex}.chips button{white-space:nowrap;border:1px solid var(--border);background:var(--white);color:#415671;border-radius:11px;min-height:38px;padding:8px 10px;font-size:13px;font-weight:650}.chips button:hover,.chips button.active{background:var(--light-blue);color:var(--primary-strong);border-color:#9cbfff}textarea,input.notice-input,.manual-form input{background:var(--white);border:1px solid var(--border);width:100%;color:var(--navy);border-radius:15px;outline:none;min-width:0;padding:14px;font-size:16px;line-height:1.75}textarea{resize:vertical;height:164px;min-height:100px;margin-top:12px}textarea::placeholder,input::placeholder{color:#6b7b92;font-size:14px}input.notice-input,.manual-form input{min-height:50px;font-weight:550;line-height:1.5}.primary{background:var(--primary);width:100%;min-height:54px;color:var(--white);box-shadow:none;border:0;border-radius:15px;padding:13px 12px;font-size:19px;font-weight:750;line-height:1.4}.primary:hover{background:var(--primary-hover)}.outline,.resume{background:var(--white);width:100%;color:var(--navy);border:1px solid #bbd2fa;border-radius:13px;min-height:46px;margin-top:14px;padding:12px;font-size:14px;font-weight:650}.outline:hover,.resume:hover{background:var(--light-blue)}.back{color:var(--primary-strong);background:0 0;border:0;min-height:36px;padding:0 0 18px;font-size:14px;font-weight:650}.badge{background:var(--primary-strong);color:var(--white);border-radius:10px;place-items:center;min-width:18px;height:18px;margin-left:4px;font-size:12px;font-weight:700;display:inline-grid}.tag,.due{color:var(--primary-strong);background:var(--light-blue);border-radius:7px;padding:3px 7px;font-size:12px;font-weight:650;line-height:1.6;display:inline-block}.due{margin-top:8px}.bottom{border-top:1px solid var(--border);background:var(--white);flex-shrink:0;gap:2px;min-height:80px;padding:7px 8px 17px;display:flex}.bottom button{min-width:0;color:var(--secondary);background:0 0;border:0;border-radius:12px;flex:1;min-height:52px;padding:5px 2px;font-size:12px;font-weight:600;line-height:1.4;position:relative}.bottom .ico{width:24px;height:24px;margin:0 auto 5px;display:block}.bottom .ico svg{width:24px;height:24px;display:block}.bottom .badge{min-width:15px;height:15px;margin-left:2px;font-size:10px}.homebar{background:var(--navy);pointer-events:none;border-radius:5px;width:110px;height:4px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.teacher-greeting{align-items:center;gap:14px;margin-bottom:12px;display:flex}.teacher-greeting .teacher-photo{border:3px solid var(--white);border-radius:50%;width:58px;height:58px}.teacher-greeting h2{margin:0;font-size:24px}.summary{grid-template-columns:1fr 1fr;gap:12px;margin:22px 0;display:grid}.metric{background:var(--light-blue);border-radius:var(--radius);border:1px solid #d7e6ff;padding:16px}.metric span{color:#425776;font-size:13px;font-weight:600;display:block}.metric strong{color:var(--primary-strong);margin-top:5px;font-size:32px;font-weight:750;line-height:1.4;display:block}.row{background:var(--white);border:1px solid var(--border);text-align:left;border-radius:17px;align-items:flex-start;gap:12px;width:100%;margin:12px 0;padding:17px 14px;display:flex}.row:hover{border-color:#b7d0fa}.row-main{flex:1;min-width:0}.row-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.row-title b{font-size:18px;font-weight:750}.row-title small{color:var(--secondary);font-size:12px}.row p{color:var(--secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0;font-size:15px;line-height:1.75;display:-webkit-box;overflow:hidden}.student-row{align-items:center;padding:19px 14px}.profile-link{cursor:pointer;border:0}.student-open{text-align:left;background:0 0;border:0;flex:1;min-width:0;padding:0 20px 0 0;position:relative}.recent-count{color:var(--secondary);margin-top:5px;font-size:14px;font-weight:550;display:block}.student-chevron{color:var(--secondary);font-size:23px;position:absolute;top:50%;right:0;transform:translateY(-50%)}.profile-person{cursor:pointer}.profile-person:hover{background:var(--light-blue)}.history-profile{background:var(--light-blue);border-radius:var(--radius);border:1px solid var(--border);align-items:center;gap:13px;padding:18px;display:flex}.history-profile h2{margin:0 0 4px;font-size:23px}.history-profile small{color:var(--secondary);font-size:13px}.memo-open,.item-edit{background:var(--white);color:var(--primary-strong);border:1px solid #c7d9f6;border-radius:9px;min-height:32px;padding:6px 10px;font-size:13px;font-weight:650}.history-stats{color:var(--secondary);margin:16px 0;font-size:14px}.history-card{border:1px solid var(--border);background:var(--white);text-align:left;border-radius:17px;width:100%;margin:13px 0;padding:17px;display:block}.history-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.history-card time,.history-card small{color:var(--secondary);font-size:12px}.history-card h3{margin:12px 0 8px;font-size:17px}.history-card p{color:var(--secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 10px;font-size:15px;line-height:1.75;display:-webkit-box;overflow:hidden}.read-history{float:right;font-weight:650;color:var(--primary-strong)!important}.chat-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:17px;display:flex}.chat-head .back{padding:0}.chat-person{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:0 0 18px;display:flex}.chat-person b{font-size:21px;font-weight:750}.chat-person small{color:var(--secondary);margin-top:3px;font-size:13px;font-weight:550;line-height:1.7;display:block}.chat-name span{color:var(--secondary);margin-left:5px;font-size:12px;font-weight:400}.chat-message.mine{margin-left:auto}.mine .chat-name{text-align:right}.chat-bubble{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--white);border:1px solid var(--border);border-radius:3px 17px 17px;padding:14px 15px;font-size:16px;line-height:1.85}.mine .chat-bubble{background:var(--light-blue);border-color:#d6e5ff;border-radius:17px 3px 17px 17px}.reply{border-top:1px solid var(--border);margin-top:20px;padding-top:15px}.reply>label{color:var(--navy);font-size:14px;font-weight:650}.reply textarea{height:100px;min-height:80px;margin:10px 0 9px}.quick{float:right;background:var(--light-blue);color:var(--primary-strong);border:1px solid #cadaf8;border-radius:9px;min-height:34px;padding:6px 9px;font-size:13px;font-weight:650}.reply-actions{grid-template-columns:minmax(0,3fr) minmax(0,7fr);gap:10px;margin-top:3px;display:grid}.reply-actions .end,.reply-actions .primary{border-radius:14px;width:100%;min-height:54px;padding:12px 5px;line-height:1.4}.end{background:var(--white);color:var(--navy);white-space:nowrap;border:1px solid #bdd2f4;font-size:15px;font-weight:650}.end:hover{background:var(--light-blue)}.closed-note{background:var(--light-blue);color:var(--secondary);text-align:center;border-radius:11px;margin:18px 0;padding:12px;font-size:13px}.candidate-box{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);margin-top:20px;padding:17px}.candidate-box h3{font-size:18px}.candidate-box .info{margin-top:7px}.candidate{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:17px 0;display:flex}.candidate>div{flex:1;min-width:0}.candidate b{font-size:16px;font-weight:650;line-height:1.65;display:block}.add-task{background:var(--primary-strong);color:var(--white);border:0;border-radius:10px;flex-shrink:0;min-height:40px;padding:9px 12px;font-size:14px;font-weight:650}.add-task:disabled{color:#50627e;background:#e6eef9}.event-meta{color:var(--secondary);margin-top:7px;font-size:13px;line-height:1.75;display:block}.filters{gap:8px;margin:21px 0 12px;display:flex}.filters button{color:var(--secondary);background:#edf2f8;border:1px solid #0000;border-radius:10px;min-height:39px;padding:8px 13px;font-size:14px;font-weight:650}.filters .active{background:var(--light-blue);color:var(--primary-strong);border-color:#cadaf8}.todo{border:1px solid var(--border);background:var(--white);border-radius:16px;align-items:flex-start;gap:10px;margin:12px 0;padding:16px 13px;display:flex}.todo-check{cursor:pointer;flex:1;gap:11px;min-width:0;display:flex}.todo input{appearance:none;cursor:pointer;border:1.5px solid #b9cbe5;border-radius:7px;flex-shrink:0;place-items:center;width:23px;height:23px;margin:3px 0;display:grid}.todo input:checked{background:var(--primary-strong);border-color:var(--primary-strong)}.todo input:checked:after{content:"✓";color:var(--white);font-size:15px}.todo-body{overflow-wrap:anywhere;flex:1;min-width:0}.todo-body b{font-size:16px;font-weight:650;line-height:1.7}.todo.done b{color:var(--secondary);text-decoration:line-through}.todo small{color:var(--secondary);margin-top:5px;font-size:12px;display:block}.item-edit{flex-shrink:0;align-self:flex-start;min-height:30px;padding:5px 8px;font-size:12px}.item-edit:hover{background:var(--light-blue)}.tool-heading,.notice-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.tool-heading h2{font-size:24px}.manual-add,.notice-create{background:var(--light-blue);color:var(--primary-strong);white-space:nowrap;border:1px solid #c4d8fc;border-radius:11px;flex-shrink:0;min-height:42px;padding:9px 12px;font-size:15px;font-weight:700}.manual-form{margin-top:22px}.editor-label{margin:20px 0 8px;font-size:15px;font-weight:650;display:block}.form-row{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:11px;display:grid}.form-actions{grid-template-columns:1fr 2fr;gap:10px;margin-top:26px;display:grid}.form-actions button{min-height:52px;margin:0}.delete-item{width:100%;color:var(--danger);background:#fff5f6;border:1px solid #ead9dd;border-radius:13px;min-height:46px;margin-top:16px;padding:11px;font-size:15px;font-weight:650}.calendar-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);margin-top:20px;padding:15px}.month-head{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.month-head b{font-size:18px;font-weight:750}.month-head button{border:1px solid var(--border);background:var(--background);width:34px;height:34px;color:var(--primary-strong);border-radius:10px;font-size:23px}.calendar-grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.weekday{color:var(--secondary);padding:6px 0;font-size:12px;font-weight:600}.cal-day{background:0 0;border:0;border-radius:11px;height:37px;font-size:15px;font-weight:550;position:relative}.cal-day.selected{background:var(--primary-strong);color:var(--white);font-weight:700}.cal-day i{background:var(--primary-strong);border-radius:50%;width:4px;height:4px;display:block;position:absolute;bottom:3px;left:calc(50% - 2px)}.cal-day.selected i{background:var(--white)}.agenda{background:var(--white);border:1px solid var(--border);border-radius:16px;gap:10px;margin:12px 0;padding:16px 13px;display:flex}.event-time{color:var(--primary-strong);flex-shrink:0;font-size:16px;font-weight:750}.agenda>div{overflow-wrap:anywhere;flex:1;min-width:0}.agenda b{font-size:16px;font-weight:650}.agenda small{color:var(--secondary);margin-top:5px;font-size:13px;display:block}.memo-dialog{border:1px solid var(--border);background:var(--white);width:calc(100% - 28px);max-width:355px;max-height:90svh;color:var(--navy);font-family:var(--font);border-radius:22px;padding:22px;overflow:auto;box-shadow:0 14px 45px #1f2d4822}.memo-dialog::backdrop{background:#1f2d4855}.memo-top{justify-content:space-between;align-items:center;display:flex}.memo-top button{color:var(--secondary);background:0 0;border:0;width:32px;height:32px;font-size:26px}.memo-profile{align-items:center;gap:13px;margin:18px 0;display:flex}.memo-profile h3{font-size:21px}.memo-profile small{color:var(--secondary);font-size:13px}.privacy-note{background:var(--light-blue);color:#425776;border-radius:11px;margin-bottom:18px;padding:12px;font-size:13px}.memo-dialog label{font-size:15px}.memo-dialog textarea{height:160px}.memo-dialog .primary{margin-top:15px}.notice-card{border:1px solid var(--border);background:var(--white);border-radius:var(--radius);margin:15px 0;overflow:hidden}.notice-link{text-align:left;background:0 0;border:0;width:100%;padding:18px 17px 13px}.notice-link h3{word-break:keep-all;margin:10px 0 8px;font-size:19px}.notice-link p{color:var(--secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0;font-size:15px;line-height:1.75;display:-webkit-box;overflow:hidden}.notice-link small{color:var(--secondary);font-size:12px}.notice-foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.notice-detail{color:var(--primary-strong);background:0 0;border:0;padding:6px 0;font-size:14px;font-weight:650}.notice-chat{background:var(--primary-strong);color:var(--white);border:0;border-radius:11px;min-height:42px;padding:10px 13px;font-size:14px;font-weight:650}.notice-detail-body h2{margin:15px 0 10px;font-size:25px;line-height:1.5}.notice-content{white-space:pre-wrap;background:var(--white);border:1px solid var(--border);border-radius:16px;margin:22px 0;padding:18px;font-size:16px;line-height:1.9}.notice-context{background:var(--light-blue);text-align:left;border:1px solid #d2e1fa;border-radius:14px;width:100%;margin-top:17px;padding:14px;display:block}.notice-context b{margin-top:7px;font-size:16px;font-weight:700;display:block}.notice-context small{color:var(--primary-strong);margin-top:5px;font-size:12px;display:block}.faq-action{background:var(--light-blue);border-radius:13px;justify-content:space-between;align-items:center;gap:8px;margin:17px 0 7px;padding:12px;display:flex}.faq-action span{color:#425776;font-size:13px}.faq-action button,.question-example{background:var(--white);color:var(--primary-strong);border:1px solid #c8dafa;border-radius:10px;min-height:36px;padding:8px 11px;font-size:13px;font-weight:650}.question-example{margin-bottom:12px;display:block}.faq-edit-pair{background:var(--light-blue);border-radius:16px;margin-top:17px;padding:1px 14px 15px}.faq-edit-pair textarea{height:110px;margin-top:0;font-size:16px}.faq-edit-pair textarea[id^=faqA]{height:150px}.notice-body-input{height:250px}.qa-pair{border:1px solid var(--border);background:var(--white);border-radius:16px;margin:18px 0;padding:18px}.qa-label{color:var(--primary-strong);margin-bottom:9px;font-size:13px;font-weight:750}.qa-pair h3{font-size:18px}.answer-label{margin-top:20px}.qa-pair p{white-space:pre-wrap;margin:0;font-size:16px;line-height:1.85}.empty{text-align:center;border-radius:var(--radius);background:var(--white);color:var(--secondary);border:1px dashed #c5d8f4;margin:16px 0;padding:35px 17px;font-size:14px;line-height:1.85}.empty .big{background:var(--light-blue);width:54px;height:54px;color:var(--primary-strong);border-radius:50%;place-items:center;margin:0 auto 14px;font-size:28px;display:grid}.toast{background:var(--navy);color:var(--white);text-align:center;z-index:8;border-radius:13px;padding:13px;font-size:13px;line-height:1.65;position:absolute;bottom:92px;left:18px;right:18px}.spinner{border:2px solid #ffffff70;border-top-color:var(--white);border-radius:50%;width:14px;height:14px;margin-right:8px;animation:.7s linear infinite spin;display:inline-block}.spinner.blue{border-color:#d0def5;border-top-color:var(--primary-strong)}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=350px){.top{padding-left:15px;padding-right:15px}.brand{font-size:18px}.logo-lockup{gap:6px}.logo-lockup .logo-symbol{width:29px;height:29px}.school-name{padding-left:8px;font-size:15px}.brand-row{gap:8px}.content{padding-left:16px;padding-right:16px}.top:after{left:15px}.chips{gap:5px}.chips button{padding:8px;font-size:12px}.bottom button{font-size:12px}.reply-actions{gap:8px}.end{font-size:14px}.recipient{padding:15px 12px}.recipient small,.top:after{font-size:12px}.notification-toggle{padding:5px 7px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spinner{animation:none}}.content:has(#message)>.primary{z-index:2;box-shadow:0 -7px 0 5px var(--background);position:sticky;bottom:0}.content:has(#message)>h2{font-size:24px}.content:has(#message)>.eyebrow{display:none}.content:has(#message)>.sub{margin-bottom:12px}.content:has(#message) .recipient{margin:16px 0;padding:15px 14px}.content:has(#message) .section-title{margin-top:17px}.content:has(#message)>textarea{height:148px}.notice-draft-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.notice-draft-composer .notice-draft-heading h3{margin:0}.notice-draft-example{background:var(--white);color:var(--primary-strong);white-space:nowrap;border:1px solid #c1d5f9;border-radius:9px;flex-shrink:0;min-height:34px;padding:7px 9px;font-size:12px;font-weight:650}.notice-draft-example:hover:not(:disabled){border-color:var(--primary)}.notice-draft-example:disabled{opacity:.55}.notice-draft-composer{background:var(--light-blue);border:1px solid #d2e1fa;border-radius:16px;margin:20px 0 24px;padding:16px}.notice-draft-composer h3{margin:0 0 12px;font-size:17px}.notice-draft-composer>label{word-break:keep-all;font-size:14px;font-weight:650;line-height:1.7;display:block}.notice-draft-composer textarea{resize:vertical;height:112px;min-height:96px;margin-top:9px;font-size:16px}.notice-draft-composer textarea::placeholder{font-size:14px}.notice-draft-button{background:var(--white);width:100%;min-height:46px;color:var(--primary-strong);border:1px solid #b7cff8;border-radius:12px;margin-top:14px;padding:10px 12px;font-size:16px;font-weight:700}.notice-draft-button:hover:not(:disabled){border-color:var(--primary);background:#f7faff}.notice-draft-button:disabled{color:var(--secondary);background:#edf3fc}.notice-draft-status{color:#425776;margin:11px 0 0;font-size:13px;line-height:1.7}.notice-draft-demo{color:var(--secondary);margin:9px 0 0;font-size:12px;line-height:1.65}.notice-draft-restore{color:var(--primary-strong);background:0 0;border:0;min-height:36px;padding:8px 0;font-size:13px;font-weight:650}.notice-draft-composer textarea:disabled{opacity:.75}.complaint-inbox{text-align:left;background:var(--white);border:1px solid var(--border);width:100%;color:var(--navy);border-radius:15px;align-items:center;gap:10px;padding:14px 16px;display:flex}.complaint-inbox>span:first-child{flex:1}.complaint-inbox b{font-size:16px;font-weight:700;display:block}.complaint-inbox small{color:var(--secondary);margin-top:4px;font-size:12px;display:block}.complaint-inbox:hover{border-color:var(--primary)}.complaint-actions{background:var(--white);border:1px solid var(--border);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;padding:13px;display:flex}.complaint-actions>div{flex:1;min-width:150px}.complaint-actions b{font-size:14px;display:block}.complaint-actions small{color:var(--secondary);margin-top:3px;font-size:12px;line-height:1.6;display:block}.report-button{color:#9d3c58;background:#fff8fa;border:1px solid #d7bdc5;border-radius:10px;min-height:40px;padding:8px 11px;font-size:14px;font-weight:700}.report-button:disabled{opacity:.5;cursor:default}.report-button:hover:not(:disabled){background:#fff0f4}.report-link{color:var(--primary-strong);background:0 0;border:0;min-height:32px;padding:3px 0;font-size:13px;font-weight:650}.report-policy,.report-receipt{background:var(--light-blue);border:1px solid #d5e3fa;border-radius:16px;margin:18px 0;padding:17px}.report-policy b,.report-receipt b{font-size:16px;line-height:1.6;display:block}.report-policy p{margin:9px 0;font-size:14px;line-height:1.8}.report-policy small,.report-receipt small{color:var(--secondary);font-size:12px;line-height:1.8;display:block}.report-receipt .tag{background:var(--white);margin-bottom:10px}.report-receipt small{overflow-wrap:anywhere;margin-top:7px}.report-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:20px;display:grid}.report-metrics>div{text-align:center;border:1px solid var(--border);background:var(--white);border-radius:13px;padding:12px 4px}.report-metrics strong{color:var(--primary-strong);font-size:26px;font-weight:750;display:block}.report-metrics span{color:var(--secondary);word-break:keep-all;margin-top:4px;font-size:12px;line-height:1.6;display:block}.report-card{text-align:left;background:var(--white);border:1px solid var(--border);width:100%;color:var(--navy);border-radius:17px;margin:15px 0;padding:17px;display:block}.report-card:hover{border-color:var(--primary)}.report-card-top{justify-content:space-between;align-items:center;gap:7px;display:flex}.report-card h3{margin:12px 0 8px}.report-card p{color:var(--secondary);margin:0 0 10px;font-size:14px;line-height:1.8}.report-card small,.report-status{color:var(--primary-strong);font-size:12px;font-weight:600}.report-demo{color:#445b7b;background:#eef3fa;border-radius:11px;margin:18px 0;padding:12px 14px;font-size:12px;line-height:1.8}.report-section{margin-top:25px}.report-reason{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.8}.report-evidence{padding-left:22px;font-size:14px;line-height:1.8}.report-evidence time{color:var(--secondary);font-size:12px}.report-evidence p{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 16px}.report-conversation{border:1px solid var(--border);background:var(--white);border-radius:15px;margin:15px 0;overflow:hidden}.report-conversation summary{cursor:pointer;padding:15px;font-size:14px;font-weight:700;line-height:1.6}.report-conversation summary small{color:var(--secondary);margin-top:4px;font-size:12px;font-weight:500;display:block}.report-message{border-top:1px solid var(--border);padding:15px}.report-message-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:11px;display:flex}.report-message-head b{font-size:13px}.report-message-head time{color:var(--secondary);font-size:12px}.report-original,.report-displayed,.report-teacher{background:#f3f5f9;border-radius:11px;margin-top:9px;padding:12px}.report-displayed{background:var(--light-blue)}.report-teacher{background:var(--background)}.report-message span{color:#455c7b;font-size:12px;font-weight:700}.report-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:7px 0 0;font-size:15px;line-height:1.85}.report-submit{background:var(--background);z-index:2;padding:10px 0;position:sticky;bottom:0}.report-submit .primary{font-size:16px}.report-submit .outline{font-size:15px}.row-summary,.row-last{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin-top:6px;line-height:1.65;display:-webkit-box;overflow:hidden}.row-summary{color:var(--navy);font-size:15px;font-weight:650}.row-last{color:var(--secondary);font-size:14px}.row-name{align-items:center;gap:7px;min-width:0;display:flex}.row-name .tag{padding:1px 6px;font-size:11px}.close-choice{border:1px solid var(--border);background:var(--white);border-radius:15px;margin-top:12px;padding:14px}.close-choice .info{margin:0 0 12px}.close-choice .outline{margin-top:10px}.close-choice .back{margin:10px auto 0;padding:0;display:block}.swipe{touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:17px;margin:12px 0;position:relative;overflow:hidden}.swipe .row{margin:0}.swipe-front{background:var(--background);position:relative}.swipe-front.settle{transition:transform .2s}.swipe-actions{gap:6px;padding-left:8px;display:flex;position:absolute;top:0;bottom:0;right:0}.swipe-action{color:var(--white);background:#7d8aa0;border:0;border-radius:17px;flex:1;font-size:15px;font-weight:700}.unread{color:#fff;background:#e0353b;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:750;line-height:1;display:inline-grid}.refined-note{color:var(--secondary);text-align:right;margin-top:5px;font-size:11px}.share-check{color:var(--navy);align-items:center;gap:8px;margin-top:16px;font-size:14px;font-weight:600;display:flex}.share-check input{width:18px;height:18px}html{background:#e8eef8}#root{background:var(--background);max-width:430px;height:100%;box-shadow:0 0 0 1px var(--border);margin:0 auto}.phone:before{display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.who{color:var(--secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-right:auto;font-size:12px;font-weight:600;overflow:hidden}.alert{color:var(--danger);background:#fff5f6;border:1px solid #ead9dd;border-radius:11px;margin:10px 0;padding:11px 13px;font-size:14px;line-height:1.7}.loading{color:var(--secondary);margin:14px 0;font-size:14px}a.back,a.notice-detail,a.notice-create,a.notice-link,a.item-edit{text-decoration:none;display:inline-block}a.notice-create,a.item-edit{align-items:center;display:inline-flex}a.notice-link{width:100%;color:inherit;display:block}.item-edit.danger{color:var(--danger);background:#fff5f6;border-color:#ead9dd}.task-actions{flex-shrink:0;align-self:flex-start;gap:6px;display:flex}.draft-checks{background:#fff8e1;border:2px solid #e0a100;border-radius:14px;margin:14px 0;padding:13px 15px;font-size:14px;line-height:1.75}.draft-checks ul{margin:7px 0 0;padding-left:20px}.draft-checks p{margin:8px 0 0}.char.over{color:var(--danger);font-weight:700}.primary[aria-disabled=true]{color:#3d567a;background:#c9d8ee}.notice-foot .notice-detail{color:var(--primary-strong)}.login-form .primary{margin-top:22px}ul.plain-list{margin:0;padding:0;list-style:none}.todo{flex-wrap:wrap}.todo .alert,.agenda .alert{flex-basis:100%}.agenda .task-actions{flex-direction:column}.chat-log{margin:0 0 8px;padding:0;list-style:none}.row-button{cursor:pointer}.parent-send{margin-top:3px}.msg-note{color:var(--secondary);margin:0;font-size:13px}.msg-actions{margin-top:8px}.start-conversation{border:1px solid var(--border);background:var(--light-blue);border-radius:17px;margin:14px 0;padding:14px}.start-conversation h3{margin:0;font-size:17px}.start-conversation .row:disabled{opacity:.6}.chat-screen{flex-direction:column;min-height:100%;display:flex}.chat-screen .chat-log{flex:1}.content:has(.chat-screen){padding-bottom:0}.chat-compose{background:var(--background);border-top:1px solid var(--border);z-index:2;margin:0 -20px;padding:0 20px 16px;position:sticky;bottom:0}.chat-compose .reply{border-top:0;margin-top:0}:root{--primary:#0071f0;--primary-hover:#0064d6;--primary-strong:#0071f0;--navy:#1c1c1e;--light-blue:#e8f1fe;--background:#f2f2f7;--white:#fff;--secondary:#6c6c70;--border:#3c3c4329;--danger:#e5352b;--ios-red:#ff3b30;--ios-fill:#7676801f;--ios-hairline:#3c3c4338;--ios-shadow:0 1px 2px #0000000a, 0 2px 10px #0000000a;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", Pretendard, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--round:-apple-system, BlinkMacSystemFont, "SF Pro Display", Pretendard, "Apple SD Gothic Neo", sans-serif}body{-webkit-font-smoothing:antialiased;letter-spacing:-.2px}.top{-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-bottom:.5px solid var(--ios-hairline);background:#ffffffd1}.school-name{border-left-color:var(--ios-hairline);font-weight:650}.top:after{color:var(--secondary)}.notification-toggle,.notification-toggle.off{color:var(--primary);box-shadow:none;background:0 0;border:0;font-size:15px;font-weight:500}.eyebrow{color:var(--secondary);letter-spacing:.4px;font-size:13px;font-weight:600}h2{font-family:var(--round);letter-spacing:-.8px;font-weight:700}h3{letter-spacing:-.4px}.primary{letter-spacing:-.3px;border-radius:14px;font-size:17px;font-weight:600}.primary:disabled{color:#6c6c70;background:#d1d1d6}.outline,.resume,.end{background:var(--ios-fill);color:var(--primary);border:0;font-weight:600}.outline:hover,.resume:hover,.end:hover{background:#7676802e}.back{font-size:17px;font-weight:500}.manual-add,.notice-create{background:var(--light-blue);color:var(--primary);border:0;border-radius:999px;min-height:36px;padding:8px 14px;font-weight:600}.item-edit,.memo-open{background:var(--ios-fill);color:var(--primary);border:0;border-radius:999px;font-weight:600}.item-edit.danger{color:var(--danger)}.delete-item{color:var(--danger);box-shadow:var(--ios-shadow);background:#fff;border:0;border-radius:14px;font-weight:600}.add-task{background:var(--primary);border-radius:999px;font-weight:600}textarea,input.notice-input,.manual-form input{border:.5px solid var(--ios-hairline);color:var(--navy);border-radius:12px}textarea:focus,input.notice-input:focus,.manual-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0071f026}.chips{background:var(--ios-fill);border-radius:10px;gap:2px;margin-bottom:4px;padding:2px;display:inline-flex}.chips button{color:var(--navy);background:0 0;border:0;border-radius:8px;min-height:32px;padding:6px 14px;font-weight:500}.chips button:hover{color:var(--navy);background:0 0}.chips button.active,.chips button.active:hover{color:var(--navy);background:#fff;font-weight:600;box-shadow:0 3px 8px #0000001f,0 3px 1px #0000000a}.row,.todo,.agenda,.history-card,.report-card,.calendar-card,.candidate-box,.recipient{box-shadow:var(--ios-shadow);border:0}.row,.todo,.agenda{border-radius:16px}.row:hover{background:#fafafa;border-color:#0000}.row:active{background:#f0f0f3}.row-title b{letter-spacing:-.4px;font-size:17px;font-weight:600}.row-title small{font-size:13px}.row-summary{color:var(--navy);font-weight:500}.row-main+.muted{color:#c7c7cc;font-size:20px}.avatar{color:var(--primary)}.tag,.due{background:var(--ios-fill);color:var(--secondary);border-radius:999px;font-weight:600}.row-name .tag{background:var(--light-blue);color:var(--primary)}.unread{background:var(--ios-red)}.swipe-action{background:#8e8e93;border-radius:16px;font-weight:600}.swipe-action.danger{background:var(--ios-red)}.swipe-front .row{box-shadow:var(--ios-shadow)}.chat-person{border-bottom:.5px solid var(--ios-hairline)}.chat-person b{letter-spacing:-.5px;font-weight:650}.chat-name{color:var(--secondary);margin-bottom:5px;font-size:12px;font-weight:500}.chat-name span{color:#8e8e93}.chat-message{max-width:82%;margin:14px 0}.chat-bubble{color:#1c1c1e;background:#e9e9eb;border:0;border-radius:20px 20px 20px 6px;width:fit-content;max-width:100%;padding:10px 14px;font-size:16px;line-height:1.55}.mine .chat-bubble{background:var(--primary);color:#fff;border-radius:20px 20px 6px;margin-left:auto}.refined-note{color:#8e8e93}.chat-compose{-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-top:.5px solid var(--ios-hairline);background:#f2f2f7e6}.chat-compose .reply>label{color:var(--secondary);font-size:13px;font-weight:500}.chat-compose textarea{background:#fff;border-radius:18px;height:84px;min-height:60px}.closed-note{background:var(--ios-fill);border-radius:12px}.month-head button{color:var(--primary);background:0 0;border:0;font-size:26px}.month-head b{letter-spacing:-.4px;font-weight:650}.weekday{color:#8e8e93;font-weight:500}.cal-day{border-radius:50%;justify-self:center;width:38px;height:38px;font-weight:450}.cal-day:hover{background:var(--ios-fill)}.cal-day.selected{background:var(--primary);font-weight:600}.cal-day i{background:#8e8e93}.event-time{color:var(--primary);font-weight:600}.bottom{-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-top:.5px solid var(--ios-hairline);background:#ffffffd1}.bottom button{color:#7c7c80;font-size:11px;font-weight:500}.bottom button.active{color:var(--primary);background:0 0;font-weight:600}.alert{border:0;border-radius:12px}.empty{color:#8e8e93;background:0 0;border:0}.badge{background:var(--ios-red)}.swipe:not(.active) .swipe-actions{visibility:hidden}.chat-person{align-items:center}.chat-person>div{flex:1;min-width:0}.memo-toggle{background:var(--ios-fill);min-height:30px;color:var(--navy);border:0;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:4px 11px;font-size:13px;font-weight:600;display:inline-flex}.memo-toggle.on{background:var(--light-blue);color:var(--primary)}.memo-dot{background:var(--primary);border-radius:50%;width:6px;height:6px}.memo-panel{margin:10px 0 2px}.memo-panel textarea{height:96px;margin:0;padding:10px 12px;font-size:15px;line-height:1.6}.memo-panel .info{margin:4px 2px 8px;font-size:11px}.memo-state{color:var(--primary)}input.notice-input.student-search{background:var(--ios-fill);border-radius:10px;margin:14px 0 4px;padding:8px 12px;font-size:16px;border:0!important;min-height:40px!important}.student-line{align-items:center;margin:8px 0;padding:13px 14px}.student-line .row-last{margin-top:2px}.reply-head{justify-content:space-between;align-items:center;gap:8px;min-height:34px;display:flex}.reply-head .info{margin:0}.draft-toggle{background:var(--light-blue);min-height:30px;color:var(--primary);border:0;border-radius:999px;padding:5px 11px;font-size:13px;font-weight:600}.draft-toggle.on{background:var(--primary);color:#fff}.draft-memo{margin:6px 0 2px}.draft-memo-row{border:.5px solid var(--ios-hairline);background:#fff;border-radius:18px;align-items:flex-end;gap:6px;padding:4px 4px 4px 12px;display:flex}.draft-memo-row:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #0071f026}.chat-compose .draft-memo-row textarea{box-shadow:none;resize:none;field-sizing:content;background:0 0;border:0;flex:1;height:auto;min-height:0;max-height:72px;margin:0;padding:6px 0;font-size:14px;line-height:1.5}.draft-make{background:var(--primary);color:#fff;border:0;border-radius:999px;flex-shrink:0;min-width:58px;min-height:32px;padding:0 12px;font-size:13px;font-weight:600}.draft-make:disabled{color:#6c6c70;background:#d1d1d6}.draft-status{color:var(--secondary);margin:5px 4px 0;font-size:12px}.chat-compose .draft-checks{border-width:1px;max-height:110px;margin:8px 0 4px;padding:9px 12px;font-size:13px;line-height:1.6;overflow-y:auto}.chat-compose .notice-draft-restore{margin:0 0 4px;font-size:12px}.chat-compose textarea:not(#draft-memo){height:72px}.chat-compose .reply-actions .end,.chat-compose .reply-actions .primary,.chat-compose .parent-send .primary{min-height:46px;padding-top:9px;padding-bottom:9px;font-size:16px}.top{align-items:center;gap:10px;min-height:58px;padding:10px 20px;display:flex}.top:after{content:none}.top .brand-row{flex:1;gap:8px;min-width:0}.logo-lockup.ieum-lockup{--ieum-mark-height:24px}.school-name{color:var(--secondary);text-overflow:ellipsis;padding-left:8px;font-size:13px;font-weight:600;overflow:hidden}.profile{flex-shrink:0;position:relative}.profile-button{background:var(--light-blue);width:32px;height:32px;color:var(--primary);border:0;border-radius:50%;font-size:14px;font-weight:700}.profile-button[aria-expanded=true]{background:var(--primary);color:#fff}.profile-menu{z-index:20;width:210px;box-shadow:0 10px 30px #00000029, 0 0 0 .5px var(--ios-hairline);background:#fff;border-radius:14px;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.profile-who{border-bottom:.5px solid var(--ios-hairline);padding:13px 16px 11px}.profile-who b{font-size:15px;font-weight:600;display:block}.profile-who small{color:var(--secondary);margin-top:2px;font-size:12px;display:block}.profile-logout{text-align:left;width:100%;color:var(--ios-red);background:0 0;border:0;padding:12px 16px;font-size:15px;display:block}.profile-logout:hover{background:var(--ios-fill)}.content .eyebrow{display:none}@media (width>=520px) and (height>=640px){html{background:radial-gradient(1200px 700px at 50% 0,#eef3fb 0%,#dfe6f1 60%,#d6deeb 100%)}#root{border-radius:36px;height:min(880px,100svh - 48px);margin:max(24px,50svh - 440px) auto 0;overflow:hidden;box-shadow:0 0 0 1px #00000014,0 30px 80px #14234638}.stage,.phone-shell,.phone{height:100%}}.chat-compose{margin:0 -20px;padding:8px 16px 10px}.composer{border:0;margin:0;padding:0}.composer-row{align-items:flex-end;gap:8px;display:flex}.composer-field{border:.5px solid var(--ios-hairline);background:#fff;border-radius:20px;flex:1;align-items:flex-end;gap:6px;min-width:0;padding:3px 3px 3px 14px;display:flex}.composer-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #0071f01f}.chat-compose .composer-field textarea{height:auto;min-height:0;box-shadow:none;resize:none;background:0 0;border:0;border-radius:0;flex:1;margin:0;padding:7px 0;font-size:16px;line-height:1.45}.send{background:var(--primary);border:0;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.send svg{fill:none;stroke:#fff;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.send:disabled{background:#c7c7cc}.send .spinner{width:14px;height:14px}.draft-toggle{border-radius:50%;flex-shrink:0;width:38px;height:38px;min-height:0;padding:0;font-size:16px}.chat-compose .draft-panel:not(:empty){margin-bottom:8px}.chat-compose .draft-memo{margin:0}.head-action{background:var(--ios-fill);min-height:30px;color:var(--danger);border:0;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}.close-choice{box-shadow:var(--ios-shadow);border:0;border-radius:16px;margin:0 0 12px}@media (width>=520px) and (height>=640px){.top{min-height:66px;padding:16px 26px 12px}}.chat-bar{border-bottom:.5px solid var(--ios-hairline);align-items:center;gap:10px;margin:-6px 0 4px;padding:0 0 12px;display:flex}.bar-back{width:28px;height:36px;color:var(--primary);background:0 0;border:0;flex-shrink:0;margin-left:-6px;padding:0 0 4px;font-size:34px;font-weight:300;line-height:1}.chat-bar .avatar{border-radius:12px;width:36px;height:36px;font-size:14px}.bar-title{letter-spacing:-.4px;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:18px;font-weight:650;overflow:hidden}.bar-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}
