/* Calm glass surfaces and charcoal gradients; no external image/CDN dependency. */
:root{--persona-accent:#8055b4;--glass:rgba(255,255,255,.7);--glass-border:rgba(255,255,255,.86);--persona-bg:radial-gradient(ellipse at 90% 5%,#e3d4f7 0,transparent 48%),radial-gradient(ellipse at 5% 90%,#cee7ed 0,transparent 46%),linear-gradient(135deg,#faf6fc,#edf3f8)}
:root{--menu-glass:rgba(248,251,255,.58);--menu-hover:rgba(255,255,255,.52)}
[data-theme=dark]{--menu-glass:rgba(27,28,32,.67);--menu-hover:rgba(255,255,255,.09)}
.account-menu,.tools-menu,.modal-card{background:var(--menu-glass);border:1px solid var(--glass-border);border-radius:22px;backdrop-filter:blur(32px) saturate(145%);-webkit-backdrop-filter:blur(32px) saturate(145%);box-shadow:0 20px 55px rgba(15,23,42,.16),inset 0 1px 0 rgba(255,255,255,.2)}
.account-menu button:hover,.tools-menu button:hover{background:var(--menu-hover)}
.model-picker select,.wallet-pill,.persona-settings input,.persona-settings textarea,.persona-settings select{background:var(--menu-hover);border-color:var(--glass-border)}
.model-picker select option,.persona-settings select option{background:var(--bg);color:var(--text)}
[data-theme=dark]{--persona-accent:#d6c5f0;--glass:rgba(29,30,34,.74);--glass-border:rgba(255,255,255,.13);--persona-bg:radial-gradient(ellipse at 90% 5%,rgba(255,255,255,.12),transparent 45%),radial-gradient(ellipse at 8% 92%,rgba(167,171,182,.13),transparent 48%),linear-gradient(145deg,#08090c,#28292e 53%,#101114)}
body,.app-view{background:var(--persona-bg);background-attachment:fixed}
.chat-area{background:transparent}
.chat-area{grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"header" "messages" "composer"}
.chat-header{grid-area:header}.chat-scroll{grid-area:messages}.composer-wrap{grid-area:composer}
.chat-scroll:has(>.empty-state:not(.hidden)),.chat-scroll:has(>.persona-toolbar:not(.hidden)){display:flex;flex-direction:column}
.empty-state{min-height:0;flex:1;width:100%;justify-content:flex-start;padding:clamp(26px,7vh,72px) 24px 24px;margin:0 auto}
.empty-state:not(.hidden)+.message-list:empty{display:none}
.persona-toolbar{max-height:none;overflow:visible;padding-bottom:18px}
@media(max-height:650px){.empty-state{padding-top:20px}.hero-mark{width:42px;height:42px;margin-bottom:12px}.empty-state h1{font-size:25px}}
.sidebar,.chat-header,.composer{background:var(--glass);border-color:var(--glass-border);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.sidebar{box-shadow:0 12px 45px rgba(20,25,50,.06)}
.chat-header{border-bottom:1px solid var(--glass-border)}
.persona-toolbar{padding:12px 24px 18px;flex-shrink:0}
.mode-tabs{display:flex;gap:6px;flex-wrap:wrap;max-width:820px;margin:0 auto;padding:5px;width:fit-content;border:1px solid var(--glass-border);border-radius:18px;background:var(--glass);backdrop-filter:blur(20px)}
.mode-tabs button{border:0;border-radius:13px;background:transparent;padding:9px 17px;color:var(--muted);font-size:12px;cursor:pointer;transition:background .2s,color .2s}
.mode-tabs button[aria-pressed=true]{background:var(--text);color:var(--bg);box-shadow:0 4px 15px rgba(25,28,40,.13)}
.mode-tabs button:focus-visible,.persona-banner button:focus-visible{outline:2px solid var(--persona-accent);outline-offset:3px}
.persona-banner{max-width:820px;margin:14px auto 0;padding:20px 24px;border:1px solid var(--glass-border);border-radius:24px;background:var(--glass);backdrop-filter:blur(24px);display:flex;justify-content:space-between;align-items:center;gap:18px;box-shadow:0 12px 35px rgba(29,34,62,.05)}
.persona-banner span{font-size:10px;letter-spacing:.2px;color:var(--persona-accent)}
.persona-banner h2{font-size:20px;font-weight:700;margin:6px 0;color:var(--text)}
.persona-banner p{font-size:11px;line-height:1.9;color:var(--muted);max-width:570px;margin:0}
.persona-banner button{flex-shrink:0;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;font-size:11px;padding:10px 13px;cursor:pointer}
.persona-settings{max-width:820px;margin:12px auto 0;padding:14px 18px;border:1px solid var(--glass-border);border-radius:20px;background:var(--glass);backdrop-filter:blur(24px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:none;overflow:visible}
.persona-settings label{display:grid;gap:6px;font-size:11px;color:var(--muted)}
.persona-settings input,.persona-settings textarea,.persona-settings select{width:100%;font:inherit;font-size:12px;padding:10px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--surface)}
.persona-preferences{grid-column:1/-1}.persona-settings small{grid-column:1/-1;font-size:10px;color:var(--muted)}
[data-chat-mode=partner]{--persona-accent:#a24d7a;--persona-bg:radial-gradient(ellipse at 85% 10%,#f2d9e8,transparent 50%),radial-gradient(ellipse at 12% 88%,#d9e3f8,transparent 46%),linear-gradient(140deg,#fff9fc,#f1edf8)}
[data-chat-mode=psychology]{--persona-accent:#407e73;--persona-bg:radial-gradient(ellipse at 85% 10%,#d6ebe2,transparent 50%),radial-gradient(ellipse at 12% 88%,#e1dcf1,transparent 46%),linear-gradient(140deg,#f9fcfa,#edf2f6)}
[data-theme=dark][data-chat-mode]{--persona-accent:#e0dce8;--persona-bg:radial-gradient(ellipse at 90% 5%,rgba(255,255,255,.12),transparent 45%),radial-gradient(ellipse at 8% 92%,rgba(167,171,182,.13),transparent 48%),linear-gradient(145deg,#08090c,#28292e 53%,#101114)}
.conversation-main[data-mode=partner]:before{content:'♡';margin-left:6px;color:var(--persona-accent)}
.conversation-main[data-mode=psychology]:before{content:'✦';margin-left:6px;color:var(--persona-accent)}
.hidden{display:none!important}
.telegram-start-box{display:grid;gap:10px;margin:16px 0}.telegram-start-box a{display:block;text-decoration:none;text-align:center}.telegram-start-box small{color:var(--muted);font-size:11px;line-height:1.9}.telegram-account-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.telegram-admin-setup{padding:18px;border:1px solid var(--glass-border);border-radius:18px;margin:16px 0}#telegram-cron-command{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface);padding:12px;border-radius:12px;font-size:11px;text-align:left}
.persona-settings input,.persona-settings textarea,.persona-settings select{background:var(--menu-hover);border-color:var(--glass-border)}
@media(max-width:700px){.persona-toolbar{padding:8px 12px 18px}.mode-tabs{gap:2px;flex-wrap:nowrap;width:100%;justify-content:center}.mode-tabs button{font-size:11px;padding:8px 10px}.persona-banner{padding:15px;gap:10px;border-radius:18px}.persona-banner h2{font-size:16px}.persona-banner p{font-size:10px}.persona-banner button{font-size:10px;padding:8px}.persona-settings{grid-template-columns:1fr 1fr;padding:12px}.persona-settings label{min-width:0}.persona-settings label:nth-child(3){grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.mode-tabs button{transition:none}}
