:root{--primary: #9E7FFF;--primary-light: rgba(158, 127, 255, .1);--secondary: #38bdf8;--accent: #f472b6;--background: #171717;--surface: #262626;--surface-hover: #333333;--text: #FFFFFF;--text-secondary: #A3A3A3;--border: #2F2F2F;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--transition: all .2s ease;--sidebar-width: 280px;--header-height: 64px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,sans-serif;background-color:var(--background);color:var(--text);line-height:1.5;overflow:hidden}button{cursor:pointer;font-family:inherit}.app-container{display:flex;height:100vh;width:100vw;overflow:hidden}.sidebar{width:var(--sidebar-width);height:100%;background-color:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.sidebar-header{padding:16px;border-bottom:1px solid var(--border)}.logo{display:flex;align-items:center;gap:8px;margin-bottom:16px}.logo h1{font-size:20px;font-weight:600;background:linear-gradient(90deg,var(--primary) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.new-chat-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background-color:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-weight:500;transition:var(--transition)}.new-chat-btn:hover{background-color:#8a6ae3;transform:translateY(-1px)}.chat-history{flex:1;padding:16px;overflow-y:auto}.chat-history h2{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.05em}.chat-history ul{list-style:none}.chat-history li{display:flex;align-items:center;gap:8px;padding:10px;border-radius:var(--radius-md);margin-bottom:4px;cursor:pointer;transition:var(--transition);color:var(--text-secondary)}.chat-history li:hover{background-color:var(--surface-hover);color:var(--text)}.chat-history li.active{background-color:var(--primary-light);color:var(--primary)}.sidebar-footer{padding:16px;border-top:1px solid var(--border)}.view-selector{display:flex;background-color:var(--surface-hover);border-radius:var(--radius-md);padding:4px;margin-bottom:16px}.view-btn{flex:1;padding:8px;background:none;border:none;color:var(--text-secondary);border-radius:var(--radius-sm);font-size:14px;transition:var(--transition)}.view-btn:hover{color:var(--text)}.view-btn.active{background-color:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.user-profile{display:flex;align-items:center;gap:12px;padding:8px;border-radius:var(--radius-md);background-color:var(--surface-hover)}.avatar{width:36px;height:36px;border-radius:50%;background-color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.user-info{flex:1}.user-name{font-weight:500;font-size:14px}.user-plan{font-size:12px;color:var(--text-secondary)}.main-content{flex:1;height:100%;overflow:hidden;position:relative}.view{position:absolute;top:0;left:0;width:100%;height:100%;display:none;flex-direction:column}.view.active{display:flex}.chat-header{height:var(--header-height);padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.chat-header h2{font-size:18px;font-weight:600}.chat-actions{display:flex;gap:8px}.action-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background-color:var(--surface);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-md);font-size:14px;transition:var(--transition)}.action-btn:hover{background-color:var(--surface-hover);color:var(--text)}.chat-messages{flex:1;padding:24px;overflow-y:auto}.message-group{margin-bottom:24px}.date-divider{text-align:center;font-size:12px;color:var(--text-secondary);margin:16px 0;position:relative}.date-divider:before,.date-divider:after{content:"";position:absolute;top:50%;width:calc(50% - 40px);height:1px;background-color:var(--border)}.date-divider:before{left:0}.date-divider:after{right:0}.message{display:flex;gap:16px;margin-bottom:24px;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0}.bot-message .message-avatar{background-color:var(--primary-light)}.user-message .message-avatar{background-color:var(--surface-hover)}.message-content{flex:1;max-width:calc(100% - 52px)}.message-header{display:flex;justify-content:space-between;margin-bottom:4px}.message-sender{font-weight:600;font-size:14px}.message-time{font-size:12px;color:var(--text-secondary)}.message-text{font-size:15px;line-height:1.6}.message-text p{margin-bottom:12px}.message-text p:last-child{margin-bottom:0}.message-text ol,.message-text ul{margin-left:24px;margin-bottom:12px}.message-text li{margin-bottom:8px}.message-actions{display:flex;gap:8px;margin-top:12px}.user-message{flex-direction:row-reverse}.user-message .message-content{display:flex;flex-direction:column;align-items:flex-end}.user-message .message-text{background-color:var(--primary-light);padding:12px 16px;border-radius:var(--radius-lg);border-top-right-radius:0}.bot-message .message-text{background-color:var(--surface);padding:12px 16px;border-radius:var(--radius-lg);border-top-left-radius:0}.chat-input-container{padding:16px 24px 24px;border-top:1px solid var(--border)}.input-wrapper{position:relative;border-radius:var(--radius-lg);background-color:var(--surface);border:1px solid var(--border);transition:var(--transition)}.input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.chat-input{width:100%;min-height:56px;max-height:200px;padding:16px 100px 16px 16px;background:none;border:none;color:var(--text);font-family:inherit;font-size:15px;resize:none;outline:none}.chat-input::placeholder{color:var(--text-secondary)}.input-actions{position:absolute;right:8px;bottom:8px;display:flex;gap:4px}.send-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);transition:var(--transition)}.send-btn:hover{background-color:#8a6ae3;transform:translateY(-1px)}.input-footer{margin-top:8px;text-align:center}.input-info{font-size:12px;color:var(--text-secondary)}.explore-header{height:var(--header-height);padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.search-container{position:relative;width:300px}.search-input{width:100%;padding:10px 40px 10px 16px;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font-family:inherit;font-size:14px;outline:none;transition:var(--transition)}.search-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.search-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.templates-container{flex:1;padding:24px;overflow-y:auto}.templates-container h3{font-size:18px;font-weight:600;margin-bottom:16px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-bottom:32px}.template-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;transition:var(--transition)}.template-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--primary)}.template-icon{width:48px;height:48px;border-radius:var(--radius-md);background-color:var(--primary-light);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.template-card h4{font-size:16px;font-weight:600;margin-bottom:8px}.template-card p{font-size:14px;color:var(--text-secondary);margin-bottom:16px;min-height:40px}.use-template-btn{width:100%;padding:8px;background-color:var(--surface-hover);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);font-size:14px;font-weight:500;transition:var(--transition)}.use-template-btn:hover{background-color:var(--primary);border-color:var(--primary)}.settings-header{height:var(--header-height);padding:0 24px;display:flex;align-items:center;border-bottom:1px solid var(--border)}.settings-content{flex:1;padding:24px;overflow-y:auto}.settings-section{margin-bottom:32px}.settings-section h3{font-size:18px;font-weight:600;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border)}.setting-item{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--border)}.setting-item:last-child{border-bottom:none}.setting-info h4{font-size:16px;font-weight:500;margin-bottom:4px}.setting-info p{font-size:14px;color:var(--text-secondary)}.settings-btn{padding:8px 16px;background-color:var(--surface-hover);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);font-size:14px;transition:var(--transition)}.settings-btn:hover{background-color:var(--primary);border-color:var(--primary)}.settings-btn.danger{color:var(--error);border-color:var(--error);background-color:#ef44441a}.settings-btn.danger:hover{background-color:var(--error);color:#fff}.settings-select{padding:8px 16px;background-color:var(--surface-hover);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);font-size:14px;min-width:120px}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch label{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--surface-hover);transition:var(--transition);border-radius:34px}.toggle-switch label:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--text);transition:var(--transition);border-radius:50%}.toggle-switch input:checked+label{background-color:var(--primary)}.toggle-switch input:checked+label:before{transform:translate(24px)}@media (max-width: 768px){.sidebar{position:absolute;z-index:10;transform:translate(-100%);transition:transform .3s ease}.sidebar.open{transform:translate(0)}.templates-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}
