/* v9: scoped student and guardian design. No changes to teacher gradebook. */
.student-portal{--student-blue:#164f94;max-width:1120px;margin:auto}.student-welcome{background:linear-gradient(115deg,#102c5d,#246cbb 65%,#32a5b4);border-radius:24px;padding:32px;display:flex;justify-content:space-between;gap:20px;align-items:center;color:#fff;box-shadow:0 18px 45px #173e7422}.student-welcome h1{color:#fff;margin:12px 0;font-size:clamp(24px,3vw,36px)}.student-welcome p{color:#d9edff;margin:0}.student-welcome-tag{background:#ffffff24;border:1px solid #ffffff42;border-radius:99px;padding:5px 14px;font-size:13px}.student-logout{background:#fff;color:#194b84;margin:0}.student-section-title{margin:35px 0 15px;display:flex;align-items:center;justify-content:space-between}.student-section-title h2{margin:0 0 4px;font-size:23px}.student-section-title p{color:#6b7c93;margin:0}.student-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(265px,1fr));gap:18px}.student-task{background:#fff;border:1px solid #e0e8f3;border-radius:19px;padding:22px;box-shadow:0 9px 25px #193a6110;display:flex;flex-direction:column;gap:12px;min-height:235px}.student-task h3{font-size:20px;margin:0}.student-task p{color:#62768e;line-height:1.9;margin:0;flex:1}.student-task-top,.student-task-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.student-status{font-size:12px;font-weight:800;padding:6px 12px;border-radius:99px}.student-done{background:#e4f7ed;color:#12734d}.student-waiting{background:#fff1da;color:#8d5b10}.student-type{color:#5a779a;font-size:12px}.student-grades{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.student-grades article{border:1px solid #dae7f6;border-radius:17px;background:linear-gradient(155deg,#fff,#f0f7ff);padding:20px;display:flex;flex-direction:column;gap:12px}.student-grades strong{font-size:29px;color:#175da6}.student-grades small{color:#71859e}.student-privacy{margin:25px 0;background:#eaf4ff;color:#37618b;padding:15px;border-radius:13px}
.guardian-page{max-width:1050px;margin:auto}.guardian-header{border-bottom:1px solid #d9e4f3}.guardian-nav-label{font-weight:700;color:#4976a5}.guardian-hero{border-radius:24px;padding:34px;color:#fff;background:linear-gradient(115deg,#152c56,#1c5c9f 70%,#187e94);box-shadow:0 18px 44px #15365b26}.guardian-hero h1{color:#fff;margin:12px 0;font-size:clamp(25px,3vw,35px)}.guardian-hero p{color:#dceaff}.guardian-kicker{background:#ffffff24;border-radius:99px;padding:6px 14px;font-size:13px}.guardian-identity{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:20px 0}.guardian-identity>*{padding:7px 12px;border-radius:9px;background:#ffffff21}.guardian-viewed{border:1px solid #b6e3d2;background:#ffffff19;border-radius:12px;padding:13px;color:#e2fff0}.guardian-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.guardian-stat-grid article{background:#fff;border:1px solid #e0e8f2;border-radius:17px;padding:19px;display:flex;flex-direction:column;gap:8px}.guardian-stat-grid strong{font-size:30px;color:#205b9c}.guardian-stat-grid .guardian-stat-alert{background:#fff3f3;border-color:#f5caca}.guardian-stat-alert strong{color:#bc293a!important}.guardian-panel{background:#fff;border:1px solid #e1e8f1;border-radius:20px;padding:25px;margin:18px 0;box-shadow:0 7px 24px #1b395b0c}.guardian-panel h2{font-size:21px;margin:0 0 6px}.guardian-sub{color:#71849b;margin:0 0 18px}.guardian-grades{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.guardian-grade{background:#f3f8ff;border:1px solid #e1eafb;border-radius:15px;padding:16px;display:flex;flex-direction:column;gap:10px}.guardian-grade strong{font-size:27px;color:#1c5eaa}.guardian-grade small{color:#72849b}.guardian-files{display:grid;gap:12px}.guardian-file{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px;border:1px solid #e4eaf3;border-radius:14px;flex-wrap:wrap}.guardian-file div{display:flex;flex-direction:column;gap:7px}.guardian-file small{color:#71849b}.guardian-file-link{background:#e7f1ff;color:#1c5d9e;border-radius:10px;padding:9px 14px;font-weight:700}.guardian-alert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.guardian-alert-card{background:#fff5f5;border:1px solid #f2c5ca;border-right:5px solid #d2394b;border-radius:14px;padding:16px}.guardian-alert-title{display:flex;justify-content:space-between;color:#a92536;font-weight:800;margin-bottom:10px}.guardian-alert-title strong{font-size:23px}.guardian-alert-item{background:#fff;border:1px solid #f5d7db;border-radius:10px;padding:10px;margin-top:9px;display:grid;gap:4px}.guardian-alert-item p{margin:2px 0;color:#6d4250;white-space:pre-wrap}.guardian-alert-card small{color:#95636b}.guardian-success{background:#e7f7ed;color:#16683e;padding:14px;border-radius:12px}.guardian-print{text-align:left;margin:20px 0}.guardian-auth{max-width:570px;margin:40px auto;background:#fff;border:1px solid #dce7f5;border-radius:23px;padding:35px;box-shadow:0 16px 40px #1c457019}.guardian-auth-icon{font-size:42px}.guardian-auth p{color:#60748c;line-height:2}.guardian-auth input{margin-bottom:8px}@media(max-width:680px){.student-welcome,.guardian-hero{padding:22px;border-radius:17px}.student-welcome{align-items:flex-start;flex-direction:column}.guardian-stat-grid{gap:8px}.guardian-stat-grid article{padding:12px}.guardian-stat-grid strong{font-size:24px}.guardian-panel{padding:17px}.guardian-alert-grid{grid-template-columns:1fr}.guardian-auth{margin:15px auto;padding:22px}}@media print{.guardian-hero{color:#111!important;background:#fff!important;box-shadow:none}.guardian-hero h1,.guardian-hero p{color:#111!important}.guardian-panel,.guardian-alert-card{break-inside:avoid;box-shadow:none}.guardian-file-link{display:none}.guardian-print{display:none}}
