/* Facthelm's architectural background: fixed light, slow contours, no pointer tracking. */
body{position:relative;isolation:isolate;background:#151217}
.site-atmosphere{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;contain:strict;background:radial-gradient(ellipse at 97% -8%,#681b2b83,transparent 62%),radial-gradient(ellipse at -15% 65%,#51404c49,transparent 52%),radial-gradient(ellipse at 57% 115%,#4c203160,transparent 60%),linear-gradient(125deg,#1b171d,#131216 50%,#1d141b)}
.site-atmosphere>span{display:block;position:absolute;pointer-events:none}
.ambient-grid{inset:0;background-image:linear-gradient(#ead5dd06 1px,transparent 1px),linear-gradient(90deg,#ead5dd06 1px,transparent 1px),radial-gradient(#f4dbe515 .7px,transparent .9px);background-size:88px 88px,88px 88px,22px 22px;mask-image:linear-gradient(110deg,#0007,#000 75%);opacity:.7}
.ambient-contours{inset:-8%;background:url('/static/backdrop-contours.svg?v=20261024-backdrop') 72% 35%/cover no-repeat;opacity:.72;transform-origin:75% 40%;animation:contour-drift 48s ease-in-out infinite alternate;transition:opacity .8s ease}
.ambient-light{width:115vw;height:80vh;left:10%;top:-36%;border-radius:50%;background:radial-gradient(ellipse at center,#eabac415,transparent 66%);transform:rotate(-26deg);animation:ambient-silk 35s ease-in-out infinite alternate;opacity:.6;transition:opacity .8s ease}
.site-atmosphere::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 42%,#0c0b0f38,transparent 58%);pointer-events:none}
/* The shared backdrop sits below every view and never intercepts interaction. */
.app,.login-shell{background:transparent}
.hero-grid{opacity:0}
.site-header{background:linear-gradient(100deg,#151217b8,#1b131b80);border-bottom-color:#e0aebe13}
.principles{background:#14111666;border-color:#e1b0c017}
.sidebar{background:linear-gradient(165deg,#211823ed,#141116f5 65%);border-right-color:#dba4b91c}
.workspace-bar{background:#171219c9;border-bottom-color:#e8bbcc12}
.source-section{border-color:#d4adbb18}
/* Reading surfaces stay opaque enough for long answers and exact quotations. */
.research-answer{background:linear-gradient(135deg,#231d24fa,#19171cfb)}
.search-result{background:linear-gradient(130deg,#211b23f7,#19161cf7)}
.hero-composer,.search-form{box-shadow:inset 0 1px 0 #ffe0eb10,0 18px 55px #08050c38}
/* Interactivity follows attention: entering a question quietens the background. */
body:has(#landing-question-form:focus-within) .ambient-contours,
body:has(#chat-form:focus-within) .ambient-contours,
body:has(#login-form:focus-within) .ambient-contours{animation-play-state:paused;opacity:.35}
body:has(#landing-question-form:focus-within) .ambient-light,
body:has(#chat-form:focus-within) .ambient-light,
body:has(#login-form:focus-within) .ambient-light{animation-play-state:paused;opacity:.25}
body:has(#view-chat.active:not(.search-start)) .ambient-contours{animation-play-state:paused;opacity:.3}
body:has(#view-chat.active:not(.search-start)) .ambient-light{animation-play-state:paused;opacity:.25}
@keyframes contour-drift{from{transform:translate3d(-.8%,-.5%,0) rotate(-.6deg) scale(1.01)}to{transform:translate3d(.8%,.9%,0) rotate(.6deg) scale(1.035)}}
@keyframes ambient-silk{from{transform:translate3d(-2%,0,0) rotate(-26deg)}to{transform:translate3d(2%,4%,0) rotate(-22deg)}}
@media(max-width:760px){
 .site-atmosphere{background:radial-gradient(ellipse at 115% 0,#681b2b79,transparent 64%),radial-gradient(ellipse at -20% 85%,#4d2b3d50,transparent 66%),linear-gradient(145deg,#1c171e,#131216 55%,#20151e)}
 .ambient-contours{inset:-5% -25%;background-size:auto 110%;background-position:64% 0;opacity:.48;animation-duration:65s}
 .ambient-grid{background-size:72px 72px,72px 72px,24px 24px;opacity:.45}
 .ambient-light{width:150vw;left:-10%;height:65vh;top:-25%;animation:none;opacity:.5}
 .workspace-bar{background:#19131bf5}
}
html.motion-off .site-atmosphere *,html.tab-hidden .site-atmosphere *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.site-atmosphere *{animation:none!important;transition:none!important}}
@media(forced-colors:active){.site-atmosphere{display:none}.app,.login-shell{background:Canvas}}
