/* Lucid's appearance tokens are shared by every surface. */
:root{--paper:#f5f5f7;--panel:#fff;--ink:#1d1d1f;--muted:#6e6e73;--line:#dedee3;--accent:#0066cc;--soft:#e8f1fc;--sidebar:#ededf0;--sidebar-text:#6e6e73;--green:#31936b;--radius:22px;--shadow:0 12px 40px #00000006;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;color-scheme:light}
body{background:var(--paper);color:var(--ink)}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.app-shell{min-height:0;height:100dvh}.sidebar{width:248px;padding:30px 18px 20px;background:var(--sidebar);color:var(--muted);border-right:1px solid var(--line)}.brand{color:var(--ink);padding:0 12px 35px;gap:8px}.brand img{filter:none;width:26px}.brand>span{font-size:30px;letter-spacing:-1.7px}.brand-dot{color:var(--accent)}.brand small{color:var(--muted);border-color:var(--line);font-size:9px}.new-chat{background:var(--panel);color:var(--ink);border-color:var(--line);padding:13px 12px;border-radius:12px;box-shadow:0 2px 4px #00000003;font-size:12px}.new-chat kbd{color:var(--muted)}.new-chat:hover,.nav-item:hover,.history-list button:hover,.history-list button.current{background:var(--soft);color:var(--ink)}.nav-group{margin-top:32px}.section-label{color:var(--muted);letter-spacing:1.3px;font-size:9px}.nav-item{color:var(--muted);padding:12px;font-size:12px;border-radius:10px;text-decoration:none}.nav-item.active{background:var(--panel);color:var(--ink)}.nav-symbol,.count{color:var(--muted)}.history-list button,.empty-history{color:var(--muted);font-size:12px}.local-card{border-color:var(--line)}.local-card strong,.profile{color:var(--ink)}.local-card p,.profile small,.profile-gear{color:var(--muted)}.avatar{background:var(--panel);border-color:var(--line);color:var(--ink);font-family:inherit}.topbar{height:76px;border:0;padding:0 36px}.top-left,.top-actions{font-size:12px;gap:13px}.breadcrumb,.crumb-divider{color:var(--muted)}.model-tag{background:var(--panel);border-color:var(--line);color:var(--muted);border-radius:20px;padding:8px 12px}.icon-button{height:40px;width:40px;color:var(--muted);border-radius:12px}.icon-button:hover{background:var(--soft)}.appearance-button{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:20px;padding:9px 14px;font-size:12px;white-space:nowrap}.appearance-button:hover{background:var(--soft)}.scroll-area{padding:16px 40px;min-height:0}.welcome{max-width:790px;text-align:center;margin:clamp(25px,8vh,95px) auto 30px}.welcome .eyebrow{justify-content:center;font-size:10px;letter-spacing:2.6px;color:var(--muted)}.tiny-star{color:var(--accent)}h1{font-family:inherit;font-size:clamp(42px,4.7vw,70px);font-weight:650;letter-spacing:-3.2px;line-height:1.08;margin:25px 0 22px}h1 em{font-style:normal;font-weight:650;letter-spacing:inherit;color:var(--accent)}.welcome>p{color:var(--muted);font-size:15px;line-height:1.7}.suggestions{gap:14px;margin-top:38px}.suggestions button{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:23px 21px;min-height:145px;box-shadow:0 2px 5px #00000002}.suggestions button:hover{border-color:var(--accent);box-shadow:var(--shadow)}.suggestion-icon{color:var(--accent);font-size:25px;margin-bottom:21px}.suggestions strong{font-size:13px;font-weight:600;margin-bottom:9px}.suggestions button>span:last-child{font-size:11px;color:var(--muted)}.suggestions b{color:var(--muted)}.welcome-note{justify-content:center;color:var(--muted);font-size:11px;margin-top:25px}.welcome-note>span{color:var(--muted)}.welcome-note button{background:var(--soft);color:var(--accent)}.composer-area{max-width:870px;padding:18px 36px 24px}.composer{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--soft)}.composer textarea{font-size:16px;color:var(--ink);min-height:45px}.composer textarea::placeholder{color:var(--muted)}.mode-button{font-size:11px;color:var(--muted);border-radius:20px;min-height:36px;padding:8px 11px}.mode-button.selected,.mode-button:hover{background:var(--soft);color:var(--accent)}.send-button,.stop-button{width:40px;height:40px;border-radius:50%;background:var(--accent);color:white;box-shadow:none}.send-button:hover{background:var(--accent);filter:brightness(.9)}.enter-hint,.composer-footer,.composer-footer button{color:var(--muted)}.composer-footer{font-size:10px;gap:10px}.messages{max-width:790px}.message{margin-bottom:32px}.message-avatar{background:var(--soft);border-color:var(--line);color:var(--accent);border-radius:10px;width:32px;height:32px}.message.user .message-avatar{background:var(--panel);color:var(--muted);font:11px inherit}.message-label{font-size:12px}.message-label small{color:var(--muted)}.message-content,.message.user .message-content{color:var(--ink);font-size:15px;line-height:1.8}.message-content h3{color:var(--ink)}.message-content a{color:var(--accent)}.message-content code{background:var(--soft);font-size:13px}.message-content pre{background:#171a22;color:#edf0f8;border-radius:16px}.message-tools button{color:var(--muted);min-height:34px}.message-tools button:hover{background:var(--soft);border-color:var(--line);color:var(--ink)}.working{color:var(--muted)}.activity{background:var(--panel);border-color:var(--line);border-radius:12px}.activity summary,.activity ol,.activity time,.activity-hint{color:var(--muted)}dialog{background:var(--panel);border-color:var(--line);border-radius:26px;padding:28px;color:var(--ink)}dialog::backdrop{background:#15151c50;backdrop-filter:blur(10px)}.dialog-heading h2{font-family:inherit;font-size:28px;font-weight:600;letter-spacing:-1px}.eyebrow{color:var(--muted)}.setting-row p,.setting-grid label,.setting-grid small,.dialog-footnote,.dialog-intro{color:var(--muted)}.setting-row strong{font-size:13px}.setting-row p{font-size:12px}.setting-grid input,.memory-form input,.command-search{background:var(--paper);border-color:var(--line);color:var(--ink);font-size:16px}.switch:checked,.primary-button{background:var(--accent)}.primary-button{font-size:13px;min-height:44px;border-radius:12px}.primary-button:hover{background:var(--accent);filter:brightness(.92)}.command-list button{border-color:var(--line)}.command-list code{color:var(--accent)}.command-list span{color:var(--muted)}.command-list button:hover,.memory-row button{background:var(--soft)}.memory-row button{color:var(--accent)}.hosting-banner{background:var(--panel);border-color:var(--line);color:var(--muted);font-size:11px;padding:12px 36px;line-height:1.5}.hosting-banner strong{color:var(--ink)}.toast{background:var(--ink);color:var(--panel);z-index:30}.appearance-dialog{width:min(560px,calc(100% - 24px))}.appearance-intro{font-size:13px;color:var(--muted);line-height:1.6;margin-top:-8px}.theme-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.theme-preset{border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:12px;text-align:left;font-size:12px}.theme-preset[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}.theme-preview{height:46px;display:flex;align-items:center;justify-content:center;border-radius:8px;margin-bottom:10px;background:var(--swatch-bg);color:var(--swatch-accent);font-size:23px}.theme-label{font-size:13px;font-weight:600;display:block;margin-bottom:9px}.theme-prompt{width:100%;min-height:86px;resize:vertical;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:12px;padding:12px;font-size:16px;line-height:1.5}.theme-examples{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 16px}.theme-examples button{border:1px solid var(--line);background:var(--panel);border-radius:20px;padding:8px 10px;font-size:11px;color:var(--muted)}.appearance-options{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0}.appearance-options label{display:flex;align-items:center;gap:9px;font-size:12px}.appearance-options input[type=color]{width:36px;height:36px;padding:3px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.theme-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.theme-reset{border:0;background:transparent;color:var(--muted);font-size:12px;min-height:44px}.theme-feedback{font-size:12px;line-height:1.6;color:var(--muted);margin:14px 0 0;min-height:20px}.sidebar-scrim{display:none}.pending .message-content:after{content:'▍';color:var(--accent)}:root[data-density=compact] .suggestions button{padding:15px;min-height:115px}:root[data-density=compact] .message{margin-bottom:18px}:root[data-density=compact] .welcome{margin-top:24px}
@media(min-width:1600px){.welcome{margin-top:100px}}@media(max-width:1100px){.sidebar{width:220px}.topbar{padding:0 24px}.scroll-area{padding:16px 24px}.suggestions button{padding:18px 14px}.suggestions strong{font-size:12px}.suggestions button>span:last-child{font-size:10px}.composer-area{padding-left:24px;padding-right:24px}}
@media(max-width:800px){.sidebar{width:270px;z-index:21;inset:0 auto 0 0;height:100dvh;padding-top:24px;box-shadow:none}.sidebar.open{box-shadow:20px 0 60px #0002}.sidebar-scrim:not([hidden]){display:block;position:fixed;inset:0;background:#15151c55;backdrop-filter:blur(3px);border:0;z-index:20}.topbar{height:65px;padding:0 16px}.top-left{gap:8px}.top-left strong{max-width:180px}.model-tag{display:none}.welcome{margin-top:40px}.scroll-area{padding:12px 22px}.composer-area{padding:12px 20px max(16px,env(safe-area-inset-bottom))}.hosting-banner{padding:10px 20px}.appearance-button{padding:9px 12px}.app-shell{min-height:0}.sidebar .nav-item{min-height:44px}.theme-examples button{min-height:36px}}
@media(max-width:500px){.topbar{padding:0 12px}.top-actions{gap:2px}.top-left strong{max-width:135px;font-size:11px}.appearance-button{font-size:11px;padding:9px 10px}.scroll-area{padding:12px 20px}.welcome{margin-top:27px;margin-bottom:20px}h1{font-size:42px;letter-spacing:-2px;margin:22px 0 18px}.welcome>p{font-size:13px}.welcome .eyebrow{font-size:9px;letter-spacing:2px}.suggestions{margin-top:26px;gap:9px}.suggestions button{border-radius:16px;padding:15px;grid-template-columns:30px 1fr;min-height:74px}.suggestion-icon{margin:0;font-size:23px}.suggestions strong{font-size:12px}.suggestions button>span:last-child{font-size:11px}.welcome-note{font-size:10px;margin-top:18px}.composer-area{padding-left:12px;padding-right:12px}.composer{padding:15px;border-radius:20px}.composer textarea{font-size:16px}.mode-button{padding:7px 9px;min-height:40px}.composer-footer{font-size:9px;padding:0 5px}.composer-footer>span:nth-child(2){display:none}.message-content{font-size:14px}.theme-presets{gap:8px}.theme-preset{padding:9px;font-size:11px}.appearance-options{gap:8px}dialog{padding:23px}.hosting-banner{font-size:10px}.command-list code{min-width:105px}.memory-form{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.send-button,.stop-button,.primary-button{color:var(--on-accent,#fff)}
/* Liquid glass: static ambient light keeps scrolling smooth on phones. */
body::before{content:'';position:fixed;inset:0;pointer-events:none;opacity:var(--glass-opacity,0);background:radial-gradient(ellipse at 78% 15%,color-mix(in srgb,var(--accent) 24%,transparent),transparent 48%),radial-gradient(ellipse at 28% 80%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 48%),radial-gradient(ellipse at 90% 90%,color-mix(in srgb,var(--soft) 90%,transparent),transparent 50%)}
.app-shell{position:relative;isolation:isolate}
:root[data-glass=on] :is(.suggestions button,.composer,.appearance-button,.model-tag,.new-chat,dialog,.activity){background:linear-gradient(135deg,rgb(255 255 255 / var(--glass-highlight)),transparent 42%,rgb(255 255 255 / calc(var(--glass-highlight)*.3))),color-mix(in srgb,var(--panel) var(--glass-surface),transparent);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%);backdrop-filter:blur(var(--glass-blur)) saturate(140%);border-color:color-mix(in srgb,var(--line) 65%,transparent);box-shadow:inset 0 1px 0 rgb(255 255 255 / var(--glass-highlight)),inset 0 -1px 0 rgb(255 255 255 / calc(var(--glass-highlight)*.25)),0 12px 32px rgb(0 0 0 / var(--glass-shadow))}
:root[data-glass=on] .sidebar{background:color-mix(in srgb,var(--sidebar) var(--glass-sidebar),transparent);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border-right-color:color-mix(in srgb,var(--line) 65%,transparent)}
:root[data-glass=on] .suggestions button:hover{border-color:var(--accent);box-shadow:inset 0 1px 0 rgb(255 255 255 / var(--glass-highlight)),0 16px 40px rgb(0 0 0 / var(--glass-shadow)),0 0 22px color-mix(in srgb,var(--accent) 12%,transparent)}
:root[data-glass=on] .composer:focus-within{border-color:var(--accent)}
:root[data-glass=on] :is(.send-button,.primary-button){background-image:linear-gradient(160deg,rgb(255 255 255 / calc(var(--glass-highlight)*.6)),transparent 55%);box-shadow:inset 0 1px 1px rgb(255 255 255 / var(--glass-highlight)),0 5px 16px color-mix(in srgb,var(--accent) 20%,transparent)}
.glass-control{border:1px solid var(--line);border-radius:16px;padding:16px;margin:0 0 23px;background:color-mix(in srgb,var(--panel) 65%,transparent)}
.glass-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.glass-heading .theme-label{margin:0}.glass-heading output{font-size:12px;font-variant-numeric:tabular-nums;color:var(--accent);background:var(--soft);border-radius:20px;padding:5px 9px;min-width:48px;text-align:center}.glass-control p{font-size:12px;line-height:1.5;color:var(--muted);margin:9px 0}.glass-control input[type=range]{display:block;width:100%;height:32px;margin:0;accent-color:var(--accent);cursor:pointer}.glass-scale{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){:root[data-glass=on] :is(.suggestions button,.composer,.appearance-button,.model-tag,.new-chat,dialog,.activity){background:var(--panel)}:root[data-glass=on] .sidebar{background:var(--sidebar)}}
