/* Cluno's vertical, illustrated front door. All animation is decorative. */
html{scroll-behavior:smooth;scroll-padding-top:28px}body{overflow-x:hidden}
.landing.auth-page{display:block;min-height:100vh;background:#f4eedf;overflow:clip}
.landing-nav{max-width:1320px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}
.landing-nav .brand{font-size:34px}.landing-nav nav{display:flex;gap:30px;font-size:13px}.landing-nav nav a:hover,.text-link:hover{ text-decoration:underline;text-underline-offset:5px}
.nav-start{font-size:13px;font-weight:700;border:1.5px solid #17120f;padding:13px 19px;background:#17120f;color:#f4eedf;display:flex;gap:28px}
.nav-start:hover{background:#c8fa51;color:#17120f}.landing-hero{max-width:1440px;margin:auto;position:relative;padding:34px 4% 0;text-align:center}
.hero-copy{position:relative;z-index:2;pointer-events:none}.hero-copy a{pointer-events:auto}.hero-copy>.eyebrow{font-size:10px;letter-spacing:2px}
.hero-copy h1{font-size:clamp(62px,7.5vw,112px);line-height:.99;font-weight:900;letter-spacing:-.065em;margin:23px 0 24px;color:#17120f}
.hero-copy .lime-highlight{padding:0 13px 5px;line-height:1.05;transform:rotate(-1.2deg)}
.hero-copy>p{color:#736b5c;font-size:17px;line-height:1.65;margin:0}.hero-actions{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:26px}
.landing-button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;background:#17120f;color:#fffaf0;padding:16px 22px;font-size:14px;font-weight:700;box-shadow:4px 4px 0 #c8fa51;transition:transform .2s,box-shadow .2s}
.landing-button:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 #c8fa51}.text-link{font-size:13px}
.hero-world{position:relative;max-width:1120px;margin:0 auto;height:430px}.scene{position:relative;isolation:isolate;contain:layout;touch-action:pan-y}.scene canvas{display:block;position:absolute;inset:0;width:100%;height:100%;outline:none;transition:opacity .6s}
.scene-fallback{display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:90%;height:auto;z-index:-1;transition:opacity .5s}.scene.ready .scene-fallback{opacity:0}.scene-hero{height:100%;width:100%}
.world-note{position:absolute;z-index:1;padding:11px 16px;background:#fffaf0;border:1.5px solid #17120f;box-shadow:4px 4px 0 #17120f;font-size:14px;font-weight:700;pointer-events:none;animation:note-float 5s ease-in-out infinite}
.note-left{left:10%;top:34%;transform:rotate(-8deg)}.note-right{right:9%;top:49%;background:#c8fa51;transform:rotate(6deg);animation-delay:-2.5s}
.wave-button{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);color:#746951;font-size:11px;border-bottom:1px solid #baad91;padding:6px 3px}.wave-button span{display:inline-block;color:#d65f22;font-size:18px;margin-left:8px}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #d9cfbb;padding:23px 0;margin:0 2%;font-family:Consolas,monospace;font-size:10px;letter-spacing:1.5px;color:#80725c}
#motion-toggle{font:inherit;color:inherit;letter-spacing:0;padding:6px}#motion-toggle:hover{color:#17120f}.hero-bottom a{color:#17120f}
.section-heading{text-align:center}.section-heading .eyebrow{font-size:10px;letter-spacing:2px}.section-heading h2{font-size:clamp(45px,6vw,80px);line-height:1.03;letter-spacing:-.055em;font-weight:900;margin:24px 0}.section-heading h2 em{color:#c8fa51;font-style:normal}.section-heading p{font-size:16px;line-height:1.75;margin:0;color:#a99f8e}
.possibilities{background:#1c1814;color:#f5eedf;padding:100px max(5%,calc((100vw - 1200px)/2)) 74px;position:relative}
.possibilities .eyebrow{color:#a79880}.scene-tools{height:390px;max-width:1050px;margin:12px auto 0}.scene-tools .scene-fallback{width:360px}
.feature-options{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1160px;margin:0 auto}.feature-option{position:relative;padding:26px 25px;text-align:left;background:#27221d;border:1px solid #50473b;color:#f4eedf;transition:transform .2s,background .2s;min-height:198px}
.feature-option:hover{transform:translateY(-5px);border-color:#c8fa51}.feature-option.active{background:#c8fa51;color:#17120f;border-color:#c8fa51;box-shadow:5px 5px 0 #718f2c}
.feature-number{font-family:Consolas,monospace;font-size:10px;letter-spacing:1px;opacity:.7;display:block;margin-bottom:27px}.feature-option strong{display:block;font-size:23px;letter-spacing:-.8px;margin-bottom:12px}.feature-option>span:not(.feature-number):not(.feature-arrow){font-size:12px;line-height:1.8;opacity:.75}.feature-arrow{position:absolute;right:24px;top:20px;font-size:25px}
.feature-caption{text-align:center;min-height:22px;color:#afa58e;font-size:12px;margin:27px 0 0}
.how-it-works{max-width:1200px;padding:110px 5%;margin:auto}.how-it-works .section-heading{margin-bottom:60px}.journey{max-width:940px;margin:auto;border-top:1.5px solid #17120f}
.journey-step{position:relative;display:grid;grid-template-columns:70px 1fr 120px;gap:36px;align-items:center;padding:37px 20px;border-bottom:1px solid #cfc1a9;min-height:182px;perspective:700px}
.step-index{font-family:Consolas,monospace;font-size:14px;align-self:start;padding-top:10px;color:#87785e}.journey-step h3{font-size:34px;line-height:1.2;letter-spacing:-1.3px;margin:0 0 12px}.journey-step p{max-width:470px;color:#786b56;font-size:14px;line-height:1.75;margin:0}
.step-art{position:relative;display:block;width:96px;height:80px;transform-style:preserve-3d;animation:object-tilt 7s ease-in-out infinite;justify-self:center}.wallet-art{background:#9f83df;border:2px solid #17120f;border-radius:8px;box-shadow:8px 8px 0 #6c4baf;transform:rotateY(-20deg) rotateZ(9deg)}.wallet-art i{position:absolute;inset:9px;border:1px solid #bda6eb;border-radius:4px}.wallet-art b{position:absolute;right:-6px;top:27px;background:#c8fa51;border:2px solid #17120f;padding:3px 15px;border-radius:4px;color:#17120f}
.signature-art{background:#fffaf0;border:2px solid #17120f;box-shadow:7px 7px 0 #d4c5a8;height:100px;width:80px;animation-delay:-2s;transform:rotateY(15deg) rotateZ(-10deg)}.signature-art i{position:absolute;left:14px;top:17px;width:47px;height:3px;background:#c6b99f;box-shadow:0 11px 0 #c6b99f,0 22px 0 #c6b99f}.signature-art b{position:absolute;bottom:5px;right:10px;font-size:40px;color:#cf642c;transform:translateZ(14px)}.spark-art{font-size:108px;line-height:.8;color:#f47b32;text-shadow:6px 6px 0 #bc501b;animation-delay:-4s}
.connect-section.auth-right{position:relative;border:0;border-top:1px solid #d8c9aa;padding:60px 24px 90px;background:#eae0ca;display:flex;flex-direction:column;align-items:center;gap:0;scroll-margin-top:0}
.scene-connect{width:min(100%,570px);height:260px;margin:-3px 0 -27px;pointer-events:none}.scene-connect .scene-fallback{width:270px}
.connect-section .auth-card{max-width:410px;position:relative;text-align:center;z-index:2}.connect-section .auth-card h2{font-size:60px;line-height:1;letter-spacing:-3px;margin:22px 0 18px}.connect-section .auth-card>.eyebrow{display:none}.connect-section .auth-card .muted{font-size:14px;margin:0 0 27px}.connect-section .auth-submit{padding:17px 22px;font-size:14px;box-shadow:5px 5px 0 #c8fa51;border-radius:0;transition:transform .2s}.connect-section .auth-submit:hover{transform:translateY(-2px)}.connect-section .wallet-signature-note{font-size:12px}.connect-section .auth-footnote{margin-top:25px;font-size:11px}.connect-section .wallet-help{font-size:12px;margin-top:24px}.connect-section #auth-form{text-align:left}.connect-section .error-text{text-align:left;padding:12px;border:1px solid #cc8f70;background:#f8e1d1;color:#8e3f28}
.landing-footer{padding:45px 5% 27px;max-width:1400px;margin:auto}.footer-wordmark{font-size:clamp(90px,22vw,310px);line-height:.92;font-weight:900;letter-spacing:-.075em;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #cfc1a9;padding-bottom:35px}.footer-wordmark span{font-size:.68em;color:#f47b32;display:inline-block;animation:footer-turn 24s linear infinite}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:11px;color:#87765e;padding-top:17px}.footer-bottom>div{display:flex;gap:26px}.footer-bottom a:hover{color:#17120f;text-decoration:underline;text-underline-offset:4px}
.scene-welcome{width:240px;height:155px;margin:0 auto -5px;pointer-events:none}.scene-welcome .scene-fallback{width:240px}.reveal{opacity:1}.motion-ready .reveal{opacity:.22;transform:translateY(28px);transition:opacity .8s,transform .8s}.motion-ready .reveal.in-view{opacity:1;transform:none}
.motion-paused .world-note,.motion-paused .step-art,.motion-paused .footer-wordmark span{animation-play-state:paused}
@keyframes note-float{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes object-tilt{0%,100%{rotate:y -12deg;translate:0 0}50%{rotate:y 12deg;translate:0 -7px}}
@keyframes footer-turn{to{transform:rotate(360deg)}}
@media(min-width:1600px){.hero-world{height:480px}}
@media(max-width:800px){.landing-nav{padding:23px 5%;gap:16px}.landing-nav nav{gap:18px}.landing-nav nav a:nth-child(2){display:none}.landing-nav .brand{font-size:28px}.nav-start{padding:11px 13px;gap:16px;font-size:12px}.hero-copy h1{font-size:clamp(57px,9vw,82px)}.hero-world{height:350px}.note-left{left:5%;top:35%;font-size:11px}.note-right{right:5%;top:58%;font-size:11px}.possibilities{padding-top:75px}.feature-options{gap:10px}.feature-option{padding:21px 16px}.feature-option strong{font-size:20px}.feature-option>span:not(.feature-number):not(.feature-arrow){font-size:11px}.feature-option br{display:none}.journey-step{gap:20px;grid-template-columns:44px 1fr 100px}.journey-step h3{font-size:28px}.step-art{scale:.85}.how-it-works{padding:85px 5%}}
@media(max-width:540px){.landing-nav{padding:21px 6%}.landing-nav .brand{font-size:27px;gap:9px}.landing-nav .brand-mark{width:28px;height:26px}.landing-nav nav a:not(:last-child){display:none}.landing-nav nav{font-size:11px;margin-left:auto}.nav-start{padding:9px 11px;gap:9px;font-size:11px}.landing-hero{padding-top:38px}.hero-copy>.eyebrow{font-size:8px;letter-spacing:1.6px}.hero-copy h1{font-size:clamp(46px,11.4vw,62px);letter-spacing:-.065em;margin:21px 0}.hero-copy .lime-highlight{padding:0 6px 3px}.hero-copy>p{font-size:13px;line-height:1.8}.hero-actions{gap:21px;flex-direction:column;margin-top:26px}.landing-button{font-size:12px;padding:14px 19px;gap:32px}.text-link{font-size:11px}.hero-world{height:310px;margin-top:0;width:112%;margin-left:-6%}.world-note{font-size:10px;padding:8px 10px;box-shadow:3px 3px 0 #17120f}.note-left{left:5%;top:14%}.note-right{right:5%;top:57%}.wave-button{bottom:2px;font-size:10px}.hero-bottom{font-size:8px;letter-spacing:1px;gap:12px;padding:18px 0;flex-wrap:wrap;justify-content:center}.hero-bottom>span{width:100%}.hero-bottom a{margin-left:16px}.section-heading h2{font-size:45px}.section-heading p{font-size:13px}.section-heading p br{display:none}.possibilities{padding:65px 6% 48px}.scene-tools{height:300px;width:112%;margin-left:-6%}.feature-options{grid-template-columns:1fr;gap:12px}.feature-option{min-height:0;padding:20px 22px 22px}.feature-number{margin-bottom:16px}.feature-option strong{font-size:24px}.feature-option>span:not(.feature-number):not(.feature-arrow){font-size:12px}.feature-caption{font-size:11px;line-height:1.8;margin:26px 10px 0}.how-it-works{padding:70px 6%}.how-it-works .section-heading{margin-bottom:40px}.how-it-works h2{font-size:39px}.journey-step{padding:28px 2px;grid-template-columns:28px 1fr 61px;gap:12px;min-height:185px}.journey-step h3{font-size:24px;letter-spacing:-.7px}.journey-step p{font-size:12px;line-height:1.8}.step-index{font-size:11px;padding-top:5px}.step-art{scale:.58;transform-origin:center}.connect-section.auth-right{padding:50px 7% 60px}.scene-connect{height:225px;margin-bottom:-17px}.connect-section .auth-card h2{font-size:50px;letter-spacing:-2.5px}.connect-section .auth-card .muted{font-size:12px}.connect-section .auth-card{max-width:360px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:7px;line-height:1.7}.footer-bottom>div{flex-wrap:wrap;gap:13px 20px}.landing-footer{padding:38px 6% 25px}.footer-wordmark{padding-bottom:25px;font-size:25vw}.scene-welcome{width:190px;height:125px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .reveal{opacity:1;transform:none}.world-note,.step-art,.footer-wordmark span{animation:none}}
@media(min-width:541px) and (max-height:800px){.landing-nav{padding-top:18px;padding-bottom:18px}.landing-hero{padding-top:12px}.hero-copy h1{font-size:clamp(57px,6.5vw,88px);margin:16px 0}.hero-copy>p{font-size:14px}.hero-actions{margin-top:18px}.hero-world{height:320px}.hero-bottom{padding:16px 0}.landing-button{padding:13px 20px}}
@media(min-width:541px) and (max-height:650px){.landing-nav{padding-top:12px;padding-bottom:12px}.landing-hero{padding-top:4px}.hero-copy h1{font-size:52px;margin:10px 0 14px}.hero-copy>p{font-size:12px}.hero-actions{margin-top:14px}.hero-world{height:255px}.landing-button{padding:10px 18px;font-size:12px}.hero-bottom{padding:11px 0}.world-note{font-size:11px}.hero-copy>.eyebrow{font-size:8px}.wave-button{bottom:0}}
@media(max-width:540px){.hero-copy h1{font-size:clamp(32px,10.5vw,57px)}.landing-nav{gap:9px}.landing-nav nav{white-space:nowrap;font-size:10px}.nav-start{white-space:nowrap;font-size:10px;padding:9px;gap:6px}.landing-nav .brand{font-size:25px;gap:7px}.landing-nav .brand-mark{width:25px;height:24px}.sidebar-links{flex-wrap:wrap;gap:8px 13px}}
@media(max-width:360px){.nav-start span{display:none}.hero-copy>p{font-size:12px}}
/* One type family, readable controls, and focused conversation tools. */
:root{font-family:Arial,"Segoe UI",sans-serif;font-size:15px}button,input,textarea,select{font-family:inherit}.eyebrow,.header-eyebrow{display:none}.hero-bottom,.feature-caption,.step-index,.feature-number{font-family:inherit;letter-spacing:0}.hero-bottom{justify-content:center;gap:35px;font-size:13px}.landing-nav nav,.nav-start,.text-link,.landing-button{font-size:14px}.feature-option>span:not(.feature-number):not(.feature-arrow),.feature-caption{font-size:14px;line-height:1.65}.feature-option{min-height:165px}.journey-step{grid-template-columns:1fr 120px}.journey-step p{font-size:16px}.section-heading p,.hero-copy>p{font-size:16px}.footer-bottom{font-size:14px}.wave-button{font-size:14px}.hero-world{height:400px;max-width:1280px;width:100%}.scene-connect{margin-bottom:0}.connect-copy{text-align:center}.connect-copy h2{font-size:clamp(40px,5vw,64px);line-height:1.04;letter-spacing:-2px;margin:12px 0 22px}.connect-copy p{font-size:16px;color:#736751}.connect-copy .landing-button{margin-top:12px}
.cluno-dialog{color:#17120f;background:#f8f3e8;border:1px solid #17120f;border-radius:16px;padding:36px;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 36px);overflow-y:auto;box-shadow:10px 10px 0 #17120f26}.cluno-dialog::backdrop{background:#211a1570;backdrop-filter:blur(5px)}.cluno-dialog h2{font-size:32px;line-height:1.1;letter-spacing:-1.2px;margin:6px 0 18px}.dialog-close{position:absolute;right:13px;top:9px;width:34px;height:34px;font-size:27px;border-radius:50%}.dialog-close:hover{background:#e4d6bd}.auth-dialog .auth-card{max-width:none}.auth-dialog .muted{font-size:15px;line-height:1.6;margin-bottom:24px}.wallet-options{display:grid;gap:10px}.wallet-option{display:flex;align-items:center;gap:14px;padding:13px 15px;border:1px solid #d6c8ae;background:#fffaf0;border-radius:9px;text-align:left;font-size:16px;font-weight:700;width:100%}.wallet-option:hover{border-color:#17120f;background:#eef7d3}.wallet-option>span:last-child{margin-left:auto}.wallet-symbol{width:33px;height:33px;display:grid;place-items:center;border-radius:8px;font-size:18px}.phantom-symbol{background:#ab91ea}.solflare-symbol{background:#f5af48}.backpack-symbol{background:#e9716b}.wallet-signature-note,.auth-footnote{font-size:14px;line-height:1.6}.auth-footnote{margin-bottom:0}.wallet-help{font-size:14px;line-height:1.7;flex-wrap:wrap}.auth-dialog .error-text{font-size:14px;padding:12px;background:#f6dfd3;border-radius:6px}.auth-dialog .auth-submit{width:100%}
.history-heading{font-size:14px;font-weight:600;letter-spacing:0}.chat-row{display:flex;align-items:center;border-radius:6px;margin:4px 0;min-width:0;border:1px solid transparent}.chat-row:hover{background:#dfd4bd}.chat-row.active{background:#c8fa51}.chat-row .chat-item{display:block;flex:1;min-width:0;background:none;border-radius:0;font-size:14px;margin:0;padding:13px 10px;text-align:left;overflow:hidden}.chat-label{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-more{flex:none;width:34px;height:36px;border-radius:5px;font-size:25px;line-height:1;margin-right:4px}.chat-more:hover,.chat-more[aria-expanded=true]{background:#17120f15}.chat-row.dragging{opacity:.4}.chat-row.drop-target{border-top:3px solid #cf6b2d}.chat-menu{position:fixed;z-index:80;width:180px;padding:6px;background:#fffaf0;border:1px solid #b8aa90;border-radius:9px;box-shadow:0 10px 30px #211a1533}.chat-menu button{display:block;width:100%;padding:11px 13px;text-align:left;border-radius:5px;font-size:14px}.chat-menu button:hover{background:#ede3ce}.danger{color:#a33524}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}.dialog-actions button{padding:11px 16px;border:1px solid #c9bca1;border-radius:6px;font-size:14px}.dialog-actions .primary{color:#fffaf0;background:#17120f}.dialog-actions .danger{background:#a33524;color:white}#chat-name{width:100%;padding:12px;border:1px solid #aa9b80;border-radius:6px;background:#fffaf0;font-size:16px;margin-top:8px}#chat-edit-error{color:#a33524;font-size:14px}.search-label input{font-size:14px}.new-chat{font-size:14px}.chat-header h2{font-size:17px;font-weight:600;margin:0}.connection-badge,.account-info>span,.sidebar-links{font-size:12px}.message-name,.message-copy{font-size:13px}.message-content{font-size:16px}.suggestion strong{font-size:15px}.suggestion>span:not(.suggestion-icon):not(.suggestion-arrow){font-size:13px;line-height:1.5}.suggestion-icon{background:none;width:28px;font-size:21px}.suggestion{background:#fffaf0eF;border-radius:8px;padding:18px;backdrop-filter:blur(5px)}.composer-footnote{font-size:12px;line-height:1.5}.keyboard-hint{font-size:12px}.composer textarea{font-size:16px}.attach-button{font-size:13px}.welcome h1{font-size:clamp(30px,3.4vw,49px);letter-spacing:-1.8px}.welcome p{font-size:16px}.welcome{position:relative;z-index:1;margin:clamp(42px,12vh,140px) auto 40px;max-width:600px}.conversation-scroll{position:relative;isolation:isolate}.chat-landscape.scene{position:absolute;inset:0;min-height:560px;pointer-events:none;z-index:0}.messages{position:relative;z-index:1}.chat-panel{overflow:hidden}.suggestions{margin-top:30px}.chat-header,.composer-area{position:relative;z-index:2;background:#f8f3e8}.chat-landscape:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 37%,#f8f3e8cc 0%,#f8f3e888 25%,transparent 64%);pointer-events:none}.sidebar-links{flex-wrap:wrap;gap:8px 14px}
@media(min-width:541px) and (max-height:800px){.hero-world{height:340px}.hero-copy h1{font-size:clamp(52px,6vw,78px)}.hero-copy>p{font-size:14px}}
@media(min-width:541px) and (max-height:650px){.hero-world{height:285px}.hero-copy h1{font-size:48px}.hero-copy>p{font-size:13px}.hero-actions{margin-top:12px}}
@media(max-width:540px){.hero-world{height:330px;width:112%;margin-left:-6%}.hero-copy>p{font-size:14px}.hero-copy h1{font-size:clamp(30px,10vw,51px)}.landing-nav .brand{font-size:23px}.landing-nav nav,.nav-start{font-size:11px}.landing-nav nav{display:none}.landing-nav{justify-content:space-between}.nav-start{padding:12px}.journey-step{grid-template-columns:1fr 64px;gap:12px}.journey-step h3{font-size:25px}.journey-step p{font-size:14px}.feature-option{min-height:0}.feature-option>span:not(.feature-number):not(.feature-arrow){font-size:14px}.feature-caption{font-size:14px}.hero-bottom{font-size:12px}.hero-bottom>span{width:auto}.cluno-dialog{padding:32px 22px 26px}.cluno-dialog h2{font-size:29px}.welcome{margin:44px auto 28px}.welcome h1{font-size:32px;letter-spacing:-1px}.welcome p{font-size:14px}.suggestions{gap:9px}.suggestion{padding:14px 12px}.suggestion strong{font-size:14px}.suggestion>span:not(.suggestion-icon):not(.suggestion-arrow){font-size:12px}.composer-footnote{font-size:11px}.chat-landscape.scene{min-height:500px}.chat-header h2{font-size:15px}.connection-badge{font-size:11px}.chat-more{width:38px;height:40px}}
.chat-landscape.scene{min-height:100%;height:100%}.generation-status:empty{display:none}.composer textarea{min-height:64px;padding-top:12px}.composer-area{padding-top:12px;padding-bottom:12px}.composer-footnote{margin-top:9px}.chat-header{height:70px}.connection-note{margin-top:8px;margin-bottom:0;padding:7px 12px;font-size:12px}.welcome{margin-top:clamp(30px,7vh,90px)}
@media(max-height:800px){.welcome{margin-top:24px;margin-bottom:20px}.welcome h1{font-size:34px;margin:10px 0}.welcome p{font-size:14px}.suggestions{margin-top:20px}.suggestion{min-height:88px;padding:12px 14px}.suggestion-icon{margin-bottom:6px}.composer textarea{min-height:56px;line-height:1.5}.composer-footnote{font-size:11px}.chat-header{height:60px}.sidebar{padding-top:20px}.sidebar-brand{padding-bottom:18px}.search-label{margin-top:14px;margin-bottom:14px}.sidebar-bottom{padding-top:8px}}
@media(max-height:650px) and (min-width:721px){.welcome{margin:12px auto}.welcome h1{font-size:29px}.welcome p{font-size:13px}.suggestions{margin-top:14px;gap:8px}.suggestion{min-height:67px;padding:9px 13px}.suggestion-icon{display:none}.suggestion strong{font-size:14px}.suggestion>span:not(.suggestion-icon):not(.suggestion-arrow){font-size:12px}.composer-footnote span{display:none}.composer-area{padding-top:8px;padding-bottom:8px}.composer textarea{min-height:45px;padding-top:8px}.composer-bottom{padding-bottom:8px}.chat-header{height:54px}}
@media(max-width:540px){.landing-nav nav{display:flex}.landing-nav{gap:7px}.landing-nav .brand{font-size:22px}.nav-start{padding:10px 9px;font-size:10px}.landing-nav nav{font-size:10px}.welcome{margin-top:30px}.chat-landscape.scene{min-height:100%}}

/* Full-screen chapters with breathing room on smaller displays. */
.landing-nav{height:84px;box-sizing:border-box;width:100%;position:relative;z-index:4;padding-top:18px;padding-bottom:18px}
.landing-hero,.possibilities,.how-it-works,.connect-section.auth-right{box-sizing:border-box;isolation:isolate;position:relative;width:100%;max-width:none;min-height:100svh;display:flex;flex-direction:column;justify-content:center}
.landing-hero{min-height:calc(100svh - 84px);padding:12px 5% 0}
.hero-copy h1{font-size:clamp(44px,min(7vw,9svh),112px);margin:12px 0 20px}.hero-copy>p{font-size:16px}.hero-actions{margin-top:22px}
.hero-world{flex:1 0 clamp(210px,33svh,430px);height:clamp(210px,33svh,430px);max-height:540px;min-height:210px;width:min(100%,1280px);margin:0 auto}
.hero-bottom{flex:none;width:min(100%,1200px);margin:0 auto;padding:15px 0;position:relative;z-index:2}
.possibilities{padding:clamp(30px,5svh,80px) max(6%,calc((100vw - 1160px)/2))}
.section-heading{position:relative;z-index:1}.section-heading h2{font-size:clamp(40px,min(6vw,8svh),80px);margin:0 0 20px}
.scene-tools{width:100%;height:clamp(190px,30svh,370px);flex:none;margin:6px auto}.feature-options{width:100%;position:relative;z-index:1}.feature-option{min-height:150px;padding:24px}.feature-caption{position:relative;z-index:1;margin-top:24px}
.how-it-works{padding:clamp(35px,6svh,90px) 8%}.how-it-works .section-heading{margin-bottom:clamp(24px,5svh,60px)}.journey{width:min(100%,940px);margin:0 auto;position:relative;z-index:1}.journey-step{min-height:0;padding:clamp(20px,3svh,38px) 20px}.journey-step h3{font-size:clamp(26px,3.4svh,34px)}
.connect-section.auth-right{padding:40px 8%;gap:15px}.scene-connect{height:clamp(200px,30svh,330px);flex:none}.connect-copy{position:relative;z-index:1}.connect-copy h2{font-size:clamp(40px,6svh,72px)}
.contract-address{display:flex;align-items:center;gap:16px;text-align:left;max-width:390px;margin:34px auto 0;padding:18px 22px;border:1px solid #c8b99a;border-radius:12px;background:#f7f0e1;box-shadow:5px 5px 0 #d4c6a7}.contract-address>div{display:grid;gap:5px}.contract-address strong{font-size:15px}.contract-address div span{font-size:14px;color:#7a6a51}.contract-icon{display:grid;place-items:center;width:38px;height:38px;background:#c8fa51;border-radius:8px;font-size:24px}.contract-tag{margin-left:auto;font-size:14px;color:#77684e}
.side-orbit{position:absolute;pointer-events:none;z-index:0;top:18%;bottom:12%;width:clamp(70px,10vw,190px);perspective:800px;opacity:.9}.side-orbit-left{left:2.5%}.side-orbit-right{right:2.5%}.side-orbit i{position:absolute;display:block;animation:orbit-drift 9s ease-in-out infinite}.orbit-ring{width:clamp(50px,6vw,110px);aspect-ratio:1;border:clamp(9px,1.2vw,19px) solid #b69bd8;border-radius:50%;box-shadow:inset 5px 4px 5px #765a9a88,5px 8px 0 #8563ac,12px 20px 22px #5e436124;transform:rotateX(22deg) rotateY(-28deg)}.side-orbit-left .orbit-ring{top:22%;left:0}.orbit-cube{width:clamp(40px,4.5vw,75px);aspect-ratio:1;background:linear-gradient(135deg,#ffe29b,#f9a650);border-radius:12px;box-shadow:8px 8px 0 #d37b30,16px 25px 26px #8c582222;transform:rotate(-18deg);bottom:7%;left:25%}.orbit-spark{font-size:clamp(70px,8vw,150px);font-style:normal;line-height:1;color:#f9aa58;text-shadow:5px 7px 0 #d77a31,12px 19px 25px #a8773925;top:3%;right:0}.side-orbit-right .orbit-ring{bottom:9%;right:12%;width:clamp(45px,5vw,90px);border-color:#b7d36d;box-shadow:inset 5px 4px 5px #6a863d66,5px 8px 0 #819f48;animation-delay:-4s}.possibilities .side-orbit{opacity:.6}.how-it-works .side-orbit{top:15%}.connect-section .side-orbit{top:10%;bottom:18%}
@keyframes orbit-drift{0%,100%{translate:0 0;rotate:-5deg}50%{translate:0 -18px;rotate:7deg}}
.motion-paused .side-orbit i{animation-play-state:paused}
@media(max-width:1350px){.side-orbit{opacity:.6;width:70px}.side-orbit-left{left:-20px}.side-orbit-right{right:-20px}.how-it-works .side-orbit{opacity:.25}.orbit-cube{left:0}.orbit-spark{font-size:85px}.orbit-ring{width:65px;border-width:11px}}
@media(max-width:760px){.landing-nav{height:76px}.landing-hero{min-height:calc(100svh - 76px);padding-top:18px}.hero-copy h1{font-size:clamp(34px,9vw,58px)}.hero-copy>p{font-size:14px}.hero-actions{margin-top:20px}.hero-world{width:112%;margin-left:-6%;max-height:370px;flex-basis:260px;min-height:260px}.side-orbit{opacity:.3;width:45px}.side-orbit-left{left:-28px}.side-orbit-right{right:-28px}.orbit-spark{font-size:65px}.orbit-ring{width:50px;border-width:9px}.orbit-cube{width:35px}.possibilities,.how-it-works{padding:55px 6%}.section-heading h2{font-size:clamp(36px,8vw,52px)}.feature-options{grid-template-columns:1fr}.feature-option{min-height:0;padding:20px 22px}.scene-tools{height:260px}.feature-option br{display:none}.journey-step{padding:25px 0;grid-template-columns:1fr 65px}.journey-step p{font-size:14px}.connect-section.auth-right{padding:40px 7%}.contract-address{margin-top:28px}.side-orbit-right .orbit-ring{right:0}.hero-bottom{padding:13px 0}}
@media(prefers-reduced-motion:reduce){.side-orbit i{animation:none}}
/* The garden stays behind the conversation, including long scrolling chats. */
.chat-panel{position:relative;isolation:isolate;background:#e2dcc9}.chat-landscape.scene{position:absolute;inset:0;z-index:0;height:100%;min-height:0;background:#e2dcc9;pointer-events:none}.chat-landscape canvas{filter:brightness(.7) saturate(.78)}.chat-landscape:after{background:linear-gradient(#282f261c,#282f2636),radial-gradient(ellipse at 50% 40%,#f8f3e844,transparent 65%)}.conversation-scroll{position:relative;z-index:1;background:transparent}.messages:not(:empty){background:#fbf7eeed;border:1px solid #ffffff88;border-radius:20px;box-shadow:0 12px 50px #262d2512;padding:12px 28px 26px;backdrop-filter:blur(14px);margin-top:24px;margin-bottom:24px}.welcome{position:relative;z-index:1;background:#f8f3e8df;padding:26px;border-radius:22px;backdrop-filter:blur(12px)}.connection-note,.error-banner{position:relative;z-index:2}.composer-area{background:#f8f3e8ef;backdrop-filter:blur(12px)}
@media(max-width:720px){.messages:not(:empty){padding:10px 16px 20px;border-radius:16px;margin-top:12px}.welcome{padding:22px 15px}.conversation-scroll{padding-left:12px;padding-right:12px}}
.conversation-stage{position:relative;isolation:isolate;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.conversation-stage .chat-landscape.scene{inset:0;height:100%}
/* The same contract status is visible at the top of both entry points. */
.contract-banner{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:12px;min-height:40px;box-sizing:border-box;padding:8px 16px;background:#ebe5d5;border-bottom:1px solid #d8ceb9;font-size:13px;line-height:1.4;flex-shrink:0}.contract-banner strong{font-size:13px;font-weight:600}.contract-badge{display:inline-grid;place-items:center;min-width:28px;padding:2px 6px;background:#c8fa51;color:#30281f;border-radius:4px;font-size:11px;font-weight:700}.contract-status{color:#746b5a}.chat-contract{z-index:2;background:#f1ebdd}.landing-hero{min-height:calc(100svh - 124px)}
@media(max-width:760px){.landing-hero{min-height:calc(100svh - 116px)}}
@media(max-width:360px){.contract-banner{gap:9px;padding-left:10px;padding-right:10px;font-size:12px}.contract-banner strong{font-size:12px}}
/* An inviting empty state, then a quiet cream garden once conversation starts. */
.chat-panel,.chat-landscape.scene{background:#f8f3e8}.chat-landscape canvas{filter:none;opacity:1;transition:opacity .6s ease}.chat-landscape:after{background:radial-gradient(ellipse at 50% 37%,#f8f3e8cc 0%,#f8f3e888 25%,transparent 64%)}.welcome{background:transparent;padding:0;border-radius:0;backdrop-filter:none}.messages:not(:empty){background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;padding:0 0 20px}.conversation-stage:has(#messages:not(:empty)) .chat-landscape canvas{opacity:.22}.conversation-stage:has(#messages:not(:empty)) .chat-landscape:after{background:radial-gradient(ellipse at 50% 35%,#f8f3e8dd 0%,#f8f3e8aa 30%,#f8f3e833 75%)}
@media(prefers-reduced-motion:reduce){.chat-landscape canvas{transition:none}}
.contract-copy{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:28px;padding:4px 9px;border:1px solid #bcb29c;border-radius:5px;font-size:12px;color:#30281f;background:#fffaf0;flex-shrink:0}.contract-copy:hover:not(:disabled){background:#c8fa51;border-color:#94b939}.contract-copy:disabled{opacity:.45;cursor:not-allowed}.contract-status{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:420px;user-select:text}.contract-banner.has-address .contract-status{font-family:Consolas,monospace;font-size:12px}
@media(max-width:540px){.contract-banner{gap:8px}.contract-banner strong{display:none}.contract-banner .contract-status{max-width:min(52vw,250px)}.contract-copy{min-width:32px}.contract-copy span{display:none}}
