.auth-overlay{position:fixed;inset:0;z-index:30;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(5,4,10,.78);backdrop-filter:blur(15px)}.auth-overlay.open{display:flex}.auth-modal{width:min(460px,100%);position:relative;background:linear-gradient(145deg,#1a1122,#0f0d17);border:1px solid rgba(210,105,231,.38);border-radius:18px;padding:34px;box-shadow:0 28px 100px rgba(0,0,0,.7)}.auth-close{position:absolute;right:18px;top:13px;background:none;border:0;color:#897e91;font-size:25px;cursor:pointer}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:30px}.auth-brand strong{display:block;font:600 15px "Space Grotesk"}.auth-brand small{display:block;font-size:8px;letter-spacing:.3em;color:#988ba1}.auth-modal h2{font:600 32px "Space Grotesk";letter-spacing:-.05em;margin:0}.auth-subtitle{color:#978d9f;font-size:13px;margin:9px 0 25px}.auth-tabs{display:flex;gap:4px;padding:4px;background:#0e0b14;border-radius:8px;margin-bottom:22px}.auth-tab{flex:1;border:0;background:transparent;color:#897f91;padding:10px;border-radius:6px;cursor:pointer;font-weight:600}.auth-tab.active{background:#2b1736;color:#f7eff9}.auth-modal label{display:block;color:#a69bab;font-size:11px;margin:13px 0}.auth-modal input,.portal-panel input{display:block;width:100%;margin-top:7px;border:1px solid rgba(211,170,224,.2);border-radius:8px;padding:12px;background:#0c0a11;color:#f7f2fb;font:inherit;outline:none}.auth-modal input:focus,.portal-panel input:focus{border-color:#bf55d6;box-shadow:0 0 0 3px rgba(191,85,214,.12)}.auth-error{min-height:18px;color:#ff879d;font-size:11px;margin:8px 0}.auth-divider{display:flex;align-items:center;gap:10px;color:#766b80;font-size:11px;margin:20px 0}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}.auth-divider span{padding:0 5px}.discord-button{width:100%;border:1px solid #46508c;border-radius:8px;padding:12px;background:#252b59;color:#fff;font-weight:700;cursor:pointer}.discord-button span{color:#a9b7ff;margin-right:7px}.auth-footnote{color:#6f6578;font-size:10px;text-align:center;margin:20px 0 0}.register-only{display:none!important}.auth-modal.register-mode .register-only{display:block!important}.auth-modal.register-mode #auth-identifier{display:none}.portal-shell{max-width:1200px;margin:0 auto;padding:95px 54px 140px}.portal-card{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:17px;padding:32px;background:linear-gradient(140deg,#191122,#100e17)}.portal-card h2{font:600 39px "Space Grotesk";letter-spacing:-.06em;margin:0}.portal-copy{color:var(--muted);margin:10px 0 0}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.portal-panel{border:1px solid var(--line);border-radius:15px;padding:28px;background:#12101b;min-height:220px}.panel-heading{display:flex;align-items:center;gap:12px}.panel-heading span{color:#ca5be0;font-size:11px}.panel-heading h3{font:600 21px "Space Grotesk";margin:0}.portal-muted{color:#82788d;font-size:12px}.portal-panel strong,.portal-panel small{display:block}.portal-panel strong{font-size:24px;margin-top:22px}.portal-panel small{color:#8c8193;margin-top:5px}.portal-panel form{margin-top:20px}.portal-panel form .button{margin-top:9px}@media(max-width:600px){.auth-modal{padding:26px 22px}.portal-shell{padding:60px 17px}.portal-card{align-items:flex-start;gap:25px;flex-direction:column}.portal-card h2{font-size:31px}.portal-grid{grid-template-columns:1fr}}
.brand-mark{border:0;background:transparent;width:42px;height:42px}.brand-mark:before,.brand-mark:after{display:none}.brand-logo{width:42px;height:42px;object-fit:contain;display:block}.feature-card{display:flex;flex-direction:column}.feature-card h3{margin-top:34px}.feature-card p{margin-bottom:0}.import-pill{position:static;align-self:flex-start;margin-top:auto}.mini-lines{position:static;margin-top:auto;padding-top:30px}.lock-icon,.route-line{position:static;margin-top:auto;padding-top:26px}.feature-card.large h3{margin-top:70px}.feature-card.large{display:flex}
.portal-active footer{display:none!important}.portal-active .nav-actions{gap:26px}.portal-logout-link{color:#cfc7d9;cursor:pointer;background:none;border:0;font:inherit;padding:0}.portal-logout-link:hover{color:#fff}
.discord-link{border-top:1px solid var(--line);margin-top:24px;padding-top:14px;display:flex;flex-wrap:wrap;gap:9px;align-items:center}.discord-link p{flex-basis:100%;margin:0}.outline-button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#201827;color:#f7f2fb;border-radius:9px;padding:10px 14px;font:600 12px 'DM Sans',sans-serif}.outline-button:hover{border-color:#bf55d6}.outline-button:disabled,.button:disabled{opacity:.5;cursor:wait}.admin-shell{margin-top:22px}.admin-head h2{font:600 30px 'Space Grotesk';margin:0}.admin-tools,.admin-license{border:1px solid var(--line);background:#12101b;border-radius:15px;padding:22px;margin:14px 0}.admin-tools form,.admin-edit{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:12px 0}.admin-tools label{color:#a69bab;font-size:12px;flex:1;min-width:170px}.admin-tools input,.admin-edit input,.admin-edit select{display:block;width:100%;margin-top:6px;border:1px solid var(--line);background:#0c0a11;color:#fff;border-radius:8px;padding:10px;font:inherit}.admin-edit input,.admin-edit select{width:auto;min-width:110px}.admin-edit input[type=date]{min-width:155px}.admin-license-heading{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.admin-license-heading small{color:#857990;font-size:11px;overflow-wrap:anywhere}.admin-feedback{color:#ff879d;font-size:12px}.admin-tools #admin-accounts{display:flex;flex-wrap:wrap;gap:8px}.admin-tools #admin-created code{display:inline-block;padding:13px;border-radius:8px;background:#25142f;color:#eaacfb;user-select:all;overflow-wrap:anywhere}.admin-tools #admin-created p{color:#f1ccde;font-size:12px}.admin-shell #admin-more{margin:0 0 30px}@media(max-width:600px){.admin-tools form,.admin-edit{align-items:stretch;flex-direction:column}.admin-edit input,.admin-edit select{width:100%}}
.member-licences{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}.member-licences h4{font:600 16px 'Space Grotesk';margin:0 0 10px}.member-licence{border:1px solid var(--line);border-radius:10px;background:#171222;padding:14px;margin:10px 0;overflow-wrap:anywhere}.member-licence strong{font-size:12px;margin:0}.member-licence small{font-size:11px;margin-top:4px}.member-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.member-confirm{border:1px solid rgba(218,121,171,.4);border-radius:9px;padding:13px;margin-top:12px;background:#281924}.member-confirm p{color:#f4d5e8;font-size:12px;margin:0 0 12px}.member-confirm button{margin-right:7px}.member-confirm .auth-error{margin-bottom:0}.member-success{color:#86e7bd;font-size:12px}.replacement-key{display:block;background:#21132c;border-radius:8px;padding:12px;color:#edb5ff;font-size:13px;user-select:all;margin:12px 0}.admin-revoke{color:#ffafbf;border-color:rgba(255,142,170,.36)}
.admin-tools .admin-show-revoked{flex:none;min-width:0;display:flex;align-items:center;gap:7px;white-space:nowrap}.admin-tools .admin-show-revoked input{width:auto;margin:0;accent-color:#bd61d3}

/* Keep the header edge-to-edge while preserving the page's original content width. */
.site-shell{max-width:none;padding:0}
.nav-wrap{padding-inline:max(24px,calc((100vw - 1332px)/2))}
.site-shell>main{max-width:1440px;margin:0 auto;padding:0 54px}
.site-shell>footer{max-width:1440px;margin:0 auto;padding:28px 54px 35px}
@media(max-width:950px){.nav-wrap{padding-inline:24px}.site-shell>main{padding-inline:24px}.site-shell>footer{padding:28px 24px 35px}}
@media(max-width:600px){.nav-wrap{padding-inline:17px}.site-shell>main{padding-inline:17px}.site-shell>footer{padding:28px 17px 35px}}

.portal-dashboard-link{cursor:pointer;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:10px 15px;background:linear-gradient(110deg,#a34ddd,#cf56bf);box-shadow:0 12px 28px rgba(184,72,213,.22);color:#fff;font:700 13px 'DM Sans',sans-serif;transition:transform .2s,filter .2s}.portal-dashboard-link:hover{transform:translateY(-2px);filter:brightness(1.08)}
.dashboard-tilt{--tilt-x:0deg;--tilt-y:0deg;--shine-x:50%;--shine-y:50%;position:relative;transform-style:preserve-3d;transform:perspective(1200px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translateZ(0);transition:transform 280ms cubic-bezier(.2,.7,.2,1);will-change:transform;border-radius:20px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.52),0 0 90px rgba(184,72,213,.14)}
.dashboard-tilt img{display:block;width:100%;height:auto;border:1px solid rgba(212,155,232,.3);border-radius:20px;transform:translateZ(22px);transition:transform 280ms cubic-bezier(.2,.7,.2,1)}
.dashboard-tilt:hover img{transform:translateZ(34px) scale(1.006)}
.tilt-sheen{position:absolute;inset:0;pointer-events:none;opacity:.08;background:radial-gradient(circle at var(--shine-x) var(--shine-y),rgba(255,255,255,.9),transparent 35%);mix-blend-mode:screen;transform:translateZ(42px);transition:opacity 220ms}.dashboard-tilt:hover .tilt-sheen{opacity:.2}
@media(prefers-reduced-motion:reduce){.dashboard-tilt,.dashboard-tilt img{transition:none!important;transform:none!important}}
 .request-access{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.request-access .portal-muted{margin:0 0 10px}.request-access .member-success{margin-top:10px}
