/* LL AI v65.2 — pre-Images polish pass.
   Intentionally does NOT style/reflow .v632PresetRail / preset cards / the horizontal Images rail. */
:root{
  --v65-hair:color-mix(in srgb,var(--theme-line,rgba(255,255,255,.12)) 74%,transparent);
  --v65-hair-strong:color-mix(in srgb,var(--theme-line,rgba(255,255,255,.12)) 88%,white 6%);
  --v65-soft:color-mix(in srgb,var(--theme-surface,#24262f) 92%,transparent);
  --v65-soft-2:color-mix(in srgb,var(--theme-surface-2,#1d2029) 94%,transparent);
  --v65-hover:color-mix(in srgb,var(--theme-text,#fff) 6%,transparent);
  --v65-active:color-mix(in srgb,var(--accent,#7f8cff) 11%,var(--theme-surface,#24262f));
  --v65-shadow:0 18px 52px rgba(0,0,0,.18);
  --v65-float:0 26px 78px rgba(0,0,0,.42);
  --v65-radius:16px;
}

/* ---------- Global finish ---------- */
html{scrollbar-color:color-mix(in srgb,var(--theme-muted,#8e93a4) 38%,transparent) transparent}
button,input,textarea,select{font:inherit}
button{-webkit-tap-highlight-color:transparent}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid rgba(var(--accent-rgb),.46)!important;outline-offset:2px!important}
::selection{background:rgba(var(--accent-rgb),.28);color:var(--theme-text,#fff)}
.main{isolation:isolate}
.main::before,.main::after{pointer-events:none!important}

/* ---------- Sidebar ---------- */
.side{
  padding:12px 11px 10px!important;
  border-right:1px solid var(--v65-hair)!important;
  box-shadow:10px 0 36px rgba(0,0,0,.055)!important;
}
.brandRow{min-height:62px!important;padding:5px 7px 11px!important}
.brand{display:flex!important;align-items:center!important;gap:9px!important;font-weight:760!important;letter-spacing:-.025em!important}
#buildBadge{
  min-width:0!important;height:22px!important;padding:0 8px!important;border-radius:999px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid rgba(var(--accent-rgb),.16)!important;
  background:rgba(var(--accent-rgb),.09)!important;color:color-mix(in srgb,var(--theme-text,#fff) 76%,var(--accent) 24%)!important;
  font-size:10px!important;font-weight:780!important;letter-spacing:.015em!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
}
.navItem{
  min-height:51px!important;margin:1px 0!important;padding:0 12px!important;border-radius:14px!important;
  border:1px solid transparent!important;background:transparent!important;
  transition:background-color .15s ease,border-color .15s ease,transform .11s ease!important;
}
.navItem:hover,.navItem:focus-visible{background:var(--v65-hover)!important;border-color:color-mix(in srgb,var(--v65-hair) 75%,transparent)!important}
.navItem:active{transform:scale(.987)!important}
.navItem>span{width:31px!important;height:31px!important;display:grid!important;place-items:center!important;border-radius:10px!important;color:color-mix(in srgb,var(--theme-muted,#aaa) 78%,var(--theme-text,#fff) 22%)!important}
.navItem>b{font-weight:670!important;letter-spacing:-.012em!important}
.navBadge,.appearanceBadge,.memoryCount{border:1px solid var(--v65-hair)!important;background:rgba(255,255,255,.035)!important;box-shadow:none!important}
.chatSearchWrap{
  min-height:47px!important;margin:10px 1px 8px!important;border-radius:15px!important;border:1px solid var(--v65-hair)!important;
  background:rgba(255,255,255,.025)!important;box-shadow:inset 0 1px rgba(255,255,255,.018)!important;
  transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease!important;
}
.chatSearchWrap:focus-within{border-color:rgba(var(--accent-rgb),.30)!important;background:rgba(255,255,255,.035)!important;box-shadow:0 0 0 3px rgba(var(--accent-rgb),.055)!important}
.chatSearchWrap input{font-size:13.5px!important}
.chatHistory{padding-top:3px!important}
.chatItem{
  border-radius:16px!important;border:1px solid transparent!important;
  box-shadow:none!important;transition:background-color .14s ease,border-color .14s ease,transform .1s ease!important;
}
.chatItem:hover{background:rgba(255,255,255,.04)!important;border-color:var(--v65-hair)!important}
.chatItem.active{
  background:linear-gradient(90deg,rgba(var(--accent-rgb),.105),rgba(var(--accent-rgb),.035))!important;
  border-color:rgba(var(--accent-rgb),.25)!important;box-shadow:inset 3px 0 0 rgba(var(--accent-rgb),.88)!important;
}
.sidebarQuickActions{border-top:1px solid var(--v65-hair)!important;padding-top:10px!important;background:transparent!important}
.sidebarQuickActions .compactNav{justify-content:center!important;gap:6px!important;min-height:54px!important;padding:7px 6px!important}
.sidebarQuickActions .compactNav>span{width:32px!important;height:32px!important;border:1px solid var(--v65-hair)!important;background:rgba(255,255,255,.026)!important}
.sidebarQuickActions .compactNav>b{font-size:11px!important;font-weight:650!important;color:color-mix(in srgb,var(--theme-text,#fff) 80%,var(--theme-muted,#aaa) 20%)!important}

/* Premium Settings & tools control: use the real sliders SVG; never the old dots. */
.sideTools{width:calc(100% - 18px)!important;margin:11px auto 8px!important}
.sideTools>summary{
  grid-template-columns:38px minmax(0,1fr) 28px!important;min-height:58px!important;padding:5px 9px!important;
  border-radius:17px!important;border:1px solid var(--v65-hair-strong)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.047),rgba(255,255,255,.021))!important;
  box-shadow:0 12px 34px rgba(0,0,0,.12),inset 0 1px rgba(255,255,255,.035)!important;
}
.sideTools>summary>span{
  width:36px!important;height:36px!important;border-radius:11px!important;border:1px solid var(--v65-hair)!important;
  background:rgba(var(--accent-rgb),.06)!important;font-size:initial!important;letter-spacing:initial!important;overflow:hidden!important;
}
.sideTools>summary>span::before,.sideTools>summary>span::after{display:none!important;content:none!important}
.sideTools>summary .llIcon{display:block!important;width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;color:color-mix(in srgb,var(--theme-muted,#aaa) 70%,var(--accent) 30%)!important}
.sideTools>summary>b{text-align:left!important;font-size:13.5px!important;font-weight:690!important}
.sideTools>summary::after{content:'›'!important;display:grid!important;place-items:center!important;width:28px!important;height:28px!important;color:var(--theme-muted,#999)!important;font-size:21px!important;transform:rotate(90deg)!important;transition:transform .18s ease!important}
.sideTools[open]>summary::after{transform:rotate(-90deg)!important}
.sideTools[open]>summary{border-color:rgba(var(--accent-rgb),.20)!important;background:rgba(var(--accent-rgb),.045)!important}
.sideBottom.slimBottom{
  margin-top:8px!important;padding:7px!important;border-radius:18px!important;
  border:1px solid var(--v65-hair)!important;background:color-mix(in srgb,var(--theme-surface-2,#20222b) 97%,black 3%)!important;
  box-shadow:var(--v65-float)!important;
}
.sideBottom.slimBottom .navItem{min-height:48px!important;border-radius:12px!important;padding:0 11px!important}
.sideBottom.slimBottom .navItem>span{width:30px!important;height:30px!important;border:0!important;background:transparent!important;color:var(--theme-muted,#aaa)!important}
.sideBottom.slimBottom .dangerNav{margin-top:4px!important;border-top:1px solid var(--v65-hair)!important;border-radius:0 0 12px 12px!important;color:#ff9b9f!important}
.sideBottom.slimBottom .creator{font-size:10px!important;letter-spacing:.02em!important;opacity:.48!important;padding-top:8px!important}

/* ---------- Top bar ---------- */
.topbar{
  min-height:62px!important;padding:8px 14px!important;border-bottom:1px solid color-mix(in srgb,var(--v65-hair) 60%,transparent)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.06)!important;background:color-mix(in srgb,var(--theme-top,#151821) 93%,transparent)!important;
  backdrop-filter:blur(14px) saturate(1.04)!important;
}
.roundBtn{border-radius:13px!important;border-color:var(--v65-hair)!important;background:rgba(255,255,255,.025)!important;box-shadow:inset 0 1px rgba(255,255,255,.025)!important}
.roundBtn:hover{background:rgba(255,255,255,.06)!important;border-color:var(--v65-hair-strong)!important}
.modelButton{font-weight:700!important;letter-spacing:-.017em!important}
.status{border:1px solid var(--v65-hair)!important;background:rgba(255,255,255,.025)!important;box-shadow:none!important}

/* ---------- Welcome + chat typography ---------- */
.welcome{width:min(900px,92%)!important;margin:auto!important;padding-bottom:clamp(90px,13dvh,150px)!important}
.welcomeMark{filter:none!important;box-shadow:0 14px 42px rgba(var(--accent-rgb),.12)!important}
.welcome h1{font-size:clamp(30px,4.2vw,44px)!important;letter-spacing:-.045em!important;line-height:1.05!important;margin-bottom:9px!important}
.welcome>.muted{font-size:13.5px!important;opacity:.76!important}
.chips{width:min(820px,100%)!important;gap:10px!important;margin-top:26px!important}
.chip{
  min-height:69px!important;padding:14px 17px!important;border-radius:17px!important;
  border:1px solid var(--v65-hair)!important;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.018)!important;font-weight:670!important;letter-spacing:-.012em!important;
}
.chip:hover{transform:translateY(-1px)!important;border-color:rgba(var(--accent-rgb),.26)!important;background:rgba(var(--accent-rgb),.045)!important;box-shadow:0 10px 30px rgba(0,0,0,.10)!important}
.chat{scrollbar-gutter:stable!important}
.msg.ai{font-size:15.8px!important;line-height:1.68!important;letter-spacing:-.005em!important}
.msg.ai p{margin:.18em 0 .82em!important}
.msg.ai h2,.msg.ai h3,.msg.ai h4{letter-spacing:-.025em!important}
.msg.user{border:1px solid color-mix(in srgb,var(--v65-hair) 85%,rgba(var(--accent-rgb),.12))!important;box-shadow:0 8px 24px rgba(0,0,0,.08),inset 0 1px rgba(255,255,255,.025)!important}
.mdCode,.mdTableWrap{border-color:var(--v65-hair)!important;box-shadow:0 12px 34px rgba(0,0,0,.10)!important}

/* Assistant actions: calm, consistent, never overlap message text. */
.msgrow>.msgActions{margin-top:7px!important;min-height:36px!important;gap:1px!important;z-index:24!important}
.msgrow>.msgActions .btn,.msgrow>.msgActions .ll625MoreBtn{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border-radius:10px!important;opacity:.73!important}
.msgrow>.msgActions .btn:hover,.msgrow>.msgActions .ll625MoreBtn:hover,.msgrow>.msgActions .ll625MoreBtn.is-open{opacity:1!important;background:var(--v65-hover)!important}

/* One permanent menu visual for every assistant message. */
.ll625ResponseMenu,.ll625ResponseMenu.ll6484Portal{
  min-width:292px!important;padding:7px!important;border-radius:18px!important;
  border:1px solid var(--v65-hair-strong)!important;background:color-mix(in srgb,var(--theme-surface-2,#29292d) 97%,black 3%)!important;
  box-shadow:0 28px 82px rgba(0,0,0,.48)!important;backdrop-filter:none!important;
}
.ll625ResponseMenu button,.ll625ResponseMenu.ll6484Portal button{
  min-height:51px!important;padding:0 12px!important;border-radius:12px!important;border:0!important;background:transparent!important;
  font-weight:650!important;letter-spacing:-.008em!important;transition:background-color .1s ease,transform .08s ease!important;
}
.ll625ResponseMenu button:hover,.ll625ResponseMenu.ll6484Portal button:hover{background:rgba(255,255,255,.06)!important}
.ll625ResponseMenu button:active,.ll625ResponseMenu.ll6484Portal button:active{transform:scale(.99)!important}
.ll625ResponseMenu hr,.ll625ResponseMenu .menuDivider{border:0!important;height:1px!important;background:var(--v65-hair)!important;margin:5px 8px!important}

/* ---------- Composer: blended border on every theme ---------- */
.composer{border:0!important;box-shadow:none!important;background:linear-gradient(0deg,var(--theme-bg,#1e2028) 72%,transparent)!important;padding-top:11px!important}
.composer::before,.composer::after{display:none!important;content:none!important}
.composebox{
  max-width:880px!important;min-height:60px!important;border-radius:30px!important;
  border:1px solid color-mix(in srgb,var(--theme-line,rgba(255,255,255,.12)) 64%,rgba(var(--accent-rgb),.12))!important;
  background:color-mix(in srgb,var(--theme-surface,#292b34) 92%,transparent)!important;
  box-shadow:0 17px 48px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.022)!important;
  backdrop-filter:blur(16px) saturate(1.05)!important;
}
.composebox:focus-within{
  border-color:color-mix(in srgb,var(--theme-line,rgba(255,255,255,.12)) 42%,rgba(var(--accent-rgb),.48))!important;
  box-shadow:0 20px 58px rgba(0,0,0,.19),0 0 0 3px rgba(var(--accent-rgb),.045)!important;
  transform:translateY(-1px)!important;
}
.composebox textarea{font-size:15px!important;color:var(--theme-text,#fff)!important}
.composebox textarea::placeholder{color:color-mix(in srgb,var(--theme-muted,#999) 88%,transparent)!important}
.composerBtn,.composerPrimary{width:44px!important;height:44px!important;min-width:44px!important;border-radius:50%!important}
.composerPrimary{box-shadow:0 9px 25px rgba(var(--accent-rgb),.18)!important}
.disclaimer{font-size:10px!important;opacity:.48!important;margin-top:6px!important}

/* ---------- Thinking/activity surfaces ---------- */
.thinkingSummary{border-radius:12px!important;background:transparent!important}
.thinkingSummary:hover{background:var(--v65-hover)!important}
.llThinkingPane,.thinkingSheet,.thinkingPanel,.thinkingBackdrop .thinkingPanel{
  border-color:var(--v65-hair)!important;background:color-mix(in srgb,var(--theme-bg,#1e2028) 96%,black 4%)!important;
}
.thinkingStep,.thinkingActivityRow{border-radius:13px!important}
.thinkingStep:hover,.thinkingActivityRow:hover{background:rgba(255,255,255,.025)!important}

/* ---------- Panels/dialogs ---------- */
.llDialog,.llSetupCard,.appearanceCard,.memoryCard,.voiceSettingsCard,.flashEditCard,.ownerGateCard,.commandCard{
  border:1px solid var(--v65-hair-strong)!important;border-radius:24px!important;box-shadow:0 30px 96px rgba(0,0,0,.46)!important;
}
.llToast{border-color:var(--v65-hair-strong)!important;border-radius:15px!important;box-shadow:0 18px 54px rgba(0,0,0,.26)!important}
.notesDrawer,.lessonMini{border-color:var(--v65-hair)!important;border-radius:16px!important}

/* ---------- Theme-specific blending ---------- */
html[data-theme="oled"] .composebox{background:rgba(15,15,16,.94)!important;border-color:rgba(255,255,255,.105)!important;box-shadow:0 17px 48px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.025)!important}
html[data-theme="oled"] .composer{background:linear-gradient(0deg,#000 72%,transparent)!important}
html[data-theme="graphite"] .composebox{border-color:color-mix(in srgb,var(--theme-line) 72%,rgba(var(--accent-rgb),.11))!important}
html[data-theme="light"] .side{box-shadow:9px 0 34px rgba(29,37,54,.05)!important}
html[data-theme="light"] .sideTools>summary,html[data-theme="light"] .chip,html[data-theme="light"] .chatSearchWrap{background:rgba(255,255,255,.62)!important;border-color:rgba(28,34,48,.09)!important}
html[data-theme="light"] .sideBottom.slimBottom{background:rgba(250,251,253,.985)!important;border-color:rgba(28,34,48,.09)!important;box-shadow:0 24px 72px rgba(35,42,60,.14)!important}
html[data-theme="light"] .ll625ResponseMenu,html[data-theme="light"] .ll625ResponseMenu.ll6484Portal{background:#fff!important;border-color:rgba(28,34,48,.10)!important;box-shadow:0 26px 74px rgba(35,42,60,.20)!important}
html[data-theme="light"] .composer{background:linear-gradient(0deg,var(--theme-bg,#f7f8fb) 72%,transparent)!important}

/* ---------- Responsive/performance ---------- */
@media(max-width:800px){
  .side{padding-left:9px!important;padding-right:9px!important}
  .topbar{min-height:60px!important;padding:7px 10px!important}
  .welcome{width:94%!important}.chips{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .chip{min-height:62px!important;padding:12px 13px!important}
  .composer{padding:8px 8px calc(9px + env(safe-area-inset-bottom))!important}
  .composebox{min-height:57px!important;backdrop-filter:none!important}
  .sideBottom.slimBottom{max-height:49dvh!important}
}
@media(max-width:540px){.chips{grid-template-columns:1fr!important}.welcome{padding-inline:5px!important}.ll625ResponseMenu,.ll625ResponseMenu.ll6484Portal{min-width:min(292px,calc(100vw - 24px))!important}}
@media(pointer:coarse){.navItem{min-height:52px!important}.msgrow>.msgActions .btn,.msgrow>.msgActions .ll625MoreBtn{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important}}
@media(prefers-reduced-motion:reduce){.navItem,.chatItem,.chip,.composebox,.sideTools>summary,.sideTools>summary::after,.ll625ResponseMenu button{transition:none!important}}
