:root{color-scheme:dark;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#eee9f8;background:#0b0a13}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(ellipse 48% 36% at 50% 19%,#40265b31,transparent 82%),#0b0a13}
a{color:#c8a4ff;text-underline-offset:3px}a:hover{color:#ecb7ff}
button,input{font:inherit}button{cursor:pointer}
button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid #dfadff;outline-offset:4px}
[hidden]{display:none!important}
.shell{max-width:1200px;margin:0 auto;padding:0 32px}
.masthead{display:flex;align-items:center;justify-content:space-between;padding:28px 0;border-bottom:1px solid #ffffff13}
.mark{display:flex;align-items:center;gap:12px;font-weight:780;font-size:21px;letter-spacing:-.9px;color:#f1eafd;text-decoration:none}.logo{display:grid;place-items:center;width:34px;height:34px;border:1px solid #9674dc55;border-radius:11px;background:#251b37;color:#d4abff;font-size:24px}
.purple{color:#bd9bfc;font-weight:400}.prealpha{font-size:10px;letter-spacing:2px;color:#ac9bc9;background:#ffffff07;padding:8px 11px;border:1px solid #ffffff15;border-radius:99px}
.welcome{text-align:center;padding:50px 0 80px}
.halo{height:175px;width:360px;max-width:100%;position:relative;margin:0 auto 5px;background:radial-gradient(ellipse at 50% 55%,#9066cc35,transparent 60%)}
.orb{position:absolute;border-radius:50%;filter:drop-shadow(0 0 16px #ae80fb90)}
.orb-a{width:50px;height:50px;left:calc(50% - 25px);top:46px;background:radial-gradient(circle at 35% 28%,#f9d9f7,#a87bdd 50%,#624298)}
.orb-b{width:23px;height:23px;left:91px;top:87px;background:#e4adcb}
.orb-c{width:26px;height:26px;right:88px;top:103px;background:#8687ed}
.filament{position:absolute;height:1px;background:linear-gradient(90deg,transparent,#b591f58a,transparent);transform-origin:left}
.f-a{left:114px;top:102px;width:100px;transform:rotate(-17deg)}.f-b{left:183px;top:93px;width:91px;transform:rotate(21deg)}
.eyebrow,.access-kicker{color:#c49ded;font-size:10px;font-weight:800;letter-spacing:3px}
h1{max-width:730px;font-size:clamp(38px,5vw,62px);letter-spacing:-2.9px;line-height:1.13;margin:18px auto 20px;font-weight:700}
h1 em{font-weight:400;font-style:italic;font-family:Georgia,serif;color:#c5a4f4}
.intro{max-width:575px;margin:0 auto;color:#aaa2bb;line-height:1.8;font-size:15px}
.benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:840px;margin:53px auto 34px;gap:14px}
.benefits>div{text-align:left;padding:23px;border:1px solid #3c32517d;background:linear-gradient(150deg,#1b1828c7,#12111cab);border-radius:16px}
.benefit-icon{display:block;color:#d2aeff;font-size:25px;margin-bottom:15px}
.benefits strong{font-size:13px}.benefits p{font-size:12px;color:#9891a9;line-height:1.7;margin:9px 0 0}
.access{max-width:590px;text-align:left;margin:20px auto 0;padding:35px;border-radius:20px;border:1px solid #6e4d9959;background:linear-gradient(145deg,#201831,#14121e 70%);box-shadow:0 20px 80px #0004}
.access-kicker{letter-spacing:2px;font-size:10px}.access h2{font-size:25px;margin:10px 0 9px;letter-spacing:-.65px}
.access-copy,.terms-gate p{font-size:13px;color:#aaa2bb;line-height:1.75}
.terms-gate{padding:17px;margin:20px 0;background:#0e0c18;border:1px solid #4b3c64;border-radius:12px}
.terms-gate p{margin-top:0}
.consent-row{display:flex;align-items:flex-start;gap:12px;text-align:left;font-size:12px;line-height:1.8;color:#d8d1e5}.consent-row input{margin-top:6px;accent-color:#b486ea;width:16px;height:16px;flex:none}
.consent-button{display:block;border:0;border-radius:10px;background:#8b65be;color:white;font-weight:700;margin:16px 0 0 auto;padding:11px 19px;font-size:12px}.consent-button:disabled{opacity:.4;cursor:not-allowed}
.patreon-button{width:100%;border:1px solid #c49ae47a;border-radius:12px;background:linear-gradient(105deg,#9b74d5,#c17b9e);color:#fff;padding:16px 18px;font-size:14px;font-weight:750;display:flex;align-items:center;justify-content:space-between;margin:14px 0}.patreon-button:disabled{filter:grayscale(.3);opacity:.55;cursor:not-allowed}
.service-note,.status-note{font-size:11px;line-height:1.65;color:#9890a9}.status-note{color:#d4b3f9}
.consent-summary{font-size:12px;margin:13px 0}.consent-summary button{border:0;background:transparent;color:#c5a2e8;padding:0}
.membership{text-align:center;margin-top:22px;font-size:12px}
.demo-info{max-width:590px;margin:28px auto 0;display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:center;font-size:12px;color:#918a9f}.demo-info p{margin:0}.demo-pill{font-size:9px;letter-spacing:1.2px;color:#d3bcf2;border:1px solid #70589588;border-radius:20px;padding:6px 10px}
.footer{display:flex;justify-content:space-between;gap:10px;padding:25px 0;border-top:1px solid #ffffff17;font-size:11px;color:#726b83}
.footer div{display:flex;gap:24px}
.policy{max-width:830px;margin:65px auto 100px;color:#cfc6df;line-height:1.85}
.policy h1{font-size:40px;letter-spacing:-1px;text-align:left}.policy h2{font-size:18px;margin:34px 0 8px}.policy p,.policy li{font-size:14px;color:#a8a0b8}.policy .draft{font-size:12px;color:#edbe94}
@media(max-width:700px){.shell{padding:0 18px}.welcome{padding-top:24px}.halo{height:132px;transform:scale(.82);margin-bottom:-15px}h1{letter-spacing:-1.4px}.benefits{grid-template-columns:1fr;margin-top:35px}.access{padding:23px}.footer{flex-direction:column;align-items:center}}

.logout-button{display:block;margin:12px auto 0;background:transparent;border:1px solid #514267;border-radius:10px;padding:9px 18px;color:#c8b0e9;font-size:12px}.logout-button:hover{border-color:#bb90e6}

.membership-error{margin:15px 0;padding:17px;border:1px solid #b77a8a89;border-radius:12px;background:#4c253046;color:#f4c8d1;text-align:left}
.membership-error strong{display:block;font-size:14px;margin-bottom:7px}
.membership-error p{font-size:12px;line-height:1.7;color:#e7c4cc;margin:0 0 10px}
.membership-error a{font-size:12px;color:#e7bddf}


/* Shared navigation: works without JS or a new login step. */
.masthead{gap:20px}
.site-nav{display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap;margin-left:auto}
.site-nav a{display:inline-block;padding:9px 12px;border-radius:10px;text-decoration:none;color:#bcb1ce;font-size:12px;font-weight:650}
.site-nav a:hover,.site-nav a[aria-current="page"]{background:#48345f65;color:#f2defd}
.open-dashboard{display:flex;align-items:center;justify-content:space-between;gap:10px;text-decoration:none;background:linear-gradient(105deg,#8d68c1,#af78a8);color:#fff;border:1px solid #c9a1e8a9;border-radius:11px;padding:14px 18px;font-size:13px;font-weight:750;margin:15px 0}
.open-dashboard:hover{color:#fff;filter:brightness(1.07)}
@media(max-width:700px){
 .masthead{flex-wrap:wrap;column-gap:8px;row-gap:14px}
 .masthead .mark{flex:1}
 .masthead .prealpha{display:none}
 .site-nav{margin:0;width:100%;justify-content:space-between;border-top:1px solid #ffffff13;padding-top:10px;gap:2px}
 .site-nav a{font-size:12px;padding:9px 8px}
}

/* OAuth consent is styled externally so a strict inline-script/style CSP applies. */
.mcp-consent-main{margin-top:65px;max-width:620px}
.mcp-consent-main .access{margin-top:23px}
.mcp-slot{display:block;width:100%;background:#151023;color:#eee3fb;border:1px solid #785591;border-radius:10px;padding:13px;margin:10px 0 18px;font:inherit}
@media(max-width:700px){.mcp-consent-main{margin-top:36px}}
