:root{--bg:#080b14;--sidebar:#0d1120;--surface:#151b2d;--surface-hover:#202840;--text:#f3f4ff;--muted:#929ab2;--border:#293149;--purple:#7959e9}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif}.app-container{background:var(--bg);width:100%;height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);flex-direction:column;width:270px;min-width:270px;padding:24px 16px;display:flex}.brand{letter-spacing:3px;color:#fff;padding:5px 12px 30px;font-size:25px;font-weight:900}.new-chat-btn{color:#fff;background:linear-gradient(110deg,#6546db,#9161ef);border:0;border-radius:11px;width:100%;padding:13px;font-weight:700;box-shadow:0 5px 20px #7959e933}.new-chat-btn:hover{filter:brightness(1.15)}.history-heading{color:#77819e;letter-spacing:1.5px;margin:30px 10px 12px;font-size:10px;font-weight:800}.chat-history{flex:1;overflow-y:auto}.history-item{border-radius:9px;align-items:center;gap:5px;margin-bottom:5px;padding:5px;display:flex}.history-item:hover,.history-item.active{background:var(--surface-hover)}.history-title{text-align:left;text-overflow:ellipsis;white-space:nowrap;color:#c4cbe0;background:0 0;border:0;flex:1;min-width:0;padding:8px 5px;font-size:12px;overflow:hidden}.history-actions{gap:3px;display:flex}.history-actions button{color:#9da7c1;background:0 0;border:0;border-radius:6px;width:25px;height:27px}.history-actions button:hover{color:#fff;background:#3a315c}.history-item input{color:#fff;border:1px solid var(--purple);background:#101629;border-radius:6px;width:100%;min-width:0;padding:8px}.sidebar-bottom{margin-top:auto}.settings-menu-btn{text-align:left;color:#aab1c8;background:0 0;border:1px solid #0000;border-radius:10px;width:100%;margin-bottom:7px;padding:14px 13px;font-size:13px;transition:all .22s;display:block}.settings-menu-btn:hover{color:#fff;background:var(--surface-hover);border-color:#7959e944}.profile-card{border-top:1px solid var(--border);align-items:center;gap:11px;padding:13px 10px;display:flex}.profile-avatar{color:#fff;background:linear-gradient(135deg,#6848e7,#a16af5);border-radius:11px;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.profile-card strong,.profile-card small{display:block}.profile-card strong{font-size:12px}.profile-card small{color:var(--muted);margin-top:4px;font-size:10px}.main-content{background:radial-gradient(ellipse at 50% 0%, #34236a20, transparent 50%), var(--bg);flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.topbar{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:65px;padding:0 28px;display:flex}.topbar>span{font-size:15px;font-weight:700}.topbar small{color:var(--muted);margin-left:7px;font-size:11px;font-weight:400}.topbar button{color:#fff;background:var(--surface);border:1px solid var(--border);border-radius:9px;width:35px;height:35px}.messages-area{flex:1;padding:35px 7%;overflow-y:auto}.welcome-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:300px;display:flex}.welcome-logo{color:#fff;background:linear-gradient(135deg,#6746df,#a06af5);border-radius:24px;place-items:center;width:75px;height:75px;margin-bottom:24px;font-size:38px;font-weight:900;display:grid;box-shadow:0 10px 45px #7959e955}.welcome-screen h1{letter-spacing:-1px;font-size:clamp(24px,4vw,35px);font-weight:800}.welcome-screen p{color:var(--muted);margin-top:12px;font-size:14px}.message-row{gap:15px;max-width:850px;margin:0 auto 30px;display:flex}.message-avatar{color:#fff;background:linear-gradient(135deg,#6848e7,#9661ec);border-radius:11px;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:13px;font-weight:800;display:grid}.message-row.user .message-avatar{background:#28334d}.message-content{flex:1;min-width:0;font-size:14px;line-height:1.75}.message-content>strong{color:#c3adff;margin-bottom:8px;font-size:12px;display:block}.message-content p{margin-bottom:12px}.message-content h1,.message-content h2,.message-content h3{margin:18px 0 10px}.message-content ul,.message-content ol{margin-bottom:13px;padding-left:25px}.message-content pre{border:1px solid var(--border);background:#090e1b;border-radius:12px;margin:12px 0;padding:17px;overflow-x:auto}.message-content code{background:#252b40;border-radius:5px;padding:2px 5px;font-size:12px}.message-content pre code{background:0 0;padding:0}.message-content table{border-collapse:collapse;width:100%;margin:15px 0}.message-content th,.message-content td{border:1px solid var(--border);text-align:left;padding:10px}.copy-btn{color:var(--muted);border:1px solid var(--border);background:0 0;border-radius:7px;margin-top:10px;padding:5px 10px;font-size:10px}.copy-btn:hover{color:#fff;background:var(--surface)}.typing-indicator{max-width:850px;color:var(--muted);align-items:center;gap:6px;margin:0 auto;font-size:12px;display:flex}.typing-indicator span{background:#a58aff;border-radius:50%;width:6px;height:6px;animation:1s infinite alternate typing}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{to{opacity:.25;transform:translateY(-4px)}}.chat-input-area{background:#151b2b;border:1px solid #353d57;border-radius:17px;align-items:flex-end;gap:12px;width:min(850px,86%);margin:15px auto 0;padding:12px 13px 12px 18px;display:flex;box-shadow:0 8px 35px #00000045}.chat-input-area:focus-within{border-color:#7959e9;box-shadow:0 0 0 3px #7959e91c}.chat-input-area textarea{resize:vertical;color:#fff;background:0 0;border:0;outline:0;flex:1;min-height:28px;max-height:150px;font-size:13px;line-height:1.6}.chat-input-area textarea::placeholder{color:#78829c}.chat-input-area button{color:#fff;background:linear-gradient(135deg,#6848e7,#9862f5);border:0;border-radius:11px;flex-shrink:0;width:36px;height:36px;font-size:23px}.chat-input-area button:disabled{opacity:.4;cursor:not-allowed}.footer-note{color:#68718a;text-align:center;padding:12px 10px 16px;font-size:10px}.settings-overlay{z-index:1000;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#03050dcc;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.settings-panel{width:100%;max-width:510px;max-height:88vh;color:var(--text);background:radial-gradient(circle at 90% 0,#7959e925,#0000 35%),linear-gradient(145deg,#151b2d,#0d1220);border:1px solid #42405f;border-radius:22px;padding:30px;animation:.3s both settingsSlide;overflow-y:auto;box-shadow:0 25px 90px #0009}@keyframes settingsSlide{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.settings-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:15px;padding-bottom:23px;display:flex}.settings-header h2{-webkit-text-fill-color:transparent;background:linear-gradient(100deg,#fff,#b9a6ff);-webkit-background-clip:text;background-clip:text;font-size:25px;font-weight:800}.settings-header p{color:var(--muted);margin-top:7px;font-size:12px}.settings-close{color:#b8bfd3;background:#252b40;border:1px solid #3b425c;border-radius:10px;width:35px;height:35px}.settings-close:hover{color:#fff;background:#7c4ee8}.settings-section{background:linear-gradient(135deg,#1b2235cc,#141a2acc);border:1px solid #303951;border-radius:15px;margin-top:22px;padding:19px}.settings-section h3{color:#b9a4ff;letter-spacing:1.2px;text-transform:uppercase;margin-bottom:15px;font-size:12px}.settings-info{border-bottom:1px solid #ffffff0c;justify-content:space-between;align-items:center;gap:15px;padding:12px 2px;display:flex}.settings-info:last-child{border-bottom:none}.settings-info span{color:var(--muted);font-size:13px}.settings-info strong{color:#f1edff;text-align:right;font-size:13px}.owner-login-success{color:#76e5ad;background:#153b3044;border:1px solid #3a9d7166;border-radius:10px;padding:12px;font-size:12px;display:block}.settings-help{color:var(--muted);margin-bottom:14px;font-size:12px;line-height:1.7}.settings-pin-input{color:#fff;letter-spacing:4px;background:#0b1020;border:1px solid #343d58;border-radius:10px;outline:none;width:100%;margin-bottom:12px;padding:14px;display:block}.settings-pin-input:focus{border-color:#9274ff}.owner-login-btn,.owner-logout-btn{color:#fff;background:linear-gradient(110deg,#6848e7,#9862f5);border:0;border-radius:10px;width:100%;padding:13px 16px;font-size:13px;font-weight:700}.owner-login-btn:disabled{opacity:.55}.owner-logout-btn{color:#faa;background:linear-gradient(110deg,#54252e,#812d43);margin-top:13px}.owner-login-error{color:#ff9292;background:#51252b55;border:1px solid #a9475266;border-radius:9px;margin-top:12px;padding:10px 12px;font-size:12px}.owner-setup-placeholder{color:#fff;background:var(--bg);text-align:center;place-content:center;gap:15px;min-height:100vh;padding:25px;display:grid}.owner-setup-placeholder button{color:#fff;background:var(--purple);border:0;border-radius:9px;padding:12px}@media (width<=650px){.sidebar{width:210px;min-width:210px;padding:15px 10px}.brand{font-size:20px}.messages-area{padding:25px 15px}.chat-input-area{width:94%}.settings-overlay{padding:12px}.settings-panel{border-radius:17px;max-width:100%;max-height:90vh;padding:21px}}@media (width<=430px){.sidebar{width:155px;min-width:155px;padding:12px 7px}.brand{padding-left:5px;font-size:17px}.history-title{font-size:10px}.message-row{gap:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.mobile-menu-btn,.mobile-sidebar-overlay{display:none}@media (width<=650px){.sidebar{z-index:1101;width:270px;min-width:270px;max-width:85vw;height:100vh;padding:15px 10px;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.mobile-sidebar-overlay{z-index:1100;background:#000000a6;display:block;position:fixed;inset:0}.mobile-menu-btn{flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex;color:#fff!important;padding:0!important;font-size:21px!important}.topbar{gap:12px;padding:0 14px}.topbar>span{flex:1}}:root{color:#f5f5fa;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#090b14;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html,body{background:#090b14;min-width:320px;min-height:100%;margin:0;padding:0}body{min-height:100vh}#root{text-align:left;width:100%;min-height:100vh;margin:0;padding:0}button,textarea,input{font:inherit}button{cursor:pointer}::selection{color:#fff;background:#7654e8}
