:root{--ink:#12162d;--paper:#f4f0e8;--mist:#b9b5e8;--dream:#5058a8;--wake:#d96c63;--sage:#8ca69b;--line:color-mix(in srgb,var(--ink) 20%,transparent);--measure:72ch;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Inter,Avenir,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 92% 4%,#b9b5e880,transparent 28rem),var(--paper);margin:0;line-height:1.65}a{color:var(--dream);text-underline-offset:.2em}a:hover{text-decoration-thickness:.14em}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--wake);outline-offset:3px}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:2rem;padding:1rem clamp(1rem,4vw,4rem);display:flex}.brand{color:var(--ink);font:700 1.2rem Georgia,serif;text-decoration:none}.nav{flex-wrap:wrap;gap:1.25rem;display:flex}.nav a{color:var(--ink)}main{min-height:70vh}.hero,.page-head,.section,.tool{width:min(100% - 2rem,1120px);margin-inline:auto}.hero{grid-template-columns:1.2fr .8fr;align-items:center;gap:clamp(2rem,7vw,7rem);min-height:68vh;padding-block:5rem;display:grid}.hero h1,.page-head h1{letter-spacing:-.045em;margin:.2em 0;font:500 clamp(2.8rem,7vw,6.7rem)/.94 Georgia,serif}.hero p,.page-head>p{max-width:58ch;font-size:clamp(1.1rem,2vw,1.35rem)}.orbit{aspect-ratio:1;border:1px solid var(--dream);border-radius:50%;place-items:center;display:grid;position:relative}.orbit:before,.orbit:after{content:"";border:1px solid var(--mist);border-radius:50%;position:absolute;inset:15%;transform:rotate(37deg)}.orbit:after{border-color:var(--wake);inset:32%}.moon{aspect-ratio:1;background:var(--paper);width:31%;box-shadow:-22px 12px 0 1px var(--dream);border-radius:50%;transform:translate(12px,-5px)}.page-head{border-bottom:1px solid var(--line);padding-block:4rem 2rem}.page-head h1{max-width:18ch;font-size:clamp(2.4rem,6vw,5rem)}.crumbs{font-size:.9rem}.section{padding-block:3rem}.prose{max-width:var(--measure)}h2{margin-top:0;font:500 clamp(1.8rem,3vw,2.8rem)/1.1 Georgia,serif}h3{font:600 1.2rem Georgia,serif}.intro{font-size:1.2rem}.contexts{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin:2rem 0;display:grid}.contexts>div{background:var(--paper);padding:1.4rem}.questions{border-left:5px solid var(--wake);background:#fff9;padding:1.4rem 1.8rem}.limit{border:1px solid var(--sage);max-width:var(--measure);padding:1rem 1.4rem}.source-list{font-size:.95rem}.tool{border:2px solid var(--ink);box-shadow:10px 10px 0 var(--mist);background:#fff9;margin-block:2rem 5rem;padding:clamp(1.2rem,4vw,3rem)}label{margin-top:1rem;font-weight:650;display:block}input,textarea,select{border:1px solid var(--ink);width:100%;color:var(--ink);font:inherit;background:#fff;padding:.8rem}textarea{min-height:10rem}button,.button{background:var(--ink);color:#fff;cursor:pointer;border:0;margin-top:1rem;padding:.8rem 1.1rem;font:650 1rem inherit;text-decoration:none;display:inline-block}button.secondary{color:var(--ink);border:1px solid var(--ink);background:0 0}.result{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}.index-list{columns:3;column-gap:3rem}.index-list li{break-inside:avoid;margin:.45rem 0}.emotion-row{flex-wrap:wrap;gap:.5rem;display:flex}.emotion-row button{aspect-ratio:1;border-radius:50%;width:5rem;padding:.5rem}.quiet{color:#454967;font-size:.92rem}.warning{background:#fff3d8;border-left:5px solid #b87813;padding:1rem 1.4rem}.skip{position:absolute;left:-999px}.skip:focus{z-index:5;background:#fff;padding:.5rem;top:1rem;left:1rem}footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:2rem;padding:3rem clamp(1rem,4vw,4rem);display:flex}@media (width<=760px){.hero{grid-template-columns:1fr;min-height:auto;padding-block:3rem}.orbit{max-width:18rem;margin:auto}.contexts{grid-template-columns:1fr}.index-list{columns:1}.nav{font-size:.9rem}.hero h1{font-size:3.2rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header,footer,.skip,button,.quiet,aside{display:none!important}body{color:#000;background:#fff;font:12pt/1.5 Georgia,serif}.tool,.section,.page-head{width:100%;box-shadow:none;border:0;margin:0;padding:1rem 0}input,textarea{border:0}a{color:#000;text-decoration:none}}
