/* Reset básico e fontes */
:root { --bg-dark:#0f172a; --bg-card:rgba(30,41,59,.7); --border-color:rgba(148,163,184,.2); --primary:#38bdf8; --accent:#f59e0b; --text-main:#e2e8f0; --text-muted:#94a3b8; --gradient-header:linear-gradient(135deg,#0f172a 0%,#1e293b 100%); }
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:system-ui,-apple-system,sans-serif;background:var(--bg-dark);color:var(--text-main);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
header{background:var(--gradient-header);border-bottom:1px solid var(--border-color);padding:1rem 0}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.header-content{display:flex;flex-direction:column;align-items:center;gap:15px;text-align:center}
@media(min-width:768px){.header-content{flex-direction:row;justify-content:space-between;text-align:left}}
.logo-area{display:flex;align-items:center;gap:15px}
.logo-img{height:70px;width:70px;border-radius:50%;object-fit:contain;background:#fff;border:3px solid rgba(255,255,255,.1);padding:2px}
.site-title h1{font-size:1.5rem;font-weight:800;color:#fff;line-height:1.2}
.site-title p{font-size:.9rem;color:var(--text-muted)}
nav ul{list-style:none;display:flex;gap:20px;flex-wrap:wrap;justify-content:center}
nav a{color:var(--text-main);text-decoration:none;font-weight:500;font-size:.95rem;transition:color .2s}
nav a:hover,nav a.active{color:var(--primary)}
.btn-login{background:var(--primary);color:#0f172a;padding:8px 16px;border-radius:6px;font-weight:700}
.btn-login:hover{opacity:.9;color:#0f172a}
main{flex:1;padding:40px 0}
h2{color:var(--primary);margin-bottom:20px;font-size:1.8rem}
h3{color:#fff;margin:30px 0 15px;font-size:1.4rem;border-left:4px solid var(--accent);padding-left:10px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:10px}
h4{color:var(--primary);margin:25px 0 10px;font-size:1.2rem}
p{margin-bottom:15px;text-align:justify}
ul,ol{margin-bottom:20px;padding-left:20px}
li{margin-bottom:8px}
.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:30px;margin-bottom:20px}
footer{text-align:center;padding:30px;border-top:1px solid var(--border-color);font-size:.9rem;color:var(--text-muted);background:#0b1120}
.breadcrumb{margin-bottom:20px;font-size:.9rem}
.breadcrumb a{color:var(--text-muted);text-decoration:none}
.breadcrumb span{color:var(--text-main)}
.module-grid{display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.module-card{background:var(--bg-card);border:1px solid var(--border-color);padding:20px;border-radius:10px;transition:transform .2s,border-color .2s;text-decoration:none;display:block}
.module-card:hover{transform:translateY(-3px);border-color:var(--primary)}
.module-card h4{color:var(--primary);margin-bottom:5px;font-size:1.1rem}
.module-card p{color:var(--text-muted);font-size:.9rem;margin:0}
.module-card.locked{opacity:.5;cursor:not-allowed;pointer-events:none;border-color:transparent}
.module-card.locked:hover{transform:none}
.lock-badge{display:inline-block;background:#334155;color:#94a3b8;padding:4px 8px;border-radius:4px;font-size:.75rem;margin-top:10px}
.grid-2{display:grid;gap:20px}
@media(min-width:768px){.grid-2{grid-template-columns:2fr 1fr}}
ul.content-list{margin-bottom:20px;padding-left:20px}
