:root{color-scheme:light;font-family:Aptos,Segoe UI,system-ui,-apple-system,sans-serif;--paper: #f4f0e8;--ink: #1f2a24;--ink-soft: #3a463f;--muted: #6d665c;--card: #fffdf8;--card-2: #fbf7ef;--line: rgba(31, 42, 36, .12);--line-strong: rgba(31, 42, 36, .2);--teal: #267b73;--teal-ink: #1d5f59;--orange: #d85f3d;--ok: #2f9e6f;--warn: #c9603f;--radius: 16px;--radius-sm: 12px;--shadow-sm: 0 1px 2px rgba(31, 42, 36, .06);--shadow: 0 14px 40px rgba(31, 42, 36, .1);color:var(--ink);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body{margin:0;height:100%}body{min-width:320px;background:radial-gradient(120% 120% at 100% 0%,rgba(38,123,115,.06),transparent 45%),radial-gradient(120% 120% at 0% 100%,rgba(216,95,61,.05),transparent 45%),var(--paper);color:var(--ink);overscroll-behavior-y:none}#root{height:100%}button,input,textarea{font:inherit;color:inherit}h1,h2,h3,p{margin:0}.app{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));padding-top:max(10px,env(safe-area-inset-top));min-height:60px;background:#fcf9f3d1;-webkit-backdrop-filter:saturate(1.2) blur(10px);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--line);z-index:5}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:40px;height:40px;border-radius:11px;box-shadow:var(--shadow-sm);flex:0 0 auto}.brand-text{min-width:0}.brand h1{font-size:22px;line-height:1.05;font-weight:750;letter-spacing:-.01em}.brand-sub{margin-top:2px;color:var(--muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:46vw}.topbar-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}.icon-btn{width:40px;height:40px;display:inline-grid;place-items:center;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--ink-soft);cursor:pointer;transition:background .15s ease,color .15s ease,transform .05s ease}.icon-btn:hover{background:#1f2a240f}.icon-btn:active{transform:scale(.96)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.send-btn{background:var(--teal);color:#fff;box-shadow:var(--shadow-sm)}.send-btn:hover:not(:disabled){background:var(--teal-ink)}.send-btn:disabled{background:#1f2a241f;color:#1f2a2466;opacity:1}.ghost-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 13px;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--ink);font-size:13px;font-weight:550;cursor:pointer;transition:background .15s ease}.ghost-btn:hover{background:var(--card-2)}.install-btn{border-color:#267b7359;color:var(--teal-ink)}.primary-button{border:0;border-radius:12px;background:var(--teal);color:#fff;min-height:46px;padding:0 22px;font-weight:600;cursor:pointer;box-shadow:var(--shadow-sm)}.primary-button:hover{background:var(--teal-ink)}.conn{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 11px;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:12.5px;color:var(--muted);white-space:nowrap}.conn-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);flex:0 0 auto}.conn[data-state=online] .conn-dot,.status-conn[data-state=online] .conn-dot{background:var(--ok);box-shadow:0 0 0 3px #2f9e6f29}.conn[data-state=offline] .conn-dot,.status-conn[data-state=offline] .conn-dot{background:var(--warn)}.conn[data-state=checking] .conn-dot{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.body{flex:1;display:flex;min-height:0;overflow:hidden}.chat{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.transcript{flex:1;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth;padding:20px 16px 8px}.message-stack{width:min(100%,760px);margin:0 auto;display:flex;flex-direction:column;gap:16px}.msg{display:flex;flex-direction:column;max-width:100%}.msg.user{align-items:flex-end}.msg.alvey{align-items:flex-start}.msg-author{font-size:11.5px;font-weight:650;letter-spacing:.02em;color:var(--muted);margin:0 0 5px 2px}.bubble{border-radius:16px;padding:11px 15px;font-size:15px;line-height:1.5;max-width:86%;word-wrap:break-word;overflow-wrap:anywhere}.msg.user .bubble{background:var(--orange);color:#fff7f2;border-bottom-right-radius:6px;white-space:pre-wrap;box-shadow:var(--shadow-sm)}.msg.alvey .bubble{background:var(--card);border:1px solid var(--line);border-bottom-left-radius:6px;box-shadow:var(--shadow-sm)}.msg.alvey.error .bubble{background:#fdeee9;border-color:#c9603f4d}.retry-btn{margin-top:8px;border:1px solid rgba(201,96,63,.4);background:transparent;color:var(--warn);border-radius:9px;padding:5px 12px;font-size:13px;font-weight:600;cursor:pointer}.retry-btn:hover{background:#c9603f14}.bubble.typing{display:inline-flex;align-items:center;gap:5px;padding:14px 16px}.typing-dot{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:typing 1.3s infinite ease-in-out}.typing-dot:nth-child(2){animation-delay:.16s}.typing-dot:nth-child(3){animation-delay:.32s}@keyframes typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 10px}.md ul,.md ol{margin:0 0 10px;padding-left:22px}.md li{margin:3px 0}.md li::marker{color:var(--teal)}.md h1,.md h2,.md h3{font-size:16px;font-weight:700;margin:14px 0 8px;line-height:1.3}.md a{color:var(--teal-ink);text-underline-offset:2px}.md strong{font-weight:700}.md code{font-family:SFMono-Regular,Consolas,ui-monospace,monospace;font-size:.88em;background:#1f2a2412;padding:1.5px 5px;border-radius:6px}.md pre{margin:0 0 10px;padding:12px 14px;background:var(--ink);color:#f4f0e8;border-radius:12px;overflow-x:auto}.md pre code{background:transparent;padding:0;color:inherit}.md blockquote{margin:0 0 10px;padding:2px 0 2px 12px;border-left:3px solid var(--line-strong);color:var(--muted)}.md table{border-collapse:collapse;width:100%;margin:0 0 10px;font-size:14px;display:block;overflow-x:auto}.md th,.md td{border:1px solid var(--line);padding:6px 10px;text-align:left}.md th{background:var(--card-2)}.empty-state{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px 16px}.empty-mark{width:60px;height:60px;border-radius:16px;box-shadow:var(--shadow);margin-bottom:18px}.empty-state h2{font-size:24px;font-weight:720;letter-spacing:-.01em}.empty-state>p{margin-top:8px;max-width:380px;color:var(--muted);font-size:14.5px;line-height:1.5}.prompt-grid{margin-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(100%,480px)}.prompt-chip{display:flex;align-items:center;gap:9px;text-align:left;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);font-size:13.5px;line-height:1.3;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .15s ease,transform .05s ease}.prompt-chip svg{color:var(--teal);flex:0 0 auto}.prompt-chip:hover:not(:disabled){border-color:#267b7366}.prompt-chip:active:not(:disabled){transform:scale(.99)}.prompt-chip:disabled{opacity:.55;cursor:not-allowed}.composer{flex:0 0 auto;display:flex;align-items:flex-end;gap:10px;width:min(100%,760px);margin:0 auto;padding:12px 16px;padding-bottom:max(12px,calc(env(safe-area-inset-bottom) + 8px))}.composer-input{flex:1;min-height:48px;max-height:160px;resize:none;border:1px solid var(--line-strong);border-radius:16px;padding:13px 16px;background:var(--card);font-size:16px;line-height:1.4;outline:none;box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}.composer-input::placeholder{color:#6d665ccc}.composer-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #267b7326}.composer-input:disabled{opacity:.7}.send-btn{width:48px;height:48px;border-radius:14px;flex:0 0 auto}.side{flex:0 0 320px;width:320px;border-left:1px solid var(--line);background:#fbf7ef99;overflow-y:auto;padding:18px 16px max(18px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:18px}.side-head{display:none;align-items:center;justify-content:space-between;font-size:13px;font-weight:650;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.side-section{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:15px;box-shadow:var(--shadow-sm)}.section-heading{display:flex;align-items:center;gap:8px;margin-bottom:13px;color:var(--ink-soft)}.section-heading svg{color:var(--teal)}.section-heading h2{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.tracker-list{display:flex;flex-direction:column;gap:9px}.tracker-row{display:flex;align-items:center;gap:11px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card-2)}.tracker-icon{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:10px;background:#267b731f;color:var(--teal-ink);flex:0 0 auto}.tracker-meta{min-width:0}.tracker-row h3{font-size:14.5px;font-weight:600;line-height:1.2}.tracker-row p{margin-top:2px;color:var(--muted);font-size:12.5px}.empty-note{color:var(--muted);font-size:13.5px}.status-grid{display:flex;flex-direction:column;gap:11px;margin:0}.status-grid>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-grid dt{color:var(--muted);font-size:13px}.status-grid dd{margin:0;font-size:13.5px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.status-grid dd svg{color:var(--teal)}.status-conn{text-transform:none}.scrim{display:none}.auth-screen{min-height:100dvh;display:grid;place-items:center;padding:24px}.auth-panel{width:min(100%,380px);padding:32px 28px;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.auth-mark{width:60px;height:60px;border-radius:16px;margin-bottom:18px;box-shadow:var(--shadow-sm)}.auth-panel h1{font-size:28px;font-weight:740;letter-spacing:-.01em}.auth-panel p{margin:12px 0 20px;color:var(--muted);font-size:14.5px;line-height:1.5}@media(max-width:960px){.side{position:fixed;top:0;right:0;bottom:0;width:min(86vw,340px);flex:none;z-index:40;box-shadow:-16px 0 50px #1f2a2438;transform:translate(100%);transition:transform .24s ease;padding-top:max(18px,env(safe-area-inset-top));background:var(--card-2)}.side.open{transform:translate(0)}.side-head{display:flex}.scrim{display:block;position:fixed;inset:0;z-index:35;border:0;padding:0;background:#1f2a2466;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);cursor:pointer}}@media(min-width:961px){.panel-toggle{display:none}}@media(max-width:520px){.conn-label{display:none}.conn{width:32px;padding:0;justify-content:center}.prompt-grid{grid-template-columns:1fr}.bubble{max-width:92%}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
