/* SpeakUp Academy — shared visual language with Kids and Plus. */
:root{--blue:#126b57;--blue2:#177c65;--cyan:#36947e;--ink:#182e2b;--muted:#73827d;--line:#e5ece8;--soft:#f3f6f5;--navy:#103f36;--shadow:0 4px 18px #183e2b05}
body{background:var(--soft);font-family:Tahoma,"Segoe UI",Arial,sans-serif;font-size:13px;line-height:1.6}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{transition:background .15s,border-color .15s,box-shadow .15s}button:focus-visible,a:focus-visible{outline:3px solid #60b39a;outline-offset:3px}button:disabled{opacity:.6;cursor:wait}a.primary{text-decoration:none;display:inline-flex;align-items:center}
.app{grid-template-columns:248px minmax(0,1fr);background:var(--soft)}.sidebar{padding:24px 16px;background:#103f36;box-shadow:none;overflow-y:auto;gap:0}.sidebar:after{display:none}.logo-row{gap:12px;padding:0 0 24px;margin:0 0 24px;border-color:#ffffff15}.sidebar-logo-card{width:62px;height:49px;padding:4px 6px;border-radius:10px;box-shadow:none;flex-shrink:0}.sidebar-product b{font-size:11px;letter-spacing:1px}.sidebar-product small{color:#b5cec6;font-size:11px}.sidebar-caption{color:#89b3a5;font-size:10px;margin:0 12px 12px}.sidebar nav{gap:6px}.nav-btn{display:flex;align-items:center;gap:12px;padding:12px;border:0;border-radius:8px;color:#c0d6ce;font-size:12px;font-weight:500}.nav-symbol{font-size:20px;line-height:1;width:22px;text-align:center;opacity:.9}.nav-btn.active{background:#2b6354;color:#fff;font-weight:700;box-shadow:inset -3px 0 #7fc5a9}.nav-btn:hover{background:#ffffff10;color:white}.sidebar-foot{padding-top:28px;gap:8px}.sidebar-foot a{background:transparent;border:1px solid #ffffff18;border-radius:8px;color:#d4e5de!important;padding:10px 12px;font-size:11px}.sidebar-foot #crmNav{margin-bottom:0!important}.sidebar-foot a:hover{background:#ffffff10}.danger-ghost{background:#ffffff0a;border:1px solid #ffffff18;color:#f2d6d6;border-radius:8px;font-size:11px}
.main-content{padding:0 30px 40px}.topbar{min-height:76px;background:#fff;backdrop-filter:none;margin:0 -30px 28px;padding:12px 30px;border-bottom:1px solid var(--line);gap:18px}.topbar h2{font-size:18px;line-height:1.4;margin:2px 0 0}.topbar .eyebrow{font-size:8px;color:var(--muted);letter-spacing:1.4px}.user-badge{margin-inline-start:auto;padding:0 16px;border:0;border-inline-start:1px solid var(--line);border-radius:0;box-shadow:none;min-width:0;font-size:12px}.user-badge small{font-size:10px}#enrollmentAlerts{gap:6px;max-width:340px}#enrollmentAlerts .ghost{font-size:10px;padding:8px}.eyebrow{color:var(--blue);font-size:9px;letter-spacing:1.7px}
#page{min-width:0}#page[data-page=home]{display:flex;flex-direction:column}.admin-welcome{order:0;margin:2px 0 24px}.admin-welcome h1{font-size:26px;line-height:1.5;letter-spacing:-.5px;margin:6px 0}.admin-welcome p{color:var(--muted);margin:0;font-size:13px}.admin-actions{order:2}#homeStats{order:1;background:transparent;padding:0;border:0;box-shadow:none}.stats{gap:14px;margin-bottom:22px}.stat,.panel,.role-card{border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.stat{padding:20px;background:#fff;min-width:0}.stat:after{width:6px;height:6px;left:20px;top:22px;background:#81b69c}.stat span{font-size:11px}.stat b{font-size:29px;line-height:1.3;color:var(--ink);margin-top:14px;font-weight:700}.panel{padding:22px;margin-bottom:20px}.panel h3{font-size:15px;margin:0 0 8px}.section-title{margin:0 0 18px}.section-title h3{margin:0}.section-title p{margin:4px 0 0;font-size:12px}.admin-actions .check-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;padding:0}.homeQuick{position:relative;text-align:right;min-height:106px;background:#f7f9f8;border:1px solid var(--line);border-radius:10px;padding:18px 15px}.homeQuick:hover{border-color:#91bbaa;background:#edf5f0}.homeQuick b{display:block;color:var(--ink);font-size:13px}.homeQuick small{display:block;margin-top:8px;font-size:11px}.homeQuick:after{content:'←';color:#31846a;position:absolute;inset-inline-end:12px;top:12px}
.primary{background:#126b57;color:#fff;box-shadow:none;border-radius:8px;font-size:12px;padding:11px 16px;font-weight:700}.primary:hover{background:#0c5545}.ghost,.backPublic{background:#edf4f0;border:1px solid #dce9e1;color:#22614e;border-radius:8px;padding:9px 12px;font-size:12px}.ghost:hover{background:#e1eee6}.input,.form input,.form select,.form textarea,.login-card input,.lead-form input,.lead-form select{border:1px solid #dce5df;border-radius:8px;background:#fff;padding:11px 13px;color:var(--ink)}.input:focus,.form input:focus,.form select:focus,.form textarea:focus,.login-card input:focus,.lead-form input:focus,.lead-form select:focus{border-color:#419279;box-shadow:0 0 0 3px #41927916}.toolbar{gap:10px;margin-bottom:18px}.toolbar .input{min-width:200px;flex:0 1 350px;font-size:12px}.table-wrap{border:1px solid var(--line);border-radius:12px;box-shadow:none;max-width:100%;overflow:auto}.table{font-size:12px}.table th{background:#f7f9f8;color:#6c7d75;font-size:10px;font-weight:500;padding:13px 16px}.table td{padding:16px;border-color:#edf1ee}.table tr:hover td{background:#fafcfb}.table .ghost{font-size:10px;padding:7px 9px;margin:2px}.pill{background:#edf4f0;border-color:#dfeae3;color:#287251;font-size:10px;font-weight:500}.role-card{padding:18px}.role-card b{font-size:13px}.role-card:before{height:3px;opacity:.65}.role-card p{font-size:11px}.course-card{background:#fff;border-color:var(--line);border-radius:12px}.course-card:after{display:none}.check-item{background:#f7f9f8;border-color:var(--line);border-radius:9px}.permission-notice{background:#f1f6f3;border-color:#dfe9e2;border-radius:10px;color:#587465}.generated-code{background:#eff7f2;border-color:#9bc3ad}.progress{background:#e8eee9}.progress span{background:#2b8b67}.modal{background:#12372e80}.modal-card{border-color:var(--line);border-radius:14px;box-shadow:0 24px 80px #143d2920}.toast{background:#103f36;box-shadow:0 8px 24px #12372920}.notice-item{background:#f7faf8;border-color:var(--line);color:var(--ink)}.notice-item.unread{background:#edf6f0;border-right-color:#2b8b67}.enrollment-account-link{color:var(--blue)}.leadStatus{background:#f8faf9;border-color:var(--line)}.enrollment-course-picker{border-color:var(--line)}
.public-shell{background:radial-gradient(ellipse at 85% 8%,#dfeee6,transparent 50%),linear-gradient(130deg,#f4f7f5,#edf2f0);padding:56px 24px}.login-orbit{display:none}.public-gateway{max-width:980px;gap:64px}.gateway-brand{color:var(--ink);padding:0}.gateway-logo{border-radius:14px;box-shadow:none;padding:8px 14px;border:1px solid #e1e9e4}.gateway-logo img{width:140px;max-height:90px}.dashboard-wordmark{color:#53806d;font-size:10px;letter-spacing:2px;margin-top:18px}.gateway-brand h1{font-size:40px;line-height:1.5;letter-spacing:-1px;margin:16px 0}.gateway-brand p{color:var(--muted);font-size:13px;line-height:2}.gateway-actions{gap:12px}.gateway-action{border:1px solid var(--line);border-radius:12px;padding:22px;gap:16px;box-shadow:0 6px 22px #254a3404;grid-template-columns:42px 1fr auto}.gateway-action:hover{transform:none;border-color:#9abaac;box-shadow:0 8px 26px #254a3409}.gateway-action .icon,.gateway-action.interest .icon{width:42px;height:42px;background:#edf4ef;color:#126b57;border-radius:10px;font-size:21px}.gateway-action b{font-size:15px;color:var(--ink)}.gateway-action small{font-size:11px}.gateway-action .arrow{font-size:18px}.gateway-panel{width:min(500px,100%);border:1px solid #e2e9e4;border-radius:16px;padding:30px;box-shadow:0 16px 60px #2448310a}.gateway-panel h2{font-size:23px;color:var(--ink)}.gateway-panel p{font-size:12px}.gateway-panel .primary{background:#173d68}.login-card{border-radius:0;gap:18px}.login-card-logo img{width:140px;max-height:85px}.privacy-note{font-size:10px}
@media(max-width:1100px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar{flex-wrap:wrap}.topbar #enrollmentAlerts{max-width:none}.public-gateway{gap:32px}}
@media(max-width:760px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{position:static;height:auto;padding:16px;overflow:visible}.logo-row{margin:0 0 14px;padding:0 0 14px}.sidebar-caption{display:none}.sidebar nav{display:flex;max-width:100%;overflow-x:auto;padding-bottom:6px}.nav-btn{flex-shrink:0;padding:10px;gap:8px;font-size:11px}.sidebar-foot{display:flex;flex-wrap:wrap;padding-top:12px;margin-top:6px;gap:6px}.sidebar-foot a,.sidebar-foot button{font-size:10px;padding:7px 10px}.main-content{padding:0 16px 30px}.topbar{position:static;margin:0 -16px 22px;padding:16px;min-height:72px;gap:12px}.topbar h2{font-size:17px}.user-badge{display:none}#enrollmentAlerts{width:100%}.admin-welcome h1{font-size:23px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:16px}.stat b{font-size:25px}.panel{padding:17px}.toolbar .input{min-width:0;flex:1 1 200px}.role-grid{grid-template-columns:1fr}.admin-actions .check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.homeQuick{padding:16px 12px}.homeQuick small{font-size:10px}.public-shell{padding:28px 16px}.public-gateway{grid-template-columns:1fr;gap:24px}.gateway-brand{text-align:center}.gateway-brand h1{font-size:28px;margin:12px 0}.gateway-brand p{font-size:12px;margin:0 auto;max-width:420px}.gateway-logo img{width:115px;max-height:65px}.gateway-action{padding:18px}.gateway-panel{padding:22px 18px}.form input,.form select,.form textarea,.login-card input,.lead-form input,.lead-form select{font-size:16px}.modal{padding:10px}.modal-card{width:100%;padding:18px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* === SpeakUp blue identity preview — 2026-09-29 === */
:root{
  --blue:#1268f3;
  --blue2:#0b43d8;
  --cyan:#13b8ef;
  --ink:#0b2f6b;
  --muted:#58718f;
  --line:#dbe9f7;
  --soft:#f4f9ff;
  --navy:#0b43d8;
  --shadow:0 10px 30px rgba(33,97,167,.08);
}
body,.app{background:linear-gradient(180deg,#f9fcff 0%,var(--soft) 100%);color:var(--ink)}
.sidebar{
  background:#fff;
  color:var(--ink);
  border-inline-end:1px solid var(--line);
  box-shadow:8px 0 28px rgba(49,102,156,.05);
}
.logo-row{border-color:#e4eef8}
.sidebar-logo-card{background:#fff;border:1px solid #e4eef8}
.sidebar-product b{color:#0b43d8}
.sidebar-product small,.sidebar-caption{color:#6a83a1}
.nav-btn{color:#315f8f}
.nav-btn.active{
  background:linear-gradient(135deg,#1268f3,#13b8ef);
  color:#fff;
  box-shadow:0 10px 22px rgba(18,104,243,.18);
}
.nav-btn:hover{background:#edf7ff;color:#0b43d8}
.sidebar-foot a{
  background:#f7fbff;
  border-color:#dbe9f7;
  color:#315f8f!important;
}
.sidebar-foot a:hover{background:#edf7ff;color:#0b43d8!important}
.danger-ghost{background:#fff5f6;border-color:#f1d8dc;color:#b44254}
.topbar{border-bottom-color:var(--line)}
.eyebrow{color:#1268f3}
.stat,.panel,.role-card,.course-card{border-color:var(--line)}
.stat:after{background:#13b8ef}
.homeQuick{background:#f8fbff;border-color:#dbe9f7}
.homeQuick:hover{border-color:#a9d4fa;background:#eef8ff}
.homeQuick:after{color:#1268f3}
.primary,.gateway-panel .primary{
  background:linear-gradient(135deg,#1268f3,#0b43d8);
  color:#fff;
}
.primary:hover,.gateway-panel .primary:hover{background:linear-gradient(135deg,#0b58d6,#0838b7)}
.ghost,.backPublic{background:#eef8ff;border-color:#d2e8fb;color:#205b99}
.ghost:hover{background:#e2f2ff}
.input:focus,.form input:focus,.form select:focus,.form textarea:focus,.login-card input:focus,.lead-form input:focus,.lead-form select:focus{
  border-color:#6abcf3;
  box-shadow:0 0 0 3px rgba(19,184,239,.12);
}
.table th{background:#f7fbff;color:#6a83a1}
.table tr:hover td{background:#fbfdff}
.pill{background:#edf7ff;border-color:#d2e8fb;color:#315f8f}
.check-item{background:#f8fbff}
.permission-notice{background:#f1f8ff;border-color:#dbe9f7;color:#58718f}
.generated-code{background:#eef8ff;border-color:#9fd1f7}
.progress{background:#e5f1fb}.progress span{background:linear-gradient(90deg,#1268f3,#13b8ef)}
.modal{background:rgba(7,36,91,.50)}
.toast{background:#0b43d8;box-shadow:0 8px 24px rgba(11,67,216,.18)}
.notice-item{background:#f8fbff;border-color:#dbe9f7;color:var(--ink)}
.notice-item.unread{background:#eef8ff;border-right-color:#1268f3}
.leadStatus{background:#f8fbff}
.public-shell{
  background:
    radial-gradient(ellipse at 85% 8%,rgba(19,184,239,.14),transparent 50%),
    radial-gradient(ellipse at 8% 90%,rgba(255,138,31,.08),transparent 45%),
    linear-gradient(130deg,#f9fcff,#eef7ff);
}
.gateway-logo{border-color:#dbe9f7;background:#fff}
.dashboard-wordmark{color:#4d78a9}
.gateway-action{border-color:#dbe9f7;box-shadow:0 8px 24px rgba(42,93,149,.05)}
.gateway-action:hover{border-color:#b9d9f7;box-shadow:0 12px 28px rgba(42,93,149,.09)}
.gateway-action .icon,.gateway-action.interest .icon{background:#edf7ff;color:#1268f3}
.gateway-panel{border-color:#dbe9f7;box-shadow:0 18px 60px rgba(39,103,171,.10)}
@media(max-width:760px){
  .sidebar{border-inline-end:0;border-bottom:1px solid var(--line)}
}


.staff-student-lookup{position:relative;min-width:260px;max-width:420px;flex:1}.staff-student-lookup label{display:block;font-size:14px;margin-bottom:4px}.staff-student-lookup form>div{display:flex;gap:6px}.staff-student-lookup input{width:100%;min-width:0;background:white;border:1px solid #c6d7eb;border-radius:8px;padding:10px;color:#163b67;font-size:14px}.lookup-results:not(:empty){position:absolute;top:100%;inset-inline:0;z-index:20;background:white;border:1px solid #c6d7eb;border-radius:10px;padding:14px;box-shadow:0 6px 20px #193b6826;color:#173d6d}.lookup-results>div+div{margin-top:10px}.topbar{flex-wrap:wrap}
