/* Nexo Campus identity 1.0 — shared verbatim with WordPress. See docs/identidad-visual.md. */
.campus {
 --nx-canvas:#eef1f4;--nx-surface:#fafbfc;--nx-navy:#191d40;--nx-text:#202644;
 --nx-muted:#536078;--nx-line:#dce2e8;--nx-cyan:#52c5ea;--nx-cyan-ink:#09647d;
 --nx-coral:#f16c75;--nx-yellow:#f8b62b;--nx-violet:#8170d9;--nx-link:#2455a6;
 --nx-font:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 --ink:var(--nx-text);--muted:var(--nx-muted);--line:var(--nx-line);--blue:var(--nx-navy);--pale:#e5f5fb;--surface:var(--nx-surface);
 min-height:100dvh;color-scheme:light;color:var(--nx-text);background:var(--nx-canvas);font:16px/1.55 var(--nx-font);
}
.campus *{box-sizing:border-box}.campus a{color:var(--nx-link)}
.campus :is(button,.button,input,select,textarea){font-family:var(--nx-font)}
.campus :is(button,.button){min-height:40px;border-radius:9px}
.campus :is(button.primary,.button.primary,.portal-primary){background:var(--nx-navy);border-color:var(--nx-navy);color:#fff;font-weight:650}
.campus :is(button.primary,.button.primary,.portal-primary):hover{background:#2d345f;border-color:#2d345f;color:white}
.campus :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #2455a6;outline-offset:3px}
.campus :is(button,.button):disabled{opacity:.55;cursor:not-allowed}
.campus :is(.campus-card,.campus-metrics,.course-card,.lesson,.lab-panel,dialog,.course-header){background:var(--nx-surface);border-color:var(--nx-line)}
.campus :is(.campus-card,.campus-metrics,.course-card){box-shadow:0 3px 14px #191d4005}
.campus .learn-header{height:72px;min-height:72px;display:flex;align-items:center;gap:40px;padding:0 max(28px,calc((100vw - 1740px)/2));background:var(--nx-surface);border-bottom:1px solid var(--nx-line);position:sticky;top:0;z-index:8}
.campus .brand{display:flex;align-items:center;gap:10px;color:var(--nx-navy);text-decoration:none;flex-shrink:0}
.campus .brand b{font-size:24px;width:34px;line-height:34px;border:2px solid var(--nx-navy);border-right-color:var(--nx-cyan);border-radius:8px;color:var(--nx-navy);text-align:center}
.campus .brand .brand-name{font-size:27px;letter-spacing:-1px;line-height:1;color:var(--nx-navy);margin:0;align-self:center;font-weight:750}
.campus .brand-name small{display:block;font-size:9px;letter-spacing:2.8px;line-height:1.2;margin-top:6px;color:var(--nx-muted)}
.campus .learn-header nav{display:flex;gap:26px;align-self:stretch;align-items:stretch}
.campus .learn-header nav a{display:flex;align-items:center;white-space:nowrap;position:relative;color:var(--nx-muted);font-size:15px;padding:16px 2px;background:none;border-radius:0;text-decoration:none}
.campus .learn-header nav a:hover{color:var(--nx-navy)}
.campus .learn-header nav a[aria-current=page]{font-weight:700;color:var(--nx-navy);background:none}
.campus .learn-header nav a[aria-current=page]:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--nx-cyan);border-radius:4px}
.campus .account{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:14px}
.campus .avatar{background:#e7e4f6;color:#463985;border:1px solid #dbd4ef;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-size:12px;font-weight:700}
.campus .account-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.campus .account button{background:var(--nx-surface);border:1px solid var(--nx-line);font-size:13px;padding:6px 12px;color:var(--nx-text)}
.campus .campus-page{max-width:1796px;margin:auto;padding:24px 28px 32px;display:grid;gap:20px}
.campus .campus-hero{height:220px;border-radius:14px;background:var(--nx-canvas);position:relative;isolation:isolate;overflow:hidden}
.campus .campus-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:right center;z-index:-2}
.campus .campus-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#eef1f4 0%,#eef1f4 38%,#eef1f400 68%);z-index:-1}
.campus .campus-hero-copy{max-width:65%;height:100%;padding:24px 32px;display:flex;flex-direction:column;justify-content:center}
.campus .campus-hero h1{font-size:clamp(30px,2.5vw,44px);line-height:1.14;letter-spacing:-1.2px;margin:0 0 12px;color:var(--nx-navy)}
.campus .campus-hero-copy>p:last-child{font-size:17px;color:var(--nx-muted);margin:0}
.campus .eyebrow{color:#596481;font-size:11px;letter-spacing:1.8px;font-weight:700}
.campus .campus-hero .eyebrow{margin:0 0 12px}
.campus :is(.campus-card h2,.campus-card h3,.course-card h3){color:var(--nx-navy)}
.campus .campus-card p{font-size:15px;color:var(--nx-muted)}
.campus :is(.muted-note,.lab-subtitle,.lab-facts,.course-progress small){font-size:13px!important;color:var(--nx-muted)}
.campus .metric-icon{background:#ddf4fb;color:#09647d}
.campus .campus-metric:nth-child(2) .metric-icon{background:#fff0cd;color:#825500}
.campus .campus-metric:nth-child(3) .metric-icon{background:#fce4e7;color:#973f50}
.campus .campus-metric small{font-size:13px}.campus .campus-metric{font-size:15px}
.campus .campus-card progress{accent-color:#1385a7}
.campus .campus-card progress::-webkit-progress-value{background:#1385a7}
.campus .campus-card progress::-moz-progress-bar{background:#1385a7}
.campus .featured-art{height:230px;object-position:center;border-radius:10px}
.campus .badge,.campus .tag.active{background:#ddf4fb;color:#09647d}
.campus .badge.warning{background:#fff0cd;color:#765000}.campus .badge.neutral{background:#e6eaf0;color:#536078}
.campus .route-number{background:#ede8fb;color:#55439b}.campus .route-row{font-size:15px}.campus .route-state{font-size:13px}
.campus .topic-progress{font-size:14px}.campus .topic-progress strong{font-size:13px}
.campus .campus-column>section:has(>.expiry-line){border-top:3px solid var(--nx-yellow)}
.campus .campus-column>section:has(>.progress-list){border-top:3px solid var(--nx-violet)}
.campus .node-tile{background:var(--nx-surface)}.campus .node-tile small{font-size:12px}
.campus .topology-preview{background-color:#f5f8fa;border-color:var(--nx-line)}
.campus .lab-picker select{background:var(--nx-surface)}
.campus .workspace,.campus .lab-side,.campus .step-nav{background:var(--nx-canvas)}
.campus .lesson{background:var(--nx-surface)}.campus .step-nav button[aria-current=step]{background:#ddf4fb;color:#14546e;border-left:3px solid #1385a7}
.campus .takeaway{background:#edf6fc;border-color:#2455a6}.campus .takeaway strong{color:#2455a6}
.campus .practice-panel{background:#f1f4fa;border-color:var(--nx-line)}.campus .criteria-results li{background:var(--nx-surface)}
.campus .simulation{background:#f5f7fc}.campus .router{background:var(--nx-surface);color:var(--nx-navy);border-color:#8170d9}
.campus .packet{background:#ddf4fb;color:#09647d;border-color:#1385a7}.campus .packet-path{border-color:#1385a7}
.campus dialog{background:var(--nx-surface);color:var(--nx-text);box-shadow:0 18px 80px #191d4030}
.campus dialog::backdrop{background:#191d406b}
.campus .answer-option{background:#eef1f4}.campus .answer-option:has(input:checked){background:#e5f5fb;outline:1px solid #1385a7}
.campus .handoff{max-width:560px;margin:12vh auto;padding:32px;background:var(--nx-surface);border:1px solid var(--nx-line);border-radius:14px}
.campus .handoff h1{margin-top:26px;font-size:28px}
@media(min-width:1001px) and (max-height:900px){.campus .campus-page{padding:16px 24px;gap:14px}.campus .campus-hero{height:165px}.campus .campus-hero h1{font-size:34px}.campus .featured-art{height:185px}}
@media(max-width:1100px){.campus .learn-header{gap:24px}.campus .learn-header nav{gap:18px}.campus .account-name{display:none}.campus .campus-hero-copy{max-width:70%;padding:22px}.campus .campus-hero h1{font-size:34px}}
@media(max-width:700px){.campus .learn-header{height:auto;min-height:72px;flex-wrap:wrap;padding:12px 16px 0;gap:12px}.campus .learn-header nav{order:3;width:100%;gap:20px;overflow:auto}.campus .learn-header nav a{padding:12px 0;font-size:14px}.campus .campus-page{padding:16px;gap:16px}.campus .campus-hero{height:205px}.campus .campus-hero-copy{max-width:100%;padding:20px}.campus .campus-hero h1{font-size:30px;max-width:285px}.campus .campus-hero-copy>p:last-child{max-width:250px;font-size:15px}.campus .campus-hero-image{opacity:.26}.campus .campus-hero:after{background:linear-gradient(90deg,#eef1f4 0%,#eef1f4bb 55%,transparent)}.campus .featured-art{height:160px}.campus .account{gap:8px}.campus .campus-metric{font-size:14px}.campus .handoff{margin:8vh 16px;padding:24px}}
@media(prefers-reduced-motion:reduce){.campus *{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

.campus .welcome-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:65vh;gap:32px}.campus .welcome-panel h1{font-size:clamp(34px,4vw,56px);line-height:1.1}.campus .welcome-panel img{width:100%;border-radius:14px}.campus .welcome-panel .welcome-copy{padding:32px}.campus .welcome-panel p{color:var(--nx-muted);font-size:18px}.campus .welcome-panel small{display:block;margin-top:16px;color:var(--nx-muted)}@media(max-width:700px){.campus .welcome-panel{grid-template-columns:1fr;gap:0}.campus .welcome-panel .welcome-copy{padding:24px 8px}.campus .welcome-panel img{max-height:200px;object-fit:cover}}
