:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:"Microsoft YaHei", "PingFang SC", system-ui, -apple-system, sans-serif;--color-ink:#172128;--color-muted:#637079;--color-canvas:#f4f7f5;--color-surface:#fff;--color-line:#d9e2de;--color-brand:#16775b;--color-brand-strong:#0d6048;--color-brand-soft:#dff4eb;--color-sun:#f2b84b;--color-coral:#e66a4e;--color-blue:#3978c5;--color-danger:#b83e43;--shadow-soft:0 10px 28px #1b362d14;--radius-sm:4px;--radius-md:8px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{min-width:320px;color:var(--color-ink);background:var(--color-canvas);font-family:var(--font-sans);letter-spacing:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #3978c559}body{min-width:320px}.sr-only{clip:rect(0, 0, 0, 0);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--color-muted);font-size:11px;font-weight:800;display:block}button:disabled{cursor:not-allowed;opacity:.58}.login-shell,.wechat-login-fallback{place-items:center;min-height:100vh;padding:24px;display:grid}.wechat-login-fallback>section{text-align:center;border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;justify-items:center;gap:13px;width:min(420px,100%);padding:36px 28px;display:grid}.wechat-login-fallback__mark{color:#fff;background:#16855b;border-radius:8px;place-items:center;width:52px;height:52px;font-size:22px;font-weight:900;display:grid}.wechat-login-fallback h1,.wechat-login-fallback p{margin:0}.wechat-login-fallback p{color:var(--color-muted);font-size:12px;line-height:1.6}.login-panel{border:1px solid var(--color-line);border-radius:var(--radius-md);width:min(860px,100%);box-shadow:var(--shadow-soft);background:#fff;grid-template-columns:minmax(320px,1fr) minmax(280px,.8fr);display:grid;overflow:hidden}.login-panel>header{border-bottom:1px solid var(--color-line);grid-column:1/-1;align-items:center;gap:10px;min-height:66px;padding:0 24px;display:flex}.login-panel>header>div{display:grid}.login-panel>header strong{font-size:16px}.login-panel>header span{color:var(--color-muted);font-size:11px}.parent-brand__mark{background:var(--color-brand);border-radius:var(--radius-md);place-items:center;width:40px;height:40px;display:grid;color:#fff!important}.login-panel form{gap:15px;padding:34px;display:grid}.login-panel h1{margin:3px 0 -9px;font-size:28px}.login-panel form>p{color:var(--color-muted);margin:0 0 7px;font-size:13px}.login-panel label,.child-create-band label{color:var(--color-muted);gap:6px;font-size:11px;font-weight:700;display:grid}.login-panel input,.child-create-band input,.student-switcher select{min-height:42px;color:var(--color-ink);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;padding:0 11px}.environment-badge{color:#704200;border-radius:var(--radius-sm);background:#fff1cf;width:fit-content;padding:5px 8px;font-size:10px;font-weight:800}.form-error{border-left:3px solid var(--color-danger);background:#fff0f0;padding:9px 10px;color:var(--color-danger)!important}.primary-button,.secondary-button{border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-size:12px;font-weight:800;display:inline-flex}.primary-button{color:#fff;background:var(--color-brand);border:1px solid var(--color-brand)}.secondary-button{color:var(--color-brand-strong);border:1px solid var(--color-line);background:#fff}.login-panel aside{border-left:1px solid var(--color-line);background:#eef6f2;justify-content:center;align-items:flex-start;gap:14px;padding:42px 34px;display:flex}.login-panel aside svg{color:var(--color-brand);flex:none}.login-panel aside strong{font-size:15px}.login-panel aside p{color:var(--color-muted);margin:7px 0 0;font-size:12px;line-height:1.7}.parent-header{border-bottom:1px solid var(--color-line);background:#fff;grid-template-columns:minmax(200px,1fr) minmax(230px,320px) repeat(3,auto);align-items:center;gap:10px;min-height:64px;padding:0 clamp(16px,4vw,54px);display:grid}.parent-brand{color:var(--color-ink);align-items:center;gap:9px;text-decoration:none;display:flex}.spin{animation:.85s linear infinite parent-spin}@keyframes parent-spin{to{transform:rotate(360deg)}}.icon-button:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55}.parent-brand>span{color:#fff;background:var(--color-brand);border-radius:var(--radius-md);place-items:center;width:37px;height:37px;display:grid}.parent-brand small{color:var(--color-muted);font-size:11px}.student-switcher{border-right:1px solid var(--color-line);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding-right:10px;display:grid}.student-switcher label{color:var(--color-muted);font-size:9px}.student-switcher select{min-width:0;min-height:36px;font-size:11px;font-weight:700}.icon-button{width:38px;height:38px;color:var(--color-muted);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;flex:none;place-items:center;display:grid}.child-create-band{border-bottom:1px solid var(--color-line);background:#eef6f2;grid-template-columns:auto minmax(160px,260px) minmax(140px,190px) auto auto;align-items:end;gap:12px;padding:14px clamp(16px,4vw,54px);display:grid}.child-create-band>strong{align-self:center;font-size:13px}.child-create-band input{min-height:38px}.parent-shell>main{width:min(1180px,100% - 32px);margin:0 auto;padding:30px 0 60px}.environment-notice{color:#704200;border-left:3px solid var(--color-sun);background:#fff1cf;margin-bottom:14px;padding:10px 12px;font-size:12px}.summary-band{border-bottom:1px solid var(--color-line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:30px;padding:12px 0 26px;display:grid}.summary-band h1{letter-spacing:0;margin:5px 0;font-size:30px}.summary-band p{color:var(--color-muted);margin:0;font-size:13px}.summary-band p span{margin-top:4px;font-size:10px;display:block}.account-progress-track{background:#e4e8e3;border-radius:5px;width:min(540px,100%);height:9px;margin-top:14px;overflow:hidden}.account-progress-track i{background:var(--color-brand);border-radius:inherit;height:100%;display:block}.summary-add-child{margin-top:14px}.summary-metrics{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;grid-template-columns:repeat(3,minmax(96px,1fr));display:grid}.account-fold{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;margin-top:16px;overflow:hidden}.account-fold>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:64px;padding:12px 16px;list-style:none;display:flex}.account-fold>summary::-webkit-details-marker{display:none}.billing-order-fold>summary::-webkit-details-marker{display:none}.account-fold>summary:after{content:"+";color:var(--color-brand);font-size:21px;font-weight:500}.account-fold[open]>summary:after{content:"−"}.account-fold>summary>span{gap:3px;display:grid}.account-fold>summary strong{font-size:14px}.account-fold>summary small{color:var(--color-muted);font-size:10px}.account-fold>.parent-section,.account-fold>.account-role-panel{border-top:1px solid var(--color-line);margin:0;padding:18px 16px}.billing-order-fold{margin-top:14px}.billing-order-fold>summary{width:fit-content;color:var(--color-brand-strong);cursor:pointer;font-size:11px;font-weight:800;list-style:none}.billing-order-fold .billing-order-list{margin-top:10px}.summary-metrics>div{border-right:1px solid var(--color-line);min-width:116px;padding:15px;display:grid}.summary-metrics>div:last-child{border-right:0}.summary-metrics strong{color:var(--color-brand);font-size:24px}.summary-metrics span{color:var(--color-muted);font-size:10px}.parent-loading{min-height:360px;color:var(--color-muted);place-content:center;display:grid}.parent-section{margin-top:28px}#billing-center,#account-center{scroll-margin-top:18px}.parent-section>header{justify-content:space-between;align-items:end;margin-bottom:12px;display:flex}.parent-section>header h2{margin:3px 0 0;font-size:21px}.parent-section>header>svg{color:var(--color-coral)}.billing-sandbox-notice{color:#704200;border-radius:var(--radius-sm);background:#fff5da;border:1px solid #ecd59b;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.billing-live-notice{color:#245c41;border-radius:var(--radius-sm);background:#edf7f0;border:1px solid #c4dfcc;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.billing-live-notice>div{gap:3px;display:grid}.billing-live-notice strong{font-size:12px}.billing-live-notice span{font-size:11px;line-height:1.5}.billing-sandbox-notice svg{flex:none}.billing-sandbox-notice>div{gap:3px;display:grid}.billing-sandbox-notice strong{font-size:12px}.billing-sandbox-notice span{font-size:11px;line-height:1.5}.activation-redeem{border-radius:var(--radius-sm);background:#fff6dd;border:1.5px solid #d9b45c;gap:9px;margin-top:10px;padding:14px;display:grid}.activation-redeem label{color:#5b4a1e;font-size:13px;font-weight:800}.activation-redeem>div{gap:8px;display:flex}.activation-redeem input{letter-spacing:1px;text-transform:uppercase;background:#fff;border:1.5px solid #c8a84b;border-radius:8px;flex:1;min-width:0;min-height:44px;padding:9px 12px;font-family:inherit;font-size:15px;font-weight:700}.activation-redeem input::placeholder{letter-spacing:.5px;font-weight:500}.activation-redeem input:focus-visible{border-color:#8f6f1f;outline:none;box-shadow:0 0 0 3px #c8a84b40}.activation-redeem button{color:#fff;cursor:pointer;background:#2c6545;border-radius:8px;flex:none;align-items:center;gap:6px;min-height:44px;padding:0 18px;font-size:14px;font-weight:800;display:inline-flex}.activation-redeem button:disabled{cursor:not-allowed;opacity:.55}.billing-entitlement{color:#2c6545;border-radius:var(--radius-sm);background:#edf7f0;border:1px solid #c4dfcc;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:68px;margin-top:10px;padding:12px 14px;display:grid}.billing-entitlement.inactive,.billing-entitlement.expired,.billing-entitlement.revoked{color:#635f57;border-color:var(--color-line);background:#f4f2ed}.billing-entitlement.inactive{color:#4f604f;background:#f6f4ec;border-color:#ded8c7}.billing-entitlement>div{gap:3px;display:grid}.billing-entitlement strong{font-size:13px}.billing-entitlement span,.billing-entitlement em{font-size:10px;font-style:normal}.billing-trial-path{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:12px 0 0;padding:0;list-style:none;display:grid}.billing-trial-path li{border-right:1px solid var(--color-line);grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;min-height:70px;padding:12px 14px;display:grid;position:relative}.billing-trial-path li:last-child{border-right:0}.billing-trial-path li>span{color:#71695e;background:#ece8df;border-radius:50%;place-items:center;width:28px;height:28px;font-size:11px;font-weight:900;display:grid}.billing-trial-path li.done>span{color:#fff;background:var(--color-brand)}.billing-trial-path li>div{gap:3px;display:grid}.billing-trial-path strong{font-size:12px}.billing-trial-path small{color:var(--color-muted);font-size:10px;line-height:1.4}.billing-entitlement em{color:#704200;border-radius:var(--radius-sm);background:#fff1cf;padding:4px 7px;font-weight:800}.billing-plan-grid{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:12px;display:grid}.billing-checkout-controls{gap:10px;display:grid}.payment-channel-control{border-radius:var(--radius-sm);background:#eef1ed;grid-template-columns:repeat(2,minmax(0,1fr));padding:3px;display:grid}.payment-channel-control button{min-height:36px;color:var(--color-muted);background:0 0;border:0;border-radius:4px;font-size:11px;font-weight:800}.payment-channel-control button.active{color:var(--color-brand-strong);background:#fff;box-shadow:0 1px 4px #19382b1f}.billing-checkout-controls label{gap:5px;display:grid}.billing-checkout-controls label span{color:var(--color-muted);font-size:10px;font-weight:700}.billing-checkout-controls input{border:1px solid var(--color-line);border-radius:var(--radius-sm);width:100%;min-height:40px;font:inherit;background:#fff;padding:0 11px}.payment-qr{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:20px;margin-top:12px;padding:16px;display:grid}.payment-qr img{display:block}.payment-qr>div{gap:6px;display:grid}.payment-qr span{color:var(--color-muted);font-size:11px;line-height:1.5}.billing-plan-grid>article{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;gap:11px;padding:16px;display:grid}.billing-plan-grid article>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.billing-plan-grid header>div{gap:3px;display:grid}.billing-plan-grid header strong{font-size:14px}.billing-plan-grid header span,.billing-plan-grid p{color:var(--color-muted);font-size:10px}.plan-price{text-align:right;justify-items:end;gap:3px;display:grid}.plan-price del{color:#6d675c;font-size:11px}.plan-price__now{align-items:baseline;gap:6px;display:inline-flex}.plan-price__now em{color:#b23c22;white-space:nowrap;background:#fdeae4;border-radius:4px;padding:2px 6px;font-size:10px;font-style:normal;font-weight:800}.plan-price__now b{color:#b23c22;font-size:26px;line-height:1}.buy-button{color:#fff;cursor:pointer;background:#c23c20;border-radius:10px;justify-content:center;align-items:center;width:100%;min-height:52px;font-size:17px;font-weight:800;display:flex;box-shadow:0 6px 16px #c23c2047}.buy-button:hover,.buy-button:focus-visible{background:#a83318}.buy-button:disabled{cursor:not-allowed;box-shadow:none;opacity:.6}.billing-plan-grid p{min-height:32px;margin:0;line-height:1.55}.billing-plan-grid ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.billing-plan-grid li{color:#425b4b;align-items:center;gap:6px;font-size:10px;display:flex}.billing-plan-active{color:#2c6545;border-radius:var(--radius-sm);background:#edf7f0;border:1px solid #c4dfcc;justify-content:center;align-items:center;gap:7px;min-height:40px;font-size:11px;font-weight:800;display:flex}.billing-plan-unavailable{color:#6b6255;border-radius:var(--radius-sm);text-align:center;background:#f6f2ea;border:1px solid #ddd2be;justify-content:center;align-items:center;min-height:40px;margin:0;padding:0 12px;font-size:11px;font-weight:700;line-height:1.5;display:flex}.billing-order-list{gap:8px;margin-top:18px;display:grid}.billing-order-list>h3{margin:0;font-size:14px}.billing-order-list>article{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;grid-template-columns:minmax(180px,1fr) auto minmax(0,1.2fr);align-items:center;gap:12px;min-height:60px;padding:10px 12px;display:grid}.billing-order-list article>div:first-child{gap:4px;display:grid}.billing-order-list article strong{font-size:11px}.billing-order-list article span{color:var(--color-muted);font-size:9px}.billing-order-list article>em{color:#635f57;border-radius:var(--radius-sm);background:#f0eee8;padding:4px 7px;font-size:9px;font-style:normal;font-weight:800}.billing-order-list article>em.fulfilled{color:#2c6545;background:#e9f5ed}.billing-order-list article>em.failed,.billing-order-list article>em.refunded{color:#7c3f37;background:#fff1ef}.billing-order-actions{flex-wrap:wrap;gap:6px;display:flex}.billing-order-actions button,.billing-refund,.billing-confirm{min-height:34px;color:var(--color-brand-strong);border-radius:var(--radius-sm);background:#eef4f8;border:1px solid #cadce8;padding:0 9px;font-size:9px;font-weight:800}.billing-refund{color:#7c3f37;background:#fff1ef;border-color:#efcfca;width:fit-content}.billing-message{color:#2c6545;background:#edf7f0;border-left:3px solid #4e8b60;margin:10px 0 0;padding:10px 12px;font-size:11px}.consent-layout{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;grid-template-columns:minmax(0,1fr) 280px;display:grid}.consent-list{min-width:0}.consent-row{border-bottom:1px solid var(--color-line);grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:18px;min-height:82px;padding:13px 16px;display:grid}.consent-row:last-child{border-bottom:0}.consent-row>span{gap:4px;display:grid}.consent-row strong{font-size:12px}.consent-row small{color:var(--color-muted);font-size:10px;line-height:1.5}.consent-row em{color:var(--color-muted);font-family:ui-monospace,Consolas,monospace;font-size:8px;font-style:normal}.consent-row input{appearance:none;cursor:pointer;background:#cfd8d4;border:0;border-radius:12px;width:44px;height:24px;margin:0;position:relative}.consent-row input:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .12s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #17212833}.consent-row input:checked{background:var(--color-brand)}.consent-row input:checked:after{transform:translate(20px)}.device-session-panel{border-left:1px solid var(--color-line);background:#f7faf8;flex-direction:column;align-items:flex-start;padding:22px;display:flex}.device-session-panel>svg{color:var(--color-blue)}.device-session-panel h3{margin:14px 0 5px;font-size:14px}.device-session-panel p{color:var(--color-muted);margin:0 0 18px;font-size:10px;line-height:1.6}.device-session-panel .secondary-button{width:100%}.session-success{color:var(--color-brand-strong);align-items:center;gap:5px;margin-top:13px;font-size:9px;line-height:1.4;display:flex}.audit-log{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;margin-top:9px}.audit-log summary{color:var(--color-muted);cursor:pointer;padding:11px 14px;font-size:10px;font-weight:700}.audit-log ol{margin:0;padding:0 14px 10px;list-style:none}.audit-log li{border-top:1px solid var(--color-line);grid-template-columns:145px 54px minmax(0,1fr);gap:9px;padding:7px 0;font-size:9px;display:grid}.audit-log time,.audit-log span{color:var(--color-muted)}.module-progress-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.module-progress-list article{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;overflow:hidden}.module-progress-list article>header{border-bottom:1px solid var(--color-line);background:#f7faf8;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:14px;display:grid}.module-progress-list article>header>span{color:#fff;background:var(--color-ink);border-radius:var(--radius-sm);place-items:center;width:38px;height:38px;font-size:12px;font-weight:900;display:grid}.module-progress-list h3{margin:0;font-size:14px}.module-progress-list p{color:var(--color-muted);margin:3px 0 0;font-size:10px;line-height:1.4}.parent-lesson-row{border-bottom:1px solid var(--color-line);grid-template-columns:34px minmax(100px,1fr) minmax(65px,.8fr) 34px;align-items:center;gap:8px;min-height:41px;padding:6px 12px;display:grid}.parent-lesson-row:last-child{border-bottom:0}.parent-lesson-row>span,.parent-lesson-row>em{color:var(--color-muted);font-size:9px;font-style:normal}.parent-lesson-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.parent-progress-bar{background:#e8eeeb;border-radius:2px;height:5px;overflow:hidden}.parent-progress-bar i{background:var(--color-brand);height:100%;display:block}.parent-work-list{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff}.parent-work-list article{border-bottom:1px solid var(--color-line);grid-template-columns:42px minmax(0,1fr) auto 34px;align-items:start;gap:12px;padding:14px;display:grid}.parent-work-list article:last-child{border-bottom:0}.parent-work-list article>span{color:var(--color-brand);font-size:10px;font-weight:900}.parent-work-list h3{margin:0;font-size:12px}.parent-work-list p{color:var(--color-muted);margin:5px 0 0;font-size:10px;line-height:1.5}.parent-work-list time{color:var(--color-muted);font-size:9px}.parent-work-status{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.parent-work-status span{color:var(--color-muted);border-radius:var(--radius-sm);background:#eef2f0;padding:3px 5px;font-size:8px;font-weight:800}.parent-work-preview,.parent-work-dialog>header button{width:34px;height:34px;color:var(--color-muted);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;place-items:center;display:grid}.parent-work-preview:hover,.parent-work-dialog>header button:hover{color:var(--color-brand-strong);border-color:var(--color-brand)}.parent-work-dialog-backdrop{z-index:100;background:#1117197a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.parent-work-dialog{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;width:min(640px,100%);max-height:min(720px,100vh - 40px);overflow:auto;box-shadow:0 22px 70px #1117193d}.parent-work-dialog>header{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:flex-start;gap:18px;padding:16px 18px;display:flex}.parent-work-dialog h2{margin:4px 0 0;font-size:19px}.parent-work-body{white-space:pre-wrap;overflow-wrap:anywhere;min-height:170px;margin:0;padding:24px 20px;font-size:13px;line-height:1.8}.parent-version-list{border:1px solid var(--color-line);border-radius:var(--radius-sm);margin:0 20px 20px}.parent-version-list>header{border-bottom:1px solid var(--color-line);background:#f7faf8;align-items:center;gap:8px;padding:10px 12px;display:flex}.parent-version-list h3{margin:0;font-size:11px}.parent-version-list ol{margin:0;padding:0;list-style:none}.parent-version-list li{border-bottom:1px solid var(--color-line);grid-template-columns:38px minmax(0,1fr) auto;gap:8px;padding:9px 11px;font-size:9px;display:grid}.parent-version-list li:last-child{border-bottom:0}.parent-version-list time,.parent-version-list>p{color:var(--color-muted)}.parent-version-list>p{margin:0;padding:14px;font-size:10px}.parent-work-dialog>footer{color:var(--color-muted);border-top:1px solid var(--color-line);background:#f7faf8;align-items:center;gap:7px;padding:11px 18px;font-size:9px;display:flex}.empty-row{color:var(--color-muted);text-align:center;border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;padding:30px;font-size:11px}.data-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.data-actions button{min-height:78px;color:var(--color-brand-strong);text-align:left;border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:14px;display:grid}.data-actions button.danger{color:var(--color-danger)}.data-actions button:not(:disabled):hover{border-color:var(--color-brand)}.data-actions button.danger:not(:disabled):hover{border-color:var(--color-danger)}.data-actions span{gap:4px;display:grid}.data-actions strong{color:var(--color-ink);font-size:12px}.data-actions small{color:var(--color-muted);font-size:10px;line-height:1.4}.data-policy-band{color:#6d5220;border-left:3px solid var(--color-sun);background:#fff8e6;align-items:flex-start;gap:10px;margin-top:10px;padding:11px 13px;display:flex}.data-policy-band svg{flex:none}.data-policy-band p,.data-message{margin:0;font-size:10px;line-height:1.65}.data-message{color:#2c6545;border-left:3px solid var(--color-brand);background:#edf7f0;margin-top:10px;padding:10px 12px}.data-request-history{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;margin-top:12px;overflow:hidden}.data-request-history>header{border-bottom:1px solid var(--color-line);background:#f7faf8;align-items:center;gap:8px;padding:11px 13px;display:flex}.data-request-history h3{margin:0;font-size:11px}.data-request-history ol{margin:0;padding:0;list-style:none}.data-request-history li{border-bottom:1px solid var(--color-line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:58px;padding:10px 13px;display:grid}.data-request-history li:last-child{border-bottom:0}.data-request-history li>div{gap:3px;display:grid}.data-request-history strong{font-size:11px}.data-request-history span{color:var(--color-muted);font-size:9px}.data-request-history em{color:#635f57;border-radius:var(--radius-sm);background:#f0eee8;padding:4px 7px;font-size:9px;font-style:normal;font-weight:800}.data-request-history em.completed{color:#2c6545;background:#e9f5ed}.data-request-history em.submitted,.data-request-history em.in_review{color:#704200;background:#fff1cf}.data-request-history em.rejected{color:var(--color-danger);background:#fff0f0}.data-request-history button{min-height:32px;color:var(--color-danger);border-radius:var(--radius-sm);background:#fff;border:1px solid #efcfca;padding:0 9px;font-size:9px;font-weight:800}.data-dialog-backdrop{z-index:110;background:#11171980;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.data-dialog{border:1px solid var(--color-line);border-radius:var(--radius-md);background:#fff;width:min(560px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 22px 70px #1117193d}.data-dialog>header{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.data-dialog h2{margin:4px 0 0;font-size:18px}.data-dialog>header button{width:34px;height:34px;color:var(--color-muted);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;flex:none;place-items:center;display:grid}.data-dialog__body{gap:16px;padding:18px;display:grid}.data-dialog__notice{color:#6d5220;border-left:3px solid var(--color-sun);background:#fff8e6;gap:10px;padding:12px;display:flex}.data-dialog__notice svg{flex:none}.data-dialog__notice p{margin:0;font-size:10px;line-height:1.65}.data-dialog fieldset{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.data-dialog legend{grid-column:1/-1;margin-bottom:4px;font-size:11px;font-weight:800}.data-dialog fieldset label{border:1px solid var(--color-line);border-radius:var(--radius-sm);align-items:center;gap:8px;min-height:42px;padding:9px 10px;font-size:10px;display:flex}.data-dialog input{accent-color:var(--color-brand)}.data-dialog__confirmation{align-items:flex-start;gap:9px;font-size:10px;line-height:1.55;display:flex}.data-dialog__confirmation input{flex:none;margin-top:2px}.data-dialog>footer{border-top:1px solid var(--color-line);background:#f7faf8;justify-content:flex-end;gap:9px;padding:12px 18px;display:flex}.data-dialog>footer button{min-height:38px;color:var(--color-muted);border:1px solid var(--color-line);border-radius:var(--radius-sm);background:#fff;padding:0 13px;font-size:10px;font-weight:800}.data-dialog>footer .danger-button{color:#fff;background:var(--color-danger);border-color:var(--color-danger)}@media (width<=900px){.summary-band,.module-progress-list,.consent-layout{grid-template-columns:1fr}.summary-metrics{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.summary-metrics>div:nth-child(2){border-right:1px solid var(--color-line)}.summary-metrics>div:nth-child(-n+2){border-bottom:0}.device-session-panel{border-top:1px solid var(--color-line);border-left:0}.child-create-band{grid-template-columns:1fr 1fr auto auto}.child-create-band>strong{grid-column:1/-1}.billing-order-list>article{grid-template-columns:minmax(160px,1fr) auto}.billing-order-actions,.billing-refund{grid-column:1/-1}}@media (width<=700px){.login-panel{grid-template-columns:1fr}.login-panel>header{grid-column:1}.login-panel aside{border-top:1px solid var(--color-line);border-left:0}.parent-header{grid-template-columns:minmax(0,1fr) repeat(3,auto);padding:10px 12px}.student-switcher{border:0;grid-area:2/1/auto/-1;padding:0}.parent-brand small{display:none}.child-create-band{grid-template-columns:1fr auto}.child-create-band label{grid-column:1/-1}.child-create-band .primary-button{grid-column:1}.parent-shell>main{width:min(100% - 24px,1180px);padding-top:20px}.summary-band h1{font-size:25px}.summary-metrics>div{min-width:0;padding:11px}.summary-metrics strong{font-size:20px}.parent-lesson-row{grid-template-columns:31px minmax(0,1fr) 34px}.parent-progress-bar{grid-area:2/2/auto/4}.data-actions{grid-template-columns:1fr}.data-request-history li{grid-template-columns:minmax(0,1fr) auto}.data-request-history button{grid-column:1/-1;width:fit-content}.billing-plan-grid,.billing-trial-path{grid-template-columns:1fr}.billing-trial-path li{border-right:0;border-bottom:1px solid var(--color-line);min-height:62px}.billing-trial-path li:last-child{border-bottom:0}.payment-qr{text-align:center;grid-template-columns:1fr;justify-items:center}.payment-qr img{aspect-ratio:1;width:min(240px,100%);height:auto}.parent-work-list article{grid-template-columns:34px minmax(0,1fr) 34px}.parent-work-list time{grid-column:2}.parent-work-preview{grid-area:1/3}}@media (width<=440px){.login-shell{padding:12px}.login-panel form,.login-panel aside{padding:24px 18px}.login-panel>header{padding:0 18px}.audit-log li{grid-template-columns:1fr auto}.audit-log li span{grid-column:1/-1}}@media (width<=560px){.parent-work-dialog-backdrop,.data-dialog-backdrop{padding:10px}.parent-work-dialog{max-height:calc(100vh - 20px)}.parent-version-list li{grid-template-columns:32px minmax(0,1fr)}.parent-version-list time{grid-column:2}.data-dialog{max-height:calc(100vh - 20px)}.data-dialog fieldset{grid-template-columns:1fr}}.summary-unlock-cta{text-align:left;color:#4a3a10;cursor:pointer;background:linear-gradient(120deg,#fff3d6,#ffe9b8);border:1px solid #ecd39a;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;width:100%;margin-top:14px;padding:13px 16px;display:flex}.summary-unlock-cta:hover{border-color:#d8b970}.summary-unlock-cta span{gap:3px;display:grid}.summary-unlock-cta strong{font-size:15px}.summary-unlock-cta small{color:#7a6733;font-size:12px}.summary-unlock-cta em{color:#fff;background:#1f7a53;border-radius:8px;flex:none;padding:8px 14px;font-size:13px;font-style:normal;font-weight:800}.account-role-panel[data-v-ef9cd446]{background:#fff;border-top:1px solid #dce5df;padding:28px;scroll-margin-top:16px}.account-role-header[data-v-ef9cd446],.teacher-dashboard>header[data-v-ef9cd446],.promoter-dashboard>header[data-v-ef9cd446],.commission-ledger>header[data-v-ef9cd446]{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.account-role-header h2[data-v-ef9cd446],.teacher-dashboard h3[data-v-ef9cd446],.promoter-dashboard h3[data-v-ef9cd446],.commission-ledger h4[data-v-ef9cd446]{color:#173c32;margin:4px 0 0}.account-role-header p[data-v-ef9cd446]{color:#61716b;margin:8px 0 0}.account-role-actions[data-v-ef9cd446]{color:#173c32;align-items:center;gap:10px;display:flex}.account-role-actions button[data-v-ef9cd446]{color:#17654d;cursor:pointer;background:#fff;border:1px solid #cad7d0;border-radius:6px;place-items:center;width:36px;height:36px;display:grid}.role-paths[data-v-ef9cd446]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.role-paths article[data-v-ef9cd446]{background:#f8faf8;border:1px solid #d8e2dc;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;min-height:82px;padding:16px;display:grid}.role-paths article.active[data-v-ef9cd446]{border-color:#2f795f}.role-paths strong[data-v-ef9cd446],.role-paths span[data-v-ef9cd446]{display:block}.role-paths span[data-v-ef9cd446]{color:#66766f;margin-top:3px;font-size:13px}.role-paths button[data-v-ef9cd446],.submit-application[data-v-ef9cd446],.poster-download[data-v-ef9cd446]{color:#fff;cursor:pointer;background:#17654d;border:0;border-radius:6px;font-weight:700}.role-paths button[data-v-ef9cd446]{padding:8px 13px}.role-status[data-v-ef9cd446]{background:#e8eee9;border-radius:999px;padding:6px 9px;color:#42564f!important}.role-status[data-status=approved][data-v-ef9cd446]{background:#dff2e8;color:#17654d!important}.role-status[data-status=rejected][data-v-ef9cd446]{background:#fae6e1;color:#9d3827!important}.role-application-form[data-v-ef9cd446]{background:#f5f8f6;border-left:4px solid #ef6a4d;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px;padding:20px;display:grid}.form-title[data-v-ef9cd446],.form-wide[data-v-ef9cd446]{grid-column:1/-1}.form-title span[data-v-ef9cd446]{color:#53645e;margin-top:4px;font-size:13px;display:block}.role-application-form label[data-v-ef9cd446]{color:#384c45;gap:7px;font-size:13px;font-weight:700;display:grid}.role-application-form input[data-v-ef9cd446],.role-application-form textarea[data-v-ef9cd446],.promotion-link input[data-v-ef9cd446]{color:#193a31;min-width:0;font:inherit;background:#fff;border:1px solid #cad7d0;border-radius:5px;padding:10px 12px}.submit-application[data-v-ef9cd446],.poster-download[data-v-ef9cd446]{justify-content:center;align-items:center;gap:8px;width:fit-content;min-height:42px;padding:0 16px;display:inline-flex}.teacher-dashboard[data-v-ef9cd446],.promoter-dashboard[data-v-ef9cd446]{border-top:1px solid #dce5df;margin-top:20px;padding-top:20px}.teacher-dashboard>header>div[data-v-ef9cd446],.promoter-dashboard>header>div[data-v-ef9cd446],.commission-ledger>header[data-v-ef9cd446]{align-items:center;gap:8px;display:flex}.teacher-dashboard>header>span[data-v-ef9cd446],.promoter-dashboard>header>span[data-v-ef9cd446]{color:#536861;font-size:13px}.role-metrics[data-v-ef9cd446]{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.promoter-metrics[data-v-ef9cd446]{grid-template-columns:repeat(3,minmax(0,1fr))}.commission-headline[data-v-ef9cd446]{color:#14332b;background:#eaf4ee;border:1px solid #c8dfd1;border-radius:8px;margin:14px 0 0;padding:13px 16px;font-size:15px;font-weight:800}.commission-headline small[data-v-ef9cd446]{color:#5c6f67;margin-top:5px;font-size:12px;font-weight:500;display:block}.share-copy-kit[data-v-ef9cd446]{background:#fbfdfb;border:1px solid #dce5df;border-radius:8px;margin-top:18px}.share-copy-kit>header[data-v-ef9cd446]{color:#173c32;border-bottom:1px solid #e4ece7;flex-wrap:wrap;align-items:center;gap:8px;padding:13px 16px;display:flex}.share-copy-kit>header h4[data-v-ef9cd446]{margin:0;font-size:14px}.share-copy-kit>header span[data-v-ef9cd446]{color:#5c6e67;margin-left:auto;font-size:12px}.share-copy-kit article[data-v-ef9cd446]{gap:7px;padding:14px 16px;display:grid}.share-copy-kit article+article[data-v-ef9cd446]{border-top:1px dashed #e4ece7}.share-copy-kit article>div[data-v-ef9cd446]{align-items:baseline;gap:8px;display:flex}.share-copy-kit article strong[data-v-ef9cd446]{color:#14332b;font-size:13px}.share-copy-kit article small[data-v-ef9cd446]{color:#5c6e67;font-size:11px}.share-copy-kit article p[data-v-ef9cd446]{color:#3f4f49;margin:0;font-size:12px;line-height:1.75}.share-copy-kit article button[data-v-ef9cd446]{color:#17654d;cursor:pointer;background:#fff;border:1px solid #b9d2c5;border-radius:6px;justify-self:start;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:700;display:inline-flex}.share-copy-kit article button[data-v-ef9cd446]:hover{background:#eef6f1}.role-metrics>div[data-v-ef9cd446]{background:#f2f7f4;border-left:3px solid #67a58d;padding:14px}.role-metrics span[data-v-ef9cd446]{color:#62736c;font-size:12px;display:block}.role-metrics strong[data-v-ef9cd446]{color:#173c32;margin-top:6px;font-size:22px;display:block}.promotion-tools[data-v-ef9cd446]{grid-template-columns:260px 1fr auto auto;align-items:stretch;gap:10px;margin-top:16px;display:grid}.promotion-link[data-v-ef9cd446]{background:#fff;border:1px solid #d5e0da;align-items:center;gap:9px;padding:10px 12px;display:flex}.promotion-link span[data-v-ef9cd446]{color:#61716b;font-size:12px}.promotion-link strong[data-v-ef9cd446]{color:#a93f2b;letter-spacing:0}.promotion-link button[data-v-ef9cd446]{color:#17654d;cursor:pointer;background:0 0;border:0;margin-left:auto}.link-row input[data-v-ef9cd446]{border:0;flex:1;padding:0}.poster-preview[data-v-ef9cd446]{background:#edf4f0;grid-template-columns:180px 1fr;align-items:center;gap:18px;margin-top:16px;padding:16px;display:grid}.poster-preview img[data-v-ef9cd446]{aspect-ratio:3/4;object-fit:cover;border:1px solid #c9d8d0;width:180px}.poster-preview span[data-v-ef9cd446]{color:#5c6d66;margin-top:6px;display:block}.commission-ledger[data-v-ef9cd446]{margin-top:20px}.ledger-scroll[data-v-ef9cd446]{margin-top:10px;overflow-x:auto}.ledger-scroll table[data-v-ef9cd446]{border-collapse:collapse;width:100%;min-width:560px}.ledger-scroll th[data-v-ef9cd446],.ledger-scroll td[data-v-ef9cd446]{text-align:left;border-bottom:1px solid #e0e7e3;padding:10px 12px}.ledger-scroll th[data-v-ef9cd446]{color:#607069;font-size:12px}.application-feedback[data-v-ef9cd446],.account-role-error[data-v-ef9cd446]{color:#9d3827;margin-top:12px}.account-role-notice[data-v-ef9cd446]{color:#17654d;margin-top:12px}.account-role-loading[data-v-ef9cd446]{color:#61716b;padding:28px 0}@media (width<=900px){.promoter-metrics[data-v-ef9cd446]{grid-template-columns:repeat(2,minmax(0,1fr))}.share-copy-kit>header span[data-v-ef9cd446]{width:100%;margin-left:0}.promotion-tools[data-v-ef9cd446]{grid-template-columns:1fr}}@media (width<=640px){.account-role-panel[data-v-ef9cd446]{padding:20px 16px}.role-paths[data-v-ef9cd446],.role-application-form[data-v-ef9cd446],.role-metrics[data-v-ef9cd446]{grid-template-columns:1fr}.form-title[data-v-ef9cd446],.form-wide[data-v-ef9cd446]{grid-column:auto}.role-paths article[data-v-ef9cd446]{grid-template-columns:auto 1fr}.role-paths article>button[data-v-ef9cd446],.role-paths article>.role-status[data-v-ef9cd446]{grid-column:2;justify-self:start}.poster-preview[data-v-ef9cd446]{grid-template-columns:120px 1fr}.poster-preview img[data-v-ef9cd446]{width:120px}}
