:root{color-scheme:dark;--bg:#050914;--panel:rgba(10,17,31,.82);--sidebar:rgba(7,12,23,.92);--surface:#0e1728;--surface-2:#131e31;--surface-hover:#17243a;--text:#f3f7ff;--muted:#8998ae;--faint:#59677a;--border:rgba(147,173,211,.14);--accent:#5b8dff;--accent-2:#8568ff;--accent-soft:rgba(91,141,255,.13);--danger:#ff6d7a;--shadow:0 24px 80px rgba(0,0,0,.34);--sidebar-w:292px}
*{box-sizing:border-box}html,body{height:100%;margin:0}body{overflow:hidden;background:var(--bg);color:var(--text);font-family:"DM Sans",system-ui,sans-serif;font-size:16px}.ambient{position:fixed;border-radius:50%;filter:blur(100px);pointer-events:none;opacity:.17}.ambient-one{width:460px;height:460px;background:#296dff;top:-230px;left:35%}.ambient-two{width:380px;height:380px;background:#783cff;bottom:-240px;right:-100px}.app-shell{position:relative;display:grid;grid-template-columns:var(--sidebar-w) 1fr;height:100%;z-index:1}.sidebar{display:flex;flex-direction:column;min-width:0;padding:22px 16px 14px;background:var(--sidebar);border-right:1px solid var(--border);backdrop-filter:blur(22px)}.brand-row{display:flex;align-items:center;gap:11px;padding:2px 8px 20px}.brand-mark{position:relative;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,#2679ff,#7147ed);box-shadow:0 8px 24px rgba(66,107,255,.28);overflow:hidden}.brand-mark span{position:absolute;width:3px;border-radius:9px;background:white;transform:rotate(24deg)}.brand-mark span:nth-child(1){height:13px;left:10px}.brand-mark span:nth-child(2){height:20px;left:16px}.brand-mark span:nth-child(3){height:10px;left:22px}.brand-name{font:700 16px/1.2 Manrope,sans-serif;letter-spacing:-.03em}.brand-name span{color:#7ea2ff}.brand-caption{color:var(--muted);font-size:12px;margin-top:3px}.icon-button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--muted);cursor:pointer;transition:.2s}.icon-button:hover{color:var(--text);background:var(--surface-hover);border-color:var(--border)}.icon-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.close-sidebar{display:none;margin-left:auto}.new-chat{display:flex;align-items:center;gap:10px;width:100%;padding:12px 13px;border:1px solid rgba(115,150,255,.35);border-radius:13px;background:linear-gradient(135deg,rgba(68,111,236,.19),rgba(101,72,223,.13));color:#eaf1ff;font:600 14px DM Sans;cursor:pointer;transition:.2s}.new-chat:hover{border-color:rgba(123,155,255,.65);transform:translateY(-1px);box-shadow:0 8px 28px rgba(36,74,171,.16)}.new-chat svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.new-chat span{margin-left:auto;color:var(--muted);font-size:11px;font-weight:500;border:1px solid var(--border);padding:2px 5px;border-radius:5px}.search-box{display:flex;align-items:center;gap:9px;margin:13px 0 17px;padding:9px 11px;background:rgba(255,255,255,.025);border:1px solid var(--border);border-radius:11px;transition:.2s}.search-box:focus-within{border-color:rgba(105,145,255,.5);box-shadow:0 0 0 3px rgba(80,123,244,.08)}.search-box svg{width:17px;height:17px;fill:none;stroke:var(--muted);stroke-width:1.8}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font:500 13px DM Sans}.search-box input::placeholder{color:var(--faint)}.history-heading{display:flex;justify-content:space-between;padding:0 8px 8px;color:var(--faint);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.history-heading span:last-child{font-weight:500;letter-spacing:0;text-transform:none}.history-list{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding-right:2px}.history-list::-webkit-scrollbar,.chat-scroll::-webkit-scrollbar{width:5px}.history-list::-webkit-scrollbar-thumb,.chat-scroll::-webkit-scrollbar-thumb{background:rgba(127,148,180,.2);border-radius:20px}.history-item{position:relative;display:flex;align-items:center;gap:9px;width:100%;padding:10px 10px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--muted);text-align:left;cursor:pointer;transition:.16s}.history-item:hover{background:rgba(255,255,255,.035);color:var(--text)}.history-item.active{background:var(--accent-soft);border-color:rgba(100,140,255,.16);color:#eaf1ff}.history-item>svg{flex:0 0 auto;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}.history-item .history-copy{min-width:0;flex:1}.history-item strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:600}.history-item small{display:block;margin-top:3px;color:var(--faint);font-size:11px}.sidebar-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}.profile-button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 7px;border:0;border-radius:12px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.profile-button:hover{background:var(--surface-hover)}.profile-orb{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,#334361,#1c2941);color:#9bb7ff;font:700 14px Manrope}.profile-button>span:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column}.profile-button strong{font-size:13px}.profile-button small{color:var(--muted);font-size:11px;margin-top:2px}.profile-button svg{width:18px;height:18px;fill:currentColor;color:var(--muted)}.main-panel{position:relative;min-width:0;height:100%;display:grid;grid-template-rows:70px minmax(0,1fr) auto;background:linear-gradient(180deg,rgba(8,14,26,.7),rgba(5,9,20,.92))}.topbar{display:flex;align-items:center;justify-content:space-between;padding:0 26px;border-bottom:1px solid var(--border);backdrop-filter:blur(16px);z-index:3}.topbar-left,.top-actions{display:flex;align-items:center;gap:5px}.menu-button{display:none}.conversation-title-wrap{margin-left:3px}.conversation-title{max-width:48vw;padding:0;border:0;background:transparent;color:var(--text);font:600 14px DM Sans;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.connection{display:flex;align-items:center;gap:6px;margin-top:4px;color:var(--muted);font-size:11px}.connection i{width:6px;height:6px;border-radius:50%;background:#43d9a3;box-shadow:0 0 10px rgba(67,217,163,.8)}.connection.busy i{background:#ffbc5e}.connection.error i{background:var(--danger)}.sun-icon{display:none}.chat-scroll{overflow-y:auto;scroll-behavior:smooth}.empty-state{width:min(790px,calc(100% - 40px));min-height:100%;margin:0 auto;padding:8vh 0 40px;display:flex;flex-direction:column;align-items:center;text-align:center;animation:fadeUp .55s ease}.ai-emblem{position:relative;width:78px;height:78px;display:grid;place-items:center;margin-bottom:23px}.emblem-core{width:43px;height:43px;border-radius:16px;background:radial-gradient(circle at 35% 30%,#b8ceff,#6594ff 40%,#704bec 95%);box-shadow:0 0 34px rgba(85,128,255,.4);transform:rotate(13deg);animation:float 4s ease-in-out infinite}.emblem-core:after{content:"✦";display:grid;place-items:center;height:100%;color:white;font-size:20px;transform:rotate(-13deg)}.orbit{position:absolute;inset:4px;border:1px solid rgba(118,151,255,.27);border-radius:28px;transform:rotate(36deg)}.orbit-b{inset:12px -2px;transform:rotate(-25deg);border-color:rgba(151,99,255,.24)}.eyebrow{margin:0 0 10px;color:#84a5ff;font-size:11px;font-weight:800;letter-spacing:.19em}.empty-state h1{margin:0;font:800 clamp(30px,5vw,49px)/1.12 Manrope,sans-serif;letter-spacing:-.055em}.empty-state h1 span{background:linear-gradient(90deg,#79a4ff,#9c74ff);-webkit-background-clip:text;background-clip:text;color:transparent}.empty-copy{max-width:510px;margin:16px auto 28px;color:var(--muted);font-size:15px;line-height:1.65}.suggestion-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}.suggestion-grid button{display:flex;align-items:center;gap:12px;min-height:78px;padding:14px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(145deg,rgba(19,30,49,.82),rgba(12,20,35,.82));color:var(--text);text-align:left;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.025);transition:.22s}.suggestion-grid button:hover{transform:translateY(-2px);border-color:rgba(113,148,242,.32);background:linear-gradient(145deg,rgba(26,40,64,.9),rgba(15,24,42,.9));box-shadow:0 14px 34px rgba(0,0,0,.14)}.suggestion-grid button>span:nth-child(2){display:flex;flex:1;flex-direction:column}.suggestion-grid strong{font-size:14px}.suggestion-grid small{margin-top:5px;color:var(--muted);font-size:12px}.suggestion-grid b{color:var(--faint);font-size:15px}.suggestion-icon{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border-radius:11px;font-size:16px}.suggestion-icon.blue{color:#84a8ff;background:rgba(61,115,255,.14)}.suggestion-icon.violet{color:#ad8aff;background:rgba(136,81,255,.13)}.suggestion-icon.cyan{color:#66d8ee;background:rgba(61,203,233,.12)}.suggestion-icon.green{color:#65dda9;background:rgba(52,203,139,.12)}.messages{display:none;width:min(860px,calc(100% - 44px));margin:0 auto;padding:36px 0 80px}.messages.active{display:block}.message{display:grid;grid-template-columns:36px minmax(0,1fr);gap:13px;margin-bottom:28px;animation:messageIn .32s ease}.message.user{grid-template-columns:minmax(0,1fr) 36px}.message.user .avatar{grid-column:2;background:linear-gradient(145deg,#415370,#24334c)}.message.user .message-body{grid-column:1;grid-row:1;text-align:right}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(145deg,#397cff,#7049ed);color:white;font:700 13px Manrope;box-shadow:0 7px 18px rgba(51,92,207,.2)}.message-body{min-width:0}.message-meta{display:flex;align-items:center;gap:8px;margin:2px 0 7px;color:var(--muted);font-size:11px}.message.user .message-meta{justify-content:flex-end}.message-meta strong{color:var(--text);font-size:13px}.message-content{display:inline-block;max-width:100%;color:#dce5f5;font-size:15px;line-height:1.72;text-align:left;overflow-wrap:anywhere}.message.user .message-content{max-width:min(680px,90%);padding:11px 15px;border:1px solid rgba(116,149,205,.14);border-radius:16px 5px 16px 16px;background:var(--surface-2);color:#eef4ff}.message-content p{margin:0 0 11px}.message-content p:last-child{margin-bottom:0}.message-content ul,.message-content ol{margin:8px 0;padding-left:22px}.message-content li{margin:5px 0}.message-content code{padding:2px 5px;border-radius:5px;background:rgba(105,134,181,.14);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.message-content pre{overflow-x:auto;margin:12px 0;padding:14px;border:1px solid var(--border);border-radius:12px;background:#050a13}.message-content pre code{padding:0;background:none}.message-actions{display:flex;gap:4px;margin-top:8px;opacity:0;transition:.2s}.message:hover .message-actions{opacity:1}.copy-message{display:flex;align-items:center;gap:5px;padding:5px 7px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:500 11px DM Sans;cursor:pointer}.copy-message:hover{color:var(--text);background:var(--surface-hover)}.copy-message svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.typing{display:flex;gap:5px;padding-top:9px}.typing i{width:6px;height:6px;border-radius:50%;background:#7d9ee7;animation:typing 1.1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.composer-zone{padding:0 24px 17px;background:linear-gradient(0deg,var(--bg) 55%,transparent);z-index:2}.composer{width:min(860px,100%);margin:0 auto;padding:13px 13px 10px 17px;border:1px solid rgba(121,149,197,.22);border-radius:19px;background:rgba(15,24,40,.92);box-shadow:0 20px 50px rgba(0,0,0,.26),inset 0 1px rgba(255,255,255,.035);backdrop-filter:blur(20px);transition:.2s}.composer:focus-within{border-color:rgba(109,147,255,.5);box-shadow:0 20px 50px rgba(0,0,0,.26),0 0 0 3px rgba(70,116,255,.07)}.composer textarea{display:block;width:100%;max-height:170px;resize:none;overflow-y:auto;border:0;outline:0;background:transparent;color:var(--text);font:400 15px/1.5 DM Sans}.composer textarea::placeholder{color:#64738a}.composer-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.composer-hint{display:flex;align-items:center;gap:6px;color:var(--faint);font-size:11px}.spark{color:#7ea3ff}.send-button{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:11px;background:linear-gradient(145deg,#588cff,#7458ef);color:white;cursor:pointer;box-shadow:0 7px 20px rgba(74,104,220,.28);transition:.2s}.send-button:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08)}.send-button:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.send-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}.privacy-note{margin:8px auto 0;color:var(--faint);font-size:11px;text-align:center}.toast{position:fixed;left:50%;bottom:112px;z-index:20;transform:translate(-50%,12px);padding:9px 13px;border:1px solid var(--border);border-radius:10px;background:#152137;color:#ecf3ff;font-size:12px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}.modal{width:min(430px,calc(100% - 28px));padding:0;border:1px solid var(--border);border-radius:20px;background:#0c1424;color:var(--text);box-shadow:var(--shadow)}.modal::backdrop{background:rgba(0,3,10,.68);backdrop-filter:blur(6px)}.modal form{padding:22px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between}.modal h2{margin:0;font:700 19px Manrope}.modal p{margin:5px 0 20px;color:var(--muted);font-size:13px}.storage-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.storage-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--accent-soft);color:#86a8ff}.storage-card div{display:flex;flex-direction:column}.storage-card strong{font-size:13px}.storage-card small{margin-top:4px;color:var(--muted);font-size:11px}.danger-action{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:12px;padding:12px 14px;border:1px solid rgba(255,109,122,.18);border-radius:12px;background:rgba(255,109,122,.07);color:#ff8d98;font:600 13px DM Sans;cursor:pointer}.danger-action:hover{background:rgba(255,109,122,.12)}.danger-action svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.sidebar-scrim{display:none}
body.light{color-scheme:light;--bg:#f4f7fc;--panel:rgba(250,252,255,.86);--sidebar:rgba(244,248,253,.94);--surface:#fff;--surface-2:#edf2fa;--surface-hover:#e8eef8;--text:#142035;--muted:#607089;--faint:#8290a3;--border:rgba(57,78,111,.13);--accent-soft:rgba(67,112,230,.09);--shadow:0 24px 80px rgba(38,54,83,.17)}body.light .main-panel{background:linear-gradient(180deg,rgba(250,252,255,.8),rgba(244,247,252,.95))}body.light .composer{background:rgba(255,255,255,.91)}body.light .message-content{color:#24344e}body.light .message.user .message-content{color:#1e2c43}body.light .moon-icon{display:none}body.light .sun-icon{display:block}body.light .suggestion-grid button{background:linear-gradient(145deg,#fff,#f7f9fd)}body.light .message-content pre{background:#eef2f8}body.light .modal{background:#fff}
@keyframes fadeUp{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:none}}@keyframes messageIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes float{50%{transform:rotate(13deg) translateY(-5px)}}@keyframes typing{0%,60%,100%{opacity:.32;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
@media(max-width:820px){.app-shell{display:block}.sidebar{position:fixed;inset:0 auto 0 0;width:min(310px,88vw);z-index:12;transform:translateX(-102%);transition:transform .28s ease;box-shadow:30px 0 70px rgba(0,0,0,.3)}.sidebar.open{transform:none}.sidebar-scrim{display:block;position:fixed;inset:0;z-index:11;background:rgba(0,4,12,.55);opacity:0;pointer-events:none;transition:.25s}.sidebar.open+.sidebar-scrim{opacity:1;pointer-events:auto}.close-sidebar,.menu-button{display:grid}.main-panel{height:100%}.topbar{padding:0 13px}.conversation-title{max-width:53vw}.messages{width:min(100% - 26px,860px);padding-top:24px}.composer-zone{padding:0 12px 10px}.privacy-note{font-size:10px}.new-chat span{display:none}}
@media(max-width:600px){.main-panel{grid-template-rows:62px minmax(0,1fr) auto}.empty-state{width:calc(100% - 26px);padding-top:5vh}.ai-emblem{margin-bottom:17px}.empty-state h1{font-size:31px;max-width:340px}.empty-copy{margin:13px auto 20px;font-size:14px}.suggestion-grid{grid-template-columns:1fr;gap:8px}.suggestion-grid button{min-height:64px;padding:11px 12px}.suggestion-grid button:nth-child(n+4){display:none}.message{grid-template-columns:31px minmax(0,1fr);gap:10px;margin-bottom:24px}.message.user{grid-template-columns:minmax(0,1fr) 31px}.avatar{width:31px;height:31px;border-radius:10px}.message-content{font-size:14px}.message.user .message-content{max-width:95%}.composer{border-radius:16px}.top-actions .icon-button:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Interface refinement */
html,body{width:100%;height:100%;height:100dvh;overscroll-behavior:none}.app-shell{position:fixed;inset:0;height:auto;min-height:0}.main-panel{height:100%;min-height:0}.sidebar{height:100%;min-height:0;padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(14px,env(safe-area-inset-bottom))}
[data-icon]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:1em;height:1em;font-style:normal}[data-icon] svg{display:block;width:100%;height:100%}.new-chat>[data-icon]{width:18px;height:18px}.search-box>[data-icon]{width:17px;height:17px;color:var(--muted)}.history-item>[data-icon]{width:17px;height:17px}.profile-button>[data-icon]{width:18px;height:18px}.suggestion-icon>[data-icon]{width:18px;height:18px}.suggestion-arrow{width:17px;height:17px;color:var(--faint);transition:transform .2s}.suggestion-grid button:hover .suggestion-arrow{transform:translate(2px,-2px)}.composer-hint [data-icon]{width:14px;height:14px}.storage-icon [data-icon]{width:19px;height:19px}.danger-action>[data-icon]{width:17px;height:17px}.copy-message>[data-icon]{width:14px;height:14px}.avatar>[data-icon]{width:16px;height:16px}.emblem-core>[data-icon]{width:20px;height:20px;color:#fff;transform:rotate(-13deg)}.emblem-core:after{display:none}
.history-item.active{background:linear-gradient(135deg,rgba(91,141,255,.17),rgba(123,89,239,.1));border-color:rgba(100,140,255,.3);color:var(--text)}.history-item.active small{color:var(--muted)}.new-chat{min-height:44px}.new-chat:disabled{opacity:.5}.conversation-title{font-weight:700}.chat-scroll{min-height:0;overscroll-behavior:contain}.empty-state{justify-content:center;min-height:calc(100% - 12px);padding:32px 0 44px}.empty-state h1{font-size:clamp(30px,4.25vw,46px)}.suggestion-grid{max-width:740px}.suggestion-grid button{min-width:0}.composer-zone{padding-bottom:max(14px,env(safe-area-inset-bottom))}.composer{padding:12px 12px 9px 16px}.composer textarea{min-height:25px}.privacy-note{line-height:1.35}
.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{color:var(--text);font-family:Manrope,sans-serif;letter-spacing:-.025em;line-height:1.3}.message-content h1{margin:28px 0 12px;font-size:1.65rem}.message-content h2{margin:26px 0 10px;font-size:1.4rem}.message-content h3{margin:23px 0 9px;font-size:1.2rem}.message-content h4{margin:20px 0 8px;font-size:1.05rem}.message-content h5,.message-content h6{margin:18px 0 7px;font-size:.95rem}.message-content>:first-child{margin-top:0}.message-content strong{font-weight:700;color:var(--text)}.message-content em{font-style:italic}.message-content del{color:var(--muted)}.message-content a{color:#7fa5ff;text-decoration:underline;text-decoration-color:rgba(127,165,255,.4);text-underline-offset:3px}.message-content a:hover{text-decoration-color:currentColor}.message-content hr{height:1px;margin:24px 0;border:0;background:var(--border)}.message-content blockquote{margin:16px 0;padding:11px 16px;border-left:3px solid var(--accent);border-radius:0 9px 9px 0;background:var(--accent-soft);color:var(--muted)}.message-content ul,.message-content ol{margin:12px 0;padding-left:24px}.message-content li{padding-left:3px;margin:7px 0}.message-content li::marker{color:#7ea2ff;font-weight:700}.message-content input[type="checkbox"]{margin:0 8px 0 0;accent-color:var(--accent)}.code-block{margin:16px 0;border:1px solid var(--border);border-radius:13px;overflow:hidden;background:#050a13}.code-label{padding:8px 13px;border-bottom:1px solid var(--border);color:#8fa0b8;background:rgba(255,255,255,.025);font:600 11px DM Sans;text-transform:uppercase;letter-spacing:.08em}.message-content .code-block pre{margin:0;border:0;border-radius:0;background:transparent}.table-wrap{max-width:100%;overflow-x:auto;margin:17px 0;border:1px solid var(--border);border-radius:12px}.message-content table{width:100%;border-collapse:collapse;font-size:.94em}.message-content th,.message-content td{padding:10px 12px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.message-content th{background:var(--accent-soft);color:var(--text);font-weight:700}.message-content th:last-child,.message-content td:last-child{border-right:0}.message-content tbody tr:last-child td{border-bottom:0}
body.light .history-item.active{background:linear-gradient(135deg,rgba(72,120,245,.12),rgba(122,83,232,.07));border-color:rgba(78,121,234,.24);color:#142035}body.light .new-chat{color:#294068;background:linear-gradient(135deg,rgba(80,128,255,.1),rgba(128,89,234,.06));border-color:rgba(78,124,240,.25)}body.light .new-chat:hover{color:#15243e}body.light .code-block{background:#f4f7fb}body.light .code-label{background:#eaf0f8}
@media(min-width:821px) and (max-width:1180px){:root{--sidebar-w:260px}.sidebar{padding-left:13px;padding-right:13px}.brand-name{font-size:15px}.new-chat{padding-inline:11px}.empty-state{width:min(700px,calc(100% - 36px))}.empty-state h1{font-size:clamp(30px,4vw,40px)}.suggestion-grid button{min-height:72px;padding:12px}.messages{width:min(760px,calc(100% - 36px))}.composer-zone{padding-inline:18px}.composer{width:min(760px,100%)}}
@media(max-width:820px){.sidebar{padding-top:max(18px,env(safe-area-inset-top))}.main-panel{height:100%;height:100dvh}.topbar{min-height:62px}.empty-state{justify-content:flex-start;padding-top:clamp(28px,7vh,70px)}.composer-zone{padding-bottom:max(10px,env(safe-area-inset-bottom))}}
@media(max-width:600px){.empty-state h1{font-size:29px}.empty-state .eyebrow{margin-bottom:8px}.empty-copy{line-height:1.55}.suggestion-grid button{min-height:62px}.message-content h1{font-size:1.4rem}.message-content h2{font-size:1.25rem}.message-content h3{font-size:1.12rem}.message-content blockquote{padding:10px 12px}.privacy-note{padding-inline:8px}}

.new-chat #newChatLabel{display:inline;flex:1;min-width:0;margin:0;padding:0;border:0;border-radius:0;color:inherit;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-chat .shortcut{flex:0 0 auto}.composer-tools{display:flex;align-items:center;gap:9px}.attach-button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:10px;background:transparent;color:var(--muted);cursor:pointer;transition:.2s}.attach-button:hover:not(:disabled){border-color:rgba(106,145,255,.42);background:var(--accent-soft);color:#82a5ff}.attach-button:disabled{opacity:.45;cursor:wait}.attach-button>[data-icon]{width:17px;height:17px}.attachment-tray{display:none;gap:8px;max-width:100%;overflow-x:auto;padding:1px 0 10px}.attachment-tray.active{display:flex}.attachment-chip{display:flex;align-items:center;gap:8px;flex:0 0 auto;max-width:260px;padding:7px 7px 7px 9px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.attachment-file-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:var(--accent-soft);color:#7da3ff}.attachment-file-icon>[data-icon]{width:15px;height:15px}.attachment-chip>span:nth-child(2){min-width:0;display:flex;flex-direction:column}.attachment-chip strong{max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.attachment-chip small{margin-top:2px;color:var(--muted);font-size:10px}.attachment-chip button{display:grid;place-items:center;width:25px;height:25px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.attachment-chip button:hover{background:rgba(255,109,122,.1);color:var(--danger)}.attachment-chip button>[data-icon]{width:14px;height:14px}.composer.dragging{border-color:#76a0ff;background:rgba(44,72,125,.28);box-shadow:0 0 0 4px rgba(80,123,244,.1)}.composer.reading-files:after{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(10,17,31,.12);pointer-events:none}.composer{position:relative}.message-file-list{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:7px;margin:0 0 9px}.message.user .message-file-list{justify-content:flex-end}.message-file-list>span{display:flex;align-items:center;gap:7px;max-width:280px;padding:7px 9px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.message-file-list [data-icon]{width:15px;height:15px;color:#7da3ff}.message-file-list b{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600}.message-file-list small{color:var(--muted);font-size:10px}
@media(max-width:820px){.new-chat #newChatLabel{display:inline}.new-chat .shortcut{display:none}}

.settings-page{min-height:100dvh;overflow:auto;background:var(--bg)}.settings-shell{position:relative;z-index:1;min-height:100dvh}.settings-topbar{height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(24px,env(safe-area-inset-left));border-bottom:1px solid var(--border);background:var(--sidebar);backdrop-filter:blur(20px)}.settings-back{display:flex;align-items:center;gap:7px;justify-self:start;color:var(--muted);font-size:14px;font-weight:600;text-decoration:none}.settings-back:hover{color:var(--text)}.settings-back [data-icon]{width:18px;height:18px}.settings-brand{grid-column:2;display:flex;align-items:center;gap:10px}.settings-brand .brand-mark{width:31px;height:31px;border-radius:10px}.settings-brand strong{font:700 15px Manrope}.settings-brand strong span{color:#7ea2ff}.settings-content{width:min(760px,calc(100% - 36px));margin:0 auto;padding:64px 0}.settings-intro{margin-bottom:30px}.settings-intro>p{margin:0 0 9px;color:#7ea2ff;font-size:11px;font-weight:800;letter-spacing:.16em}.settings-intro h1{margin:0;font:800 clamp(30px,5vw,43px)/1.15 Manrope;letter-spacing:-.045em}.settings-intro>span{display:block;margin-top:11px;color:var(--muted);font-size:15px;line-height:1.55}.settings-section{display:grid;grid-template-columns:42px 1fr;gap:15px;margin-bottom:14px;padding:22px;border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:0 16px 42px rgba(0,0,0,.08);backdrop-filter:blur(18px)}.settings-section-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--accent-soft);color:#7ea2ff}.settings-section-icon [data-icon]{width:20px;height:20px}.settings-section-body{min-width:0}.settings-section h2{margin:1px 0 5px;font:700 16px Manrope}.settings-section p{margin:0 0 18px;color:var(--muted);font-size:13px;line-height:1.5}.language-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.language-options label{position:relative;display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--surface);cursor:pointer;transition:.2s}.language-options label:hover{border-color:rgba(112,149,244,.35)}.language-options input{position:absolute;opacity:0;pointer-events:none}.language-options label>span{display:flex;flex:1;flex-direction:column}.language-options b{font-size:13px}.language-options small{margin-top:3px;color:var(--muted);font-size:11px}.language-options label>[data-icon]{width:18px;height:18px;color:var(--faint);opacity:.35}.language-options label:has(input:checked){border-color:rgba(104,145,255,.55);background:var(--accent-soft);box-shadow:0 0 0 3px rgba(79,124,242,.07)}.language-options label:has(input:checked)>[data-icon]{color:#6f9cff;opacity:1}.data-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0 1px;border-top:1px solid var(--border)}.data-row>div{display:flex;min-width:0;flex-direction:column}.data-row strong{font-size:13px}.data-row small{margin-top:4px;color:var(--muted);font-size:11px}.data-row button{display:flex;align-items:center;gap:7px;flex:0 0 auto;padding:9px 11px;border:1px solid rgba(255,109,122,.2);border-radius:10px;background:rgba(255,109,122,.07);color:var(--danger);font:600 12px DM Sans;cursor:pointer}.data-row button:hover:not(:disabled){background:rgba(255,109,122,.12)}.data-row button:disabled{opacity:.4;cursor:not-allowed}.data-row button [data-icon]{width:15px;height:15px}.saved-indicator{display:flex;align-items:center;justify-content:center;gap:7px;margin:22px 0;color:var(--faint);font-size:11px}.saved-indicator [data-icon]{width:14px;height:14px;color:#43d9a3}
body.light.settings-page{background:var(--bg)}body.light .settings-section{background:rgba(255,255,255,.78)}
@media(max-width:600px){.settings-topbar{height:64px;grid-template-columns:1fr auto;padding-inline:14px}.settings-brand{grid-column:2}.settings-brand strong{display:none}.settings-content{padding:38px 0}.settings-section{grid-template-columns:1fr;padding:17px}.settings-section-icon{width:38px;height:38px}.language-options{grid-template-columns:1fr}.data-row{align-items:flex-start;flex-direction:column}.data-row button{width:100%;justify-content:center}}

.generated-image{margin:16px 0 4px;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--surface)}.generated-image img{display:block;width:100%;max-height:560px;object-fit:contain;background:#070b13}.generated-image figcaption{display:flex;justify-content:flex-end;padding:10px}.generated-image a{display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:10px;background:var(--accent-soft);color:#8cafff;font-size:12px;font-weight:700;text-decoration:none}.generated-image a [data-icon]{width:15px;height:15px}.inline-image{margin:14px 0}.inline-image img{display:block;max-width:100%;border-radius:14px}.source-list{display:block;margin-top:17px;padding-top:14px;border-top:1px solid var(--border)}.source-list>strong{display:block;margin-bottom:8px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.source-list>div{display:flex;flex-wrap:wrap;gap:7px}.source-list a{display:flex;align-items:center;gap:7px;max-width:100%;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-size:11px;text-decoration:none}.source-list a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-list a [data-icon]{width:13px;height:13px;color:#7ea2ff}.weather-card{margin:2px 0 17px;padding:18px;border:1px solid rgba(116,153,255,.2);border-radius:18px;background:linear-gradient(145deg,rgba(59,105,213,.16),rgba(112,73,218,.08));box-shadow:inset 0 1px rgba(255,255,255,.04)}.weather-current{display:flex;align-items:center;justify-content:space-between}.weather-current>div{display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:10px}.weather-current span{grid-column:1/-1;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.weather-current strong{font:800 42px Manrope}.weather-current b{font-size:13px}.weather-current>[data-icon]{width:48px;height:48px;color:#89adff}.weather-details{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0}.weather-details span{padding:6px 8px;border-radius:8px;background:rgba(255,255,255,.05);color:var(--muted);font-size:11px}.weather-details b{color:var(--text)}.forecast-title{margin:14px 0 8px;color:var(--muted);font-size:11px;font-weight:700}.forecast-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.forecast-row>div{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:10px;background:rgba(255,255,255,.035);font-size:11px}.forecast-row [data-icon]{width:17px;height:17px;color:#86aaff}.forecast-row small{color:var(--muted)}.visual-chart{margin:15px 0;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.visual-chart figcaption{margin-bottom:16px;font:700 14px Manrope}.visual-chart svg{display:block;width:100%;overflow:visible}.visual-chart svg text{fill:var(--text);font:10px DM Sans;text-anchor:middle}.visual-chart svg .axis-label{fill:var(--muted)}.chart-axis{fill:none;stroke:var(--border);stroke-width:2}.chart-line{fill:none;stroke:#759dff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.visual-chart circle{fill:#855cff;stroke:var(--surface);stroke-width:3}.bar-chart{height:220px;display:flex;align-items:flex-end;gap:8px;padding-top:18px}.bar-item{position:relative;display:flex;flex:1;min-width:0;height:100%;flex-direction:column;justify-content:flex-end;align-items:center}.bar-item>div{width:min(42px,70%);min-height:5px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#7ca7ff,#7857eb)}.bar-item span{position:absolute;top:auto;bottom:calc(var(--bar-height,0) + 8px);font-size:10px}.bar-item b{margin-top:7px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px}.location-button{border-color:rgba(103,146,255,.23)!important;background:var(--accent-soft)!important;color:#7ea2ff!important}.location-button.enabled{border-color:rgba(67,217,163,.25)!important;background:rgba(67,217,163,.08)!important;color:#43d9a3!important}
@media(max-width:600px){.forecast-row{gap:3px}.forecast-row>div{padding:7px 1px}.weather-card{padding:14px}.bar-chart{height:190px}.source-list>div{display:grid}.source-list a{width:100%}}
.account-settings-row{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding-top:13px;border-top:1px solid var(--border)}.account-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,#3e78ef,#714bea);color:white;font:800 15px Manrope}.account-settings-row>div:nth-child(2){display:flex;min-width:0;flex-direction:column}.account-settings-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.account-settings-row small{margin-top:3px;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:11px}.account-settings-row button{display:flex;align-items:center;gap:7px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font:600 12px DM Sans;cursor:pointer}.account-settings-row button:hover{border-color:rgba(112,149,244,.38)}.account-settings-row button [data-icon]{width:15px;height:15px;color:var(--muted)}@media(max-width:600px){.account-settings-row{grid-template-columns:42px 1fr}.account-settings-row button{grid-column:1/-1;justify-content:center}}
.sidebar{animation:shellSlide .55s cubic-bezier(.22,1,.36,1) both}.topbar{animation:topDrop .5s .05s cubic-bezier(.22,1,.36,1) both}.composer{animation:composerRise .55s .15s cubic-bezier(.22,1,.36,1) both}.ambient-one{animation:ambientDrift 12s ease-in-out infinite}.ambient-two{animation:ambientDrift 14s 1.5s ease-in-out infinite reverse}.suggestion-grid button{animation:suggestionIn .46s cubic-bezier(.22,1,.36,1) both}.suggestion-grid button:nth-child(2){animation-delay:.07s}.suggestion-grid button:nth-child(3){animation-delay:.14s}.suggestion-grid button:nth-child(4){animation-delay:.21s}.suggestion-grid button:hover .suggestion-icon{transform:scale(1.08) rotate(-3deg)}.suggestion-icon{transition:transform .22s ease}.settings-section{animation:settingsRise .5s cubic-bezier(.22,1,.36,1) both}.settings-section:nth-of-type(2){animation-delay:.06s}.settings-section:nth-of-type(3){animation-delay:.12s}.settings-section:nth-of-type(4){animation-delay:.18s}.attachment-chip{animation:chipIn .25s cubic-bezier(.22,1,.36,1) both}.generated-image img{animation:imageReveal .5s ease both}
@keyframes shellSlide{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}@keyframes topDrop{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@keyframes composerRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes ambientDrift{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(22px,-16px,0) scale(1.08)}}@keyframes suggestionIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@keyframes settingsRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes chipIn{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}@keyframes imageReveal{from{opacity:0;filter:blur(8px)}to{opacity:1;filter:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
.suggestion-icon.orange{color:#ffb86a;background:rgba(255,166,77,.12)}.suggestion-icon.pink{color:#ff91c8;background:rgba(255,95,168,.12)}.suggestion-icon.indigo{color:#9b9cff;background:rgba(105,103,255,.13)}.suggestion-grid button:nth-child(5){animation-delay:.28s}.suggestion-grid button:nth-child(6){animation-delay:.35s}.suggestion-grid button:nth-child(7){animation-delay:.42s}
.visual-map,.periodic-card,.model-card,.atom-card,.web-image-gallery{margin:17px 0;padding:14px;border:1px solid var(--border);border-radius:17px;background:linear-gradient(145deg,var(--surface),rgba(18,29,49,.72));overflow:hidden}.visual-map figcaption,.periodic-card figcaption,.model-card figcaption,.atom-card figcaption,.web-image-gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.visual-map figcaption span,.periodic-card figcaption span,.model-card figcaption span,.atom-card figcaption span,.web-image-gallery figcaption{display:flex;align-items:center;gap:8px}.visual-map figcaption [data-icon],.periodic-card figcaption [data-icon],.model-card figcaption [data-icon],.atom-card figcaption [data-icon],.web-image-gallery figcaption [data-icon]{width:17px;height:17px;color:#7ea2ff}.visual-map figcaption b,.periodic-card figcaption b,.model-card figcaption b,.atom-card figcaption b,.web-image-gallery figcaption b{font:700 14px Manrope}.visual-map figcaption a{display:flex;align-items:center;gap:6px;color:#83a8ff;font-size:11px;text-decoration:none}.visual-map iframe{display:block;width:100%;height:360px;border:0;border-radius:12px;background:#d9e1ea}.visual-map>small,.periodic-card figcaption>small,.model-card figcaption>small,.atom-card figcaption>small{display:block;color:var(--muted);font-size:11px}.visual-map>small{margin-top:9px}
.web-image-gallery>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.web-image-card{position:relative;min-width:0;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:#070b13;color:#fff;text-decoration:none}.web-image-card img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.web-image-card:hover img{transform:scale(1.045)}.web-image-card>span{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;padding:24px 9px 8px;background:linear-gradient(transparent,rgba(3,6,12,.88))}.web-image-card b,.web-image-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.web-image-card b{font-size:11px}.web-image-card small{margin-top:2px;color:#c1cada;font-size:9px}
.periodic-scroll{overflow-x:auto;padding-bottom:6px}.periodic-grid{display:grid;grid-template-columns:repeat(18,42px);grid-template-rows:repeat(9,48px);gap:4px;width:max-content;min-width:100%}.periodic-element,.element-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:2px;border:1px solid rgba(108,146,234,.2);border-radius:7px;background:rgba(76,122,232,.1);color:var(--text);cursor:pointer;transition:.18s}.periodic-element small{color:var(--muted);font-size:8px;line-height:1}.periodic-element b{margin-top:2px;font:700 14px Manrope}.periodic-element:hover,.periodic-element.selected,.periodic-element.highlighted{z-index:1;transform:translateY(-2px) scale(1.06);border-color:#7ea2ff;box-shadow:0 7px 18px rgba(54,95,200,.23)}.periodic-element.noble{background:rgba(130,91,232,.15)}.periodic-element.halogen{background:rgba(44,190,183,.13)}.periodic-element.nonmetal{background:rgba(65,173,110,.13)}.periodic-element.inner{background:rgba(231,135,67,.13)}.element-placeholder{color:var(--muted);font-size:9px;cursor:default}.element-detail{display:flex;align-items:center;gap:11px;margin-top:11px;padding:10px;border-top:1px solid var(--border)}.element-detail>span{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:var(--accent-soft);color:#8fb0ff;font:800 18px Manrope}.element-detail>div{display:flex;flex-direction:column}.element-detail b{font-size:12px}.element-detail small{margin-top:2px;color:var(--muted);font-size:10px}
.model-card model-viewer{display:block;width:100%;height:390px;border-radius:13px;background:radial-gradient(circle at 50% 45%,rgba(96,133,224,.18),transparent 55%),#080e19}.model-loading{display:grid;place-items:center;height:100%;color:var(--muted);font-size:12px}.atom-stage{--rx:-16deg;--ry:24deg;display:grid;place-items:center;height:360px;border-radius:13px;background:radial-gradient(circle,rgba(82,124,223,.16),transparent 58%),#070d18;perspective:900px;cursor:grab;touch-action:none}.atom-stage:active{cursor:grabbing}.atom-object{position:relative;width:250px;height:250px;transform-style:preserve-3d;transform:rotateX(var(--rx)) rotateY(var(--ry));transition:transform .08s linear}.nucleus{position:absolute;left:50%;top:50%;width:74px;height:74px;transform:translate(-50%,-50%);transform-style:preserve-3d;animation:nucleusFloat 3s ease-in-out infinite}.nucleus i{position:absolute;width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#c8d9ff,#5f86ef 55%,#3a45a0);box-shadow:0 5px 18px rgba(71,104,221,.3)}.nucleus i:nth-child(2){transform:translate3d(31px,6px,8px);background:radial-gradient(circle at 30% 25%,#ffd0e0,#d04f89 58%,#752f68)}.nucleus i:nth-child(3){transform:translate3d(12px,30px,-8px)}.nucleus i:nth-child(4){transform:translate3d(-17px,23px,11px);background:radial-gradient(circle at 30% 25%,#ffd0e0,#d04f89 58%,#752f68)}.electron-orbit{position:absolute;inset:19px;border:1px solid rgba(132,166,255,.42);border-radius:50%;transform-style:preserve-3d}.orbit-x{animation:atomSpin 8s linear infinite}.orbit-y{transform:rotateX(66deg) rotateZ(28deg)}.orbit-z{transform:rotateY(68deg) rotateZ(-25deg)}.electron{position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-4px;border-radius:50%;background:#8feaff;box-shadow:0 0 12px #68d9ff;transform:rotate(calc(360deg / var(--count) * var(--i))) translateX(106px)}.atom-card>p{margin:11px 2px 1px;color:var(--muted);font-size:11px}
@keyframes atomSpin{to{transform:rotateZ(360deg)}}@keyframes nucleusFloat{50%{transform:translate(-50%,-54%) scale(1.04)}}
@media(max-width:700px){.web-image-gallery>div{grid-template-columns:1fr 1fr}.visual-map iframe{height:300px}.model-card model-viewer,.atom-stage{height:310px}.periodic-grid{grid-template-columns:repeat(18,38px);grid-template-rows:repeat(9,44px)}}

/* Visual+ interactive surfaces */
.messages,.composer{width:min(1120px,calc(100% - 44px))}.message.assistant .message-content{display:block;width:100%}.message.assistant .message-body{width:100%;min-width:0}.visual-card,.web-image-gallery{width:100%;margin:18px 0;padding:20px;border:1px solid var(--border);border-radius:22px;background:linear-gradient(145deg,rgba(19,30,49,.94),rgba(10,17,30,.94));box-shadow:0 18px 48px rgba(0,0,0,.15),inset 0 1px rgba(255,255,255,.04);overflow:hidden}.visual-card figcaption,.web-image-gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 18px}.visual-card figcaption>span:first-child,.visual-actions{display:flex;align-items:center;gap:9px;min-width:0}.visual-card figcaption b{overflow:hidden;text-overflow:ellipsis;color:var(--text);font:750 17px/1.35 Manrope,sans-serif;white-space:nowrap}.visual-card figcaption [data-icon]{width:20px;height:20px;color:#7da3ff}.visual-badge{flex:0 0 auto;padding:5px 8px;border:1px solid rgba(115,151,255,.24);border-radius:999px;background:rgba(91,141,255,.1);color:#8eafff;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.visual-actions small{color:var(--muted);font-size:11px}.visual-caption{margin:13px 1px 0!important;color:var(--muted);font-size:12px;line-height:1.5}.visual-chart{position:relative}.chart-toolbar{display:flex;width:max-content;margin:0 0 14px;padding:3px;border:1px solid var(--border);border-radius:10px;background:rgba(255,255,255,.025)}.chart-toolbar button{min-width:70px;padding:7px 11px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:650 12px DM Sans;cursor:pointer;transition:.18s}.chart-toolbar button.active{background:var(--surface-hover);color:var(--text);box-shadow:0 2px 8px rgba(0,0,0,.12)}.chart-canvas{position:relative;min-height:290px;padding:12px 12px 4px;border:1px solid var(--border);border-radius:17px;background:rgba(255,255,255,.018)}.chart-view{display:none;height:260px}.chart-view.active{display:block;animation:chartReveal .28s ease}.chart-view svg{display:block;width:100%;height:100%;overflow:visible}.chart-grid{fill:none;stroke:var(--border);stroke-width:1;stroke-dasharray:4 7}.chart-axis{stroke:rgba(133,151,180,.35)}.chart-line{stroke-width:5;filter:drop-shadow(0 5px 10px rgba(88,130,255,.22))}.chart-point{cursor:pointer;outline:none}.chart-point circle{transition:r .18s,filter .18s}.chart-point:hover circle,.chart-point:focus circle{r:9;filter:drop-shadow(0 0 7px #7758ff)}.chart-value{font-weight:700!important}.bar-chart{height:250px;padding:22px 4px 0}.bar-item{cursor:pointer;outline:none}.bar-item>div{width:min(58px,68%);background:linear-gradient(180deg,#77a5ff,#7353ec);box-shadow:0 9px 22px rgba(84,104,225,.18);transition:filter .18s,transform .18s}.bar-item:hover>div,.bar-item:focus>div{filter:brightness(1.15);transform:scaleX(1.06)}.bar-item span{font-weight:700}.chart-tooltip{position:absolute;top:10px;right:12px;padding:7px 10px;border:1px solid rgba(121,157,255,.25);border-radius:9px;background:var(--surface-2);color:var(--text);font-size:11px;opacity:0;transform:translateY(-4px);transition:.18s;pointer-events:none}.chart-tooltip.show{opacity:1;transform:none}.weather-provider{margin-top:10px;color:var(--faint);font-size:10px;text-align:right}.periodic-card,.model-card,.atom-card,.visual-map{padding:20px}.periodic-scroll,.visual-map iframe,.model-card model-viewer,.atom-stage{border:1px solid var(--border)}.element-detail{margin-top:14px;padding:13px 3px 0}.visual-map figcaption a{padding:7px 9px;border-radius:9px;background:var(--accent-soft);font-weight:700}.table-wrap{margin:15px 0;border-radius:16px;box-shadow:0 12px 34px rgba(0,0,0,.09)}
body.light .visual-card,body.light .web-image-gallery{background:linear-gradient(145deg,#fff,#f7f9fd);box-shadow:0 18px 48px rgba(38,54,83,.1)}body.light .chart-canvas{background:#fbfcff}body.light .chart-toolbar{background:#f5f7fb}
@keyframes chartReveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:820px){.messages,.composer{width:min(100% - 26px,1120px)}.visual-card,.web-image-gallery{padding:16px;border-radius:18px}.chart-canvas{min-height:250px;padding:7px 4px 0}.chart-view{height:230px}}
@media(max-width:600px){.messages,.composer{width:calc(100% - 22px)}.messages{padding-bottom:40px}.visual-card,.web-image-gallery{margin:14px 0;padding:13px;border-radius:16px}.visual-card figcaption{align-items:flex-start;margin-bottom:13px}.visual-card figcaption b{font-size:14px;white-space:normal}.visual-actions small{display:none}.visual-badge{padding:4px 6px;font-size:9px}.chart-toolbar{margin-bottom:10px}.chart-toolbar button{min-width:62px;padding:6px 9px}.chart-canvas{min-height:220px}.chart-view{height:205px}.visual-chart svg text{font-size:8px}.chart-value{font-size:9px!important}.bar-chart{height:198px}.bar-item>div{width:min(36px,72%)}.visual-map iframe{height:260px}.periodic-card,.model-card,.atom-card,.visual-map{padding:13px}}

/* Clearer periodic-table details */
.periodic-legend{display:flex;flex-wrap:wrap;gap:7px;margin:-3px 0 14px}.periodic-legend span{display:flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:10px}.periodic-legend span:before{content:"";width:8px;height:8px;border-radius:3px;background:rgba(76,122,232,.28)}.periodic-legend .nonmetal:before{background:rgba(65,173,110,.55)}.periodic-legend .alkali:before{background:rgba(238,89,111,.55)}.periodic-legend .transition:before{background:rgba(76,122,232,.55)}.periodic-legend .metalloid:before{background:rgba(224,177,72,.6)}.periodic-legend .halogen:before{background:rgba(44,190,183,.58)}.periodic-legend .noble:before{background:rgba(130,91,232,.58)}.periodic-legend .inner:before{background:rgba(231,135,67,.58)}.periodic-grid{grid-template-columns:repeat(18,49px);grid-template-rows:repeat(9,57px);gap:5px}.periodic-element,.element-placeholder{border-radius:9px}.periodic-element{padding:4px 2px}.periodic-element small{font-size:8px}.periodic-element b{margin-top:2px;font-size:15px}.periodic-element em{display:block;width:100%;margin-top:2px;overflow:hidden;color:var(--muted);font-size:6px;font-style:normal;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.periodic-element.alkali{background:rgba(238,89,111,.13)}.periodic-element.alkaline{background:rgba(244,151,69,.13)}.periodic-element.metalloid{background:rgba(224,177,72,.14)}.element-detail{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;align-items:center;margin-top:16px;padding:15px;border:1px solid var(--border);border-radius:14px;background:rgba(255,255,255,.025)}.element-detail>span{width:58px;height:58px;border-radius:13px;font-size:23px}.element-detail>div{display:block}.element-detail b{display:block;color:var(--text);font:750 16px Manrope}.element-detail b small{color:var(--muted);font:600 12px DM Sans}.element-detail p{margin:5px 0 0!important;color:var(--muted);font-size:12px;line-height:1.4}.element-detail p strong{color:var(--text)}body.light .element-detail{background:#f7f9fd}
@media(max-width:700px){.periodic-grid{grid-template-columns:repeat(18,44px);grid-template-rows:repeat(9,53px)}.periodic-legend{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.periodic-legend span{flex:0 0 auto}.element-detail{grid-template-columns:50px minmax(0,1fr);padding:12px}.element-detail>span{width:50px;height:50px;font-size:20px}}


/* Active AI version belongs to the conversation workspace. */
.main-panel{grid-template-rows:70px auto minmax(0,1fr) auto}
.ai-model-strip{display:flex;align-items:center;justify-content:center;gap:7px;min-height:35px;padding:5px 12px;border-bottom:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:12px;line-height:1.4}
.ai-model-strip strong{color:var(--text);font:700 12px/1.4 Manrope,sans-serif}
body.light .ai-model-strip{background:rgba(255,255,255,.75)}
@media(max-width:820px){.main-panel{grid-template-rows:62px auto minmax(0,1fr) auto}.sidebar{animation:none;transform:translateX(-105%);transition:transform .3s cubic-bezier(.22,1,.36,1);will-change:transform}.sidebar.open{transform:translateX(0)}}
/* Feedback for the controls and content that change on interaction. */
.history-item{transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;animation:historyAppear .3s ease backwards}
.history-item:hover{transform:translateX(3px)}
.new-chat,.profile-button,.icon-button,.attach-button,.send-button,.suggestion-grid button,.settings-section button{transition:transform .22s cubic-bezier(.22,1,.36,1),background-color .22s ease,border-color .22s ease,box-shadow .22s ease,opacity .22s ease}
.new-chat:active,.profile-button:active,.icon-button:active,.attach-button:active,.send-button:active,.suggestion-grid button:active,.settings-section button:active{transform:scale(.96)}
.suggestion-grid button:hover,.profile-button:hover{transform:translateY(-2px)}
.message{animation:messageIn .36s cubic-bezier(.22,1,.36,1) both}
.ai-model-strip{animation:modelAppear .35s ease both}
@keyframes historyAppear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes modelAppear{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.sidebar,.history-item,.new-chat,.profile-button,.icon-button,.attach-button,.send-button,.suggestion-grid button,.settings-section button,.message,.ai-model-strip{animation:none!important;transition:none!important}.history-item:hover,.suggestion-grid button:hover,.profile-button:hover{transform:none}}
