:root{--paper:#f3f0e8;--ink:#26251f;--moss:#78806a;--clay:#c58e73;--wash:#dce2d6}
body{background:var(--paper);color:var(--ink)}
body:has(.minimal-thought){min-height:100svh;display:grid;grid-template-rows:auto 1fr auto}body:has(.minimal-thought) main{min-height:0}body:has(.minimal-thought) .footer{margin-top:0;padding-top:clamp(8px,1.5vh,18px);padding-bottom:clamp(10px,1.8vh,22px)}
.topbar{border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent);height:clamp(64px,9vh,78px);min-height:64px}.brand{font-family:Georgia,serif;letter-spacing:-.04em}.brand-symbol{width:22px}.topnav a{font-size:.82rem;letter-spacing:.04em}.profile-button{width:auto;min-width:52px;border-radius:999px;padding:0 14px}.profile-button span{font-size:.72rem}.footer{margin-top:2rem}
.minimal-thought{min-height:0;padding:clamp(1.35rem,3.6vh,3.25rem) 0 clamp(.75rem,2vh,1.5rem);max-width:1100px;margin:auto}.minimal-topline{display:flex;justify-content:space-between;align-items:center;color:#6b6a60;font-size:.66rem;letter-spacing:.18em}.minimal-topline label{display:flex;align-items:center;gap:.75rem;letter-spacing:.08em}.minimal-topline select{border:0;border-bottom:1px solid #999688;background:transparent;padding:.35rem;color:var(--ink)}
.minimal-intro{position:relative;max-width:800px;margin:clamp(1.4rem,3.8vh,3rem) 0 clamp(1.35rem,3.4vh,2.7rem)}.minimal-intro i{position:absolute;width:clamp(76px,10vh,104px);height:clamp(72px,9.5vh,98px);border:1px solid rgba(197,142,115,.55);border-radius:48% 52% 43% 57%/54% 38% 62% 46%;left:-32px;top:-20px;transform:rotate(-8deg);z-index:-1}.minimal-intro h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.75rem,min(7vw,9.5vh),6.25rem);font-weight:400;line-height:.88;letter-spacing:-.06em;margin:0}.minimal-intro p{max-width:610px;font-size:clamp(.9rem,1.65vh,1.02rem);line-height:1.55;color:#68675f;margin:clamp(.8rem,2vh,1.5rem) 0 0}
.minimal-form{border-top:1px solid var(--ink);border-bottom:1px solid rgba(38,37,31,.25);padding:clamp(.55rem,1.5vh,1rem) 0 clamp(.55rem,1.3vh,.9rem)}.minimal-form textarea{display:block;width:100%;resize:none;border:0;background:transparent;color:var(--ink);font:400 clamp(1.35rem,min(3vw,4vh),2.65rem)/1.2 Georgia,serif;padding:clamp(.55rem,1.4vh,.9rem) 0;min-height:clamp(68px,10vh,94px);outline:none}.minimal-form textarea::placeholder{color:#aaa79d}.minimal-form>div{display:flex;justify-content:space-between;align-items:center;gap:1rem}.minimal-form>div>span{color:#817e73;font-size:.72rem;letter-spacing:.05em}.minimal-submit,.minimal-claim{border:0;border-radius:999px;background:var(--ink);color:var(--paper);padding:clamp(.72rem,1.5vh,.92rem) 1.2rem;cursor:pointer}.minimal-submit b,.minimal-claim span{margin-left:1.6rem}.minimal-submit:disabled{opacity:.55}
.minimal-hush{display:grid;grid-template-columns:auto auto 1fr auto auto 1fr auto auto;gap:.75rem;align-items:center;margin-top:clamp(.75rem,1.8vh,1.5rem);color:#8a877c;font-size:.66rem;text-transform:uppercase;letter-spacing:.14em}.minimal-hush i{height:1px;background:#cbc7bb}.minimal-checking{display:flex;align-items:center;gap:1rem;padding:4rem 0;color:#706e65}.minimal-checking i{width:22px;height:22px;border:1px solid var(--moss);border-top-color:transparent;border-radius:50%;animation:minspin 1s linear infinite}@keyframes minspin{to{transform:rotate(360deg)}}
.minimal-results{padding-top:4rem}.minimal-result-head{display:grid;grid-template-columns:60px 1fr;gap:1.2rem;max-width:850px}.minimal-result-head>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--wash)}.minimal-result-head>div>p:first-child{font:italic 1.05rem Georgia,serif;color:#77746a;margin:0 0 1rem}.minimal-result-head h2{font:400 clamp(2rem,4.6vw,4rem)/1 Georgia,serif;margin:0}.minimal-result-head.none>span{background:#e5cfc3}.minimal-result-head.none>div>p:last-child{max-width:650px;color:#6e6b62;line-height:1.6}
.minimal-group{display:grid;grid-template-columns:minmax(180px,.7fr) 2fr;gap:3rem;border-top:1px solid rgba(38,37,31,.2);padding:2.4rem 0;margin-top:3rem}.minimal-group>div:first-child span{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:#77746a}.minimal-group>div:first-child h3{font:400 1.45rem Georgia,serif}.minimal-match{padding:0 0 1.6rem;margin-bottom:1.6rem;border-bottom:1px solid rgba(38,37,31,.12)}.minimal-match>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--moss)}.minimal-match blockquote{font:400 clamp(1.25rem,2.5vw,2rem)/1.25 Georgia,serif;margin:.8rem 0}.minimal-match h3{font:400 1.65rem Georgia,serif;margin:.8rem 0}.minimal-match p{color:#6a685f;line-height:1.55}.minimal-match a{color:var(--ink);font-size:.78rem}.minimal-scope{max-width:670px;color:#77746a;font-size:.76rem;line-height:1.5}.minimal-actions{display:flex;gap:1rem;align-items:center;margin-top:2rem}.minimal-again{border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;padding:1rem;cursor:pointer}
@media(max-width:700px){.topbar{height:auto;min-height:100px}.minimal-thought{padding-top:clamp(1.2rem,3vh,2rem)}.minimal-topline>span{display:none}.minimal-topline{justify-content:flex-end}.minimal-intro{margin:clamp(1.2rem,3vh,2.2rem) 0 clamp(1.1rem,2.8vh,2rem)}.minimal-intro h1{font-size:clamp(2.7rem,min(14vw,8.5vh),4.5rem)}.minimal-intro p{font-size:clamp(.86rem,1.8vh,.98rem)}.minimal-form>div{align-items:flex-end}.minimal-form>div>span{max-width:45%;font-size:.66rem}.minimal-submit{max-width:52%}.minimal-group{grid-template-columns:1fr;gap:.5rem}.minimal-hush{grid-template-columns:auto auto 1fr}.minimal-hush i:nth-of-type(2),.minimal-hush span:nth-of-type(3),.minimal-hush p:nth-of-type(3){display:none}.minimal-result-head{grid-template-columns:44px 1fr}.topnav a:nth-child(2){display:none}}
@media(max-height:720px){body:has(.minimal-thought) .footer{display:none}.minimal-hush{display:none}.minimal-thought{padding-top:1rem}.minimal-intro{margin:1rem 0}.minimal-intro p{margin-top:.65rem}.minimal-form textarea{min-height:58px}}
@media(max-height:720px) and (min-width:701px){.topbar{height:62px;min-height:62px}}

/* The empty checker is a single, calm composition. Results regain normal scrolling. */
html{max-width:100%;overflow-x:clip}
body:has(.minimal-compose){height:100svh;min-height:100svh;overflow:hidden;grid-template-rows:auto minmax(0,1fr)}
body:has(.minimal-compose) main{height:100%;overflow:hidden}
body:has(.minimal-compose) .footer{display:none}
.minimal-compose{height:100%;width:100%;display:grid;grid-template-rows:auto auto minmax(112px,1fr) auto;align-content:stretch;padding:clamp(.8rem,2.2vh,1.45rem) 0 clamp(.7rem,1.7vh,1.15rem)}
.minimal-compose .minimal-intro{width:100%;max-width:none;margin:clamp(.75rem,2.1vh,1.45rem) 0 clamp(.7rem,1.8vh,1.25rem)}
.minimal-compose .minimal-intro h1{font-size:clamp(2.65rem,min(4.5vw,7.2vh),4.8rem);line-height:.91;max-width:none;white-space:nowrap}
.minimal-compose .minimal-intro p{margin-top:clamp(.55rem,1.25vh,.9rem);font-size:clamp(.78rem,1.35vh,.92rem);line-height:1.45;max-width:none;white-space:nowrap}
.minimal-compose .minimal-intro i{opacity:.62}
.minimal-compose .minimal-form{min-height:0;display:grid;grid-template-rows:minmax(62px,1fr) auto}
.minimal-compose .minimal-form textarea{height:100%;min-height:0;max-height:none;padding:clamp(.55rem,1.25vh,.85rem) .2rem;font-family:"Bradley Hand","Noteworthy","Segoe Print","Comic Sans MS",cursive;font-size:clamp(1.35rem,min(2.8vw,3.2vh),2.25rem);font-weight:400;line-height:1.65;letter-spacing:.012em;color:#34445b;caret-color:#4f58a8;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(1.65em - 1px),rgba(86,102,126,.16) calc(1.65em - 1px),rgba(86,102,126,.16) 1.65em);background-position:0 clamp(.55rem,1.25vh,.85rem);background-size:100% 1.65em}
.minimal-compose .minimal-form textarea::placeholder{font-family:Georgia,'Times New Roman',serif;font-style:italic;letter-spacing:-.02em;color:#aaa79d}
.minimal-compose .minimal-form textarea:focus{color:#2f466b;outline:0}
.minimal-compose .minimal-hush{margin-top:clamp(.6rem,1.4vh,1rem)}

@media(max-width:700px){
 body:has(.minimal-compose) .topbar{min-height:88px;padding-top:max(12px,env(safe-area-inset-top));row-gap:8px}
 body:has(.minimal-compose) .brand{font-size:24px}
 body:has(.minimal-compose) .brand-symbol{width:25px;height:25px}
 body:has(.minimal-compose) .header-tools{gap:8px}
 body:has(.minimal-compose) .sound-toggle{width:38px;height:38px}
 body:has(.minimal-compose) .profile-button{height:38px;min-width:62px;padding:0 12px}
 body:has(.minimal-compose) .topnav{height:35px;gap:0!important;justify-content:space-between!important}
 body:has(.minimal-compose) .topnav>a{font-size:10px!important;padding-bottom:7px}
 .minimal-compose{grid-template-rows:auto auto minmax(104px,1fr) auto;padding:10px 0 9px}
 .minimal-compose .minimal-topline{min-height:28px}
 .minimal-compose .minimal-topline label{font-size:0;gap:0}
 .minimal-compose .minimal-topline select{font-size:11px;letter-spacing:.08em;border:1px solid rgba(38,37,31,.14);border-radius:999px;padding:6px 24px 6px 10px}
 .minimal-compose .minimal-intro{margin:8px 0 10px}
 .minimal-compose .minimal-intro i{display:none}
 .minimal-compose .minimal-intro h1{font-size:clamp(2.65rem,12vw,3.35rem);line-height:.88;letter-spacing:-.055em;max-width:370px;white-space:normal}
 .minimal-compose .minimal-intro p{font-size:clamp(.76rem,3.25vw,.87rem);line-height:1.42;margin-top:10px;max-width:355px;white-space:normal}
 .minimal-compose .minimal-form{grid-template-rows:minmax(62px,1fr) auto;padding:5px 0 8px}
 .minimal-compose .minimal-form textarea{font-size:clamp(1.25rem,5.8vw,1.6rem);line-height:1.65;padding:7px 2px 5px;background-position:0 7px;background-size:100% 1.65em}
 .minimal-compose .minimal-form>div{align-items:center;gap:12px}
 .minimal-compose .minimal-form>div>span{max-width:44%;font-size:.56rem;line-height:1.35;letter-spacing:.035em}
 .minimal-compose .minimal-submit{max-width:56%;padding:10px 15px;font-size:.76rem;line-height:1.15;white-space:nowrap}
 .minimal-compose .minimal-submit b{margin-left:.75rem}
 .minimal-compose .minimal-hush{grid-template-columns:auto auto 1fr auto auto;margin-top:8px;gap:8px;font-size:.55rem;letter-spacing:.12em}
 .minimal-compose .minimal-hush span:nth-of-type(3),.minimal-compose .minimal-hush p:nth-of-type(3),.minimal-compose .minimal-hush i:nth-of-type(2){display:none}
}

@media(max-width:380px){
 body:has(.minimal-compose) .topbar{min-height:82px}
 .minimal-compose{padding-top:7px}
 .minimal-compose .minimal-intro h1{font-size:2.45rem}
 .minimal-compose .minimal-intro p{font-size:.73rem}
 .minimal-compose .minimal-hush{display:none}
}

@media(max-height:680px){
 .minimal-compose .minimal-intro p{display:none}
 .minimal-compose .minimal-hush{display:none}
 .minimal-compose{padding-top:.55rem}
}
