/* ADS UAS SIMULATORS V2 — capa de portal privado */
:root{--petrol:#1c474c;--lime:#bae406;--teal:#398e98;--ink:#333;--muted:#687477;--paper:#f4f6f5;--line:#dce3e1;--white:#fff}
.user-menu{display:flex;align-items:center;gap:16px;font-size:11px;color:#536064}.user-menu a,.admin-top>a:last-child{color:var(--teal);font-weight:700}.portal-hero{background:var(--petrol);color:#fff;padding:48px max(8vw,28px);display:flex;align-items:end;justify-content:space-between;gap:30px}.portal-hero h1{font:700 clamp(36px,5vw,54px) 'Roboto Condensed',sans-serif;margin:0}.portal-hero h1 em{color:var(--lime);font-style:normal}.portal-hero p:not(.eyebrow){color:#d3e0df;max-width:580px;line-height:1.6}.portal-hero-meta{border-left:1px solid #ffffff40;padding-left:22px;display:grid;gap:8px;min-width:230px}.portal-hero-meta span{font-size:9px;letter-spacing:1.3px;color:#b8d0ca}.portal-hero-meta strong{font-size:12px;overflow-wrap:anywhere}.module-link{transition:.2s}.module-link:hover{border-color:var(--teal);transform:translateY(-2px)}.module-link small{color:#71807e}.content-wrap{max-width:1200px;margin:0 auto;padding:35px 28px 70px}.back-link{display:inline-block;color:var(--teal);font-size:12px;font-weight:700;margin:0 0 22px}.module-intro{background:var(--petrol);color:white;padding:38px;border-radius:3px;margin-bottom:34px}.module-intro h1{font:700 clamp(34px,4vw,48px) 'Roboto Condensed',sans-serif;margin:0 0 10px}.module-intro>p:not(.eyebrow){color:#d3e0df;max-width:720px;line-height:1.6}.module-hours{display:inline-block;margin-top:10px;font-size:11px;color:var(--lime);font-weight:700}.content-section{margin:36px 0}.lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.lesson-card,.admin-card,.empty-panel{background:#fff;border:1px solid var(--line);padding:22px}.lesson-title{display:flex;gap:12px;align-items:flex-start;margin-bottom:16px}.lesson-title h3{font-size:20px;color:var(--petrol);margin:0 0 6px}.lesson-title p,.admin-card>p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.lesson-icon{display:grid;place-items:center;width:36px;height:36px;background:var(--petrol);color:var(--lime);flex:0 0 36px}.video-frame{position:relative;aspect-ratio:16/9;background:#162e31;overflow:hidden;margin:14px 0}.video-frame iframe{width:100%;height:100%;border:0}.text-link{display:inline-block;color:var(--teal);font-size:11px;font-weight:700;margin:4px 0 10px}.embed-warning{background:#fff4df;padding:18px;color:#785a20;font-size:12px}.empty-panel{color:var(--muted);font-size:13px;line-height:1.6}.empty-panel strong{color:var(--petrol)}.assessment-list{display:grid;gap:10px}.assessment-item{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;background:#fff;border:1px solid var(--line)}.assessment-item strong{color:var(--petrol)}.assessment-item p{font-size:12px;color:var(--muted);margin:6px 0 0}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;padding:12px 17px;font:700 12px 'Roboto',sans-serif;cursor:pointer;text-decoration:none}.btn-primary{background:var(--lime);color:var(--petrol)}.btn-secondary{background:var(--petrol);color:#fff;white-space:nowrap}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--paper)}.auth-card{width:min(100%,520px);padding:40px;background:#fff;border:1px solid var(--line);box-shadow:0 15px 40px #1c474c12}.auth-card h1{font:700 34px 'Roboto Condensed',sans-serif;color:var(--petrol);margin:24px 0 10px}.auth-card p{color:var(--muted);line-height:1.65;margin-bottom:24px}.brand-mark{display:inline-block;background:var(--petrol);color:var(--lime);font:700 21px 'Roboto Condensed',sans-serif;padding:9px 10px}.admin-top{height:70px;background:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 max(4vw,22px);border-bottom:1px solid var(--line)}.admin-top .brand{display:flex;align-items:center;gap:11px;color:var(--petrol)}.admin-top .brand strong{display:block;font:700 16px 'Roboto Condensed',sans-serif}.admin-top .brand small{display:block;color:var(--muted);font-size:9px;letter-spacing:1.5px;margin-top:3px}.admin-wrap{max-width:1200px;margin:auto;padding:42px 24px 70px}.admin-heading h1{font:700 42px 'Roboto Condensed',sans-serif;color:var(--petrol);margin:0 0 8px}.admin-heading>p:last-child{color:var(--muted);font-size:13px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:26px 0}.admin-card h2{font:700 22px 'Roboto Condensed',sans-serif;color:var(--petrol);margin:0 0 10px}.admin-card form{display:grid;gap:12px;margin-top:20px}.admin-card label{display:grid;gap:6px;font-size:11px;color:#526064;font-weight:700}.admin-card input,.admin-card select,.admin-card textarea{width:100%;border:1px solid var(--line);padding:11px 12px;font:12px 'Roboto',sans-serif;color:var(--ink);background:#fff;min-width:0}.admin-card textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.alert{padding:13px 16px;margin:16px 0;font-size:12px}.alert.success{background:#e8f2e5;color:#315e35}.alert.error{background:#fff1ed;color:#8a3928}.table-card{margin:16px 0}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;margin-top:15px;font-size:12px}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line)}th{color:var(--petrol);background:#f4f6f5}td{color:#556367}.setup-notice{display:grid;gap:8px;max-width:470px;background:#ffffff12;border:1px solid #ffffff35;padding:15px 18px;font-size:12px;line-height:1.5}.setup-notice strong{color:var(--lime)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.feature-card{background:#fff;border:1px solid var(--line);padding:24px}.feature-card>span{color:var(--teal);font:700 13px monospace}.feature-card h3{font-size:21px;color:var(--petrol);margin:16px 0 8px}.feature-card p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}.sim-card[hidden]{display:none}
@media(max-width:850px){.portal-hero{display:block}.portal-hero-meta{margin-top:24px}.lesson-grid,.admin-grid{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.assessment-item{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.user-menu{font-size:0}.user-menu a{font-size:11px}.portal-hero{padding:38px 22px}.content-wrap{padding:24px 18px 55px}.module-intro{padding:28px 22px}.admin-wrap{padding:30px 16px}.admin-card{padding:17px}.form-row{grid-template-columns:1fr}.admin-top{padding:0 14px}.admin-top .brand strong{font-size:13px}}
