/* Quiet, fixed backdrop. Pointer position never changes the page lighting. */
:root{--bg:#101012;--panel:#1a171b}
body,.app{background:#101012}
.hero::before,.hero-visual::before,.intro-orb::before,.search-intro::before{content:none!important;animation:none!important}
.hero-visual::after{content:none}
.hero-grid{background-image:radial-gradient(#e7dae418 .65px,transparent .65px);background-size:25px 25px;opacity:.4;mask-image:radial-gradient(ellipse at 78% 50%,#000,transparent 53%)}
.feature-card::after,.source-principle::after{content:none}

/* Canvas geometry is decorative; only real job states control research motion. */
.core-rendered.ai-orb{background:none;box-shadow:none}
.core-rendered.ai-orb::before,.core-rendered.ai-orb::after{content:none}
.core-rendered .core-sculpture{inset:-12%;border-radius:0}
.core-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.core-rendered .core-ribbons{display:none;animation:none!important}
.core-rendered .core-sculpture::after{display:none!important}
.core-rendered .core-reflection{display:none}
.core-rendered.is-error{background:none;box-shadow:none}
.hero-visual .sphere-stage,.intro-orb .ai-orb{transform:none;transition:none}
.hero-visual .orb-halo,.intro-orbit{border-color:#e0cbd51e;box-shadow:none;border-top-color:#f2dae70b}
.orb-halo::after,.intro-orbit::after{border-color:#e0cbd511}
.orb-halo::before,.intro-orbit::before{background:#efbeca;box-shadow:0 0 8px #efbeca40;width:3px;height:3px}

/* First visit: purpose, a usable question field, and the research principle. */
.site-header{border-bottom-color:#ffffff09;max-width:none;height:80px;padding:0 clamp(24px,5.5vw,96px)}
.site-header .wordmark{letter-spacing:.04em;font-size:19px}
.hero{max-width:1560px;padding:58px clamp(24px,5.5vw,96px) 45px;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-template-areas:"copy visual" "composer visual" "quick visual";gap:24px 48px;align-items:start}
.hero-copy{grid-area:copy;z-index:4;max-width:none}
.hero-copy>.eyebrow{font-size:9px;letter-spacing:.15em;color:#e7b8c4;margin-bottom:27px}
.hero h1{font-size:clamp(49px,5.2vw,80px);font-weight:550;line-height:1.07;letter-spacing:-.065em;margin:0 0 23px;max-width:none}
.hero h1>.headline-line{display:block;overflow:clip;background:none;color:#f3f0f1;padding:0 0 .07em;white-space:nowrap}
.headline-line>span{display:block;transform-origin:left bottom}
.headline-line em{font:inherit;background:linear-gradient(105deg,#f4e5e8,#f3a4b1 55%,#ed6077);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero-description{font-size:15px;line-height:1.85;color:#bdb5bd;max-width:540px;margin:0}
.hero-composer{grid-area:composer;grid-column:auto;justify-self:stretch;width:100%;max-width:none;margin:0;padding:21px 21px 14px;border-color:#efadbd36;background:linear-gradient(120deg,#241c23,#19171c);box-shadow:inset 0 1px 0 #ffe3ef0d,0 18px 50px #0003;border-radius:18px}
.hero-composer::before{background:linear-gradient(90deg,transparent,#bd5f7b55,transparent)}
.hero-question-heading{display:flex;gap:12px;margin-bottom:14px}
.hero-question-heading h2{font-size:17px;line-height:1.4}
.hero-question-heading>svg{width:17px;height:17px;color:#eaa4b5;flex-shrink:0}
.hero-composer form{background:#111014;border-color:#ffffff0d;min-height:95px;align-items:center;gap:10px;padding:10px}
.hero-composer textarea{min-width:0;min-height:65px;font-size:15px;line-height:1.65;padding:8px;resize:none}
.hero-composer .primary{width:46px;min-height:46px;border-radius:12px;flex-shrink:0}
.hero-composer .primary:hover svg{transform:translate(2px,-2px)}
.composer-foot{color:#b0a3ad;font-size:10px;line-height:1.6;margin-top:12px}
.composer-foot span:first-child{white-space:normal;align-items:flex-start;gap:7px}
.composer-foot svg{flex-shrink:0;margin-top:2px}
.hero-quickstart{grid-area:quick;min-width:0;margin-top:-4px}
.hero-quickstart>span{font-size:10px;color:#aa9ba7;display:block;margin-bottom:11px}
.landing-starters{display:flex;flex-wrap:wrap;gap:7px}
.landing-starters button{font-size:10px;line-height:1.4;min-height:35px;padding:8px 10px;background:#ffffff03;border:1px solid #e8cbd31c;color:#c5b6c0;border-radius:8px;gap:7px;white-space:normal;transition:color .2s,border-color .2s,transform .2s}
.landing-starters svg{width:13px;height:13px;flex-shrink:0;color:#d79aaa}
.landing-starters button:hover{color:#fff;border-color:#ee81985c;transform:translateY(-2px)}
.landing-starters button:focus-visible{outline:2px solid #f3acba;outline-offset:3px}

/* An explanatory diagram, never a simulated result or live research feed. */
.hero-visual{grid-area:visual;height:570px;min-width:0;align-self:center;position:relative;width:100%;max-width:none;margin:0;isolation:isolate;perspective:none}
.agent-connections{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#c9a6b32b;stroke-width:1;pointer-events:none;z-index:0}
.agent-connections .connection-arrival{stroke:#ed91a88c;stroke-dasharray:110;stroke-dashoffset:0;animation:connection-arrive 1.4s var(--ease) .3s both}
.agent-input{position:absolute;top:12px;left:50%;transform:translateX(-50%);display:flex;gap:13px;align-items:center;padding:13px 20px 13px 13px;width:max-content;max-width:95%;border:1px solid #f1c9d326;border-radius:13px;background:linear-gradient(120deg,#252026,#17171b);box-shadow:0 10px 35px #0003;z-index:3}
.scene-document{display:grid;place-items:center;width:39px;height:43px;border:1px solid #f3bcc826;background:#e5b9c409;border-radius:9px;color:#e3b6c4}
.scene-document svg{width:20px;height:20px}
.agent-input div>span{display:block;font-size:8px;letter-spacing:.14em;color:#ae9ba8;margin-bottom:6px}
.agent-input strong{font-size:13px;font-weight:500;color:#eee5e9}
#agent-scene-heading{position:absolute;top:101px;left:0;right:0;text-align:center;font-size:11px;font-weight:550;letter-spacing:.22em;color:#eee3e9;margin:0;z-index:3}
#agent-scene-heading span{display:block;letter-spacing:.03em;font-size:10px;font-weight:400;color:#ab98a5;margin-top:7px}
.hero-visual .sphere-stage{position:absolute;top:155px;left:calc(50% - 145px);z-index:2}
.hero-visual .ai-orb{--orb-size:290px}
.hero-visual .orb-halo{position:absolute;top:215px;left:calc(50% - 187px);width:374px;height:164px;z-index:1}
.agent-deliverable{position:absolute;bottom:33px;left:50%;transform:translateX(-50%);width:320px;max-width:95%;padding:17px 18px 16px;background:linear-gradient(125deg,#2e1e28,#1b171e);border:1px solid #e9a0b436;border-radius:14px;box-shadow:inset 0 1px 0 #f4c7d30a,0 20px 40px #0003;z-index:3}
.deliverable-heading{display:flex;align-items:center;gap:9px;padding-bottom:13px;border-bottom:1px solid #edb3c313}
.deliverable-heading>svg{width:16px;height:16px;color:#efadbd}

.deliverable-heading strong{font-weight:500;font-size:13px}
.deliverable-evidence{display:flex;gap:15px;justify-content:space-between;padding-top:12px}
.deliverable-evidence span{display:flex;gap:5px;align-items:center;font-size:9px;color:#bfabb8}
.deliverable-evidence svg{width:12px;height:12px;color:#d393a8;flex-shrink:0}
.agent-scene-caption{position:absolute;bottom:0;left:0;right:0;margin:0;text-align:center;color:#9c8e99;font-size:9px;line-height:1.5}
.principles{max-width:1560px;margin:0 auto;padding:25px clamp(24px,5.5vw,96px) 28px;border-top:1px solid #ffffff0b;border-bottom:1px solid #ffffff0b;justify-content:space-between;gap:20px;font-size:11px;color:#bcb0b9}
.principles>span{gap:8px}.principles svg{color:#d48a9d;width:15px;height:15px}
.principles>a{display:flex;align-items:center;gap:10px;color:#eadde4;font-size:11px;white-space:nowrap}
.principles>a:hover{color:#f3adbc}.principles>a svg{width:13px;transition:transform .2s}.principles>a:hover svg{transform:translateY(3px)}

/* The input stays available throughout the entrance. No splash or overlay. */
.hero .hero-enter{animation:none}
.hero-copy>.eyebrow{animation:entry-caption .75s var(--ease) both}
.headline-line>span{animation:headline-arrive 1.1s cubic-bezier(.16,1,.3,1) both;animation-delay:.06s}
.headline-line:nth-child(2)>span{animation-delay:.17s}
.hero .hero-description{animation:entry-caption .9s var(--ease) .24s both}
.hero-visual .sphere-stage{animation:core-arrive 1.5s cubic-bezier(.16,1,.3,1) .06s both}
.agent-input,#agent-scene-heading,.agent-deliverable,.agent-scene-caption{animation:scene-arrive .9s var(--ease) .25s both}
.agent-deliverable{animation-delay:.4s}
.hero>.hero-composer{animation:composer-arrive .85s cubic-bezier(.16,1,.3,1) .12s both}
.hero-quickstart{animation:entry-caption .9s var(--ease) .25s both}
.hero-composer:focus-within,.hero-quickstart:focus-within{animation:none}

/* Workspace welcome: useful text and a shorter path to the existing composer. */
.search-start .page-header{padding-bottom:0}
.search-intro{max-width:1080px;min-height:280px;margin:10px auto 22px;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:20px}
.intro-copy>.eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:22px}
.search-intro h2{font-size:clamp(40px,3.9vw,59px);line-height:1.08;letter-spacing:-.06em;font-weight:550;margin-bottom:22px}
.search-intro h2>span{background-image:linear-gradient(105deg,#f4e5e8,#f3a4b1 65%,#ed6077);padding-bottom:5px}
.intro-copy>p:not(.eyebrow){color:#bdb3bc;font-size:14px;line-height:1.85;max-width:480px}
.intro-orb{height:280px;overflow:clip;position:relative}
.intro-orb .ai-orb{--orb-size:215px;animation:core-arrive 1.35s cubic-bezier(.16,1,.3,1) both}
.intro-orbit{width:280px;height:130px}
.intro-core-label{bottom:0;font-size:9px;letter-spacing:.18em;color:#d7c4d1}
.intro-core-label>span{font-size:6px;letter-spacing:.13em;color:#978391}
.search-start .search-form{max-width:1080px}
.search-form{border-color:#d88ea33f;background:linear-gradient(110deg,#251e27,#1b171f);box-shadow:inset 0 1px 0 #ffffff0a,0 20px 50px #0002}
.question-starters,.search-recent{max-width:1080px}
.question-starters button{background:linear-gradient(125deg,#211b2470,#171419);border-color:#dfbac91b}
.workspace-bar{background:#101012;border-color:#ffffff09}
.sidebar{background:linear-gradient(165deg,#19131b,#121014 60%)}
.agent-live>.ai-orb{--orb-size:165px}
.agent-live[data-state=completed]>.ai-orb{--orb-size:45px}
.agent-live[data-state=failed]>.ai-orb{--orb-size:100px}
.login-card h1{font-size:34px;line-height:1.16;letter-spacing:-.05em}

@keyframes headline-arrive{from{opacity:0;transform:translateY(75%) rotate(2deg)}to{opacity:1;transform:none}}
@keyframes entry-caption{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes core-arrive{from{opacity:0;translate:0 24px;rotate:-12deg;scale:.78}to{opacity:1;translate:0 0;rotate:0deg;scale:1}}
@keyframes composer-arrive{from{opacity:.3;transform:translateY(13px)}to{opacity:1;transform:none}}
@keyframes scene-arrive{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@keyframes connection-arrive{from{stroke-dashoffset:110;opacity:0}to{stroke-dashoffset:0;opacity:1}}

@media(min-width:1650px){.hero{padding-top:70px;padding-bottom:60px;column-gap:65px}.hero-visual{height:590px}.hero-visual .sphere-stage{top:145px;left:calc(50% - 160px)}.hero-visual .ai-orb{--orb-size:320px}.hero-visual .orb-halo{width:410px;height:185px;left:calc(50% - 205px)}.search-intro{min-height:310px}.intro-orb{height:305px}.intro-orb .ai-orb{--orb-size:240px}}
@media(max-width:1150px){.hero{padding:45px 35px 35px;gap:23px 25px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.hero h1{font-size:clamp(42px,5.3vw,61px)}.hero-copy>.eyebrow{font-size:8px;letter-spacing:.09em}.hero-description{font-size:14px}.hero-visual{height:545px}.hero-visual .sphere-stage{top:160px;left:calc(50% - 125px)}.hero-visual .ai-orb{--orb-size:250px}.hero-visual .orb-halo{width:300px;height:145px;left:calc(50% - 150px)}.agent-deliverable{width:295px;padding:16px 15px}.deliverable-evidence{gap:9px}.principles{font-size:10px;padding-left:35px;padding-right:35px;gap:16px}.principles>a{font-size:10px}.search-intro{min-height:260px;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:7px}.search-intro h2{font-size:40px}.intro-orb{height:255px}.intro-orb .ai-orb{--orb-size:175px}.intro-orbit{width:225px;height:105px}.intro-copy>.eyebrow{font-size:8px;letter-spacing:.08em}.intro-copy>p:not(.eyebrow){font-size:13px}}
@media(max-width:850px) and (min-width:761px){.hero{gap:24px 18px;padding-left:26px;padding-right:26px}.hero h1{font-size:43px}.hero-question-heading h2{font-size:15px}.hero-copy>.eyebrow{font-size:7px}.hero-composer{padding:18px 14px 13px}.hero-visual .ai-orb{--orb-size:210px}.hero-visual .sphere-stage{left:calc(50% - 105px);top:175px}.hero-visual .orb-halo{width:240px;left:calc(50% - 120px)}.principles{display:grid;grid-template-columns:1fr 1fr;justify-items:start}.agent-deliverable{padding:15px 12px}.deliverable-evidence{flex-wrap:wrap;gap:8px}}
@media(max-width:760px){
 .site-header{height:72px;padding:0 22px}.site-header .wordmark{font-size:15px;letter-spacing:.03em}
 .hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "composer" "quick" "visual";padding:35px 22px 28px;gap:22px}
 .hero-copy{text-align:left}.hero-copy>.eyebrow{justify-content:flex-start;font-size:8px;letter-spacing:.08em;margin-bottom:21px;gap:8px}
 .hero h1{font-size:clamp(40px,9.8vw,69px);line-height:1.08;margin-bottom:18px;letter-spacing:-.065em}
 .hero h1>.headline-line{padding-bottom:.075em}
 .hero-description{font-size:14px;line-height:1.8;margin:0;max-width:520px}
 .hero-composer{padding:18px 16px 13px;border-radius:16px;margin:0}
 .hero-question-heading h2{font-size:16px}.hero-question-heading{margin-bottom:12px}
 .hero-composer form{min-height:91px;padding:8px;gap:8px}.hero-composer textarea{font-size:16px;min-height:69px;padding:5px}
 .hero-composer .primary{width:44px;min-height:44px}
 .composer-foot{font-size:10px;line-height:1.65;margin-top:11px}
 .hero-quickstart{margin-top:-3px}.hero-quickstart>span{font-size:10px;margin-bottom:10px}
 .landing-starters{gap:8px}.landing-starters button{font-size:10px;min-height:37px;padding:9px 10px}
 .hero-visual{height:450px;max-width:480px;margin:9px auto 0;overflow:clip}
 .agent-input{top:7px;padding:10px 15px 10px 11px;gap:11px}.scene-document{width:33px;height:37px}.scene-document svg{width:18px}.agent-input div>span{font-size:7px}.agent-input strong{font-size:12px}
 #agent-scene-heading{top:86px;font-size:9px}#agent-scene-heading span{font-size:9px;margin-top:5px}
 .hero-visual .sphere-stage{top:121px;left:calc(50% - 107px)}.hero-visual .ai-orb{--orb-size:214px}
 .hero-visual .orb-halo{top:165px;left:calc(50% - 135px);width:270px;height:120px}
 .agent-deliverable{bottom:30px;max-width:90%;width:295px;padding:14px 15px}
 .deliverable-heading{padding-bottom:11px}.deliverable-heading strong{font-size:12px}.deliverable-evidence{padding-top:11px;font-size:9px;gap:8px}
 .agent-scene-caption{font-size:8px;bottom:3px}
 .principles{display:grid;grid-template-columns:1fr 1fr;justify-items:start;align-items:center;gap:20px 12px;padding:23px 22px;font-size:10px;line-height:1.6}.principles>span{justify-content:flex-start;align-items:flex-start;gap:8px}.principles svg{flex-shrink:0;margin-top:2px}.principles>a{font-size:10px}
 .search-intro{display:grid;grid-template-columns:minmax(0,1fr) 66px;min-height:0;gap:0 8px;position:relative;margin:18px auto 22px;text-align:left}
 .intro-copy{grid-row:1;grid-column:1/-1;padding-top:70px}
 .intro-copy>.eyebrow{position:absolute;left:0;top:20px;max-width:calc(100% - 70px);justify-content:flex-start;font-size:8px;letter-spacing:.08em;line-height:1.8;margin:0}
 .search-intro h2{font-size:clamp(32px,8.5vw,48px);line-height:1.1;margin-bottom:16px}
 .intro-copy>p:not(.eyebrow){font-size:13px;line-height:1.8;margin:0;max-width:470px}
 .intro-orb{position:absolute;right:0;top:-8px;width:72px;height:72px;margin:0;overflow:visible;max-width:none}
 .intro-orb .ai-orb{--orb-size:60px}.intro-orbit,.intro-core-label{display:none}
 .question-starters{margin-top:16px}.question-starters button{min-height:63px}
 .agent-live>.ai-orb{--orb-size:125px}.agent-live[data-state=completed]>.ai-orb{--orb-size:37px}
 .login-card h1{font-size:29px}.login-card{padding-top:25px}.login-symbol .ai-orb{--orb-size:70px}
}
@media(max-width:370px){.hero{padding:30px 18px 24px}.site-header{padding:0 18px}.hero h1{font-size:34px}.hero-copy>.eyebrow{font-size:7px;letter-spacing:.04em;gap:6px}.hero-description{font-size:13px}.hero-question-heading h2{font-size:14px}.hero-question-heading>svg{width:14px}.hero-composer{padding:16px 13px 12px}.landing-starters{gap:7px}.landing-starters button{font-size:9px;padding:8px}.principles{padding:22px 18px;font-size:9px;gap:18px 12px}.principles>a{font-size:9px}.intro-copy>.eyebrow{font-size:7px;letter-spacing:.04em}.search-intro h2{font-size:31px}.agent-deliverable{max-width:96%}.deliverable-evidence{font-size:8px}.agent-scene-caption{font-size:7px}}

/* CSS and canvas honor one motion preference, and keep all content visible. */
html.motion-off *,html.motion-off *::before,html.motion-off *::after,
html.tab-hidden *,html.tab-hidden *::before,html.tab-hidden *::after{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
