:root{--bg:#0b1220;--panel:#121c2e;--text:#eef4ff;--muted:#b8c4d8;--accent:#d4af37;--purple:#6a0dad;--border:rgba(255,255,255,.13);--danger:#e25b52;--max:1180px}
*{box-sizing:border-box} body{margin:0;font-family:Arial,Helvetica,sans-serif;background:radial-gradient(circle at top left,rgba(106,13,173,.16),transparent 32%),linear-gradient(180deg,#0b1220 0%,#0d1525 100%);color:var(--text);line-height:1.55} a{color:inherit;text-decoration:none}.container{width:min(var(--max),calc(100% - 2rem));margin:0 auto}.topbar{position:sticky;top:0;z-index:20;background:rgba(8,12,22,.92);border-bottom:1px solid var(--border);backdrop-filter:blur(10px)}.topbar-inner{display:flex;align-items:center;gap:.9rem;justify-content:space-between;padding:.65rem 0}.brand-logo{height:50px;max-width:260px;object-fit:contain;border-radius:8px}.menu-toggle{display:none}.main-menu{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap}.main-menu a{padding:.65rem .85rem;border-radius:12px;background:rgba(255,255,255,.045);border:1px solid var(--border);font-weight:800;font-size:.92rem}.user-pill{padding:.7rem .9rem;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid var(--border);color:var(--muted);white-space:nowrap}.section{padding:1.25rem 0 2rem}.panel,.form-card,.card{background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border:1px solid var(--border);border-radius:24px;padding:1.35rem;box-shadow:0 18px 45px rgba(0,0,0,.22)}.form-card{max-width:560px;margin:3rem auto}h1,h2,h3{margin:0 0 .75rem;line-height:1.12}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.4rem,3vw,2.1rem)}.muted{color:var(--muted)}.btn-row{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}.btn,button.btn{display:inline-flex;align-items:center;justify-content:center;padding:.78rem 1rem;border-radius:14px;font-weight:800;border:1px solid transparent;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--purple),var(--accent));color:#fff}.btn-secondary{background:rgba(255,255,255,.055);border-color:var(--border);color:#fff}.btn-danger{background:rgba(226,91,82,.15);border-color:rgba(226,91,82,.35);color:#ffd2ce}.btn-small{padding:.48rem .7rem;border-radius:10px;font-size:.88rem}input,textarea,select{width:100%;padding:.9rem;margin:.35rem 0 1rem;border-radius:14px;border:1px solid var(--border);background:rgba(255,255,255,.07);color:#fff}textarea{min-height:120px}label{display:block;font-weight:800;margin-top:.35rem}.notice,.error{padding:1rem;border-radius:16px;margin:0 0 1rem;word-break:break-word}.notice{background:rgba(31,157,85,.13);border:1px solid rgba(31,157,85,.25)}.error{background:rgba(226,91,82,.13);border:1px solid rgba(226,91,82,.25)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.module-table{width:100%;border-collapse:separate;border-spacing:0 7px}.module-table th{text-align:left;color:#fff;padding:8px 12px;font-size:.96rem}.module-table td{padding:8px 12px!important;background:rgba(255,255,255,.045);border-top:1px solid var(--border);border-bottom:1px solid var(--border);vertical-align:middle}.module-table td:first-child{border-left:1px solid var(--border);border-radius:12px 0 0 12px}.module-table td:last-child{border-right:1px solid var(--border);border-radius:0 12px 12px 0}.call-link{font-weight:800;color:#f4d46b}.media-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.video-frame{position:relative;width:100%;padding-top:56.25%;border-radius:16px;overflow:hidden;border:1px solid var(--border);background:rgba(0,0,0,.25)}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}video,audio,iframe{max-width:100%}.media-img{max-width:100%;border-radius:18px;border:1px solid var(--border)}.footer{padding:2rem 0 3rem;text-align:center;color:var(--muted)}hr{border:0;border-top:1px solid var(--border);margin:1.1rem 0}.actions{display:flex;gap:.5rem;flex-wrap:wrap}.edit-banner{border-left:4px solid var(--accent)}
@media(max-width:820px){.container{width:min(100% - 1rem,var(--max))}.topbar-inner{display:grid;grid-template-columns:1fr auto;gap:.7rem;align-items:start}.brand-logo{height:44px;max-width:220px}.menu-toggle{display:inline-flex;grid-column:2;grid-row:1;padding:.7rem .9rem;border-radius:12px;background:var(--accent);color:#111;font-weight:900;border:0}.main-menu{display:none;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:.55rem;width:100%}body.menu-open .main-menu{display:grid}.main-menu a{text-align:center}.user-pill{grid-column:1/-1;width:100%;text-align:center}.grid-2,.admin-grid{grid-template-columns:1fr}.panel,.form-card,.card{padding:1rem;border-radius:20px}.form-card{margin:1.5rem auto}.module-table{font-size:.9rem;display:block;overflow-x:auto;white-space:nowrap}.module-table th,.module-table td{padding:7px 8px!important}h1{font-size:2rem}.assignment-card{width:100%;overflow:hidden}.btn,.btn-row .btn,button.btn{width:100%}.actions .btn,.actions button.btn{width:auto}}
@media(max-width:520px){.main-menu{grid-template-columns:1fr}.brand-logo{max-width:200px}}
