@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Readex+Pro:wght@400;500;600&display=swap";:root{color-scheme:light;--primary: #ff6346;--primary-ink: #ffffff;--secondary: #7394ff;--tertiary: #8230ed;--text: #000000;--text-2: #757679;--bg: #f6f7fb;--surface: #ffffff;--accent-1: #ced7e2;--accent-2: #e3e9f1;--accent-4: #e3eaf2;--success: #21ae73;--warning: #eb8237;--error: #dd2652;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--r-sm: 8px;--r: 12px;--r-lg: 16px;--r-pill: 999px;--display: "Readex Pro", ui-sans-serif, system-ui, sans-serif;--body: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--sidebar-width: 300px;--shadow-sm: 0 1px 3px rgba(41, 48, 57, .08);--shadow: 0 4px 12px rgba(41, 48, 57, .1)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--display);margin:0}button{font:inherit;font-family:var(--display);font-weight:500;cursor:pointer;border-radius:var(--r-sm);border:1px solid var(--accent-1);background:var(--surface);color:var(--text-2);padding:var(--sp-2) var(--sp-3);transition:background .14s ease,color .14s ease,border-color .14s ease}button:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface))}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);border-radius:var(--r-pill);padding:var(--sp-2) var(--sp-4)}button.primary:hover:not(:disabled){color:var(--primary-ink);background:color-mix(in srgb,var(--primary) 88%,#000);border-color:color-mix(in srgb,var(--primary) 88%,#000)}button.danger:hover:not(:disabled){border-color:var(--error);color:var(--error);background:color-mix(in srgb,var(--error) 8%,var(--surface))}button.linkish{border:none;background:none;padding:var(--sp-1) 0;color:var(--text-2);font-family:var(--body);font-weight:500;font-size:12px}button.linkish:hover{color:var(--primary);background:none}input,textarea{font:inherit;font-family:var(--body);color:var(--text);background:var(--surface);border:1px solid var(--accent-1);border-radius:var(--r-sm);padding:var(--sp-3)}input::placeholder,textarea::placeholder{color:var(--text-2)}input:focus,textarea:focus{border-color:var(--primary);outline:none}:where(input,textarea,button,a):focus-visible{outline:2px solid var(--primary);outline-offset:2px}.boot{display:grid;place-items:center;height:100%;color:var(--text-2);font-family:var(--display);font-size:14px}.gate{display:grid;place-items:center;height:100%;padding:var(--sp-6);background:var(--bg)}.gate-card{width:min(400px,100%);background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:var(--sp-8);display:flex;flex-direction:column;gap:var(--sp-2)}.gate-brand{font-family:var(--display);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.gate-card h1{margin-top:var(--sp-1);font-size:32px;font-weight:600;line-height:1.15}.gate-hint{margin:0 0 var(--sp-3);color:var(--text-2);font-size:14px}.gate-card label{font-family:var(--display);font-size:12px;font-weight:500;color:var(--text-2);margin-top:var(--sp-2)}.gate-card button[type=submit]{margin-top:var(--sp-5);background:var(--primary);border-color:var(--primary);color:var(--primary-ink);border-radius:var(--r-pill);padding:var(--sp-3);font-size:16px}.gate-card button[type=submit]:hover:not(:disabled){color:var(--primary-ink);background:color-mix(in srgb,var(--primary) 88%,#000)}.gate-error{margin:var(--sp-3) 0 0;color:var(--error);background:color-mix(in srgb,var(--error) 12%,transparent);border-radius:var(--r-sm);padding:var(--sp-2) var(--sp-3);font-size:12px;font-weight:500}.app{display:grid;grid-template-columns:var(--sidebar-width) 1fr;height:100%}@media(max-width:760px){.app{grid-template-columns:1fr;grid-template-rows:auto 1fr}}.sidebar{background:var(--surface);border-right:1px solid var(--accent-2);display:flex;flex-direction:column;min-height:0}.sidebar-head{padding:var(--sp-5) var(--sp-4) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.brand{font-family:var(--display);font-size:20px;font-weight:600;color:var(--text);letter-spacing:-.01em}.brand:first-letter{color:var(--primary)}.sidebar-list{flex:1;overflow-y:auto;padding:0 var(--sp-2) var(--sp-2);min-height:0}.sidebar-list ul{list-style:none;margin:0 0 var(--sp-2);padding:0;display:flex;flex-direction:column;gap:var(--sp-1)}.group-label{font-family:var(--display);font-size:12px;font-weight:500;color:var(--text-2);padding:var(--sp-3) var(--sp-2) var(--sp-1)}.empty{color:var(--text-2);font-size:12px;padding:var(--sp-3) var(--sp-2);margin:0}.row{border-radius:var(--r);transition:background .14s ease}.row:hover{background:var(--bg)}.row.selected{background:color-mix(in srgb,var(--primary) 10%,transparent)}.row-open{width:100%;text-align:left;background:none;border:none;padding:var(--sp-3);display:flex;flex-direction:column;gap:2px;color:var(--text);border-radius:var(--r);font-family:var(--body);font-weight:400}.row-open:hover{background:none;color:var(--text);border-color:transparent}.row-title{font-family:var(--body);font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:var(--sp-2)}.row.selected .row-title{color:var(--primary)}.row-pin{color:var(--primary);font-size:9px}.row-meta{font-size:12px;color:var(--text-2)}.row-live,.row-unread{display:inline-block;border-radius:var(--r-sm);padding:1px var(--sp-2);font-weight:500;font-size:11px}.row-live{color:var(--primary);background:color-mix(in srgb,var(--primary) 20%,transparent)}.row-unread{color:var(--success);background:color-mix(in srgb,var(--success) 20%,transparent)}.row-rename{width:calc(100% - var(--sp-4));margin:var(--sp-2);padding:var(--sp-2) var(--sp-3);font-size:14px}.row-actions,.row-confirm{display:none;gap:var(--sp-1);padding:0 var(--sp-3) var(--sp-3);flex-wrap:wrap;align-items:center}.row:hover .row-actions,.row.selected .row-actions,.row-confirm{display:flex}.row-actions button,.row-confirm button{font-size:11px;padding:var(--sp-1) var(--sp-2);border-radius:var(--r-sm)}.row-confirm span{font-size:11px;font-weight:500;color:var(--error)}.sidebar-foot{border-top:1px solid var(--accent-2);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-1);align-items:flex-start}.who{font-size:12px;color:var(--text-2);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--bg)}.chat-head{padding:var(--sp-5) var(--sp-6);background:var(--surface);border-bottom:1px solid var(--accent-2);display:flex;align-items:baseline;gap:var(--sp-3);flex-wrap:wrap}.chat-head h1{font-size:18px;font-weight:500;letter-spacing:-.01em}.chat-sub{font-size:12px;color:var(--text-2);font-variant-numeric:tabular-nums}.chat-scroll{flex:1;overflow-y:auto;padding:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-4);min-height:0}.chat-empty{margin:auto;max-width:44ch;text-align:center;color:var(--text-2)}.chat-empty p{margin:0 0 var(--sp-2);font-size:16px;color:var(--text)}.chat-empty-note{font-size:12px;color:var(--text-2)!important}.msg{display:flex;max-width:780px;width:100%;margin:0 auto}.msg-user{justify-content:flex-end}.bubble{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-lg);max-width:80%;overflow-wrap:anywhere;font-size:14px}.msg-user .bubble{background:var(--primary);color:var(--primary-ink);border-bottom-right-radius:var(--sp-1);white-space:pre-wrap}.msg-assistant .bubble{background:var(--surface);border-bottom-left-radius:var(--sp-1);box-shadow:var(--shadow-sm)}.thinking{color:var(--text-2);font-size:12px}.caret{display:inline-block;width:6px;height:1em;background:var(--primary);border-radius:1px;vertical-align:text-bottom;margin-left:2px;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.caret{animation:none}*{scroll-behavior:auto!important}}.chat-error{max-width:780px;width:100%;margin:0 auto;color:var(--error);background:color-mix(in srgb,var(--error) 12%,var(--surface));border-radius:var(--r);padding:var(--sp-3) var(--sp-4);font-size:12px;font-weight:500}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p{margin:0 0 var(--sp-2)}.markdown h1,.markdown h2,.markdown h3{font-family:var(--display);font-size:16px;font-weight:600;margin:var(--sp-4) 0 var(--sp-2)}.markdown code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em;background:var(--accent-2);border-radius:var(--sp-1);padding:1px var(--sp-1)}.markdown pre{background:var(--accent-2);border-radius:var(--r-sm);padding:var(--sp-3);overflow-x:auto}.markdown pre code{background:none;padding:0}.markdown table{border-collapse:collapse;width:100%;font-size:12px;display:block;overflow-x:auto}.markdown th,.markdown td{border-bottom:1px solid var(--accent-2);padding:var(--sp-2) var(--sp-3);text-align:left}.markdown th{font-family:var(--display);font-weight:500;color:var(--text-2);white-space:nowrap}.markdown td{font-variant-numeric:tabular-nums}.markdown ul,.markdown ol{margin:0 0 var(--sp-2);padding-left:var(--sp-5)}.markdown li{margin-bottom:var(--sp-1)}.markdown a{color:var(--primary);text-underline-offset:2px}.msg-user .markdown a{color:var(--primary-ink)}.composer{padding:var(--sp-4) var(--sp-6) var(--sp-5);background:var(--surface);border-top:1px solid var(--accent-2);display:flex;gap:var(--sp-3);align-items:flex-end}.composer textarea{flex:1;resize:vertical;min-height:48px;max-height:220px;line-height:1.5;border-radius:var(--r);font-size:14px}.composer button{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);border-radius:var(--r-pill);padding:var(--sp-3) var(--sp-5);font-size:14px}.composer button:hover:not(:disabled){color:var(--primary-ink);background:color-mix(in srgb,var(--primary) 88%,#000);border-color:color-mix(in srgb,var(--primary) 88%,#000)}.chip{display:inline-block;margin-left:var(--sp-2);border-radius:var(--r-sm);padding:2px var(--sp-2);font-family:var(--display);font-size:11px;font-weight:500;color:var(--tertiary);background:color-mix(in srgb,var(--tertiary) 20%,transparent)}
