:root{color:#17233c;background:#f5f7fb;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--blue: #165dff;--blue-deep: #1149c9;--ink: #17233c;--muted: #74809a;--line: #e8edf5;--surface: #ffffff;--soft-blue: #eef4ff;--green: #0fa77a;--amber: #e79b15;--coral: #ef6a67;--shadow: 0 18px 50px rgba(34, 54, 91, .1)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f5f7fb}button,input,textarea,select{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}.boot-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:18px;color:var(--muted);background:#fff}.brand-mark{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,#2f7bff,#1047c8);color:#fff;font-size:26px;font-weight:800;box-shadow:0 12px 28px #165dff47}.brand-mark.small{width:42px;height:42px;border-radius:13px;font-size:20px;box-shadow:none}.loader{width:32px;height:32px;border-radius:50%;border:3px solid #dce7ff;border-top-color:var(--blue);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.1fr) minmax(400px,.9fr);background:#fff}.login-story{position:relative;min-height:100vh;overflow:hidden;color:#fff;background:radial-gradient(circle at 12% 18%,rgba(78,160,255,.35),transparent 28%),linear-gradient(145deg,#0e317f,#165dff 52%,#2c7cff);padding:64px clamp(44px,7vw,108px);display:flex;flex-direction:column;justify-content:center}.story-glow{position:absolute;border-radius:50%;filter:blur(4px);border:1px solid rgba(255,255,255,.16)}.glow-one{width:520px;height:520px;right:-180px;bottom:-210px}.glow-two{width:280px;height:280px;right:15%;top:-150px}.story-content,.story-card{position:relative;z-index:1}.logo-row,.mobile-logo{display:flex;align-items:center;gap:14px;font-size:20px;font-weight:750;letter-spacing:.02em}.eyebrow{display:block;color:var(--blue);font-size:12px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}.login-story .eyebrow{margin-top:104px;color:#cbe0ff}.login-story h1{margin:18px 0 24px;font-size:clamp(42px,5vw,68px);line-height:1.16;letter-spacing:-.045em}.story-copy{max-width:540px;color:#d7e7ff;font-size:16px;line-height:1.9}.story-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.story-points span{padding:9px 14px;border-radius:999px;color:#e8f2ff;background:#ffffff1a;border:1px solid rgba(255,255,255,.16);font-size:13px}.story-card{width:min(430px,90%);margin-top:60px;padding:20px;border-radius:22px;background:#ffffff1c;border:1px solid rgba(255,255,255,.17);box-shadow:0 24px 60px #071d5038;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.story-card-head{display:flex;justify-content:space-between;margin-bottom:14px;color:#d9e9ff;font-size:12px}.live-dot{width:8px;height:8px;border-radius:50%;background:#63eea8;box-shadow:0 0 0 6px #63eea81f}.mini-event{display:flex;align-items:center;gap:13px;padding:12px 0;border-top:1px solid rgba(255,255,255,.11)}.mini-event div:last-child{display:grid;gap:4px}.mini-event small{color:#bfd6ff;font-size:12px}.mini-icon{flex:none;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:750}.mini-icon.blue{background:#8bc1ff38}.mini-icon.green{background:#61efa82e}.login-panel{display:grid;place-items:center;padding:44px}.login-card{width:min(410px,100%);display:grid;gap:18px}.mobile-logo{display:none}.login-card h2{margin:0;color:var(--ink);font-size:34px;letter-spacing:-.03em}.login-subtitle{margin:-10px 0 16px;color:var(--muted);line-height:1.7}label{display:grid;gap:8px;color:#41506c;font-size:13px;font-weight:600}input,textarea,select{width:100%;border:1px solid #dfe6f1;border-radius:12px;color:var(--ink);outline:none;background:#fbfcfe;transition:border-color .18s ease,box-shadow .18s ease}input,select{height:46px;padding:0 14px}textarea{padding:12px 14px;resize:vertical;line-height:1.7}input:focus,textarea:focus,select:focus{border-color:#79a7ff;background:#fff;box-shadow:0 0 0 4px #165dff17}.primary-button,.ghost-button,.text-button{border-radius:11px;transition:transform .15s ease,background .15s ease}.primary-button{padding:12px 18px;color:#fff;background:linear-gradient(135deg,#2b76ff,#165dff);box-shadow:0 10px 24px #165dff2e;font-weight:700}.primary-button:hover{background:linear-gradient(135deg,#236beb,#114ed8);transform:translateY(-1px)}.primary-button.full{height:50px;margin-top:4px}.primary-button.compact{padding:9px 16px}.ghost-button{padding:11px 18px;color:#56627a;background:#f2f5fa;font-weight:650}.ghost-button:hover{background:#e9eef6}.text-button{padding:8px;color:var(--blue);background:transparent;font-size:13px;font-weight:650}.form-error{color:#d83939;background:#fff1f1;border-radius:10px;padding:10px 12px;font-size:13px}.demo-accounts{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px;color:var(--muted);font-size:12px}.demo-accounts strong{margin-right:3px}.demo-accounts button{padding:7px 10px;border-radius:8px;color:#536078;background:#f1f4f9;font-size:12px}.app-shell{min-height:100vh;display:flex}.sidebar{width:236px;height:100vh;position:fixed;inset:0 auto 0 0;z-index:20;padding:26px 20px 20px;display:flex;flex-direction:column;background:#0d1b38;color:#dce7fb}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:2px 4px 28px}.sidebar-brand div:last-child{display:grid;gap:3px}.sidebar-brand strong{font-size:16px}.sidebar-brand small{color:#6f86af;font-size:11px}.sidebar nav{display:grid;gap:7px;overflow-y:auto}.nav-item{position:relative;width:100%;min-height:45px;padding:0 13px;display:flex;align-items:center;gap:12px;border-radius:11px;color:#91a2c1;background:transparent;text-align:left}.nav-item:hover{color:#fff;background:#ffffff0d}.nav-item.active{color:#fff;background:linear-gradient(135deg,#266efff2,#165dffbf);box-shadow:0 10px 25px #00288c33}.nav-icon{width:20px;font-size:20px;text-align:center}.nav-badge{margin-left:auto;min-width:22px;height:22px;padding:0 6px;border-radius:99px;display:grid;place-items:center;color:#fff;background:#f37166;font-size:11px}.sidebar-help{margin-top:auto;padding:15px 12px;display:flex;gap:10px;border-radius:12px;background:#ffffff0d}.sidebar-help div{display:grid;gap:3px}.sidebar-help strong{font-size:12px}.sidebar-help small{color:#7589ac;font-size:10px}.help-mark{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#3f82ff47;color:#8db5ff;font-weight:750}.logout-button{margin-top:12px;padding:10px;color:#6f83a5;background:transparent;font-size:12px}.workspace{width:calc(100% - 236px);min-height:100vh;margin-left:236px}.topbar{height:86px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#ffffffeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar h2{margin:0 0 4px;font-size:20px}.topbar p{margin:0;color:var(--muted);font-size:12px}.user-card{padding:5px;display:flex;align-items:center;gap:10px;color:inherit;background:transparent;text-align:left}.user-card div:last-child{display:grid;gap:3px}.user-card strong{font-size:13px}.user-card small{color:var(--muted);font-size:10px}.avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:var(--blue);background:var(--soft-blue);font-size:12px;font-weight:750}.menu-button,.mobile-backdrop{display:none}.content{padding:28px 40px 48px}.view-stack{display:grid;gap:22px}.welcome-banner{min-height:190px;padding:31px 36px;display:flex;justify-content:space-between;align-items:center;overflow:hidden;border-radius:20px;color:#fff;background:radial-gradient(circle at 72% 130%,rgba(126,188,255,.45),transparent 38%),linear-gradient(125deg,#103681,#165dff 75%);box-shadow:0 18px 46px #1648ab33}.welcome-banner h1{margin:9px 0;font-size:29px;letter-spacing:-.03em}.welcome-banner p{margin:0;max-width:600px;color:#d7e7ff;line-height:1.7;font-size:13px}.welcome-banner .eyebrow{color:#9fc6ff}.welcome-date{width:116px;height:116px;flex:none;border-radius:50%;display:grid;place-content:center;text-align:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.18)}.welcome-date strong{font-size:38px;line-height:1}.welcome-date span{margin-top:7px;color:#c2d9ff;font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat-card{position:relative;overflow:hidden;padding:21px;display:grid;gap:8px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.stat-card:after{content:"";position:absolute;width:80px;height:80px;right:-28px;top:-34px;border-radius:50%;opacity:.11}.stat-card.blue:after{background:var(--blue)}.stat-card.green:after{background:var(--green)}.stat-card.amber:after{background:var(--amber)}.stat-card.coral:after{background:var(--coral)}.stat-card span{color:var(--muted);font-size:12px}.stat-card strong{font-size:30px;letter-spacing:-.025em}.stat-card small{color:#9aa5b9;font-size:10px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:18px}.panel{border:1px solid var(--line);border-radius:16px;background:var(--surface)}.page-panel{min-height:590px;padding:22px}.panel-head{padding:19px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #eef1f6}.page-panel>.panel-head{padding:2px 2px 19px}.panel-head h3{margin:0 0 5px;font-size:15px}.panel-head p{margin:0;color:var(--muted);font-size:11px}.feed-row{width:calc(100% - 30px);margin:0 15px;padding:13px 5px;display:flex;align-items:center;gap:12px;color:inherit;background:transparent;border-bottom:1px solid #f1f3f7;text-align:left}.feed-icon{width:34px;height:34px;flex:none;border-radius:10px;display:grid;place-items:center;color:#8090a9;background:#f1f4f8;font-size:11px;font-weight:750}.feed-icon.unread{color:var(--blue);background:var(--soft-blue)}.feed-copy{min-width:0;display:grid;gap:5px}.feed-copy strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.feed-copy small{color:var(--muted);font-size:10px}.unread-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--blue)}.chevron{margin-left:auto;color:#b1bbc9;font-size:20px}.homework-mini{margin:0 16px;padding:15px 4px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #f1f3f7}.homework-mini div{display:grid;gap:5px}.homework-mini strong{font-size:12px}.homework-mini small{color:var(--muted);font-size:10px}.subject-pill{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:26px;padding:0 10px;border-radius:8px;color:#1b5dca;background:#edf4ff;font-size:11px;font-weight:750}.empty-state{min-height:120px;display:grid;place-items:center;color:#9ca7b9;font-size:12px}.empty-state.wide{grid-column:1 / -1}.notice-layout{min-height:510px;display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:22px;padding-top:20px}.notice-list{display:grid;align-content:start;gap:8px;max-height:560px;overflow-y:auto}.notice-list-item{position:relative;padding:15px;display:grid;gap:7px;border:1px solid transparent;border-radius:12px;color:inherit;background:#f8fafd;text-align:left}.notice-list-item.active{border-color:#b9d1ff;background:#f1f6ff}.notice-list-item strong{padding-right:35px;font-size:13px}.notice-list-item small{color:var(--muted);font-size:10px}.important-tag,.unread-pill{position:absolute;top:12px;right:12px;padding:3px 6px;border-radius:5px;font-size:9px}.important-tag{color:#d85545;background:#ffebe7}.unread-pill{right:auto;bottom:11px;top:auto;color:#155ed8;background:#e5efff}.notice-detail{min-height:430px;padding:28px;border-radius:14px;background:#fbfcfe;border:1px solid #eef1f6}.notice-detail h2{margin:10px 0 12px;font-size:24px;letter-spacing:-.025em}.article-meta{color:var(--muted);font-size:11px}.article-body{margin-top:28px;color:#455269;line-height:2;white-space:pre-wrap}.detail-placeholder{min-height:380px;display:grid;place-content:center;justify-items:center;gap:10px;color:#98a4b8}.detail-placeholder span{width:52px;height:52px;margin-bottom:8px;border-radius:16px;display:grid;place-items:center;color:var(--blue);background:var(--soft-blue);font-weight:800}.detail-placeholder strong{color:#627087;font-size:14px}.detail-placeholder p{margin:0;font-size:11px}.homework-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:20px}.homework-card{padding:20px;border:1px solid var(--line);border-radius:14px}.homework-top{display:flex;align-items:center;justify-content:space-between}.homework-top small{color:var(--muted);font-size:10px}.homework-card h3{margin:16px 0 8px;font-size:16px}.homework-card p{margin:0;min-height:48px;color:#5d6a81;font-size:12px;line-height:1.8}.homework-card footer{margin-top:16px;padding-top:13px;color:#8d99ad;border-top:1px solid #f1f3f7;font-size:10px}.leave-list{display:grid;gap:10px;padding-top:20px}.leave-card{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(180px,.6fr) minmax(220px,1.2fr) auto auto;align-items:center;gap:18px;padding:15px 17px;border:1px solid var(--line);border-radius:13px}.leave-main{display:flex;align-items:center;gap:10px}.leave-main div:last-child{display:grid;gap:4px}.leave-main strong{font-size:12px}.leave-main small,.leave-dates{color:var(--muted);font-size:10px}.student-avatar{width:35px;height:35px;flex:none;border-radius:10px;display:grid;place-items:center;color:var(--blue);background:var(--soft-blue);font-size:10px;font-weight:750}.leave-dates{display:flex;gap:7px}.leave-card>p{margin:0;color:#5e6b81;font-size:11px;line-height:1.6}.status-badge{padding:5px 9px;border-radius:7px;font-size:10px;white-space:nowrap}.status-badge.pending{color:#a96b05;background:#fff3d7}.status-badge.approved{color:#0c8d67;background:#e5f8f1}.status-badge.rejected{color:#cf5148;background:#ffebe9}.leave-actions{display:flex;gap:7px}.leave-actions button{padding:8px 11px;font-size:11px}.table-wrap{overflow-x:auto;padding-top:20px}table{width:100%;border-collapse:collapse;font-size:12px}th{padding:12px;color:#8b97aa;background:#f8fafd;font-size:10px;font-weight:650;text-align:left}th:first-child{border-radius:9px 0 0 9px}th:last-child{border-radius:0 9px 9px 0}td{padding:15px 12px;color:#4e5a70;border-bottom:1px solid #f0f3f7}.student-cell{display:flex;align-items:center;gap:9px}.student-cell span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:var(--blue);background:var(--soft-blue);font-size:9px;font-weight:750}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;padding:24px;display:grid;place-items:center;background:#0c19347a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-card{width:min(580px,100%);max-height:calc(100vh - 48px);overflow-y:auto;padding:25px;display:grid;gap:17px;border-radius:18px;background:#fff;box-shadow:0 30px 90px #0a1e4647}.modal-head{display:flex;align-items:start;justify-content:space-between}.modal-head h2{margin:7px 0 0;font-size:23px}.close-button{width:32px;height:32px;border-radius:9px;color:#79859a;background:#f2f4f8;font-size:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.check-label{display:flex;align-items:center;align-self:end;height:46px;padding:0 12px;border:1px solid #e6ebf2;border-radius:11px}.check-label input{width:16px;height:16px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:5px}.toast{position:fixed;z-index:100;right:26px;top:24px;padding:12px 17px;border-radius:10px;color:#fff;background:#17233c;box-shadow:0 12px 36px #141e3740;font-size:12px}.error-toast{top:74px;background:#d94c43}.inline-message{margin:16px 0;padding:11px 14px;border-radius:10px;color:#59677e;background:#f4f7fc;font-size:12px}.inline-message.success{color:#0b805e;background:#e9f9f3}.inline-message.error{color:#c3443d;background:#fff0ee}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.settings-layout{padding-top:24px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px}.brand-preview-card{padding:25px;display:flex;flex-direction:column;align-items:center;gap:14px;border:1px solid var(--line);border-radius:16px;background:#fafcff;text-align:center}.setting-label{color:#59677e;font-size:12px;font-weight:650}.logo-preview{width:110px;height:110px;overflow:hidden;border-radius:30px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#2e79ff,#124bc8);font-size:38px;font-weight:800;box-shadow:0 15px 35px #165dff33}.logo-preview img,.phone-logo img{width:100%;height:100%;object-fit:cover}.brand-preview-card small{color:#929caf;font-size:10px;line-height:1.5}.settings-form{display:grid;align-content:start;gap:18px}.color-field{min-height:46px;display:flex;align-items:center;gap:9px}.color-field input[type=color]{width:48px;height:46px;padding:4px;flex:none}.segmented-tabs{margin-top:18px;display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:#f1f4f9}.segmented-tabs button{padding:9px 15px;border-radius:9px;color:#6c788e;background:transparent;font-size:12px}.segmented-tabs button.active{color:#17233c;background:#fff;box-shadow:0 3px 10px #1f325314}.segmented-tabs span{margin-left:4px;color:#98a2b2;font-size:10px}.admin-split{padding-top:20px;display:grid;grid-template-columns:minmax(280px,.75fr) minmax(360px,1.25fr);gap:24px}.admin-form{padding:20px;display:grid;align-content:start;gap:14px;border-radius:14px;background:#fafcff;border:1px solid var(--line)}.admin-form h4,.design-form h4,.release-form h4,.release-history h4{margin:0 0 4px;font-size:14px}.admin-list{min-height:240px;display:grid;align-content:start;border:1px solid var(--line);border-radius:14px;overflow:hidden}.person-row,.class-row{padding:15px 17px;display:flex;align-items:center;gap:11px;border-bottom:1px solid #f0f3f7}.person-row:last-child,.class-row:last-child{border-bottom:0}.person-avatar,.class-mark{width:36px;height:36px;flex:none;border-radius:11px;display:grid;place-items:center;color:#165dff;background:#eaf2ff;font-size:10px;font-weight:750}.person-copy,.class-row>div{min-width:0;flex:1;display:grid;gap:4px}.person-copy strong,.class-row strong{font-size:12px}.person-copy small,.class-row small,.person-row>small{color:#8894a7;font-size:10px}.count-pill{padding:5px 9px;border-radius:7px;color:#6d7a90;background:#f2f5fa;font-size:10px}.design-layout{padding-top:20px;display:grid;grid-template-columns:minmax(340px,1fr) 330px;gap:30px}.design-form{display:grid;align-content:start;gap:15px}.module-editor{display:grid;gap:8px}.module-edit-row{padding:9px;display:grid;grid-template-columns:82px 58px 1fr auto;align-items:center;gap:8px;border-radius:11px;background:#f7f9fc}.module-edit-row .check-label{height:40px;padding:0 9px;border:0;background:#fff}.module-edit-row input:not([type=checkbox]){height:40px}.icon-input{text-align:center}.module-key{color:#9aa4b5;font-size:9px}.phone-preview{display:flex;justify-content:center}.phone-screen{width:300px;height:600px;overflow:hidden;border:9px solid #12213e;border-radius:38px;background:#f5f7fb;box-shadow:0 28px 60px #1624402e}.phone-status{height:28px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;color:#26334b;font-size:9px;font-weight:700}.phone-nav{height:45px;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:700}.phone-body{padding:18px}.phone-welcome{display:flex;align-items:center;justify-content:space-between}.phone-welcome>div{display:grid;gap:5px}.phone-welcome strong{font-size:15px}.phone-welcome small{color:#8994a7;font-size:8px}.phone-logo{width:38px;height:38px;overflow:hidden;border-radius:12px;display:grid;place-items:center;color:#fff;font-size:14px;font-weight:750}.phone-hero{min-height:145px;margin-top:16px;padding:20px;display:flex;flex-direction:column;justify-content:center;border-radius:20px;color:#fff}.phone-hero strong{font-size:17px;line-height:1.45}.phone-hero small{margin-top:10px;color:#d8e7ff;font-size:9px;line-height:1.6}.phone-grid{margin-top:17px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.phone-module{min-height:88px;padding:13px;display:flex;flex-direction:column;gap:10px;border-radius:15px;background:#fff;box-shadow:0 7px 20px #1f31530f}.phone-module span{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:currentColor;color:#fff;font-size:9px}.phone-module small{color:#37445b;font-size:9px;font-weight:650}.release-grid{padding-top:20px;display:grid;grid-template-columns:minmax(320px,.9fr) minmax(380px,1.1fr);gap:24px}.release-form,.release-history{padding:22px;border:1px solid var(--line);border-radius:14px}.release-form{display:grid;align-content:start;gap:15px}.release-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#2e79ff,#124bc8);font-size:23px}.release-form p{margin:0;color:#6f7b90;font-size:11px;line-height:1.7}.release-form>small{color:#9a6b16;font-size:10px;line-height:1.6}.release-history{display:grid;align-content:start;gap:4px}.release-log{padding:14px 0;display:flex;align-items:flex-start;gap:10px;border-bottom:1px solid #f0f3f7}.release-log:last-of-type{border-bottom:0}.release-dot{width:8px;height:8px;margin-top:5px;flex:none;border-radius:50%}.release-dot.success{background:var(--green)}.release-dot.failed{background:var(--coral)}.release-log>div{min-width:0;flex:1;display:grid;gap:4px}.release-log strong{font-size:11px}.release-log small,.release-log p{margin:0;color:#8c97a9;font-size:9px;line-height:1.5}.release-note{margin-top:18px;padding:14px 17px;display:flex;gap:12px;color:#7e6a47;background:#fffaf0;border-radius:11px;font-size:10px;line-height:1.7}.release-note strong{flex:none}@media (max-width: 1080px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.leave-card{grid-template-columns:1fr 1fr auto}.admin-split,.release-grid{grid-template-columns:1fr}.leave-card>p{grid-column:1 / -1}.leave-actions{grid-column:3;grid-row:1}}@media (max-width: 820px){.login-page{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh;padding:30px 24px;background:radial-gradient(circle at 100% 0,rgba(22,93,255,.1),transparent 38%),#fff}.mobile-logo{display:flex;margin-bottom:34px;color:var(--ink)}.sidebar{transform:translate(-100%);transition:transform .22s ease}.sidebar.open{transform:translate(0)}.mobile-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:15;background:#0a142866}.workspace{width:100%;margin-left:0}.topbar{height:74px;padding:0 20px}.menu-button{width:38px;height:38px;margin-right:12px;border-radius:10px;display:block;color:#536078;background:#f1f4f9}.topbar>div:nth-child(2){margin-right:auto}.user-card div:last-child{display:none}.content{padding:20px}.welcome-banner{min-height:170px;padding:25px}.welcome-date{display:none}.notice-layout,.settings-layout,.design-layout{grid-template-columns:1fr}.phone-preview{margin:10px 0}.notice-detail{min-height:300px}.homework-grid{grid-template-columns:1fr}}@media (max-width: 540px){.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:16px}.stat-card strong{font-size:25px}.welcome-banner h1{font-size:23px}.page-panel{padding:15px}.leave-card{grid-template-columns:1fr auto}.leave-dates{grid-column:1 / -1}.leave-actions{grid-column:1 / -1;grid-row:auto;justify-content:flex-end}.form-grid{grid-template-columns:1fr}}
