.home{min-height:100vh;display:flex;flex-direction:column}.home-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0}.home-menu-btn{display:none;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer}.home-menu-btn:hover{background:var(--surface)}.home-menu-icon{font-size:1.25rem;line-height:1}.sidebar-header{display:none}.home-logo{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:.02em}.home-logo-link{color:var(--accent);text-decoration:none}.home-logo-link:hover,.home-logo-link:visited,.home-logo-link:focus-visible{color:var(--accent);text-decoration:none}.home-tagline{margin:0;font-size:.875rem;color:var(--text-muted);flex:1;min-width:0}.home-main{flex:1;display:flex;flex-direction:row;min-height:0;padding:0}.sidebar-header{display:none;align-items:center;justify-content:space-between;padding-bottom:.75rem;margin-bottom:.25rem;border-bottom:1px solid var(--border)}.sidebar-title{font-size:1rem;font-weight:600;color:var(--text)}.sidebar-close{width:2.25rem;height:2.25rem;padding:0;font-size:1.25rem;line-height:1;color:var(--text-muted);background:transparent;border:none;border-radius:6px;cursor:pointer}.sidebar-close:hover{color:var(--text);background:var(--surface)}.home-sidebar{width:220px;flex-shrink:0;border-right:1px solid var(--border);padding:1rem;display:flex;flex-direction:column;gap:.5rem}.sidebar-new{padding:.6rem 1rem;font-size:.875rem;font-weight:500;color:#fff;background:var(--accent);border:none;border-radius:6px;transition:background .15s ease}.sidebar-new:hover:not(:disabled){background:var(--accent-hover)}.sidebar-new:disabled{opacity:.7;cursor:wait}.sidebar-list{display:flex;flex-direction:column;gap:2px;overflow-y:auto;flex:1;min-height:0}.sidebar-muted{font-size:.875rem;color:var(--text-muted)}.sidebar-item{padding:.6rem .75rem;font-size:.875rem;text-align:left;color:var(--text);background:transparent;border:none;border-radius:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-item:hover{background:var(--surface)}.sidebar-item--active{background:var(--surface);color:var(--accent)}.sidebar-item-wrap{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;font-size:.875rem;color:var(--text);background:transparent;border-radius:6px;cursor:pointer;min-height:0}.sidebar-item-wrap:hover,.sidebar-item-wrap.sidebar-item--active{background:var(--surface)}.sidebar-item-wrap.sidebar-item--active .sidebar-item-label{color:var(--accent)}.sidebar-item-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-item-actions{display:flex;flex-shrink:0;gap:2px}.sidebar-item-btn{width:1.5rem;height:1.5rem;padding:0;font-size:.875rem;line-height:1;color:var(--text-muted);background:transparent;border:none;border-radius:4px;cursor:pointer}.sidebar-item-btn:hover{color:var(--text);background:var(--border)}.sidebar-item-btn--danger:hover{color:#b91c1c;background:#b91c1c1a}.sidebar-item-input{flex:1;min-width:0;padding:.35rem .5rem;font-size:.875rem;background:var(--chat-bg);border:1px solid var(--accent);border-radius:4px;color:var(--text)}.sidebar-item-input:focus{outline:none}.chat-panel{flex:1;display:flex;flex-direction:column;min-width:0;max-width:720px;width:100%;margin:0 auto;padding:1rem 1.5rem;border:none;border-radius:0;overflow:hidden}.chat-error{padding:.5rem 1rem;font-size:.875rem;color:#e8a0a0;background:#c8505026;border-bottom:1px solid var(--border)}.chat-messages{flex:1;overflow-y:auto;padding:1rem 0;min-height:200px}.home-welcome{max-width:520px;margin:0 auto;padding:2rem 1rem 3rem;text-align:center}.home-welcome-title{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:var(--text);letter-spacing:.02em}.home-welcome-title .brand{color:var(--accent)}.home-welcome-subtitle{margin:0 0 1.25rem;font-size:1rem;font-weight:500;color:var(--accent)}.home-welcome-text{margin:0 0 1.5rem;font-size:.9375rem;line-height:1.6;color:var(--text-muted)}.home-welcome-cta{margin:0;font-size:.875rem;color:var(--text-muted)}.chat-placeholder{color:var(--text-muted);font-size:.9375rem;text-align:center;padding:2rem 1rem}.chat-message{margin-bottom:1rem}.chat-message-role{display:block;font-size:.75rem;font-weight:500;color:var(--accent);margin-bottom:.25rem;font-family:var(--font-mono)}.chat-message--user .chat-message-role{color:var(--text-muted)}.chat-message--urgent{background:#b43c3c1f;border:1px solid rgba(200,80,80,.5);border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem}.chat-message--urgent .chat-message-role{color:#e87070;font-weight:600}.chat-message--urgent .chat-message-content{color:#b91c1c}.chat-message--loading .chat-message-content{color:var(--text-muted)}.chat-message-content{margin:0;font-size:.9375rem;line-height:1.5}.chat-form{display:flex;gap:.5rem;padding:1rem;border-top:1px solid var(--border)}.chat-input{flex:1;padding:.75rem 1rem;font-size:.9375rem;background:var(--chat-bg);border:1px solid var(--border);border-radius:6px;color:var(--text)}.chat-input::placeholder{color:var(--text-muted)}.chat-input:disabled{opacity:.7;cursor:not-allowed}.chat-input:focus{outline:none;border-color:var(--accent)}.chat-send{padding:.75rem 1.25rem;font-size:.9375rem;font-weight:500;color:#fff;background:var(--accent);border:none;border-radius:6px;transition:background .15s ease}.chat-send:hover:not(:disabled){background:var(--accent-hover)}.chat-send:disabled{opacity:.5;cursor:not-allowed}.chat-send:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:768px){.home-menu-btn{display:flex}.home-header .home-tagline{display:none}.home-logo{font-size:1.25rem}.home-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:100}.home-sidebar{position:fixed;top:0;left:0;bottom:0;width:min(280px,85vw);z-index:101;transform:translate(-100%);transition:transform .2s ease;box-shadow:none;background:var(--bg)}.home-sidebar--open{transform:translate(0);box-shadow:4px 0 20px #00000026}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem .75rem;border-bottom:1px solid var(--border);margin-bottom:.5rem}.sidebar-title{font-size:1rem;font-weight:600;color:var(--text)}.sidebar-close{width:2.5rem;height:2.5rem;padding:0;font-size:1.5rem;line-height:1;color:var(--text-muted);background:transparent;border:none;border-radius:6px;cursor:pointer}.sidebar-close:hover{color:var(--text);background:var(--border)}.home-main{padding:0}.chat-panel{max-width:none;padding:.75rem 1rem}.chat-form{padding:.75rem 0}.chat-input,.chat-send{min-height:44px;font-size:1rem}.home-welcome{padding:1.5rem .75rem 2rem}.home-welcome-title{font-size:1.35rem}.home-welcome-subtitle{font-size:.9375rem}.home-welcome-text{font-size:.875rem}}.disclaimer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.disclaimer-modal{background:var(--surface);border:1px solid var(--border);border-radius:8px;max-width:420px;width:100%;padding:1.75rem;box-shadow:0 24px 48px #0006}.disclaimer-title{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text)}.disclaimer-body{color:var(--text-muted);font-size:.9375rem;line-height:1.55;margin-bottom:1.5rem}.disclaimer-body p{margin:0 0 .75rem}.disclaimer-body p:last-child{margin-bottom:0}.disclaimer-accept{width:100%;padding:.75rem 1rem;font-size:1rem;font-weight:500;color:#fff;background:var(--accent);border:none;border-radius:6px;transition:background .15s ease}.disclaimer-accept:hover{background:var(--accent-hover)}.disclaimer-accept:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:root{--bg: #f9f9f7;--surface: #ffffff;--border: #e5e5e3;--text: #1a1a1a;--text-muted: #666;--accent: #7bb6d2;--accent-hover: #6aa5c4;--chat-bg: #ffffff;--font-sans: "DM Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased}#root{min-height:100vh}button{font-family:inherit;cursor:pointer}input,textarea{font-family:inherit}
