/* Shared design system. Edit these tokens to evolve every page. */
:root{--ink:#103e51;--ink-2:#365f70;--muted:#52727d;--paper:#eff8fa;--line:rgba(34,104,126,.17);--accent:#1686a2;--serif:Georgia,'Times New Roman',serif;--sans:Inter,'Segoe UI',Arial,sans-serif;--radius:28px}
body{background:radial-gradient(ellipse at 95% 0%,#ccecf4 0,transparent 42%),radial-gradient(ellipse at 0% 65%,#e1f0df 0,transparent 38%),#f2f8fa!important;color:var(--ink);overflow-x:clip}
body[data-theme=research]{--accent:#406dba;--paper:#edf4fa}
body[data-theme=grove]{--accent:#398c74;--paper:#edf6ed}
body[data-theme=editorial]{--accent:#386ea1;--paper:#f5f7ee}
body[data-theme=sanctuary]{--accent:#237d93;--paper:#eaf5f7}
.site-nav{border-bottom:1px solid var(--line);background:rgba(241,249,250,.9)!important;backdrop-filter:blur(22px);padding:20px 5%;box-shadow:0 5px 35px #163c5105}
.brand{letter-spacing:2.6px;font-size:13px;display:flex;align-items:center;gap:10px}
.brand:before{content:'';width:24px;height:24px;border:1px solid #4299af;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,#a5dbe5 45%,#3b7caa);box-shadow:0 0 0 4px #c2e5e850}
.nav-links a{font-size:10px;letter-spacing:1.2px;padding:7px 0;border-bottom:1px solid transparent}.nav-links a:hover{border-color:var(--accent);color:var(--accent)}
h1,h2,h3{font-weight:normal;text-wrap:balance}p{ text-wrap:pretty }
.kicker,.micro-label,.hero-kicker{color:var(--accent);opacity:1;letter-spacing:2.4px}
.hero{min-height:760px;padding:100px 6% 90px;isolation:isolate;position:relative;background:linear-gradient(150deg,#e9f6f7cc,#ecf3f8aa)}
.hero:after{content:'';position:absolute;inset:0;background-image:linear-gradient(#34759209 1px,transparent 1px),linear-gradient(90deg,#34759209 1px,transparent 1px);background-size:65px 65px;z-index:-1;mask-image:linear-gradient(transparent,#000,transparent)}
.hero-inner{max-width:1100px;width:100%;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;text-align:left;gap:30px}
.hero h1{font-size:clamp(72px,8.8vw,128px);letter-spacing:-6px;line-height:.91;margin:25px 0}.hero p{font:18px/1.8 var(--sans);max-width:500px;margin:0}.hero .kicker{font-size:10px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.hero .orb{display:none}.neural-scene{position:relative;aspect-ratio:1;display:grid;place-items:center}.neural-scene svg{width:115%;max-width:none;filter:drop-shadow(0 30px 45px #306d7e2b)}.scene-note{position:absolute;bottom:6%;left:14%;font-size:9px;letter-spacing:2px;color:#457789}.scene-tag{position:absolute;right:0;top:12%;font-size:10px;padding:10px 15px;border-radius:30px;border:1px solid #7ab6c750;background:#ffffffb0}
.world{padding-top:65px}.world-head h2{font-size:clamp(34px,4vw,52px)}.world-head .lead{font-family:var(--sans);font-size:15px!important}
.portal{background:#ffffffaa!important;box-shadow:0 12px 45px #1c546408;min-height:290px;border:1px solid #97bdc64a;color:var(--ink)!important;border-radius:var(--radius);transition:transform .25s,box-shadow .25s}.portal p{color:var(--ink-2)!important;font-size:14px}.portal h3{font-size:38px;margin-top:55px}.portal small{color:var(--accent)}
.portal.higher{background:linear-gradient(135deg,#dcf2f5,#eef7f8)!important}.portal.lab{background:linear-gradient(135deg,#e1eaf6,#f2f7fc)!important}.portal.media{background:linear-gradient(135deg,#edf2e8,#f9f8ec)!important}.portal.community{background:linear-gradient(135deg,#e0efe5,#f3f7ea)!important}.portal.about{background:linear-gradient(135deg,#e5ecf5,#f5f0ed)!important}
.portal:hover{transform:translateY(-5px);box-shadow:0 22px 55px #1c546417}.button.primary,.button.dark,button[type=submit],#send,#modelButton{background:#135972!important;color:#fff!important;border:1px solid #135972!important}.button{font-size:10px;letter-spacing:1px;padding:15px 22px;min-height:44px}.button.secondary{background:#ffffff7a;color:var(--ink)}
.glass,.auth-card,.submission,.item,.file{border:1px solid var(--line);background:#ffffffbf;box-shadow:0 20px 60px #1b526408;border-radius:var(--radius)}
input,textarea,select{border-color:#b4d0d9!important;background:#ffffffd9!important;color:var(--ink);font-size:16px}textarea{line-height:1.7}.status-message{line-height:1.65}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #1686a2;outline-offset:4px}
.magazine-hero{background:transparent!important}.magazine-hero h1{color:var(--ink);font-size:clamp(54px,7vw,98px)}.featured-wrap{background:#ffffffa8;border:1px solid var(--line);border-radius:32px;padding:32px}.connections{background:#e3f0f3!important;color:var(--ink)!important;border:1px solid var(--line)!important}.connections h3,.connections p,.connections .micro-label{color:var(--ink)!important}.filter-chip.active{background:#135972!important;color:white!important}.reader-hero{background:transparent!important}.article-section p{font-size:19px;line-height:1.9}.reader-layout{scroll-margin-top:100px}.source-panel,.scientific-note{border-color:#afccd2!important}.site-footer{padding:35px 6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);line-height:1.8}.site-footer a{color:var(--ink)}.owner-access{padding:15px 6%;font-size:12px;background:#e0eef2}.privacy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.privacy-grid section{padding:28px}.beta-note{padding:16px 22px;border:1px solid #b3ccd5;background:#edf6f9;border-radius:18px;font-size:13px;line-height:1.7;margin:22px 0}
@media(max-width:820px){.hero{min-height:auto;padding:65px 6%}.hero-inner{grid-template-columns:1fr;text-align:left}.hero h1{font-size:80px}.neural-scene{max-width:380px;width:90%;margin:auto}.site-nav{gap:16px;flex-wrap:wrap}.nav-links{justify-content:flex-start;gap:14px}.brand{font-size:11px}.portal{grid-column:1/-1}.featured-wrap{padding:18px}.site-footer{flex-direction:column}.privacy-grid{grid-template-columns:1fr}.auth-card{padding:24px}.reader-hero h1{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:480px){.lab-hero h1{font-size:48px;letter-spacing:-2px}.hero-kicker{line-height:1.7}.auth-shell{padding:50px 6%}}
