.auth-screen .sidebar,.auth-screen .topbar,.auth-screen #standard-footer,.auth-screen .skip{display:none!important}
.auth-screen .shell{margin:0!important;width:100%;min-height:100vh;background:radial-gradient(ellipse at 15% 10%,#dceaff,transparent 60%),#f4f8ff}
.auth-screen #main{min-height:100vh;display:grid;place-items:center;padding:32px 20px!important}
.login-card{width:min(100%,480px);background:white;border:1px solid #d9e7ff;border-radius:24px;padding:36px;box-shadow:0 20px 65px #1a57aa12}
.login-brand{display:block;color:#0759ff;font-weight:700;font-size:19px;margin-bottom:32px}.login-card h1{font-size:30px;margin:18px 0 12px}.login-card p{line-height:1.7}.login-card .field{margin-top:20px}.login-card .btn{width:100%}#login-error{color:#b42338;min-height:24px;font-size:14px}.login-card .hint{margin-top:24px}
.logout-button{border:1px solid #d7e5fa;background:#fff;color:#17458a;border-radius:9px;padding:8px 12px;cursor:pointer;white-space:nowrap}.header-profile{pointer-events:none}.student-picker{display:flex;align-items:center;gap:18px;margin-bottom:24px}.student-picker select{max-width:440px}.link-students{border:1px solid #d9e7ff;border-radius:10px;margin:20px 0;padding:14px}.link-students label{display:flex;align-items:center;gap:8px;margin:12px 0}.link-students input{width:auto}.auth-loading{padding:60px;text-align:center}body[data-role="parent"] #global-search,body[data-role="admin"] #global-search,body[data-role="teacher"] #global-search,body:not([data-role="student"]) .notification-button{visibility:hidden}
.lesson-preview{border-bottom:1px solid #e4edfa;padding:12px 0}.lesson-preview:last-child{border-bottom:0}.lesson-preview summary{cursor:pointer;font-weight:600;line-height:1.7}.lesson-preview[open]{padding-bottom:20px}.lesson-preview li{margin:12px 0}[data-lesson-id] h2{margin-top:14px}[data-lesson-id]{scroll-margin-top:80px}
.app-update-banner{position:fixed;left:50%;bottom:80px;transform:translateX(-50%);z-index:1000;display:flex;align-items:center;gap:16px;width:min(620px,calc(100% - 24px));padding:16px 20px;border:1px solid #c5d9ff;border-radius:14px;background:#fff;color:#153769;box-shadow:0 8px 40px #123c7130;font-size:14px}.app-update-banner button{flex-shrink:0;border:0;background:#0759ff;color:#fff;border-radius:8px;padding:10px 14px;cursor:pointer}
.upload-card{border:2px solid #c7dbff;background:linear-gradient(135deg,#fff,#f8fbff)}.upload-card h2{margin-top:10px}.upload-card input[type=file]{white-space:normal;font-size:14px;padding:16px}.upload-card .split{margin-bottom:0}.upload-card select{min-width:140px;margin-left:0}.upload-card [hidden]{display:none!important}.upload-card #upload-message{color:#17458a;overflow-wrap:anywhere}.uploaded-lesson{padding:22px 0;border-bottom:1px solid #e1eafd}.uploaded-lesson:last-child{border-bottom:0}.uploaded-lesson h3{margin-top:12px;font-size:18px;overflow-wrap:anywhere}.uploaded-lesson .hint{overflow-wrap:anywhere}.uploaded-description{white-space:pre-wrap;line-height:1.8;overflow-wrap:anywhere}#upload-review h2{overflow-wrap:anywhere}
@media(max-width:600px){.login-card{padding:26px 22px}.student-picker{align-items:stretch;flex-direction:column}.logout-button{font-size:12px;padding:8px}.header-right{gap:8px!important}body:not([data-role="student"]) #global-search{display:none}}
#learning-hub .card { margin-bottom: 20px; }
#learning-hub details { padding: 14px 0; border-bottom: 1px solid #e4eaf3; }
#learning-hub summary { cursor: pointer; font-weight: 600; line-height: 1.7; }
#learning-hub td, #learning-hub th { vertical-align: top; }
#learning-hub textarea, #learning-hub input.input, #learning-hub select { width: 100%; }
#learning-hub .working-evidence { white-space: pre-wrap; padding: 16px; background: #f3f6fb; border-radius: 12px; overflow-wrap: anywhere; }
#learning-hub .question-picker { max-height: 340px; overflow: auto; margin: 16px 0; padding: 12px; border: 1px solid #dce3ef; border-radius: 12px; }
#learning-hub .question-picker label { display: block; padding: 8px; }
#learning-hub .btn { white-space: normal; }
#learning-hub #learning-status { position: sticky; top: 8px; z-index: 5; background: #fff; color: #174b82; }
#learning-hub #learning-status:not(:empty) { border: 1px solid #aac7e7; padding: 16px; border-radius: 10px; }
#working { width: 100%; min-height: 120px; }
.login-password-wrap{position:relative}.auth-screen .login-card .login-password-wrap .input{padding-right:54px}.auth-screen .login-card .login-password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;color:#174f3f;cursor:pointer}.auth-screen .login-card .login-password-toggle:hover{background:#12694f14}.auth-screen .login-card .login-password-toggle:focus-visible{outline:2px solid #12694f;outline-offset:-3px}
