@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap";:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth}:root{--background:#f4f6f1;--text:#17221d;--accent:#a83b2f;--secondary:#b9a7e8;--divider:#cbd4cc;--error:#9e2f3d;--display:"Playfair Display", Georgia, serif;--body:"Inter", Arial, sans-serif}*{box-sizing:border-box}body{background-color:var(--background);background-image:radial-gradient(circle at 15% 18%, #b9a7e852, transparent 27rem), radial-gradient(circle at 86% 30%, #a83b2f1f, transparent 25rem), radial-gradient(var(--divider) .7px, transparent .7px);min-width:320px;color:var(--text);font-family:var(--body);background-position:0 0,0 0,0 0;background-size:auto,auto,24px 24px;margin:0}button,textarea{font:inherit}button{color:inherit;cursor:pointer}.app-shell{width:min(1320px,100%);min-height:100vh;margin:0 auto;padding:0 clamp(20px,6vw,88px)}.topbar{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;height:86px;display:flex}.brand{color:var(--text);letter-spacing:-.03em;align-items:center;gap:10px;font-size:16px;font-weight:600;text-decoration:none;display:flex}.brand-mark{color:var(--background);place-items:center;width:32px;height:32px;font-size:20px;font-weight:700;display:grid}.brand-accent,.intro h1 em,.empty-note h2 em,.clinic-card h2 em{color:var(--accent);font-style:italic}.nav-meta{color:var(--text);letter-spacing:.03em;align-items:center;gap:18px;font-size:11px;display:flex}.info-button,.modal-close{border:1px solid var(--text);background:0 0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.info-button svg{fill:none;width:18px;height:18px;stroke:var(--text);stroke-linecap:round;stroke-width:1.6px}.intro{border-bottom:1px solid var(--divider);flex-direction:column;justify-content:flex-start;padding:clamp(4.5rem,9vh,6.5rem) 0 clamp(7rem,12vh,10rem);display:flex;position:relative}.eyebrow,.section-label,.modal-kicker{color:var(--text);letter-spacing:.03em;font-size:clamp(.72rem,.68rem + .12vw,.82rem);font-weight:600}.intro h1{max-width:900px;font:600 clamp(48px, 8vw, 108px)/.98 var(--display);letter-spacing:-.055em;margin:22px 0}.intro-copy{max-width:470px;color:var(--text);margin:0;font-size:clamp(1rem,.94rem + .3vw,1.18rem);line-height:1.65}.intro-stamp{border:1px solid var(--text);background:var(--secondary);width:auto;min-width:8.5rem;height:3.25rem;box-shadow:4px 4px 0 var(--text);font:500 1rem var(--display);letter-spacing:0;text-transform:lowercase;border-radius:.65rem;justify-content:center;align-items:center;gap:.45rem;padding:.7rem 1rem;display:flex;position:absolute;bottom:clamp(3rem,7vh,5rem);right:7%;transform:rotate(3deg)}.intro-stamp strong{color:var(--accent);font:1.35rem var(--display);line-height:1}.clinic-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,76px);display:grid}.input-column,.result-column{min-width:0;padding:42px 0 64px}.result-column{border-left:1px solid var(--divider);padding-left:clamp(28px,5vw,72px)}.thought-form{border:1px solid var(--divider);background:var(--background);border-radius:16px;margin-top:36px;padding:clamp(20px,3vw,30px)}.thought-form label{margin-bottom:10px;font-size:clamp(1rem,.92rem + .3vw,1.22rem);font-weight:600;display:block}.thought-form .answer-label{margin-top:22px}.thought-form textarea,.challenge-card textarea{resize:vertical;border:1px solid var(--divider);background:var(--background);width:100%;min-height:132px;color:var(--text);border-radius:10px;outline:none;padding:16px;font-size:clamp(.95rem,.9rem + .18vw,1.08rem);line-height:1.55;display:block}.thought-form textarea:focus,.challenge-card textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--secondary)}.thought-form textarea::placeholder,.challenge-card textarea::placeholder{color:var(--text);opacity:.62}.form-footer{justify-content:space-between;align-items:center;gap:16px;margin-top:14px;display:flex}.diagnose-control{display:inline-flex}.helper{color:var(--text);opacity:.72;font-size:clamp(.68rem,.64rem + .1vw,.78rem)}.diagnose-button,.next-button{border:1px solid var(--text);background:var(--text);min-height:44px;color:var(--background);border-radius:999px;padding:12px 18px;font-size:11px;font-weight:700}.diagnose-button:hover:not(:disabled){background:var(--accent)}.diagnose-button:disabled,.next-button:disabled{cursor:not-allowed;opacity:.5}.diagnose-button.needs-key{opacity:.58}.diagnose-button.needs-key:hover{background:var(--accent);opacity:1}.card-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.card-actions .next-button{margin-top:0}.back-button{border:1px solid var(--divider);color:var(--text);background:0 0;border-radius:999px;padding:10px 13px;font-size:.72rem;font-weight:600}.back-button:hover{border-color:var(--text);background:var(--secondary)}.examples{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.examples .helper{width:100%}.examples button{border:1px solid var(--divider);background:var(--background);color:var(--text);text-align:left;border-radius:999px;padding:8px 12px;font-size:clamp(.72rem,.68rem + .1vw,.84rem)}.examples button:hover{border-color:var(--accent)}.empty-note{flex-direction:column;justify-content:center;align-items:flex-start;min-height:390px;display:flex}.note-orbit{border:1px solid var(--text);background:var(--secondary);width:60px;height:60px;box-shadow:4px 4px 0 var(--text);font:28px var(--display);border-radius:50%;place-items:center;margin-bottom:22px;display:grid}.empty-note h2{font:500 32px/1.08 var(--display);margin:0 0 16px}.empty-note p{max-width:310px;margin:0;font-size:14px;line-height:1.6}.cards-stack{margin-top:36px;animation:.55s ease-out both card-reveal}.clinic-card{border:1px solid var(--text);background:var(--background);border-radius:16px;padding:24px}.diagnosis-card{border-top:5px solid var(--accent);animation:.55s ease-out both card-reveal}.repair-card{border-left:5px solid var(--secondary)}.challenge-card{border-left:5px solid var(--accent)}.note-topline,.card-kicker{color:var(--text);letter-spacing:.04em;justify-content:space-between;font-size:10px;font-weight:700;display:flex}.pill{border-bottom:1px solid var(--text);padding-bottom:4px}.card-kicker{justify-content:flex-start}.clinic-card h2{font:500 clamp(28px, 3.4vw, 42px)/1.05 var(--display);letter-spacing:-.04em;margin:32px 0 14px}.clinic-card>p,.challenge-question{margin:0;font-size:clamp(.95rem,.9rem + .18vw,1.08rem);line-height:1.6}.signal{border-top:1px solid var(--divider);gap:12px;margin:22px 0;padding-top:16px;display:flex}.signal>span{background:var(--accent);width:25px;height:25px;color:var(--background);border-radius:50%;flex:0 0 25px;place-items:center;font-weight:700;display:grid}.signal strong,.signal small{display:block}.signal strong{font-size:11px}.signal small{margin-top:5px;font-size:12px;line-height:1.45}.diagnosis-card .next-button{border-color:var(--text);color:var(--text);background:0 0}.diagnosis-card .next-button:hover{background:var(--text);color:var(--background)}.repair-steps{border-top:1px solid var(--text);margin:22px 0}.repair-step{border-bottom:1px solid var(--text);gap:14px;padding:12px 0;display:flex}.repair-step span{font-size:11px;font-weight:700}.repair-step strong{font-size:14px}.challenge-card form{margin-top:20px}.challenge-card .next-button{margin-top:0}.challenge-feedback{border-left:3px solid var(--accent);background:var(--background);gap:5px;margin-top:18px;padding:14px;font-size:13px;line-height:1.45;display:grid}.challenge-feedback strong{font-size:11px}.request-error{color:var(--error);margin:12px 0 0;font-size:12px;line-height:1.4}.saved-toast{z-index:20;border:1px solid var(--text);background:var(--text);max-width:min(360px,100vw - 48px);color:var(--background);box-shadow:4px 4px 0 var(--accent);border-radius:10px;padding:13px 16px;font-size:.82rem;line-height:1.4;animation:.25s ease-out both toast-in;position:fixed;bottom:24px;right:24px}.footer{border-top:1px solid var(--divider);grid-template-columns:1.2fr 1fr auto;align-items:center;gap:28px;margin-top:12px;padding:30px 0 34px;display:grid;position:relative}.footer:before{background:var(--accent);content:"";border-radius:99px;width:82px;height:3px;margin-top:-64px;position:absolute}.footer-brand{align-items:center;gap:12px;display:flex}.footer-mark{border:1px solid var(--text);background:var(--secondary);width:34px;height:34px;box-shadow:3px 3px 0 var(--text);font:700 23px var(--display);border-radius:11px;place-items:center;display:grid;transform:rotate(-6deg)}.footer-brand strong,.footer-brand small,.footer-prompt span,.footer-prompt strong,.footer-meta span,.footer-meta small{display:block}.footer-brand strong{font:600 16px var(--display)}.footer-brand strong span{color:var(--accent)}.footer-brand small,.footer-prompt span,.footer-meta small{margin-top:3px;font-size:11px}.footer-prompt{border-left:1px solid var(--divider);padding-left:28px}.footer-prompt strong{font:600 21px var(--display);margin-top:4px}.footer-meta{text-align:right;justify-self:end}.footer-meta span{font-size:11px;font-weight:600}.footer-meta small{color:var(--text);opacity:.72}.footer-links{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}.footer-links a,.author-links a{color:var(--text);text-underline-offset:3px;font-size:11px}.modal-backdrop{z-index:10;background:var(--text);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.info-modal{border:1px solid var(--text);background:var(--background);width:min(480px,100%);box-shadow:8px 8px 0 var(--accent);border-radius:16px;padding:32px;position:relative}.modal-close{border:0;width:30px;height:30px;font-size:22px;line-height:1;position:absolute;top:18px;right:18px}.modal-kicker{color:var(--accent);margin:0 0 18px}.info-modal h2{font:500 31px/1.05 var(--display);margin:0 38px 16px 0}.info-modal p:not(.modal-kicker){margin:12px 0;font-size:clamp(1rem,.92rem + .25vw,1.12rem);line-height:1.6}.key-form{border-top:1px solid var(--divider);margin-top:24px;padding-top:20px}.key-form label{margin-bottom:8px;font-size:.86rem;font-weight:600;display:block}.key-form input{border:1px solid var(--divider);background:var(--background);width:100%;color:var(--text);border-radius:8px;padding:11px 12px;font-size:.9rem}.key-form input:focus{border-color:var(--accent);outline:2px solid var(--secondary);outline-offset:2px}.key-actions{gap:8px;margin-top:10px;display:flex}.key-save,.key-clear{border:1px solid var(--text);border-radius:999px;padding:9px 13px;font-size:.75rem;font-weight:700}.key-save{background:var(--text);color:var(--background)}.key-clear{color:var(--text);background:0 0}.author-links{border-top:1px solid var(--divider);flex-wrap:wrap;gap:10px 14px;margin-top:24px;padding-top:16px;display:flex}.author-links span{width:100%;font-size:.78rem;font-weight:600}.intro>.eyebrow,.intro>h1,.intro>.intro-copy{animation:.7s cubic-bezier(.2,.8,.2,1) both hero-arrive}.intro>h1{animation-delay:80ms}.intro>.intro-copy{animation-delay:.16s}.info-button:focus-visible,.modal-close:focus-visible,.intro-stamp:focus-visible,.diagnose-button:focus-visible,.next-button:focus-visible,.examples button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}textarea:focus-visible{outline:none}@keyframes card-reveal{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes hero-arrive{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=780px){.topbar{height:72px}.nav-meta span{display:none}.intro{padding:4.5rem 0 5rem}.intro h1{max-width:8em;font-size:clamp(47px,14vw,72px)}.intro-stamp{width:fit-content;min-width:8rem;height:clamp(2.9rem,12vw,3.25rem);margin:2rem 0 0 auto;padding-inline:clamp(.8rem,4vw,1rem);font-size:clamp(.62rem,2.2vw,.72rem);position:relative;bottom:auto;right:auto;transform:rotate(2deg)}.intro-stamp strong{font-size:clamp(1.15rem,5vw,1.35rem)}.clinic-layout{display:block}.input-column,.result-column{padding:30px 0 38px}.result-column{border-top:1px solid var(--divider);border-left:0}.thought-form{margin-top:30px}.form-footer{align-items:flex-end}.examples button{border-radius:8px;width:100%}.empty-note{min-height:300px}.footer{grid-template-columns:1fr;gap:22px;margin-top:0;padding:28px 0 30px}.footer-prompt{border-left:0;padding:0}.footer-meta{text-align:left;justify-self:start}.footer-links{justify-content:flex-start}.card-actions{align-items:stretch}.card-actions .back-button,.card-actions .next-button{flex:100%}.saved-toast{max-width:calc(100vw - 32px);bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){.intro>.eyebrow,.intro>h1,.intro>.intro-copy,.cards-stack,.saved-toast{animation:none}}
