.parent-page{--p-bg:#030c17;--p-panel:#071929;--p-text:#ecf6ff;--p-muted:#89a7bf;--p-cyan:#38e6f4;--p-line:rgba(77,171,205,.25);position:relative;isolation:isolate;min-height:100vh;overflow:hidden;color:var(--p-text);font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;background:radial-gradient(ellipse at 13% 45%,rgba(0,112,174,.13),transparent 55%),radial-gradient(ellipse at 95% 15%,rgba(30,91,128,.12),transparent 45%),var(--p-bg);box-sizing:border-box}
.parent-page *{box-sizing:border-box}.parent-page svg{width:20px;height:20px;flex:none;vertical-align:middle}.parent-page button,.parent-page input{font:inherit}.parent-page button{cursor:pointer}.parent-page button:disabled{cursor:wait;opacity:.6}.parent-page button:focus-visible,.parent-page input:focus-visible{outline:3px solid #93f7ff;outline-offset:4px}.parent-page button{transition:background .18s,border-color .18s,box-shadow .18s}.parent-page h1,.parent-page h2,.parent-page h3,.parent-page p{margin:0}.parent-stars{position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(#43aacd .65px,transparent .65px);background-size:27px 27px;mask-image:linear-gradient(to bottom,#000,transparent 85%)}
.parent-topbar{width:100%;height:100px;display:flex;justify-content:space-between;align-items:center;padding:0 max(5.5vw,24px);border-bottom:1px solid var(--p-line);background:rgba(3,12,23,.62)}.parent-brand{display:flex;align-items:center;gap:13px}.parent-brand-mark{width:47px;height:47px;display:grid;place-items:center;color:var(--p-cyan);filter:drop-shadow(0 0 9px #06bce057)}.parent-brand-mark svg{width:46px;height:46px}.parent-brand strong{font-size:23px;letter-spacing:2px;color:#a5f8ff;font-weight:700}.parent-brand div>span{display:block;margin-top:6px;font-size:12px;color:#679db8;letter-spacing:4px}.parent-mode{font-size:12px;color:#a8c4d9;border:1px solid var(--p-line);padding:10px 13px;border-radius:5px;letter-spacing:1px;display:flex;gap:8px;align-items:center}.parent-mode i,.parent-eyebrow>i{width:5px;height:5px;background:var(--p-cyan);box-shadow:0 0 8px #38e6f4;display:inline-block;border-radius:100%}.parent-main{max-width:1100px;margin:0 auto;padding:54px 40px 24px;position:relative}.parent-footer{min-height:91px;display:flex;gap:22px;justify-content:center;align-items:center;color:#65839a;font-size:12px;letter-spacing:2px;padding:24px}.parent-footer-line{height:1px;width:52px;background:linear-gradient(90deg,transparent,#26546c)}.parent-footer-line:last-child{transform:rotate(180deg)}
.parent-entry{min-height:615px;display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center}.parent-welcome{padding:6px 0}.parent-eyebrow{font-size:12px;line-height:1.7;letter-spacing:1.8px;color:#60c8df;display:flex;align-items:center;gap:9px}.parent-eyebrow>span{color:#5e7a92;letter-spacing:1px}.parent-course-heading h1{font-size:35px;font-weight:650;letter-spacing:1px;line-height:1.35;margin:17px 0 12px}.parent-course-heading>p{font-size:13px;color:var(--p-muted);line-height:1.8}.parent-separator{padding:0 12px;color:#3c5d72}.parent-course-meta{display:flex;gap:22px;margin-top:21px;color:#97b6cc;font-size:12px}.parent-course-meta>span{display:inline-flex;align-items:center;gap:7px}.parent-course-meta svg{width:15px;height:15px;color:#54b5d6}.parent-welcome-copy{font-size:14px;line-height:2;color:#88aac0;letter-spacing:.7px}
.parent-orbit-art{width:340px;height:285px;position:relative;margin:23px 0 20px}.parent-orbit-art:before{content:"";position:absolute;inset:30px;background:radial-gradient(ellipse,#02c7f321,transparent 64%)}.parent-orbit-ring{position:absolute;border:1px solid #2496c560;border-radius:50%;width:295px;height:112px;top:85px;left:10px;box-shadow:0 0 12px #0087b510,inset 0 0 8px #0087b510}.parent-orbit-ring.ring-one{transform:rotate(-30deg)}.parent-orbit-ring.ring-two{transform:rotate(31deg);border-color:#1c638465}.parent-orbit-ring.ring-three{width:186px;height:186px;top:40px;left:66px;border-style:dashed;border-color:#1a6c924a;transform:rotate(10deg)}.parent-orbit-center{position:absolute;top:80px;left:108px;display:grid;place-items:center;width:103px;height:103px;border:1px solid #48d9ef80;background:linear-gradient(145deg,#0c3857e6,#04273cc2);border-radius:24px;transform:rotate(45deg);box-shadow:0 0 43px #00b4e629,inset 0 0 24px #008eb025}.parent-orbit-center svg{width:47px;height:47px;color:#73f3ff;transform:rotate(-45deg);filter:drop-shadow(0 0 10px #09cbffa6)}.parent-orbit-dot{position:absolute;width:7px;height:7px;background:#7aedff;border-radius:50%;box-shadow:0 0 10px #00c8fa}.parent-orbit-dot.dot-one{left:23px;top:178px}.parent-orbit-dot.dot-two{right:63px;top:186px;width:4px;height:4px}.parent-orbit-label{position:absolute;bottom:11px;left:57px;font-size:12px;letter-spacing:3px;color:#357794}
.parent-panel{background:linear-gradient(130deg,rgba(11,35,52,.95),rgba(5,19,33,.98));border:1px solid var(--p-line);border-radius:13px;box-shadow:0 14px 50px #00000024;position:relative}.parent-panel:before{position:absolute;content:"";top:-1px;left:23px;height:1px;width:72px;background:var(--p-cyan);box-shadow:0 0 11px #36daffb0}.parent-lookup{padding:27px 31px 28px;border-color:#1e556e}.parent-panel-topline{display:flex;justify-content:space-between;font-size:12px;letter-spacing:2px;color:#6b9ab4;margin-bottom:31px}.parent-panel-topline>span:last-child{color:#407690}.parent-large-icon{display:grid;place-items:center;width:46px;height:46px;background:linear-gradient(135deg,#0d3f54,#0a2437);border:1px solid #1a6079;border-radius:10px;color:#47dcef;margin-bottom:23px}.parent-large-icon svg{width:23px;height:23px}.parent-lookup h2{font-size:22px;font-weight:600;letter-spacing:.5px;line-height:1.45;margin-bottom:12px}.parent-muted{font-size:12px;color:var(--p-muted);line-height:1.95}.parent-lookup form{margin-top:31px}.parent-lookup label{display:block;color:#adc7d9;font-size:12px;margin-bottom:11px}.parent-phone-control{border:1px solid #2a5873;border-radius:7px;background:#02101d;display:flex;align-items:center;padding:0 14px;gap:13px;transition:border-color .18s}.parent-phone-control:focus-within{border-color:var(--p-cyan);box-shadow:0 0 0 3px #2cceeb10}.parent-phone-control>span{color:#345c73;white-space:nowrap;font-family:monospace;font-size:13px;letter-spacing:1px}.parent-phone-control input{width:100%;min-width:0;height:56px;background:none;border:0;color:#dff9ff;font-size:18px;letter-spacing:3px;outline:0}.parent-phone-control input::placeholder{font-size:12px;letter-spacing:.3px;color:#5c7d94}.parent-phone-control input:focus-visible{outline:0}.parent-form-help{font-size:12px;line-height:1.8;color:#6f92a9;margin-top:10px!important;min-height:35px}.parent-form-message{font-size:12px;color:#ffc77d;line-height:1.7;margin:6px 0 12px!important;min-height:19px}.parent-primary{width:100%;height:48px;border:1px solid #61effa;border-radius:6px;background:linear-gradient(110deg,#5aebf5,#1cbde7);color:#01233a;display:flex;gap:10px;align-items:center;justify-content:center;font-size:13px!important;letter-spacing:1px;font-weight:650!important;box-shadow:0 3px 15px #08beeb24}.parent-primary svg{width:16px;height:16px}.parent-primary:hover{background:linear-gradient(110deg,#8af4fc,#36d7f9);box-shadow:0 3px 22px #08beeb3a}.parent-privacy{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:24px;border-top:1px solid #18374b;padding-top:20px;font-size:12px;color:#7194ab;line-height:1.8}.parent-privacy svg{width:12px;height:12px}
.parent-notice{margin:50px auto 100px;max-width:470px;padding:36px;text-align:center}.parent-notice .parent-large-icon{margin:0 auto 25px}.parent-notice .parent-eyebrow{justify-content:center}.parent-notice h1{font-size:24px;margin:14px 0}.parent-notice p{color:var(--p-muted);font-size:13px;line-height:1.9;margin-bottom:26px}.parent-loading{min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;color:var(--p-muted);font-size:13px}.parent-loading-orbit{width:44px;height:44px;border:1px solid #15475e;border-top-color:var(--p-cyan);border-radius:50%;animation:parent-spin 1s linear infinite}@keyframes parent-spin{to{transform:rotate(360deg)}}
.parent-result-toolbar{display:flex;justify-content:space-between;align-items:center;margin:-22px 0 29px;font-size:12px;color:#678ea7}.parent-result-toolbar>span{display:flex;align-items:center;gap:6px}.parent-result-toolbar>span svg{width:11px;height:11px}.parent-back{display:flex;align-items:center;gap:7px;border:0;background:none;color:#89b3cb;font-size:12px!important;padding:7px 0}.parent-back svg{width:16px;height:16px}.parent-back:hover{color:#8aedfa}.parent-result-header{position:relative;padding:0 0 30px}.parent-result-header .parent-course-heading h1{font-size:29px}.parent-result-decoration{position:absolute;right:20px;top:0;color:#124563}.parent-result-decoration svg{height:132px;width:132px;stroke-width:.45}.parent-child-banner{display:flex;align-items:center;gap:20px;padding:22px 27px;margin:0 0 27px;overflow:hidden}.parent-child-banner:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 5% 5%,#008dce15,transparent 75%)}.parent-avatar{width:59px;height:59px;border-radius:50%;background:linear-gradient(135deg,#1e7285,#254978);border:2px solid #3c96b1;box-shadow:0 0 0 4px #1b4d622e;display:inline-flex;align-items:center;justify-content:center;font-size:22px;color:#b1f5ff;flex:none;overflow:hidden}.parent-avatar img{width:100%;height:100%;object-fit:cover}.parent-avatar-small{height:25px;width:25px;font-size:12px;border-width:1px;box-shadow:none}.parent-child-name{flex:1}.parent-child-name .parent-eyebrow{font-size:12px;margin-bottom:4px}.parent-child-name h2{font-size:24px;line-height:1.5;font-weight:600}.parent-child-name h2>span{font-size:12px;font-weight:400;color:#7ea5bd;margin-left:12px;vertical-align:middle}.parent-attendance{display:inline-flex;align-items:center;gap:5px;border:1px solid #2b5770;color:#9fc2d7;padding:7px 11px;font-size:12px;border-radius:5px;background:#13304775;white-space:nowrap}.parent-attendance svg{width:13px;height:13px}.parent-attendance-present,.parent-attendance-arrived{border-color:#1c685d;color:#68e2c5;background:#13554444}.parent-attendance-late,.parent-attendance-leave{border-color:#755b31;color:#f1c777;background:#55421b44}.parent-attendance-absent{border-color:#7b4258;color:#f398a9;background:#59233944}.parent-report-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:24px;align-items:start}.parent-learning,.parent-review{padding:25px}.parent-section-heading{display:flex;gap:11px;align-items:center;margin-bottom:23px}.parent-section-icon{display:grid;place-items:center;height:36px;width:36px;color:#38d2eb;border:1px solid #235469;border-radius:8px;background:#083a4d55}.parent-section-icon svg{width:19px;height:19px}.parent-section-heading .parent-eyebrow{font-size:12px;letter-spacing:1.2px;margin-bottom:3px}.parent-section-heading h3{font-size:17px;font-weight:550;letter-spacing:.5px}.parent-learning-content{font-size:14px;line-height:2.2;color:#c0d7e6;white-space:pre-wrap;overflow-wrap:anywhere}.parent-learning-bottom{border-top:1px solid #19405a;margin-top:35px;padding-top:23px;display:flex;align-items:center;justify-content:space-between;color:#5585a0;font-size:12px;letter-spacing:1px}.parent-learning-bottom svg{height:46px;width:46px;color:#206287;stroke-width:1}.parent-reviews{display:flex;flex-direction:column;gap:22px}.parent-review-date{font-size:12px;color:#7297ae;line-height:1.8;margin-left:auto;text-align:right;max-width:120px}.parent-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.parent-tags>span{display:inline-flex;align-items:center;gap:5px;color:#73dceb;background:#0c526338;border:1px solid #245e70;border-radius:4px;padding:6px 9px;font-size:12px}.parent-tags svg{height:11px;width:11px}.parent-review-text{font-size:14px;line-height:2.1;color:#c9dce9;white-space:pre-wrap;overflow-wrap:anywhere}.parent-teacher-signature{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:#6f9db6;font-size:12px;margin-top:25px}.parent-signature-line{height:1px;width:23px;background:#2b5c77}.parent-empty-review{padding:30px}.parent-empty-review h3{font-size:17px;font-weight:550;margin-bottom:13px}.parent-empty-review p{font-size:12px;color:var(--p-muted);line-height:1.9}.parent-child-switch{margin:0 0 21px}.parent-child-switch>p{color:#87a7bc;font-size:12px;margin-bottom:11px}.parent-child-switch>div{display:flex;gap:10px;flex-wrap:wrap}.parent-child-switch button{display:flex;gap:8px;align-items:center;padding:9px 13px;border:1px solid #284b64;border-radius:7px;background:#091c2c;color:#9bbcce;font-size:12px}.parent-child-switch button.is-selected{border-color:#35bddc;background:#0c394c;color:#c5f8ff;box-shadow:0 0 14px #13bef719}.parent-end-note{display:flex;justify-content:center;align-items:center;gap:8px;color:#6898b2;font-size:12px;letter-spacing:1px;margin:35px 0 12px!important}.parent-end-note svg{width:13px;height:13px}
@media(min-width:1450px){.parent-entry{min-height:680px}.parent-main{padding-top:65px}.parent-lookup{padding:33px 35px}}
@media(max-width:900px){.parent-main{padding-left:30px;padding-right:30px}.parent-entry{gap:35px;grid-template-columns:1fr 1.08fr}.parent-course-heading h1{font-size:29px}.parent-orbit-art{transform:scale(.88);transform-origin:left center;width:290px;margin-top:10px;margin-bottom:0}.parent-course-meta{gap:13px;flex-wrap:wrap}.parent-lookup{padding:25px}.parent-lookup h2{font-size:20px}.parent-report-grid{gap:18px}.parent-learning,.parent-review{padding:21px}.parent-review-date{max-width:80px;font-size:12px}}
@media(max-width:680px){.parent-topbar{height:81px;padding:0 21px}.parent-brand{gap:9px}.parent-brand-mark,.parent-brand-mark svg{width:34px;height:34px}.parent-brand strong{font-size:18px;letter-spacing:1.5px}.parent-brand div>span{font-size:12px;letter-spacing:2px;margin-top:5px}.parent-mode{padding:7px 8px;font-size:12px;gap:6px}.parent-main{padding:28px 21px 8px;max-width:530px}.parent-entry{display:flex;flex-direction:column;gap:27px;min-height:0;align-items:stretch}.parent-welcome{padding:0}.parent-course-heading h1{font-size:28px;margin:12px 0 9px}.parent-course-heading>p{font-size:12px}.parent-eyebrow{font-size:12px;letter-spacing:1px}.parent-course-meta{font-size:12px;margin-top:15px;gap:20px}.parent-course-meta svg{width:13px;height:13px}.parent-orbit-art,.parent-welcome-copy{display:none}.parent-lookup{padding:23px 23px 25px}.parent-panel-topline{margin-bottom:23px}.parent-lookup .parent-large-icon{width:39px;height:39px;margin-bottom:18px}.parent-lookup .parent-large-icon svg{height:20px;width:20px}.parent-lookup h2{font-size:21px}.parent-muted{font-size:12px}.parent-muted br{display:none}.parent-lookup form{margin-top:25px}.parent-phone-control input{height:55px}.parent-form-help{min-height:18px;font-size:12px}.parent-form-message{min-height:17px}.parent-primary{height:49px}.parent-privacy{font-size:12px;padding-top:17px;margin-top:21px}.parent-footer{padding:27px 13px;gap:13px;font-size:12px;letter-spacing:1px;min-height:79px}.parent-footer-line{width:22px}.parent-result-toolbar{margin:-9px 0 21px;font-size:12px}.parent-result-toolbar>span svg{width:10px;height:10px}.parent-back{font-size:12px!important}.parent-result-header{padding-bottom:24px}.parent-result-header .parent-course-heading h1{font-size:26px}.parent-result-decoration{right:0;top:3px;opacity:.5}.parent-result-decoration svg{width:88px;height:88px}.parent-child-banner{padding:19px 17px;gap:14px;margin-bottom:19px}.parent-avatar{width:50px;height:50px;font-size:19px}.parent-avatar-small{width:24px;height:24px;font-size:12px}.parent-child-name h2{font-size:21px}.parent-child-name h2>span{display:block;line-height:1.5;margin:0;font-size:12px}.parent-child-name .parent-eyebrow{font-size:12px;margin-bottom:1px}.parent-attendance{font-size:12px;padding:6px 8px}.parent-attendance svg{width:11px;height:11px}.parent-report-grid{display:flex;flex-direction:column;gap:18px}.parent-report-grid>*,.parent-reviews{width:100%}.parent-learning,.parent-review{padding:22px}.parent-section-heading{margin-bottom:18px}.parent-section-heading h3{font-size:17px}.parent-learning-content,.parent-review-text{font-size:13px;line-height:2.1}.parent-learning-bottom{margin-top:23px;padding-top:15px;font-size:12px}.parent-learning-bottom svg{width:33px;height:33px}.parent-review-date{max-width:93px;font-size:12px}.parent-tags{gap:7px;margin-bottom:17px}.parent-tags>span{font-size:12px;padding:5px 8px}.parent-teacher-signature{margin-top:19px;font-size:12px}.parent-end-note{font-size:12px;letter-spacing:.3px;margin-top:29px!important}.parent-notice{margin:40px auto 70px;padding:27px 23px}.parent-notice h1{font-size:22px}.parent-notice p{font-size:12px}.parent-loading{min-height:450px}}
@media(prefers-reduced-motion:reduce){.parent-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Readable type sizes across desktop and mobile parent flows. */
.parent-page .parent-mode,.parent-page .parent-muted,.parent-page .parent-lookup label,.parent-page .parent-form-help,.parent-page .parent-form-message,.parent-page .parent-privacy,.parent-page .parent-back,.parent-page .parent-attendance,.parent-page .parent-tags>span,.parent-page .parent-teacher-signature,.parent-page .parent-child-switch>p,.parent-page .parent-child-switch button,.parent-page .parent-child-name h2>span,.parent-page .parent-empty-review p,.parent-page .parent-result-toolbar>span{font-size:14px!important;line-height:1.75}
.parent-page .parent-primary{font-size:15px!important}
.parent-page .parent-phone-control input::placeholder{font-size:14px;letter-spacing:0}
.parent-page .parent-learning-content,.parent-page .parent-review-text,.parent-page .parent-notice p,.parent-page .parent-welcome-copy,.parent-page .parent-loading{font-size:16px;line-height:2}
.parent-page .parent-review-date{font-size:12px;max-width:116px}
.parent-page .parent-course-heading>p,.parent-page .parent-course-meta{font-size:14px}
.parent-page .parent-form-help{min-height:0;margin-top:12px!important}
.parent-page .parent-form-message{min-height:24px}
.parent-page .parent-orbit-label{left:36px;font-size:12px;letter-spacing:1px}
.parent-page .parent-review .parent-section-heading{flex-wrap:wrap}
.parent-page .parent-review .parent-section-heading>div{flex:1;min-width:145px}
.parent-page .parent-review-date{max-width:none;width:100%;text-align:left;margin-left:47px}
@media(max-width:680px){.parent-page .parent-result-toolbar{align-items:flex-start;gap:14px}.parent-page .parent-result-toolbar>span{font-size:12px!important;text-align:right}.parent-page .parent-privacy{align-items:flex-start}.parent-page .parent-privacy svg{margin-top:6px}.parent-page .parent-course-meta{font-size:12px;gap:16px}.parent-page .parent-child-banner{gap:12px}.parent-page .parent-child-name h2>span{font-size:12px!important}.parent-page .parent-attendance{font-size:14px!important;padding:5px 7px}.parent-page .parent-child-name h2{font-size:21px}.parent-page .parent-end-note{line-height:1.8;text-align:center}.parent-page .parent-panel-topline{font-size:12px}}

.parent-page .parent-muted,.parent-page .parent-empty-review p{font-size:16px!important;line-height:1.9}.parent-page .parent-child-name{min-width:0}.parent-page .parent-child-name h2,.parent-page .parent-course-heading h1{overflow-wrap:anywhere}

.parent-page .parent-child-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;row-gap:17px}
.parent-child-project{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 28px;margin:0;padding-top:15px;border-top:1px solid var(--p-line);font-size:14px;line-height:1.8;min-width:0}
.parent-child-project>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;min-width:0;max-width:100%}
.parent-child-project dt{color:var(--p-muted);white-space:nowrap}
.parent-child-project dd{margin:0;color:#c9eaf4;overflow-wrap:anywhere;min-width:0}
@media(max-width:680px){.parent-child-project{display:grid;gap:7px;padding-top:12px}.parent-child-project>div{grid-template-columns:56px minmax(0,1fr)}}
