:root{--bg: #17212b;--bg-secondary: #232e3c;--bg-card: #2b5278;--text: #ffffff;--text-secondary: #aaaaaa;--accent: #5288c1;--danger: #e74c3c;--border: #2b3f56}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-tap-highlight-color:transparent;min-height:100vh;overscroll-behavior:none}#root{display:flex;flex-direction:column;min-height:100vh}.app-container{display:flex;flex-direction:column;height:100vh;overflow:hidden}.page-content{flex:1;overflow-y:auto;padding:16px 16px 80px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--bg-secondary);border-top:1px solid var(--border);z-index:100;padding-bottom:env(safe-area-inset-bottom)}.nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 0;background:none;border:none;color:var(--text-secondary);font-size:11px;cursor:pointer;gap:3px;transition:color .15s}.nav-btn.active{color:var(--accent)}.nav-btn .nav-icon{font-size:22px;line-height:1}.card{background:var(--bg-secondary);border-radius:12px;padding:14px;margin-bottom:10px;border:1px solid var(--border)}.card-row{display:flex;align-items:center;gap:12px}.avatar{font-size:36px;line-height:1;flex-shrink:0}.card-info{flex:1;min-width:0}.card-title{font-size:16px;font-weight:600;color:var(--text)}.card-subtitle{font-size:13px;color:var(--text-secondary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-time{font-size:11px;color:var(--text-secondary);flex-shrink:0}.btn{padding:10px 20px;border-radius:8px;border:none;font-size:15px;font-weight:500;cursor:pointer;transition:opacity .15s}.btn:active{opacity:.7}.btn-primary{background:var(--accent);color:#fff}.btn-danger{background:var(--danger);color:#fff}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-icon{background:none;border:none;color:var(--text-secondary);font-size:20px;cursor:pointer;padding:6px;border-radius:6px;line-height:1;transition:color .15s,background .15s}.btn-icon:hover{color:var(--danger);background:#e74c3c1a}.traits{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.trait-badge{background:var(--bg-card);color:var(--accent);font-size:11px;padding:3px 8px;border-radius:10px}.tabs{display:flex;background:var(--bg-secondary);border-radius:10px;padding:3px;margin-bottom:16px;border:1px solid var(--border)}.tab{flex:1;padding:8px;background:none;border:none;color:var(--text-secondary);font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s}.tab.active{background:var(--accent);color:#fff}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;z-index:200;display:flex;flex-direction:column;justify-content:flex-end}.modal{background:var(--bg-secondary);border-radius:20px 20px 0 0;padding:20px;max-height:80vh;display:flex;flex-direction:column;padding-bottom:calc(20px + env(safe-area-inset-bottom))}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-title{font-size:18px;font-weight:700}.modal-close{background:none;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;line-height:1;padding:0}.modal-body{flex:1;overflow-y:auto}.messages-list{display:flex;flex-direction:column;gap:10px}.message{max-width:80%;padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.5;word-break:break-word}.message.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}.message.assistant{align-self:flex-start;background:var(--bg-card);color:var(--text);border-bottom-left-radius:4px}.message-time{font-size:10px;opacity:.6;margin-top:4px}.presets-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.preset-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:14px;text-align:center;cursor:pointer;transition:border-color .15s}.preset-card:active{border-color:var(--accent)}.preset-avatar{font-size:42px;line-height:1;margin-bottom:8px}.preset-name{font-size:16px;font-weight:600;margin-bottom:4px}.preset-desc{font-size:12px;color:var(--text-secondary);margin-bottom:8px;line-height:1.4}.form-group{margin-bottom:14px}.form-label{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:6px;font-weight:500}.form-input,.form-textarea{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:15px;padding:10px 12px;outline:none;transition:border-color .15s;font-family:inherit}.form-input:focus,.form-textarea:focus{border-color:var(--accent)}.form-textarea{resize:vertical;min-height:90px}.emoji-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.emoji-option{font-size:28px;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:2px solid transparent;background:var(--bg);cursor:pointer;transition:border-color .15s}.emoji-option.selected{border-color:var(--accent);background:#5288c126}.profile-card{background:var(--bg-secondary);border-radius:16px;padding:24px;text-align:center;border:1px solid var(--border);margin-bottom:16px}.profile-avatar{font-size:64px;line-height:1;margin-bottom:12px}.profile-name{font-size:22px;font-weight:700;margin-bottom:4px}.profile-username{font-size:14px;color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:16px;text-align:center}.stat-value{font-size:28px;font-weight:700;color:var(--accent)}.stat-label{font-size:12px;color:var(--text-secondary);margin-top:4px}.loader{display:flex;justify-content:center;align-items:center;padding:40px}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:48px 24px;color:var(--text-secondary)}.empty-state .empty-icon{font-size:48px;margin-bottom:12px}.empty-state p{font-size:15px;line-height:1.5}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.page-title{font-size:20px;font-weight:700}
