:root{--paper: #FFFDF8;--ink: #2E2438;--ink-soft: #5C5168;--amber: #E89B3C;--gold: #F6C453;--teal: #3C8C7E;--lilac: #B9A7D9;--lilac-wash: #F3EFFA;--amber-wash: #FBF1E1;--teal-wash: #E9F3F0;--line: #E9E2D8;--warn: #C15B4E;--display: "Fraunces", Georgia, serif;--body: "Karla", system-ui, sans-serif;--gap: 16px;--pad: 24px;--radius: 18px;--radius-sm: 12px;--ease: cubic-bezier(.22, .61, .36, 1)}*{margin:0;padding:0;box-sizing:border-box}html,body{min-height:100%;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--display);font-weight:420;line-height:1.2}h1{font-size:30px}h2{font-size:25px}h3{font-size:19px}p{color:var(--ink-soft)}.screen{max-width:620px;margin:0 auto;padding:40px var(--pad) 120px;animation:rise .45s var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--amber);margin-bottom:12px}.hint{font-size:15px;margin-top:6px}.btn{font-family:var(--body);font-size:16px;font-weight:500;padding:13px 22px;border-radius:99px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;transition:transform .18s var(--ease),box-shadow .18s var(--ease)}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 14px #2e243812}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.btn-primary{background:var(--amber);border-color:var(--amber);color:#fff}.btn-primary:hover{box-shadow:0 6px 18px #e89b3c52}.btn-quiet{background:transparent;border-color:transparent;color:var(--ink-soft)}.btn-teal{background:var(--teal);border-color:var(--teal);color:#fff}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}textarea,input[type=text]{width:100%;font-family:var(--body);font-size:18px;line-height:1.5;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;resize:none}textarea:focus,input:focus{outline:none;border-color:var(--amber)}textarea::placeholder{color:#b5aebc}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}.reassure{font-family:var(--display);font-style:italic;font-size:18px;color:var(--ink);background:var(--amber-wash);border-radius:var(--radius-sm);padding:14px 18px;margin-top:18px;animation:rise .5s var(--ease) both}.reassure.calm{background:var(--teal-wash)}.reassure.soft{background:var(--lilac-wash)}.flame{width:14px;height:14px;border-radius:50%;background:var(--amber);box-shadow:0 0 24px 6px #e89b3c73;animation:breathe 5s ease-in-out infinite}@keyframes breathe{0%,to{box-shadow:0 0 24px 6px #e89b3c73}50%{box-shadow:0 0 38px 12px #e89b3c99}}.tabbar{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:4px;padding:10px 8px calc(10px + env(safe-area-inset-bottom));background:#fffdf8ed;backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:20}.tabbar a{flex:1;max-width:130px;text-align:center;text-decoration:none;font-size:12px;font-weight:500;color:var(--ink-soft);padding:8px 4px;border-radius:var(--radius-sm)}.tabbar a.active{color:var(--amber);background:var(--amber-wash);font-weight:700}.tabbar a:focus-visible{outline:2px solid var(--gold);outline-offset:1px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
