body.locked>aside,body.locked>main,body.parent-mode>aside,body.parent-mode>main{display:none}#authGate[hidden],#familyApp[hidden]{display:none!important}.loading-state{text-align:center;margin:20vh auto}#authGate{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#f8faf4}.auth-story{padding:70px 12%;background:#e9f0dc;display:flex;flex-direction:column;justify-content:center}.auth-story h1{font-size:45px;line-height:1.2;max-width:410px;margin:26px 0}.auth-story p{max-width:380px;font-size:15px;line-height:1.9;color:#6d8165}.auth-story .brand{font-size:42px}.auth-parrot{font-size:80px;margin:20px 0}.auth-form-wrap{display:flex;align-items:center;justify-content:center;padding:50px 30px}.auth-form{max-width:370px;width:100%}.auth-form h2{font:800 27px Manrope;margin:15px 0}.auth-form p{color:#839079;line-height:1.7}.tabs{display:flex;background:#f0f3ea;border-radius:9px;padding:4px;margin-bottom:25px}.tabs button{flex:1;border:0;background:none;border-radius:7px;padding:10px;color:#7d8b72;font-size:12px}.tabs button.active{background:white;color:#315f44;box-shadow:0 2px 7px #2840310c}.field{display:block;font-size:12px;font-weight:600;color:#546b49;margin:17px 0}.field input,.field select,.field textarea{display:block;width:100%;margin-top:8px;border:1px solid #dbe3d2;border-radius:8px;padding:12px 13px;background:white;font:400 14px 'DM Sans';color:#334b2e}.field textarea{min-height:85px;resize:vertical}.field small{display:block;font-size:10px;font-weight:400;color:#8a9681;margin-top:7px}.auth-form .primary{width:100%;margin-top:6px;padding:14px}.form-error{color:#a14c3e!important;font-size:12px;line-height:1.6;min-height:18px}.auth-note{font-size:10px!important;padding:13px;background:#f0f4e8;border-radius:8px}.password-row{display:flex;align-items:center;gap:7px}.password-row input{flex:1;min-width:0}.password-row button{background:none;border:0;color:#718a64;font-size:11px;margin-top:7px}.auth-success{background:#e7f2df;padding:15px;border-radius:10px}.family-shell{max-width:1280px;margin:auto;padding:0 40px}.family-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e1e6d8;min-height:90px;gap:15px}.family-header .brand{font-size:31px;letter-spacing:-1px}.family-header .brand span{font-size:7px;margin:4px 0 0}.family-account{display:flex;align-items:center;gap:16px;color:#6c805f;font-size:12px}.quiet-btn{border:1px solid #dce4d2;border-radius:8px;padding:9px 13px;background:white;color:#607c52;font-size:11px}.family-heading{display:flex;align-items:center;justify-content:space-between;margin:32px 0 25px;gap:20px}.family-heading h1{font-size:29px;margin:10px 0}.family-heading p{color:#839178;font-size:13px}.family-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-bottom:1px solid #e0e6d7;padding-bottom:15px;margin-bottom:22px}.family-nav button{border:0;background:none;color:#849275;padding:10px 16px;border-radius:8px;font-size:12px}.family-nav .active{background:#e4eed8;color:#386341;font-weight:700}.family-nav select{margin-right:auto;padding:10px 15px;border:1px solid #dae3ce;border-radius:8px;color:#42633a;background:white;font:inherit;max-width:260px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric{padding:22px;border:1px solid #e1e7d8;background:white;border-radius:13px}.metric .metric-icon{color:#8aa76e;font-size:22px}.metric strong{display:block;font:800 29px Manrope;margin:13px 0 6px}.metric span{font-size:11px;color:#849176}.panel{border:1px solid #e0e7d6;border-radius:14px;padding:24px;background:white;margin-bottom:22px}.panel h2{font:700 17px Manrope;margin:0 0 12px}.panel p{color:#7e8d73;line-height:1.8;font-size:12px}.report-note{font-size:11px;line-height:1.8;background:#f1f5e9;padding:15px 18px;border-radius:10px;color:#7c8e6a;margin-bottom:20px}.report-table{width:100%;border-collapse:collapse;font-size:12px}.report-table th{text-align:left;color:#8d9b80;font-weight:500;font-size:10px;padding:12px 10px;background:#f8faf4}.report-table td{padding:15px 10px;border-bottom:1px solid #edf0e7;vertical-align:top;line-height:1.7}.report-table tr:last-child td{border:0}.report-table small{font-size:10px;color:#9aa68d}.table-scroll{overflow:auto}.status{display:inline-block;padding:5px 9px;border-radius:20px;font-size:10px;white-space:nowrap;background:#f0f2eb;color:#879577}.status.good{background:#e5f1df;color:#587f41}.status.progress{background:#fff2d9;color:#a28441}.status.needs{background:#fbe9e1;color:#b3785d}.status.soft{background:#e9eef5;color:#778da6}.empty{text-align:center;padding:45px 20px}.empty>span{font-size:47px}.empty h2{margin:18px}.empty p{max-width:440px;margin:0 auto 23px}.family-footer{display:flex;justify-content:space-between;color:#98a68b;font-size:10px;padding:20px 0 30px}.inline-form{max-width:650px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.form-grid .wide{grid-column:1/-1}.task-card{background:white;border:1px solid #e0e7d5;border-radius:12px;padding:20px;margin:14px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.task-card h3{font:700 14px Manrope;margin:9px 0}.task-card p{font-size:12px;color:#819273;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.task-card small{color:#9ba78e;font-size:10px}.task-card button{flex-shrink:0}.refresh-status{font-size:10px;color:#9da98f}.student-account{display:flex;gap:9px;align-items:center}.student-account button{font-size:10px}.student-name{font-size:11px;color:#6a8259;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-card{max-width:550px}.student-nav-extra{font-size:12px!important}dialog .form-grid{gap:0 15px}.attempt-answer{max-width:220px;overflow-wrap:anywhere}.parent-mode #toast{z-index:50}.parent-mode .hero{display:none}.muted{color:#8b987f}.dots{display:inline-block;width:6px;height:6px;background:#8aac6c;border-radius:50%;margin-right:5px}.filter-row{display:flex;align-items:center;gap:15px;margin:15px 0}.filter-row select{padding:8px;border:1px solid #e0e5d7;border-radius:6px;font:inherit;color:#718365}button:disabled{cursor:wait;opacity:.6}.safety-small{font-size:10px;color:#8a977e;line-height:1.8}.account-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.detail-summary{cursor:pointer;color:#628350;font-size:11px}.auth-story li{color:#6f8563;line-height:2.4;font-size:12px}.auth-form a{color:#59794b}body.parent-mode{--green:#245e48}.notice-bar{margin:0 0 20px;padding:14px;background:#fff5df;color:#927d49;border-radius:9px;font-size:11px;line-height:1.7}@media(max-width:850px){#authGate{grid-template-columns:1fr}.auth-story{padding:28px}.auth-story h1{font-size:28px;margin:20px 0}.auth-story p,.auth-story ul,.auth-parrot{display:none}.auth-form-wrap{padding:30px 25px}.metric-grid{grid-template-columns:repeat(2,1fr)}.family-shell{padding:0 20px}.family-heading{align-items:flex-start}.family-heading h1{font-size:24px}.family-heading .primary{font-size:10px;padding:11px}.family-account>span{display:none}.family-header{min-height:75px}.family-nav{gap:3px}.family-nav select{width:100%;max-width:none;margin-bottom:8px}.family-nav button{padding:9px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.student-name{display:none}.header-right{gap:10px}.family-footer{gap:20px}.task-card{align-items:flex-start;flex-direction:column}}@media(max-width:450px){.metric{padding:17px}.metric strong{font-size:25px}.family-heading{flex-direction:column}.panel{padding:17px}.student-account .quiet-btn{padding:6px}.points{padding:8px}.family-account{gap:6px}.family-account button{padding:8px}.family-header .brand span{letter-spacing:1px}}
/* Keep the family tabs independent of the learner sidebar navigation. */
.family-nav button{width:auto;margin:0;display:inline-block;text-align:center;flex:none}.family-nav .active{box-shadow:none}.family-header{height:auto;background:none;padding:0}.family-footer{margin:0;border:0}.family-heading .primary{white-space:nowrap}

.auth-security{margin:18px 0;min-width:0}.captcha-label{font-size:12px!important;font-weight:700;color:#315d49!important;margin-bottom:10px}.captcha-status{font-size:12px!important;line-height:1.6!important}.auth-security small{display:block;font-size:10px;line-height:1.6;color:#78866e;margin-top:9px}.captcha-retry{font:inherit;font-size:11px;background:transparent;color:#346c52;border:0;padding:8px 0;text-decoration:underline;cursor:pointer}.captcha-widget{min-height:65px;max-width:100%}
