/* StudyLink Jr — a distinct, calm learning workspace. */
:root { --bg:#edf5f3; --primary:#126c77; --primary-hover:#0c535c; --secondary:#234b79; --secondary-hover:#193b63; --text:#19394b; --text-muted:#536975; --border:#d5e4e1; --accent:#f1c94c; --radius:16px; --shadow:0 5px 22px #183d4b0a; }
body { background:var(--bg); }
.centered { background:radial-gradient(ellipse at 90% 15%,#d4ebe7 0,transparent 55%),linear-gradient(135deg,#f6faf7,#eaf2f7); padding:24px; }
.login-card { max-width:460px; width:100%; border:1px solid #d4e3e0; border-top:5px solid var(--primary); border-radius:24px; box-shadow:0 20px 70px #234b7912; padding:42px 36px; text-align:left; }
.junior-login-logo { width:220px; max-width:100%; height:auto; display:block; margin-bottom:30px; }
.junior-eyebrow { font-size:11px; letter-spacing:.14em; font-weight:800; color:var(--primary); }
.login-card .brand { font-size:30px; line-height:1.6; letter-spacing:.02em; color:var(--text); margin:12px 0; }
.login-card .subtitle { line-height:1.9; margin-bottom:28px; }
.login-card .login-note { line-height:1.8; color:var(--text-muted); }
#junior-preview-link { display:inline-block; margin-top:12px; color:var(--primary); font-weight:700; text-underline-offset:4px; }
.junior-brandbar { max-width:1000px; margin:auto; padding:9px 24px; display:flex; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid var(--border); }
.junior-brandbar img { width:130px; height:45px; object-fit:contain; }
.junior-brandbar span { font-size:11px; font-weight:700; letter-spacing:.06em; background:#fbefb9; color:#4e451c; padding:6px 12px; border-radius:20px; }
.app-header { background:#ffffff; border-top:4px solid var(--primary); border-bottom:1px solid var(--border); }
.header-title { color:var(--text); }
.card,.bulletin-card { border:1px solid var(--border); box-shadow:var(--shadow); }
.card-title { color:var(--text); }
.tab-nav { background:#dfece8; padding:5px; border-radius:13px; gap:5px; border-bottom:0; }
.tab-btn { border-radius:9px; border:0; color:#405b66; }
.tab-btn.is-active { color:#fff; background:var(--primary); border-color:transparent; }
.bulletin-card { border-left:4px solid #e2ba38; background:#fffdf4; }
.btn { min-height:40px; }
.btn-primary { box-shadow:0 3px 8px #126c7718; }
.input:focus,.textarea:focus,.select:focus { border-color:var(--primary); outline:2px solid #126c7725; }
:focus-visible { outline:3px solid #bd8b13; outline-offset:3px; }
.junior-preview-banner { padding:12px 20px; background:#234b79; color:white; text-align:center; font-size:13px; line-height:1.6; }
.junior-preview-banner a { color:#fff0a8; margin-left:12px; }
.junior-sample-entry { padding:20px; border:1px solid var(--border); border-radius:16px; background:white; line-height:1.9; }
@media(max-width:600px) { .login-card{padding:30px 24px}.login-card .brand{font-size:26px}.junior-brandbar{padding:7px 16px}.junior-brandbar img{width:112px}.junior-brandbar span{font-size:10px;padding:5px 8px}.header-inner{flex-wrap:wrap;gap:10px}.header-actions{flex-wrap:wrap;gap:4px}.header-actions .btn{font-size:12px;padding:6px 8px}.header-title{font-size:17px} }
@media print { .junior-brandbar,.junior-preview-banner{display:none}body{background:white} }
