*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #050505;--accent: #c70039;--accent-bright: #ff4060;--text-primary: #ffffff;--text-secondary: #e8e8e8;--text-muted: #888;--input-bg: #141414;--input-border: #2a2a2a;--bubble-bot-bg: #1c1c1c;--bubble-user-bg: #c70039;--glass: rgba(20, 20, 20, .7);--font-display: "Frank Ruhl Libre", Georgia, serif;--font-body: "Lora", Georgia, serif;--font-ui: system-ui, -apple-system, sans-serif}html,body{height:100%;background:var(--bg);color:var(--text-primary);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}.hero{min-height:100svh;min-height:100vh;background:var(--bg);display:flex;flex-direction:column;position:relative;overflow-x:hidden}.hero-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;padding:16px 24px;background:linear-gradient(to bottom,rgba(5,5,5,.95) 60%,transparent)}.hero-logo img{display:block;filter:brightness(0) invert(1);transition:opacity .2s}.hero-logo:hover img{opacity:.7}.hero-main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 20px 140px;max-width:680px;width:100%;margin:0 auto}.chat-interface{width:100%;display:flex;flex-direction:column;gap:20px;margin-top:28px}.chat-greeting{text-align:center;transition:opacity .3s cubic-bezier(.23,1,.32,1),transform .3s cubic-bezier(.23,1,.32,1),max-height .4s ease-out}.chat-greeting.hidden{opacity:0;pointer-events:none;transform:translateY(-8px);max-height:0;overflow:hidden;margin:0}.chat-greeting.visible{opacity:1;max-height:200px}.greeting-name{font-family:var(--font-display);font-size:clamp(2rem,5vw,3rem);font-weight:300;color:var(--text-primary);line-height:1.1;letter-spacing:-.02em}.greeting-name .accent{color:var(--accent);font-weight:700}.greeting-sub{font-family:var(--font-display);font-size:clamp(1rem,2.5vw,1.4rem);color:var(--text-secondary);margin-top:6px;font-weight:300}.greeting-cta{font-size:.95rem;color:var(--text-muted);margin-top:10px;letter-spacing:.02em}.chat-thread{display:flex;flex-direction:column;gap:12px;max-height:45vh;overflow-y:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:#333 transparent}.chat-thread::-webkit-scrollbar{width:4px}.chat-thread::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.chat-bubble{max-width:88%;padding:12px 16px;border-radius:16px;font-family:var(--font-body);font-size:.95rem;line-height:1.6;word-break:break-word;transition:opacity .2s ease-out,transform .2s cubic-bezier(.23,1,.32,1)}@starting-style{.chat-bubble{opacity:0;transform:translateY(6px)}}.chat-bubble--user{background:var(--bubble-user-bg);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.chat-bubble--assistant{background:var(--bubble-bot-bg);color:var(--text-secondary);align-self:flex-start;border-bottom-left-radius:4px}.chat-bubble--status{background:transparent;color:var(--text-secondary);align-self:flex-start;font-style:italic;font-size:.85rem;opacity:.7;padding:4px 8px;border-radius:0}.cursor-blink{display:inline-block;margin-left:1px;animation:blink .8s step-end infinite;color:var(--accent);font-weight:300}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.typing-dots{display:inline-flex;gap:5px;align-items:center;height:20px}.typing-dots span{width:7px;height:7px;background:var(--accent);border-radius:50%;animation:dot-bounce 1s ease-out infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes dot-bounce{0%,80%,to{transform:translateY(0);opacity:.6}40%{transform:translateY(-6px);opacity:1}}.chat-input-wrap{display:flex;flex-direction:column;gap:6px}.chat-input-box{display:flex;align-items:center;background:var(--input-bg);border:1.5px solid var(--input-border);border-radius:14px;padding:4px 6px 4px 16px;transition:border-color .2s}.chat-input-box:focus-within{border-color:var(--accent)}.chat-input-box.loading{opacity:.7}.chat-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:.95rem;font-family:var(--font-ui);padding:10px 0;line-height:1.4}.chat-input::placeholder{color:var(--text-muted)}.chat-input:disabled{cursor:not-allowed}.chat-send-btn{flex-shrink:0;width:38px;height:38px;background:var(--accent);border:none;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:background .15s ease,transform .1s cubic-bezier(.23,1,.32,1)}@media (hover: hover) and (pointer: fine){.chat-send-btn:hover:not(:disabled){background:var(--accent-bright)}}.chat-send-btn:active:not(:disabled){transform:scale(.96)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.send-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.rate-hint{font-size:.75rem;color:var(--text-muted);text-align:right;padding-right:4px}.chips-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chip{background:transparent;border:1.5px solid var(--accent);color:var(--text-secondary);border-radius:20px;padding:7px 14px;font-size:.82rem;cursor:pointer;font-family:var(--font-ui);transition:background .15s ease,color .15s ease,transform .1s cubic-bezier(.23,1,.32,1);white-space:nowrap}@media (hover: hover) and (pointer: fine){.chip:hover:not(:disabled){background:var(--accent);color:#fff}}.chip:active:not(:disabled){transform:scale(.96)}.chip:disabled{opacity:.35;cursor:not-allowed}.dock-wrapper{position:fixed;bottom:28px;left:0;right:0;z-index:100;display:flex;justify-content:center;pointer-events:none;margin-left:auto;margin-right:auto}.dock-pill{pointer-events:auto;width:fit-content;border-radius:999px;padding:10px 20px;border:2px solid rgba(231,6,70,.945);box-shadow:0 8px 32px #000000a6,0 2px 8px #0006;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden}.dock-inner{display:flex;align-items:center;gap:6px;position:relative;justify-content:center}.dock-action-label{font-family:var(--font-ui);font-size:.82rem;font-weight:600;color:#ffffffe6;white-space:nowrap;padding:0 4px 0 6px;letter-spacing:.01em}.dock-item-btn{position:relative;width:40px;height:40px;border-radius:50%;border:none;background:#ffffff14;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-primary);flex-shrink:0;transition:background .15s ease}@media (hover: hover) and (pointer: fine){.dock-item-btn:hover{background:#ffffff24}}.dock-item-btn--selected{background:#fff3}.dock-item-emoji{font-size:1.2rem;line-height:1;pointer-events:none}.dock-online-dot{position:absolute;bottom:2px;right:2px;width:9px;height:9px;background:#22c55e;border:2px solid #0e0e0e;border-radius:50%}.dock-sep{display:block;width:1px;height:22px;background:#ffffff1f;margin:0 4px;flex-shrink:0}.dock-toggle-btn{width:40px;height:40px;border-radius:50%;border:none;background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted);flex-shrink:0;transition:color .15s ease}@media (hover: hover) and (pointer: fine){.dock-toggle-btn:hover{color:var(--text-primary)}}.dock-toggle-btn--close{background:#ffffff26;color:#fff}@media (hover: hover) and (pointer: fine){.dock-toggle-btn--close:hover{background:#ffffff38}}@media (max-width: 480px){.hero-main{padding:16px 16px 130px}.greeting-name{font-size:1.8rem}.chips-row{gap:6px}.chip{font-size:.78rem;padding:6px 12px}.dock-toggle{padding:9px 16px}.chat-thread{max-height:38vh}}
