:root{color:#171714;font-synthesis:none;background:#f3f0e8;font-family:Inter,Avenir,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,textarea{font:inherit}button{color:inherit}.app{--hot:#e94224;--wash:#f3f0e8;background:radial-gradient(circle at 50% 65%, color-mix(in srgb,var(--hot) 8%,var(--wash)) 0,var(--wash) 48%);grid-template-rows:auto 1fr auto;min-height:100vh;transition:background .35s;display:grid}.heat-1{--hot:#59695b;--wash:#eef1ea}.heat-2{--hot:#c66f22;--wash:#f4eee4}.heat-3{--hot:#e94224;--wash:#f3f0e8}.heat-4{--hot:#d72b25;--wash:#f4eae5}.heat-5{--hot:#bb151c;--wash:#f3e4e2}header{border-bottom:1px solid #cbc7bc;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(20px,5vw,64px);display:flex}.brand{letter-spacing:-1px;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;font-size:21px;font-weight:800;display:flex}.brand img{object-fit:contain;width:29px;height:29px}.brand span{color:var(--hot)}.new{cursor:pointer;background:0 0;border:1px solid #aaa69d;border-radius:99px;padding:8px 14px;font:500 12px DM Mono,monospace}.new:hover{border-color:#171714}.new span{color:var(--hot);font-size:16px}main{width:min(780px,100% - 40px);margin:0 auto}.welcome{align-items:end;padding:38px 0 20px;display:grid}.hero{text-align:center}.eyebrow,.label,.level-head span{letter-spacing:.16em;font:500 11px DM Mono,monospace}.eyebrow{color:var(--hot);margin:0 0 14px}h1{letter-spacing:-.055em;margin:8px 0 0;font-size:clamp(32px,5vw,48px);line-height:1}h1 span{color:var(--hot)}.hero-logo{object-fit:contain;width:78px;height:78px;filter:drop-shadow(0 8px 16px color-mix(in srgb,var(--hot) 16%,transparent))}.intro{color:#5c5952;margin:14px auto 0;font-size:15px;line-height:1.5}.chat{min-height:0;padding:32px 0 20px}.messages{flex-direction:column;gap:28px;display:flex}.message{max-width:88%;line-height:1.65}.message.user{background:#dedad0;border-radius:16px 16px 2px;margin-left:auto;padding:16px 19px}.message.assistant{border-left:3px solid var(--hot);padding-left:20px}.message p{white-space:pre-wrap;margin:0}.message .label{color:var(--hot);margin-bottom:9px}.user .label{color:#77736a}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p{white-space:normal;margin:0 0 12px}.markdown h1,.markdown h2,.markdown h3{letter-spacing:-.02em;margin:22px 0 8px;font-size:20px}.markdown code{background:#dedad0;padding:2px 4px;font-family:DM Mono;font-size:.9em}.markdown pre{color:#eee;background:#222;padding:14px;overflow-x:auto}.markdown li{margin:5px 0}.regenerate{color:#67635b;cursor:pointer;background:0 0;border:1px solid #aaa69d;border-radius:99px;margin-top:14px;padding:7px 11px;font:10px DM Mono,monospace}.regenerate:hover{border-color:var(--hot);color:var(--hot)}.regenerate:disabled{opacity:.4;cursor:not-allowed}.thinking{gap:5px;padding:8px 0;display:flex}.thinking i{background:var(--hot);border-radius:50%;width:6px;height:6px;animation:1s infinite alternate pulse}.thinking i:nth-child(2){animation-delay:.2s}.thinking i:nth-child(3){animation-delay:.4s}@keyframes pulse{to{opacity:.2;transform:translateY(-3px)}}footer{background:color-mix(in srgb,var(--wash) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:14px max(20px, calc((100vw - 780px)/2)) max(10px,env(safe-area-inset-bottom));border-top:1px solid #cbc7bc;position:sticky;bottom:0}.app:has(.welcome) footer{border-top:0;width:min(820px,100%);margin:0 auto;padding:12px 20px min(16vh,150px);position:static}.controls{grid-template-columns:120px 1fr auto;align-items:center;gap:14px;margin-bottom:11px;display:grid}.level-head{flex-direction:column;gap:3px;display:flex}.level-head strong{color:var(--hot);font-size:13px}.level-control{grid-template-columns:repeat(5,1fr);display:grid;position:relative}.level-control:before{content:"";background:#bbb6aa;height:2px;position:absolute;top:13px;left:10%;right:10%}.level-control button{z-index:1;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;padding:0;display:flex}.level-control button span{background:#d8d4c9;border-radius:50%;place-items:center;width:27px;height:27px;font:11px DM Mono;transition:all .2s;display:grid}.level-control button.active span{color:#fff;background:var(--hot);box-shadow:0 0 0 4px color-mix(in srgb,var(--hot) 18%,transparent);transform:scale(1.12)}.level-control small{font:9px DM Mono}.detector{cursor:pointer;border-left:1px solid #cbc7bc;align-items:center;gap:9px;padding-left:16px;display:flex}.detector input{opacity:0;position:absolute}.switch{background:#aaa69d;border-radius:20px;flex:none;width:33px;height:19px;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;transition:all .2s;position:absolute;top:3px;left:3px}.detector input:checked+.switch{background:var(--hot)}.detector input:checked+.switch:after{left:17px}.detector b,.detector small{display:block}.detector b{font-size:11px}.detector small{color:#77736a;margin-top:2px;font-size:9px}form{min-height:112px;box-shadow:5px 5px 0 var(--hot);background:#faf8f2;border:2px solid #222;border-radius:10px;align-items:flex-end;display:flex}textarea{resize:none;background:0 0;border:0;outline:none;flex:1;height:104px;min-height:104px;max-height:220px;padding:22px 18px;line-height:22px;overflow-y:hidden}form button{background:var(--hot);color:#fff;cursor:pointer;border:0;border-radius:7px;width:54px;height:54px;margin:9px;font-size:25px;transition:all .15s}form button:hover:not(:disabled){transform:translateY(-1px)}form button:disabled{opacity:.35;cursor:not-allowed}.fineprint{text-align:center;color:#858178;margin:10px 0 0;font:9px DM Mono}.fineprint button{color:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 0 0 7px;text-decoration:underline}.fineprint button:hover{color:var(--hot)}.error{color:#a21c18;margin-top:9px;font-size:12px}.error button{color:inherit;cursor:pointer;background:0 0;border:0;text-decoration:underline}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#171714ad;place-items:center;padding:20px;animation:.18s ease-out fade-in;display:grid;position:fixed;inset:0}.about-modal{width:min(680px,100%);max-height:min(780px,100vh - 40px);box-shadow:8px 8px 0 var(--hot);background:#f8f5ed;border:2px solid #171714;padding:32px;position:relative;overflow-y:auto}.modal-close{z-index:2;cursor:pointer;background:#f8f5ed;border:1px solid #aaa69d;border-radius:50%;width:36px;height:36px;font-size:24px;line-height:1;position:absolute;top:12px;right:14px}.modal-close:hover{border-color:var(--hot);color:var(--hot)}.about-top{grid-template-columns:150px 1fr;align-items:end;gap:26px;margin-bottom:24px;display:grid}.about-top>img{object-fit:cover;object-position:center top;filter:grayscale();border-radius:4px;width:150px;height:150px}.about-top h2{letter-spacing:-.045em;margin:8px 0 4px;font-size:32px;line-height:1.05}.about-copy{font-size:14px;line-height:1.65}.about-copy a{color:var(--hot);font-weight:700}.about-copy aside{border-left:3px solid var(--hot);background:color-mix(in srgb,var(--hot) 7%,white);margin-top:18px;padding:16px}.about-copy aside strong{margin-bottom:4px;display:block}.support{border-top:1px solid #cbc7bc;align-items:center;gap:16px;margin-top:22px;padding-top:22px;display:flex}.support img{image-rendering:auto;width:80px;height:80px}.support strong,.support p{display:block}.support p{color:#6f6b63;margin:4px 0 10px;font-size:12px}.support a{background:var(--hot);color:#fff;border-radius:4px;padding:8px 12px;font:10px DM Mono,monospace;text-decoration:none;display:inline-block}@keyframes fade-in{0%{opacity:0}}@media (width<=680px){header{height:58px;padding:0 18px}.brand img{width:25px;height:25px}.new{font-size:0}.new span{font-size:18px}.welcome{padding-top:26px}.controls{grid-template-columns:1fr auto;gap:8px}.level-head,.level-control small{display:none}.detector{padding-left:10px}.detector span:last-child{display:none}footer{padding:10px 14px max(10px,env(safe-area-inset-bottom))}.app:has(.welcome) footer{padding:10px 14px min(10vh,80px)}.chat{padding-top:24px}.message{max-width:94%}h1{font-size:34px}.intro{font-size:14px}.level-control{min-width:205px}.hero-logo{width:60px;height:60px}.about-modal{padding:22px 18px}.about-top{grid-template-columns:95px 1fr;align-items:end;gap:14px}.about-top>img{width:95px;height:112px}.about-top h2{font-size:24px}.support img{width:68px;height:68px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
