/* Neutral edges with quiet architectural linework outside the content. */
/* Reference treatment: pastel wash, translucent disc, single fine orbital outline. */
body::before,body::after{display:none!important}
.hero{isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#f5fafb 0%,#f5f2fc 50%,#edf7f7 100%)!important}
.hero::before{content:"";display:block!important;position:absolute;width:235px;height:235px;right:50px;top:-145px;left:auto;bottom:auto;border-radius:50%;background:#e8d698;filter:blur(3px);opacity:.34;pointer-events:none;z-index:-1;transform:none}
.hero::after{content:"";position:absolute;width:205px;height:205px;right:-75px;top:-105px;border:1px solid #b9add74d;border-radius:50%;pointer-events:none;z-index:-1}
html[data-theme="dark"] .hero{background:linear-gradient(110deg,#252332,#30263c 55%,#21343a)!important}
html[data-theme="dark"] .hero::before{background:#d4b773;opacity:.12}
html[data-theme="dark"] .hero::after{border-color:#baaddb40}
@media(max-width:650px){.hero::before{width:180px;height:180px;right:-70px;top:-90px;opacity:.2}.hero::after{width:165px;height:165px;right:-85px;top:-65px}}
.header-badges .title-kicker,html[data-theme="dark"] .header-badges .title-kicker{background:#45414c;color:#fff;border-color:#45414c!important;font-weight:600}
body{position:relative;isolation:isolate}
body::before,body::after{content:"";position:fixed;pointer-events:none;z-index:-1;width:520px;height:760px;opacity:.34;background:repeating-radial-gradient(ellipse at center,transparent 0 31px,#a9a8b333 32px 33px,transparent 34px 58px);border-radius:50%}
body::before{left:-405px;top:8%;transform:rotate(-28deg)}
body::after{right:-410px;bottom:-160px;transform:rotate(28deg)}
.hero,.step-card,.card,#resultCard{border:1px solid #dedfe3!important}
.step-mascot{border-color:#dedfe3!important}
.choice,.choice:hover{border-color:#d9dade!important}
.choice.active{border-color:#7b8185!important;box-shadow:inset 3px 0 #7b8185!important}
input,select,textarea,.secondary,.theme-toggle,.lang,.review-box,.refine-panel,.title-kicker,.model-capsule,.step,.step-mascot .ai-label{border-color:#d9dade!important}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline-color:#a6adb5!important;border-color:#69737c!important}
.ratio-shape{border-color:#92989e!important}
.ratio-demo,.wizard-actions,.footer,.hero .privacy,.hero .prompt-disclaimer,.poster-contact-fields{border-color:#dedfe3!important}
html[data-theme="dark"] body::before,html[data-theme="dark"] body::after{opacity:.3;background:repeating-radial-gradient(ellipse at center,transparent 0 31px,#c4c5ce30 32px 33px,transparent 34px 58px)}
html[data-theme="dark"] :is(.hero,.step-card,.card,#resultCard,.step-mascot,.choice,.choice:hover,input,select,textarea,.secondary,.theme-toggle,.lang,.review-box,.refine-panel,.title-kicker,.model-capsule,.step,.step-mascot .ai-label,.ratio-demo,.wizard-actions,.footer,.hero .privacy,.hero .prompt-disclaimer,.poster-contact-fields){border-color:#615e65!important}
html[data-theme="dark"] .choice.active{border-color:#b2afb7!important;box-shadow:inset 3px 0 #b2afb7!important}
html[data-theme="dark"] .ratio-shape{border-color:#aaa5ae!important}
@media(min-width:1500px){body::before{left:-350px}body::after{right:-355px}}
@media(max-width:650px){body::before,body::after{display:none}}
/* Larger line-only background artwork, without coloured discs or washes. */
.hero,html[data-theme="dark"] .hero{background:transparent!important}
.hero::before,.hero::after{display:none!important}
body::before,body::after{display:block!important;width:850px;height:1100px;background:none!important;border:1px solid #979aa62e;border-radius:50%;opacity:1;box-shadow:0 0 0 48px #0000,0 0 0 49px #979aa621,0 0 0 102px #0000,0 0 0 103px #979aa617}
body::before{left:-650px;top:-200px;transform:rotate(-24deg)}
body::after{right:-665px;bottom:-400px;transform:rotate(25deg)}
html[data-theme="dark"] body::before,html[data-theme="dark"] body::after{background:none!important;border-color:#c4c3cc26;opacity:1;box-shadow:0 0 0 48px #0000,0 0 0 49px #c4c3cc1c,0 0 0 102px #0000,0 0 0 103px #c4c3cc13}
@media(max-width:650px){body::before,body::after{display:none!important}}
/* Fine, low-contrast outline accents. */
body::before,body::after{border-width:.5px;border-color:#989ba51c;box-shadow:0 0 0 48px #0000,0 0 0 48.5px #989ba514,0 0 0 102px #0000,0 0 0 102.5px #989ba50e}
html[data-theme="dark"] body::before,html[data-theme="dark"] body::after{border-color:#c4c3cc19;box-shadow:0 0 0 48px #0000,0 0 0 48.5px #c4c3cc12,0 0 0 102px #0000,0 0 0 102.5px #c4c3cc0c}
.hero::after{display:block!important;content:"";position:absolute;width:640px;height:380px;right:-220px;top:-280px;border:.5px solid #9695a32b;border-radius:50%;transform:rotate(22deg);background:none;pointer-events:none;z-index:-1}
html[data-theme="dark"] .hero::after{border-color:#c4bdd630}
@media(max-width:650px){.hero::after{width:390px;height:260px;right:-220px;top:-175px;border-color:#9695a320}}
