:root{--bg: #f4f5f7;--surface: #ffffff;--surface-muted: #f8f9fb;--border: #e8eaee;--border-strong: #d8dbe1;--text: #1a1d23;--text-muted: #5f6672;--text-faint: #9aa1ac;--accent: #c8102e;--accent-hover: #a80d27;--accent-soft: #fdf0f2;--success: #15803d;--warning-soft: #fffbeb;--danger-soft: #fef2f2;--radius: 12px;--radius-sm: 8px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05);--shadow-md: 0 1px 2px rgba(16, 24, 40, .04), 0 4px 12px rgba(16, 24, 40, .06);--shadow-lg: 0 8px 16px rgba(16, 24, 40, .08), 0 24px 48px rgba(16, 24, 40, .12);font-family:Inter,-apple-system,SF Pro Text,PingFang TC,PingFang SC,Microsoft JhengHei,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}::selection{background:#c8102e24}button{font-family:inherit;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}button:disabled{cursor:not-allowed;opacity:.55}input,select{font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}input:focus-visible,select:focus-visible,button:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #c8102e24}input::placeholder{color:var(--text-faint)}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:#cfd4db;border-radius:8px}*::-webkit-scrollbar-thumb:hover{background:#b6bdc7}*::-webkit-scrollbar-track{background:transparent}.lift{transition:transform .15s ease,box-shadow .15s ease}.lift:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}@keyframes sidebar-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.sidebar-slide-in{animation:sidebar-slide-in .18s ease-out}.chat-md p{margin:0 0 .5rem}.chat-md p:last-child{margin-bottom:0}.chat-md ul,.chat-md ol{margin:.25rem 0 .5rem;padding-left:1.2rem}.chat-md table{border-collapse:collapse;margin:.4rem 0;font-size:.8rem;font-variant-numeric:tabular-nums}.chat-md th,.chat-md td{border:1px solid var(--border-strong);padding:.25rem .55rem;text-align:left}.chat-md th{background:var(--surface);font-weight:700}.chat-md code{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:.05rem .3rem;font-size:.82em}.chat-md strong{font-weight:700}
