*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0a;--surface:#111;--border:#222;--text:#f0f0f0;--text-muted:#aaa;--accent:#bbb;--radius:0px}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;letter-spacing:.01em;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:18px;font-weight:300}.app{flex-direction:column;max-width:830px;height:100%;margin:0 auto;display:flex}.landing{flex:1;justify-content:center;align-items:center;display:flex}.landing-content{text-align:center;width:100%;max-width:830px;padding:0 2rem}.landing-name{letter-spacing:.12em;text-transform:uppercase;color:var(--text);flex-wrap:wrap;justify-content:center;margin-bottom:1rem;font-size:4.2rem;font-weight:200;display:flex}.letter{opacity:0;transition:opacity .35s,transform .35s;display:inline-block;transform:translateY(12px)}.letter.visible{opacity:1;transform:translateY(0)}.landing-body{opacity:0;transition:opacity .6s .1s,transform .6s .1s;transform:translateY(10px)}.landing-body.visible{opacity:1;transform:translateY(0)}.landing-spacer{height:2rem}.landing-text{color:var(--text-muted);opacity:0;margin-bottom:0;font-size:1.5rem;font-weight:300;line-height:1.7;transition:opacity .5s,transform .5s;transform:translateY(8px)}.landing-text.visible{opacity:1;transform:translateY(0)}.landing-divider{background:#333;width:40px;height:1px;margin:1.5rem auto}.landing-hint{color:#666;text-align:center;letter-spacing:.06em;text-transform:uppercase;margin-top:2rem;margin-bottom:.8rem;font-size:.78rem;font-weight:300}.suggestions{grid-template-columns:1fr 1fr;gap:.6rem;max-width:620px;margin:1rem auto 0;display:grid}.suggestion:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;max-width:50%}.suggestion{color:#999;cursor:pointer;letter-spacing:.02em;background:0 0;border:1px solid #2a2a2a;border-radius:100px;padding:.5rem 1.1rem;font-family:inherit;font-size:1.05rem;font-weight:300;transition:border-color .3s,color .3s}.suggestion:hover{color:var(--text);border-color:#666}.chat-area{flex-direction:column;flex:1;padding:2rem 1.5rem 1rem;display:flex;overflow-y:auto}.messages{flex-direction:column;gap:1.5rem;width:100%;display:flex}.msg{display:flex}.msg-user{justify-content:flex-end}.msg-bot{justify-content:flex-start}.msg-content{flex-direction:column;max-width:85%;display:flex}.msg-bubble{word-break:break-word;padding:.6rem 0;font-size:1.05rem;font-weight:300;line-height:1.7}.msg-user .msg-bubble{color:var(--text);text-align:right;opacity:.5;background:0 0;font-size:1rem;font-weight:400}.msg-bot .msg-bubble{color:var(--text);background:0 0}.thinking{color:var(--text-muted);font-style:italic}.input-area{padding:1rem 1.5rem 2rem}.input-wrap{background:0 0;border-bottom:1px solid #2a2a2a;border-radius:0;gap:.5rem;padding:.6rem 0;transition:border-color .3s;display:flex}.input-wrap:focus-within{border-color:#555}.input{color:var(--text);letter-spacing:.01em;background:0 0;border:none;outline:none;flex:1;padding:.4rem 0;font-size:1rem;font-weight:300}.input::placeholder{color:#555;font-weight:300}.landing .input,.landing .input::placeholder{text-align:center}.landing .input-wrap{padding-left:32px}.send{color:#444;cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:color .2s;display:flex}.send:hover:not(:disabled){color:var(--text)}.send:disabled{opacity:.2;cursor:default}.msg-bot .msg-bubble p{margin:.4em 0}.msg-bot .msg-bubble p:first-child{margin-top:0}.msg-bot .msg-bubble p:last-child{margin-bottom:0}.msg-bot .msg-bubble ul,.msg-bot .msg-bubble ol{margin:.4em 0;padding-left:1.2em}.msg-bot .msg-bubble li{margin:.15em 0}.msg-bot .msg-bubble code{background:#ffffff0d;border-radius:2px;padding:.15em .35em;font-size:.88em}.msg-bot .msg-bubble pre{background:#ffffff08;border-radius:2px;margin:.5em 0;padding:.75em 1em;overflow-x:auto}.msg-bot .msg-bubble pre code{background:0 0;padding:0}.msg-bot .msg-bubble strong{font-weight:500}.chat-area::-webkit-scrollbar{width:3px}.chat-area::-webkit-scrollbar-thumb{background:#1a1a1a;border-radius:0}@media (width<=640px){body{font-size:16px}.landing-content{padding:0 1.2rem}.landing-name{letter-spacing:.08em;font-size:2.2rem}.landing-text{font-size:1.1rem}.suggestions{grid-template-columns:1fr;gap:.5rem}.suggestion:last-child:nth-child(odd){max-width:100%}.suggestion{padding:.55rem 1rem;font-size:.92rem}.landing .input-wrap{padding-left:0}.send{width:44px;height:44px}.chat-area{padding:1.5rem 1rem}.input-area{padding:.75rem 1rem 1.5rem}.msg-content{max-width:92%}}.privacy-link{color:#444;letter-spacing:.06em;cursor:pointer;background:0 0;border:none;margin-top:1rem;font-family:inherit;font-size:.75rem;font-weight:300;transition:color .2s}.privacy-link:hover{color:#888}.privacy-overlay{z-index:100;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.privacy-modal{background:#111;border:1px solid #222;width:90%;max-width:500px;padding:2rem;font-weight:300;line-height:1.7;position:relative}.privacy-modal h2{letter-spacing:.06em;text-transform:uppercase;margin-bottom:1rem;font-size:1.1rem;font-weight:400}.privacy-modal h3{letter-spacing:.05em;text-transform:uppercase;color:#777;margin-top:1.2rem;margin-bottom:.4rem;font-size:.85rem;font-weight:400}.privacy-modal p{color:#aaa;margin:.6rem 0;font-size:.9rem}.privacy-close{color:#666;cursor:pointer;background:0 0;border:none;font-size:1.4rem;line-height:1;position:absolute;top:1rem;right:1rem}.privacy-close:hover{color:var(--text)}
