:root{ --bg:#0b1020; --text:#eae7ff; --muted:#9aa0b5; --accent:#8fd3ff; --accent2:#c6a8ff; }
*{box-sizing:border-box} html,body{margin:0;padding:0;background:radial-gradient(1200px 600px at 20% 0%, #12193a 0, #0b1020 50%, #060912 100%);color:var(--text);font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif}
.nav-wrap{position:sticky;top:0;backdrop-filter:saturate(1.2) blur(6px);background:rgba(6,9,18,.6);z-index:10;border-bottom:1px solid rgba(255,255,255,.06)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1100px;margin:0 auto;padding:12px 16px}
.brand a{font-family:"Uncial Antiqua", serif;font-size:24px;color:#fff;text-decoration:none;letter-spacing:.5px}
.brand span{background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
nav a{color:#fff;text-decoration:none;margin:0 8px;padding:8px 10px;border-radius:10px} nav a:hover{background:rgba(255,255,255,.08)}
.hamburger{display:none;cursor:pointer} #menu-toggle{display:none}
.banner{overflow:hidden;max-height:280px} .banner .slides{display:flex;animation:slide 24s infinite}
.banner img{width:100%;flex:0 0 100%;object-fit:cover;filter:saturate(1.1)}
@keyframes slide{0%,27%{transform:translateX(0)}33%,60%{transform:translateX(-100%)}66%,93%{transform:translateX(-200%)}100%{transform:translateX(0)}}
.container{max-width:1100px;margin:24px auto;padding:0 16px}
.hero{padding:28px 0} .hero h1{font-family:"Uncial Antiqua", serif;font-size:40px;margin:0 0 10px}
.lead{color:var(--muted);max-width:65ch}
.btn{display:inline-block;padding:10px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.15);text-decoration:none;color:#fff;background:linear-gradient(90deg,rgba(143,211,255,.15),rgba(198,168,255,.15))}
.btn:hover{transform:translateY(-1px)}
.modules h2,.blog-front h2{font-family:"Uncial Antiqua", serif}
.link-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.link-grid a{display:block;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;text-decoration:none;color:#fff;background:rgba(255,255,255,.03)}
.link-grid a:hover{background:rgba(255,255,255,.08)}
.muted{color:var(--muted)} .alert{background:#3b1b1b;color:#ffdede;border:1px solid #7a3; padding:10px;border-radius:10px}
form label{display:block;margin:10px 0}
input[type=email],input[type=password]{width:100%;padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.2);color:#fff}
.sidebar{border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;max-width:260px} .dash-body{margin-top:12px}
.footer{opacity:.7;text-align:center;padding:24px 0;border-top:1px solid rgba(255,255,255,.06)}
@media (max-width: 860px){ nav{position:absolute;right:16px;top:52px;background:rgba(6,9,18,.95);padding:10px;border-radius:12px;display:none;flex-direction:column} #menu-toggle:checked ~ nav{display:flex} .hamburger{display:block} }
.note-stack{margin-top:12px} .note{padding:10px;border-radius:10px;margin-bottom:8px;background:rgba(255,255,255,.06)} .note.info{border:1px solid rgba(143,211,255,.4)}
.card{padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);margin-bottom:8px} .role{opacity:.7;margin-left:6px}
