:root{--bg:#07111f;--bg-deep:#030814;--panel:#091525b8;--panel-strong:#0c1d32e6;--line:#97c5ff2e;--text:#eef7ff;--muted:#9fb3c8;--cyan:#49d7ff;--cyan-strong:#17b9ee;--gold:#ffd86a;--gold-dark:#b98112;--danger:#ff6f7a;--success:#72f0a1;--shadow:0 24px 80px #0000006b}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--text);background:radial-gradient(circle at 15% 10%, #49d7ff33, transparent 32rem), radial-gradient(circle at 85% 20%, #ffd86a24, transparent 30rem), linear-gradient(145deg, var(--bg), var(--bg-deep));font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.portal-shell{grid-template-columns:300px minmax(0,1fr);min-height:100vh;display:grid}.portal-shell:before,.auth-shell:before{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:54px 54px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#0000008c,#0000 78%);mask-image:linear-gradient(#0000008c,#0000 78%)}.auth-shell{place-items:center;min-height:100vh;padding:28px;display:grid}.auth-card{border:1px solid var(--line);width:min(100%,620px);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#091525db,#040d1ac2);border-radius:32px;padding:clamp(28px,5vw,48px)}.auth-card h1{letter-spacing:-.055em;margin-bottom:12px;font-size:clamp(2.1rem,5vw,4rem);line-height:.98}.auth-card h2{color:#e8f7ff;margin:0 0 14px;font-size:clamp(1.25rem,3vw,1.9rem)}.auth-card .brand-mark{margin-bottom:24px}.auth-form{margin-top:24px}.auth-links{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.fine-print{color:#eef7ff9e;margin:18px 0 0;font-size:.92rem}.portal-sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#020914ad;flex-direction:column;gap:24px;height:100vh;padding:34px 26px;display:flex;position:sticky;top:0}.brand-mark{color:#06111e;letter-spacing:.08em;background:linear-gradient(135deg,#fff6be,#ffd86a 42%,#b97808);border-radius:18px;place-items:center;width:58px;height:58px;font-weight:900;display:grid;box-shadow:0 14px 30px #ffc73f2e}.eyebrow{color:var(--cyan);text-transform:uppercase;letter-spacing:.18em;margin:0 0 8px;font-size:.74rem;font-weight:800}h1,h2,h3,h4,p{margin-top:0}h1{margin-bottom:8px;font-size:1.55rem}h2{letter-spacing:-.04em;margin-bottom:0;font-size:clamp(1.8rem,3vw,3.2rem)}h3{margin-bottom:12px;font-size:1.5rem}h4{margin-bottom:0}.muted{color:var(--muted);line-height:1.6}.nav-list{gap:10px;margin-top:10px;display:grid}.nav-list button,.ghost-button,.secondary-button{color:var(--text);border:1px solid var(--line);text-align:left;background:#ffffff0a;border-radius:14px;padding:11px 14px}.nav-list button.active,.nav-list button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.ghost-button:hover:not(:disabled){background:#49d7ff1a;border-color:#49d7ff75}.portal-main{width:100%;max-width:1240px;padding:34px}.topbar{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.status-pill{color:#ffe89a;white-space:nowrap;background:#ffd86a17;border:1px solid #ffd86a57;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-weight:800;display:inline-flex}.pulse{background:var(--gold);border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 7px #ffd86a1f}.glass-panel{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:26px;padding:26px}.glass-panel.narrow{max-width:540px}.glass-panel.wide{grid-column:1/-1}.grid{gap:18px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.button-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.button-row.between{justify-content:space-between}.primary-button{color:#03111e;background:linear-gradient(135deg,#fff5ad,#ffd86a 45%,#c9951e);border:0;border-radius:16px;padding:12px 18px;font-weight:900;box-shadow:0 16px 32px #ffc73f2e}.secondary-button{text-align:center}.secondary-button.compact,.ghost-button.small{border-radius:12px;padding:8px 12px}.form-stack,.form-grid{gap:16px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}label{color:#d9e8f5;gap:8px;font-weight:750;display:grid}label.wide,.wide{grid-column:1/-1}input,textarea{width:100%;color:var(--text);background:#040c17bd;border:1px solid #97c5ff33;border-radius:14px;outline:none;padding:12px 13px}textarea{resize:vertical}input:focus,textarea:focus{border-color:#49d7ff9e;box-shadow:0 0 0 4px #49d7ff14}.field-error{color:var(--danger);font-size:.84rem;font-weight:650}.alert{border:1px solid var(--line);border-radius:16px;margin-bottom:18px;padding:13px 15px}.alert.error{color:#ffd4d8;background:#ff6f7a21;border-color:#ff6f7a47}.alert.success{color:#d6ffe4;background:#72f0a11f;border-color:#72f0a142}.note-box{border-left:3px solid var(--cyan);background:#ffffff0d;border-radius:10px;margin-top:16px;padding:12px 14px}.note-box.warning{border-left-color:var(--gold)}.wizard-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:18px;display:grid}.wizard-steps{gap:10px;display:grid}.wizard-steps button{border:1px solid var(--line);color:var(--text);background:#ffffff0a;border-radius:16px;align-items:center;gap:10px;padding:12px;display:flex}.wizard-steps button span{width:27px;height:27px;color:var(--cyan);background:#49d7ff1f;border-radius:50%;place-items:center;font-weight:900;display:grid}.wizard-steps button.active{background:#ffd86a1a;border-color:#ffd86a75}.save-strip{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;display:flex}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.media-card{border:1px solid var(--line);background:#ffffff09;border-radius:20px;padding:18px}.media-card-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.media-preview,.media-placeholder{aspect-ratio:16/9;object-fit:cover;width:100%;color:var(--muted);background:#49d7ff0f;border:1px dashed #97c5ff38;border-radius:16px;place-items:center;display:grid}.file-button{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#49d7ff14;border-radius:14px;justify-content:center;align-items:center;padding:10px 13px;font-weight:800;display:inline-flex}.file-button input{display:none}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:16px;display:grid}.gallery-item{border:1px solid var(--line);border-radius:16px;position:relative;overflow:hidden}.gallery-item img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.gallery-item button{color:var(--text);background:#000000ad;border:0;border-radius:999px;padding:7px 10px;position:absolute;bottom:8px;right:8px}.preview-wrap{gap:18px;display:grid}.academy-preview{border:1px solid var(--line);background:#0209148c;border-radius:24px;overflow:hidden}.academy-preview>img,.preview-cover{object-fit:cover;width:100%;height:220px;color:var(--muted);background:linear-gradient(135deg,#49d7ff29,#ffd86a1a);place-items:center;display:grid}.preview-body{padding:22px}.preview-logo{object-fit:cover;background:var(--panel-strong);border:2px solid #ffffffb8;border-radius:20px;width:74px;height:74px;margin-top:-58px}.preview-logo.empty{color:#06111e;background:linear-gradient(135deg,#fff5ad,#ffd86a,#c9951e);place-items:center;font-weight:900;display:grid}.tag-row{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.tag-row span{border:1px solid var(--line);color:#dcecff;background:#ffffff0d;border-radius:999px;padding:7px 10px;font-size:.86rem}.timeline{gap:16px;display:grid}.timeline-item{grid-template-columns:16px minmax(0,1fr);gap:12px;display:grid}.timeline-item>span{background:var(--cyan);border-radius:50%;width:10px;height:10px;margin-top:6px;box-shadow:0 0 0 6px #49d7ff1a}.timeline-item strong{text-transform:capitalize}.timeline-item p{color:var(--muted);margin:5px 0}.timeline-item small{color:#eef7ff99}@media (max-width:900px){.portal-shell{grid-template-columns:1fr}.portal-sidebar{height:auto;position:static}.portal-main{padding:22px}.topbar,.grid.two,.wizard-layout,.form-grid,.media-grid{grid-template-columns:1fr}.grid.two,.topbar{display:grid}}
