:root{--ink:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--paper:#fff;--canvas:#f5f5f7;--green:#0071e3;--green-2:#06c;--green-soft:#eaf3ff;--green-pale:#f5f9ff;--amber:#bf6a02;--amber-soft:#fff5e6;--blue:#0071e3;--blue-soft:#eaf3ff;--rose:#d70015;--rose-soft:#fff0f1;--shadow:0 24px 70px #00000014;--shadow-small:0 8px 30px #0000000d;--radius:28px;--radius-small:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--canvas)}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,PingFang SC,Helvetica Neue,Microsoft YaHei,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;white-space:nowrap;word-break:keep-all}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}.brand{align-items:center;gap:12px;display:flex}.brand>span:last-child{flex-direction:column;gap:2px;display:flex}.brand strong{color:var(--green);letter-spacing:.05em;font-size:18px}.brand small{color:#849188;letter-spacing:.05em;font-size:11px}.brand-mark{background:var(--green);border-radius:14px 14px 14px 6px;flex:0 0 40px;width:40px;height:40px;position:relative;overflow:hidden;box-shadow:0 8px 18px #285c4d2e}.brand-mark span{transform-origin:100% 100%;background:#f7ead0;border-radius:999px 999px 2px;display:block;position:absolute}.brand-mark span:first-child{width:10px;height:18px;top:9px;left:9px;transform:rotate(-32deg)}.brand-mark span:nth-child(2){width:10px;height:20px;top:7px;left:19px;transform:rotate(22deg)}.brand-mark span:nth-child(3){background:#f3c56c;border-radius:3px;width:5px;height:13px;bottom:6px;left:17px;transform:none}.brand-compact .brand-mark{flex-basis:36px;width:36px;height:36px}.brand-compact strong{font-size:16px}.eyebrow,.section-kicker{color:var(--green-2);letter-spacing:.16em;font-size:11px;font-weight:800}.primary-button,.outline-button,.quiet-button,.text-button,.week-button,.row-action{cursor:pointer;border:0}.primary-button{color:#fff;background:var(--green);border-radius:13px;justify-content:center;align-items:center;min-height:46px;padding:0 22px;font-weight:750;display:inline-flex;box-shadow:0 10px 22px #285c4d29}.primary-button:hover{background:#204d40}.primary-button:disabled{cursor:wait;opacity:.68}.outline-button{min-height:42px;color:var(--green);background:#fff;border:1px solid #dce4df;border-radius:12px;padding:0 18px;font-weight:720}.quiet-button{color:var(--green);background:0 0;padding:7px 0;font-size:13px;font-weight:750}.text-button{color:#9a4d45;background:#fff;border:1px solid #dfe6e1;border-radius:13px;width:100%;min-height:48px;font-weight:730}.panel{border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-small);border:1px solid #e2e8e3e6}.panel-header,.panel-title-row,.section-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.panel-header h2,.section-heading h2{color:var(--ink);letter-spacing:-.03em;margin:4px 0 0;font-size:22px}.panel-title-row>div{align-items:center;gap:13px;display:flex}.panel-title-row h3{margin:3px 0 0;font-size:18px}.panel-title-row small{color:var(--muted);font-size:12px}.panel-icon{border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:18px;font-weight:900;display:inline-grid}.panel-icon-homework{color:var(--green);background:var(--green-soft)}.panel-icon-duty{color:#a56513;background:var(--amber-soft)}.empty-state{color:var(--muted);text-align:center;margin:0;padding:30px 16px}.inline-alert{color:#93463d;background:#fff4f1;border:1px solid #efd3ce;border-radius:12px;max-width:1180px;margin:0 auto 16px;padding:13px 44px 13px 16px;font-size:14px;position:relative}.inline-alert button{cursor:pointer;background:0 0;border:0;font-size:20px;position:absolute;top:8px;right:12px}.login-page{background:#fff;grid-template-columns:minmax(0,1.14fr) minmax(420px,.86fr);min-height:100vh;display:grid}.login-story{background:radial-gradient(circle at 16% 12%,#f2c77042,#0000 23%),linear-gradient(145deg,#edf3eb 0%,#dfeade 54%,#ecf0e4 100%);min-height:100vh;position:relative;overflow:hidden}.login-story:before,.login-story:after{content:"";border-radius:50%;position:absolute}.login-story:after{background:#285c4d17;width:330px;height:150px;bottom:-75px;right:-80px}.login-story-inner{z-index:2;grid-template-rows:auto auto minmax(240px,1fr) auto;max-width:850px;min-height:100vh;margin:0 auto;padding:38px 6.5vw 30px;display:grid;position:relative}.login-copy{max-width:590px;margin-top:clamp(52px,8vh,92px)}.login-copy h1{color:#1f4f42;letter-spacing:-.055em;margin:18px 0 22px;font-family:Songti SC,SimSun,serif;font-size:clamp(48px,5.2vw,76px);line-height:1.12}.login-copy h1 span{color:#bf7a29;white-space:nowrap;position:relative}.login-copy h1 span:after{content:"";background:#e29d463d;border-radius:50%;height:7px;position:absolute;bottom:-6px;left:5%;right:-2%;transform:rotate(-2deg)}.login-copy>p{color:#607168;max-width:540px;margin:0;font-size:16px;line-height:1.9}.login-visual{align-self:center;width:min(100%,620px);height:290px;margin:12px auto 0;position:relative}.visual-sun{background:#f2bd5a94;border-radius:50%;width:88px;height:88px;position:absolute;top:10px;left:56%;box-shadow:0 0 0 18px #f2bd5a14,0 0 70px #f2bd5a3d}.visual-window{background:#fff3;border:8px solid #56756238;border-bottom-width:12px;border-radius:14px 14px 3px 3px;grid-template-columns:1fr 1fr;gap:8px;width:235px;height:145px;padding:10px;display:grid;position:absolute;top:28px;right:2%}.visual-window span{background:#f9eec78a;border-radius:4px}.visual-desk{background:#b78b5a;border-radius:14px 14px 4px 4px;width:345px;height:80px;position:absolute;bottom:26px;left:17%;box-shadow:inset 0 7px #ffffff1f}.visual-desk:before,.visual-desk:after{content:"";background:#8e6d4b;border-radius:3px;width:14px;height:56px;position:absolute;bottom:-50px}.visual-desk:before{left:26px}.visual-desk:after{right:26px}.visual-desk i{background:#f3d88b;border-radius:6px 8px 3px 3px;width:62px;height:74px;display:block;position:absolute;bottom:52px;box-shadow:inset 0 -8px #677f752e}.visual-desk i:first-child{left:32px;transform:rotate(-5deg)}.visual-desk i:nth-child(2){background:#d77e68;height:90px;left:94px;transform:rotate(3deg)}.visual-desk i:nth-child(3){background:#496e62;border-radius:12px 12px 3px 3px;width:90px;height:45px;right:40px}.visual-plant{border-bottom:42px solid #a8744d;border-left:18px solid #0000;border-right:18px solid #0000;width:120px;height:140px;position:absolute;bottom:50px;left:3%}.visual-plant:before{content:"";background:#557a64;width:6px;height:110px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.visual-plant span{z-index:1;background:#5c826a;border-radius:90% 12%;width:52px;height:25px;position:absolute}.visual-plant span:first-child{top:40px;left:10px;transform:rotate(20deg)}.visual-plant span:nth-child(2){top:12px;right:3px;transform:rotate(-32deg)}.visual-plant span:nth-child(3){background:#71927a;top:5px;left:22px;transform:rotate(66deg)}.visual-note{width:225px;box-shadow:var(--shadow);background:#ffffffc2;border:1px solid #ffffffb3;border-radius:14px;padding:16px 18px;position:absolute;bottom:6px;right:6%;transform:rotate(-2deg)}.visual-note strong,.visual-note small{display:block}.visual-note strong{color:var(--green);font-family:Songti SC,serif;font-size:16px}.visual-note small{color:var(--muted);margin-top:5px;font-size:11px}.visual-stars{color:#d79d45;font-size:19px;position:absolute;top:10px;right:30%}.trust-row{border-top:1px solid #285c4d1f;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:22px;display:grid}.trust-row>span{align-items:center;gap:10px;display:flex}.trust-row i{width:34px;height:34px;color:var(--green);background:#ffffff9e;border-radius:11px;flex:0 0 34px;place-items:center;font-style:normal;font-weight:800;display:grid}.trust-row p,.trust-row strong,.trust-row small{margin:0;display:block}.trust-row small{color:#77877e;margin-top:2px;font-size:10px;line-height:1.4}.login-panel{background:radial-gradient(circle at 100% 0,#e2f0e585,#0000 26%),#fff;place-items:center;min-height:100vh;padding:46px clamp(34px,6vw,94px);display:grid}.mobile-brand-mark{display:none}.login-heading h2{color:#1e443a;letter-spacing:-.04em;margin:10px 0 8px;font-family:Songti SC,SimSun,serif;font-size:38px}.login-form>label,.management-form label{display:block}.login-form>label>span,.management-form label>span{color:#47554f;margin-bottom:8px;font-size:13px;font-weight:700;display:block}.input-shell{background:#fbfcfb;border:1px solid #dce3de;border-radius:13px;align-items:center;gap:10px;min-height:52px;padding:0 14px;transition:border-color .16s,box-shadow .16s;display:flex}.input-shell i{color:#819087;font-style:normal;font-weight:800}.input-shell input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1}.input-shell button{color:var(--green);cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:700}.login-form>label+label{margin-top:20px}.login-options{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.check-field{align-items:center;gap:8px;display:flex!important}.check-field input{width:16px;height:16px;accent-color:var(--green)}.check-field span{color:var(--muted)!important;margin:0!important;font-size:12px!important;font-weight:500!important}.login-options>button{color:var(--green);cursor:pointer;background:0 0;border:0;font-size:12px}.login-session-note{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.65}.login-error{color:#95473e;background:#fff1ee;border-radius:11px;align-items:center;gap:8px;margin:16px 0 0;padding:11px 12px;font-size:12px;display:flex}.login-error span{color:#fff;background:#bd685b;border-radius:50%;place-items:center;width:20px;height:20px;font-weight:800;display:grid}.login-submit{color:#fff;background:var(--green);cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:54px;margin-top:22px;padding:0 18px;font-size:15px;font-weight:800;display:flex;box-shadow:0 14px 28px #285c4d33}.login-submit:hover{background:#204d40}.login-submit:disabled{cursor:wait;opacity:.72}.login-submit span{font-size:20px}.demo-login{margin-top:28px}.demo-divider{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.demo-divider span{background:var(--line);height:1px}.demo-divider strong{color:#8a958f;letter-spacing:.1em;font-size:10px;font-weight:700}.demo-buttons{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px;display:grid}.demo-buttons button{cursor:pointer;text-align:left;background:#fbfcfb;border:1px solid #e0e6e2;border-radius:12px;align-items:center;gap:8px;min-width:0;padding:12px 9px;display:flex}.demo-buttons button:hover{background:var(--green-pale);border-color:#a9c0b4}.demo-buttons button>span{width:28px;height:28px;color:var(--green);background:var(--green-soft);border-radius:9px;flex:0 0 28px;place-items:center;font-size:12px;font-weight:800;display:grid}.demo-buttons p,.demo-buttons strong,.demo-buttons small{min-width:0;margin:0;display:block}.demo-buttons strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.demo-buttons small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:8px;overflow:hidden}.login-help{background:#f5f7f5;border-radius:13px;align-items:center;gap:11px;margin-top:24px;padding:13px 14px;display:flex}.login-help>span{width:29px;height:29px;color:var(--green);background:#fff;border-radius:50%;flex:0 0 29px;place-items:center;font-size:13px;font-weight:800;display:grid}.login-help p,.login-help strong,.login-help small{margin:0;display:block}.login-help strong{font-size:11px}.login-help small{color:var(--muted);margin-top:3px;font-size:9px}.privacy-note{color:#8e9893;text-align:center;margin:18px 0 0;font-size:9px;line-height:1.7}.privacy-note a{color:var(--green);text-underline-offset:2px;text-decoration:underline}.class-home{max-width:1180px;margin:0 auto}.class-hero{background:radial-gradient(circle at 24% 5%,#f0c46c38,#0000 24%),#e9f0e8;border-radius:30px;grid-template-columns:minmax(0,.94fr) minmax(450px,1.06fr);align-items:stretch;gap:44px;min-height:405px;padding:44px;display:grid;overflow:hidden}.class-hero-copy{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.class-hero-copy h1{color:#214b40;letter-spacing:-.055em;margin:14px 0 16px;font-family:Songti SC,SimSun,serif;font-size:clamp(38px,4vw,56px);line-height:1.13}.hero-slogan{color:#5f7369;margin-bottom:30px;font-size:16px;line-height:1.8}.teacher-message{background:#ffffffa8;border:1px solid #fffc;border-radius:17px;align-items:center;gap:13px;max-width:460px;padding:14px 16px 14px 12px;display:flex}.teacher-avatar{color:#fff;background:#c8835e;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;font-family:Songti SC,serif;font-weight:800;display:grid}.teacher-message>span:last-child{flex-direction:column;gap:4px;display:flex}.teacher-message small{color:var(--muted);font-size:10px}.teacher-message strong{color:#3e564c;font-family:Songti SC,serif;font-size:13px;line-height:1.6}.class-photo{background:linear-gradient(#d9e9e5 0 58%,#c9aa79 58% 63%,#b78458 63%);border:8px solid #ffffffc7;border-radius:26px 26px 80px;min-height:320px;position:relative;overflow:hidden;transform:rotate(1deg);box-shadow:0 22px 50px #2d514426}.photo-sun{background:#f4bf5aad;border-radius:50%;width:58px;height:58px;position:absolute;top:24px;right:30px;box-shadow:0 0 0 18px #f4bf5a1a}.photo-board{background:#3e6c5d;border:7px solid #b99364;width:56%;height:105px;padding:25px;position:absolute;top:13%;left:11%;box-shadow:inset 0 0 0 2px #ffffff14}.photo-board span,.photo-board small{color:#f1e6c7;text-align:center;display:block}.photo-board span{font-family:Songti SC,serif;font-size:20px;font-weight:700}.photo-board small{color:#f1e6c7c2;letter-spacing:.18em;margin-top:10px;font-size:9px}.student-bubbles{grid-template-columns:repeat(6,1fr);gap:8px 5px;display:grid;position:absolute;bottom:42px;left:7%;right:7%}.student-bubbles span{aspect-ratio:1;color:#fff;background:#628678;border:4px solid #efe0c4;border-radius:48% 52% 43% 57%;place-items:center;max-height:56px;font-family:Songti SC,serif;font-size:12px;font-weight:800;display:grid;position:relative;box-shadow:0 6px #eee2cc}.student-bubbles span:nth-child(3n+2){background:#cf8469}.student-bubbles span:nth-child(4n+3){background:#c7a45b}.student-bubbles span:nth-child(n+7){transform:translateY(6px)}.photo-caption{text-align:right;background:#ffffffdb;border-radius:11px;padding:9px 12px;position:absolute;bottom:12px;right:12px}.photo-caption span,.photo-caption small{display:block}.photo-caption span{color:var(--green);font-size:11px;font-weight:800}.photo-caption small{color:var(--muted);margin-top:2px;font-size:8px}.class-home>.section-heading,.album-section .section-heading{margin:48px 0 18px}.date-pill{color:var(--green);background:#fff;border:1px solid #dce5de;border-radius:999px;padding:8px 13px;font-size:12px;font-weight:750}.today-grid,.content-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:22px;display:grid}.homework-panel,.duty-panel,.announcement-panel,.honor-panel{padding:24px}.homework-list{margin-top:18px}.homework-item{border-top:1px solid #edf0ed;grid-template-columns:auto 1fr auto;align-items:flex-start;gap:13px;padding:15px 0;display:grid}.homework-item>div{min-width:0}.homework-item strong{font-size:14px;line-height:1.55;display:block}.homework-item p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.5}.subject-tag{text-align:center;border-radius:9px;min-width:42px;padding:6px 8px;font-size:10px;font-weight:800}.subject-chinese{color:#a45a4f;background:var(--rose-soft)}.subject-math{color:#426d8b;background:var(--blue-soft)}.subject-english{color:#426b5a;background:var(--green-soft)}.subject-other{color:#9a691f;background:var(--amber-soft)}.signature-badge,.adjusted-badge{color:#9a691f;background:var(--amber-soft);white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:750}.duty-panel{background:radial-gradient(circle at 100% 0,#f2c3652e,#0000 30%),#fff}.duty-people{grid-template-columns:1fr 1fr;gap:13px;margin-top:22px;display:grid}.duty-person{background:#f7f8f6;border-radius:13px;align-items:center;gap:9px;padding:10px;display:flex}.duty-person>span{color:#fff;background:#628678;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:11px;font-weight:750;display:grid}.duty-person:nth-child(2n)>span{background:#c77d61}.duty-person p,.duty-person strong,.duty-person small{margin:0;display:block}.duty-person strong{font-size:11px}.duty-person small{color:var(--muted);margin-top:3px;font-size:9px}.duty-note{color:#76531e;background:#fff7e8;border-radius:11px;margin:16px 0 0;padding:11px 12px;font-size:10px;line-height:1.5}.week-button{width:100%;color:var(--green);background:0 0;border-top:1px solid #edf0ed;justify-content:space-between;margin-top:15px;padding:12px 0 0;font-size:11px;font-weight:750;display:flex}.content-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);margin-top:22px}.announcement-list{margin-top:12px}.announcement-item{border-top:1px solid #edf0ed;padding:17px 0 17px 18px;position:relative}.announcement-item:before{content:"";background:#87a395;border-radius:50%;width:6px;height:6px;position:absolute;top:23px;left:0}.announcement-meta{align-items:center;gap:6px;display:flex}.announcement-meta span{color:var(--green);background:var(--green-soft);border-radius:5px;padding:3px 6px;font-size:8px;font-weight:800}.announcement-meta .important{color:#a9584d;background:var(--rose-soft)}.announcement-meta time{color:#9aa49f;margin-left:auto;font-size:9px}.announcement-item h3{margin:8px 0 6px;font-size:14px}.announcement-item p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.65;display:-webkit-box;overflow:hidden}.trophy{color:#a66b19;background:var(--amber-soft);border-radius:50%;place-items:center;width:42px;height:42px;font-size:22px;display:grid}.honor-panel{background:radial-gradient(circle at 94% 6%,#eebb5833,#0000 25%),#fffdf8}.honor-list{margin-top:15px}.honor-card{border-top:1px solid #eee9de;grid-template-columns:auto 1fr;gap:13px;padding:15px 0;display:grid}.medal{color:#fff9e8;background:#d5a64f;border-radius:50% 50% 12px 12px;place-items:center;width:44px;height:50px;font-family:Songti SC,serif;font-size:12px;font-weight:800;display:grid;box-shadow:inset 0 -8px #915c1324}.medal-1{background:#7e9b8c}.medal-2{background:#b47d6b}.honor-card span{color:#a48c65;font-size:9px}.honor-card h3{margin:5px 0;font-family:Songti SC,serif;font-size:14px}.honor-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.55}.album-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.album-card{min-width:0;box-shadow:var(--shadow-small);background:#fff;border:1px solid #e4e9e5;border-radius:20px;overflow:hidden}.album-card>div:last-child{padding:15px 17px 18px}.album-card small{color:#88948e;font-size:9px}.album-card h3{margin:5px 0 6px;font-size:15px}.album-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.5}.album-art{background:#dce9df;height:145px;position:relative;overflow:hidden}.album-art:before{content:"";background:#7ea187;border-radius:50%;height:100px;position:absolute;bottom:-30px;left:-10%;right:-10%}.album-art:after{content:"";background:#f0bf65;border-radius:50%;width:46px;height:46px;position:absolute;top:18px;right:13%}.album-art>span{z-index:2;color:#426958;font-size:45px;position:absolute;top:32px;left:20%}.album-art i{z-index:2;background:#fff1d3;border-radius:50% 50% 40% 40%;width:36px;height:48px;position:absolute;bottom:17px;box-shadow:0 5px #3a5b4b1f}.album-art i:first-of-type{left:35%}.album-art i:nth-of-type(2){background:#e6a184;left:50%}.album-art i:nth-of-type(3){background:#719180;left:65%}.album-art-1 .album-art{background:#efe6d5}.album-art-1 .album-art:before{background:#c69263}.album-art-1 .album-art>span{color:#b97846}.album-art-2 .album-art{background:#e8e5ef}.album-upload{text-align:center;background:#fafbf9;border-style:dashed;flex-direction:column;justify-content:center;align-items:center;min-height:236px;display:flex}.upload-plus{width:54px;height:54px;color:var(--green);background:var(--green-soft);border-radius:50%;place-items:center;margin-top:18px;font-size:24px;display:grid}.parent-shell{background:radial-gradient(circle at 8% 0,#ecdeb638,#0000 18%),#f5f7f3;min-height:100vh;padding-bottom:76px}.parent-header{z-index:30;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe0;border-bottom:1px solid #dfe6e0db;justify-content:space-between;align-items:center;height:70px;padding:0 max(22px,50vw - 590px);display:flex;position:sticky;top:0}.parent-header-actions{align-items:center;gap:14px;display:flex}.header-notification{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;width:38px;height:38px;font-size:17px;position:relative}.header-notification span{color:#fff;background:var(--rose);border:2px solid #fff;border-radius:50%;place-items:center;width:17px;height:17px;font-size:8px;font-weight:800;display:grid;position:absolute;top:-4px;right:-3px}.user-chip{align-items:center;gap:8px;display:flex}.user-chip span{color:#fff;background:#c47e60;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.user-chip strong{font-size:12px}.parent-bottom-nav{z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #dce3dde6;border-radius:20px;grid-template-columns:repeat(4,1fr);width:min(560px,100% - 24px);min-height:62px;padding:6px;display:grid;position:fixed;bottom:12px;left:50%;box-shadow:0 16px 40px #223f342e}.parent-bottom-nav button{color:#7c8983;cursor:pointer;background:0 0;border:0;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;display:flex}.parent-bottom-nav span{font-size:19px}.parent-bottom-nav small{font-size:9px;font-weight:700}.child-space,.simple-page{max-width:1180px;margin:0 auto}.student-hero{background:radial-gradient(circle at 92% 4%,#f4c15c42,#0000 22%),#e9f0e8;border-radius:28px;grid-template-columns:auto 1fr auto;align-items:center;gap:25px;min-height:225px;padding:32px 34px;display:grid;position:relative;overflow:hidden}.student-hero:after{content:"✦";color:#285c4d14;font-size:150px;position:absolute;bottom:-44px;right:18%}.student-avatar{color:#fff;background:radial-gradient(circle at 50% 26%,#efd2a6 0 17%,#0000 18%),radial-gradient(circle at 50% 67%,#ca8267 0 35%,#0000 36%),#7ea08f;border:7px solid #ffffffdb;border-radius:45% 55% 48% 52%;place-items:center;width:116px;height:116px;display:grid;position:relative;box-shadow:0 16px 32px #2d4c4024}.student-avatar>span{z-index:2;background:#325648c7;border-radius:50%;place-items:center;width:42px;height:42px;font-family:Songti SC,serif;font-size:18px;font-weight:800;display:grid;position:absolute;bottom:13px}.student-avatar i{background:#5a8c70;border:4px solid #fff;border-radius:50%;width:23px;height:23px;position:absolute;bottom:4px;right:0}.student-hero-copy h1{color:#214b40;letter-spacing:-.04em;margin:7px 0 12px;font-family:Songti SC,serif;font-size:34px}.student-hero-copy>p{color:#536b61;max-width:600px;margin:0 0 18px;font-family:Songti SC,serif;font-size:14px;line-height:1.7}.student-meta{flex-wrap:wrap;gap:8px;display:flex}.student-meta span,.relationship-badge{color:#607269;background:#fff9;border:1px solid #fffc;border-radius:8px;padding:6px 9px;font-size:9px}.relationship-badge{z-index:2;color:var(--green);padding:9px 12px;font-weight:750;position:relative}.child-switch{z-index:2;min-height:42px;color:var(--green);background:#fff;border:1px solid #cad8cf;border-radius:12px;padding:0 14px;position:relative}.child-tabs{background:#fff;border:1px solid #e1e7e2;border-radius:16px;grid-template-columns:repeat(4,1fr);margin:20px 0 24px;padding:5px;display:grid}.child-tabs button{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:12px;font-size:12px;font-weight:700}.child-tabs button.active{color:#fff;background:var(--green);box-shadow:0 8px 18px #285c4d29}.child-overview{margin-top:24px}.child-overview-heading{margin-bottom:18px}.child-overview-heading h2{color:#1d1d1f;letter-spacing:-.035em;margin:6px 0 0;font-size:24px}.growth-stats{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.growth-stat{min-height:145px;box-shadow:var(--shadow-small);background:#fff;border:1px solid #e4e9e5;border-radius:19px;padding:19px;position:relative;overflow:hidden}.growth-stat:after{content:"";background:var(--green-soft);border-radius:50%;width:90px;height:90px;position:absolute;top:-30px;right:-30px}.growth-stat>span{color:var(--muted);font-size:10px}.growth-stat>strong{color:var(--green);margin-top:12px;font-size:33px;line-height:1;display:block}.growth-stat>strong small{margin-left:3px;font-size:10px}.growth-stat p{color:#748078;margin:12px 0 0;font-size:10px}.stat-performance:after{background:var(--amber-soft)}.stat-performance>strong{color:#a66c19}.stat-growth:after{background:var(--blue-soft)}.stat-growth>strong{color:#4e7390}.stat-honor:after{background:var(--rose-soft)}.stat-honor>strong{color:#a85d52}.child-two-column{grid-template-columns:1.28fr .72fr;gap:18px;margin-top:18px;display:grid}.chart-panel,.latest-comment{padding:24px}.positive-change,.secure-badge{color:var(--green);background:var(--green-soft);border-radius:999px;padding:6px 9px;font-size:9px;font-weight:750}.score-trend{background:repeating-linear-gradient(#0000 0 41px,#edf0ed 42px);min-height:245px;margin-top:18px;padding:5px 5px 32px 42px;position:relative}.chart-scale{color:#96a19b;flex-direction:column;justify-content:space-between;font-size:8px;display:flex;position:absolute;top:0;bottom:38px;left:0}.chart-series{align-items:stretch;height:185px;display:grid}.trend-column{min-width:0;height:185px;position:relative}.trend-point{z-index:3;left:0;top:var(--score-y);background:var(--green);border:3px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #285c4d42}.trend-point strong{color:#fff;background:var(--green);border-radius:6px;padding:3px 6px;font-size:9px;position:absolute;top:-24px;left:50%;transform:translate(-50%)}.trend-horizontal{z-index:1;left:0;right:0;top:var(--score-y);background:var(--green);height:2px;position:absolute}.trend-vertical{z-index:1;right:0;top:var(--vertical-top);width:2px;height:max(2px, var(--vertical-height));background:var(--green);position:absolute}.trend-column>small{color:#7f8b85;text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:8px;position:absolute;bottom:-27px;left:0;right:0;overflow:hidden}.chart-legend{color:#8a958f;justify-content:space-between;font-size:8px;display:flex;position:absolute;bottom:0;left:44px;right:4px}.chart-legend span:first-child{color:var(--green)}.legend-line{vertical-align:middle;background:var(--green);width:16px;height:2px;margin-right:5px;display:inline-block}.quote-mark{color:#d7b06e;font-family:Georgia,serif;font-size:48px;line-height:1}.latest-comment>h3{margin:18px 0 10px;font-family:Songti SC,serif;font-size:16px}.latest-comment>p{color:#66756d;min-height:100px;margin:0;font-family:Songti SC,serif;font-size:12px;line-height:1.9}.comment-signature{border-top:1px solid #edf0ed;align-items:center;gap:9px;margin-top:18px;padding-top:14px;display:flex}.comment-signature>span{color:#fff;background:#c47e60;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;display:grid}.comment-signature p,.comment-signature strong,.comment-signature small{min-height:auto;margin:0;font-family:inherit;display:block}.comment-signature strong{font-size:10px}.comment-signature small{color:var(--muted);margin-top:2px;font-size:8px}.record-page{gap:18px;display:grid}.wide-chart{min-height:330px}.panel-header select{min-height:36px;color:var(--green);background:#fff;border:1px solid #dde4df;border-radius:9px;padding:0 10px;font-size:10px}.score-table-card,.data-panel{box-shadow:var(--shadow-small);background:#fff;border:1px solid #e2e8e3;border-radius:22px;overflow:hidden}.score-table-card>.panel-header,.data-panel-header{border-bottom:1px solid #edf0ed;padding:21px 23px}.score-table-card>.panel-header h2,.data-panel-header h2{margin:0;font-size:17px}.score-table-card>.panel-header span,.data-panel-header p{color:var(--muted);margin:4px 0 0;font-size:9px}.responsive-table{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{white-space:nowrap;border-bottom:1px solid #edf0ed;padding:14px 18px;font-size:11px}th{color:#7c8983;letter-spacing:.04em;background:#fafbf9;font-size:9px}td{color:#526159}tr:last-child td{border-bottom:0}.score-value{color:var(--green);margin-right:2px;font-size:15px}.performance-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.performance-card{box-shadow:var(--shadow-small);background:#fff;border:1px solid #e2e8e3;border-radius:18px;gap:16px;padding:20px;display:flex}.grade-badge{color:#fff;background:var(--green);border-radius:15px;flex:0 0 48px;place-items:center;width:48px;height:48px;font-size:20px;font-weight:850;display:grid}.grade-B{background:#b27c2b}.grade-C{background:#6c8dab}.grade-D{background:#b8675c}.performance-card small{color:var(--muted);font-size:8px}.performance-card h3{margin:4px 0 7px;font-size:14px}.performance-card p{color:#68766f;margin:0;font-size:10px;line-height:1.6}.grade-guide{margin-top:18px;padding:22px}.grade-guide h2{margin-bottom:8px;font-size:15px}.grade-guide p{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.simple-page{padding:40px 0}.simple-page-heading{margin-bottom:28px}.simple-page-heading h1{color:var(--green);margin:8px 0;font-family:Songti SC,serif;font-size:38px}.simple-page-heading p{color:var(--muted)}.message-list{background:#fff;border:1px solid #e0e9f2;border-radius:24px;gap:0;display:grid;overflow:hidden}.message-list article{background:0 0;border:0;border-radius:0;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:14px;min-height:88px;padding:18px 22px;display:grid;position:relative}.message-list article+article{border-top:1px solid #edf1f5}.message-list article>i{color:#006edc;background:#e9f3ff;border-radius:14px;place-items:center;width:42px;height:42px;font-size:12px;font-style:normal;font-weight:700;display:grid}.message-list article>b{color:#91a0b3;justify-self:end;font-size:22px;font-weight:400;line-height:1}.message-dot{background:var(--rose);width:11px;height:11px;box-shadow:0 0 0 6px var(--rose-soft);border-radius:50%;margin-top:-5px;position:absolute;top:50%;left:9px}.message-dot-green{background:var(--green);box-shadow:0 0 0 6px var(--green-soft)}.message-list small{color:var(--muted);font-size:9px}.message-list h3{margin:5px 0;font-size:14px}.message-list p{color:var(--muted);margin:0;font-size:10px}.notification-channel-panel{border:1px solid var(--line);background:#fff;border-radius:20px;margin-top:18px;overflow:hidden}.notification-channel-panel>.panel-header{border-bottom:1px solid var(--line);padding:19px 20px}.notification-channel-list>div{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 20px;display:grid}.notification-channel-list>div:last-child{border-bottom:0}.notification-channel-list>div>span{color:#0071e3;background:#eaf3ff;border-radius:11px;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.notification-channel-list p,.notification-channel-list strong,.notification-channel-list small{margin:0;display:block}.notification-channel-list strong{color:#1d1d1f;font-size:11px}.notification-channel-list small{color:#86868b;margin-top:3px;font-size:9px;line-height:1.5}.notification-channel-list i{color:#8a5a18;white-space:nowrap;background:#fff5df;border-radius:999px;padding:5px 8px;font-size:8px;font-style:normal;font-weight:750}.notification-channel-list i.channel-ready{color:var(--green);background:var(--green-soft)}.push-channel-copy strong,.push-channel-copy small{display:block}.push-channel-copy small{color:#86868b;margin-top:3px;font-size:9px;line-height:1.55}.push-channel-copy ol{color:#6e6e73;margin:9px 0 0;padding-left:18px;font-size:9px;line-height:1.7}.push-channel-action{justify-content:flex-end;align-items:center;gap:7px;display:flex}.push-channel-action button{color:#fff;white-space:nowrap;cursor:pointer;background:#0071e3;border:0;border-radius:999px;min-height:30px;padding:7px 11px;font-size:9px;font-weight:750}.push-channel-action button.push-disable{color:#6e6e73;background:#f0f0f2}.account-page{max-width:600px}.account-card{text-align:center;background:#e9f0e8;border-radius:24px;padding:34px}.account-avatar{color:#fff;background:#c47e60;border:6px solid #fffc;border-radius:50%;place-items:center;width:76px;height:76px;margin:0 auto 14px;font-family:Songti SC,serif;font-size:24px;display:grid}.account-card h1{margin:0 0 5px;font-size:21px}.account-card p{color:var(--muted);margin:0;font-size:11px}.settings-list{border:1px solid var(--line);background:#fff;border-radius:18px;margin:18px 0;overflow:hidden}.settings-list button,.settings-list a{border:0;border-bottom:1px solid var(--line);width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;grid-template-columns:auto 1fr;gap:12px;padding:17px;text-decoration:none;display:grid}.settings-list button:last-child,.settings-list a:last-child{border-bottom:0}.settings-list button>span,.settings-list a>span{width:34px;height:34px;color:var(--green);background:var(--green-soft);border-radius:11px;grid-row:1/3;place-items:center;display:grid}.settings-list strong{font-size:12px}.settings-list small{color:var(--muted);font-size:9px}.password-panel{border:1px solid var(--line);background:#fff;border-radius:20px;gap:14px;margin:18px 0;padding:22px;display:grid}.password-panel h2{margin:5px 0;font-size:18px}.password-panel>div>p{color:var(--muted);margin:0;font-size:10px;line-height:1.6}.password-panel label,.password-panel label>span{display:block}.password-panel label>span{color:#52525a;margin-bottom:6px;font-size:10px;font-weight:700}.password-panel input{background:#fafafa;border:1px solid #d7d7dc;border-radius:11px;width:100%;min-height:43px;padding:0 12px}.password-panel .primary-button{width:100%}.big-empty{color:var(--muted);text-align:center;padding:80px 20px}.big-empty>span{width:70px;height:70px;color:var(--green);background:var(--green-soft);border-radius:24px;place-items:center;margin:0 auto 18px;font-size:30px;display:grid}.big-empty h1,.big-empty h3{color:var(--ink)}.teacher-shell{background:#f5f7f4;grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.teacher-sidebar{z-index:50;background:#fff;border-right:1px solid #e2e8e3;flex-direction:column;height:100vh;padding:22px 16px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{padding:0 8px}.sidebar-close{display:none}.class-mini-card{background:#eef4ef;border-radius:15px;align-items:center;gap:10px;margin:22px 0 18px;padding:12px;display:flex;position:relative}.class-mini-icon{color:#fff;background:var(--green);border-radius:12px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-family:Songti SC,serif;font-size:14px;font-weight:800;display:grid}.class-mini-card div{min-width:0}.class-mini-card strong,.class-mini-card small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.class-mini-card strong{font-size:12px}.class-mini-card small{color:var(--muted);margin-top:3px;font-size:8px}.active-dot{background:#58a071;border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:10px;right:10px}.teacher-nav{flex:1}.nav-group>span{color:#a0aaa5;letter-spacing:.13em;padding:0 10px 6px;font-size:8px;font-weight:800;display:block}.nav-group button{color:#65736c;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:25px 1fr auto;align-items:center;gap:6px;width:100%;min-height:38px;padding:0 11px;display:grid;position:relative}.nav-group button.active{color:var(--green);background:var(--green-soft)}.nav-group button.active:before{content:"";background:var(--green);border-radius:0 4px 4px 0;width:4px;height:24px;position:absolute;left:-16px}.nav-group i{color:inherit;text-align:center;font-size:14px;font-style:normal}.nav-group small{color:#fff;background:var(--rose);border-radius:999px;place-items:center;min-width:18px;height:18px;font-size:8px;display:grid}.privacy-reminder{background:#fff7e9;border-radius:12px;align-items:center;gap:8px;margin-top:6px;padding:11px;display:flex}.privacy-reminder>span{color:#a97022}.privacy-reminder p,.privacy-reminder strong,.privacy-reminder small{margin:0;display:block}.privacy-reminder strong{color:#7a5d2d;font-size:9px}.privacy-reminder small{color:#9b865f;margin-top:2px;font-size:7px}.sidebar-user{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin-top:12px;padding:12px 8px 0;display:grid}.sidebar-user>span{color:#fff;background:#c47e60;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.sidebar-user p,.sidebar-user strong,.sidebar-user small{margin:0;display:block}.sidebar-user strong{font-size:10px}.icon-button{color:#a45a50;cursor:pointer;background:#fff1ee;border:0;border-radius:8px;width:28px;height:28px}.teacher-workspace{min-width:0}.teacher-topbar{z-index:35;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe6;border-bottom:1px solid #e1e7e2e6;justify-content:space-between;align-items:center;height:62px;padding:0 28px;display:flex;position:sticky;top:0}.mobile-menu{display:none}.topbar-actions{align-items:center;gap:10px;display:flex;position:relative}@media (width<=700px){.message-list{border-radius:20px}.message-list article{grid-template-columns:38px minmax(0,1fr) 18px;gap:12px;min-height:82px;padding:15px 16px}.message-list article>i{border-radius:12px;width:38px;height:38px;font-size:11px}.message-list article>b{font-size:19px}.message-dot{left:6px}}.parent-shell{--parent-ink:#172533;--parent-muted:#71808f;--parent-blue:#315d82;--parent-blue-bright:#0878dc;--parent-blue-soft:#eaf3fb;--parent-surface:#ffffffe6;--parent-line:#3055741c;min-height:100dvh;color:var(--parent-ink);background:radial-gradient(circle at 8% 4%,#7ea9cc21,#0000 24rem),linear-gradient(#f8fafc 0,#f3f7fa 42%,#f6f8fa 100%)}.parent-top-nav button{color:#748391;letter-spacing:.01em;font-size:13px;transition:color .16s}.parent-main .panel{border-color:var(--parent-line);background:var(--parent-surface);border-radius:24px;box-shadow:0 16px 44px #2346630e}.parent-main .section-kicker{color:var(--parent-blue-bright);letter-spacing:.18em;font-size:10px;font-weight:800}.parent-main .panel-header h2,.parent-main .child-overview-heading h2{color:var(--parent-ink)}.parent-bottom-nav button{color:#788793;border-radius:19px;gap:4px;min-height:54px;transition:color .16s,background .16s,transform .16s}.parent-bottom-nav button:active{transform:scale(.97)}.parent-bottom-nav button span{place-items:center;width:25px;height:25px;display:grid}.parent-view-home .class-home{max-width:1360px}.parent-view-home .class-hero-copy h1{color:var(--parent-ink)}.parent-view-home .class-photo-carousel{border:1px solid #ffffffd1;box-shadow:0 28px 70px #1c44662b}.parent-view-home .today-grid .panel,.parent-view-home .content-grid .panel{border-color:var(--parent-line);background:#ffffffdb;box-shadow:0 18px 48px #2346630e}.parent-view-child{padding-top:42px}.parent-view-child .child-space{max-width:1240px}.parent-view-child .student-hero{background:radial-gradient(circle at 86% 14%,#5e95be33,#0000 22%),linear-gradient(132deg,#fbfdff 0%,#edf5fb 60%,#e6f0f7 100%);border:1px solid #36658a1c;border-radius:32px;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(24px,3.5vw,46px);min-height:250px;padding:clamp(30px,4vw,48px);box-shadow:0 24px 64px #20476717}.parent-view-child .student-hero:after{content:"";border:1px solid #315d821a;border-radius:50%;width:230px;height:230px;bottom:-94px;right:7%}.parent-view-child .student-avatar{background:radial-gradient(circle at 50% 27%,#f0d0a3 0 17%,#0000 18%),radial-gradient(circle at 50% 68%,#6f98b6 0 35%,#0000 36%),linear-gradient(145deg,#adc8da,#5f8aaa);border-color:#ffffffeb;border-radius:36px;width:122px;height:122px;box-shadow:0 18px 40px #2651732b}.parent-view-child .student-avatar>span{background:#264b69db;font-family:inherit}.parent-view-child .student-avatar i{background:#4f9878}.parent-view-child .student-hero-copy h1{color:var(--parent-ink);letter-spacing:-.055em;margin:8px 0 12px;font-family:inherit;font-size:clamp(30px,3.2vw,42px);font-weight:700}.parent-view-child .student-hero-copy>p{color:#586b7b;max-width:680px;font-family:inherit;font-size:14px}.parent-view-child .student-meta span,.parent-view-child .relationship-badge{color:#526b7d;background:#ffffffb8;border:1px solid #315d821a;border-radius:999px;padding:7px 11px;font-size:10px}.parent-view-child .relationship-badge{color:var(--parent-blue);font-weight:800}.parent-view-child .child-overview{margin-top:40px}.parent-view-child .child-overview-heading{margin-bottom:20px}.parent-view-child .growth-stats{gap:14px}.parent-view-child .growth-stat{border-color:var(--parent-line);background:#ffffffe6;border-radius:23px;min-height:162px;padding:22px;box-shadow:0 14px 38px #2346630d}.parent-view-child .growth-stat:after{background:#e5f0f8;width:104px;height:104px;top:-36px;right:-30px}.parent-view-child .growth-stat>span{color:#738391;font-size:11px;font-weight:700}.parent-view-child .growth-stat>strong{color:var(--parent-blue);margin-top:15px}.parent-view-child .growth-stat p{color:#7a8894;font-size:11px;line-height:1.55}.parent-view-child .growth-stat.is-empty>strong{color:#91a0ad}.parent-view-child .child-homework-panel,.parent-view-child .child-two-column{margin-top:20px}.parent-view-child .child-homework-panel,.parent-view-child .latest-comment{padding:clamp(22px,3vw,30px)}.parent-view-child .positive-change{color:var(--parent-blue);background:var(--parent-blue-soft)}.parent-view-child .org-participation-panel>.panel-header{padding:30px 30px 0}.parent-view-child .latest-comment{background:radial-gradient(circle at 93% 15%,#5e95be1c,#0000 22%),#ffffffe6}.parent-view-child .comment-signature>span{background:var(--parent-blue)}.parent-view-suggestions{padding-top:42px}.parent-view-suggestions .suggestion-page{max-width:940px;padding:0 0 32px}.parent-view-suggestions .suggestion-intro{background:radial-gradient(circle at 88% 20%,#5991bb33,#0000 22%),linear-gradient(135deg,#fafdff,#eaf3fa);border:1px solid #315d821a;border-radius:32px;min-height:220px;padding:clamp(32px,5vw,52px);position:relative;overflow:hidden;box-shadow:0 22px 60px #23466314}.parent-view-suggestions .suggestion-intro:after{content:"";border:1px solid #315d821f;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-104px;right:-72px}.parent-view-suggestions .suggestion-intro h1{max-width:620px;color:var(--parent-ink);letter-spacing:-.055em;margin:12px 0 15px;font-family:inherit;font-size:clamp(34px,4vw,48px);font-weight:700}.parent-view-suggestions .suggestion-intro p{color:#627484;max-width:650px;font-size:14px}.parent-view-suggestions .suggestion-form{margin-top:20px;padding:clamp(24px,4vw,38px)}.parent-view-suggestions .suggestion-form label>span{color:#334b5e;margin-bottom:10px;font-size:13px}.parent-view-suggestions .suggestion-form select,.parent-view-suggestions .suggestion-form textarea{color:var(--parent-ink);font:inherit;background:#f8fafc;border-color:#315d822e;border-radius:16px;transition:border-color .16s,box-shadow .16s,background .16s}.parent-view-suggestions .suggestion-form select:focus,.parent-view-suggestions .suggestion-form textarea:focus{background:#fff;border-color:#0878dc8c;box-shadow:0 0 0 4px #0878dc14}.parent-view-suggestions .suggestion-form textarea{min-height:190px}.parent-view-suggestions .suggestion-form .primary-button{background:linear-gradient(135deg,#315d82,#0878dc);border-radius:15px;min-height:50px;box-shadow:0 12px 28px #0878dc2e}.parent-view-me{padding-top:42px}.parent-view-me .account-page,.parent-view-me .password-page{max-width:760px;padding:0 0 34px}.parent-view-me .account-card{color:#fff;background:radial-gradient(circle at 90% 0,#99c7e747,#0000 26%),linear-gradient(135deg,#24465f,#3f7399);border:1px solid #ffffff26;border-radius:30px;min-height:210px;padding:38px;position:relative;overflow:hidden;box-shadow:0 24px 62px #1c415d33}.parent-view-me .account-card:after{content:"";border:1px solid #ffffff21;border-radius:50%;width:220px;height:220px;position:absolute;bottom:-90px;right:-62px}.parent-view-me .account-avatar{z-index:1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff2e;border-color:#ffffff4d;width:82px;height:82px;font-family:inherit;position:relative}.parent-view-me .account-card h1{z-index:1;color:#fff;font-size:25px;position:relative}.parent-view-me .account-card p{z-index:1;color:#ffffffb3;position:relative}.parent-view-me .settings-list,.parent-view-me .notification-channel-panel{border-color:var(--parent-line);background:#ffffffe6;border-radius:24px;margin-top:20px;box-shadow:0 16px 44px #2346630e}.parent-view-me .settings-list button,.parent-view-me .settings-list a{border-color:var(--parent-line);background:0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:76px;padding:18px 20px}.parent-view-me .settings-list button:after,.parent-view-me .settings-list a:after{content:"›";color:#9aa8b4;grid-area:1/3/3;font-size:22px;font-weight:400}.parent-view-me .settings-list button>span,.parent-view-me .settings-list a>span{color:var(--parent-blue);background:var(--parent-blue-soft)}.parent-view-me .settings-list strong{color:var(--parent-ink);font-size:13px}.parent-view-me .settings-list small{color:#7a8995;font-size:10px}.parent-view-me .notification-channel-panel>.panel-header{padding:22px 22px 18px}.parent-view-me .notification-channel-list>div{border-color:var(--parent-line);padding:18px 22px}.parent-view-me .password-back{color:var(--parent-blue)}.parent-view-me .password-panel{border-color:var(--parent-line);border-radius:26px;padding:clamp(24px,4vw,38px);box-shadow:0 18px 50px #23466312}.parent-view-me .password-panel input{background:#f8fafc;border-color:#315d822e;border-radius:14px;min-height:50px}.parent-view-me .password-panel .primary-button{background:linear-gradient(135deg,#315d82,#0878dc);border-radius:15px;min-height:50px}@media (hover:hover){.parent-view-child .growth-stat,.parent-view-me .settings-list button,.parent-view-me .settings-list a{transition:transform .18s,border-color .18s,box-shadow .18s}.parent-view-child .growth-stat:hover,.parent-view-me .settings-list button:hover,.parent-view-me .settings-list a:hover{border-color:#315d8233;transform:translateY(-2px);box-shadow:0 18px 40px #23466314}}@media (width<=820px){.parent-header{height:66px}.parent-main{min-height:calc(100dvh - 66px);padding-right:18px;padding-bottom:calc(112px + env(safe-area-inset-bottom));padding-left:18px}.parent-view-child,.parent-view-suggestions,.parent-view-me{padding-top:24px}.parent-view-child .student-hero{grid-template-columns:auto minmax(0,1fr);padding:30px}.parent-view-child .relationship-badge,.parent-view-child .child-switch{grid-column:1/-1;justify-self:start}.parent-view-child .growth-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.parent-header{padding:0 18px}.parent-header .brand-mark{flex-basis:38px;width:38px;height:38px}.parent-header .brand strong{max-width:170px;font-size:15px}.parent-header .user-chip span{width:38px;height:38px}.parent-main,.parent-view-home{padding-left:14px;padding-right:14px}.parent-view-home .class-home{padding-top:28px}.parent-view-home .class-home .class-hero-copy h1{letter-spacing:-.06em;margin:16px 0 14px;font-size:clamp(38px,11.5vw,50px);line-height:1.12}.parent-view-home .class-home .class-hero-copy h1>span{white-space:normal}.parent-view-home .class-home .class-photo-carousel{border-radius:24px 24px 52px;height:268px}.parent-view-home .class-home .class-calendar-section{margin-top:46px}.parent-view-child .student-hero{border-radius:27px;grid-template-columns:78px minmax(0,1fr);gap:18px;min-height:0;padding:26px 22px}.parent-view-child .student-avatar{border-width:5px;border-radius:24px;width:78px;height:78px}.parent-view-child .student-avatar>span{width:32px;height:32px;font-size:14px;bottom:6px}.parent-view-child .student-avatar i{border-width:3px;width:18px;height:18px}.parent-view-child .student-hero-copy .eyebrow{font-size:9px}.parent-view-child .student-hero-copy h1{margin:5px 0 0;font-size:clamp(23px,7vw,29px);line-height:1.2}.parent-view-child .student-hero-copy>p{grid-column:1/-1;margin-top:16px;font-size:12px}.parent-view-child .student-meta{grid-column:1/-1;gap:6px;margin-top:12px}.parent-view-child .student-meta span{font-size:9px}.parent-view-child .child-overview{margin-top:30px}.parent-view-child .growth-stats{gap:10px}.parent-view-child .growth-stat{border-radius:20px;min-height:150px;padding:18px 16px}.parent-view-child .growth-stat>strong{font-size:30px}.parent-view-child .growth-stat p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.parent-view-child .child-homework-panel,.parent-view-child .latest-comment{padding:20px}.parent-view-child .org-participation-panel>.panel-header{padding:22px 20px 0}.parent-view-child .org-participation-panel>.role-history{margin:18px 20px 22px}.parent-view-suggestions .suggestion-intro{border-radius:27px;min-height:0;padding:30px 24px}.parent-view-suggestions .suggestion-intro h1{font-size:32px;line-height:1.2}.parent-view-suggestions .suggestion-intro p{font-size:12px}.parent-view-suggestions .suggestion-form{padding:22px 20px}.parent-view-suggestions .suggestion-form textarea{min-height:170px}.parent-view-me .account-card{border-radius:27px;min-height:190px;padding:30px 24px}.parent-view-me .account-avatar{width:72px;height:72px}.parent-view-me .settings-list button,.parent-view-me .settings-list a{padding:16px}.parent-view-me .notification-channel-list>div{grid-template-columns:auto minmax(0,1fr);padding:16px}.parent-view-me .notification-channel-list .push-channel-action{grid-column:1/-1;justify-content:flex-start;padding-left:46px}.parent-bottom-nav{bottom:calc(10px + env(safe-area-inset-bottom));border-radius:24px;width:calc(100% - 24px);min-height:68px}}.topbar-search{color:#9aa49f;cursor:pointer;background:#f8faf8;border:1px solid #e0e6e1;border-radius:10px;align-items:center;gap:7px;min-width:230px;min-height:36px;padding:0 10px;font-size:9px;display:flex}.topbar-search small{background:#fff;border:1px solid #dfe5e0;border-radius:5px;margin-left:auto;padding:2px 5px;font-size:7px}.topbar-notification{cursor:pointer;background:#fff;border:1px solid #e0e6e1;border-radius:10px;place-items:center;width:36px;height:36px;display:grid;position:relative}.topbar-notification .notification-badge{color:#fff;background:var(--rose);border:2px solid #fff;border-radius:999px;place-items:center;min-width:17px;height:17px;padding:0 3px;font-size:7px;display:grid;position:absolute;top:-5px;right:-4px}.topbar-notification .notification-bell{color:#43504a;font-size:18px;line-height:1}.teacher-main{max-width:1440px;margin:0 auto;padding:30px 32px 60px}.toast{z-index:100;color:#315f4d;min-width:250px;box-shadow:var(--shadow);background:#f4fbf6;border:1px solid #cfe0d5;border-radius:13px;align-items:center;gap:9px;padding:13px 40px 13px 14px;font-size:11px;display:flex;position:fixed;top:78px;right:26px}.toast>span{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.toast button{cursor:pointer;background:0 0;border:0;font-size:18px;position:absolute;right:10px}.teacher-page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.teacher-page-heading h1{color:#214b40;letter-spacing:-.04em;margin:7px 0;font-family:Songti SC,serif;font-size:31px}.teacher-page-heading p{color:var(--muted);margin:0;font-size:11px}.metric-grid{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.metric-card{min-height:122px;box-shadow:var(--shadow-small);background:#fff;border:1px solid #e2e8e3;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;padding:18px;display:grid;position:relative;overflow:hidden}.metric-card:after{content:"";border:18px solid #285c4d0a;border-radius:50%;width:100px;height:100px;position:absolute;bottom:-38px;right:-26px}.metric-icon{width:38px;height:38px;color:var(--green);background:var(--green-soft);border-radius:12px;place-items:center;font-size:16px;display:grid}.metric-card p,.metric-card small,.metric-card strong,.metric-card p>span{margin:0;display:block}.metric-card p>small{color:var(--muted);font-size:9px}.metric-card p>strong{margin-top:6px;font-size:27px;line-height:1}.metric-card p>span{color:#96a19b;margin-top:6px;font-size:8px}.metric-card>i{color:#8fa098;font-size:12px;font-style:normal}.metric-amber .metric-icon{color:#9f681a;background:var(--amber-soft)}.metric-blue .metric-icon{color:#4f748e;background:var(--blue-soft)}.metric-rose .metric-icon{color:#a35950;background:var(--rose-soft)}.overview-grid,.overview-bottom-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:18px;margin-top:18px;display:grid}.overview-welcome{background:radial-gradient(circle at 12% 0,#f1c36733,#0000 24%),#e8f0e8;border-radius:22px;grid-template-columns:minmax(0,1fr) 280px;gap:20px;min-height:290px;padding:30px;display:grid;overflow:hidden}.overview-welcome h2{color:#214b40;letter-spacing:-.04em;max-width:520px;margin:10px 0 12px;font-family:Songti SC,serif;font-size:28px}.overview-welcome p{color:#63746b;max-width:580px;font-size:11px;line-height:1.8}.welcome-actions{gap:9px;margin-top:24px;display:flex}.overview-art{align-self:stretch;position:relative}.art-sun{background:#f1bc5694;border-radius:50%;width:72px;height:72px;position:absolute;top:5px;right:12px;box-shadow:0 0 0 16px #f1bc561a}.art-book{background:#b9795c;border-radius:10px 10px 4px 4px;height:70px;position:absolute;bottom:25px;left:20px;right:30px;transform:rotate(-4deg);box-shadow:0 14px #6f8e7f,0 28px #d5b260}.art-card{color:#f4e6c8;background:var(--green);text-align:center;border:5px solid #fff;border-radius:8px;width:105px;height:125px;padding:24px 10px;font-family:Songti SC,serif;font-size:16px;line-height:1.5;position:absolute;bottom:88px;right:25px;transform:rotate(7deg)}.art-plant{border-bottom:35px solid #b7895f;border-left:14px solid #0000;border-right:14px solid #0000;width:80px;height:90px;position:absolute;bottom:88px;left:15px}.todo-panel,.recent-updates,.audit-panel{padding:22px}.todo-count{color:#fff;background:var(--rose);border-radius:8px;place-items:center;width:26px;height:26px;font-size:10px;font-weight:800;display:grid}.todo-list button{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;padding:14px 0;display:grid}.todo-check{border:2px solid var(--green);border-radius:5px;width:17px;height:17px}.todo-amber{border-color:var(--amber)}.todo-blue{border-color:var(--blue)}.todo-list p,.todo-list strong,.todo-list small{margin:0;display:block}.todo-list strong{font-size:10px}.todo-list small{color:var(--muted);margin-top:3px;font-size:8px}.todo-list i{color:#94a09a;font-style:normal}.overview-bottom-grid{grid-template-columns:1fr 1fr}.recent-student-list,.audit-list{margin-top:12px}.recent-student-list>div{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 0;display:grid}.student-initial{color:#fff;background:#608474;border-radius:11px;place-items:center;width:34px;height:34px;font-size:10px;font-weight:800;display:grid}.student-initial-1{background:#c47e60}.student-initial-2{background:#b68a43}.student-initial-3{background:#66839b}.recent-student-list p,.recent-student-list strong,.recent-student-list small,.recent-student-list>div>span:last-child{margin:0;display:block}.recent-student-list strong{font-size:10px}.recent-student-list small{color:var(--muted);font-size:8px}.recent-student-list>div>span:last-child{color:#57675f;text-align:right;font-size:9px}.audit-list>div{border-top:1px solid var(--line);grid-template-columns:auto 1fr;gap:10px;padding:12px 0;display:grid}.audit-list>div>span{width:23px;height:23px;color:var(--green);background:var(--green-soft);border-radius:50%;place-items:center;font-size:9px;font-weight:800;display:grid}.audit-list p,.audit-list strong,.audit-list small{margin:0;display:block}.audit-list strong{font-size:9px}.audit-list small{color:var(--muted);margin-top:3px;font-size:8px}.preview-toolbar{background:#f5f7f5;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;padding:10px 10px 10px 14px;display:flex}.preview-toolbar>div{align-items:center;gap:7px;display:flex}.live-indicator{background:#56a36e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #56a36e1f}.preview-toolbar strong{font-size:10px}.management-layout{grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr);align-items:start;gap:18px;display:grid}.data-panel-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.table-tools{gap:7px;display:flex}.table-tools button,.segmented-control button{min-height:34px;color:var(--green);cursor:pointer;background:#fff;border:1px solid #dfe5e0;border-radius:9px;padding:0 11px;font-size:8px}.table-person{align-items:center;gap:8px;display:inline-flex}.table-person i{color:#fff;background:#687;border-radius:10px;place-items:center;width:30px;height:30px;font-size:9px;font-style:normal;display:grid}.parent-person i{background:#c18165}.status-pill{border-radius:999px;padding:4px 7px;font-size:8px;font-weight:700}.status-active{color:var(--green);background:var(--green-soft)}.status-disabled{color:#8d4c44;background:var(--rose-soft)}.row-action{color:var(--green);background:0 0;padding:5px 0;font-size:9px;font-weight:700}.management-form{box-shadow:var(--shadow-small);background:#fff;border:1px solid #e0e7e1;border-radius:22px;padding:24px}.management-form-heading{gap:12px;margin-bottom:22px;display:flex}.form-badge{color:#fff;background:var(--green);border-radius:12px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:18px;display:grid}.management-form-heading h2{margin:0 0 5px;font-size:16px}.management-form-heading p{color:var(--muted);margin:0;font-size:9px;line-height:1.5}.management-form input:not([type=checkbox]):not([type=file]),.management-form select,.management-form textarea{width:100%;min-height:42px;color:var(--ink);background:#fbfcfb;border:1px solid #dce3de;border-radius:10px;outline:0;padding:10px 11px;font-size:10px;transition:border-color .15s,box-shadow .15s}.management-form textarea{resize:vertical;min-height:auto;line-height:1.65}.management-form input:focus,.management-form select:focus,.management-form textarea:focus{border-color:#7da08f;box-shadow:0 0 0 4px #45786314}.management-form .full-field,.management-form .form-row,.management-form .check-field,.file-drop{margin-top:15px}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.three-fields{grid-template-columns:1fr .7fr .7fr}.form-error{color:#964b42;background:#fff0ed;border-radius:9px;margin:16px 0 0;padding:10px 12px;font-size:9px}.form-actions{border-top:1px solid var(--line);align-items:center;gap:12px;margin-top:22px;padding-top:18px;display:flex}.form-actions span{color:#96a19b;font-size:8px}.file-drop{cursor:pointer;text-align:center;background:#f8faf8;border:1px dashed #aebfb5;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:155px;padding:25px;display:flex!important}.file-drop input{opacity:0;pointer-events:none;position:absolute}.file-drop>span{background:var(--green-soft);border-radius:12px;place-items:center;width:38px;height:38px;color:var(--green)!important;margin:0 0 10px!important;font-size:17px!important;display:grid!important}.file-drop small{color:var(--muted);margin-top:5px;font-size:8px}.segmented-control{background:#fff;border:1px solid #dfe6e0;border-radius:11px;width:fit-content;margin-bottom:15px;padding:4px;display:flex}.segmented-control button{background:0 0;border:0}.segmented-control button.active{color:#fff;background:var(--green)}.record-list-panel{min-height:520px}.record-count{color:var(--green);background:var(--green-soft);border-radius:999px;padding:5px 8px;font-size:8px;font-weight:750}.weekly-duty-page{gap:22px;display:grid}.weekly-duty-planner,.duty-override-panel{border:1px solid var(--line);background:#fff;border-radius:24px;box-shadow:0 16px 42px #2435440f}.weekly-duty-planner{padding:28px}.weekly-duty-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.weekly-duty-heading h2{margin:7px 0 5px;font-size:24px}.weekly-duty-heading p,.weekly-duty-actions p{color:var(--muted);margin:0;line-height:1.65}.weekly-duty-cycle{color:#315c78;white-space:nowrap;background:#edf5fa;border-radius:999px;padding:9px 13px;font-size:12px;font-weight:800}.weekly-duty-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:24px;display:grid}.weekly-duty-day{background:#f9fbfc;border:1px solid #dfe7ed;border-radius:18px;min-width:0;padding:17px}.weekly-duty-day.is-today{background:#f0f6fa;border-color:#7ca3bd;box-shadow:inset 0 3px #315c78}.weekly-duty-day header{justify-content:space-between;align-items:center;gap:8px;min-height:26px;display:flex}.weekly-duty-day header strong{color:#243544;font-size:17px}.weekly-duty-day header span{color:#fff;white-space:nowrap;background:#315c78;border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800}.weekly-duty-day label{margin-top:14px;display:block}.weekly-duty-day label>span{color:#526575;margin-bottom:7px;font-size:11px;font-weight:750;display:block}.weekly-duty-day input,.weekly-duty-day textarea{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #d9e2e8;border-radius:12px;line-height:1.55}.weekly-duty-day input{height:44px;padding:0 12px}.weekly-duty-day textarea{resize:vertical;min-height:82px;padding:10px 12px}.weekly-duty-day>small{color:#8b9aa5;margin-top:9px;font-size:9px;line-height:1.5;display:block}.weekly-duty-actions{align-items:center;gap:18px;margin-top:22px;display:flex}.weekly-duty-actions .primary-button{min-width:220px}.duty-override-panel{overflow:hidden}.duty-override-panel>summary{cursor:pointer;align-items:center;gap:12px;padding:20px 24px;list-style:none;display:flex;position:relative}.duty-override-panel>summary::-webkit-details-marker{display:none}.duty-override-panel>summary:after{content:"+";color:#315c78;margin-left:auto;font-size:22px}.duty-override-panel[open]>summary:after{content:"−"}.duty-override-panel>summary span{color:#243544;font-weight:800}.duty-override-panel>summary small{color:var(--muted)}.duty-override-panel .management-form{border:0;border-top:1px solid var(--line);box-shadow:none;border-radius:0}@media (width<=1180px){.weekly-duty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.weekly-duty-planner{padding:20px}.weekly-duty-heading,.weekly-duty-actions,.duty-override-panel>summary{flex-direction:column;align-items:stretch}.weekly-duty-cycle{width:fit-content}.weekly-duty-grid{grid-template-columns:1fr}.weekly-duty-actions .primary-button{width:100%;min-width:0}.duty-override-panel>summary:after{position:absolute;right:24px}}.parent-account-controls{background:#fafbfd;border-bottom:1px solid #edf0ed;justify-content:space-between;align-items:flex-end;gap:16px;padding:14px 20px;display:flex}.parent-account-controls label{width:min(430px,100%)}.parent-account-controls label>span{color:#6f8193;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.parent-account-controls input{color:#21384d;width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #d8e1e9;border-radius:11px;outline:none;padding:0 13px;font-size:11px}.parent-account-controls input:focus{border-color:#6f94b2;box-shadow:0 0 0 3px #315a7c1a}.parent-account-controls>span{color:#78899a;white-space:nowrap;padding-bottom:11px;font-size:9px}.parent-account-controls>span strong{color:#315a7c}.parent-account-empty{color:#8796a4;text-align:center;height:120px}.parent-account-pagination{background:#fafbfd;border-top:1px solid #edf0ed;justify-content:space-between;align-items:center;gap:14px;padding:14px 20px;display:flex}.parent-account-pagination>span{color:#78899a;font-size:9px}.parent-account-pagination>span strong{color:#315a7c}.parent-account-pagination>div{gap:8px;display:flex}.parent-account-pagination button{color:#315a7c;min-width:72px;min-height:34px;font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d8e1e9;border-radius:10px;padding:0 12px;font-size:9px;font-weight:700}.parent-account-pagination button:disabled{color:#a7b1bb;cursor:not-allowed;background:#f2f4f6}@media (width<=700px){.parent-account-controls{flex-direction:column;align-items:stretch;gap:8px;padding:12px 14px}.parent-account-controls>span{padding-bottom:0}.parent-account-pagination{padding:12px 14px}.parent-account-pagination>div{flex:1}.parent-account-pagination button{flex:1;min-width:0}}.management-record-list{padding:0 22px}.management-record-list article{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;gap:13px;padding:18px 0;display:grid}.management-record-list article:last-child{border-bottom:0}.record-index{width:36px;height:36px;color:var(--green);background:var(--green-soft);border-radius:11px;place-items:center;font-size:9px;font-weight:800;display:grid}.record-index-1{color:#a36a1e;background:var(--amber-soft)}.record-index-2{color:#52738c;background:var(--blue-soft)}.management-record-list small{color:#8d9993;font-size:8px}.management-record-list h3{margin:5px 0 6px;font-size:12px;line-height:1.5}.management-record-list p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:9px;line-height:1.6;display:-webkit-box;overflow:hidden}.management-record-list article>button{color:#87938d;cursor:pointer;background:0 0;border:0;align-self:start}.compact-empty{padding:70px 20px}.compact-empty>span{border-radius:18px;width:54px;height:54px;font-size:22px}.teacher-profile-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}.teacher-profile-form{min-width:0}.teacher-profile-form .form-submit{width:auto;min-width:150px;margin-top:22px}.teacher-profile-preview{box-shadow:var(--shadow-small);background:radial-gradient(circle at 100% 0,#edbe6033,#0000 28%),linear-gradient(160deg,#fff 0%,#f6f8f5 100%);border:1px solid #dbe2dce6;border-radius:24px;padding:26px;position:sticky;top:82px;overflow:hidden}.teacher-profile-preview>small{color:var(--muted);margin-top:7px;font-size:9px;display:block}.teacher-profile-avatar{color:#fff;background:linear-gradient(145deg,#386f59,#75a18e);border-radius:22px;place-items:center;width:66px;height:66px;margin-top:28px;font-size:25px;font-weight:760;display:grid;box-shadow:0 14px 32px #3566513d}.teacher-profile-preview h2{letter-spacing:-.04em;margin:18px 0 5px;font-size:23px}.teacher-profile-preview>p{color:var(--muted);margin:0;font-size:10px}.teacher-profile-class{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:5px;margin-top:22px;padding:15px 0;display:grid}.teacher-profile-class strong{font-size:14px}.teacher-profile-class span{color:var(--muted);font-size:9px}.teacher-profile-preview blockquote{color:#4b5650;font-family:var(--font-serif);margin:20px 0;font-size:13px;line-height:1.8}.teacher-profile-contact{color:#315c49;background:var(--green-soft);border-radius:16px;align-items:center;gap:11px;padding:13px 14px;display:flex}.teacher-profile-contact>span{color:#fff;background:var(--green);border-radius:12px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:15px;display:grid}.teacher-profile-contact p{gap:2px;margin:0;display:grid}.teacher-profile-contact strong{font-size:10px}.teacher-profile-contact small{color:#688474;font-size:8px}.homepage-editor-actions{align-items:center;gap:10px;margin-top:22px;display:flex}.homepage-editor-actions button{white-space:nowrap}.homepage-copy-preview{background:radial-gradient(circle at 100% 0,#6d9a8438,#0000 32%),linear-gradient(160deg,#fff 0%,#f2f6f2 100%)}.homepage-preview-title{margin-top:28px}.homepage-preview-title>span{color:var(--muted);letter-spacing:.08em;font-size:8px;font-weight:720}.homepage-preview-title h2{margin:10px 0 4px;font-size:30px}.homepage-preview-title strong{color:#587064;font-size:13px;font-weight:630}.homepage-preview-slogan{font-family:var(--font-serif);line-height:1.65;color:var(--ink)!important;margin:24px 0 0!important;font-size:15px!important}.homepage-preview-description{line-height:1.75;color:var(--muted)!important;margin-top:12px!important;font-size:9px!important}.settings-security-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.settings-security-grid article{box-shadow:var(--shadow-small);background:#fff;border:1px solid #e1e7e2;border-radius:20px;grid-template-columns:auto 1fr;gap:14px;padding:23px;display:grid}.settings-security-grid article>span{width:44px;height:44px;color:var(--green);background:var(--green-soft);border-radius:14px;place-items:center;font-size:18px;display:grid}.settings-security-grid small{color:#4b8468;font-size:8px;font-weight:750}.settings-security-grid h2{margin:5px 0 8px;font-size:14px}.settings-security-grid p{color:var(--muted);margin:0;font-size:9px;line-height:1.65}.settings-password-form{margin-top:18px}.future-panel{background:radial-gradient(circle at 100% 0,#f0bf5d29,#0000 26%),#fff;grid-template-columns:1fr auto;align-items:center;gap:30px;margin-top:18px;padding:26px;display:grid}.future-panel h2{margin:8px 0;font-size:19px}.future-panel p{max-width:690px;color:var(--muted);margin:0;font-size:10px;line-height:1.7}.future-tags{flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:300px;display:flex}.future-tags span{color:var(--green);background:#f8faf8;border:1px solid #dfe7e1;border-radius:999px;padding:7px 10px;font-size:8px}.home-visit-module{--visit-ink:#23352c;--visit-muted:#68776f;--visit-surface:#fff}.home-visit-hero{background:radial-gradient(circle at 90% 0,#ebb7562e,#0000 31%),linear-gradient(135deg,#f8fbf8 0%,#eef6f0 100%);border:1px solid #dbe6de;border-radius:26px;justify-content:space-between;align-items:center;gap:30px;min-height:180px;padding:30px 32px;display:flex;overflow:hidden}.home-visit-hero>div{max-width:720px}.home-visit-hero h2{color:var(--visit-ink);letter-spacing:-.03em;margin:8px 0 10px;font-family:Songti SC,SimSun,serif;font-size:clamp(25px,3vw,38px)}.home-visit-hero p{max-width:650px;color:var(--visit-muted);margin:0;font-size:12px;line-height:1.8}.home-visit-hero .primary-button{min-width:126px;min-height:44px;font-size:11px}.visit-stat-grid{grid-template-columns:repeat(3,minmax(120px,.55fr)) minmax(260px,1.35fr);gap:12px;margin:16px 0;display:grid}.visit-stat-grid>article,.visit-progress-card{min-height:86px;box-shadow:var(--shadow-small);background:#fff;border:1px solid #e0e7e2;border-radius:18px;padding:17px 19px}.visit-stat-grid article small,.visit-progress-card small{color:var(--visit-muted);margin-bottom:5px;font-size:9px;display:block}.visit-stat-grid article strong{color:var(--green);font-size:26px;line-height:1}.visit-stat-grid article span{color:#89958f;margin-left:3px;font-size:9px}.visit-progress-card{grid-template-columns:auto 1fr;align-items:center;gap:18px;display:grid}.visit-progress-card strong{font-size:14px}.visit-progress-track{background:#e8eee9;border-radius:999px;height:8px;overflow:hidden}.visit-progress-track span{border-radius:inherit;background:linear-gradient(90deg, var(--green), #82ac8f);height:100%;display:block}.home-visit-workspace{grid-template-columns:minmax(0,1fr) minmax(280px,350px);align-items:start;gap:16px;display:grid}.home-visit-form-panel,.profile-preview-card,.recent-visit-card{background:var(--visit-surface);box-shadow:var(--shadow-small);border:1px solid #dfe7e1;border-radius:22px}.home-visit-form-panel{scroll-margin-top:78px;overflow:hidden}.visit-form-header{border-bottom:1px solid #e7ece8;justify-content:space-between;align-items:center;padding:22px 26px 17px;display:flex}.visit-form-header span,.visit-form-header>small{color:var(--green);font-size:9px;font-weight:750}.visit-form-header h3{color:var(--visit-ink);margin:4px 0 0;font-size:18px}.visit-form-header>small{background:var(--green-soft);border-radius:50%;place-items:center;width:43px;height:43px;display:grid}.visit-stepper{background:#fafcfa;border-bottom:1px solid #e7ece8;grid-template-columns:repeat(5,1fr);padding:15px 24px;display:grid}.visit-stepper button{color:#9aa49f;cursor:pointer;background:0 0;border:0;justify-items:center;gap:5px;min-width:0;padding:0;font-size:8px;display:grid;position:relative}.visit-stepper button:not(:last-child):after{z-index:0;content:"";background:#dce5df;width:calc(100% - 30px);height:1px;position:absolute;top:12px;left:calc(50% + 15px)}.visit-stepper i{z-index:1;background:#fff;border:1px solid #d7e1da;border-radius:50%;place-items:center;width:25px;height:25px;font-size:8px;font-style:normal;display:grid;position:relative}.visit-stepper button.active,.visit-stepper button.done{color:var(--green);font-weight:800}.visit-stepper button.active i,.visit-stepper button.done i{border-color:var(--green);color:#fff;background:var(--green)}.visit-step-content{padding:26px}.visit-section-heading{align-items:center;gap:12px;margin-bottom:21px;display:flex}.visit-section-heading.subsection{border-top:1px solid #e7ece8;margin-top:34px;padding-top:26px}.visit-section-heading>span{width:38px;height:38px;color:var(--green);background:var(--green-soft);border-radius:12px;flex:0 0 38px;place-items:center;font-size:10px;font-weight:850;display:grid}.visit-section-heading h4{color:var(--visit-ink);margin:0 0 4px;font-size:15px}.visit-section-heading p{color:var(--visit-muted);margin:0;font-size:9px;line-height:1.5}.visit-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.visit-text-field{margin-bottom:17px;display:block}.visit-text-field>span,.visit-question legend{color:var(--visit-ink);margin-bottom:8px;font-size:11px;font-weight:750;display:block}.visit-text-field input,.visit-text-field select,.visit-text-field textarea{width:100%;min-height:44px;color:var(--visit-ink);font:inherit;background:#fbfcfb;border:1px solid #d8e2db;border-radius:11px;outline:0;padding:10px 12px;font-size:12px}.visit-text-field textarea{resize:vertical;min-height:86px;line-height:1.65}.visit-text-field input:focus,.visit-text-field select:focus,.visit-text-field textarea:focus{border-color:#79a08b;box-shadow:0 0 0 4px #45786314}.visit-question{border:0;min-width:0;margin:0 0 22px;padding:0}.visit-question legend{width:100%}.visit-question legend small{color:#7b8b82;margin-left:8px;font-size:8px;font-weight:500}.question-hint{color:#839087;margin:-2px 0 9px;font-size:9px}.visit-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.visit-choice{color:#4a5c52;cursor:pointer;background:#fff;border:1px solid #dce4de;border-radius:11px;align-items:center;gap:9px;min-height:42px;padding:9px 11px;font-size:10px;line-height:1.35;transition:border-color .14s,background .14s;display:flex}.visit-choice:hover{border-color:#a9bdb1}.visit-choice.selected{color:var(--green);background:#f0f7f2;border-color:#74a087;font-weight:750}.visit-choice.disabled{opacity:.45;cursor:not-allowed}.visit-choice input{width:16px;height:16px;accent-color:var(--green);flex:0 0 16px}.parenting-notes{color:#728178;background:#f7f9f7;border-radius:12px;grid-template-columns:repeat(2,1fr);gap:7px 14px;margin:-12px 0 22px;padding:13px 15px;font-size:8px;display:grid}.parenting-notes b{color:#4c6156}.visit-error{margin:0 26px 15px;font-size:10px}.visit-saved-state{color:#376b52;background:#edf7f0;border-radius:10px;align-items:center;gap:8px;margin:0 26px 15px;padding:10px 12px;font-size:10px;font-weight:700;display:flex}.visit-saved-state span{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:19px;height:19px;font-size:8px;display:grid}.visit-form-actions{background:#fbfcfb;border-top:1px solid #e7ece8;justify-content:flex-end;align-items:center;gap:10px;padding:18px 26px 23px;display:flex}.visit-form-actions button{min-height:40px;font-size:10px}.visit-form-actions .text-button{color:var(--green);cursor:pointer;background:0 0;border:0;margin-right:auto;padding:0 8px;font-weight:750}.visit-form-actions button:disabled{opacity:.5;cursor:not-allowed}.home-visit-side{gap:16px;display:grid;position:sticky;top:76px}.profile-preview-card,.recent-visit-card{padding:21px}.profile-preview-card>header,.recent-visit-card>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.profile-preview-card header span{color:var(--green);letter-spacing:.08em;font-size:8px;font-weight:800}.profile-preview-card h3,.recent-visit-card h3{color:var(--visit-ink);margin:4px 0 0;font-size:15px}.profile-preview-card header i{color:#966820;background:var(--amber-soft);border-radius:999px;padding:5px 7px;font-size:7px;font-style:normal;font-weight:800}.profile-tag-group{margin-top:15px}.profile-tag-group>small,.attention-preview small{color:#7e8c84;margin-bottom:7px;font-size:8px;display:block}.profile-tag-group>div{flex-wrap:wrap;gap:6px;display:flex}.profile-tag{border-radius:999px;padding:6px 8px;font-size:8px;font-weight:700}.tag-green{color:#3d7459;background:#eaf5ed}.tag-amber{color:#8c641e;background:#fff4db}.tag-blue{color:#4f6f88;background:#edf4f8}.attention-preview{background:#fafbfa;border:1px solid #e2e8e3;border-radius:12px;justify-content:space-between;align-items:center;margin-top:17px;padding:12px 14px;display:flex}.attention-preview small{margin:0}.attention-preview strong{color:var(--green);font-size:10px}.profile-preview-card>p{color:#66776e;margin:15px 0 0;font-size:9px;line-height:1.75}.profile-preview-card>footer{color:#6f7c75;background:#f7f9f7;border-radius:0 0 21px 21px;align-items:center;gap:7px;margin:17px -21px -21px;padding:12px 18px;font-size:8px;line-height:1.5;display:flex}.recent-visit-card>header p{color:#7e8c84;margin:5px 0 0;font-size:8px;line-height:1.5}.recent-visit-card>header>span{width:27px;height:27px;color:var(--green);background:var(--green-soft);border-radius:9px;place-items:center;font-size:8px;font-weight:800;display:grid}.recent-visit-list article{border-top:1px solid #e8ece9;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px 0;display:grid}.visit-student-avatar{color:#fff;background:#6d8f7e;border-radius:11px;place-items:center;width:34px;height:34px;font-size:10px;font-weight:800;display:grid}.recent-visit-list small{color:#98a19c;font-size:7px}.recent-visit-list h4{margin:2px 0 3px;font-size:10px}.recent-visit-list p{color:#77857d;margin:0;font-size:8px}.recent-visit-list button,.visit-complete{color:var(--green);background:var(--green-soft);border:0;border-radius:7px;padding:5px 7px;font-size:8px;font-weight:750}.recent-visit-list button{cursor:pointer}.visit-complete{color:#738078;background:#f0f2f0}.visit-empty{text-align:center;color:#87938c;padding:35px 10px;font-size:9px}.visit-empty span{font-size:22px}.home-visit-history-card{margin-top:16px;padding:24px}.home-visit-history-card>header{align-items:center}.home-visit-history-card>header .section-kicker{color:var(--green);letter-spacing:.11em;font-size:8px;font-weight:800}.home-visit-history-card>header>span{white-space:nowrap;width:auto;min-width:34px;padding:0 9px}.home-visit-history-filters{background:#f8faf8;border:1px solid #e5ebe6;border-radius:16px;grid-template-columns:minmax(180px,1.35fr) minmax(150px,1fr) minmax(150px,1fr) auto;align-items:end;gap:12px;padding:16px;display:grid}.home-visit-history-filters label{gap:7px;display:grid}.home-visit-history-filters label>span{color:#6f7c75;font-size:9px;font-weight:750}.home-visit-history-filters select,.home-visit-history-filters input{width:100%;min-width:0;min-height:40px;color:var(--visit-ink);font:inherit;background:#fff;border:1px solid #dce5df;border-radius:11px;padding:0 12px;font-size:10px}.history-filter-reset{white-space:nowrap;min-height:40px;padding:0 15px}.history-filter-reset:disabled{opacity:.45;cursor:not-allowed}.home-visit-history-summary{color:#7b8981;flex-wrap:wrap;gap:8px 18px;padding:13px 2px 6px;font-size:9px;display:flex}.home-visit-history-summary strong{color:var(--visit-ink);font-size:10px}.home-visit-history-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;display:grid}.home-visit-history-list .visit-empty{grid-column:1/-1}.home-visit-pagination{border-top:1px solid #e8ece9;justify-content:center;align-items:center;gap:14px;padding-top:18px;display:flex}.home-visit-pagination span{color:#718078;font-size:9px}.home-visit-pagination button{min-height:34px;color:var(--green);white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #dbe5de;border-radius:999px;padding:0 14px;font-size:9px;font-weight:750}.home-visit-pagination button:disabled{color:#9ca6a0;cursor:not-allowed;background:#f4f6f4}@media (width<=980px){.home-visit-history-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.history-filter-reset{width:100%}}@media (width<=700px){.home-visit-history-card{border-radius:22px;padding:18px}.home-visit-history-card>header{align-items:flex-start}.home-visit-history-filters,.home-visit-history-list{grid-template-columns:1fr}.home-visit-history-list article{grid-template-columns:auto minmax(0,1fr)}.home-visit-history-list .recent-visit-actions{grid-column:2;justify-content:flex-start}.home-visit-pagination{gap:8px}.home-visit-pagination button{padding:0 11px}}.parent-bottom-nav{grid-template-columns:repeat(5,1fr)}.class-calendar-section,.committee-section{margin-top:48px}.class-calendar-list{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px;display:grid}.class-calendar-card{min-width:0;box-shadow:var(--shadow-small);background:#fff;border:1px solid #e2e8e3;border-radius:18px;grid-template-columns:64px 1fr;gap:15px;padding:18px;display:grid}.class-calendar-card time{color:#fff;background:var(--green);border-radius:15px;align-content:center;place-items:center;min-height:68px;display:grid}.class-calendar-card time strong{font-size:24px;line-height:1}.class-calendar-card time small{margin-top:5px;font-size:9px}.class-calendar-card>div>span{color:#b07120;font-size:9px;font-weight:800}.class-calendar-card h3{margin:6px 0 7px;font-size:14px}.class-calendar-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.6}.committee-section{background:radial-gradient(circle at 100% 0,#e8a84a1f,#0000 24%),#edf3ee;border:1px solid #dce6de;border-radius:30px;padding:34px}.committee-heading{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.committee-heading h2{color:#214b40;letter-spacing:-.04em;margin:6px 0 10px;font-family:Songti SC,SimSun,serif;font-size:32px}.committee-heading p{color:#64756c;max-width:650px;margin:0;font-size:13px;line-height:1.8}.committee-numbers{gap:10px;display:flex}.committee-numbers>span{text-align:center;background:#ffffffb3;border:1px solid #ffffffd9;border-radius:16px;min-width:88px;padding:13px 12px}.committee-numbers strong,.committee-numbers small{display:block}.committee-numbers strong{color:var(--green);font-size:22px}.committee-numbers small{color:#79877f;margin-top:3px;font-size:8px}.committee-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.committee-team{background:#ffffffe6;border:1px solid #dbe4ddf2;border-radius:20px;overflow:hidden}.committee-team>header{background:#f9fbf9;align-items:center;gap:12px;padding:17px 18px;display:flex}.committee-team>header>span{color:#fff;background:var(--green);border-radius:12px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:10px;font-weight:800;display:grid}.committee-team-1>header>span{background:#b2772b}.committee-team-2>header>span{background:#6c8295}.committee-team-3>header>span{background:#b7685b}.committee-team h3,.committee-team header small{margin:0}.committee-team h3{font-size:15px}.committee-team header small{color:var(--muted);font-size:8px}.committee-role-list{padding:4px 16px 14px}.committee-role{border-bottom:1px solid #edf0ed;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 0;display:grid}.committee-role:last-child{border-bottom:0}.committee-role>span{color:#9aa59f;font-size:9px;font-weight:800}.committee-role strong{font-size:11px;display:block}.committee-role p{color:#78867f;margin:4px 0 0;font-size:8px;line-height:1.5}.committee-role>small{color:#7f8b84;white-space:nowrap;background:#f1f4f1;border-radius:999px;padding:5px 7px;font-size:8px}.eye-care-policy{color:#59481f;background:#fff4dc;border-radius:18px;gap:14px;margin-top:16px;padding:18px 20px;display:flex}.eye-care-policy>span{font-size:24px}.eye-care-policy strong{font-size:12px}.eye-care-policy p{margin:5px 0 0;font-size:10px;line-height:1.7}.suggestion-page{max-width:820px;margin:0 auto;padding:36px 0}.suggestion-intro{background:radial-gradient(circle at 95% 10%, #e8a84a2e, transparent 24%), var(--green-soft);border-radius:26px;padding:34px}.suggestion-intro h1{color:#214b40;margin:8px 0 12px;font-family:Songti SC,SimSun,serif;font-size:38px}.suggestion-intro p{color:#66766e;max-width:620px;margin:0;font-size:13px;line-height:1.8}.suggestion-form{margin-top:18px;padding:28px}.suggestion-form label,.suggestion-form label>span{display:block}.suggestion-form label+label{margin-top:18px}.suggestion-form label>span{margin-bottom:8px;font-size:12px;font-weight:750}.suggestion-form select,.suggestion-form textarea{background:#fbfcfb;border:1px solid #dce4df;border-radius:13px;outline:0;width:100%;padding:13px}.suggestion-form textarea{resize:vertical;line-height:1.7}.suggestion-form .primary-button{width:100%;margin-top:18px}.form-success{color:var(--green);background:var(--green-soft);border-radius:11px;margin:14px 0 0;padding:11px 13px;font-size:11px}.operations-stack{gap:18px;display:grid}.attendance-toolbar{align-items:center;gap:18px;padding:18px;display:flex}.attendance-toolbar>label span{color:var(--muted);margin-bottom:6px;font-size:9px;display:block}.attendance-toolbar input,.attendance-panel input,.attendance-panel select{background:#fff;border:1px solid #dce4df;border-radius:10px;min-height:40px;padding:0 10px}.attendance-summary{flex:1;grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.attendance-summary>span{text-align:center;background:#f4f7f4;border-radius:12px;padding:9px}.attendance-summary strong,.attendance-summary small{display:block}.attendance-summary strong{color:var(--green);font-size:16px}.attendance-summary small{color:var(--muted);margin-top:2px;font-size:8px}.attendance-panel input{width:min(300px,100%)}.committee-admin-summary{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.committee-admin-summary article{color:#fff;background:var(--green);box-shadow:var(--shadow-small);border-radius:18px;padding:22px}.committee-admin-summary article:nth-child(2){background:#b57a2f}.committee-admin-summary article:nth-child(3){background:#657f91}.committee-admin-summary article:nth-child(4){background:#44637c}.committee-admin-summary strong,.committee-admin-summary span{display:block}.committee-admin-summary strong{font-size:28px}.committee-admin-summary span{margin-top:4px;font-size:10px}.committee-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.committee-admin-toolbar{justify-content:space-between;align-items:center;gap:24px;padding:22px 24px;display:flex}.committee-admin-toolbar h2,.committee-role-editor h2{margin:5px 0 0;font-size:20px}.committee-admin-toolbar p{max-width:720px;color:var(--muted);margin:7px 0 0;font-size:11px;line-height:1.65}.committee-role-editor{border-color:#3558743d;padding:24px;box-shadow:0 16px 38px #23354514}.committee-role-editor-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.committee-role-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.committee-role-form-grid label>span{color:var(--ink-soft);margin-bottom:7px;font-size:10px;font-weight:750;display:block}.committee-role-form-grid input,.committee-role-form-grid select,.committee-role-form-grid textarea{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d7e0e7;border-radius:12px;padding:10px 12px;font-size:11px}.committee-role-form-grid textarea{resize:vertical;min-height:86px;line-height:1.6}.committee-task-field{grid-column:1/-1}.committee-quantity-note{color:#355874;background:#f2f7fa;border:1px solid #d7e3eb;border-radius:12px;flex-direction:column;justify-content:center;min-height:44px;padding:10px 13px;display:flex}.committee-quantity-note strong,.committee-quantity-note span{display:block}.committee-quantity-note strong{font-size:10px}.committee-quantity-note span{color:var(--muted);margin-top:3px;font-size:8px;line-height:1.5}.committee-role-editor .form-hint{color:#a85f2a;margin:12px 0 0;font-size:10px}.committee-admin-card{padding:20px}.committee-admin-card>header{align-items:center;gap:12px;margin-bottom:10px;display:flex}.committee-admin-card>header>span{color:#fff;background:var(--green);border-radius:12px;place-items:center;width:38px;height:38px;font-size:10px;display:grid}.committee-admin-card h2{margin:0;font-size:16px}.committee-admin-card header p{color:var(--muted);margin:3px 0 0;font-size:9px}.committee-assignment{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(155px,.44fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid!important}.committee-assignment.committee-level-2{border-left:2px solid #a9bfd1;margin-left:26px;padding-left:16px}.committee-role-main{align-items:flex-start;gap:10px;min-width:0;display:flex}.committee-level-badge{color:#355874;white-space:nowrap;background:#e7eff5;border-radius:999px;flex:none;margin-top:1px;padding:4px 7px;font-size:8px;font-weight:800}.committee-level-2 .committee-level-badge{color:#6e6356;background:#f0ece6}.committee-assignment.committee-level-3{border-left:2px solid #c4d2dc;margin-left:52px;padding-left:16px}.committee-level-3 .committee-level-badge{color:#667785;background:#edf2f5}.committee-assignment strong,.committee-assignment small{display:block}.committee-assignment strong{font-size:11px}.committee-assignment small{color:var(--muted);margin-top:4px;font-size:8px;line-height:1.5}.committee-assignment select{background:#fbfcfb;border:1px solid #dce4df;border-radius:10px;min-height:38px;padding:0 9px;font-size:10px}.import-workspace{padding:24px}.import-kind-tabs{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.import-kind-tabs button{min-width:112px}.binding-import-guide{color:#1c4935;background:linear-gradient(135deg,#f5faf7 0%,#eef7f2 100%);border:1px solid #dbe9e1;border-radius:14px;align-items:center;gap:12px;margin:4px 0 18px;padding:14px 16px;display:flex}.binding-import-guide>span{color:#fff;background:var(--green);border-radius:11px;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:16px;display:grid}.binding-import-guide strong,.binding-import-guide p{display:block}.binding-import-guide strong{font-size:11px}.binding-import-guide p{color:#607468;margin:3px 0 0;font-size:9px;line-height:1.55}.import-actions{align-items:stretch;gap:12px;margin-top:18px;display:flex}.file-picker{cursor:pointer;background:#f7faf7;border:1px dashed #a9bcb1;border-radius:14px;flex-direction:column;flex:1;justify-content:center;min-height:82px;padding:16px;display:flex;position:relative}.file-picker strong,.file-picker small{display:block}.file-picker strong{color:var(--green);font-size:12px}.file-picker small{color:var(--muted);margin-top:5px;font-size:9px}.file-picker input{opacity:0;cursor:pointer;position:absolute;inset:0}.import-file-note{color:var(--green);margin:14px 0 0;font-size:10px}.import-preview{max-height:360px;margin-top:16px}.import-preview td{min-width:110px}.import-empty{color:var(--muted);text-align:center;background:#f7f9f7;border-radius:14px;margin-top:18px;padding:34px;font-size:11px}.class-log-layout{grid-template-columns:minmax(300px,.42fr) minmax(0,.58fr);align-items:start;gap:18px;display:grid}.class-log-form{position:sticky;top:84px}.ai-safety-note{color:#6a5428;background:#fff4dc;border-radius:12px;padding:13px}.ai-safety-note strong{font-size:10px}.ai-safety-note p{margin:4px 0 0;font-size:8px;line-height:1.6}.class-log-feed{gap:14px;display:grid}.class-log-card{padding:22px}.class-log-card>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.class-log-card h2{margin:4px 0 0;font-size:17px}.analysis-mode{color:var(--green);background:var(--green-soft);white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:8px}.class-log-content{color:#617168;white-space:pre-wrap;margin:14px 0;font-size:11px;line-height:1.8}.candidate-list{gap:10px;display:grid}.candidate-card{background:#fafcfb;border:1px solid #e0e7e2;border-radius:14px;padding:15px}.candidate-evidence>span{color:#b27424;font-size:8px;font-weight:800}.candidate-evidence p{margin:5px 0 0;font-size:10px;line-height:1.7}.candidate-fields{grid-template-columns:1.2fr 1fr .55fr;gap:8px;margin-top:12px;display:grid}.candidate-fields label span{color:var(--muted);margin-bottom:5px;font-size:8px;display:block}.candidate-fields input,.candidate-fields select{background:#fff;border:1px solid #dae3dc;border-radius:9px;width:100%;min-height:36px;padding:0 8px;font-size:9px}.candidate-actions{gap:8px;margin-top:11px;display:flex}.candidate-actions button{min-height:38px;padding:0 14px;font-size:9px}.candidate-result{color:var(--green);margin-top:10px;font-size:9px;font-weight:800;display:inline-block}.candidate-confirmed{background:#f0f6f1;border-color:#cfe0d5}.candidate-ignored{opacity:.65}.calendar-admin-list{display:grid}.calendar-admin-list article{border-bottom:1px solid var(--line);grid-template-columns:62px 1fr;gap:14px;padding:16px 0;display:grid}.calendar-admin-list time{color:var(--green);background:var(--green-soft);border-radius:12px;place-items:center;font-size:11px;font-weight:800;display:grid}.calendar-admin-list small{color:#a76e23;font-size:8px}.calendar-admin-list h3{margin:4px 0 5px;font-size:13px}.calendar-admin-list p{color:var(--muted);margin:0;font-size:9px}.suggestion-inbox{gap:16px;display:grid}.suggestion-inbox-note{color:#5e4c27;background:#fff4dc;border-radius:15px;padding:17px 19px}.suggestion-inbox-note strong{font-size:11px}.suggestion-inbox-note p{margin:4px 0 0;font-size:9px}.suggestion-admin-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.suggestion-admin-card{box-shadow:var(--shadow-small);background:#fff;border:1px solid #dfe6e1;border-radius:18px;padding:20px}.suggestion-admin-card>header{justify-content:space-between;gap:10px;display:flex}.suggestion-admin-card header span{color:var(--green);font-size:9px;font-weight:800}.suggestion-admin-card time{color:var(--muted);font-size:8px}.suggestion-admin-card>p{min-height:54px;margin:14px 0;font-size:11px;line-height:1.7}.suggestion-admin-card textarea{resize:vertical;border:1px solid #dce4df;border-radius:11px;width:100%;padding:10px;font-size:10px}.suggestion-admin-card>div{align-items:center;gap:8px;margin-top:10px;display:flex}.suggestion-admin-card button{min-height:36px;padding:0 12px;font-size:9px}.suggestion-status-resolved{border-color:#c8dbcf}@media (width<=1150px){.visit-stat-grid{grid-template-columns:repeat(3,1fr)}.visit-progress-card{grid-column:1/-1}.home-visit-workspace{grid-template-columns:1fr}.home-visit-side{grid-template-columns:repeat(2,minmax(0,1fr));position:static}}@media (width<=700px){.home-visit-hero{flex-direction:column;align-items:stretch;padding:24px 20px}.home-visit-hero h2{font-size:27px}.home-visit-hero .primary-button{width:100%}.visit-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.visit-stat-grid>article{min-height:79px;padding:14px 10px}.visit-stat-grid article strong{font-size:23px}.visit-progress-card{min-height:72px;padding:14px}.visit-form-header{padding:19px 18px 15px}.visit-stepper{padding:13px 10px}.visit-stepper button span{font-size:7px}.visit-step-content{padding:20px 17px}.visit-form-row,.visit-choice-grid,.parenting-notes{grid-template-columns:1fr}.visit-choice{min-height:46px;font-size:11px}.visit-text-field input,.visit-text-field select,.visit-text-field textarea{min-height:47px;font-size:14px}.visit-text-field textarea{min-height:92px}.visit-form-actions{grid-template-columns:1fr 1fr;padding:15px 17px 18px;display:grid}.visit-form-actions .text-button{grid-area:2/1/auto/-1;margin:0}.visit-form-actions button{width:100%;min-height:44px}.visit-error,.visit-saved-state{margin-left:17px;margin-right:17px}.home-visit-side{grid-template-columns:1fr}}.privacy-page{background:#f5f7f3;min-height:100vh;padding:30px 24px 70px}.privacy-page>header{justify-content:space-between;align-items:center;max-width:980px;margin:0 auto 40px;display:flex}.privacy-page>header>a{color:var(--green);font-size:12px;font-weight:700}.privacy-page article{border:1px solid var(--line);max-width:820px;box-shadow:var(--shadow);background:#fff;border-radius:28px;margin:0 auto;padding:50px}.privacy-page h1{color:var(--green);margin:10px 0 18px;font-family:Songti SC,serif;font-size:40px}.privacy-lead{border-bottom:1px solid var(--line);color:#5d6e65;padding-bottom:25px;font-size:15px;line-height:1.9}.privacy-page section{margin-top:28px}.privacy-page h2{margin-bottom:8px;font-size:17px}.privacy-page section p{color:var(--muted);margin:0;font-size:13px;line-height:1.85}@media (width<=1100px){.login-page{grid-template-columns:1fr 470px}.login-story-inner{padding-left:42px;padding-right:42px}.login-copy h1{font-size:52px}.trust-row{grid-template-columns:1fr;gap:8px}.class-hero{grid-template-columns:1fr 1fr;gap:28px}.teacher-shell{grid-template-columns:222px minmax(0,1fr)}.management-layout{grid-template-columns:1fr}.management-form{max-width:none}.metric-grid{grid-template-columns:repeat(2,1fr)}.overview-welcome{grid-template-columns:1fr 210px}}@media (width<=860px){.login-page{display:block}.login-story{min-height:auto;padding-bottom:36px}.login-story-inner{grid-template-rows:auto auto 220px auto;min-height:auto;padding:26px 28px}.login-copy{margin-top:48px}.login-copy h1{font-size:48px}.login-visual{height:220px}.trust-row{grid-template-columns:repeat(3,1fr)}.login-panel{min-height:auto;padding:60px 28px}.class-hero{grid-template-columns:1fr}.class-photo{min-height:330px}.today-grid,.content-grid{grid-template-columns:1fr}.growth-stats{grid-template-columns:repeat(2,1fr)}.child-two-column{grid-template-columns:1fr}.teacher-shell{display:block}.teacher-sidebar{width:260px;transition:transform .18s;position:fixed;top:0;left:0;transform:translate(-105%)}.teacher-sidebar.open{transform:translate(0)}.sidebar-brand{justify-content:space-between;align-items:center;display:flex}.sidebar-close{cursor:pointer;background:0 0;border:0;font-size:24px;display:block}.sidebar-backdrop{z-index:45;background:#1a28226b;border:0;position:fixed;inset:0}.mobile-menu{cursor:pointer;background:#fff;border:1px solid #dfe5e0;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.teacher-topbar{justify-content:flex-start;gap:14px}.teacher-topbar .topbar-actions{margin-left:auto}.topbar-search{justify-content:center;width:36px;min-width:36px;padding:0;font-size:0}.topbar-search span{font-size:15px}.topbar-search small{display:none}.overview-grid,.overview-bottom-grid,.settings-security-grid,.teacher-profile-grid{grid-template-columns:1fr}.teacher-profile-preview{position:static}}@media (width<=640px){:root{--radius:19px}.login-story{display:none}.login-panel{place-items:start center;min-height:100vh;padding:28px 20px 42px}.mobile-brand-mark{margin-bottom:42px;display:block}.login-heading h2{font-size:34px}.demo-buttons{grid-template-columns:1fr}.demo-buttons button{padding:12px}.parent-header{height:62px;padding:0 15px}.parent-header .brand strong{font-size:14px}.user-chip strong{display:none}.parent-main{padding:18px 12px 48px}.class-hero{border-radius:23px;gap:23px;min-height:auto;padding:25px 20px 20px}.class-hero-copy h1{font-size:34px}.hero-slogan{margin-bottom:20px;font-size:13px}.teacher-message{padding:11px}.teacher-message strong{font-size:11px}.class-photo{border-width:5px;border-radius:20px 20px 55px;min-height:255px}.photo-board{border-width:5px;height:82px;padding:18px}.photo-board span{font-size:15px}.student-bubbles{bottom:38px}.student-bubbles span{border-width:2px;font-size:9px}.class-home>.section-heading,.album-section .section-heading{margin:31px 4px 14px}.section-heading h2,.panel-header h2{font-size:18px}.homework-panel,.duty-panel,.announcement-panel,.honor-panel{padding:18px}.homework-item{grid-template-columns:auto 1fr}.signature-badge{grid-column:2;justify-self:start}.duty-people{grid-template-columns:1fr}.content-grid{margin-top:14px}.album-grid{grid-template-columns:1fr}.student-hero{grid-template-columns:auto 1fr;gap:16px;min-height:auto;padding:24px 19px}.student-avatar{border-width:4px;width:78px;height:78px}.student-avatar>span{width:30px;height:30px;font-size:13px;bottom:8px}.student-hero-copy h1{font-size:24px}.student-hero-copy>p{font-size:11px}.relationship-badge,.child-switch{grid-column:1/-1;justify-self:start}.child-tabs{grid-template-columns:repeat(4,minmax(92px,1fr));overflow-x:auto}.child-tabs button{font-size:10px}.growth-stats{grid-template-columns:repeat(2,1fr);gap:10px}.growth-stat{min-height:130px;padding:15px}.growth-stat>strong{font-size:28px}.chart-panel,.latest-comment{padding:18px}.performance-grid{grid-template-columns:1fr}.teacher-topbar{height:58px;padding:0 12px}.breadcrumb{display:none}.teacher-main{padding:22px 12px 48px}.teacher-page-heading{align-items:flex-start}.teacher-page-heading h1{font-size:26px}.teacher-page-heading>.outline-button{min-width:42px;padding:0 10px;font-size:0}.teacher-page-heading>.outline-button:first-letter{font-size:15px}.metric-grid{grid-template-columns:repeat(2,1fr);gap:10px}.metric-card{grid-template-columns:auto 1fr;min-height:113px;padding:14px}.metric-card>i{display:none}.metric-icon{width:34px;height:34px}.metric-card p>strong{font-size:23px}.overview-welcome{grid-template-columns:1fr;min-height:auto;padding:24px}.overview-art{display:none}.welcome-actions{flex-direction:column}.welcome-actions button{width:100%}.overview-bottom-grid{gap:12px}.preview-toolbar{flex-direction:column;align-items:flex-start}.preview-toolbar>div{flex-wrap:wrap}.preview-toolbar .primary-button{width:100%}.teacher-class-preview{border-radius:18px;padding:10px}.management-form{padding:18px}.form-row,.three-fields{grid-template-columns:1fr}.teacher-profile-preview{padding:22px}.form-actions,.homepage-editor-actions{flex-direction:column;align-items:stretch}.homepage-editor-actions button{width:100%}.data-panel-header{flex-direction:column;align-items:flex-start}.table-tools{width:100%}.table-tools button{flex:1}.future-panel{grid-template-columns:1fr}.future-tags{justify-content:flex-start}.privacy-page{padding:20px 12px 44px}.privacy-page>header{margin-bottom:25px}.privacy-page article{border-radius:22px;padding:28px 20px}.privacy-page h1{font-size:31px}}@media (width<=1100px){.class-calendar-list{grid-template-columns:1fr}.committee-heading{flex-direction:column;align-items:flex-start}.committee-admin-grid,.suggestion-admin-list{grid-template-columns:1fr}.attendance-toolbar{flex-direction:column;align-items:stretch}.class-log-layout{grid-template-columns:1fr}.class-log-form{position:static}}@media (width<=700px){.parent-bottom-nav{width:calc(100% - 16px);bottom:8px}.parent-bottom-nav small{font-size:8px}.committee-section{border-radius:22px;margin-top:30px;padding:22px 14px}.committee-heading h2,.suggestion-intro h1{font-size:29px}.committee-numbers{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.committee-numbers>span{min-width:0;padding:10px 6px}.committee-team-grid{grid-template-columns:1fr}.committee-role{grid-template-columns:24px minmax(0,1fr)}.committee-role>small{grid-column:2;justify-self:start}.suggestion-page{padding:18px 0}.suggestion-intro,.suggestion-form{padding:22px 18px}.attendance-summary{grid-template-columns:repeat(3,1fr)}.committee-admin-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.committee-admin-toolbar,.committee-role-editor-heading{flex-direction:column;align-items:stretch}.committee-admin-toolbar .primary-button{width:100%}.committee-role-form-grid{grid-template-columns:1fr}.committee-task-field{grid-column:1}.committee-assignment{grid-template-columns:1fr}.committee-assignment.committee-level-2{margin-left:12px}.committee-assignment.committee-level-3{margin-left:24px}.committee-role-actions button{flex:1}.import-actions{flex-direction:column}.import-kind-tabs{scrollbar-width:none;grid-template-columns:repeat(3,minmax(104px,1fr));width:100%;max-width:100%;overflow-x:auto}.import-kind-tabs::-webkit-scrollbar{display:none}.import-kind-tabs button{min-width:104px}.binding-import-guide{align-items:flex-start}.candidate-fields{grid-template-columns:1fr}.candidate-actions{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}::selection{color:#fff;background:#0071e3}body{background:radial-gradient(circle at 50% -20%,#fffffffa,#0000 42%),#f5f5f7}.eyebrow,.section-kicker{color:#6e6e73;letter-spacing:.18em;font-size:10px}.brand strong{color:#1d1d1f;letter-spacing:-.02em}.brand-mark{background:linear-gradient(145deg,#111214,#3a3a3c);border-radius:12px;box-shadow:0 8px 22px #00000029}.primary-button,.outline-button,.login-submit,.week-button,.row-action{white-space:nowrap;border-radius:999px;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s}.primary-button,.login-submit{color:#fff;box-shadow:none;background:#0071e3}.primary-button:hover,.login-submit:hover{background:#0077ed;transform:translateY(-1px)}.outline-button{color:#1d1d1f;background:#ffffffdb;border-color:#0000001f}.outline-button:hover{background:#fff;border-color:#0003;transform:translateY(-1px)}.quiet-button{color:#06c;white-space:nowrap}.text-button{color:#6e6e73;border-color:#0000001a;border-radius:999px}.panel,.data-panel,.management-form,.score-table-card,.suggestion-form,.suggestion-intro,.committee-admin-team,.class-log-form,.class-log-record,.calendar-form-panel,.calendar-list-panel,.suggestion-admin-card,.import-panel,.attendance-panel,.home-visit-form-panel,.profile-preview-card,.recent-visit-card{background:#fffffff0;border-color:#00000014;box-shadow:0 10px 38px #0000000b}input,select,textarea{background:#fffffff0!important;border-color:#0000001f!important;border-radius:13px!important}input:focus,select:focus,textarea:focus{outline:0;box-shadow:0 0 0 4px #0071e31f;border-color:#0071e3!important}.class-hero{min-height:590px;box-shadow:none;background:0 0;border:0;grid-template-columns:minmax(260px,.72fr) minmax(0,1.55fr);align-items:center;gap:42px;padding:0}.class-hero-copy{padding:32px 0 32px 8px}.class-hero-copy h1{color:#1d1d1f;letter-spacing:-.065em;margin:15px 0 12px;font-size:clamp(44px,5vw,76px);font-weight:760;line-height:.98}.hero-slogan{color:#6e6e73;letter-spacing:-.035em;max-width:430px;font-size:clamp(20px,2vw,28px);font-weight:560;line-height:1.35}.teacher-message{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffd1;border:1px solid #00000014;border-radius:18px;margin-top:38px;padding:14px 16px;box-shadow:0 8px 28px #0000000a}.teacher-avatar{background:#1d1d1f}.class-photo-carousel{isolation:isolate;touch-action:pan-y;background:#dfe4e8;border-radius:34px;min-width:0;height:560px;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000021}.carousel-stage,.carousel-slide,.carousel-photo,.carousel-scrim{position:absolute;inset:0}.carousel-slide{opacity:0;pointer-events:none;transition:opacity .78s}.carousel-slide.active{z-index:2;opacity:1;pointer-events:auto}.carousel-photo{background-image:url(/class-space-apple-hero.jpg);background-repeat:no-repeat;background-size:cover;transition:transform 6s cubic-bezier(.2,.7,.2,1);transform:scale(1.08)}.carousel-slide.active .carousel-photo{transform:scale(1.015)}.carousel-position-left .carousel-photo{background-position:82%}.carousel-position-center .carousel-photo{background-position:91%}.carousel-position-right .carousel-photo{background-position:100%}.carousel-scrim{background:linear-gradient(#0000 42%,#000000ad 100%),linear-gradient(90deg,#00000029,#0000 52%)}.carousel-copy{z-index:3;color:#fff;text-shadow:0 2px 18px #0000003d;max-width:560px;position:absolute;bottom:58px;left:34px;right:34px}.carousel-copy>span{letter-spacing:.18em;opacity:.78;font-size:10px;font-weight:750}.carousel-copy h2{letter-spacing:-.05em;margin:10px 0 8px;font-size:clamp(27px,3vw,44px);font-weight:680;line-height:1.08}.carousel-copy p{color:#ffffffd6;max-width:500px;margin:0;font-size:14px;line-height:1.65}.carousel-copy small{color:#ffffffa6;margin-top:12px;font-size:10px;display:block}.carousel-arrow{z-index:6;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);cursor:pointer;opacity:0;background:#1d1d1f57;border:0;border-radius:50%;place-items:center;width:40px;height:40px;font-size:30px;line-height:1;transition:opacity .18s,background .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.class-photo-carousel:hover .carousel-arrow,.class-photo-carousel:focus-within .carousel-arrow{opacity:1}.carousel-arrow:hover{background:#1d1d1f94}.carousel-arrow-left{left:18px}.carousel-arrow-right{right:18px}.carousel-controls{z-index:7;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:18px;left:22px;right:22px}.carousel-pause{color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);cursor:pointer;background:#1d1d1f5c;border:0;border-radius:999px;min-height:30px;padding:0 12px;font-size:9px;font-weight:700}.carousel-dots{align-items:center;gap:7px;display:flex}.carousel-dots button{cursor:pointer;background:0 0;border:0;width:34px;height:28px;padding:0}.carousel-dots span{background:#ffffff61;border-radius:999px;width:100%;height:3px;display:block;overflow:hidden}.carousel-dots button.active span{background:#fff}.class-home>.section-heading,.class-calendar-section,.content-grid,.committee-section,.album-section{margin-top:86px}.section-heading h2,.committee-heading h2{color:#1d1d1f;letter-spacing:-.045em;font-weight:680}.date-pill,.signature-badge,.adjusted-badge,.status-pill,.secure-badge{border-radius:999px}.homework-panel,.duty-panel,.announcement-panel,.honor-panel{box-shadow:none;background:#fff;border:0}.today-grid,.content-grid{gap:18px}.class-calendar-card,.album-card,.honor-card{box-shadow:none;border-color:#00000014;border-radius:22px}.committee-section{box-shadow:none;background:#fff;border:0;border-radius:34px}.committee-team{background:#fbfbfd;border-color:#00000014;border-radius:22px}.committee-team header,.committee-role>span,.committee-numbers>span{background:#f5f5f7}.committee-role>small{color:#06c;background:#eaf3ff}.parent-shell,.teacher-shell{background:#f5f5f7}.parent-header,.teacher-topbar{-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);background:#fafafcd1;border-color:#00000014}.parent-header{max-width:none}.parent-main{width:100%}.parent-bottom-nav{-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);background:#fafafce0;border:1px solid #00000017;border-radius:22px;transform:translate(-50%);box-shadow:0 12px 42px #0000001f}.parent-bottom-nav button{border-radius:15px}.parent-bottom-nav button.active{color:#0071e3;background:#eaf3ff}.student-hero,.account-card,.suggestion-intro{background:linear-gradient(145deg,#fff,#f5f5f7)}.growth-stat{box-shadow:none;background:#fff;border:1px solid #00000012}.class-participation-panel{padding:26px}.child-role-list{gap:10px;margin-top:22px;display:grid}.child-role-list>div{background:#f5f5f7;border:1px solid #00000012;border-radius:17px;padding:16px}.child-role-list span{color:#06c;font-size:9px;font-weight:750}.child-role-list h3{margin:5px 0;font-size:14px}.child-role-list p{color:#6e6e73;margin:0;font-size:10px;line-height:1.7}.role-history{border-top:1px solid #00000012;gap:10px;margin-top:18px;padding-top:18px;display:grid}.role-history>header{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.role-history>header strong{color:#1d1d1f;font-size:11px}.role-history>header small{color:#86868b;font-size:8px}.role-history>div{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.role-history>div>span{text-align:center;border-radius:999px;min-width:38px;padding:5px 7px;font-size:8px;font-weight:750}.role-change-assigned{color:#18754a;background:#e9f7ef}.role-change-ended{color:#6e6e73;background:#f0f0f2}.role-history p,.role-history p strong,.role-history p small{margin:0;display:block}.role-history p strong{color:#1d1d1f;font-size:10px}.role-history p small{color:#86868b;margin-top:2px;font-size:8px}.topbar-search,.topbar-notification,.row-action{white-space:nowrap}.topbar-search:hover,.topbar-search:focus-visible,.topbar-notification:hover,.topbar-notification:focus-visible,.topbar-notification.active{color:#06c;background:#fff;border-color:#0071e34d;outline:none;box-shadow:0 8px 24px #0050aa14}.notification-dismiss{z-index:64;cursor:default;background:0 0;border:0;position:fixed;inset:0}.notification-panel{z-index:65;-webkit-backdrop-filter:saturate(180%)blur(28px);backdrop-filter:saturate(180%)blur(28px);background:#fffffff5;border:1px solid #00000014;border-radius:22px;width:min(360px,100vw - 28px);position:absolute;top:calc(100% + 13px);right:0;overflow:hidden;box-shadow:0 24px 70px #0f17142e,0 2px 8px #0f17140f}.notification-panel>header{border-bottom:1px solid #0000000f;justify-content:space-between;align-items:center;min-height:84px;padding:18px 20px 15px;display:flex}.notification-panel>header small{color:#6e6e73;letter-spacing:.14em;margin-bottom:4px;font-size:8px;font-weight:700;display:block}.notification-panel>header h2{color:#1d1d1f;letter-spacing:-.04em;margin:0;font-size:20px}.notification-panel>header>span{color:#06c;background:#eaf3ff;border-radius:999px;place-items:center;min-width:30px;height:30px;padding:0 8px;font-size:11px;font-weight:750;display:grid}.notification-list{padding:8px}.notification-list>button{text-align:left;color:#1d1d1f;cursor:pointer;background:0 0;border:0;border-radius:15px;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:10px;width:100%;min-height:68px;padding:10px 9px;display:grid}.notification-list>button:hover,.notification-list>button:focus-visible{background:#f5f5f7;outline:none}.notification-list>button>i{color:#06c;background:#eaf3ff;border-radius:11px;place-items:center;width:34px;height:34px;font-size:11px;font-style:normal;font-weight:800;display:grid}.notification-list>button>span{min-width:0}.notification-list>button strong,.notification-list>button small{display:block}.notification-list>button strong{margin-bottom:3px;font-size:12px}.notification-list>button small{color:#86868b;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.notification-list>button>b{color:#a1a1a6;font-size:18px;font-weight:400}.notification-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:178px;display:flex}.notification-empty i{color:#18794e;background:#e9f7ef;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:12px;font-style:normal;display:grid}.notification-empty strong{color:#1d1d1f;font-size:13px}.notification-empty small{color:#86868b;margin-top:4px;font-size:9px}.teacher-command-layer{z-index:210;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#14171557;justify-content:center;align-items:flex-start;padding:9vh 20px 30px;animation:.16s ease-out workspace-fade-in;display:flex;position:fixed;inset:0}@keyframes workspace-fade-in{0%{opacity:0}to{opacity:1}}.teacher-command{background:#fafafcf7;border:1px solid #ffffffb3;border-radius:26px;flex-direction:column;width:min(680px,100%);max-height:min(690px,82vh);animation:.19s cubic-bezier(.2,.75,.25,1) workspace-rise-in;display:flex;overflow:hidden;box-shadow:0 32px 110px #00000047,0 3px 12px #00000014}@keyframes workspace-rise-in{0%{opacity:0;transform:translateY(-10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.command-input{background:#fff;border-bottom:1px solid #00000012;align-items:center;gap:12px;min-height:70px;padding:0 19px;display:flex}.command-input>span{color:#6e6e73;font-size:24px}.command-input input{color:#1d1d1f;min-width:0;font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:16px}.command-input input::placeholder{color:#a1a1a6}.command-input button{color:#6e6e73;cursor:pointer;background:#f5f5f7;border:1px solid #dedee3;border-radius:8px;min-width:42px;height:26px;font-size:8px;font-weight:750}.command-heading{color:#86868b;letter-spacing:.08em;justify-content:space-between;align-items:center;padding:14px 18px 8px;font-size:9px;font-weight:750;display:flex}.command-heading small{font-size:8px}.command-results{min-height:180px;padding:0 8px 9px;overflow-y:auto}.command-results>button{color:#1d1d1f;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:16px;grid-template-columns:40px minmax(0,1fr) 22px;align-items:center;gap:12px;width:100%;min-height:70px;padding:9px 11px;display:grid}.command-results>button:hover,.command-results>button:focus-visible{background:#eaf3ff;outline:none}.command-results>button>i{color:#06c;background:#fff;border-radius:13px;place-items:center;width:40px;height:40px;font-size:12px;font-style:normal;font-weight:760;display:grid;box-shadow:inset 0 0 0 1px #0066cc1f}.command-results>button>span{grid-template-columns:max-content minmax(0,1fr);gap:2px 8px;min-width:0;display:grid}.command-results>button small{color:#06c;grid-column:1;font-size:8px;font-weight:700}.binding-count{color:#5f6561;white-space:nowrap;background:#f2f5f2;border-radius:999px;flex:none;padding:7px 12px;font-size:10px;font-weight:700}.binding-remove-button{color:#a64036;background:#fff3f1;padding:7px 11px}.binding-remove-button:hover,.binding-remove-button:focus-visible{color:#842c24;background:#ffe5e1}.binding-remove-button:disabled{cursor:wait;opacity:.55}.binding-student-number{color:var(--muted);margin-top:3px;font-size:9px;display:block}.binding-manager-error{color:#8a3129;background:#fff0ee;border-radius:12px;margin:16px 22px 0;padding:10px 12px;font-size:10px}.committee-role-actions{align-items:center;gap:5px;display:flex}.committee-role-actions button{color:#355874;white-space:nowrap;cursor:pointer;background:#edf3f7;border:0;border-radius:9px;min-height:34px;padding:6px 9px;font-size:9px;font-weight:750}.committee-role-actions button.danger-text-button{color:#a84842;background:#fbefed}.committee-role-actions button:disabled{opacity:.55;cursor:wait}.binding-empty-state{text-align:center;place-items:center;min-height:250px;padding:40px 24px;display:grid}.binding-empty-state span{width:44px;height:44px;color:var(--green);background:var(--green-soft);border-radius:50%;place-items:center;margin-bottom:13px;font-size:20px;display:grid}.binding-empty-state strong{font-size:14px}.binding-empty-state p{color:var(--muted);margin:6px 0 0;font-size:10px}.command-results>button strong{text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:12px;overflow:hidden}.command-results>button em{color:#86868b;text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:9px;font-style:normal;overflow:hidden}.command-results>button>b{color:#a1a1a6;font-size:10px}.command-empty{color:#86868b;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:230px;display:flex}.command-empty i{margin-bottom:12px;font-size:30px;font-style:normal}.command-empty strong{color:#1d1d1f;font-size:14px}.command-empty small{margin-top:5px;font-size:9px}.teacher-command>footer{color:#86868b;background:#f5f5f7;border-top:1px solid #0000000f;align-items:center;gap:18px;min-height:43px;padding:0 18px;font-size:8px;display:flex}.teacher-command kbd{color:#6e6e73;background:#fff;border:1px solid #d8d8dc;border-radius:5px;place-items:center;min-width:18px;height:18px;margin-right:2px;padding:0 4px;font-family:inherit;font-size:7px;display:inline-grid;box-shadow:0 1px #d8d8dc}.student-archive-layer{z-index:220;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#14171561;justify-content:flex-end;animation:.16s ease-out workspace-fade-in;display:flex;position:fixed;inset:0}.student-archive-drawer{color:#1d1d1f;background:#f5f5f7;flex-direction:column;width:min(760px,100vw - 52px);height:100%;animation:.24s cubic-bezier(.2,.75,.25,1) archive-slide-in;display:flex;overflow:hidden;box-shadow:-24px 0 90px #0003}@keyframes archive-slide-in{0%{opacity:0;transform:translate(36px)}to{opacity:1;transform:translate(0)}}.archive-hero{color:#fff;background:radial-gradient(circle at 78% 12%,#7acaff6b,#0000 35%),linear-gradient(135deg,#153c71 0%,#06c 60%,#0783e8 100%);align-items:center;gap:16px;min-height:126px;padding:28px 70px 24px 28px;display:flex;position:relative}.archive-hero>button{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:34px;height:34px;font-size:20px;display:grid;position:absolute;top:18px;right:18px}.archive-hero>button:hover,.archive-hero>button:focus-visible{background:#ffffff38;outline:none}.archive-avatar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff2e;border:1px solid #ffffff80;border-radius:21px;flex:0 0 62px;place-items:center;width:62px;height:62px;font-size:24px;font-weight:700;display:grid;box-shadow:inset 0 1px #ffffff40}.archive-hero>div{min-width:0}.archive-hero small{letter-spacing:.16em;opacity:.75;font-size:8px;font-weight:700}.archive-hero h2{letter-spacing:-.05em;margin:4px 0 2px;font-size:30px}.archive-hero p{opacity:.8;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10px;overflow:hidden}.archive-status{color:#fffc;white-space:nowrap;background:#00000029;border-radius:999px;margin-left:auto;padding:5px 9px;font-size:8px}.archive-status.active{color:#fff;background:#14c87461}.archive-scroll{min-height:0;padding:18px 20px 60px;overflow-y:auto}.archive-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.archive-summary article{background:#fff;border:1px solid #0000000f;border-radius:17px;min-height:78px;padding:14px}.archive-summary small{color:#86868b;margin-bottom:8px;font-size:8px;display:block}.archive-summary strong{color:#1d1d1f;letter-spacing:-.04em;font-size:19px}.archive-summary span{color:#86868b;margin-left:3px;font-size:8px}.archive-summary article:last-child strong{letter-spacing:0;font-size:11px}.archive-teacher-note{color:#503d0c;background:linear-gradient(135deg,#fff7d6,#fffaf0);border-radius:18px;margin-top:10px;padding:16px 18px}.archive-teacher-note small{color:#9a7210;margin-bottom:5px;font-size:8px;font-weight:700;display:block}.archive-teacher-note p{margin:0;font-size:11px;line-height:1.7}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;margin-top:10px;display:grid}.archive-section{background:#fff;border:1px solid #0000000f;border-radius:20px;min-width:0;padding:16px}.archive-section-wide{grid-column:1/-1}.archive-section>header{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.archive-section>header h3{letter-spacing:-.02em;margin:0;font-size:13px}.archive-section>header span{color:#6e6e73;background:#f5f5f7;border-radius:999px;place-items:center;min-width:23px;height:23px;padding:0 6px;font-size:8px;font-weight:700;display:grid}.archive-empty{color:#a1a1a6;background:#f8f8fa;border-radius:12px;place-items:center;min-height:64px;margin:0;font-size:9px;display:grid}.archive-facts{grid-template-columns:1fr 1fr;gap:12px;margin:0;display:grid}.archive-facts div{min-width:0}.archive-facts dt{color:#86868b;margin-bottom:4px;font-size:8px}.archive-facts dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;font-weight:650;overflow:hidden}.archive-people{gap:8px;display:grid}.archive-people article{align-items:center;gap:10px;display:flex}.archive-people i{color:#06c;background:#eaf3ff;border-radius:11px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:10px;font-style:normal;font-weight:750;display:grid}.archive-people strong,.archive-people small{display:block}.archive-people strong{margin-bottom:3px;font-size:10px}.archive-people small{color:#86868b;font-size:8px}.archive-role-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.archive-role-list article{background:#f5f5f7;border-radius:15px;min-width:0;padding:13px}.archive-role-list small{color:#06c;margin-bottom:5px;font-size:8px;font-weight:700;display:block}.archive-role-list strong{font-size:11px;display:block}.archive-role-list p{color:#6e6e73;margin:5px 0 0;font-size:8px;line-height:1.6}.archive-record-list,.archive-note-list,.archive-score-list,.archive-visit-list,.archive-timeline{gap:10px;display:grid}.archive-record-list article{align-items:flex-start;gap:10px;display:flex}.archive-record-list article+article{border-top:1px solid #eeeef0;padding-top:10px}.archive-record-dot{background:#ff9f0a;border:2px solid #fff;border-radius:50%;flex:0 0 9px;width:9px;height:9px;margin-top:3px;box-shadow:0 0 0 1px #ff9f0a4d}.archive-record-dot.present,.archive-record-dot.growth{background:#30b46e;box-shadow:0 0 0 1px #30b46e4d}.archive-record-dot.absent{background:#ff453a;box-shadow:0 0 0 1px #ff453a4d}.archive-record-list article>div{flex:1;min-width:0}.archive-record-list strong,.archive-record-list small{display:block}.archive-record-list strong{font-size:10px}.archive-record-list small{color:#86868b;margin-top:2px;font-size:8px}.archive-record-list p{color:#52525a;margin:5px 0 0;font-size:8px;line-height:1.6}.archive-grade{color:#06c;background:#eaf3ff;border-radius:10px;flex:0 0 30px;place-items:center;min-width:30px;height:30px;font-size:9px;font-weight:800;display:grid}.student-score-archive{gap:12px;display:grid}.archive-score-toolbar{background:linear-gradient(135deg,#f4f8ff,#f7fbff);border-radius:15px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.archive-score-toolbar>div:first-child strong,.archive-score-toolbar>div:first-child span{display:block}.archive-score-toolbar>div:first-child strong{color:#06c;margin-bottom:3px;font-size:9px}.archive-score-toolbar>div:first-child span{color:#6e6e73;font-size:8px}.archive-score-toolbar>div:last-child{justify-content:flex-end;align-items:center;gap:6px;display:flex}.archive-score-toolbar button,.archive-score-upload,.score-form-actions button,.archive-score-preview>header button,.score-upload-confirm{color:#06c;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #0066cc24;border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:0 11px;font-family:inherit;font-size:8px;font-weight:700;display:inline-flex}.archive-score-upload{color:#fff;background:#06c;position:relative}.archive-score-upload input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.archive-score-form{background:#fbfdff;border:1px solid #dbe8f7;border-radius:17px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:15px;display:grid}.archive-score-form label{gap:5px;min-width:0;display:grid}.archive-score-form label>span{color:#6e6e73;font-size:8px;font-weight:650}.archive-score-form input,.archive-score-form textarea{color:#1d1d1f;background:#fff;border:1px solid #d9e2eb;border-radius:10px;outline:none;width:100%;min-width:0;padding:0 10px;font-family:inherit;font-size:9px}.archive-score-form input{min-height:38px}.archive-score-form textarea{resize:vertical;min-height:62px;padding-top:9px}.archive-score-form input:focus,.archive-score-form textarea:focus{border-color:#69a9e9;box-shadow:0 0 0 3px #0066cc14}.archive-score-form .score-form-wide{grid-column:span 2}.score-form-actions{grid-column:1/-1;justify-content:flex-end;gap:7px;display:flex}.score-form-actions .primary,.score-upload-confirm{color:#fff;background:#06c}.score-form-actions button:disabled,.score-upload-confirm:disabled{opacity:.55;cursor:not-allowed}.archive-score-preview{background:#fffbef;border:1px solid #f0d79f;border-radius:17px;padding:15px}.archive-score-preview>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.archive-score-preview>header strong,.archive-score-preview>header span{display:block}.archive-score-preview>header strong{font-size:10px}.archive-score-preview>header span{color:#7a6a44;margin-top:3px;font-size:8px}.score-preview-table{gap:6px;margin-top:12px;display:grid}.score-preview-table>span{background:#ffffffb8;border-radius:10px;grid-template-columns:minmax(120px,1.5fr) minmax(86px,1fr) minmax(62px,.7fr) auto;align-items:center;gap:8px;padding:8px 10px;font-size:8px;display:grid}.score-preview-table i,.score-preview-table em{color:#7a6a44;font-style:normal}.score-preview-table strong{color:#06c;text-align:right}.archive-score-preview>p{color:#7a6a44;margin:8px 0 0;font-size:8px}.score-upload-confirm{margin-top:12px}.archive-score-error,.archive-score-success{border-radius:11px;margin:0;padding:10px 12px;font-size:9px;line-height:1.55}.archive-score-error{color:#a0211a;background:#fff0ef}.archive-score-success{color:#167346;background:#eaf8f0}.archive-score-records{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.archive-score-records>article{background:#fff;border:1px solid #e7e7ea;border-radius:15px;min-width:0;padding:13px}.archive-score-records>article>header{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.archive-score-records header strong,.archive-score-records header small{display:block}.archive-score-records header strong{font-size:10px}.archive-score-records header small{color:#86868b;margin-top:3px;font-size:7px}.archive-score-records header>span{color:#06c;white-space:nowrap;background:#eaf3ff;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:700}.archive-score-value{justify-content:space-between;align-items:flex-end;gap:10px;margin:12px 0 8px;display:flex}.archive-score-value>strong{color:#1d1d1f;letter-spacing:-.05em;font-size:24px}.archive-score-value>strong small{color:#86868b;letter-spacing:0;font-size:9px}.archive-score-value>div{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.archive-score-value>div span{color:#5b5b62;background:#f2f2f4;border-radius:6px;padding:3px 5px;font-size:7px}.archive-score-records article>p{color:#52525a;margin:6px 0 0;font-size:8px;line-height:1.55}.archive-score-records article>p b{color:#86868b;margin-right:6px;font-weight:650}.archive-note-list{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-note-list article{background:#f8f8fa;border-radius:15px;padding:14px}.archive-note-list article>header{justify-content:space-between;margin-bottom:8px;display:flex}.archive-note-list header span{color:#06c;background:#eaf3ff;border-radius:999px;padding:3px 7px;font-size:7px}.archive-note-list header small{color:#86868b;font-size:7px}.archive-note-list strong{font-size:11px;display:block}.archive-note-list p{color:#52525a;margin:6px 0 0;font-size:9px;line-height:1.7}.archive-score-list article{border-bottom:1px solid #eeeef0;grid-template-columns:1fr max-content;gap:5px 10px;padding-bottom:10px;display:grid}.archive-score-list article:last-child{border-bottom:0;padding-bottom:0}.archive-score-list small{color:#86868b;margin-bottom:3px;font-size:8px;display:block}.archive-score-list strong{letter-spacing:-.03em;font-size:18px}.archive-score-list strong em{color:#a1a1a6;font-size:8px;font-style:normal}.archive-score-list article>span{color:#86868b;align-self:center;font-size:8px}.archive-score-list p{color:#52525a;grid-column:1/-1;margin:2px 0 0;font-size:8px}.archive-home-visit-toolbar{background:linear-gradient(135deg,#f4f8ff,#f8fbff);border:1px solid #d9e7f5;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding:13px 14px;display:flex}.archive-home-visit-toolbar>div{min-width:0}.archive-home-visit-toolbar strong,.archive-home-visit-toolbar p{display:block}.archive-home-visit-toolbar strong{color:#183b5b;font-size:11px}.archive-home-visit-toolbar p{color:#6f8193;margin:4px 0 0;font-size:9px;line-height:1.55}.archive-home-visit-toolbar button{color:#fff;min-width:92px;min-height:36px;font:inherit;white-space:nowrap;cursor:pointer;background:#315a7c;border:1px solid #315a7c;border-radius:11px;flex:none;padding:0 13px;font-size:10px;font-weight:750}.archive-home-visit-toolbar button.active{color:#315a7c;background:#fff}.home-visit-module-embedded{--visit-ink:#21384d;--visit-muted:#6f8193;--green:#315a7c;background:#f7f9fc;border:1px solid #dbe6f0;border-radius:18px;margin-bottom:14px;padding:12px}.archive-home-visit-intro{border-bottom:1px solid #e1e8ef;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;padding:2px 2px 10px;display:flex}.archive-home-visit-intro h3{color:#21384d;margin:4px 0;font-size:14px}.archive-home-visit-intro p{color:#6f8193;margin:0;font-size:9px;line-height:1.55}.archive-home-visit-intro .outline-button{white-space:nowrap;flex:none}.home-visit-module-embedded .home-visit-workspace{grid-template-columns:minmax(0,1fr)}.home-visit-module-embedded .home-visit-side{position:static}.visit-locked-student{background:#f5f8fb;border:1px solid #dfe7ee;border-radius:12px;min-height:58px;padding:10px 12px}.visit-locked-student>span,.visit-locked-student>strong,.visit-locked-student>small{display:block}.visit-locked-student>span{color:#6f8193;margin-bottom:4px;font-size:8px}.visit-locked-student>strong{color:#21384d;font-size:11px}.visit-locked-student>small{color:#8b9aaa;margin-top:3px;font-size:8px}.archive-visit-list{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-visit-list article{background:#f8f8fa;border-radius:15px;padding:14px}.archive-visit-list header{justify-content:space-between;display:flex}.archive-visit-list header strong{font-size:10px}.archive-visit-list header span{color:#18794e;background:#e9f7ef;border-radius:999px;padding:3px 7px;font-size:7px}.archive-visit-list p{color:#52525a;margin:8px 0;font-size:9px;line-height:1.65}.archive-visit-list article>div{flex-wrap:wrap;gap:4px;display:flex}.archive-visit-list article>div span{color:#6e6e73;background:#ececf0;border-radius:999px;padding:3px 6px;font-size:7px}.archive-timeline article{padding-left:17px;position:relative}.archive-timeline article:not(:last-child):after{content:"";background:#d9e8f7;width:1px;position:absolute;top:12px;bottom:-12px;left:4px}.archive-timeline i{z-index:1;background:#0071e3;border:2px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:3px;left:0;box-shadow:0 0 0 1px #bddbfa}.archive-timeline strong,.archive-timeline small,.archive-timeline span{display:block}.archive-timeline strong{font-size:10px}.archive-timeline small{color:#6e6e73;margin-top:2px;font-size:8px}.archive-timeline span{color:#a1a1a6;margin-top:2px;font-size:7px}.archive-loading,.archive-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:360px;padding:30px;display:flex}.archive-loading>span{border:3px solid #dbeafb;border-top-color:#0071e3;border-radius:50%;width:34px;height:34px;margin-bottom:16px;animation:.7s linear infinite archive-spin}@keyframes archive-spin{to{transform:rotate(360deg)}}.archive-loading strong,.archive-error strong{font-size:14px}.archive-loading small{color:#86868b;margin-top:5px;font-size:9px}.archive-error i{color:#ff3b30;background:#fff0ef;border-radius:50%;place-items:center;width:40px;height:40px;margin-bottom:12px;font-style:normal;font-weight:800;display:grid}.archive-error p{color:#6e6e73;max-width:360px;font-size:9px}.archive-error button{color:#fff;cursor:pointer;background:#0071e3;border:0;border-radius:999px;height:34px;padding:0 14px;font-size:9px}@media (width<=760px){.teacher-command-layer{align-items:stretch;padding:10px}.teacher-command{border-radius:22px;width:100%;max-height:calc(100dvh - 20px)}.teacher-command>footer{display:none}.command-input{min-height:62px;padding:0 14px}.command-input input{font-size:14px}.command-results>button{min-height:66px}.student-archive-drawer{width:100vw}.archive-home-visit-toolbar,.archive-home-visit-intro{flex-direction:column;align-items:stretch}.archive-home-visit-toolbar button,.archive-home-visit-intro .outline-button{width:100%}.archive-hero{gap:12px;min-height:116px;padding:24px 58px 21px 18px}.archive-avatar{border-radius:17px;flex-basis:52px;width:52px;height:52px;font-size:20px}.archive-hero h2{font-size:25px}.archive-status{display:none}.archive-scroll{padding:12px 12px 42px}.archive-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.archive-summary article{min-height:72px}.archive-grid{grid-template-columns:1fr;gap:8px}.archive-section,.archive-section-wide{grid-column:1}.archive-role-list,.archive-note-list,.archive-visit-list{grid-template-columns:1fr}.archive-score-toolbar{flex-direction:column;align-items:stretch}.archive-score-toolbar>div:last-child{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.archive-score-toolbar button,.archive-score-upload{width:100%;min-width:0;padding-left:7px;padding-right:7px}.archive-score-form{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-score-records{grid-template-columns:1fr}.score-preview-table>span{grid-template-columns:minmax(0,1fr) auto}.score-preview-table i,.score-preview-table em{grid-column:1}.score-preview-table strong{grid-area:1/2/span 3}}@media (width<=520px){.notification-panel{width:auto;position:fixed;top:66px;left:10px;right:10px}.command-results>button>span,.command-results>button small,.command-results>button strong,.command-results>button em{display:block}.archive-score-form{grid-template-columns:1fr}.archive-score-form .score-form-wide,.score-form-actions{grid-column:1}.score-form-actions button{flex:1}}.org-participation-panel{grid-column:1/-1;padding:0;overflow:hidden}.child-two-column>.latest-comment{grid-column:1/-1;width:100%;min-width:0}.org-participation-panel>.panel-header{padding:28px 28px 0}.org-participation-panel>.panel-header p{color:#86868b;margin:7px 0 0;font-size:10px;line-height:1.6}.committee-mind-map{margin-top:22px}.org-participation-panel>.role-history{margin:20px 28px 28px}.org-map-toolbar{background:#fafafce6;border-top:1px solid #0000000f;border-bottom:1px solid #0000000f;justify-content:space-between;align-items:center;gap:18px;min-height:66px;padding:13px 18px;display:flex}.org-map-toolbar>div:first-child{min-width:0}.org-map-toolbar strong,.org-map-toolbar small{display:block}.org-map-toolbar strong{color:#1d1d1f;font-size:11px}.org-map-toolbar small{color:#86868b;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;overflow:hidden}.org-map-controls{flex:none;align-items:center;gap:7px;display:flex}.org-map-controls button{color:#56565a;white-space:nowrap;cursor:pointer;background:#e9e9ed;border:0;border-radius:999px;min-height:32px;padding:7px 11px;font-size:9px;font-weight:700}.org-map-controls button:hover,.org-map-controls button.active{color:#fff;background:#1d1d1f}.org-map-controls button.org-zoom-button{width:32px;padding:0;font-size:17px}.org-map-controls>span{color:#86868b;font-variant-numeric:tabular-nums;text-align:center;min-width:39px;font-size:8px}.org-map-viewport{cursor:grab;touch-action:none;background:radial-gradient(circle at 50% 0,#0071e30e,#0000 30%),linear-gradient(#fff 0%,#fbfbfd 100%);outline:none;height:790px;position:relative;overflow:hidden}.org-map-viewport:active{cursor:grabbing}.org-map-viewport:focus-visible{box-shadow:inset 0 0 0 2px #0071e3a6}.org-map-canvas{width:var(--org-canvas-width,1700px);color:#1d1d1f;transform-origin:0 0;-webkit-user-select:none;user-select:none;will-change:transform;height:1420px;transition:transform .32s cubic-bezier(.2,.72,.3,1);position:absolute;top:0;left:0}.org-map-viewport:active .org-map-canvas{transition:none}.org-map-root{z-index:2;text-align:center;width:240px;position:absolute;top:18px;left:50%;transform:translate(-50%)}.org-map-root small,.org-map-root strong,.org-map-root span{display:block}.org-map-root small{color:#0071e3;letter-spacing:.14em;font-size:9px;font-weight:750}.org-map-root strong{letter-spacing:-.05em;margin-top:7px;font-size:25px}.org-map-root span{color:#6e6e73;margin-top:3px;font-size:11px}.org-map-root-line{background:#b9bec7;width:2px;height:71px;position:absolute;top:99px;left:50%;transform:translate(-50%)}.org-map-departments{width:var(--org-department-width,1580px);grid-template-columns:repeat(var(--org-department-count,5), minmax(0, 1fr));gap:24px;display:grid;position:absolute;top:170px;left:60px}.org-map-departments:before{content:"";left:calc(50% / var(--org-department-count,5));right:calc(50% / var(--org-department-count,5));background:#b9bec7;height:2px;position:absolute;top:0}.org-department-branch{min-width:0;padding-top:34px;transition:opacity .22s;position:relative}.org-department-branch:before{content:"";background:#b9bec7;width:2px;height:34px;position:absolute;top:0;left:50%;transform:translate(-50%)}.org-department-branch>header{text-align:center;min-height:58px;padding:0 12px}.org-department-branch>header small{color:#86868b;letter-spacing:.08em;font-size:8px;font-weight:700}.org-department-branch>header h3{letter-spacing:-.035em;margin:7px 0 0;font-size:17px}.org-role-list{margin-top:20px;padding-left:40px;position:relative}.org-role-list:before{content:"";background:#c7cbd2;width:2px;position:absolute;top:4px;bottom:14px;left:17px}.org-role-group{min-height:66px;margin-bottom:20px;padding:0 8px 0 18px;position:relative}.org-role-group:before{content:"";background:#c7cbd2;width:27px;height:2px;position:absolute;top:8px;left:-22px}.org-role-group:after{content:"";background:#8c939d;border:2px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:4px;left:3px;box-shadow:0 0 0 1px #8c939d}.org-role-group.org-role-level-two{margin-left:18px;padding-left:23px}.org-role-group.org-role-level-two:before{background:#9db4c6;width:41px;left:-40px}.org-role-group.org-role-level-two:after{background:#6f91ac;box-shadow:0 0 0 1px #6f91ac}.org-role-group.org-role-level-three{margin-left:36px;padding-left:28px}.org-role-group.org-role-level-three:before{background:#bccbd6;width:59px;left:-58px}.org-role-group.org-role-level-three:after{background:#8aa5b8;box-shadow:0 0 0 1px #8aa5b8}.org-parent-role-label{color:#59738a;margin:3px 0 0 16px;font-size:7px;font-weight:700;display:block}.org-role-group h4{margin:0;padding-left:16px;font-size:11px;line-height:1.45}.org-role-group h4 small{color:#0071e3;font-size:8px}.org-role-group>p{color:#86868b;margin:5px 0 0;font-size:8px;line-height:1.55}.org-role-members{flex-wrap:wrap;gap:6px 13px;margin-top:7px;display:flex}.org-role-seat{color:#6e6e73;white-space:nowrap;align-items:baseline;gap:4px;min-height:18px;display:inline-flex;position:relative}.org-role-seat>small{color:#b0b0b5;font-variant-numeric:tabular-nums;font-size:7px}.org-role-seat>small:after{content:"·";margin-left:4px}.org-role-seat>strong{font-size:9px;font-weight:650}.org-role-seat.target-child{color:#ad6600}.org-role-seat.target-child>strong{font-size:11px;font-weight:820}.child-crown{transform-origin:bottom;font-size:14px;line-height:1;animation:2.8s ease-in-out infinite crown-wave;position:absolute;top:-17px;left:28px;transform:rotate(-9deg)}.org-department-branch.is-target-branch>header h3,.org-role-group.is-target-role h4{color:#ad6600}.org-department-branch.is-target-branch:before,.org-department-branch.is-target-branch .org-role-list:before,.org-role-group.is-target-role:before{background:#d5902f}.org-role-group.is-target-role:after{background:#f2a83b;box-shadow:0 0 0 1px #d5902f,0 0 0 6px #f2a83b1f}.org-map-canvas[data-mode=focus] .org-department-branch:not(.is-target-branch){opacity:.18}.org-map-gesture-hint{color:#77777c;pointer-events:none;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f5f5f7e6;border-radius:999px;padding:7px 10px;font-size:8px;font-weight:650;position:absolute;bottom:12px;right:14px}.eye-rotation-note{border-top:1px solid #00000012;margin:0 24px;padding:16px 4px 20px}.eye-rotation-note summary{color:#1d1d1f;cursor:pointer;font-size:10px;font-weight:750}.eye-rotation-note ul{color:#6e6e73;margin:12px 0 0;padding-left:20px;font-size:9px;line-height:1.8}@keyframes crown-wave{0%,to{transform:translateY(0)rotate(-9deg)}50%{transform:translateY(-3px)rotate(-3deg)}}.teacher-sidebar{-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);background:#fafafcf0;border-color:#00000014}.class-mini-card,.nav-group button.active{background:#eaf3ff}.class-mini-icon{background:#1d1d1f}.nav-group button.active,.nav-group button:hover{color:#06c}.nav-group button.active:before{background:#0071e3}.teacher-main{padding-top:38px}.teacher-page-heading h1,.simple-page-heading h1,.student-hero-copy h1,.login-heading h2{color:#1d1d1f;letter-spacing:-.05em;font-weight:700}.metric-card{box-shadow:none;background:#fff;border-color:#00000012}.metric-icon,.record-index,.student-initial,.work-record-mark{color:#06c;background:#eaf3ff}.overview-welcome{color:#fff;background:linear-gradient(110deg,#000000b8,#0000000d),url(/class-space-apple-hero.jpg) 82%/cover}.overview-welcome .section-kicker,.overview-welcome p{color:#ffffffc7}.overview-welcome h2{color:#fff}.overview-welcome .outline-button{color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff21;border-color:#ffffff57}.overview-art{opacity:0}.login-page{background:#f5f5f7}.login-story{background:linear-gradient(90deg,#ffffff14,#ffffffb3),url(/class-space-apple-hero.jpg) 90%/cover}.login-story:before,.login-story:after,.login-visual{display:none}.login-story-inner{grid-template-rows:auto 1fr auto}.login-copy{-webkit-backdrop-filter:saturate(160%)blur(26px);backdrop-filter:saturate(160%)blur(26px);background:#ffffffad;border:1px solid #ffffff85;border-radius:30px;align-self:center;max-width:690px;padding:36px;box-shadow:0 28px 90px #0000001a}.login-copy h1{color:#1d1d1f;letter-spacing:-.065em;font-family:inherit;font-weight:760}.login-copy>p{color:#515154}.trust-row>span{box-shadow:none;background:#ffffffd1;border-color:#0000000f}.login-panel{background:#fff}.demo-buttons button,.login-help{background:#f5f5f7;border-color:#00000014}.home-visit-hero{color:#fff;background:linear-gradient(110deg,#000000c2,#00000014),url(/class-space-apple-hero.jpg) 92%/cover}.home-visit-hero .section-kicker,.home-visit-hero p{color:#ffffffc7}.home-visit-hero h2{color:#fff}.home-visit-hero-actions{align-items:center;gap:10px;display:flex}.home-visit-hero-actions .outline-button{color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff24;border-color:#ffffff52}.home-visit-hero-actions button:disabled{cursor:not-allowed;opacity:.46}.visit-stepper button,.visit-form-actions button,.recent-visit-actions button{white-space:nowrap}.recent-visit-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.recent-visit-list .recent-visit-actions>button{border-radius:999px;min-height:30px;padding:0 10px;position:static}.recent-visit-list .visit-export-button{color:#06c;background:#eaf3ff}.work-record-panel{background:#fff;border:1px solid #00000014;border-radius:26px;overflow:hidden}.work-record-toolbar{border-bottom:1px solid #00000012;justify-content:space-between;align-items:flex-end;gap:18px;padding:22px 24px;display:flex}.work-record-toolbar label{width:min(520px,100%)}.work-record-toolbar label>span{color:#6e6e73;margin-bottom:7px;font-size:10px;font-weight:700;display:block}.work-record-toolbar input{width:100%;min-height:44px;padding:0 14px}.work-record-toolbar>div{align-items:center;gap:14px;display:flex}.work-record-toolbar>div>span{color:#6e6e73;white-space:nowrap;font-size:10px}.work-record-list{padding:8px 24px 24px}.work-record-list article{border-bottom:1px solid #00000012;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:14px;padding:18px 2px;display:grid}.work-record-list article:last-child{border-bottom:0}.work-record-mark{border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:800;display:grid}.work-record-list small{color:#86868b;font-size:9px}.work-record-list h3{letter-spacing:-.01em;margin:4px 0;font-size:13px}.work-record-list p{color:#86868b;margin:0;font-size:9px}.responsive-table{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}@media (width<=860px){.class-home{padding-top:24px}.class-hero{grid-template-columns:1fr;gap:20px;min-height:auto}.class-hero-copy{padding:22px 4px}.class-hero-copy h1{font-size:clamp(48px,10vw,70px)}.class-photo-carousel{height:min(70vw,520px);min-height:390px}.login-story,.login-story-inner{min-height:560px}}@media (width<=700px){body{overflow-x:hidden}button{max-width:100%}.parent-header{padding-left:16px;padding-right:16px}.parent-main{padding-left:14px;padding-right:14px;padding-bottom:calc(104px + env(safe-area-inset-bottom))}.class-home{padding:12px 0 0}.class-hero-copy{padding:18px 4px 8px}.class-hero-copy h1{margin-top:12px;font-size:46px}.hero-slogan{font-size:21px}.teacher-message{margin-top:24px}.class-photo-carousel{border-radius:26px;height:118vw;min-height:420px;max-height:510px}.carousel-photo{background-size:auto 100%}.carousel-copy{bottom:66px;left:20px;right:20px}.carousel-copy h2{font-size:29px}.carousel-copy p{font-size:12px}.carousel-arrow{display:none}.carousel-controls{left:16px;right:16px}.class-home>.section-heading,.class-calendar-section,.content-grid,.committee-section,.album-section{margin-top:54px}.section-heading{align-items:flex-start}.section-heading h2,.committee-heading h2{font-size:28px}.date-pill{flex:none}.panel,.committee-section,.class-calendar-card,.album-card{border-radius:22px}.committee-section{padding:22px 14px}.homework-item{grid-template-columns:auto minmax(0,1fr)}.signature-badge{grid-column:2;justify-self:start}.parent-bottom-nav{width:calc(100% - 20px);min-height:66px;bottom:calc(8px + env(safe-area-inset-bottom))}.parent-bottom-nav button{min-width:0;padding:7px 3px}.parent-bottom-nav small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.login-story{min-height:480px;padding-bottom:18px}.login-story-inner{min-height:480px;padding:22px 16px}.login-copy{border-radius:24px;margin-top:34px;padding:24px 20px}.login-copy h1{font-size:42px}.login-panel{padding:44px 20px}.trust-row{grid-template-columns:1fr}.teacher-topbar{height:58px;padding:0 14px}.teacher-main{padding:22px 14px 90px}.teacher-page-heading{flex-direction:column;align-items:flex-start}.teacher-page-heading h1{font-size:32px}.teacher-page-heading>.outline-button{width:auto;min-width:max-content}.home-visit-hero{border-radius:24px;padding:24px 18px}.home-visit-hero-actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.home-visit-hero-actions button{width:100%;padding-left:14px;padding-right:14px}.visit-form-actions{gap:8px}.visit-form-actions button{min-width:0;padding-left:12px;padding-right:12px;font-size:12px}.recent-visit-list article{grid-template-columns:auto minmax(0,1fr)}.recent-visit-actions{grid-column:2;justify-content:flex-start}.work-record-toolbar{flex-direction:column;align-items:stretch;padding:18px}.work-record-toolbar>div{justify-content:space-between}.work-record-toolbar .primary-button{min-height:42px;padding:0 16px}.work-record-list{padding:6px 18px 18px}.table-tools,.import-actions,.candidate-actions,.suggestion-admin-card>div{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.table-tools::-webkit-scrollbar{display:none}.import-actions::-webkit-scrollbar{display:none}.candidate-actions::-webkit-scrollbar{display:none}.table-tools button,.import-actions button,.candidate-actions button{flex:none}}.login-page{background:linear-gradient(90deg,#0e1e1247,#0e1e1205 58%),url(/growth-meadow-hero.jpg) 60%/cover fixed;grid-template-columns:minmax(0,1fr) minmax(420px,540px);gap:24px;min-height:100vh;padding:24px}.login-story{background:0 0;min-height:calc(100vh - 48px)}.login-story .brand,.login-story .brand strong,.login-story .brand small{color:#fff}.login-story .brand-icon{color:#1d1d1f;background:#ffffffe0;border-color:#ffffff8c}.login-copy{max-width:780px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;align-self:center;margin:0 0 6vh;padding:0}.login-copy .eyebrow{color:#ffffffe6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f251629;border:1px solid #ffffff57;border-radius:999px;padding:9px 14px;display:inline-flex}.login-copy h1{color:#fff;letter-spacing:.04em;white-space:nowrap;word-break:keep-all;text-shadow:0 12px 38px #00000052;transform-origin:0;margin:24px 0 20px;font-family:STXingkai,华文行楷,Kaiti SC,STKaiti,KaiTi,cursive;font-size:clamp(58px,7vw,108px);font-style:italic;font-weight:500;line-height:1;transform:rotate(-1.5deg)}.login-copy>p{color:#ffffffeb;text-shadow:0 3px 18px #00000047;max-width:520px;font-size:16px;font-weight:520;line-height:1.75}.trust-row{display:none}.login-panel{-webkit-backdrop-filter:saturate(160%)blur(30px);backdrop-filter:saturate(160%)blur(30px);background:#ffffffe0;border:1px solid #ffffffa6;border-radius:34px;min-height:calc(100vh - 48px);padding:44px clamp(32px,4vw,68px);box-shadow:0 30px 100px #091a0e33}.carousel-photo{background-image:url(/growth-meadow-hero.jpg)}.nav-group>span{font-size:10px}.nav-group button{min-height:42px}.nav-group strong,.class-mini-card strong{font-size:13px}.class-mini-card small{font-size:9px}.carousel-manager{gap:24px;display:grid}.carousel-manager-intro,.carousel-upload-card,.carousel-manager-card,.carousel-manager-empty{background:#fff;border:1px solid #00000012;border-radius:26px}.carousel-manager-intro{justify-content:space-between;align-items:center;gap:24px;padding:26px 28px;display:flex}.carousel-manager-intro h2{letter-spacing:-.035em;margin:7px 0 5px;font-size:24px}.carousel-manager-intro p{color:#6e6e73;margin:0;font-size:13px}.carousel-manager-intro>span{color:#06c;text-align:center;white-space:nowrap;background:#eaf3ff;border-radius:999px;min-width:70px;padding:9px 14px;font-size:13px;font-weight:750}.carousel-upload-card{grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:22px;padding:24px;display:grid}.carousel-upload-fields{grid-template-columns:1fr 1fr;align-content:center;gap:14px;display:grid}.carousel-upload-fields label,.carousel-manager-card form>label{gap:7px;display:grid}.carousel-upload-fields label>span,.carousel-manager-card form>label>span{color:#6e6e73;font-size:11px;font-weight:700}.carousel-upload-fields input,.carousel-manager-card input,.carousel-manager-card textarea{color:#1d1d1f;width:100%;font:inherit;background:#f5f5f7;border:1px solid #0000001c;border-radius:13px}.carousel-upload-fields input,.carousel-manager-card input{min-height:44px;padding:0 13px}.carousel-manager-card textarea{resize:vertical;min-height:72px;padding:11px 13px}.carousel-upload-fields .primary-button{grid-column:1/-1;justify-self:start}.carousel-manager-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.carousel-manager-card{overflow:hidden}.carousel-manager-thumb{background-position:50%;background-size:cover;min-height:230px;position:relative}.carousel-manager-thumb:after{content:"";background:linear-gradient(#0000 54%,#0000005c);position:absolute;inset:0}.carousel-manager-thumb>span{z-index:2;color:#fff;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#00000057;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:750;position:absolute;bottom:14px;left:16px}.carousel-manager-card>form{gap:13px;padding:18px;display:grid}.carousel-manager-card>form>div{flex-wrap:nowrap;gap:9px;display:flex}.carousel-remove-button{color:#b42318}.carousel-manager-empty{text-align:center;grid-column:1/-1;padding:44px 24px}.carousel-manager-empty strong{font-size:16px}.carousel-manager-empty p{color:#6e6e73;margin:8px 0 0;font-size:12px}@media (width<=980px){.login-page{grid-template-columns:minmax(0,1fr) minmax(390px,480px);gap:14px;padding:14px}.login-story,.login-story-inner,.login-panel{min-height:calc(100vh - 28px)}.login-copy h1{font-size:clamp(50px,7vw,76px)}.carousel-upload-card{grid-template-columns:1fr}}@media (width<=640px){.login-page{background-position:70%;background-attachment:scroll;padding:10px;display:block}.login-story{border-radius:28px 28px 0 0;min-height:34vh;display:block}.login-story-inner{min-height:34vh;padding:22px 18px;display:block}.login-story .brand{transform-origin:0 0;transform:scale(.92)}.login-copy{margin:0;position:absolute;bottom:24px;left:20px;right:14px}.login-copy .eyebrow,.login-copy>p{display:none}.login-copy h1{letter-spacing:.01em;margin:0;font-size:clamp(42px,13vw,58px)}.login-panel{min-height:auto;box-shadow:none;border-radius:0 0 28px 28px;margin:-1px 0 0;padding:30px 20px 34px}.mobile-brand-mark{display:none}.carousel-manager-intro{align-items:flex-start;padding:20px}.carousel-manager-intro h2{font-size:21px}.carousel-upload-card{padding:16px}.carousel-upload-fields,.carousel-manager-grid{grid-template-columns:1fr}.carousel-manager-thumb{min-height:200px}}.teacher-class-preview{background:0 0;border:0;border-radius:0;padding:0}.preview-toolbar{-webkit-backdrop-filter:saturate(160%)blur(20px);backdrop-filter:saturate(160%)blur(20px);background:#f5f5f7d1;border:1px solid #0000000f;border-radius:18px;margin:0 0 16px;padding:12px 12px 12px 18px;box-shadow:0 10px 34px #00000009}.preview-toolbar strong{color:#1d1d1f;font-size:12px}.preview-toolbar small{color:#86868b;font-size:10px}.preview-toolbar .primary-button{min-height:42px;padding:0 20px;font-size:13px}.class-home{max-width:1380px;padding-top:0}.class-home .class-hero{color:#fff;isolation:isolate;background:#172217;border:0;border-radius:44px;min-height:clamp(650px,72vh,780px);padding:0;display:block;position:relative;overflow:hidden;box-shadow:0 38px 90px #16271729,inset 0 1px #ffffff47}.class-home .class-photo-carousel{border-radius:inherit;width:100%;height:100%;min-height:0;box-shadow:none;position:absolute;inset:0}.class-home .class-hero-copy{z-index:8;width:min(560px,100% - 100px);padding:0;display:block;position:absolute;top:58px;left:clamp(42px,5vw,76px)}.class-home .class-hero-copy>.eyebrow{color:#ffffffd1;letter-spacing:.13em;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff17;border:1px solid #ffffff4d;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:720;display:inline-flex}.class-home .class-hero-copy h1{color:#fff;letter-spacing:-.065em;text-shadow:0 10px 34px #0003;margin:26px 0 20px;font-family:PingFang SC,SF Pro Display,Helvetica Neue,Microsoft YaHei,sans-serif;font-weight:720;line-height:.94}.class-home .class-hero-copy h1>span{white-space:nowrap;word-break:keep-all;font-size:clamp(58px,6vw,94px);display:block}.class-home .class-hero-copy h1>small{color:#ffffffe6;letter-spacing:.02em;white-space:nowrap;-webkit-backdrop-filter:saturate(150%)blur(18px);backdrop-filter:saturate(150%)blur(18px);background:#14221538;border:1px solid #ffffff40;border-radius:999px;width:max-content;max-width:100%;margin-top:18px;padding:8px 14px 9px;font-size:clamp(17px,1.7vw,24px);font-weight:590;line-height:1.2;display:block}.class-home .hero-slogan{color:#ffffffe0;letter-spacing:-.025em;text-shadow:0 5px 24px #0000003d;max-width:520px;margin:0;font-size:clamp(18px,1.75vw,26px);font-weight:540;line-height:1.45}.class-home .hero-description{color:#ffffffad;text-shadow:0 4px 18px #00000038;max-width:470px;margin:10px 0 0;font-size:11px;line-height:1.65}.class-home .teacher-avatar{color:#1d1d1f;background:#ffffffeb}.class-home .teacher-message small{color:#ffffff9e}.class-home .teacher-message strong{color:#fffffff0;font-family:inherit;font-size:13px;font-weight:560}.class-home .carousel-copy{-webkit-backdrop-filter:saturate(140%)blur(20px);backdrop-filter:saturate(140%)blur(20px);text-shadow:0 2px 14px #0000004d;background:#08120a3d;border:1px solid #fff3;border-radius:20px;width:min(440px,100% - 68px);max-width:none;padding:18px 20px;bottom:34px;left:auto;right:34px}.class-home .carousel-copy>span{font-size:9px}.class-home .carousel-copy h2{margin:7px 0 5px;font-size:clamp(22px,2.3vw,32px);line-height:1.08}.class-home .carousel-copy p{font-size:12px;line-height:1.55}.class-home .carousel-copy small{margin-top:8px;font-size:9px}.class-home>.section-heading,.class-home .class-calendar-section,.class-home .content-grid,.class-home .committee-section,.class-home .album-section{margin-top:76px}@media (width<=920px){.class-home .class-hero{border-radius:36px;min-height:690px}.class-home .class-hero-copy{width:min(540px,100% - 76px);top:42px;left:38px}.class-home .class-hero-copy h1>span{font-size:clamp(54px,9vw,76px)}.class-home .carousel-copy{width:min(390px,100% - 56px);bottom:30px;right:28px}.class-home .carousel-controls{bottom:30px;left:38px}}@media (width<=700px){.teacher-class-preview{margin-left:-6px;margin-right:-6px}.preview-toolbar{border-radius:16px;padding:10px 10px 10px 14px}.preview-toolbar small{display:none}.preview-toolbar .primary-button{min-height:38px;padding:0 14px;font-size:12px}.class-home{padding-top:0}.class-home .class-hero{border-radius:28px;height:82vh;min-height:650px;max-height:720px}.class-home .class-hero-copy{width:calc(100% - 44px);padding:0;top:26px;left:22px}.class-home .class-hero-copy>.eyebrow{padding:7px 10px;font-size:8px}.class-home .class-hero-copy h1{margin:18px 0 14px}.class-home .class-hero-copy h1>span{font-size:clamp(46px,14vw,62px)}.class-home .class-hero-copy h1>small{margin-top:12px;padding:7px 11px 8px;font-size:15px}.class-home .hero-slogan{max-width:320px;font-size:17px}.class-home .hero-description{max-width:310px;margin-top:7px;font-size:10px}.class-home .teacher-message{border-radius:17px;margin-top:22px;padding:10px 12px 10px 9px}.class-home .teacher-avatar{flex-basis:38px;width:38px;height:38px}.class-home .teacher-message strong{font-size:11px}.class-home .class-photo-carousel{border-radius:inherit;height:100%;min-height:0;max-height:none}.class-home .carousel-photo{background-size:cover}.class-home .carousel-scrim{background:linear-gradient(#070e089e 0%,#070e081f 52%,#040a05b8 100%),linear-gradient(90deg,#070e0852,#0000 72%)}.class-home .carousel-copy{border-radius:17px;width:auto;padding:13px 15px;bottom:72px;left:22px;right:22px}.class-home .carousel-copy h2{margin:5px 0 0;font-size:21px}.class-home .carousel-copy p,.class-home .carousel-copy small{display:none}.class-home .carousel-controls{bottom:22px;left:22px}.class-home .carousel-arrow{display:none}.class-home>.section-heading,.class-home .class-calendar-section,.class-home .content-grid,.class-home .committee-section,.class-home .album-section{margin-top:58px}}.calendar-admin-list{margin-top:8px}.calendar-admin-list article{border-bottom:1px solid #00000012;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:20px;min-height:112px;padding:22px 8px 22px 0;transition:background .18s,transform .18s;position:relative}.calendar-admin-list article:last-child{border-bottom:0}.calendar-admin-list article:hover{background:linear-gradient(90deg,#0071e309,#0000 72%)}.calendar-admin-list time{color:#1d1d1f;font-variant-numeric:tabular-nums;background:0 0;border-radius:0;flex-direction:column;justify-content:center;align-items:flex-start;min-height:82px;padding:4px 24px 4px 8px;display:flex;position:relative}.calendar-admin-list time:before{content:"";background:linear-gradient(#0071e314,#0071e34d,#0071e314);width:1px;position:absolute;top:0;bottom:-31px;right:7px}.calendar-admin-list article:last-child time:before{bottom:0}.calendar-admin-list time:after{content:"";background:#0071e3;border:3px solid #fff;border-radius:50%;width:9px;height:9px;position:absolute;top:37px;right:3px;box-shadow:0 0 0 1px #0071e32e}.calendar-admin-list time span{color:#86868b;letter-spacing:.06em;font-size:10px;font-weight:720}.calendar-admin-list time strong{color:#1d1d1f;letter-spacing:-.055em;margin:2px 0 1px;font-size:34px;font-weight:690;line-height:1}.calendar-admin-list time i{color:#0071e3;font-size:9px;font-style:normal;font-weight:680}.calendar-admin-list .calendar-event-meta{color:#8a5a18;background:#fff5df;border-radius:999px;width:max-content;padding:5px 9px;font-size:9px;font-weight:700;display:inline-flex}.calendar-admin-list h3{color:#1d1d1f;letter-spacing:-.025em;margin:9px 0 6px;font-size:17px;font-weight:680}.calendar-admin-list p{color:#6e6e73;font-size:11px;line-height:1.55}.class-calendar-card{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:18px;padding:22px}.class-calendar-card time{color:#1d1d1f;font-variant-numeric:tabular-nums;background:0 0;border-radius:0;flex-direction:column;justify-content:center;align-items:flex-start;min-height:78px;padding-right:18px;display:flex;position:relative}.class-calendar-card time:after{content:"";background:#0071e333;width:1px;position:absolute;top:8px;bottom:8px;right:0}.class-calendar-card time strong{color:#1d1d1f;letter-spacing:-.055em;font-size:34px;font-weight:690}.class-calendar-card time small{color:#0071e3;order:-1;margin:0 0 2px;font-size:9px;font-weight:720}@media (width<=700px){.calendar-admin-list article{grid-template-columns:72px minmax(0,1fr);gap:14px;min-height:102px;padding:18px 0}.calendar-admin-list time{min-height:72px;padding-left:4px;padding-right:18px}.calendar-admin-list time:before{bottom:-27px;right:4px}.calendar-admin-list time:after{top:32px;right:0}.calendar-admin-list time strong{font-size:30px}.calendar-admin-list h3{font-size:15px}.class-calendar-card{grid-template-columns:64px minmax(0,1fr);padding:18px}.org-participation-panel>.panel-header{align-items:flex-start;padding:22px 18px 0}.org-participation-panel>.panel-header .positive-change{flex:none}.committee-mind-map{margin-top:18px}.org-participation-panel>.role-history{margin:18px}.org-map-toolbar{flex-direction:column;align-items:stretch;gap:10px;min-height:0;padding:12px}.org-map-controls{scrollbar-width:none;width:100%;padding-bottom:2px;overflow-x:auto}.org-map-controls::-webkit-scrollbar{display:none}.org-map-controls button,.org-map-controls>span{flex:none}.org-map-viewport{height:680px}.org-map-gesture-hint{bottom:10px;right:10px}.eye-rotation-note{margin:0 16px}}@media (prefers-reduced-motion:reduce){.org-map-canvas{transition:none}.child-crown{animation:none}}.parent-shell{--class-blue:#006edc;--class-blue-dark:#005bb8;--class-blue-soft:#e9f3ff;color:#151816;background:#f7faff;font-family:Microsoft YaHei,Microsoft YaHei UI,PingFang SC,sans-serif}.parent-header{background:#f7faffeb;border-bottom-color:#e3e8ed;grid-template-columns:minmax(210px,1fr) auto minmax(210px,1fr);gap:24px;height:70px;padding:0 clamp(22px,5.2vw,76px);display:grid}.parent-header .brand{min-width:0}.parent-header .brand-mark{background:var(--class-blue);border-radius:50%;flex-basis:34px;width:34px;height:34px;box-shadow:0 8px 20px #006edc2e}.parent-header .brand-mark span{background:#fff}.parent-header .brand-mark span:nth-child(3){background:#b9dcff}.parent-header .brand strong{color:#151816;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:14px;font-weight:700;overflow:hidden}.parent-top-nav{align-items:stretch;gap:clamp(18px,2.3vw,32px);height:100%;display:flex}.parent-top-nav button{color:#737b84;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:12px;font-weight:700;position:relative}.parent-top-nav button.active:after{content:"";background:var(--class-blue);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.parent-header-actions{justify-self:end}.parent-header .header-notification{background:#ffffffd6;border-color:#dbe3eb;border-radius:50%}.parent-header .user-chip span{background:var(--class-blue)}.parent-header .user-chip strong{font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-weight:700}.class-home{color:#151816;width:100%;max-width:1420px;margin:0 auto;padding:48px clamp(6px,2.7vw,38px) 70px;font-family:Microsoft YaHei,Microsoft YaHei UI,PingFang SC,sans-serif}.class-home .class-hero{color:#151816;min-height:0;box-shadow:none;isolation:auto;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(330px,.8fr) minmax(520px,1.35fr);align-items:center;gap:clamp(36px,5.4vw,82px);padding:0;display:grid;position:relative;overflow:visible}.class-home .class-hero-copy{z-index:2;width:auto;padding:0;position:relative;top:auto;left:auto}.class-home .class-hero-copy>.eyebrow{width:fit-content;color:var(--class-blue);letter-spacing:.1em;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:0;font-size:10px;font-weight:700;line-height:1.5;display:flex}.class-home .class-hero-copy>.eyebrow:before{content:"";background:currentColor;flex:0 0 30px;width:30px;height:1px}.class-home .class-hero-copy h1{color:#151816;letter-spacing:-.065em;text-shadow:none;margin:21px 0 20px;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:clamp(50px,5.35vw,74px);font-weight:700;line-height:1.06}.class-home .class-hero-copy h1>span{color:var(--class-blue);font-size:inherit;white-space:nowrap;display:block}.class-home .hero-slogan{color:#343b43;letter-spacing:-.02em;max-width:480px;text-shadow:none;margin:0;font-size:clamp(17px,1.55vw,21px);font-weight:700;line-height:1.55}.class-home .hero-description{color:#737b84;max-width:500px;text-shadow:none;margin:9px 0 0;font-size:13px;line-height:1.8}.class-hero-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.class-hero-actions button{cursor:pointer;white-space:nowrap;border-radius:999px;min-height:44px;padding:0 19px;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:13px;font-weight:700}.class-hero-primary{border:1px solid var(--class-blue);color:#fff;background:var(--class-blue);box-shadow:0 10px 24px #006edc2e}.class-hero-primary:hover{background:var(--class-blue-dark)}.class-hero-secondary{color:#27313b;background:#ffffffb8;border:1px solid #d4dde6}.class-home .teacher-message{color:#737b84;width:min(520px,100%);max-width:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;margin-top:23px;padding:0}.class-home .teacher-avatar{color:#fff;background:var(--class-blue);flex-basis:34px;width:34px;height:34px}.class-home .teacher-message small{color:#8a929b;font-size:9px;font-weight:700}.class-home .teacher-message strong{color:#59626c;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:11px;font-weight:700;line-height:1.6}.class-home .class-photo-carousel{isolation:isolate;background:#dce9f5;border-radius:36px 36px 94px;width:100%;height:420px;min-height:0;position:relative;inset:auto;overflow:hidden;box-shadow:0 26px 68px #184d8029}.class-home .carousel-photo,.class-home .carousel-position-left .carousel-photo,.class-home .carousel-position-center .carousel-photo,.class-home .carousel-position-right .carousel-photo{background-position:58%}.class-home .carousel-scrim{background:linear-gradient(#0000 46%,#05182ab3 100%)}.class-home .carousel-copy{color:#fff;text-shadow:0 2px 18px #00000040;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;width:auto;max-width:590px;padding:0;bottom:56px;left:27px;right:27px}.class-home .carousel-copy>span{letter-spacing:.13em;font-size:9px;font-weight:700}.class-home .carousel-copy h2{letter-spacing:-.03em;margin:7px 0 5px;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:clamp(21px,2vw,28px);font-weight:700;line-height:1.18}.class-home .carousel-copy p{color:#ffffffd6;max-width:470px;font-size:11px;line-height:1.7}.class-home .carousel-copy small{color:#ffffffad;margin-top:7px;font-size:9px}.class-home .carousel-controls{justify-content:space-between;gap:14px;bottom:17px;left:27px;right:27px}.class-home .carousel-arrow{background:#09213757;width:40px;height:40px}.class-home .carousel-dots button{width:28px}.class-home .class-calendar-section{margin-top:72px;scroll-margin-top:92px}.class-home .class-calendar-section>.section-heading{margin-bottom:18px}.class-home .section-kicker{color:var(--class-blue);letter-spacing:.13em;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:10px;font-weight:700}.class-home .section-heading h2,.class-home .panel-header h2{color:#151816;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-weight:700}.class-home .class-calendar-list{border-top:1px solid #dce4ec;border-bottom:1px solid #dce4ec;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.class-home .class-calendar-card{min-width:0;min-height:152px;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:66px minmax(0,1fr);align-content:center;align-items:start;gap:16px;padding:22px 25px;display:grid}.class-home .class-calendar-card+.class-calendar-card{border-left:1px solid #dce4ec}.class-home .class-calendar-card time{color:#151816;min-height:0;padding:0;display:block}.class-home .class-calendar-card time:after{display:none}.class-home .class-calendar-card time strong{color:#151816;letter-spacing:-.04em;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:29px;font-weight:700;line-height:1;display:block}.class-home .class-calendar-card time small{order:initial;color:var(--class-blue);margin-top:6px;font-size:10px;font-weight:700;display:block}.class-home .class-calendar-card>div>span{color:var(--class-blue);font-weight:700}.class-home .class-calendar-card h3{color:#151816;margin:6px 0 8px;font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-size:16px;font-weight:700;line-height:1.45}.class-home .class-calendar-card p{color:#737b84;margin:0;font-size:11px;line-height:1.72}.class-home>.section-heading,.class-home .content-grid,.class-home .album-section{margin-top:72px}.class-home .date-pill{color:var(--class-blue);background:var(--class-blue-soft);font-weight:700}.class-home .today-grid .panel,.class-home .content-grid .panel{background:#ffffffe0;border:1px solid #0056af14;box-shadow:0 18px 48px #184d800f}.class-home .quiet-button,.class-home .week-button{color:var(--class-blue);font-family:Microsoft YaHei,Microsoft YaHei UI,sans-serif;font-weight:700}.class-home .panel-icon-homework,.class-home .panel-icon-duty,.class-home .upload-plus,.parent-bottom-nav button.active{color:var(--class-blue);background:var(--class-blue-soft)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#006edc61}@media (width<=980px){.parent-header{grid-template-columns:minmax(190px,1fr) auto minmax(150px,1fr);gap:18px}.parent-top-nav{gap:16px}.parent-top-nav button{font-size:11px}.class-home .class-hero{grid-template-columns:minmax(290px,.8fr) minmax(420px,1.2fr);gap:34px}.class-home .class-photo-carousel{height:390px}}@media (width<=820px){.parent-header{grid-template-columns:minmax(0,1fr) auto;height:64px}.parent-top-nav{display:none}.parent-main{padding:0 16px 100px}.class-home{padding:38px 6px 54px}.class-home .class-hero{grid-template-columns:1fr;gap:31px}.class-home .class-hero-copy{width:100%}.class-home .class-photo-carousel{border-radius:30px 30px 72px;height:360px}.class-home .class-calendar-list{grid-template-columns:1fr}.class-home .class-calendar-card+.class-calendar-card{border-top:1px solid #dce4ec;border-left:0}}@media (width<=700px){.parent-header{padding:0 18px}.parent-header .brand strong{font-size:13px}.parent-header .user-chip strong{display:none}.parent-header .header-notification{width:36px;height:36px}.class-home{padding-top:34px}.class-home .class-hero{border-radius:0;height:auto;min-height:0;max-height:none}.class-home .class-hero-copy{width:100%;top:auto;left:auto}.class-home .class-hero-copy>.eyebrow{padding:0;font-size:9px}.class-home .class-hero-copy h1{margin:18px 0 17px;font-size:clamp(47px,13.8vw,58px);line-height:1.07}.class-home .class-hero-copy h1>span{font-size:inherit}.class-home .hero-slogan{max-width:100%;font-size:17px}.class-home .hero-description{max-width:100%;margin-top:7px;font-size:11px}.class-hero-actions{flex-wrap:nowrap;gap:8px;width:100%;margin-top:20px}.class-hero-actions button{flex:auto;min-width:0;min-height:41px;padding:0 13px;font-size:11px}.class-home .teacher-message{border-radius:0;margin-top:19px;padding:0}.class-home .teacher-avatar{flex-basis:32px;width:32px;height:32px}.class-home .teacher-message strong{font-size:10px}.class-home .class-photo-carousel{border-radius:28px 28px 62px;height:285px;min-height:0;max-height:none;position:relative;inset:auto}.class-home .carousel-photo,.class-home .carousel-position-left .carousel-photo,.class-home .carousel-position-center .carousel-photo,.class-home .carousel-position-right .carousel-photo{background-position:64%}.class-home .carousel-scrim{background:linear-gradient(#0000 42%,#05182ac2 100%)}.class-home .carousel-copy{border-radius:0;width:auto;padding:0;bottom:54px;left:20px;right:20px}.class-home .carousel-copy h2{margin:5px 0 0;font-size:20px}.class-home .carousel-copy p,.class-home .carousel-copy small{display:none}.class-home .carousel-controls{bottom:15px;left:20px;right:20px}.class-home .carousel-arrow{display:none}.class-home .class-calendar-section{margin-top:54px}.class-home .class-calendar-card{grid-template-columns:58px minmax(0,1fr);min-height:130px;padding:20px 0}.class-home .class-calendar-card time strong{font-size:27px}.class-home>.section-heading,.class-home .content-grid,.class-home .album-section{margin-top:56px}.parent-bottom-nav{background:#f7faffeb;border-color:#0053a81c;box-shadow:0 14px 38px #143d6826}}.parent-shell{min-height:100dvh;color:var(--parent-ink);background:radial-gradient(circle at 8% 4%,#7ea9cc21,#0000 24rem),linear-gradient(#f8fafc 0,#f3f7fa 42%,#f6f8fa 100%)}.parent-header{border-bottom:1px solid var(--parent-line);-webkit-backdrop-filter:saturate(150%)blur(22px);backdrop-filter:saturate(150%)blur(22px);background:#f9fbfddb;height:76px;box-shadow:0 1px #ffffffbd}.parent-header .brand-mark{background:linear-gradient(145deg,#274d6b,#46789f);border-radius:12px;box-shadow:0 9px 24px #315d8233}.parent-header .user-chip span{background:linear-gradient(145deg,#6f98b6,#3f6d91);box-shadow:0 6px 16px #315d8229}.parent-top-nav{gap:clamp(24px,3vw,46px)}.parent-top-nav button{color:#748391;letter-spacing:.01em;font-size:13px}.parent-top-nav button:hover,.parent-top-nav button.active{color:var(--parent-blue)}.parent-top-nav button.active:after{background:var(--parent-blue-bright);height:3px;left:18%;right:18%}.parent-main{min-height:calc(100dvh - 76px);padding-bottom:calc(104px + env(safe-area-inset-bottom))}.parent-bottom-nav{bottom:calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:saturate(170%)blur(26px);backdrop-filter:saturate(170%)blur(26px);background:#fafcfee6;border-color:#315d8221;border-radius:25px;gap:4px;width:min(600px,100% - 28px);min-height:70px;padding:7px;box-shadow:0 18px 50px #1a3a542b}.parent-bottom-nav button{color:#788793;border-radius:19px;gap:4px;min-height:54px}.parent-bottom-nav button.active{color:var(--parent-blue-bright);background:linear-gradient(#edf6ff,#e5f1fc);box-shadow:inset 0 0 0 1px #0878dc0a}.parent-bottom-nav button small{white-space:nowrap;font-size:10px;font-weight:700}@media (width<=820px){.parent-header{height:66px}.parent-main{min-height:calc(100dvh - 66px);padding-right:18px;padding-bottom:calc(112px + env(safe-area-inset-bottom));padding-left:18px}}@media (width<=560px){.parent-header{padding:0 18px}.parent-main,.parent-view-home{padding-left:14px;padding-right:14px}.parent-view-home .class-home .class-hero-copy h1{letter-spacing:-.06em;margin:16px 0 14px;font-size:clamp(38px,11.5vw,50px);line-height:1.12}.parent-view-home .class-home .class-hero-copy h1>span{white-space:normal}.parent-view-home .class-home .class-photo-carousel{border-radius:24px 24px 52px;height:268px}.parent-bottom-nav{bottom:calc(10px + env(safe-area-inset-bottom));border-radius:24px;width:calc(100% - 24px);min-height:68px}}:root{--brand:#33506b;--brand-deep:#24313e;--brand-light:#7d9db5;--brand-pale:#c3d5e2;--bg:#f5f7f8;--surface:#fff;--border:#e4e9ed;--border-strong:#dfe6eb;--fill-soft:#e9eef2;--fill-bar:#dde5ea;--text-primary:#24313e;--text-body:#42505c;--text-secondary:#71808b;--text-muted:#93a0aa;--text-faint:#a9b6bf;--on-dark-strong:#f2f6f9;--on-dark-body:#bcc7d0;--on-dark-muted:#8b98a3;--danger:#a15c52;--danger-bg:#f3e6e3;--info-bg:#e4ecf1;--info-text:#33506b;--gold-bg:#e7eef4;--gold-text:#5d7488;--avatar-1:#33506b;--avatar-2:#7d9db5;--avatar-3:#4a6478;--avatar-4:#6b7f92;--avatar-5:#93a5b5;--avatar-6:#24313e;--avatar-7:#5d7f9c;--avatar-8:#4a5568;--font-sans:"PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-serif:"Noto Serif SC", "Songti SC", "SimSun", serif;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:22px;--r-pill:999px;--shadow-card:0 8px 20px #24313e0d;--shadow-pop:0 16px 38px #24313e24;--ink:var(--text-primary);--muted:var(--text-secondary);--line:var(--border);--paper:var(--surface);--canvas:var(--bg);--green:var(--brand);--green-2:var(--brand-light);--green-soft:var(--info-bg);--green-pale:#f6f9fb;--blue:var(--brand);--blue-soft:var(--info-bg);--rose:var(--danger);--rose-soft:var(--danger-bg);--shadow:var(--shadow-pop);--shadow-small:var(--shadow-card);--radius:var(--r-lg);--radius-small:var(--r-md)}.today-homework-overview{border:1px solid var(--line,#dce4ea);background:linear-gradient(115deg,#f8fbfd 0%,#eef4f8 100%);border-radius:20px;grid-template-columns:minmax(210px,.9fr) minmax(420px,1.6fr) auto;align-items:center;gap:24px;margin-bottom:18px;padding:22px 24px;display:grid}.today-homework-heading>span,.homework-create-card>div>span,.nfc-mode-card>span,.nfc-token-card>span{color:#6f8ba0;letter-spacing:.16em;font-size:11px;font-weight:800}.today-homework-heading h2{margin:5px 0 3px;font-size:20px}.today-homework-heading p{color:#8293a1;margin:0;font-size:13px}.today-homework-metrics{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.today-homework-metrics>span{border-left:1px solid #d5e0e7;padding:12px 14px}.today-homework-metrics small{color:#738695;font-size:12px;display:block}.today-homework-metrics strong{color:#253747;margin-top:5px;font-family:Georgia,serif;font-size:27px;display:block}.today-homework-metrics i{color:#8798a5;margin-left:3px;font-family:inherit;font-size:12px;font-style:normal}.homework-center{width:100%}.homework-tabs{background:#e8eef2;border-radius:14px;gap:4px;width:max-content;max-width:100%;margin-bottom:16px;padding:5px;display:flex;overflow-x:auto}.homework-tabs button{color:#6e7e8b;white-space:nowrap;background:0 0;border:0;border-radius:10px;min-width:92px;padding:10px 16px;font-weight:700}.homework-tabs button.active{color:#243747;background:#fff;box-shadow:0 4px 16px #273a4814}.homework-layout{grid-template-columns:minmax(310px,.72fr) minmax(0,1.75fr);align-items:start;gap:18px;display:grid}.homework-task-column{gap:16px;display:grid}.homework-create-card,.homework-task-list,.homework-record-card,.nfc-mode-card,.nfc-scan-card,.nfc-token-card{background:#fff;border:1px solid #dbe3e8;border-radius:20px;box-shadow:0 12px 36px #2839460b}.homework-create-card{gap:13px;padding:20px;display:grid}.homework-quick-create{color:#335b76;background:#edf5fa;border:1px solid #789bb5;border-radius:11px;width:100%;padding:11px 14px;font-weight:800}.homework-quick-create:hover{background:#e2eef6}.homework-quick-tip{color:#7f909c;margin-top:-7px;line-height:1.55}.homework-create-card h2,.nfc-token-card h2{color:#253746;margin:4px 0;font-size:21px}.homework-create-card p,.nfc-token-card p{color:#81919d;margin:0;font-size:13px;line-height:1.6}.homework-create-card label,.nfc-mode-card label,.nfc-token-card label{color:#516573;gap:7px;font-size:13px;font-weight:700;display:grid}.homework-create-card input,.homework-create-card select,.homework-create-card textarea,.homework-record-tools input,.homework-record-tools select,.nfc-mode-card select,.nfc-token-card select,.nfc-scan-card input{color:#2e414f;width:100%;min-width:0;font:inherit;background:#fbfcfd;border:1px solid #d7e0e6;border-radius:11px;outline:0;padding:11px 12px}.homework-create-card input:focus,.homework-create-card select:focus,.homework-create-card textarea:focus,.homework-record-tools input:focus,.nfc-scan-card input:focus{border-color:#789bb5;box-shadow:0 0 0 3px #688fac1f}.homework-form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.homework-task-list{padding:12px}.homework-task-list header{color:#344957;justify-content:space-between;padding:6px 7px 10px;display:flex}.homework-task-list header span{color:#83929d;font-size:12px}.homework-task-list>button{text-align:left;background:0 0;border:0;border-top:1px solid #edf1f4;grid-template-columns:auto 1fr;gap:3px 10px;width:100%;padding:13px 11px;display:grid}.homework-task-list>button>span{color:#426985;background:#eaf2f7;border-radius:8px;grid-row:1/3;align-self:center;padding:6px 8px;font-size:12px;font-weight:800}.homework-task-list>button strong{color:#304552;font-size:14px}.homework-task-list>button small{color:#8a99a4}.homework-task-list>button.active{background:#eef4f8;border-radius:12px}.homework-record-card{min-height:590px;overflow:hidden}.homework-record-heading{background:#f8fafb;border-bottom:1px solid #e5eaee;grid-template-columns:1fr auto;gap:24px;padding:24px;display:grid}.homework-record-heading span{color:#698396;font-size:12px;font-weight:800}.homework-record-heading h2{color:#243746;margin:6px 0 5px;font-size:24px}.homework-record-heading p{color:#758896;margin:0}.homework-heading-actions{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.homework-edit-toggle,.homework-delete-button{color:#47677d;background:#fff;border:1px solid #cad7df;border-radius:8px;padding:7px 10px;font-weight:700}.homework-delete-button{color:#9a5149;background:#fff8f7;border-color:#e6c5c0}.homework-edit-form{background:#f7fafb;border-bottom:1px solid #e2e8ec;grid-template-columns:1.2fr .65fr .8fr;gap:10px;padding:15px 20px;display:grid}.homework-edit-form input,.homework-edit-form select,.homework-edit-form textarea{color:#344b5a;min-width:0;font:inherit;background:#fff;border:1px solid #d4dfe5;border-radius:9px;padding:10px 11px}.homework-edit-form textarea{grid-column:1/-1}.homework-edit-form .primary-button{justify-self:start}.homework-quick-stats{grid-template-columns:repeat(4,70px);gap:7px;display:grid}.homework-quick-stats span{text-align:center;background:#fff;border:1px solid #e0e7eb;border-radius:12px;place-content:center;min-height:68px;display:grid}.homework-quick-stats strong{color:#2f4d63;font-size:21px;display:block}.homework-record-tools{border-bottom:1px solid #e8edf0;grid-template-columns:1fr 180px;gap:10px;padding:15px 20px;display:grid}.homework-student-table{padding:0 20px 20px}.homework-student-table article{border-bottom:1px solid #e9eef1;grid-template-columns:42px minmax(120px,1fr) auto minmax(230px,auto);align-items:center;gap:12px;padding:13px 0;display:grid}.homework-student-no{color:#45677e;background:#edf3f6;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.homework-student-table article>div>strong{color:#2f424f;display:block}.homework-student-table article>div>small{color:#8b9aa5}.homework-status{color:#627684;white-space:nowrap;background:#eef2f4;border-radius:999px;justify-content:center;min-width:58px;padding:6px 9px;font-size:12px;font-style:normal;font-weight:800;display:inline-flex}.homework-status-not_submitted{color:#a6534c;background:#faece9}.homework-status-pending_correction{color:#9a681e;background:#fff2d9}.homework-status-corrected{color:#3a6f91;background:#e8f2f8}.homework-status-completed{color:#3d775d;background:#e8f3ed}.homework-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.homework-row-actions button{color:#3d6077;white-space:nowrap;background:#fff;border:1px solid #cdd9e0;border-radius:8px;padding:7px 10px;font-size:12px;font-weight:700}.homework-row-actions button:not(.quiet){color:#fff;background:#496d86;border-color:#496d86}.homework-stats-panel{text-align:center;place-content:center;min-height:400px;display:grid}.homework-stats-panel strong{color:#355a74;font:700 64px/1 Georgia,serif}.homework-stats-panel span{color:#536b7b;margin-top:8px;font-weight:800}.homework-stats-panel p,.homework-empty{color:#8a99a4}.homework-error{color:#9a4944;background:#faecea;border-radius:10px;margin:14px 20px;padding:11px 13px}.announcement-management-stack{gap:22px;display:grid}.nfc-register-page{gap:18px;display:grid}.nfc-read-gateway{background:#edf2f5;place-items:center;min-height:100svh;padding:24px;display:grid}.nfc-read-gateway section{text-align:center;background:#fff;border:1px solid #d5e0e6;border-radius:26px;justify-items:center;width:min(100%,440px);padding:42px 28px;display:grid;box-shadow:0 24px 70px #2437461a}.nfc-read-gateway section>span{color:#fff;background:#3f637d;border:1px solid #abc1d0;border-radius:50%;place-items:center;width:92px;height:92px;margin-bottom:20px;font:800 20px/1 Georgia,serif;display:grid;box-shadow:0 0 0 12px #edf4f8}.nfc-read-gateway small{color:#7690a2;letter-spacing:.16em;font-size:11px;font-weight:800}.nfc-read-gateway h1{color:#263e50;margin:8px 0 10px;font-size:clamp(28px,8vw,38px)}.nfc-read-gateway p{color:#738691;margin:0;line-height:1.7}.nfc-read-gateway button{color:#fff;background:#3f637d;border:0;border-radius:10px;margin-top:20px;padding:11px 18px;font-weight:800}.nfc-link-pending{color:#31556f;background:#edf6fb;border:1px solid #b9d0df;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:14px 18px;display:flex}.nfc-link-pending span{color:#fff;white-space:nowrap;background:#4e7692;border-radius:999px;flex:none;padding:6px 9px;font-size:12px;font-weight:800}.nfc-link-pending strong{text-align:right;font-size:14px}.nfc-mode-card{grid-template-columns:auto 1fr minmax(260px,.8fr);align-items:center;gap:10px 22px;padding:18px 22px;display:grid}.nfc-mode-card>strong{color:#2e4657;font-size:18px}.nfc-mode-card>p{color:#7c8f9b;grid-column:1/3;margin:0;font-size:13px}.nfc-mode-card label{grid-area:1/3/3}.nfc-workspace{grid-template-columns:minmax(0,1.5fr) minmax(280px,.62fr);align-items:start;gap:18px;display:grid}.nfc-scan-card{overflow:hidden}.nfc-scan-card>header{color:#fff;background:#344f64;justify-content:space-between;gap:20px;padding:22px 24px;display:flex}.nfc-scan-card header small{color:#a9c3d5;letter-spacing:.12em;font-weight:800}.nfc-scan-card header h2{margin:5px 0 2px;font-size:23px}.nfc-scan-card header p{color:#c7d7e2;margin:0}.nfc-scan-card header button{color:#fff;white-space:nowrap;background:0 0;border:1px solid #ffffff4d;border-radius:9px;align-self:start;padding:8px 11px}.nfc-scan-stage{justify-items:center;padding:42px 20px 24px;display:grid}.nfc-scan-stage>span{color:#456a83;background:radial-gradient(circle,#fff 45%,#edf4f8 46%);border:1px solid #adc3d2;border-radius:50%;place-items:center;width:96px;height:96px;margin-bottom:15px;font:800 20px/1 Georgia,serif;display:grid;box-shadow:0 0 0 12px #f4f8fa}.nfc-scan-stage strong{color:#304553;font-size:21px}.nfc-scan-stage small{color:#8c9aa4;margin-top:6px}.nfc-scan-card>form{grid-template-columns:1fr 150px;gap:10px;padding:0 24px 18px;display:grid}.nfc-live-stats{border:1px solid #dfe7eb;border-radius:12px;grid-template-columns:1fr 1fr;margin:0 24px 20px;display:grid;overflow:hidden}.nfc-live-stats span{color:#788b98;text-align:center;padding:12px 16px}.nfc-live-stats span+span{border-left:1px solid #dfe7eb}.nfc-live-stats strong{color:#355872;margin-left:6px}.nfc-result{border-radius:14px;grid-template-columns:50px 1fr auto;align-items:center;gap:13px;margin:0 24px 24px;padding:15px;display:grid}.nfc-result.success{background:#eaf4ee}.nfc-result.duplicate{background:#fff1dc}.nfc-result>span{color:#fff;background:#527a64;border-radius:12px;place-items:center;width:44px;height:44px;font-weight:800;display:grid}.nfc-result.duplicate>span{background:#aa772c}.nfc-result small,.nfc-result p{color:#6c8275}.nfc-result strong{color:#29483a;font-size:17px;display:block}.nfc-result p{margin:3px 0 0;font-size:13px}.nfc-duplicate-actions{gap:6px;display:flex}.nfc-duplicate-actions button{background:#fff;border:1px solid #dab878;border-radius:8px;padding:8px 10px}.nfc-token-card{gap:14px;padding:22px;display:grid}.issued-token{background:#eef5f9;border:1px dashed #7398b2;border-radius:12px;gap:8px;padding:14px;display:grid}.issued-token small{color:#6d8493}.issued-token strong{overflow-wrap:anywhere;color:#2f5874;font-family:ui-monospace,monospace}.issued-token button{color:#355f7b;background:0 0;border:0;justify-self:start;font-weight:800}.issued-token-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.issued-token-actions button{color:#355872;white-space:nowrap;background:#fff;border:1px solid #b7cad7;border-radius:9px;width:100%;min-width:0;padding:9px 10px}.issued-token code{overflow-wrap:anywhere;color:#496273;background:#f2f6f8;border-radius:9px;padding:10px;font:600 11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;display:block}.nfc-privacy-note{border-top:1px solid #e2e8ec;padding-top:14px}.nfc-privacy-note strong{color:#3b5261}.child-homework-panel{margin:20px 0;padding:24px}.student-homework-panels{gap:16px;display:grid}.student-homework-summary{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.student-homework-summary article{background:#f8fafb;border:1px solid #e0e7eb;border-radius:13px;padding:15px}.student-homework-summary span{color:#778996;font-size:12px;display:block}.student-homework-summary strong{color:#31536a;margin-top:6px;font:700 26px/1 Georgia,serif;display:block}.student-homework-summary small{margin-left:3px;font:12px/1 sans-serif}.student-homework-history{border:1px solid #e0e7eb;border-radius:14px;overflow:hidden}.student-homework-history>header{background:#f5f8fa;justify-content:space-between;align-items:center;padding:13px 15px;display:flex}.student-homework-history header strong{color:#354b5a}.student-homework-history header small,.student-homework-history header span{color:#8595a0;margin-left:8px;font-size:12px}.homework-history-head,.homework-history-row{grid-template-columns:78px minmax(150px,1.5fr) 60px 70px 50px 70px;align-items:center;gap:8px;padding:10px 14px;display:grid}.homework-history-head{color:#82929d;background:#fbfcfd;font-size:12px;font-weight:800}.homework-history-row{color:#617582;border-top:1px solid #edf1f3;font-size:13px}.homework-history-row strong{color:#344b5a}.homework-empty{text-align:center;padding:20px}@media (width<=1080px){.today-homework-overview{grid-template-columns:1fr}.today-homework-metrics{grid-column:1}.homework-layout,.nfc-workspace,.nfc-mode-card{grid-template-columns:1fr}.nfc-mode-card>p,.nfc-mode-card label{grid-area:auto/1}.student-homework-summary{grid-template-columns:repeat(3,1fr)}}@media (width<=720px){.today-homework-overview{padding:18px}.today-homework-metrics{grid-template-columns:repeat(2,1fr)}.today-homework-metrics>span:nth-child(odd){border-left:0}.homework-layout{display:block}.homework-task-column{margin-bottom:14px}.homework-record-heading{grid-template-columns:1fr;padding:18px}.homework-quick-stats{grid-template-columns:repeat(4,1fr)}.homework-record-tools,.homework-edit-form{grid-template-columns:1fr;padding:13px}.homework-edit-form textarea{grid-column:1}.homework-student-table{padding:0 13px 16px}.homework-student-table article{grid-template-columns:38px minmax(0,1fr) auto}.homework-row-actions{grid-column:1/-1;justify-content:flex-start;padding-left:50px}.nfc-scan-card>header{padding:18px}.nfc-scan-card>form{grid-template-columns:1fr;padding:0 18px 16px}.nfc-live-stats,.nfc-result{margin-left:18px;margin-right:18px}.nfc-result{grid-template-columns:44px 1fr}.nfc-duplicate-actions{grid-column:1/-1}.nfc-link-pending{flex-direction:column;align-items:flex-start}.nfc-link-pending strong{text-align:left}.issued-token-actions{grid-template-columns:1fr}.student-homework-summary{grid-template-columns:repeat(2,1fr)}.student-homework-history{overflow-x:auto}.homework-history-head,.homework-history-row{min-width:640px}.child-homework-panel{padding:18px}}html,body{color:var(--text-primary);background:var(--bg);font-family:var(--font-sans)}h1,h2,h3,.metric-card>strong{font-family:var(--font-serif)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #7d9db557}.panel,.data-panel,.management-form,.work-record-panel,.notification-channel-panel,.password-panel{border-color:var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-card)}.primary-button,.class-hero-primary,.login-submit{border-radius:var(--r-md);color:var(--on-dark-strong);background:var(--brand);box-shadow:none;border:0;font-weight:700}.primary-button:hover,.class-hero-primary:hover,.login-submit:hover{background:var(--brand-deep)}.outline-button,.class-hero-secondary,.class-hero-child{border-color:var(--border);color:var(--text-body);background:var(--surface);box-shadow:none}.outline-button svg,.primary-button svg{flex:none}.quiet-button{color:var(--brand)}.section-kicker,.eyebrow{color:var(--gold-text);font-family:var(--font-sans);letter-spacing:.22em;font-size:11px;font-weight:700}.brand-mark,.brand-compact .brand-mark{color:var(--brand-deep);background:var(--brand-light);box-shadow:none;border-radius:11px;place-items:center;display:grid}.brand-mark>svg{position:static}.brand strong{color:inherit;font-family:var(--font-serif);letter-spacing:0;font-weight:800}.brand small{color:var(--text-muted);letter-spacing:.12em}.login-page{background:var(--bg);grid-template-columns:minmax(520px,1.2fr) minmax(430px,1fr);min-height:100vh}.login-story{min-height:100vh;color:var(--on-dark-strong);background:var(--brand)}.login-story:before{border:1.5px solid #c3d5e23d;width:420px;height:420px;top:-200px;right:-180px;box-shadow:0 0 0 80px #c3d5e21f}.login-story:after{display:none}.login-story-inner{grid-template-rows:auto auto minmax(180px,1fr) auto;max-width:900px;min-height:100vh;padding:48px clamp(42px,8vw,112px) 42px}.login-story .brand{color:var(--on-dark-strong)}.login-story .brand strong{color:var(--on-dark-strong);font-size:16px}.login-story .brand small{color:var(--brand-pale)}.login-copy{align-self:start;max-width:610px;margin-top:clamp(56px,8vh,88px)}.login-copy .eyebrow{color:var(--brand-pale);align-items:center;gap:12px;display:flex}.login-copy .eyebrow:before{content:"";background:var(--brand-light);width:28px;height:2px}.login-copy h1{color:var(--on-dark-strong);font-family:var(--font-serif);letter-spacing:-.04em;margin:25px 0 20px;font-size:clamp(54px,5vw,72px);font-weight:900;line-height:1.22}.login-copy h1 span{color:var(--brand-pale)}.login-copy h1 span:after{display:none}.login-copy>p{color:#a3b9c9;max-width:520px;font-size:14.5px;line-height:2}.login-growth-illustration{pointer-events:none;-webkit-user-select:none;user-select:none;align-self:end;height:clamp(205px,27vh,290px);min-height:190px;margin:8px -28px 8px -18px}.login-growth-illustration img{object-fit:contain;object-position:center bottom;opacity:.88;width:100%;height:100%;display:block}.trust-row{border:0;align-self:end;gap:34px;padding:0 0 clamp(18px,3vh,32px)}.trust-row>span{display:block}.trust-row i{width:auto;height:auto;color:var(--brand-pale);font-family:var(--font-serif);background:0 0;font-size:22px;font-style:normal;display:block}.trust-row p{margin-top:7px}.trust-row strong{color:var(--on-dark-strong);font-size:13px}.trust-row small{color:#8ba5b7;max-width:120px;font-size:11px;line-height:1.55}.login-panel{background:var(--bg);min-height:100vh;padding:48px clamp(40px,7vw,96px)}.login-form-wrap{width:min(100%,430px)}.login-compatibility-copy{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.login-heading h2{color:var(--text-primary);font-family:var(--font-serif);margin:16px 0 8px;font-size:34px;font-weight:900}.login-heading>p{color:var(--text-muted);font-size:13px}.login-form{margin-top:24px}.login-role-switch{border-radius:var(--r-md);background:var(--fill-soft);grid-template-columns:1fr 1fr;gap:4px;margin-bottom:24px;padding:4px;display:grid}.login-role-switch button{min-height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;font-size:13px;font-weight:700}.login-role-switch button.active{color:var(--brand);background:var(--surface);box-shadow:0 3px 9px #24313e14}.login-form>label>span{color:var(--text-body);font-size:12.5px}.input-shell{border:1.5px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);min-height:52px;padding:0 16px}.input-shell:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #33506b14}.input-shell>svg{color:var(--text-muted)}.input-shell input{color:var(--text-body)}.input-shell input::placeholder{color:var(--text-faint)}.input-shell button,.login-options>button{color:var(--gold-text)}.check-field input{accent-color:var(--brand)}.login-submit{border-radius:var(--r-md);letter-spacing:.12em;min-height:53px;margin-top:24px}.login-help{border-left:3px solid var(--brand-light);background:0 0;border-radius:0;gap:10px;margin-top:18px;padding:7px 0 7px 14px}.login-help>svg{color:var(--brand-light)}.login-help strong{color:var(--text-body)}.login-help small,.privacy-note{color:var(--text-muted)}.privacy-note a{color:var(--gold-text)}.parent-shell{min-height:100vh;color:var(--text-primary);background:var(--bg);font-family:var(--font-sans);padding-bottom:0}.parent-header{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);gap:28px;height:86px;padding:0 clamp(28px,4.2vw,76px)}.parent-header .brand-mark{width:38px;height:38px;color:var(--on-dark-strong);background:var(--brand);border-radius:12px;flex-basis:38px}.parent-header .brand strong{color:var(--text-primary);font-family:var(--font-serif);font-size:16px}.parent-top-nav{align-items:center;gap:6px;height:auto;padding:4px}.parent-top-nav button{border-radius:var(--r-pill);min-height:40px;color:var(--text-body);padding:0 19px;font-size:13px;font-weight:600}.parent-top-nav button:hover{color:var(--brand-deep);background:var(--fill-soft)}.parent-top-nav button.active{color:var(--on-dark-strong);background:var(--brand-deep)}.parent-top-nav button.active:after{display:none}.parent-header-actions{gap:12px}.parent-header .header-notification{border-color:var(--border);color:var(--brand);background:var(--surface)}.parent-header .user-chip span{background:var(--brand-light);border-radius:12px}.parent-main{padding:0 0 72px}.mist-class-home{width:100%;max-width:1440px;color:var(--text-primary);font-family:var(--font-sans);margin:0 auto;padding:0 clamp(34px,4.2vw,60px) 80px}.mist-class-home .class-hero{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(420px,.95fr) minmax(500px,1.05fr);align-items:center;gap:32px 58px;padding:50px 0 46px;display:grid;overflow:visible}.mist-class-home .class-hero>.today-summary{grid-column:1/-1;width:100%}.mist-class-home .class-hero-copy{width:auto;padding:0;position:relative}.mist-class-home .class-hero-copy>.eyebrow{color:var(--gold-text);align-items:center;gap:12px;display:flex}.mist-class-home .class-hero-copy>.eyebrow:before{content:"";background:var(--brand-light);width:28px;height:2px}.mist-class-home .class-hero h1{max-width:680px;color:var(--text-primary);font-family:var(--font-serif);letter-spacing:-.04em;margin:24px 0 18px;font-size:clamp(44px,4.1vw,62px);font-weight:900;line-height:1.26}.mist-class-home .class-hero h1 span{color:var(--brand);white-space:nowrap;position:relative}.mist-class-home .class-hero h1 span:after{content:"";background:var(--brand-pale);height:5px;position:absolute;bottom:-4px;left:0;right:0}.mist-class-home .hero-description{max-width:610px;color:var(--text-secondary);margin:0;font-size:14px;line-height:1.95}.mist-class-home .class-hero-actions{align-items:center;gap:16px;margin-top:26px;display:flex}.mist-class-home .class-hero-primary{border-radius:var(--r-pill);min-height:48px;padding:0 28px;font-size:14px}.mist-class-home .class-hero-secondary,.mist-class-home .class-hero-child{border:0;border-bottom:2px solid var(--brand-light);min-height:42px;color:var(--text-primary);background:0 0;border-radius:0;padding:0 0 3px;font-weight:700}.mist-class-home .teacher-message{border:0;border-left:3px solid var(--brand-light);max-width:600px;box-shadow:none;background:0 0;border-radius:0;align-items:center;gap:12px;margin-top:28px;padding:0 0 0 16px;display:flex}.mist-class-home .teacher-avatar{width:42px;height:42px;color:var(--on-dark-strong);background:var(--brand-deep);border-radius:12px;place-items:center;font-weight:700;display:grid}.mist-class-home .teacher-message small{color:var(--text-primary);font-size:12px;font-weight:700}.mist-class-home .teacher-message strong{color:var(--text-muted);margin-top:4px;font-size:11.5px;font-style:italic;font-weight:400}.mist-class-home .class-photo-carousel{z-index:2;border:5px solid var(--surface);width:88%;height:300px;box-shadow:var(--shadow-pop);background:#557795;border-radius:20px;justify-self:end;position:relative;overflow:visible;transform:rotate(2deg)}.mist-class-home .class-photo-carousel:before{content:"新学期第 1 周";z-index:-2;border:5px solid var(--surface);width:66%;height:68%;color:var(--text-primary);box-shadow:var(--shadow-pop);background:linear-gradient(135deg,#9db8cc,#b4c9d8);border-radius:18px;align-items:flex-end;padding:10px 14px;font-size:10px;font-weight:700;display:flex;position:absolute;bottom:-24%;left:-44%;transform:rotate(-5deg)}.mist-class-home .carousel-stage,.mist-class-home .carousel-slide{border-radius:15px;overflow:hidden}.mist-class-home .carousel-scrim{background:linear-gradient(#0000 62%,#24313e94)}.mist-class-home .carousel-copy{width:auto;max-width:70%;color:var(--text-primary);text-shadow:none;background:#ffffffeb;border-radius:9px;padding:7px 11px;inset:14px 14px auto auto}.mist-class-home .carousel-copy>span,.mist-class-home .carousel-copy p,.mist-class-home .carousel-copy small{display:none}.mist-class-home .carousel-copy h2{color:var(--text-primary);font-family:var(--font-sans);margin:0;font-size:10px;font-weight:700;line-height:1.4}.mist-class-home .carousel-controls{bottom:12px;left:16px;right:16px}.mist-class-home .carousel-pause{color:var(--text-primary);background:#ffffffe6}.mist-class-home .carousel-arrow{background:#24313e9e;width:34px;height:34px}.today-summary{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-card);grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.today-summary article{border-left:1px solid var(--border);min-width:0;min-height:126px;padding:23px 28px}.today-summary article:first-child{border-left:0}.today-summary article>div{color:var(--brand);align-items:center;gap:7px;display:flex}.today-summary article>div span{color:var(--text-muted);letter-spacing:.16em;font-size:11px;font-weight:700}.today-summary article>strong{color:var(--text-primary);font-family:var(--font-serif);-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;margin-top:10px;font-size:19px;display:-webkit-box;overflow:hidden}.today-summary article>p{color:var(--text-secondary);-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;margin:7px 0 0;font-size:12px;line-height:1.65;display:-webkit-box;overflow:hidden}.home-content-summary{grid-template-columns:1.5fr 1fr;gap:18px;margin-top:18px;display:grid}.home-content-summary>.panel{min-height:176px;padding:22px 26px}.home-content-summary .panel-header h2{color:var(--text-primary);margin:0;font-size:16px}.home-content-summary .panel-header>button{color:var(--brand);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:4px 0;font-size:11px;font-weight:700;display:inline-flex}.compact-announcements{margin-top:9px}.compact-announcements .announcement-item{border:0;border-top:1px dashed var(--border);width:100%;min-height:33px;color:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 0;display:grid}.compact-announcements .announcement-item:first-child{border-top:0}.announcement-bullet{background:var(--brand);border-radius:50%;width:7px;height:7px}.bullet-1{background:var(--brand-light)}.bullet-2{background:#a9bac9}.compact-announcements .announcement-item h3{color:var(--text-body);font-family:var(--font-sans);-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;margin:0;font-size:12.5px;font-weight:600;line-height:1.45;display:-webkit-box;overflow:hidden}.compact-announcements .announcement-item time{color:var(--text-faint);font-size:10.5px}.album-preview-grid{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px;display:grid}.album-preview{border-radius:var(--r-md);min-height:70px;color:var(--on-dark-strong);cursor:pointer;background:linear-gradient(135deg,#4e708d,#6f8fa8);border:0;align-items:flex-end;padding:8px;display:flex;position:relative;overflow:hidden}.album-preview:after{content:"";background:linear-gradient(#0000,#1825319e);position:absolute;inset:38% 0 0}.album-preview img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.album-preview>span{z-index:1;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;position:relative;overflow:hidden}.album-preview-1{background:linear-gradient(135deg,#8ba8bd,#b6cad8)}.album-preview-2{background:linear-gradient(135deg,#8095a8,#a7b7c5)}.album-preview-empty{color:var(--text-muted);background:var(--fill-soft);grid-column:1/-1}.album-preview-empty:after{display:none}.album-preview-panel>p{color:var(--text-faint);margin:10px 0 0;font-size:10.5px}.class-detail-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;display:grid}.class-detail-grid>.panel,.mist-class-home>.honor-panel{padding:24px}.class-detail-grid .class-calendar-section{margin:0}.class-calendar-card time{border:0;border-right:2px solid var(--brand-pale);color:var(--brand);background:0 0;border-radius:0}.mist-class-home>.honor-panel{margin-top:18px}.management-photo-note{color:var(--text-muted);align-items:center;gap:8px;margin-top:14px;font-size:11px;display:flex}.class-title-sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.class-content-page{width:min(1180px,100% - 48px);min-height:calc(100vh - 158px);margin:0 auto;padding:58px 0 84px}.class-content-heading{max-width:720px}.class-content-heading>button{min-height:38px;color:var(--brand);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;margin-bottom:30px;padding:0;font-size:12px;font-weight:700;display:inline-flex}.class-content-heading .section-kicker{color:var(--brand-light)}.class-content-heading h1{color:var(--text-primary);font-family:var(--font-serif);margin:10px 0 12px;font-size:clamp(34px,4vw,52px);line-height:1.2}.class-content-heading>p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.8}.class-announcement-page-list{gap:14px;margin-top:34px;display:grid}.class-announcement-page-list article{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-card);padding:25px 28px}.class-announcement-page-list article.is-selected{border-color:var(--brand-light);box-shadow:0 16px 46px #33506b21}.class-announcement-page-list article>div{color:var(--text-faint);justify-content:space-between;gap:16px;font-size:11px;display:flex}.class-announcement-page-list article>div span{color:var(--brand);font-weight:700}.class-announcement-page-list h2{color:var(--text-primary);margin:12px 0 9px;font-size:19px}.class-announcement-page-list article>p{color:var(--text-body);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.9}.class-album-page-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px;display:grid}.class-album-page-grid>button{border:1px solid var(--border);border-radius:var(--r-lg);color:inherit;background:var(--surface);box-shadow:var(--shadow-card);text-align:left;cursor:pointer;padding:0;transition:transform .16s,box-shadow .16s;overflow:hidden}.class-album-page-grid>button:hover{box-shadow:var(--shadow-pop);transform:translateY(-3px)}.class-album-cover{background:linear-gradient(135deg,#6f8fa8,#b6cad8);height:210px;display:block}.class-album-cover img,.album-cover-placeholder{width:100%;height:100%}.class-album-cover img{object-fit:cover;display:block}.album-cover-placeholder{color:#fffc;place-items:center;display:grid}.class-album-copy{padding:18px 20px 20px;display:grid}.class-album-copy small{color:var(--text-faint);font-size:10.5px}.class-album-copy strong{color:var(--text-primary);margin-top:7px;font-size:17px}.class-album-copy>span{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:7px;font-size:12px;line-height:1.65;display:-webkit-box;overflow:hidden}.album-photo-wall{columns:3 260px;column-gap:16px;margin-top:34px}.album-photo-wall figure{break-inside:avoid;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-card);margin:0 0 16px;overflow:hidden}.album-photo-wall img{width:100%;height:auto;display:block}.album-photo-wall figcaption{color:var(--text-secondary);padding:12px 14px 14px;font-size:11px;line-height:1.6}.class-content-empty{border:1px dashed var(--border);border-radius:var(--r-lg);min-height:230px;color:var(--text-muted);background:var(--surface);text-align:center;align-content:center;place-items:center;gap:8px;margin-top:34px;display:grid}.class-content-empty h2,.class-content-empty p{margin:0}.class-content-empty h2{color:var(--text-primary);font-size:17px}.class-content-empty p{font-size:12px}.parent-bottom-nav{display:none}.teacher-shell{background:var(--bg);grid-template-columns:230px minmax(0,1fr);min-height:100vh}.teacher-sidebar{background:var(--brand-deep);scrollbar-color:#c3d5e23d transparent;border:0;height:100vh;padding:24px 14px}.teacher-sidebar .sidebar-brand{border-bottom:1px solid #f2f6f91a;padding:0 8px 18px}.teacher-sidebar .brand{color:var(--on-dark-strong)}.teacher-sidebar .brand-mark{width:36px;height:36px;color:var(--brand-deep);background:var(--brand-light);flex-basis:36px}.teacher-sidebar .brand strong{color:var(--on-dark-strong);font-size:14.5px}.teacher-sidebar .brand small{color:var(--on-dark-muted);font-size:10px}.class-mini-card,.privacy-reminder{display:none}.nav-group>span{color:#74848f;letter-spacing:.18em;padding:0 10px 7px;font-size:10px}.nav-group button{min-height:38px;color:var(--on-dark-body);border:1px solid #0000;border-radius:10px;grid-template-columns:22px 1fr auto;gap:7px;padding:0 12px}.nav-group button:hover{color:var(--on-dark-strong);background:#7d9db514}.nav-group button.active{color:var(--brand-pale);background:#7d9db524;border-color:#7d9db559}.nav-group button.active:before{display:none}.nav-group i{place-items:center;display:grid}.nav-group strong{font-size:13.5px;font-weight:500}.nav-group small{min-width:20px;height:18px;color:var(--brand-deep);background:var(--brand-light);padding:0 6px;font-size:10px}.sidebar-user{border-radius:var(--r-md);background:#f2f6f90f;border:0;margin-top:16px;padding:12px}.sidebar-user>span{color:var(--brand-deep);background:var(--brand-light);border-radius:10px}.sidebar-user strong{color:var(--on-dark-strong);font-size:11px}.sidebar-user small{color:var(--on-dark-muted);font-size:8px}.sidebar-user .icon-button{color:var(--on-dark-muted);background:0 0}.teacher-workspace{background:var(--bg);min-width:0}.student-archive-drawer{width:max(64vw,960px);max-width:calc(100vw - 52px)}@media (width>=901px){.archive-hero{gap:18px;min-height:146px;padding:30px 78px 28px 32px}.archive-avatar{border-radius:20px;flex-basis:68px;width:68px;height:68px;font-size:26px}.archive-hero small{font-size:10px}.archive-hero h2{margin-block:5px 3px;font-size:32px}.archive-hero p,.archive-status{font-size:11px}.archive-scroll{padding:24px 28px 68px;font-size:11px}.archive-summary{gap:14px}.archive-summary article{min-height:92px;padding:18px}.archive-summary small{margin-bottom:9px;font-size:10px}.archive-summary strong{font-size:23px}.archive-summary span,.archive-summary article:last-child strong{font-size:11px}.archive-teacher-note{margin-top:14px;padding:18px 20px}.archive-teacher-note small{font-size:10px}.archive-teacher-note p{font-size:13px;line-height:1.75}.archive-grid{gap:14px;margin-top:14px}.archive-section{padding:20px}.archive-section>header{margin-bottom:15px}.archive-section>header h3{font-family:var(--font-sans);font-size:15px;font-weight:800}.archive-section>header span{min-width:27px;height:27px;font-size:10px}.archive-empty{min-height:76px;font-size:11px}.archive-facts dt,.archive-people small,.archive-role-list small,.archive-role-list p,.archive-record-list small,.archive-record-list p,.archive-score-toolbar>div:first-child span{font-size:10px}.archive-facts dd,.archive-people strong,.archive-role-list strong,.archive-record-list strong{font-size:12px}.archive-role-list article{padding:15px}.archive-score-toolbar>div:first-child strong{font-size:11px}.archive-score-toolbar button,.archive-score-upload,.score-form-actions button,.archive-score-preview>header button,.score-upload-confirm{min-height:36px;padding-inline:13px;font-size:10px}}.teacher-topbar{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;border:0;height:86px;padding:0 34px}.breadcrumb{color:var(--text-muted);font-size:10px}.topbar-search{border-color:var(--border);border-radius:var(--r-pill);min-width:250px;min-height:40px;color:var(--text-muted);background:var(--surface)}.topbar-search small{color:var(--text-faint);background:0 0;border:0}.topbar-notification{border-color:var(--border);width:40px;height:40px;color:var(--text-body);border-radius:50%}.teacher-main{max-width:1440px;padding:0 34px 60px}.teacher-page-heading{align-items:center;margin-bottom:20px}.teacher-page-heading .section-kicker{display:none}.teacher-page-heading h1{color:var(--text-primary);font-family:var(--font-serif);margin:0 0 4px;font-size:28px;font-weight:900}.teacher-page-heading p{color:var(--text-muted);font-size:12px}.metric-grid{grid-template-columns:repeat(4,1fr);gap:15px}.metric-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);min-height:122px;box-shadow:none;padding:18px 20px;display:block}.metric-card:after{display:none}.metric-card>small,.metric-card>strong,.metric-card>span{display:block}.metric-card>small{color:inherit;font-size:11px;font-weight:700}.metric-card>strong{color:inherit;margin-top:14px;font-size:32px;font-weight:900;line-height:1}.metric-card>span{color:var(--text-muted);margin-top:10px;font-size:10.5px}.metric-card.metric-brand{border-color:var(--brand);color:var(--on-dark-strong);background:var(--brand)}.metric-card.metric-deep{border-color:var(--brand-deep);color:var(--on-dark-strong);background:var(--brand-deep)}.metric-card.metric-brand>span,.metric-card.metric-deep>span{color:var(--on-dark-body)}.metric-progress{border-radius:50%;width:38px;height:38px;position:absolute;top:18px;right:18px}.metric-progress:after{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:6px}.overview-grid{grid-template-columns:1.8fr 1fr;gap:16px;margin-top:16px}.activity-panel,.todo-panel,.recent-updates{padding:22px 24px}.activity-panel .panel-header h2,.todo-panel .panel-header h2,.recent-updates .panel-header h2{color:var(--text-primary);margin:0;font-size:16px}.activity-chart{grid-template-columns:repeat(7,1fr);align-items:end;gap:24px;height:135px;margin-top:12px;padding:8px 22px 0;display:grid}.activity-chart>div{grid-template-rows:1fr auto;place-items:end center;gap:8px;height:100%;display:grid}.activity-chart>div>span{background:var(--fill-bar);border-radius:7px 7px 2px 2px;width:min(100%,44px);min-height:14px}.activity-chart>div:nth-child(3)>span,.activity-chart>div:nth-child(4)>span,.activity-chart>div:nth-child(5)>span{background:var(--brand)}.activity-chart small{color:var(--text-muted);font-size:10px}.activity-legend{color:var(--text-secondary);gap:18px;margin-top:10px;font-size:10px;display:flex}.activity-legend span{align-items:center;gap:6px;display:flex}.activity-legend i{background:var(--brand);border-radius:2px;width:8px;height:8px}.activity-legend span:last-child i{background:var(--fill-bar)}.todo-count{color:var(--gold-text);background:0 0;font-size:10px}.todo-list{margin-top:8px}.todo-list button{border-top:1px dashed var(--border);grid-template-columns:28px minmax(0,1fr) auto;min-height:58px;padding:8px 0}.todo-list button:first-child{border-top:0}.todo-index{border-radius:var(--r-sm);width:27px;height:27px;color:var(--gold-text);background:var(--bg);font-family:var(--font-serif);place-items:center;font-size:11px;display:grid}.todo-list p strong{color:var(--text-body);font-size:12px}.todo-list p small{color:var(--text-muted);font-size:9.5px}.task-tag,.tag{border-radius:var(--r-pill);font-family:var(--font-sans);padding:3px 10px;font-size:10px;font-style:normal;font-weight:700}.tag-urgent{color:var(--danger);background:var(--danger-bg)}.tag-major{color:var(--gold-text);background:var(--gold-bg)}.tag-normal{color:var(--info-text);background:var(--info-bg)}.recent-updates{margin-top:16px}.recent-student-list{gap:13px;margin-top:12px;display:flex;overflow-x:auto}.recent-student-list>button{cursor:pointer;background:0 0;border:0;justify-items:center;gap:6px;min-width:48px;padding:0;display:grid}.recent-student-list .student-initial{background:var(--avatar-1);border-radius:12px;width:42px;height:42px}.recent-student-list>button:nth-child(2) .student-initial{background:var(--avatar-2)}.recent-student-list>button:nth-child(3) .student-initial{background:var(--avatar-3)}.recent-student-list>button:nth-child(4) .student-initial{background:var(--avatar-4)}.recent-student-list>button:nth-child(5) .student-initial{background:var(--avatar-5)}.recent-student-list>button:nth-child(6) .student-initial{background:var(--avatar-6)}.recent-student-list>button:nth-child(7) .student-initial{background:var(--avatar-7)}.recent-student-list>button:nth-child(8) .student-initial{background:var(--avatar-8)}.recent-student-list>button>strong{color:var(--text-secondary);font-family:var(--font-sans);font-size:10px;font-weight:500}.management-layout,.teacher-profile-grid,.home-visit-layout{gap:18px}.management-form input,.management-form select,.management-form textarea,.work-record-toolbar input,.password-panel input{border-color:var(--border-strong);border-radius:var(--r-md);color:var(--text-body);background:var(--surface)}.management-form input:focus,.management-form select:focus,.management-form textarea:focus,.work-record-toolbar input:focus,.password-panel input:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 4px #33506b14}.student-hero,.account-card{background:linear-gradient(135deg, var(--fill-soft), #f9fbfc)}.growth-stat,.latest-comment,.class-participation-panel,.message-list,.settings-list,.notification-channel-panel{border-color:var(--border);background:var(--surface);box-shadow:var(--shadow-card)}.settings-list>a>span,.settings-list>button>span,.message-list article>i{color:var(--brand);background:var(--info-bg)}@media (width<=1100px){.parent-header{grid-template-columns:1fr auto}.parent-top-nav{display:none}.parent-bottom-nav{display:grid}.mist-class-home .class-hero{grid-template-columns:1fr 1fr;gap:36px}.mist-class-home .class-photo-carousel{width:92%;height:280px}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=880px){.login-page{grid-template-columns:1fr}.login-story{min-height:auto}.login-story-inner{flex-direction:column;min-height:auto;padding:34px 28px 38px;display:flex}.login-copy{z-index:2;width:100%;margin-top:52px;padding:0;position:static;inset:auto;transform:none}.login-copy h1{font-size:48px}.login-growth-illustration{aspect-ratio:16/9;z-index:1;flex:none;align-self:center;width:min(100%,560px);height:auto;min-height:0;margin:26px auto 12px;position:static}.trust-row{margin-top:18px;padding:0}.login-panel{min-height:auto;padding:58px 28px 72px}.teacher-shell{display:block}.teacher-sidebar{width:260px;position:fixed;transform:translate(-100%)}.teacher-sidebar.open{transform:translate(0)}.sidebar-close,.mobile-menu{place-items:center;display:grid}.teacher-topbar{padding:0 18px}.teacher-main{padding:0 18px 54px}.overview-grid,.home-content-summary,.class-detail-grid{grid-template-columns:1fr}.class-album-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-chart{gap:14px}}@media (width<=700px){.student-archive-drawer{width:100vw;max-width:100vw}.parent-header{height:66px;padding:0 16px}.parent-header .brand strong{font-size:14px}.parent-header-actions{gap:7px}.parent-header .header-notification{width:36px;height:36px}.parent-header .user-chip strong{display:none}.mist-class-home{padding:0 16px 88px}.mist-class-home .class-hero{grid-template-columns:1fr;gap:42px;min-height:auto;padding:36px 0 56px}.mist-class-home .class-hero-copy{order:1}.mist-class-home .class-hero>.today-summary{order:2}.mist-class-home .class-photo-carousel{order:3}.mist-class-home .class-hero h1{font-size:39px;line-height:1.32}.mist-class-home .hero-description{font-size:13px}.mist-class-home .class-hero-actions{flex-wrap:wrap}.mist-class-home .class-hero-primary{width:100%}.mist-class-home .class-photo-carousel{justify-self:end;width:88%;height:230px}.mist-class-home .class-photo-carousel:before{bottom:-24%;left:-18%}.today-summary{grid-template-columns:1fr}.today-summary article{border-top:1px solid var(--border);border-left:0;min-height:auto;padding:20px}.today-summary article:first-child{border-top:0}.home-content-summary>.panel,.class-detail-grid>.panel,.mist-class-home>.honor-panel{padding:20px}.album-preview-grid{gap:6px}.class-content-page{width:calc(100% - 32px);padding:36px 0 110px}.class-content-heading>button{margin-bottom:20px}.class-content-heading h1{font-size:34px}.class-announcement-page-list article{padding:21px 20px}.class-album-page-grid{grid-template-columns:1fr}.class-album-cover{height:220px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px}.metric-card{min-height:116px;padding:16px}.metric-card>strong{font-size:28px}.topbar-search{justify-content:center;width:40px;min-width:0;padding:0}.topbar-search span,.topbar-search small{display:none}.teacher-page-heading{align-items:flex-start}.teacher-page-heading h1{font-size:25px}.teacher-page-heading .outline-button{min-height:38px;padding:0 12px}.activity-panel,.todo-panel,.recent-updates{padding:18px}.activity-chart{gap:8px;height:120px;padding-inline:4px}}.ai-tools-layout{grid-template-columns:minmax(0,1fr) minmax(250px,.34fr);align-items:start;gap:18px;display:grid}.ai-tools-panel,.to-desk-update-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffd1;border:1px solid #51748f29;border-radius:22px;box-shadow:0 16px 40px #415b6f17}.ai-tools-panel{padding:24px}.ai-tools-panel-heading{align-items:center;gap:13px;display:flex}.ai-tools-panel-heading>span,.to-desk-update-icon{color:#426d89;background:linear-gradient(145deg,#e7f1f7,#f8fbfd);border-radius:15px;flex:none;place-items:center;width:46px;height:46px;display:grid;box-shadow:inset 0 0 0 1px #436c8814}.ai-tools-panel-heading h2,.to-desk-update-card h2{color:var(--text-strong);letter-spacing:-.02em;margin:0;font-size:21px}.ai-tools-panel-heading p{color:var(--text-muted);margin:4px 0 0;font-size:14px}.ai-tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.ai-tool-grid>a{min-width:0;min-height:126px;color:var(--text-strong);background:#f8fbfdeb;border:1px solid #51748f24;border-radius:17px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;padding:17px;text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid}.ai-tool-grid>a:hover{border-color:#3d6f9152;transform:translateY(-2px);box-shadow:0 12px 24px #385b741a}.ai-tool-grid i{color:#426d89;background:#eaf2f7;border-radius:12px;place-items:center;width:38px;height:38px;font-style:normal;display:grid}.ai-tool-grid strong,.ai-tool-grid small{display:block}.ai-tool-grid strong{margin-top:2px;font-size:16px}.ai-tool-grid small{color:var(--text-muted);margin-top:7px;font-size:13px;line-height:1.6}.ai-tool-grid>a>svg{color:#7893a7;margin-top:10px}.ai-privacy-note{color:#5c7180;background:#e9f1f6b8;border-radius:15px;align-items:flex-start;gap:11px;margin-top:16px;padding:14px 16px;display:flex}.ai-privacy-note svg{color:#4f788f;flex:none;margin-top:2px}.ai-privacy-note p,.ai-privacy-note strong,.ai-privacy-note span{margin:0;display:block}.ai-privacy-note strong{color:var(--text-strong);margin-bottom:3px;font-size:13px}.ai-privacy-note span{font-size:13px;line-height:1.65}.to-desk-update-card{padding:24px}.to-desk-update-card>small{color:#7690a3;letter-spacing:.16em;margin-top:20px;font-size:10px;font-weight:800;display:block}.to-desk-update-card h2{margin-top:7px}.to-desk-update-card p{color:var(--text-muted);margin:9px 0 19px;font-size:14px}.to-desk-update-card>a{color:#fff;background:linear-gradient(135deg,#4d7894,#355e79);border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 15px;font-size:14px;font-weight:800;text-decoration:none;display:flex;box-shadow:0 10px 22px #355e7930}.to-desk-update-card>span:last-child{color:var(--text-muted);margin-top:14px;font-size:12px;line-height:1.65;display:block}@media (width<=1050px){.ai-tools-layout{grid-template-columns:1fr}.to-desk-update-card{max-width:none}}@media (width<=760px){.ai-tool-grid{grid-template-columns:1fr}.ai-tool-grid>a{min-height:0}}@media (width<=480px){.login-copy h1{font-size:42px}.login-growth-illustration{aspect-ratio:16/9;width:88%;height:auto;min-height:0;margin:20px auto 8px}.trust-row{grid-template-columns:1fr;gap:18px}.trust-row>span{grid-template-columns:36px 1fr;gap:10px;display:grid}.trust-row p{margin-top:0}.login-panel{padding-inline:20px}.mist-class-home .class-hero h1{font-size:34px}.mist-class-home .teacher-message{align-items:flex-start}.album-preview-grid{grid-template-columns:1fr 1fr}.album-preview:last-child:nth-child(3){display:none}.metric-grid{grid-template-columns:1fr}.metric-card{min-height:108px}}.teacher-shell{grid-template-columns:270px minmax(0,1fr);font-size:14px}.teacher-sidebar{padding:26px 16px 20px}.teacher-sidebar .sidebar-brand{padding-inline:10px}.teacher-sidebar .brand-mark{flex-basis:42px;width:42px;height:42px}.teacher-sidebar .brand strong{font-size:16px;line-height:1.35}.teacher-sidebar .brand small{margin-top:3px;font-size:11px;line-height:1.4}.teacher-nav{padding-top:15px}.nav-group{margin-bottom:15px}.nav-group>span{padding:0 11px 8px;font-size:11.5px;line-height:1.45}.nav-group button{grid-template-columns:24px minmax(0,1fr) auto;gap:8px;min-height:44px;padding:7px 13px}.nav-group i{min-width:0}.nav-group strong{overflow-wrap:anywhere;min-width:0;font-size:15px;line-height:1.35}.nav-group small{min-width:22px;height:20px;font-size:11px}.sidebar-user{grid-template-columns:auto minmax(0,1fr) auto;padding:13px}.sidebar-user p{min-width:0}.sidebar-user strong{overflow-wrap:anywhere;font-size:13px;line-height:1.4}.sidebar-user small{margin-top:2px;font-size:10.5px;line-height:1.4}.teacher-topbar{height:92px;padding-inline:38px}.breadcrumb,.topbar-search{font-size:12.5px}.topbar-search{min-width:290px;min-height:44px;padding-inline:14px}.topbar-search small{font-size:11px}.topbar-notification{width:44px;height:44px}.teacher-main{max-width:1580px;padding:0 38px 68px;font-size:14px}.teacher-main :where(section,article,form,div,header,footer){min-width:0}.teacher-main p,.teacher-main small,.teacher-main label,.teacher-main td,.teacher-main th{overflow-wrap:anywhere;word-break:normal}.teacher-main p{font-size:13px}.teacher-main small{font-size:12px}.teacher-page-heading{flex-wrap:wrap;align-items:flex-start;margin-bottom:24px}.teacher-page-heading>div{flex:420px;min-width:0}.teacher-page-heading h1{margin-bottom:7px;font-size:32px;line-height:1.25}.teacher-page-heading p{font-size:14px;line-height:1.65}.metric-card{min-height:136px;padding:21px 22px}.metric-card>small{font-size:13px}.metric-card>strong{margin-top:16px;font-size:35px}.metric-card>span{margin-top:12px;font-size:12.5px;line-height:1.45}.activity-panel .panel-header h2,.todo-panel .panel-header h2,.recent-updates .panel-header h2,.data-panel-header h2,.management-form-heading h2{font-size:18px;line-height:1.4}.data-panel-header,.management-form-heading,.panel-header,.preview-toolbar,.carousel-manager-intro{flex-wrap:wrap}.data-panel-header p,.management-form-heading p,.carousel-manager-intro p{font-size:13px;line-height:1.65}.activity-chart small,.activity-legend,.todo-count,.todo-list p small,.recent-student-list>button>strong{font-size:12px}.todo-list p strong{font-size:14px;line-height:1.45}.todo-list button{grid-template-columns:30px minmax(0,1fr) auto;min-height:66px}.task-tag,.tag,.status-pill,.record-count{font-size:11.5px}.teacher-main input:not([type=checkbox]):not([type=radio]):not([type=file]),.teacher-main select,.teacher-main textarea{font-size:13.5px;line-height:1.55}.management-form input:not([type=checkbox]):not([type=file]),.management-form select{min-height:48px;padding-inline:14px}.management-form textarea{padding:12px 14px}.management-form label>span,.carousel-upload-fields label>span,.carousel-manager-card form>label>span,.attendance-toolbar>label span,.home-visit-history-filters label>span,.visit-text-field>span,.visit-question legend{font-size:13px;line-height:1.45}.management-form-heading{align-items:flex-start}.form-badge{flex-basis:42px;width:42px;height:42px}.form-actions{flex-wrap:wrap}.form-actions span,.form-error,.file-drop small{font-size:12px;line-height:1.55}.file-drop strong{font-size:14px}.teacher-main :where(button,.primary-button,.outline-button,.quiet-button){font-size:13px;line-height:1.35}.teacher-main :where(.primary-button,.outline-button,.quiet-button,.text-button,.row-action){white-space:nowrap}.responsive-table{overscroll-behavior-inline:contain;max-width:100%;overflow-x:auto}.responsive-table table{table-layout:auto;min-width:760px}.responsive-table th,.responsive-table td{white-space:normal;vertical-align:middle;padding:15px 16px;line-height:1.55}.responsive-table th{font-size:12.5px}.responsive-table td{font-size:13.5px}.table-person{min-width:0}.table-person i{flex:0 0 34px;width:34px;height:34px;font-size:11px}.table-tools,.carousel-manager-card>form>div,.homepage-editor-actions,.visit-form-actions{flex-wrap:wrap}.table-tools button,.segmented-control button,.row-action,.home-visit-pagination button,.management-record-list small,.management-record-list p{font-size:12px}.management-record-list h3{font-size:15px}.management-record-list article{grid-template-columns:auto minmax(0,1fr) auto}.teacher-profile-preview>small,.teacher-profile-class span,.teacher-profile-contact small,.settings-security-grid small,.settings-security-grid p,.future-panel p,.future-tags span{font-size:12px;line-height:1.6}.teacher-profile-preview>p,.teacher-profile-contact strong,.settings-security-grid h2{font-size:14px}.teacher-profile-preview h2{font-size:26px}.visit-form-header span,.visit-form-header>small,.visit-stepper button,.visit-section-heading p,.question-hint,.visit-question legend small,.profile-preview-card header span,.profile-tag-group>small,.attention-preview small,.recent-visit-card>header p,.recent-visit-list small,.recent-visit-list p,.home-visit-history-summary,.home-visit-pagination span{font-size:11.5px;line-height:1.5}.visit-section-heading h4,.profile-preview-card h3,.recent-visit-card h3{font-size:16px}.visit-choice,.profile-preview-card>p,.recent-visit-list h4,.recent-visit-list button,.visit-complete,.visit-empty,.visit-form-actions button{font-size:12.5px}.parenting-notes,.profile-tag,.profile-preview-card>footer{font-size:11.5px;line-height:1.6}.carousel-manager-grid{align-items:start}.carousel-manager-card{min-width:0}.carousel-manager-thumb{aspect-ratio:16/9;background-position:50%;background-repeat:no-repeat;background-size:cover;width:100%;min-height:0;overflow:hidden}.carousel-manager-thumb>span{font-size:12px}.teacher-class-preview .class-photo-carousel,.teacher-class-preview .carousel-stage,.teacher-class-preview .carousel-slide{min-width:0;overflow:hidden}.teacher-class-preview .carousel-stage,.teacher-class-preview .carousel-slide{width:100%;height:100%}.teacher-class-preview .carousel-slide img,.teacher-class-preview .class-photo-carousel img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=1100px){.teacher-shell{grid-template-columns:258px minmax(0,1fr)}.teacher-topbar,.teacher-main{padding-inline:24px}}@media (width<=880px){.teacher-shell{display:block}.teacher-sidebar{width:min(286px,86vw)}.teacher-topbar{height:76px;padding-inline:18px}.teacher-main{padding:0 18px 58px}.breadcrumb{display:none}}@media (width<=700px){.teacher-page-heading h1{font-size:28px}.teacher-page-heading p{font-size:13px}.responsive-table table{min-width:680px}.carousel-manager-thumb{aspect-ratio:4/3}.management-record-list article{grid-template-columns:auto minmax(0,1fr)}.management-record-list article>button{grid-column:2;justify-self:start}}.smart-import-notice,.smart-import-analysis,.generated-credentials-notice,.import-account-option{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);margin-top:16px}.smart-import-notice{background:linear-gradient(135deg, var(--info-bg), var(--surface));grid-template-columns:42px minmax(0,1fr);align-items:center;gap:13px;padding:16px 18px;display:grid}.smart-import-notice>span{width:42px;height:42px;color:var(--on-dark-strong);background:var(--brand);letter-spacing:.05em;border-radius:13px;place-items:center;font-size:12px;font-weight:850;display:grid}.smart-import-notice strong,.generated-credentials-notice strong,.import-account-option strong{font-size:14px;line-height:1.45;display:block}.smart-import-notice p,.generated-credentials-notice p{color:var(--text-muted);margin:4px 0 0;font-size:12px;line-height:1.65}.smart-import-analysis{background:var(--fill-soft);padding:18px}.smart-import-analysis>div:first-child{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.smart-import-analysis>div:first-child strong{font-size:15px}.smart-import-analysis>div:first-child span{border-radius:var(--r-pill);color:var(--info-text);background:var(--info-bg);padding:5px 9px;font-size:11px;font-weight:750}.smart-import-analysis>p{color:var(--text-secondary);margin:8px 0 0;font-size:12px;line-height:1.6}.import-mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.import-mapping-grid label{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);grid-template-columns:minmax(90px,.8fr) auto minmax(130px,1fr);align-items:center;gap:8px;min-width:0;padding:10px 11px;display:grid}.import-mapping-grid label>span{min-width:0;color:var(--text-body);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.import-mapping-grid label>b{color:var(--text-faint);font-size:12px}.import-mapping-grid select{border:1px solid var(--border-strong);width:100%;min-width:0;min-height:38px;color:var(--text-body);background:var(--surface);border-radius:9px;padding:0 10px;font-size:12px}.smart-import-analysis .mapping-warning{color:var(--danger);background:var(--danger-bg);border-radius:10px;margin-top:12px;padding:9px 11px;font-weight:700}.import-account-option{cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;padding:14px 16px;display:grid!important}.import-account-option input{width:18px;height:18px;accent-color:var(--brand);margin-top:2px}.import-account-option>span{margin:0!important}.import-account-option small{color:var(--text-muted);margin-top:3px;font-size:11px;line-height:1.55;display:block}.generated-credentials-notice{background:var(--gold-bg);border-color:#b1762447;justify-content:space-between;align-items:center;gap:16px;padding:15px 16px;display:flex}.generated-credentials-notice .outline-button{flex:none}@media (width<=900px){.import-mapping-grid{grid-template-columns:1fr}}@media (width<=600px){.smart-import-notice,.smart-import-analysis{padding:14px}.import-mapping-grid label{grid-template-columns:minmax(0,1fr) auto}.import-mapping-grid label>span{white-space:normal;overflow-wrap:anywhere}.import-mapping-grid label>b{display:none}.import-mapping-grid select{grid-column:1/-1}.generated-credentials-notice{flex-direction:column;align-items:stretch}.generated-credentials-notice .outline-button{width:100%}}.parent-account-table table{min-width:900px}.parent-delete-button{color:var(--danger)!important;background:var(--danger-bg)!important;border-color:#a15c5247!important}.parent-delete-button:hover:not(:disabled){box-shadow:0 7px 18px #a15c521f;border-color:#a15c5285!important}.parent-password-manager{align-self:start}.password-mode-grid{grid-template-columns:1fr;gap:10px;display:grid}.password-mode-grid>label{border:1px solid var(--border);border-radius:var(--r-md);background:var(--fill-soft);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;min-width:0;padding:13px 14px;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.password-mode-grid>label.selected{background:var(--info-bg);box-shadow:inset 3px 0 0 var(--brand);border-color:#36587461}.password-mode-grid input,.parent-password-selection input{width:17px;height:17px;accent-color:var(--brand);margin-top:2px}.password-mode-grid span,.parent-password-selection span{min-width:0}.password-mode-grid strong,.parent-password-selection strong{color:var(--text-strong);font-size:13px;line-height:1.45;display:block}.password-mode-grid small,.parent-password-selection small{color:var(--text-muted);margin-top:3px;font-size:11px;line-height:1.5;display:block}.password-selection-heading{justify-content:space-between;align-items:end;gap:14px;display:flex}.password-selection-heading strong{font-size:13px;display:block}.password-selection-heading small{color:var(--text-muted);margin-top:3px;font-size:11px;display:block}.parent-password-selection{border:1px solid var(--border);border-radius:var(--r-md);background:var(--fill-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:280px;padding:8px;display:grid;overflow-y:auto}.parent-password-selection>label{background:var(--surface);cursor:pointer;border:1px solid #0000;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;min-width:0;padding:10px;display:grid}.parent-password-selection>label:has(input:checked){background:var(--info-bg);border-color:#3658744d}.password-reset-result{border-radius:var(--r-md);background:var(--gold-bg);border:1px solid #b1762447;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.password-reset-result strong{font-size:13px;display:block}.password-reset-result p{color:var(--text-muted);margin:4px 0 0;font-size:11px;line-height:1.5}@media (width<=700px){.parent-account-tabs{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.parent-account-tabs button{width:100%}.parent-password-selection{grid-template-columns:1fr}.password-reset-result{flex-direction:column;align-items:stretch}.password-reset-result .outline-button{width:100%}}.management-delete-button,.calendar-delete-button,.danger-text-button,.teacher-album-photo-grid figure>button{cursor:pointer;border-radius:999px;min-height:34px;padding:7px 12px;font-size:11px;font-weight:720;line-height:1;color:#a34842!important;background:#fff8f7!important;border:1px solid #b04a4438!important}.management-delete-button:hover,.calendar-delete-button:hover,.danger-text-button:hover,.teacher-album-photo-grid figure>button:hover{background:#fff0ee!important;border-color:#b04a4466!important}.management-delete-button:disabled,.calendar-delete-button:disabled,.danger-text-button:disabled,.teacher-album-photo-grid figure>button:disabled{cursor:wait;opacity:.55}.content-delete-error,.album-manager-error{margin:14px 20px 0}.calendar-admin-list article{grid-template-columns:86px minmax(0,1fr) auto}.calendar-delete-button{align-self:center}.album-management-layout{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr)}.teacher-album-manager{min-width:0;overflow:hidden}.teacher-album-list{gap:14px;padding:0 20px 22px;display:grid}.teacher-album-card{border:1px solid var(--border);background:var(--surface);border-radius:18px;overflow:hidden;box-shadow:0 12px 34px #283d4e0f}.teacher-album-card>header{border-bottom:1px solid #0000;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}:is(.teacher-album-card:has(.teacher-album-photo-grid)>header,.teacher-album-card:has(.album-manager-empty)>header){border-bottom-color:var(--border)}.teacher-album-summary{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:14px;padding:0;display:grid}.teacher-album-cover{aspect-ratio:4/3;width:86px;color:var(--text-muted);background:var(--fill-soft);border-radius:13px;place-items:center;font-size:11px;font-weight:700;display:grid;overflow:hidden}.teacher-album-cover img{object-fit:cover;width:100%;height:100%}.teacher-album-heading{gap:5px;min-width:0;display:grid}.teacher-album-heading small,.teacher-album-photo-grid figcaption small{color:var(--text-muted);font-size:10px}.teacher-album-heading strong{overflow-wrap:anywhere;color:var(--text-primary);font-size:16px}.teacher-album-heading>span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.55;overflow:hidden}.teacher-album-count{min-width:54px;color:var(--brand);text-align:right;font-size:12px;font-weight:760}.teacher-album-count i{color:var(--text-muted);margin-top:4px;font-size:9px;font-style:normal;font-weight:650;display:block}.teacher-album-photo-grid{background:var(--fill-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;display:grid}.teacher-album-photo-grid figure{border:1px solid var(--border);background:var(--surface);border-radius:14px;gap:8px;min-width:0;margin:0;padding:8px;display:grid}.teacher-album-photo-grid figure>img{aspect-ratio:4/3;object-fit:cover;border-radius:10px;width:100%;display:block}.teacher-album-photo-grid figcaption{gap:3px;min-width:0;display:grid}.teacher-album-photo-grid figcaption span{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:680;overflow:hidden}.teacher-album-photo-grid figure>button{width:100%}.album-manager-empty{color:var(--text-muted);background:var(--fill-soft);text-align:center;padding:34px 20px;font-size:12px}@media (width<=1120px){.album-management-layout{grid-template-columns:1fr}}@media (width<=700px){.calendar-admin-list article{grid-template-columns:70px minmax(0,1fr)}.calendar-delete-button{grid-column:2;justify-self:start}.teacher-album-list{padding:0 12px 16px}.teacher-album-card>header{grid-template-columns:1fr}.teacher-album-card>header>.danger-text-button{justify-self:start;margin-left:82px}.teacher-album-summary{grid-template-columns:68px minmax(0,1fr);gap:12px}.teacher-album-cover{width:68px}.teacher-album-count{text-align:left;grid-column:2}.teacher-album-count i{margin:0 0 0 6px;display:inline}.teacher-album-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=430px){.teacher-album-photo-grid{grid-template-columns:1fr}}.mist-class-home .today-summary-header{border-bottom:1px solid var(--border);min-width:0;color:var(--text-primary);background:color-mix(in srgb, var(--fill-soft) 56%, white);grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;padding:13px 28px;display:flex}.mist-class-home .today-summary-header strong{letter-spacing:.08em;font-size:13px}.mist-class-home .today-summary-header time{color:var(--text-muted);white-space:nowrap;font-size:11px}.mist-class-home .today-summary article:first-of-type{border-left:0}.mist-class-home .homework-detail-heading{margin-bottom:0}.mist-class-home .homework-detail-heading>button{border:1px solid var(--border);min-height:38px;color:var(--brand-deep);background:var(--fill-soft);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 15px;font-size:12px;font-weight:700;line-height:1;transition:border-color .16s,background .16s,transform .16s;display:inline-flex}.mist-class-home .homework-detail-heading>button:hover:not(:disabled){border-color:var(--brand-light);background:var(--brand-pale);transform:translateY(-1px)}.mist-class-home .homework-detail-heading>button:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-light) 36%, transparent);outline-offset:2px}.mist-class-home .homework-detail-heading>button:disabled{cursor:default;opacity:.58}.mist-class-home .homework-detail-heading>button span{font-size:16px;transition:transform .18s;display:inline-block}.mist-class-home .homework-detail-heading>button[aria-expanded=true] span{transform:rotate(180deg)}.mist-class-home .homework-panel .homework-list{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.mist-class-home .carousel-photo{background-color:#dce7ee;background-image:none;overflow:hidden}.mist-class-home .carousel-photo picture,.mist-class-home .carousel-photo img{width:100%;height:100%;display:block}.mist-class-home .carousel-photo picture{position:absolute;inset:0}.mist-class-home .carousel-photo img{object-fit:cover;object-position:82% center}.mist-class-home .carousel-position-center .carousel-photo img{object-position:91% center}.mist-class-home .carousel-position-right .carousel-photo img{object-position:100% center}@media (width<=700px){.mist-class-home .today-summary-header{padding:12px 20px}.mist-class-home .today-summary article:first-of-type{border-top:0}.mist-class-home .homework-detail-heading{align-items:center;gap:14px}.mist-class-home .homework-detail-heading>div{min-width:0}.mist-class-home .homework-detail-heading h3{overflow-wrap:anywhere}.mist-class-home .homework-detail-heading>button{flex:none;min-height:36px;padding-inline:13px}.mist-class-home .carousel-photo img{object-position:72% center}.mist-class-home .carousel-position-center .carousel-photo img{object-position:82% center}.mist-class-home .carousel-position-right .carousel-photo img{object-position:92% center}}@media (width<=420px){.mist-class-home .today-summary-header{flex-direction:column;align-items:flex-start;gap:3px}.mist-class-home .today-summary-header time{white-space:normal}}@media (prefers-reduced-motion:reduce){.mist-class-home .homework-detail-heading>button,.mist-class-home .homework-detail-heading>button span{transition:none}}.message-page-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.message-page-heading>button,.message-filters button,.password-back{color:var(--brand);cursor:pointer;background:0 0;border:0;font-weight:700}.message-page-heading>button{border:1px solid var(--border);background:var(--surface);white-space:nowrap;border-radius:999px;min-height:38px;padding:0 15px}.message-page-heading>button:disabled{color:var(--text-muted);cursor:default}.message-filters{border:1px solid var(--border);background:var(--fill-soft);border-radius:999px;gap:4px;width:fit-content;margin:-10px 0 16px;padding:4px;display:flex}.message-filters button{min-height:34px;color:var(--text-secondary);border-radius:999px;padding:0 14px;font-size:11px}.message-filters button.active{color:var(--on-dark-strong);background:var(--brand);box-shadow:0 6px 14px #33506b29}.message-list article>button{width:100%;min-height:88px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:14px;padding:18px 22px;display:grid;position:relative}.message-list article{min-height:0;padding:0;display:block}.message-list article.is-read{opacity:.7}.message-list article>button>i{width:42px;height:42px;color:var(--brand);background:var(--info-bg);border-radius:14px;place-items:center;font-style:normal;display:grid}.message-list article>button>b{color:var(--text-muted);justify-self:end;font-size:22px;font-weight:400}.password-page{max-width:640px}.password-back{align-items:center;gap:7px;min-height:42px;margin-bottom:12px;display:inline-flex}.password-back svg{transform:rotate(180deg)}.password-page-panel{margin-top:0;padding:30px}.password-page-panel h2{font-size:25px}.password-input-wrap{border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);align-items:center;display:flex;overflow:hidden}.password-input-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px #33506b14}.password-panel .password-input-wrap input{min-width:0;box-shadow:none;background:0 0;border:0;outline:none;flex:1}.password-input-wrap>button{min-height:43px;color:var(--brand);cursor:pointer;background:0 0;border:0;padding:0 14px;font-size:11px;font-weight:700}.password-strength>div{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.password-strength i{background:var(--border);border-radius:999px;height:4px}.password-strength[data-level="1"] i.active{background:#c76262}.password-strength[data-level="2"] i.active,.password-strength[data-level="3"] i.active{background:#c28a32}.password-strength[data-level="4"] i.active{background:#4f8a70}.password-strength small{color:var(--text-muted);margin-top:7px;font-size:10px;display:block}@media (width<=700px){html,body,.parent-shell{max-width:100%;overflow-x:clip}.parent-shell{padding-bottom:0}.parent-main{width:100%;max-width:100%;padding:0 0 calc(138px + env(safe-area-inset-bottom))}.parent-main>*,.child-space,.simple-page,.mist-class-home{box-sizing:border-box;min-width:0;max-width:100%}.parent-bottom-nav{right:12px;bottom:calc(10px + env(safe-area-inset-bottom));border-radius:23px;width:auto;min-height:70px;padding:6px;left:12px;transform:none}.parent-bottom-nav button{min-width:0;padding:5px 2px}.parent-bottom-nav span{line-height:1}.parent-bottom-nav small{white-space:nowrap;font-size:9px;line-height:1.2}.simple-page{width:100%;padding:28px 20px 20px}.simple-page-heading,.child-overview-heading{width:100%;margin-left:0;padding-left:0}.simple-page-heading .section-kicker,.child-overview-heading .section-kicker,.simple-page-heading h1,.child-overview-heading h2{overflow-wrap:anywhere;max-width:100%}.message-page-heading{flex-direction:column;align-items:flex-start;gap:12px}.message-page-heading>button{min-height:34px}.message-filters{max-width:100%;margin-top:-8px;overflow-x:auto}.message-filters button{flex:none}.message-list,.notification-channel-panel,.settings-list,.password-panel{box-sizing:border-box;width:100%;max-width:100%}.message-list article>button{grid-template-columns:40px minmax(0,1fr) 14px;gap:12px;min-height:94px;padding:17px 16px 17px 22px}.message-list article>button>i{width:40px;height:40px}.message-dot{left:7px}.message-list h3,.message-list p{overflow-wrap:anywhere}.child-space{width:100%}.student-hero{border-radius:0 0 28px 28px;grid-template-columns:92px minmax(0,1fr);gap:18px;width:100%;min-height:0;padding:28px 20px 30px}.student-avatar{border-width:5px;width:92px;height:92px}.student-hero-copy h1{text-wrap:balance;margin-top:6px;font-size:clamp(24px,7.1vw,30px);line-height:1.28}.student-hero-copy>p{display:none}.student-meta{gap:6px;margin-top:13px}.student-meta span{white-space:nowrap}.relationship-badge,.child-switch{grid-column:1/-1;justify-self:start;margin-left:0}.child-overview{box-sizing:border-box;width:100%;margin-top:28px;padding:0 20px 20px}.growth-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}.growth-stat{min-width:0;min-height:124px;padding:17px}.growth-stat>strong{margin-top:10px;font-size:29px}.growth-stat p{overflow-wrap:anywhere;min-height:30px;margin-top:10px;line-height:1.5}.growth-stat.is-empty:after{opacity:.6}.growth-stat.is-empty>strong{opacity:.78}.mist-class-home{width:100%;padding:0 20px 20px}.mist-class-home .class-hero{gap:24px;padding:26px 0 30px}.mist-class-home .class-hero-copy>.eyebrow{white-space:nowrap;gap:9px;max-width:100%;font-size:9.5px;line-height:1.45}.mist-class-home .class-hero-copy>.eyebrow:before{flex:0 0 24px;width:24px}.mist-class-home .class-hero h1{letter-spacing:-.035em;text-wrap:balance;overflow-wrap:break-word;max-width:100%;margin:18px 0 13px;font-size:clamp(30px,8.4vw,34px);line-height:1.28}.mist-class-home .hero-description{font-size:12.5px;line-height:1.75}.mist-class-home .class-hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.mist-class-home .class-hero-actions button{border:1px solid var(--border-strong);white-space:nowrap;border-radius:999px;width:100%;min-width:0;min-height:44px;padding:0 12px;font-size:11px;line-height:1}.mist-class-home .class-hero-primary{border-color:var(--brand);grid-column:1/-1;min-height:48px}.mist-class-home .class-hero-secondary,.mist-class-home .class-hero-child{color:var(--brand-deep);background:var(--surface);padding-bottom:0}.mist-class-home .teacher-message{gap:10px;margin-top:20px}.mist-class-home .teacher-message strong{font-size:11px;line-height:1.6}.mist-class-home .class-photo-carousel{justify-self:stretch;width:100%;height:210px}.mist-class-home .today-summary{scroll-margin-top:82px}.mist-class-home .today-summary-header{flex-direction:row;align-items:center;padding:12px 17px}.mist-class-home .today-summary-header time{white-space:nowrap;font-size:10px}.mist-class-home .today-summary article{padding:17px}.password-page{padding-top:22px}.password-page-panel{padding:22px 20px}.password-page-panel h2{font-size:23px}.notification-channel-list>div{padding-inline:16px}}@media (width<=390px){.parent-header{padding-inline:14px}.parent-header .brand strong{font-size:13px}.mist-class-home,.simple-page,.child-overview{padding-inline:16px}.student-hero{grid-template-columns:80px minmax(0,1fr);padding-inline:16px}.student-avatar{width:80px;height:80px}.student-hero-copy h1{font-size:23px}.growth-stat{min-height:118px;padding:15px}.mist-class-home .today-summary-header{flex-direction:column;align-items:flex-start;gap:3px}.notification-channel-list>div{grid-template-columns:auto minmax(0,1fr)}.notification-channel-list>div>i,.push-channel-action{grid-column:2;justify-self:start}}@media (width<=700px){.parent-main{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.parent-bottom-nav{width:100%;min-height:64px;padding:6px max(10px, env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));background:#fafcfef5;border-bottom:0;border-left:0;border-right:0;border-radius:20px 20px 0 0;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:column;gap:2px;bottom:0;left:0;right:0;transform:none;box-shadow:0 -9px 30px #1c3e581a}.parent-bottom-nav button{border-radius:15px;justify-self:stretch;gap:2px;width:100%;min-height:50px;padding:3px 2px}.parent-bottom-nav button span{width:23px;height:23px}.parent-bottom-nav button small{font-size:9px;line-height:1.15}.parent-view-home .mist-class-home{padding:0 16px 22px}.parent-view-home .mist-class-home .class-hero{gap:18px;padding:22px 0 28px}.parent-view-home .mist-class-home .class-hero-copy{order:1}.parent-view-home .mist-class-home .class-hero-copy>.eyebrow{font-size:9px}.parent-view-home .mist-class-home .class-hero h1{letter-spacing:-.045em;text-wrap:balance;max-width:350px;margin:16px 0 12px;font-size:clamp(30px,8.2vw,34px);line-height:1.24}.parent-view-home .mist-class-home .class-hero h1 span{white-space:normal}.parent-view-home .mist-class-home .hero-description{max-width:350px;font-size:12px;line-height:1.68}.parent-view-home .mist-class-home .class-hero-actions{gap:8px;margin-top:17px}.parent-view-home .mist-class-home .class-hero-actions button{min-height:40px;font-size:11px}.parent-view-home .mist-class-home .class-hero-primary{min-height:44px}.parent-view-home .mist-class-home .teacher-message{margin-top:17px}.parent-view-home .mist-class-home .teacher-avatar{flex-basis:38px;width:38px;height:38px}.parent-view-home .mist-class-home .class-photo-carousel{border:1px solid #315d821a;border-radius:22px;order:2;justify-self:stretch;width:100%;height:205px;overflow:hidden;transform:none;box-shadow:0 16px 38px #21435e21}.parent-view-home .mist-class-home .class-photo-carousel:before{display:none}.parent-view-home .mist-class-home .carousel-stage,.parent-view-home .mist-class-home .carousel-slide{border-radius:inherit}.parent-view-home .mist-class-home .carousel-photo img,.parent-view-home .mist-class-home .carousel-position-center .carousel-photo img,.parent-view-home .mist-class-home .carousel-position-right .carousel-photo img{object-position:66% center}.parent-view-home .mist-class-home .carousel-copy{border-radius:10px;max-width:calc(100% - 24px);padding:7px 10px;top:12px;right:12px}.parent-view-home .mist-class-home .carousel-copy h2{font-size:10px}.parent-view-home .mist-class-home .carousel-controls{bottom:10px;left:12px;right:12px}.parent-view-home .mist-class-home .class-hero>.today-summary{border-radius:20px;order:3;scroll-margin-top:76px}.parent-view-home .mist-class-home .today-summary-header{min-height:46px;padding:10px 15px}.parent-view-home .mist-class-home .today-summary-header strong{font-size:12px}.parent-view-home .mist-class-home .today-summary-header time{font-size:9px}.parent-view-home .mist-class-home .today-summary article{grid-template-columns:minmax(92px,.72fr) minmax(0,1.28fr);align-items:center;column-gap:12px;min-height:82px;padding:14px 15px;display:grid}.parent-view-home .mist-class-home .today-summary article>div{grid-area:1/1/3;align-self:center}.parent-view-home .mist-class-home .today-summary article>div span{letter-spacing:.1em;font-size:9px}.parent-view-home .mist-class-home .today-summary article>strong{font-family:var(--font-sans);-webkit-line-clamp:1;grid-column:2;margin-top:0;font-size:15px;line-height:1.45}.parent-view-home .mist-class-home .today-summary article>p{-webkit-line-clamp:1;grid-column:2;margin-top:2px;font-size:10px;line-height:1.45}.parent-view-home .home-content-summary{gap:12px;margin-top:0}.parent-view-home .home-content-summary>.panel,.parent-view-home .class-detail-grid>.panel,.parent-view-home .mist-class-home>.honor-panel{border-radius:20px;padding:18px}.parent-view-home .class-detail-grid{gap:12px}}@media (width<=390px){.parent-view-home .mist-class-home{padding-inline:14px}.parent-view-home .mist-class-home .class-hero h1{font-size:30px}.parent-view-home .mist-class-home .today-summary-header{flex-direction:row;align-items:center;gap:8px}.parent-view-home .mist-class-home .today-summary article{grid-template-columns:88px minmax(0,1fr)}}
