:root{color-scheme:dark;--bg:#070b12;--panel:rgba(15,23,34,.86);--line:rgba(149,166,190,.18);--text:#eef4f8;--muted:#9aa9b8;--green:#58d68d;--cyan:#47c7e8;--amber:#f5c15c;--shadow:0 20px 60px rgba(0,0,0,.32)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(circle at 16% 0%,rgba(71,199,232,.16),transparent 28%),var(--bg);color:var(--text);font-family:Inter,"Microsoft YaHei","PingFang SC",system-ui,sans-serif;letter-spacing:0}#matrix{position:fixed;inset:0;z-index:-1;opacity:.55}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(18px,4vw,56px);background:rgba(7,11,18,.8);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand,.top-links{display:flex;align-items:center;gap:12px}.brand{font-weight:800;min-width:0}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,var(--green),var(--cyan));color:#071018;flex:0 0 auto}.top-links a{color:var(--muted);font-size:14px;padding:8px 10px}.top-links a:hover{color:var(--text)}main{width:min(1180px,calc(100% - 32px));margin:0 auto}.hero{min-height:420px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);align-items:end;gap:28px;padding:clamp(58px,8vw,96px) 0 36px}.eyebrow{color:var(--green);margin:0 0 16px;text-transform:uppercase;font-size:13px;font-weight:800}h1{max-width:760px;margin:0;font-size:clamp(34px,6vw,66px);line-height:1.25;letter-spacing:0}.hero-subtitle{max-width:660px;margin:22px 0 0;color:var(--muted);font-size:18px;line-height:1.8}.search-panel,.metric,.news-card,.tool-section,.favorites-section{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(14px)}.search-panel{padding:22px;border-radius:8px}.search-label{display:block;margin-bottom:10px;color:var(--muted);font-size:13px}.search-box{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 14px;border-radius:8px;border:1px solid rgba(71,199,232,.3);background:rgba(3,8,14,.72)}.search-box input{width:100%;min-width:0;border:0;outline:0;color:var(--text);background:transparent}.search-box span{color:var(--cyan)}.quick-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.filter-chip{min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:rgba(255,255,255,.04);cursor:pointer}.filter-chip.active,.filter-chip:hover{color:#061017;border-color:transparent;background:var(--green)}.insight-row{display:grid;grid-template-columns:repeat(3,1fr) minmax(280px,1.6fr);gap:12px;margin-bottom:20px}.metric,.news-card{min-height:88px;padding:18px;border-radius:8px}.metric strong{display:block;font-size:30px;color:var(--green)}.metric span,.news-card span{color:var(--muted);font-size:13px}.news-card strong{display:block;margin-top:8px;line-height:1.45}.category-bar{position:sticky;top:69px;z-index:9;display:flex;gap:10px;overflow-x:auto;padding:12px 0;background:rgba(7,11,18,.82);backdrop-filter:blur(12px)}.category-pill{display:flex;align-items:center;gap:8px;white-space:nowrap;padding:10px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.04);color:var(--muted)}.category-pill:hover{color:var(--text);border-color:rgba(71,199,232,.45)}.category-pill em{color:var(--green);font-style:normal}.results-head,.section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:28px 0 14px}.results-head h2,.section-heading h2{margin:0;font-size:24px}.results-head p,.section-heading p{margin:0;color:var(--muted)}.tool-section,.favorites-section{border-radius:8px;padding:22px;margin-bottom:18px}.favorites-section{border-color:rgba(245,193,92,.38)}.section-heading h2{display:flex;align-items:center;gap:10px}.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.tool-card{position:relative;min-height:178px;padding:16px;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.045);transition:transform .16s ease,border-color .16s ease,background .16s ease}.tool-card:hover{transform:translateY(-2px);border-color:rgba(88,214,141,.48);background:rgba(255,255,255,.07)}.tool-card a{display:flex;gap:13px;min-height:104px}.tool-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:rgba(255,255,255,.08);flex:0 0 auto}.tool-icon img{width:28px;height:28px}.tool-info{min-width:0;padding-right:28px}.tool-info h3{margin:0 0 8px;font-size:17px;line-height:1.35}.tool-info p{margin:0 0 12px;color:var(--muted);line-height:1.5}.tool-info small{color:var(--cyan);overflow-wrap:anywhere}.favorite-btn{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:rgba(0,0,0,.18);cursor:pointer}.favorite-btn.active,.favorite-btn:hover{color:var(--amber);border-color:rgba(245,193,92,.5)}.tool-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.tool-tags span{padding:5px 8px;border-radius:999px;background:rgba(71,199,232,.1);color:#bfefff;font-size:12px}.empty-state{padding:40px 0 80px;text-align:center;color:var(--muted)}.site-footer{display:flex;justify-content:space-between;gap:14px;width:min(1180px,calc(100% - 32px));margin:28px auto 0;padding:26px 0 38px;color:var(--muted);border-top:1px solid var(--line)}@media (max-width:860px){.hero{grid-template-columns:1fr;min-height:0;padding-top:44px}.insight-row{grid-template-columns:repeat(2,1fr)}.news-card{grid-column:1/-1}.category-bar{top:64px}}@media (max-width:560px){main,.site-footer{width:min(100% - 24px,1180px)}.app-header{padding:12px}.brand span:last-child{font-size:14px}.top-links{gap:4px}.top-links a{padding:8px 6px}h1{font-size:34px}.hero-subtitle{font-size:16px}.insight-row{grid-template-columns:1fr}.results-head,.section-heading,.site-footer{align-items:flex-start;flex-direction:column}.tool-section,.favorites-section,.search-panel{padding:16px}.tool-grid{grid-template-columns:1fr}}

.hero-copy {
  align-self: center;
  padding-bottom: 10px;
}

.brand-mark {
  overflow: hidden;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.brand-mark img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.app-header {
  position: relative;
  top: auto;
  isolation: isolate;
  overflow: hidden;
  contain: paint;
}

/* Soft, one-way rightward aurora inside the top navigation bar. */
.app-header::before,
.app-header::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  inset: -120% -18%;
  will-change: background-position, opacity;
  mix-blend-mode: screen;
}

.app-header::before {
  background:
    linear-gradient(103deg, transparent 0 17%, rgba(60, 200, 150, 0) 28%, rgba(77, 219, 163, .055) 38%, rgba(65, 190, 177, .085) 48%, rgba(49, 151, 163, .025) 58%, transparent 69%) 0 0 / 360px 100% repeat-x,
    linear-gradient(98deg, transparent 0 30%, rgba(59, 188, 154, 0) 40%, rgba(88, 215, 174, .045) 50%, rgba(76, 191, 181, .065) 59%, transparent 72%) 0 0 / 560px 100% repeat-x;
  filter: blur(14px) saturate(1.03);
  opacity: .46;
  transform: skewX(-2deg);
  animation: app-header-aurora-flow 15s linear infinite;
}

.app-header::after {
  inset: -60% -16%;
  background: linear-gradient(101deg, transparent 0 31%, rgba(139, 255, 211, 0) 42%, rgba(139, 255, 211, .075) 50%, rgba(63, 190, 179, .025) 56%, transparent 66%) 0 0 / 470px 100% repeat-x;
  filter: blur(2.2px);
  opacity: .28;
  animation: app-header-aurora-thread 11.5s linear infinite;
}

.app-header > * {
  position: relative;
  z-index: 1;
}

.hero-copy h1 {
  display: grid;
  gap: 8px;
  max-width: 780px;
  font-size: clamp(42px, 5.7vw, 72px);
  line-height: 1.25;
}

.title-line {
  display: block;
}

.title-accent {
  color: transparent;
  background: linear-gradient(90deg, var(--green), var(--cyan) 62%, var(--amber));
  -webkit-background-clip: text;
  background-clip: text;
}

.hero-subtitle {
  max-width: 620px;
  margin-top: 24px;
  color: #c3ced8;
  font-size: clamp(17px, 1.6vw, 20px);
  line-height: 1.75;
}

.search-panel {
  align-self: center;
}

@media (max-width: 860px) {
  .hero-copy h1 {
    font-size: clamp(38px, 9vw, 58px);
  }
}

@media (max-width: 560px) {
  .hero {
    gap: 22px;
  }

  .hero-copy h1 {
    gap: 6px;
    font-size: 38px;
    line-height: 1.2;
  }

  .hero-subtitle {
    margin-top: 18px;
    font-size: 16px;
    line-height: 1.7;
  }
}

.home-layout {
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr) minmax(160px, 190px);
  gap: 18px;
  align-items: start;
}

.tools-workspace {
  min-width: 0;
}

.tools-workspace .insight-row {
  grid-template-columns: repeat(3, 1fr);
}

.stats-sidebar {
  position: sticky;
  top: 86px;
}

.stats-sidebar .insight-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-bottom: 0;
}

.stats-sidebar .metric {
  min-height: 106px;
  padding: 16px;
}

.stats-sidebar .metric strong {
  font-size: 34px;
}

.tools-workspace .category-bar {
  position: relative;
  top: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-start;
  width: 100%;
  margin: 0 0 18px;
  overflow: visible;
  padding: 8px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(8, 14, 22, 0.7);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.tools-workspace .category-pill {
  position: relative;
  flex: 0 0 auto;
  min-height: 36px;
  padding: 0 10px;
  gap: 7px;
  border-radius: 7px;
  border-color: transparent;
  background: transparent;
  color: rgba(238, 244, 248, 0.72);
  transition: color .18s ease, background .18s ease, border-color .18s ease;
}

.tools-workspace .category-pill:hover {
  color: var(--text);
  border-color: rgba(71, 199, 232, 0.16);
  background: rgba(255, 255, 255, 0.045);
}

.tools-workspace .category-bar > .category-group-toggle.active {
  color: var(--text);
  background: rgba(88, 214, 141, 0.11);
  border-color: rgba(88, 214, 141, 0.28);
}

.tools-workspace .category-bar > .category-group-toggle.active::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: -8px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--green), var(--cyan));
}

.tools-workspace .category-pill strong {
  font-size: 14px;
  font-weight: 700;
}

.tools-workspace .category-pill em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: 22px;
  height: 22px;
  padding: 0 7px;
  border-radius: 999px;
  background: rgba(88, 214, 141, 0.1);
  color: var(--green);
  text-align: center;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.tools-workspace .tool-grid {
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
}

.tools-workspace #hot .tool-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.news-sidebar {
  position: sticky;
  top: 86px;
  max-height: calc(100vh - 108px);
  overflow: hidden;
  border: 1px solid rgba(71, 199, 232, 0.24);
  border-radius: 8px;
  background: rgba(10, 18, 28, 0.9);
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
}

.news-sidebar {
  isolation: isolate;
}

.news-aurora {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: .36;
  pointer-events: none;
  filter: saturate(1.18) brightness(1.08) contrast(1.02);
  mix-blend-mode: screen;
  transform: translateZ(0);
  transition: opacity .55s cubic-bezier(.22, 1, .36, 1), filter .55s ease;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, #000 8%, #000 92%, transparent 100%);
}

.news-sidebar:hover .news-aurora,
.news-sidebar:focus-within .news-aurora {
  opacity: .42;
  filter: saturate(1.22) brightness(1.11) contrast(1.025);
}

.news-sidebar-head,
.news-list {
  position: relative;
  z-index: 1;
}

.news-list[hidden],
.ai-ranking-panel[hidden],
.news-sidebar-head .live-kicker[hidden] {
  display: none;
}

@media (max-width: 560px) {
  .news-aurora {
    opacity: .32;
  }

  .news-sidebar:hover .news-aurora,
  .news-sidebar:focus-within .news-aurora {
    opacity: .36;
  }
}

@media (prefers-reduced-motion: reduce) {
  .app-header::before,
  .app-header::after {
    animation: none;
  }

  .news-aurora {
    transition: none;
  }

  .news-sidebar-head::before,
  .news-sidebar-head::after {
    animation: none;
  }
}

.news-sidebar-head {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  contain: paint;
  padding: 18px 18px 14px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(88, 214, 141, 0.12), rgba(71, 199, 232, 0.04));
}

.news-sidebar-head::before,
.news-sidebar-head::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  will-change: background-position, opacity;
}

.news-sidebar-head::before {
  inset: -90% -36%;
  background:
    linear-gradient(104deg, transparent 0 19%, rgba(72, 224, 157, 0) 28%, rgba(83, 228, 176, .12) 37%, rgba(65, 194, 181, .2) 46%, rgba(54, 161, 178, .06) 56%, transparent 69%) 0 0 / 280px 100% repeat-x,
    linear-gradient(98deg, transparent 0 32%, rgba(78, 208, 174, 0) 41%, rgba(117, 239, 203, .1) 51%, rgba(55, 167, 181, .14) 61%, transparent 74%) 0 0 / 420px 100% repeat-x;
  filter: blur(12px) saturate(1.08);
  opacity: .52;
  transform: skewX(-3deg);
  animation: news-heading-aurora-flow 14s linear infinite;
}

.news-sidebar-head::after {
  inset: -30% -44%;
  background: linear-gradient(101deg, transparent 31%, rgba(143, 255, 214, 0) 43%, rgba(143, 255, 214, .18) 50%, rgba(67, 206, 181, .06) 54%, transparent 63%) 0 0 / 330px 100% repeat-x;
  filter: blur(1.2px);
  opacity: .38;
  animation: news-heading-aurora-thread 10.5s linear infinite;
}

.news-title-row {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.news-head-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}

.news-view-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 30px;
  padding: 0 9px;
  overflow: hidden;
  border: 1px solid rgba(71, 199, 232, .25);
  border-radius: 6px;
  background: rgba(5, 15, 23, .54);
  color: rgba(224, 241, 246, .82);
  cursor: pointer;
  white-space: nowrap;
  transition: color .24s ease, border-color .24s ease, background .24s ease, box-shadow .24s ease, transform .24s ease;
}

.news-view-toggle::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 20%, rgba(105, 233, 197, .12) 48%, transparent 76%);
  transform: translateX(-120%);
  transition: transform .58s cubic-bezier(.22, 1, .36, 1);
  pointer-events: none;
}

.news-view-toggle:hover,
.news-view-toggle:focus-visible {
  border-color: rgba(88, 214, 141, .44);
  background: rgba(19, 50, 49, .56);
  color: #f2fff9;
  box-shadow: 0 0 0 1px rgba(88, 214, 141, .07), 0 8px 22px rgba(0, 0, 0, .18);
  transform: translateY(-1px);
}

.news-view-toggle:hover::before,
.news-view-toggle:focus-visible::before {
  transform: translateX(120%);
}

.news-view-toggle:active {
  transform: translateY(0) scale(.98);
}

.news-view-toggle-icon {
  display: inline-flex;
  align-items: flex-end;
  gap: 2px;
  width: 13px;
  height: 13px;
}

.news-view-toggle-icon i {
  width: 3px;
  border-radius: 2px 2px 0 0;
  background: currentColor;
  opacity: .88;
  transition: height .28s ease, opacity .28s ease;
}

.news-view-toggle-icon i:nth-child(1) { height: 6px; }
.news-view-toggle-icon i:nth-child(2) { height: 11px; }
.news-view-toggle-icon i:nth-child(3) { height: 8px; }

.news-view-toggle:hover .news-view-toggle-icon i:nth-child(1) { height: 9px; }
.news-view-toggle:hover .news-view-toggle-icon i:nth-child(2) { height: 7px; }
.news-view-toggle:hover .news-view-toggle-icon i:nth-child(3) { height: 12px; }

.news-view-toggle-label {
  position: relative;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
}

.news-sidebar-head .live-kicker {
  display: flex;
  align-items: center;
  gap: 5px;
  min-height: 26px;
  padding: 0 7px;
  border: 1px solid rgba(88, 214, 141, 0.22);
  border-radius: 999px;
  background: rgba(88, 214, 141, 0.07);
  color: var(--green);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.live-kicker i {
  position: relative;
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--green);
  box-shadow: 0 0 10px rgba(88, 214, 141, 0.95);
  flex: 0 0 auto;
}

.live-kicker i::after {
  content: "";
  position: absolute;
  inset: -7px;
  border-radius: inherit;
  border: 1px solid rgba(88, 214, 141, 0.42);
  animation: livePulse 1.9s ease-out infinite;
}

@keyframes app-header-aurora-flow {
  from { background-position: -360px 0, -560px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes app-header-aurora-thread {
  from { background-position: -470px 0; }
  to { background-position: 0 0; }
}

@keyframes news-heading-aurora-flow {
  from { background-position: -280px 0, -420px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes news-heading-aurora-thread {
  from { background-position: -330px 0; }
  to { background-position: 0 0; }
}

@keyframes livePulse {
  0% {
    opacity: 0.78;
    transform: scale(0.58);
  }

  70% {
    opacity: 0;
    transform: scale(1.45);
  }

  100% {
    opacity: 0;
    transform: scale(1.45);
  }
}

.news-sidebar-head h2 {
  flex: 0 0 auto;
  margin: 0;
  font-size: 24px;
  white-space: nowrap;
}

.news-list {
  display: grid;
  gap: 0;
  max-height: calc(100vh - 190px);
  overflow-y: auto;
  position: relative;
  padding: 8px 0 8px;
  scrollbar-color: transparent transparent;
  scrollbar-width: thin;
}

.ai-ranking-panel {
  position: relative;
  z-index: 1;
  min-height: min(430px, calc(100vh - 190px));
  padding: 64px 28px 34px;
  text-align: center;
  animation: rankingPanelIn .38s cubic-bezier(.22, 1, .36, 1) both;
}

.ai-ranking-placeholder {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 8px;
  width: 78px;
  height: 78px;
  margin: 0 auto 24px;
  padding: 18px 16px;
  border: 1px solid rgba(88, 214, 141, .22);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(88, 214, 141, .11), rgba(71, 199, 232, .04));
  box-shadow: inset 0 0 22px rgba(88, 214, 141, .04), 0 16px 38px rgba(0, 0, 0, .2);
}

.ai-ranking-placeholder span {
  width: 9px;
  border-radius: 3px 3px 1px 1px;
  background: linear-gradient(180deg, var(--green), rgba(71, 199, 232, .66));
  box-shadow: 0 0 12px rgba(88, 214, 141, .18);
}

.ai-ranking-placeholder span:nth-child(1) { height: 20px; }
.ai-ranking-placeholder span:nth-child(2) { height: 38px; }
.ai-ranking-placeholder span:nth-child(3) { height: 28px; }

.ai-ranking-panel strong {
  display: block;
  color: var(--text);
  font-size: 17px;
  line-height: 1.5;
}

.ai-ranking-panel p {
  max-width: 290px;
  margin: 12px auto 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}

.news-sidebar.is-ranking-mode .news-sidebar-head {
  background: linear-gradient(180deg, rgba(71, 199, 232, .1), rgba(88, 214, 141, .035));
}

.news-sidebar.is-ranking-mode .news-view-toggle {
  border-color: rgba(88, 214, 141, .28);
  color: var(--green);
}

@keyframes rankingPanelIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

.news-sidebar:hover .news-list,
.news-sidebar:focus-within .news-list {
  scrollbar-color: rgba(88, 214, 141, 0.6) rgba(255, 255, 255, 0.06);
}

.news-list::before {
  content: "";
  position: absolute;
  top: 18px;
  bottom: 18px;
  left: 24px;
  width: 1px;
  background: linear-gradient(180deg, rgba(88, 214, 141, 0.45), rgba(71, 199, 232, 0.18), rgba(149, 166, 190, 0.06));
}

.news-list::-webkit-scrollbar {
  width: 8px;
}

.news-list::-webkit-scrollbar-track {
  background: transparent;
}

.news-list::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: transparent;
}

.news-sidebar:hover .news-list::-webkit-scrollbar-track,
.news-sidebar:focus-within .news-list::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.06);
}

.news-sidebar:hover .news-list::-webkit-scrollbar-thumb,
.news-sidebar:focus-within .news-list::-webkit-scrollbar-thumb {
  background: rgba(88, 214, 141, 0.62);
}

.news-item {
  position: relative;
  display: grid;
  gap: 8px;
  padding: 14px 18px 14px 44px;
  border-bottom: 1px solid rgba(149, 166, 190, 0.14);
  animation: newsFadeIn .42s ease both;
}

.news-dot {
  position: absolute;
  top: 20px;
  left: 19px;
  z-index: 1;
  width: 11px;
  height: 11px;
  border: 2px solid rgba(10, 18, 28, 0.96);
  border-radius: 999px;
  background: rgba(149, 166, 190, 0.62);
  box-shadow: 0 0 0 1px rgba(149, 166, 190, 0.2);
}

.news-item.is-today {
  isolation: isolate;
  background: linear-gradient(90deg, rgba(88, 214, 141, 0.085), transparent 64%);
}

.news-item.is-today::after {
  content: "";
  position: absolute;
  inset: 5px 6px;
  z-index: -1;
  border: 1px solid rgba(88, 214, 141, 0.14);
  border-radius: 6px;
  background: rgba(88, 214, 141, 0.025);
  pointer-events: none;
  animation: todayNewsBreath 2.8s ease-in-out .45s infinite;
}

.news-item.is-today .news-dot {
  background: var(--green);
  box-shadow: 0 0 0 1px rgba(88, 214, 141, 0.35), 0 0 18px rgba(88, 214, 141, 0.42);
  animation: latestDotPulse 2.4s ease-in-out infinite;
}

.news-item:hover {
  background: rgba(71, 199, 232, 0.08);
}

.news-item time {
  color: var(--amber);
  font-size: 12px;
  font-weight: 800;
}

.news-item strong {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--text);
  font-size: 15px;
  line-height: 1.45;
}

.news-item strong em {
  flex: 0 0 auto;
  padding: 2px 6px;
  border: 1px solid rgba(88, 214, 141, 0.26);
  border-radius: 999px;
  background: rgba(88, 214, 141, 0.08);
  color: var(--green);
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .04em;
}

.news-item p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.news-empty {
  margin: 0;
  padding: 18px;
  color: var(--muted);
}

@keyframes latestDotPulse {
  0%, 100% {
    opacity: .72;
    transform: scale(.92);
  }

  50% {
    opacity: 1;
    transform: scale(1.12);
  }
}

@keyframes todayNewsBreath {
  0%, 100% {
    opacity: .38;
    box-shadow: inset 0 0 10px rgba(88, 214, 141, 0.02), 0 0 0 rgba(88, 214, 141, 0);
  }

  50% {
    opacity: .95;
    box-shadow: inset 0 0 24px rgba(88, 214, 141, 0.08), 0 0 16px rgba(88, 214, 141, 0.08);
  }
}

@keyframes newsFadeIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .news-item,
  .news-item.is-today::after,
  .news-item.is-today .news-dot,
  .duck-bubble {
    animation: none;
  }
}

@media (max-width: 980px) {
  .home-layout {
    grid-template-columns: 1fr;
  }

  .news-sidebar {
    position: relative;
    top: auto;
    max-height: none;
  }

  .news-list {
    max-height: 360px;
  }
}

@media (max-width: 560px) {
  .tools-workspace .insight-row {
    grid-template-columns: 1fr;
  }

  .tools-workspace .category-bar {
    gap: 8px;
  }

  .tools-workspace .category-pill {
    padding: 9px 10px;
    font-size: 14px;
  }

  .news-sidebar-head h2 {
    font-size: 22px;
  }

  .news-sidebar-head .live-kicker {
    min-height: 26px;
    padding: 0 9px;
    font-size: 11px;
  }

  .news-title-row {
    align-items: flex-start;
  }

  .news-head-actions {
    gap: 6px;
  }

  .news-view-toggle {
    min-height: 30px;
    padding: 0 9px;
  }

  .news-view-toggle-label {
    font-size: 11px;
  }
}

main,
.site-footer {
  width: min(1840px, calc(100% - clamp(28px, 2.4vw, 52px)));
}

.hero {
  grid-template-columns: minmax(760px, 1fr) minmax(420px, 520px);
  gap: clamp(36px, 5vw, 92px);
}

.hero-copy h1 {
  max-width: 980px;
}

.hero-subtitle {
  max-width: 760px;
}

.search-panel {
  width: min(100%, 520px);
  justify-self: end;
}

.home-layout {
  grid-template-columns: minmax(340px, 430px) minmax(720px, 1fr) minmax(200px, 220px);
  gap: clamp(18px, 1.6vw, 30px);
}

.tools-workspace .category-bar {
  flex-wrap: nowrap;
  justify-content: flex-start;
  overflow-x: visible;
  overflow-y: visible;
  scrollbar-width: thin;
}

@media (max-width: 980px) {
  main,
  .site-footer {
    width: min(100% - 28px, 1180px);
  }

  .home-layout {
    grid-template-columns: 1fr;
  }

  .stats-sidebar {
    position: relative;
    top: auto;
  }

  .stats-sidebar .insight-row {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 560px) {
  .stats-sidebar .insight-row {
    grid-template-columns: 1fr;
  }
}

.category-more {
  cursor: pointer;
  opacity: .9;
  margin-left: auto;
  color: var(--green) !important;
  border-color: rgba(88, 214, 141, 0.28) !important;
  background: rgba(88, 214, 141, 0.08) !important;
}

.category-more:hover {
  opacity: 1;
  background: rgba(88, 214, 141, 0.14) !important;
}

.category-group-toggle {
  cursor: pointer;
}

.category-toggle-mark {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border: 1px solid rgba(71, 199, 232, 0.2);
  border-radius: 999px;
  color: var(--cyan);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.category-group-toggle[aria-expanded="true"] .category-toggle-mark {
  border-color: rgba(88, 214, 141, 0.32);
  color: var(--green);
  background: rgba(88, 214, 141, 0.08);
}

.category-overflow-panel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  contain: paint;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 8px;
  margin: -8px 0 16px;
  padding: 12px;
  border: 1px solid rgba(149, 166, 190, 0.16);
  border-radius: 8px;
  background: rgba(8, 14, 22, 0.72);
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(14px);
}

.tools-workspace .category-overflow-panel::before,
.tools-workspace .category-overflow-panel::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  will-change: background-position, opacity;
}

.tools-workspace .category-overflow-panel::before {
  inset: -120% -18%;
  background:
    linear-gradient(103deg, transparent 0 18%, rgba(65, 212, 151, 0) 27%, rgba(81, 226, 171, .08) 37%, rgba(69, 198, 180, .16) 47%, rgba(52, 161, 177, .045) 58%, transparent 71%) 0 0 / 330px 100% repeat-x,
    linear-gradient(98deg, transparent 0 30%, rgba(71, 205, 172, 0) 40%, rgba(125, 239, 202, .07) 50%, rgba(57, 174, 183, .11) 60%, transparent 73%) 0 0 / 510px 100% repeat-x;
  filter: blur(14px) saturate(1.06);
  opacity: .26;
  transform: skewX(-3deg);
  animation: category-list-aurora-flow 16s linear infinite;
}

.tools-workspace .category-overflow-panel::after {
  inset: -32% -24%;
  background: linear-gradient(101deg, transparent 30%, rgba(143, 255, 214, 0) 42%, rgba(143, 255, 214, .13) 50%, rgba(66, 205, 181, .045) 56%, transparent 65%) 0 0 / 390px 100% repeat-x;
  filter: blur(1.5px);
  opacity: .18;
  animation: category-list-aurora-thread 12.5s linear infinite;
}

.tools-workspace .category-overflow-panel > * {
  position: relative;
  z-index: 1;
}

@keyframes category-list-aurora-flow {
  from { background-position: -330px 0, -510px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes category-list-aurora-thread {
  from { background-position: -390px 0; }
  to { background-position: 0 0; }
}

@media (prefers-reduced-motion: reduce) {
  .tools-workspace .category-overflow-panel::before,
  .tools-workspace .category-overflow-panel::after {
    animation: none;
  }
}

.category-overflow-panel[hidden] {
  display: none;
}

.category-overflow-panel .category-pill {
  width: 100%;
  justify-content: flex-start;
}
.category-fold-tag {
  cursor:pointer;
  border:1px solid var(--green) !important;
  background:linear-gradient(135deg,rgba(88,214,141,.12),rgba(71,199,232,.08)) !important;
  color:var(--green) !important;
  font-weight:700;
  letter-spacing:.5px;
  transition:all .25s ease;
  box-shadow:0 0 14px rgba(88,214,141,.15);
}
.category-fold-tag:hover {
  background:linear-gradient(135deg,rgba(88,214,141,.22),rgba(71,199,232,.15)) !important;
  box-shadow:0 0 22px rgba(88,214,141,.3);
  transform:scale(1.04);
}

#back-to-top {
  position:fixed; bottom:120px; right:76px; z-index:20;
  width:42px; height:42px;
  border:1px solid var(--green); border-radius:50%;
  background:rgba(7,11,18,.9); color:var(--green);
  font-size:20px; cursor:pointer;
  opacity:0; transform:translateY(10px); pointer-events:none;
  transition:opacity .3s ease,transform .3s ease;
  backdrop-filter:blur(8px);
}
#back-to-top.visible { opacity:1; transform:translateY(0); pointer-events:auto; }
#back-to-top:hover { background:var(--green); color:#071018; }

.tool-icon {
  position: relative;
  overflow: hidden;
}

.tool-logo {
  position: absolute;
  inset: 7px;
  display: block;
  width: calc(100% - 14px);
  height: calc(100% - 14px);
  border-radius: 6px;
  object-fit: contain;
  opacity: 0;
  transition: opacity .16s ease;
}

.tool-icon.logo-loaded .tool-logo {
  opacity: 1;
}

/* Compact tool sections */
.tools-workspace .tool-section,
.tools-workspace .favorites-section {
  padding: 14px 16px 16px;
  margin-bottom: 14px;
}

.tools-workspace .category-target-highlight,
.tools-workspace .utility-subsection.category-target-highlight {
  position: relative;
  border-radius: 8px;
  isolation: isolate;
}

.tools-workspace .category-target-highlight::after {
  content: "";
  position: absolute;
  inset: -1px;
  z-index: 2;
  pointer-events: none;
  border: 1px solid rgba(110, 190, 145, 0.22);
  border-radius: inherit;
  background: rgba(88, 180, 130, 0.014);
  box-shadow:
    0 0 0 1px rgba(110, 190, 145, 0.025),
    0 0 16px rgba(88, 180, 130, 0.04),
    inset 0 0 24px rgba(88, 180, 130, 0.012);
  opacity: 0;
  animation: category-target-soft-pulse 2.7s cubic-bezier(.22, .61, .36, 1) both;
}

@keyframes category-target-soft-pulse {
  0%, 100% { opacity: 0; }
  20% { opacity: 0.38; }
  44% { opacity: 0.72; }
  66% { opacity: 0.5; }
}

@media (prefers-reduced-motion: reduce) {
  .tools-workspace .category-target-highlight::after {
    animation: none;
    opacity: 0.38;
  }
}

.tools-workspace .section-heading {
  margin: 2px 0 12px;
  align-items: center;
}

.tools-workspace .section-meta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  min-width: 0;
}

.section-expand-btn {
  flex: 0 0 auto;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid rgba(88, 214, 141, 0.26);
  border-radius: 999px;
  background: rgba(88, 214, 141, 0.08);
  color: var(--green);
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
}

.section-expand-btn:hover {
  border-color: rgba(88, 214, 141, 0.48);
  background: rgba(88, 214, 141, 0.14);
}

.tools-workspace .section-heading h2 {
  font-size: 22px;
  line-height: 1.2;
}

.tools-workspace .section-heading p {
  font-size: 13px;
}

.tools-workspace .tool-grid {
  gap: 12px;
}

.utility-category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}

.utility-subsection {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(149, 166, 190, 0.12);
}

.utility-subsection:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.utility-subsection-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 8px;
}

.utility-subsection-head h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 17px;
  line-height: 1.3;
}

.utility-subsection-head p {
  max-width: 420px;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  text-align: right;
}

.utility-item-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  gap: 8px;
}

.utility-category-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 12px;
  min-height: 126px;
  padding: 16px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.utility-category-card:hover {
  translate: 0 -2px;
  border-color: rgba(71, 199, 232, 0.36);
  background: rgba(255, 255, 255, 0.065);
}

.utility-category-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.16), rgba(71, 199, 232, 0.12));
  font-size: 24px;
}

.utility-category-card h3 {
  margin: 0 0 8px;
  font-size: 16px;
  line-height: 1.35;
}

.utility-category-card p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.utility-item-card {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-height: 88px;
  padding: 12px;
  border: 1px solid rgba(149, 166, 190, 0.13);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.utility-item-card:hover {
  translate: 0 -2px;
  border-color: rgba(88, 214, 141, 0.28);
  background: rgba(255, 255, 255, 0.06);
}

.utility-item-card .utility-category-icon {
  width: 36px;
  height: 36px;
  font-size: 19px;
}

.utility-item-card h3 {
  margin: 0 0 5px;
  font-size: 15px;
  line-height: 1.28;
}

.utility-item-card p {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.utility-detail-shell {
  width: min(1440px, calc(100% - 48px));
  padding: 38px 0 18px;
}

.utility-detail-page {
  display: grid;
  gap: 24px;
}

.detail-back-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  margin-bottom: 24px;
  padding: 0 20px;
  border: 1px solid rgba(88, 214, 141, 0.34);
  border-radius: 999px;
  background: rgba(88, 214, 141, 0.09);
  color: var(--green);
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
  transition: color 180ms ease,
              background-color 180ms ease,
              border-color 180ms ease,
              box-shadow 180ms ease,
              transform 180ms ease;
}

.detail-back-link:hover {
  border-color: rgba(88, 214, 141, 0.62);
  background: rgba(88, 214, 141, 0.16);
  color: #7bf0ad;
  box-shadow: 0 10px 28px rgba(34, 197, 94, 0.16);
  transform: translateY(-2px);
}

.detail-back-link:focus-visible {
  outline: 2px solid rgba(88, 214, 141, 0.72);
  outline-offset: 3px;
}

.detail-back-link:active {
  box-shadow: 0 5px 14px rgba(34, 197, 94, 0.12);
  transform: translateY(0) scale(0.98);
}

.detail-hero-panel,
.detail-section,
.detail-link-card {
  border: 1px solid rgba(149, 166, 190, 0.16);
  border-radius: 8px;
  background: rgba(10, 18, 28, 0.82);
  box-shadow: var(--shadow);
  backdrop-filter: blur(14px);
}

.detail-hero-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
  gap: clamp(28px, 3.6vw, 48px);
  padding: clamp(34px, 4.4vw, 54px);
  overflow: hidden;
}

.detail-hero-panel.is-simple {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) minmax(480px, 560px);
}

.detail-eyebrow {
  margin: 0 0 12px;
  color: var(--green);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.detail-hero-copy h1 {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  font-size: clamp(48px, 5.4vw, 72px);
  line-height: 1.16;
}

.detail-hero-copy p:not(.detail-eyebrow) {
  max-width: 860px;
  margin: 22px 0 0;
  color: var(--muted);
  font-size: 19px;
  line-height: 1.85;
}

.detail-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.detail-tags span {
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(71, 199, 232, 0.1);
  color: #bfefff;
  font-size: 12px;
  font-weight: 800;
}

.detail-visual-card {
  position: relative;
  min-height: 0;
  padding: 28px;
  border: 1px solid rgba(71, 199, 232, 0.2);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(88, 214, 141, 0.09), rgba(71, 199, 232, 0.08)),
    rgba(255, 255, 255, 0.035);
  overflow: hidden;
}

.detail-visual-card::before {
  content: "";
  position: absolute;
  inset: 28px;
  border: 1px solid rgba(149, 166, 190, 0.12);
  border-radius: 8px;
}

.detail-file-stack {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.detail-file-card {
  position: relative;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 10px;
  min-width: 0;
  min-height: 76px;
  padding: 12px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  color: var(--text);
  box-shadow: none;
  cursor: pointer;
  transition: translate .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.detail-file-card-shell {
  min-width: 0;
  min-height: 76px;
}

.detail-file-card-shell .detail-file-card {
  width: 100%;
  height: 100%;
  padding-right: 50px;
}

.detail-file-card::after {
  content: none;
}
.detail-file-card:hover,
.detail-file-card:focus-visible {
  border-color: rgba(88, 214, 141, 0.38);
  background: rgba(255, 255, 255, 0.07);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.22), 0 0 0 3px rgba(88, 214, 141, 0.055);
  outline: none;
  translate: 0 -2px;
}

.detail-file-card:hover .detail-file-icon,
.detail-file-card:focus-visible .detail-file-icon {
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.28), rgba(71, 199, 232, 0.18));
}

.detail-file-icon {
  display: grid;
  grid-row: 1 / span 2;
  place-items: center;
  width: 40px;
  height: 40px;
  margin: 0;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.16), rgba(71, 199, 232, 0.12));
  font-size: 22px;
  line-height: 1;
}

.detail-file-card b {
  display: block;
  grid-column: 2;
  align-self: end;
  min-width: 0;
  max-width: 100%;
  color: var(--text);
  font-size: 16px;
  line-height: 1.32;
  overflow-wrap: anywhere;
}

.detail-file-card small {
  display: block;
  grid-column: 2;
  align-self: start;
  min-width: 0;
  max-width: 100%;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.simple-section {
  margin-top: 0;
}

.simple-pick-grid,
.simple-tool-grid,
.simple-bottom-grid {
  display: grid;
  gap: 20px;
}

.simple-pick-grid {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.simple-pick-card {
  display: grid;
  align-content: start;
  min-height: 172px;
  padding: 22px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.simple-pick-card strong,
.simple-pick-card span {
  display: block;
}

.simple-pick-card span {
  margin-top: 10px;
  color: var(--green);
  font-size: 21px;
  font-weight: 900;
}

.simple-pick-card p {
  margin: 10px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
}

.simple-tool-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.simple-tool-card {
  position: relative;
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  min-height: 292px;
  padding: 22px;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  color: inherit;
  cursor: pointer;
  text-decoration: none;
  transition: translate .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.simple-tool-card:hover,
.simple-tool-card:focus-visible {
  translate: 0 -4px;
  border-color: rgba(88, 214, 141, 0.46);
  background: rgba(88, 214, 141, 0.075);
  box-shadow: 0 20px 44px rgba(0, 0, 0, 0.28), 0 0 0 1px rgba(88, 214, 141, 0.08), 0 0 32px rgba(88, 214, 141, 0.08);
}

.simple-tool-card:focus-visible {
  outline: 2px solid rgba(125, 255, 178, 0.82);
  outline-offset: 3px;
}

.simple-tool-icon {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.16), rgba(71, 199, 232, 0.12));
  font-size: 28px;
  transition: scale .22s ease, background .22s ease, box-shadow .22s ease;
}

.simple-tool-card:hover .simple-tool-icon,
.simple-tool-card:focus-visible .simple-tool-icon {
  scale: 1.06;
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.25), rgba(71, 199, 232, 0.19));
  box-shadow: 0 8px 22px rgba(88, 214, 141, 0.12);
}

.simple-tool-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.simple-tool-head span {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(71, 199, 232, 0.1);
  color: var(--cyan);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.simple-tool-head h3 {
  min-width: 0;
  margin: 0;
  font-size: 19px;
  line-height: 1.25;
  overflow-wrap: anywhere;
  transition: color .2s ease;
}

.simple-tool-card:hover .simple-tool-head h3,
.simple-tool-card:focus-visible .simple-tool-head h3 {
  color: #9affc2;
}

.simple-tool-copy p {
  margin: 10px 0 12px;
  color: var(--text);
  font-size: 15px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.simple-tool-copy {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.simple-tool-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 46px;
  margin-top: 14px;
}

.simple-tool-actions .simple-tool-cta {
  align-self: auto;
  margin-top: 0;
}

.simple-tool-actions .detail-card-star {
  position: static;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  color: rgba(255, 224, 139, 0.92);
  border-color: rgba(245, 193, 92, 0.46);
  background: rgba(63, 48, 22, 0.56);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.24), 0 0 18px rgba(245, 193, 92, 0.08);
  font-size: 20px;
}

.simple-tool-notes {
  position: relative;
  margin-top: 8px;
  padding: 9px 10px;
  overflow: hidden;
  border: 1px solid rgba(88, 214, 141, 0.12);
  border-radius: 8px;
  background: rgba(88, 214, 141, 0.055);
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}

.simple-tool-notes::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(105deg, transparent 28%, rgba(151, 255, 196, 0.18) 46%, rgba(255, 255, 255, 0.26) 50%, rgba(151, 255, 196, 0.12) 55%, transparent 72%);
  translate: -135% 0;
}

.simple-tool-notes.is-watch::after {
  background: linear-gradient(105deg, transparent 28%, rgba(245, 193, 92, 0.16) 46%, rgba(255, 244, 208, 0.24) 50%, rgba(245, 193, 92, 0.1) 55%, transparent 72%);
}

.simple-tool-card:hover .simple-tool-notes::after,
.simple-tool-card:focus-visible .simple-tool-notes::after {
  animation: tool-note-scan 1.15s ease-out both;
}

.simple-tool-card:hover .simple-tool-notes.is-watch::after,
.simple-tool-card:focus-visible .simple-tool-notes.is-watch::after {
  animation-delay: .16s;
}

.simple-tool-notes.is-watch {
  border-color: rgba(245, 193, 92, 0.13);
  background: rgba(245, 193, 92, 0.045);
  margin-bottom: 18px;
}

.simple-tool-notes b {
  color: var(--green);
}

.simple-tool-notes.is-watch b {
  color: var(--amber);
}

.simple-tool-cta {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-end;
  gap: 8px;
  min-height: 44px;
  margin-top: 12px;
  padding: 0 20px;
  border: 1px solid rgba(88, 214, 141, 0.44);
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.18), rgba(71, 199, 232, 0.12));
  box-shadow: 0 0 0 0 rgba(88, 214, 141, 0.2), 0 12px 28px rgba(0, 0, 0, 0.18);
  color: #7dffb2;
  font-size: 15px;
  font-weight: 900;
  line-height: 1;
  transition: translate .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
  animation: cta-breathe 2.8s ease-in-out infinite;
}

.simple-tool-cta::after {
  content: "↗";
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: rgba(88, 214, 141, 0.18);
  color: var(--text);
  font-size: 12px;
  line-height: 1;
  transition: translate .18s ease, background .18s ease;
}

.simple-tool-card:hover .simple-tool-cta,
.simple-tool-card:focus-visible .simple-tool-cta {
  border-color: rgba(125, 255, 178, 0.78);
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.28), rgba(71, 199, 232, 0.18));
  box-shadow: 0 0 0 5px rgba(88, 214, 141, 0.09), 0 16px 34px rgba(0, 0, 0, 0.24), 0 0 24px rgba(88, 214, 141, 0.16);
  color: #b8ffd4;
  translate: 0 -2px;
}

.simple-tool-card:hover .simple-tool-cta::after,
.simple-tool-card:focus-visible .simple-tool-cta::after {
  background: rgba(88, 214, 141, 0.32);
  translate: 2px -2px;
}

@keyframes tool-note-scan {
  from {
    translate: -135% 0;
  }

  to {
    translate: 135% 0;
  }
}
@keyframes cta-breathe {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(88, 214, 141, 0.16), 0 12px 28px rgba(0, 0, 0, 0.18);
  }

  50% {
    box-shadow: 0 0 0 6px rgba(88, 214, 141, 0.06), 0 14px 32px rgba(0, 0, 0, 0.22), 0 0 18px rgba(88, 214, 141, 0.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .simple-tool-card,
  .simple-tool-icon,
  .simple-tool-cta,
  .simple-tool-cta::after {
    transition: none;
  }

  .simple-tool-card:hover .simple-tool-notes::after,
  .simple-tool-card:focus-visible .simple-tool-notes::after,
  .simple-tool-cta {
    animation: none;
  }
}
.simple-bottom-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 16px;
}

.detail-visual-card.compact-visual {
  min-height: 0;
}


.tool-inline-steps {
  grid-column: 1 / -1;
  display: grid;
  gap: 14px;
  margin-top: 4px;
  padding-top: 18px;
  border-top: 1px solid rgba(149, 166, 190, 0.13);
}

.tool-inline-steps h4 {
  margin: 0;
  color: var(--green);
  font-size: 15px;
  font-weight: 900;
}

.tool-inline-step-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
.detail-step-image-section {
  padding: 22px;
}

.detail-step-image-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

.detail-step-image-card {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.15);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
}

.detail-step-image-card img {
  display: block;
  width: 100%;
  height: auto;
  min-height: 160px;
  object-fit: contain;
  background: rgba(236, 244, 248, 0.96);
}

.detail-step-image-card figcaption {
  padding: 12px 14px;
  color: var(--muted);
  font-size: 14px;
  font-weight: 800;
}

.easy-pick-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.easy-tool-grid {
  grid-template-columns: 1fr;
}

.detail-last-note {
  margin-bottom: 0;
}

.detail-quick-panel {
  padding: 16px;
  border: 1px solid rgba(88, 214, 141, 0.18);
  border-radius: 8px;
  background: rgba(88, 214, 141, 0.055);
}

.detail-quick-panel h2,
.detail-section h2 {
  margin: 0 0 12px;
  font-size: 18px;
}

.detail-quick-panel ul,
.detail-tip-list,
.detail-pro-con ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.detail-quick-panel li {
  padding: 12px 0;
  border-top: 1px solid rgba(149, 166, 190, 0.13);
}

.detail-quick-panel li:first-child {
  padding-top: 0;
  border-top: 0;
}

.detail-quick-panel strong,
.detail-quick-panel span {
  display: block;
}

.detail-quick-panel span {
  margin-top: 5px;
  color: var(--green);
  font-weight: 900;
}

.detail-quick-panel p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.detail-content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: 18px;
  margin-top: 18px;
}

.detail-main-column,
.detail-side-column {
  display: grid;
  align-content: start;
  gap: 18px;
}

.detail-section {
  padding: 18px;
}

.detail-section > p {
  margin: 0;
  color: var(--muted);
  line-height: 1.8;
}

.detail-link-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}

.detail-link-card {
  padding: 14px;
  box-shadow: none;
}

.detail-link-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.detail-link-card-head span {
  color: var(--cyan);
  font-size: 12px;
  font-weight: 800;
}

.detail-link-card h3 {
  margin: 4px 0 0;
  font-size: 17px;
}

.detail-link-card-head a,
.detail-media-link {
  border: 1px solid rgba(88, 214, 141, 0.24);
  background: rgba(88, 214, 141, 0.08);
}

.detail-link-card-head a {
  flex: 0 0 auto;
  padding: 7px 10px;
  border-radius: 999px;
  color: var(--green);
  font-size: 12px;
  font-weight: 900;
}

.detail-link-card > p {
  margin: 12px 0;
  color: var(--muted);
  line-height: 1.55;
}

.detail-pro-con {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.detail-pro-con strong {
  display: block;
  margin-bottom: 6px;
  color: var(--text);
  font-size: 12px;
}

.detail-pro-con li,
.detail-tip-list li {
  position: relative;
  padding-left: 12px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.detail-pro-con li::before,
.detail-tip-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .72em;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--green);
}

.detail-steps {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.detail-steps li {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 10px;
  color: var(--muted);
  line-height: 1.6;
}

.detail-steps span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: rgba(71, 199, 232, 0.12);
  color: var(--cyan);
  font-size: 12px;
  font-weight: 900;
}

.detail-media-list {
  display: grid;
  gap: 10px;
}

.detail-media-link {
  display: block;
  padding: 12px;
  border-radius: 8px;
}

.detail-media-link span {
  color: var(--green);
  font-size: 12px;
  font-weight: 900;
}

.detail-media-link strong {
  display: block;
  margin-top: 4px;
}

.detail-media-link p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.detail-tip-list {
  display: grid;
  gap: 8px;
}

.detail-empty {
  padding: 48px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
}

.detail-empty a {
  color: var(--green);
  font-weight: 800;
}

@media (max-width: 1180px) {
  .detail-hero-panel,
  .detail-content-grid,
  .simple-bottom-grid {
    grid-template-columns: 1fr;
  }

  .simple-tool-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .easy-tool-grid {
    grid-template-columns: 1fr;
  }

  .detail-pro-con {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .utility-detail-shell {
    width: min(100% - 24px, 1180px);
    padding-top: 22px;
  }

  .utility-detail-page {
    gap: 14px;
  }

  .detail-hero-panel {
    padding: 18px;
  }

  .detail-hero-copy h1 {
    font-size: 36px;
  }

  .detail-hero-copy p:not(.detail-eyebrow) {
    font-size: 16px;
    line-height: 1.75;
  }

  .detail-visual-card {
    padding: 16px;
  }

  .detail-file-stack {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .detail-file-card {
    grid-template-columns: 44px minmax(0, 1fr);
    min-height: 68px;
    padding: 12px;
  }

  .detail-file-icon {
    width: 44px;
    height: 44px;
    margin: 0;
    font-size: 23px;
  }

  .detail-file-card b {
    font-size: 17px;
  }

  .simple-tool-card {
    grid-template-columns: 44px minmax(0, 1fr);
    min-height: 0;
    padding: 15px;
  }

  .simple-tool-grid,
  .easy-tool-grid {
    grid-template-columns: 1fr;
  }
.detail-step-image-section {
    padding: 14px;
  }

  .detail-step-image-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .detail-step-image-card img {
    min-height: 220px;
    max-height: none;
  }

  .simple-tool-icon {
    width: 44px;
    height: 44px;
    font-size: 23px;
  }

  .tools-workspace .tool-section,
  .tools-workspace .favorites-section {
    padding: 12px;
  }

  .tools-workspace .section-meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .utility-category-grid {
    grid-template-columns: 1fr;
  }

  .utility-subsection-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .utility-subsection-head p {
    max-width: none;
    text-align: left;
  }

  .utility-item-grid {
    grid-template-columns: 1fr;
  }

}

/* Centered search landing, inspired by compact AI tool directories */
.command-hero {
  position: relative;
  width: min(980px, 100%);
  margin: clamp(34px, 5vw, 72px) auto clamp(28px, 4vw, 48px);
  text-align: center;
}

.hero-badge {
  position: static;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 18px;
  border: 1px solid rgba(88, 214, 141, 0.22);
  border-radius: 999px;
  background: rgba(88, 214, 141, 0.055);
  box-shadow: 0 0 0 0 rgba(88, 214, 141, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.05);
  color: rgba(238, 244, 248, 0.72);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  animation: badge-breathe 2.8s ease-in-out infinite;
}

.hero-badge::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-right: 8px;
  border-radius: 999px;
  background: var(--green);
  box-shadow: 0 0 12px rgba(88, 214, 141, 0.9);
  animation: dot-breathe 2.8s ease-in-out infinite;
}

@keyframes badge-breathe {
  0%, 100% {
    border-color: rgba(88, 214, 141, 0.18);
    box-shadow: 0 0 0 0 rgba(88, 214, 141, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  }

  50% {
    border-color: rgba(88, 214, 141, 0.46);
    box-shadow: 0 0 22px rgba(88, 214, 141, 0.18), 0 0 0 5px rgba(88, 214, 141, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  }
}

@keyframes dot-breathe {
  0%, 100% {
    opacity: .62;
    transform: scale(.92);
  }

  50% {
    opacity: 1;
    transform: scale(1.18);
  }
}

.hero-brand-lockup {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 22px;
}

.hero-logo {
  position: relative;
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  overflow: visible;
  border-radius: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.hero-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.duck-bubble {
  position: absolute;
  left: 68%;
  top: 36%;
  width: 7px;
  height: 7px;
  border: 1px solid rgba(143, 239, 231, 0.72);
  border-radius: 999px;
  background: rgba(143, 239, 231, 0.14);
  box-shadow: 0 0 10px rgba(71, 199, 232, 0.24);
  opacity: 0;
  pointer-events: none;
  animation: duckBubble 3.8s ease-in-out infinite;
}

.duck-bubble.b2 {
  width: 5px;
  height: 5px;
  animation-delay: 1.15s;
}

.duck-bubble.b3 {
  width: 9px;
  height: 9px;
  animation-delay: 2.25s;
}

@keyframes duckBubble {
  0% {
    opacity: 0;
    transform: translate(0, 0) scale(0.55);
  }

  12% {
    opacity: .72;
  }

  62% {
    opacity: .5;
    transform: translate(14px, -24px) scale(1);
  }

  100% {
    opacity: 0;
    transform: translate(22px, -42px) scale(1.28);
  }
}

.command-hero h1 {
  margin: 0;
  color: transparent;
  background: linear-gradient(90deg, var(--green), var(--cyan));
  -webkit-background-clip: text;
  background-clip: text;
  font-size: clamp(42px, 5.7vw, 72px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: 0;
}

.hero-tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(18px, 3vw, 38px);
  margin: 28px auto 16px;
}

.hero-tabs .filter-chip {
  position: relative;
  min-height: 34px;
  padding: 0 2px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: rgba(195, 206, 216, 0.72);
  font-size: 16px;
  font-weight: 700;
}

.hero-tabs .filter-chip.active,
.hero-tabs .filter-chip:hover {
  color: var(--text);
  background: transparent;
}

.hero-tabs .filter-chip.active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -6px;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--green), var(--cyan));
}

.command-hero .search-panel {
  width: min(900px, 100%);
  margin: 0 auto;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.command-hero .search-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.command-hero .search-box {
  min-height: 64px;
  padding: 0 20px 0 24px;
  border: 1px solid rgba(149, 166, 190, 0.2);
  border-radius: 999px;
  background: rgba(238, 244, 248, 0.12);
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.command-hero .search-box:focus-within {
  border-color: rgba(88, 214, 141, 0.56);
  background: rgba(8, 16, 24, 0.9);
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.26), 0 0 0 4px rgba(88, 214, 141, 0.08);
}

.command-hero .search-box span {
  order: 2;
  margin-left: auto;
  color: rgba(238, 244, 248, 0.86);
  font-size: 26px;
}

.command-hero .search-box input {
  color: var(--text);
  font-size: 17px;
}

.command-hero .search-box input::placeholder {
  color: rgba(195, 206, 216, 0.56);
}

.hero-hint {
  width: 100%;
  margin: 0 auto 14px;
  color: rgba(195, 206, 216, 0.68);
  font-size: 14px;
  line-height: 1.55;
  text-align: center;
}

.home-layout {
  margin-top: 0;
}

@media (max-width: 760px) {
  .hero-badge {
    position: static;
    margin-bottom: 18px;
  }

  .hero-brand-lockup {
    flex-direction: column;
    gap: 12px;
    margin-top: 0;
  }

  .hero-tabs {
    gap: 16px;
    overflow-x: auto;
    justify-content: flex-start;
    padding-bottom: 6px;
  }

  .command-hero {
    position: relative;
    text-align: left;
  }

  .hero-hint {
    max-width: none;
    margin-bottom: 14px;
    text-align: center;
  }

  .command-hero .search-box {
    border-radius: 14px;
  }
}

.command-hero {
  text-align: center;
}

.hero-brand-lockup {
  display: flex;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}

/* Clean workspace command area */
.home-layout {
  margin-top: 28px;
}

.workspace-search {
  margin-bottom: 14px;
  padding: 18px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(10, 17, 26, 0.76);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.workspace-title-row {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}

.workspace-title-row .eyebrow {
  margin: 0 0 6px;
  color: var(--green);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
}

.workspace-title-row h1 {
  margin: 0;
  font-size: 28px;
  line-height: 1.15;
}

.workspace-title-row p {
  max-width: 340px;
  margin: 0;
  color: rgba(195, 206, 216, 0.78);
  font-size: 14px;
  line-height: 1.55;
  text-align: right;
}

.workspace-search .search-panel {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.workspace-search .search-label {
  display: none;
}

.workspace-search .search-box {
  min-height: 52px;
  padding: 0 16px;
  border-radius: 8px;
  border-color: rgba(71, 199, 232, 0.32);
  background: rgba(4, 10, 16, 0.82);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.workspace-search .search-box:focus-within {
  border-color: rgba(88, 214, 141, 0.58);
  box-shadow: 0 0 0 3px rgba(88, 214, 141, 0.08);
}

.workspace-search .quick-filters {
  gap: 6px;
  margin-top: 10px;
}

.workspace-search .filter-chip {
  min-height: 30px;
  padding: 0 10px;
  border-radius: 7px;
  color: rgba(195, 206, 216, 0.78);
  background: transparent;
}

.workspace-search .filter-chip.active,
.workspace-search .filter-chip:hover {
  color: var(--text);
  border-color: rgba(88, 214, 141, 0.28);
  background: rgba(88, 214, 141, 0.12);
}

@media (max-width: 760px) {
  .workspace-title-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .workspace-title-row p {
    max-width: none;
    text-align: left;
  }
}

/* Refined workspace hero */
#matrix {
  opacity: 0.24;
}

.hero {
  display: block;
  min-height: 0;
  padding: clamp(48px, 6vw, 76px) 0 38px;
}

.hero-copy {
  width: min(920px, 100%);
  padding-bottom: 0;
}

.hero-copy h1 {
  gap: 0;
  max-width: 760px;
  font-size: clamp(46px, 5vw, 76px);
  line-height: 1.08;
}

.hero-subtitle {
  max-width: 620px;
  margin-top: 18px;
  color: #c3ced8;
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.65;
}

.hero .search-panel {
  width: min(860px, 100%);
  margin-top: 26px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  justify-self: start;
}

.hero .search-label {
  margin-bottom: 9px;
  color: rgba(195, 206, 216, 0.78);
  font-size: 13px;
  font-weight: 700;
}

.hero .search-box {
  min-height: 60px;
  padding: 0 18px;
  border-color: rgba(71, 199, 232, 0.42);
  background: rgba(5, 12, 18, 0.82);
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.hero .search-box:focus-within {
  border-color: rgba(88, 214, 141, 0.62);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28), 0 0 0 3px rgba(88, 214, 141, 0.08);
}

.hero .search-box input {
  font-size: 16px;
}

.hero .quick-filters {
  gap: 6px;
  margin-top: 12px;
}

.hero .filter-chip {
  min-height: 32px;
  padding: 0 11px;
  border-radius: 7px;
  background: transparent;
}

.hero .filter-chip.active,
.hero .filter-chip:hover {
  color: var(--text);
  border-color: rgba(88, 214, 141, 0.28);
  background: rgba(88, 214, 141, 0.12);
}

@media (max-width: 560px) {
  .hero {
    padding-top: 34px;
  }

  .hero-copy h1 {
    font-size: 38px;
    line-height: 1.12;
  }
}

/* Balanced desktop hero */
@media (min-width: 981px) {
  .hero {
    display: grid;
    grid-template-columns: minmax(430px, 0.78fr) minmax(520px, 1fr);
    align-items: end;
    gap: clamp(42px, 5vw, 92px);
    padding: clamp(50px, 5.4vw, 76px) 0 42px;
  }

  .hero-copy {
    width: 100%;
  }

  .hero-copy h1 {
    max-width: 620px;
    font-size: clamp(48px, 4.2vw, 70px);
  }

  .hero-subtitle {
    max-width: 520px;
    margin-top: 16px;
  }

  .hero .search-panel {
    width: min(720px, 100%);
    margin: 0 0 6px auto;
  }

  .hero .search-label {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    margin-bottom: 10px;
    color: var(--green);
    letter-spacing: .02em;
  }

  .hero .search-box {
    min-height: 64px;
    border-radius: 8px;
  }

  .hero .quick-filters {
    justify-content: flex-start;
  }
}

/* Compact product workspace header */
.hero {
  display: grid;
  grid-template-columns: minmax(300px, 420px) minmax(420px, 1fr);
  align-items: center;
  gap: clamp(18px, 2.4vw, 34px);
  min-height: 0;
  margin-top: 28px;
  padding: 18px 20px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(10, 17, 26, 0.74);
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.hero-copy {
  width: 100%;
}

.eyebrow {
  margin-bottom: 8px;
  font-size: 12px;
  letter-spacing: .08em;
}

.hero-copy h1 {
  max-width: none;
  font-size: clamp(30px, 2.8vw, 42px);
  line-height: 1.12;
}

.hero-subtitle {
  max-width: 420px;
  margin-top: 10px;
  color: rgba(195, 206, 216, 0.82);
  font-size: 15px;
  line-height: 1.55;
}

.hero .search-panel {
  width: 100%;
  margin: 0;
}

.hero .search-label {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.hero .search-box {
  min-height: 52px;
  border-radius: 8px;
  background: rgba(4, 10, 16, 0.82);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.hero .quick-filters {
  margin-top: 10px;
}

.hero .filter-chip {
  min-height: 30px;
  padding: 0 10px;
  color: rgba(195, 206, 216, 0.75);
}

.hero-tabs {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
}


@media (max-width: 980px) {
  .hero {
    grid-template-columns: 1fr;
    margin-top: 18px;
  }
}

@media (max-width: 560px) {
  .hero {
    padding: 16px;
  }

  .hero-copy h1 {
    font-size: 32px;
  }
}

/* Final alignment pass for the home command area */
.command-hero {
  display: grid;
  justify-items: center;
  width: min(960px, calc(100% - 24px));
  margin-inline: auto;
  text-align: center;
}

.command-hero .hero-badge,
.command-hero .hero-brand-lockup,
.command-hero .hero-tabs,
.command-hero .search-panel {
  justify-self: center;
}

.command-hero .hero-brand-lockup {
  width: max-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.command-hero .hero-tabs {
  width: min(980px, 100%);
  justify-content: center;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  gap: 16px 18px;
  margin-left: auto;
  margin-right: auto;
  scrollbar-width: thin;
}

.command-hero .hero-tabs .filter-chip {
  flex: 0 0 auto;
}

.command-hero .search-panel {
  width: min(900px, 100%);
  margin-left: auto;
  margin-right: auto;
}

/* Favorite interaction feedback */
.favorite-btn {
  overflow: visible;
  transition:
    transform .18s ease,
    color .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease;
}

.favorite-btn.active {
  color: var(--amber);
  background: rgba(245, 193, 92, 0.12);
  box-shadow: 0 0 0 3px rgba(245, 193, 92, 0.08), 0 10px 24px rgba(245, 193, 92, 0.14);
}

.favorite-btn.favorite-pop {
  animation: favorite-pop .42s cubic-bezier(.2, 1.2, .3, 1) both;
}

.favorite-btn.favorite-unpop {
  animation: favorite-unpop .28s ease both;
}

.favorite-burst {
  position: fixed;
  z-index: 999;
  width: 24px;
  height: 24px;
  margin: -12px 0 0 -12px;
  color: var(--amber);
  font-size: 22px;
  line-height: 24px;
  text-align: center;
  pointer-events: none;
  text-shadow: 0 0 18px rgba(245, 193, 92, 0.72);
  animation: favorite-burst .62s ease-out forwards;
}

#favorite-count.count-pop {
  animation: count-pop .36s ease both;
}

@keyframes favorite-pop {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(245, 193, 92, 0);
  }

  45% {
    transform: scale(1.28) rotate(-10deg);
    box-shadow: 0 0 0 8px rgba(245, 193, 92, 0.16);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes favorite-unpop {
  0% {
    transform: scale(1);
  }

  45% {
    transform: scale(.84) rotate(8deg);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes favorite-burst {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0) scale(.5) rotate(0);
  }

  22% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: translate3d(0, -34px, 0) scale(1.35) rotate(24deg);
  }
}

@keyframes count-pop {
  0% {
    transform: translateY(0) scale(1);
  }

  45% {
    color: var(--amber);
    transform: translateY(-2px) scale(1.12);
  }

  100% {
    transform: translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .favorite-btn,
  .favorite-btn.favorite-pop,
  .favorite-btn.favorite-unpop,
  .favorite-burst,
  #favorite-count.count-pop {
    animation: none;
    transition: none;
  }
}

@media (max-width: 760px) {
  .command-hero {
    justify-items: stretch;
    text-align: center;
  }

  .command-hero .hero-brand-lockup,
  .command-hero .hero-tabs,
  .command-hero .search-panel {
    width: 100%;
  }

  .command-hero .hero-tabs {
    justify-content: flex-start;
  }
}



/* Home overview marquees */
.tools-workspace .category-group-overview {
  padding-inline: 15px;
}

.overview-section {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  contain: paint;
}

/* A restrained, rightward aurora shared by the four overview content rows. */
.overview-section::before,
.overview-section::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  inset: -22% -18%;
  will-change: background-position, opacity;
  mix-blend-mode: screen;
}

.overview-section::before {
  background:
    linear-gradient(104deg, transparent 0 10%, rgba(75, 193, 161, 0) 24%, rgba(86, 203, 171, .035) 36%, rgba(74, 190, 175, .06) 48%, rgba(63, 169, 170, .02) 61%, transparent 78%) 0 0 / 520px 100% repeat-x,
    linear-gradient(98deg, transparent 0 20%, rgba(72, 187, 160, 0) 34%, rgba(91, 205, 174, .025) 47%, rgba(78, 187, 176, .045) 59%, rgba(65, 164, 165, .015) 72%, transparent 87%) 0 0 / 760px 100% repeat-x;
  filter: blur(26px) saturate(.82);
  opacity: .28;
  transform: skewX(-2deg);
  animation: overview-content-aurora-flow 16s linear infinite;
}

.overview-section::after {
  inset: -8% -14%;
  background: linear-gradient(101deg, transparent 0 18%, rgba(119, 224, 192, 0) 31%, rgba(125, 225, 194, .04) 46%, rgba(79, 191, 181, .025) 58%, rgba(69, 170, 168, 0) 73%, transparent 86%) 0 0 / 680px 100% repeat-x;
  filter: blur(11px) saturate(.8);
  opacity: .18;
  animation: overview-content-aurora-thread 12s linear infinite;
}

.overview-section > * {
  position: relative;
  z-index: 1;
}

.overview-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
}

.overview-heading h2 {
  margin: 3px 0 0;
  font-size: 22px;
  line-height: 1.25;
}

.overview-kicker {
  color: var(--green);
  font-size: 11px;
  font-weight: 900;
}

.overview-row {
  padding: 14px 0 16px;
  border-top: 1px solid rgba(149, 166, 190, 0.12);
}

.overview-row:first-of-type {
  border-top: 0;
}

.overview-row-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
}

.overview-row-heading h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  min-height: 36px;
  padding: 7px 12px 7px 10px;
  border: 1px solid rgba(88, 214, 141, 0.22);
  border-left: 3px solid var(--green);
  border-radius: 6px;
  background: linear-gradient(90deg, rgba(88, 214, 141, 0.11), rgba(71, 199, 232, 0.035));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
  font-size: 17px;
  line-height: 1.3;
}


.overview-row-heading b {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid rgba(88, 214, 141, 0.28);
  border-radius: 6px;
  background: rgba(88, 214, 141, 0.08);
  color: #78deb0;
  font-size: 12px;
  font-weight: 800;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.overview-marquee {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 3px 0 5px;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent);
}

.overview-marquee-track {
  display: flex;
  width: max-content;
  will-change: transform;
}

.overview-marquee-group {
  display: flex;
  flex: 0 0 auto;
  gap: 10px;
  padding-right: 10px;
}

.overview-marquee-left .overview-marquee-track {
  animation: overview-scroll-left 48s linear infinite;
}

.overview-marquee-right .overview-marquee-track {
  animation: overview-scroll-right 52s linear infinite;
}

.overview-marquee:hover .overview-marquee-track,
.overview-marquee:focus-within .overview-marquee-track {
  animation-play-state: paused;
}

.overview-tool-card {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 11px;
  min-width: 190px;
  min-height: 68px;
  padding: 11px 14px;
  border: 1px solid rgba(149, 166, 190, 0.15);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
  transition: translate .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.overview-tool-card:hover,
.overview-tool-card:focus-visible {
  translate: 0 -2px;
  border-color: rgba(88, 214, 141, 0.4);
  background: rgba(88, 214, 141, 0.075);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  outline: none;
}

.overview-tool-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.15), rgba(71, 199, 232, 0.11));
  font-size: 22px;
}

.overview-tool-icon.tool-icon {
  width: 42px;
  height: 42px;
}

.overview-tool-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.overview-tool-copy strong,
.overview-tool-copy small {
  white-space: nowrap;
}

.overview-tool-copy strong {
  color: var(--text);
  font-size: 15px;
  line-height: 1.25;
}

.overview-tool-copy small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

@keyframes overview-content-aurora-flow {
  from { background-position: -520px 0, -760px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes overview-content-aurora-thread {
  from { background-position: -680px 0; }
  to { background-position: 0 0; }
}

@keyframes overview-scroll-left {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-50%, 0, 0); }
}

@keyframes overview-scroll-right {
  from { transform: translate3d(-50%, 0, 0); }
  to { transform: translate3d(0, 0, 0); }
}

@media (max-width: 560px) {
  .overview-heading {
    margin-bottom: 4px;
  }

  .overview-row {
    padding-block: 12px 14px;
  }

  .overview-tool-card {
    min-width: 174px;
    min-height: 62px;
    padding: 9px 12px;
  }

  .overview-tool-icon,
  .overview-tool-icon.tool-icon {
    width: 38px;
    height: 38px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .overview-section::before,
  .overview-section::after,
  .overview-marquee-track {
    animation: none !important;
  }
}
@media (max-width: 980px) {
  .tools-workspace .category-bar {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
  }

  .tools-workspace .category-bar::-webkit-scrollbar {
    display: none;
  }
}
/* Daily resources */
.resource-item-card {
  position: relative;
  border-color: rgba(71, 199, 232, 0.16);
}

.resource-item-card::after {
  content: "查看";
  position: absolute;
  right: 11px;
  bottom: 9px;
  color: rgba(71, 199, 232, 0);
  font-size: 11px;
  font-weight: 900;
  transition: color .2s ease, translate .2s ease;
}

.resource-item-card:hover,
.resource-item-card:focus-visible {
  border-color: rgba(71, 199, 232, 0.38);
  background: rgba(71, 199, 232, 0.065);
  outline: none;
}

.resource-item-card:hover::after,
.resource-item-card:focus-visible::after {
  color: var(--cyan);
  translate: -2px 0;
}

.resource-item-card .utility-category-icon {
  background: rgba(71, 199, 232, 0.1);
  box-shadow: inset 0 0 0 1px rgba(71, 199, 232, 0.12);
}

.resource-detail-shell {
  width: min(1540px, calc(100% - 48px));
}

.resource-detail-page {
  gap: 0;
}

.resource-hero-panel {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 460px);
  margin-bottom: 28px;
  border-color: rgba(71, 199, 232, 0.2);
  background:
    linear-gradient(115deg, rgba(88, 214, 141, 0.07), transparent 48%),
    rgba(10, 18, 28, 0.9);
}

.resource-hero-panel .detail-hero-copy h1 {
  font-size: clamp(44px, 5vw, 68px);
}

.resource-hero-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.resource-stat {
  display: grid;
  align-content: center;
  min-height: 132px;
  padding: 18px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  text-align: center;
}

.resource-stat:nth-child(2) {
  border-color: rgba(71, 199, 232, 0.2);
}

.resource-stat:nth-child(3) {
  border-color: rgba(245, 189, 74, 0.2);
}

.resource-stat strong {
  color: var(--green);
  font-size: 32px;
  line-height: 1;
}

.resource-stat:nth-child(2) strong {
  color: var(--cyan);
}

.resource-stat:nth-child(3) strong {
  color: #f5bd4a;
}

.resource-stat span {
  margin-top: 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.resource-entry-list {
  display: grid;
}

.resource-entry {
  padding: 30px 6px 34px;
  border-top: 1px solid rgba(149, 166, 190, 0.14);
}

.resource-entry:first-child {
  border-top: 0;
}

.resource-entry-head,
.resource-advice-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.resource-entry-title {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.resource-entry-title > span {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  flex: 0 0 auto;
  border: 1px solid rgba(71, 199, 232, 0.16);
  border-radius: 8px;
  background: rgba(71, 199, 232, 0.085);
  font-size: 23px;
}

.resource-entry-title small {
  display: block;
  margin-bottom: 3px;
  color: var(--cyan);
  font-size: 10px;
  font-weight: 900;
}

.resource-entry-title h2 {
  margin: 0;
  font-size: 23px;
  line-height: 1.3;
}

.resource-entry-count {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.resource-entry-note {
  max-width: 920px;
  margin: 14px 0 0 60px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.8;
}

.resource-link-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 10px;
  margin-top: 18px;
}

.resource-link-card {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 12px;
  min-height: 78px;
  padding: 12px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  color: inherit;
  transition: translate .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.resource-link-card:hover,
.resource-link-card:focus-visible {
  translate: 0 -2px;
  border-color: rgba(88, 214, 141, 0.34);
  background: rgba(88, 214, 141, 0.065);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
  outline: none;
}

.resource-link-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(71, 199, 232, 0.1);
}

.resource-link-icon img {
  width: 25px;
  height: 25px;
  object-fit: contain;
}

.resource-link-icon i {
  display: none;
  font-size: 20px;
  font-style: normal;
}

.resource-link-icon i.is-visible {
  display: block;
}

.resource-link-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.resource-link-copy strong {
  overflow-wrap: anywhere;
  font-size: 15px;
  line-height: 1.35;
}

.resource-link-copy small {
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.resource-link-arrow {
  color: var(--cyan);
  font-size: 18px;
  transition: translate .2s ease;
}

.resource-link-card:hover .resource-link-arrow {
  translate: 2px -2px;
}

.resource-shot-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(480px, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.resource-shot-card {
  position: relative;
  display: grid;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.15);
  border-radius: 8px;
  background: #e9eef1;
}

.resource-shot-card img {
  display: block;
  width: 100%;
  min-height: 210px;
  max-height: 520px;
  object-fit: contain;
  background: #e9eef1;
}

.resource-shot-card figcaption {
  position: absolute;
  right: 8px;
  bottom: 8px;
  padding: 5px 8px;
  border-radius: 6px;
  background: rgba(7, 11, 18, 0.82);
  color: #eef6f7;
  font-size: 11px;
  font-weight: 800;
  backdrop-filter: blur(8px);
}

.resource-shot-card.is-image-missing {
  min-height: 180px;
  place-items: center;
}

.resource-shot-card.is-image-missing::before {
  content: "页面截图暂时无法加载";
  color: #56616b;
  font-size: 13px;
  font-weight: 800;
}

.resource-shot-card.is-image-missing img {
  display: none;
}

.resource-video-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(420px, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.resource-video-wrap {
  overflow: hidden;
  border: 1px solid rgba(71, 199, 232, 0.18);
  border-radius: 8px;
  background: #060a0f;
}

.resource-video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
}

.resource-advice-section {
  margin-top: 12px;
  padding: 28px;
  border: 1px solid rgba(245, 189, 74, 0.18);
  border-radius: 8px;
  background: rgba(245, 189, 74, 0.045);
}

.resource-advice-head h2 {
  margin: 0;
  font-size: 22px;
}


.resource-advice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.resource-advice-grid p {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 10px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}

.resource-advice-grid b {
  color: #f5bd4a;
  font-size: 11px;
}

@media (max-width: 920px) {
  .resource-hero-panel {
    grid-template-columns: 1fr;
  }

  .resource-advice-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .resource-detail-shell {
    width: min(100% - 24px, 1540px);
  }

  .resource-hero-panel {
    margin-bottom: 16px;
  }

  .resource-hero-stats {
    gap: 6px;
  }

  .resource-stat {
    min-height: 92px;
    padding: 10px 6px;
  }

  .resource-stat strong {
    font-size: 25px;
  }

  .resource-entry {
    padding: 24px 0 28px;
  }

  .resource-entry-head,
  .resource-advice-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .resource-entry-note {
    margin-left: 0;
  }

  .resource-link-grid,
  .resource-shot-grid,
  .resource-video-grid {
    grid-template-columns: 1fr;
  }

  .resource-shot-card img {
    min-height: 150px;
  }

  .resource-advice-section {
    padding: 20px;
  }
}

/* Resource pages follow the practical-tool layout */
.resource-detail-shell {
  width: min(1440px, calc(100% - 48px));
}

.resource-detail-page {
  gap: 24px;
}

.resource-aligned-hero {
  margin: 0;
}

.resource-aligned-card {
  min-height: 0;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 18px;
  padding: 24px;
  cursor: default;
}

.resource-aligned-card.is-single-resource {
  cursor: pointer;
}

.resource-aligned-card .simple-tool-copy {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  grid-template-areas:
    "head head"
    "description action";
  align-items: center;
  column-gap: 20px;
  row-gap: 8px;
  min-width: 0;
  min-height: 0;
}

.resource-aligned-card .simple-tool-icon {
  width: 72px;
  height: 72px;
  font-size: 34px;
}

.resource-aligned-card .simple-tool-head {
  grid-area: head;
}

.resource-aligned-card .simple-tool-head h3 {
  font-size: 22px;
}

.resource-aligned-card .simple-tool-copy p {
  grid-area: description;
  margin: 0;
  font-size: 16px;
  line-height: 1.55;
}

.resource-aligned-card .simple-tool-copy > .simple-tool-cta {
  grid-area: action;
  margin: 0;
}


.resource-inline-images,
.resource-inline-videos {
  grid-column: 1 / -1;
}

.resource-direct-image img {
  max-height: 620px;
  object-fit: contain;
}


@media (max-width: 560px) {
  .resource-detail-shell {
    width: min(100% - 24px, 1440px);
  }

  .resource-aligned-card {
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 12px;
    padding: 16px;
  }

  .resource-aligned-card .simple-tool-icon {
    width: 56px;
    height: 56px;
    font-size: 28px;
  }

  .resource-aligned-card .simple-tool-copy {
    grid-template-columns: 1fr;
    grid-template-areas:
      "head"
      "description"
      "action";
  }

  .resource-aligned-card .simple-tool-copy > .simple-tool-cta {
    justify-self: end;
    margin-top: 8px;
  }


}
/* Tutorial knowledge */
.tutorial-item-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tutorial-item-card {
  grid-template-columns: 180px minmax(0, 1fr);
  align-items: center;
  min-height: 272px;
  padding: 16px;
  gap: 20px;
  border-color: rgba(245, 193, 92, 0.16);
}
.tutorial-item-card:hover,
.tutorial-item-card:focus-visible {
  border-color: rgba(245, 193, 92, 0.36);
  background: rgba(245, 193, 92, 0.055);
  outline: none;
}
.tutorial-item-card h3 {
  margin-bottom: 10px;
  font-size: 20px;
  line-height: 1.35;
}
.tutorial-item-card p {
  display: block;
  overflow: visible;
  font-size: 15px;
  line-height: 1.65;
}
.tutorial-item-thumb {
  position: relative;
  width: 180px;
  height: 240px;
  overflow: hidden;
  border: 1px solid rgba(88, 214, 141, 0.24);
  border-radius: 6px;
  background: #0b171b;
  font-size: 30px;
  display: grid;
  place-items: center;
}
.tutorial-item-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(1.03) contrast(1.02) saturate(1.04);
  transition: filter .22s ease, scale .22s ease;
}
.tutorial-thumb-copy {
  position: absolute;
  top: 12px;
  right: 8px;
  left: 8px;
  padding: 9px 7px;
  border: 1px solid rgba(88, 214, 141, 0.24);
  border-left: 3px solid #69e3ac;
  border-radius: 4px;
  background: rgba(4, 13, 17, 0.92);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.28);
  text-align: center;
  pointer-events: none;
}
.tutorial-item-card:hover .tutorial-item-thumb img,
.tutorial-item-card:focus-visible .tutorial-item-thumb img {
  filter: brightness(1.08) contrast(1.03) saturate(1.08);
  scale: 1.025;
}
.tutorial-thumb-copy strong {
  display: block;
  color: #f4fbf8;
  font-size: 14.5px;
  font-weight: 800;
  line-height: 1.28;
  white-space: nowrap;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.9);
}
.tutorial-thumb-copy strong.is-medium { font-size: 13px; }
.tutorial-thumb-copy strong.is-long { font-size: 12px; }
body[data-active-group="tutorial-knowledge"] .home-layout {
  grid-template-columns: minmax(0, 1fr);
}

body[data-active-group="tutorial-knowledge"] .news-sidebar,
body[data-active-group="tutorial-knowledge"] .stats-sidebar {
  display: none;
}

body[data-active-group="tutorial-knowledge"] .tools-workspace .tool-section {
  padding: 22px 24px 26px;
}

body[data-active-group="tutorial-knowledge"] .tools-workspace .section-heading h2 {
  font-size: 26px;
}

body[data-active-group="tutorial-knowledge"] .tools-workspace .section-heading p {
  font-size: 15px;
}
.tutorial-detail-shell { width: min(100% - 48px, 1560px); }
.tutorial-hero-panel { grid-template-columns: minmax(0, 1fr) minmax(360px, 520px) !important; }
.tutorial-hero-image {
  position: relative;
  width: min(100%, 430px);
  aspect-ratio: 3 / 4;
  justify-self: end;
  min-height: 0;
  overflow: hidden;
  border: 1px solid rgba(245, 193, 92, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.025);
}
.tutorial-hero-image img { width: 100%; height: 100%; object-fit: cover; filter: brightness(1.05) contrast(1.02) saturate(1.05); }
.tutorial-cover-copy {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(24px, 4vw, 38px);
  background: linear-gradient(180deg, rgba(4, 11, 16, 0.72), rgba(4, 11, 16, 0.08) 56%, transparent 74%);
  pointer-events: none;
}
.tutorial-cover-copy span {
  color: #74e5ae;
  font-size: 13px;
  font-weight: 800;
}
.tutorial-cover-copy strong {
  width: 100%;
  margin-top: 12px;
  color: #f1f7f5;
  font-size: 40px;
  line-height: 1.15;
  white-space: nowrap;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.75);
}
.tutorial-cover-copy strong.is-medium { font-size: 35px; }
.tutorial-cover-copy strong.is-long { font-size: 28px; }
.tutorial-cover-copy strong,
.tutorial-detail-title {
  white-space: nowrap !important;
  word-break: normal;
  overflow-wrap: normal;
}
.tutorial-detail-title.is-medium { font-size: 54px; }
.tutorial-detail-title.is-long { font-size: 46px; }
.tutorial-cover-copy small {
  max-width: 88%;
  margin-top: 13px;
  color: #a9bdbb;
  font-size: 14px;
  line-height: 1.55;
  text-shadow: 0 1px 5px rgba(0, 0, 0, 0.78);
}
.tutorial-hero-image.is-missing { display: none; }
.tutorial-hero-fallback {
  min-height: 200px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(245, 193, 92, 0.18);
  border-radius: 8px;
  font-size: 88px;
  background: rgba(245, 193, 92, 0.05);
}

.tutorial-content-section { padding: clamp(24px, 3.6vw, 46px); }
.tutorial-content-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 24px;
}
.tutorial-content-heading h2,
.tutorial-content-heading p { margin: 0; }
.tutorial-content-heading p { color: var(--muted); order: 2; }
.tutorial-chapter {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 24px;
  padding: 32px 0;
  border-top: 1px solid rgba(149, 166, 190, 0.14);
}
.tutorial-chapter-number {
  padding-top: 4px;
  color: rgba(245, 193, 92, 0.66);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0;
}
.tutorial-chapter-heading { display: flex; align-items: center; gap: 12px; }
.tutorial-chapter-heading > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  border: 1px solid rgba(88, 214, 141, 0.15);
  border-radius: 6px;
  background: rgba(88, 214, 141, 0.075);
  font-size: 21px;
}
.tutorial-chapter-heading h2 { margin: 0; font-size: clamp(21px, 2vw, 28px); line-height: 1.3; }
.tutorial-chapter-note { margin: 15px 0 0; color: #aebdcd; font-size: 17px; line-height: 1.85; }
.tutorial-link-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 20px;
}
.tutorial-link-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 66px;
  padding: 13px 15px;
  border: 1px solid rgba(71, 199, 232, 0.17);
  border-radius: 6px;
  background: rgba(71, 199, 232, 0.035);
  transition: border-color .2s ease, background .2s ease, translate .2s ease;
}
.tutorial-link-card:hover,
.tutorial-link-card:focus-visible {
  border-color: rgba(71, 199, 232, 0.4);
  background: rgba(71, 199, 232, 0.08);
  translate: 0 -2px;
  outline: none;
}
.tutorial-link-card span,
.tutorial-link-card strong,
.tutorial-link-card small { min-width: 0; display: block; }
.tutorial-link-card strong { color: var(--text); line-height: 1.35; }
.tutorial-link-card small { margin-top: 4px; color: var(--muted); }
.tutorial-link-card > b { color: var(--cyan); }
.tutorial-image-grid,
.tutorial-video-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 22px;
}
.tutorial-image-card,
.tutorial-video-card {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.025);
}
.tutorial-image-card img { display: block; width: 100%; max-height: 680px; object-fit: contain; }
.tutorial-image-card figcaption {
  padding: 9px 12px;
  border-top: 1px solid rgba(149, 166, 190, 0.1);
  color: var(--muted);
  font-size: 12px;
}
.tutorial-video-card video,
.tutorial-video-card iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
  background: #05090e;
}
@media (max-width: 1280px) {
  .tutorial-item-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .tutorial-hero-panel { grid-template-columns: 1fr !important; }
  .tutorial-hero-image { justify-self: center; }
}
@media (max-width: 680px) {
  .tutorial-detail-shell { width: min(100% - 24px, 1560px); }
  .tutorial-item-grid,
  .tutorial-link-grid,
  .tutorial-image-grid,
  .tutorial-video-grid { grid-template-columns: 1fr; }
  body[data-active-group="tutorial-knowledge"] .tools-workspace .tool-section { padding: 16px; }
  .tutorial-item-card { grid-template-columns: 128px minmax(0, 1fr); min-height: 196px; padding: 12px; gap: 12px; }
  .tutorial-item-thumb { width: 128px; height: 171px; }
  .tutorial-thumb-copy { top: 8px; right: 5px; left: 5px; padding: 7px 5px; }
  .tutorial-item-card:hover .tutorial-item-thumb img,
.tutorial-item-card:focus-visible .tutorial-item-thumb img {
  filter: brightness(1.08) contrast(1.03) saturate(1.08);
  scale: 1.025;
}
  .tutorial-thumb-copy strong { font-size: 11.5px; }
  .tutorial-thumb-copy strong.is-medium { font-size: 10px; }
  .tutorial-thumb-copy strong.is-long { font-size: 9px; }
  .tutorial-hero-image,
  .tutorial-hero-fallback { min-height: 220px; }
  .tutorial-cover-copy strong { font-size: 28px; }
  .tutorial-cover-copy strong.is-medium { font-size: 25px; }
  .tutorial-cover-copy strong.is-long { font-size: 20px; }
  .tutorial-detail-title { font-size: 32px; }
  .tutorial-detail-title.is-medium { font-size: 28px; }
  .tutorial-detail-title.is-long { font-size: 24px; }
  .tutorial-content-heading { display: block; }
  .tutorial-content-heading p { margin-top: 8px; }
  .tutorial-chapter { grid-template-columns: 1fr; gap: 8px; padding: 25px 0; }
  .tutorial-chapter-number { padding: 0; }
}
/* Roomier category cards for practical tools and daily resources */
body[data-active-group="practical-tools"] .utility-item-grid,
body[data-active-group="daily-resources"] .resource-item-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

body[data-active-group="practical-tools"] .utility-subsection,
body[data-active-group="daily-resources"] .utility-subsection {
  margin-top: 22px;
  padding-top: 22px;
}

body[data-active-group="practical-tools"] .utility-subsection:first-of-type,
body[data-active-group="daily-resources"] .utility-subsection:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

body[data-active-group="practical-tools"] .utility-subsection-head,
body[data-active-group="daily-resources"] .utility-subsection-head {
  margin-bottom: 14px;
}

body[data-active-group="practical-tools"] .utility-subsection-head h3,
body[data-active-group="daily-resources"] .utility-subsection-head h3 {
  font-size: 20px;
}

body[data-active-group="practical-tools"] .utility-subsection-head p,
body[data-active-group="daily-resources"] .utility-subsection-head p {
  max-width: 560px;
  font-size: 13px;
  line-height: 1.6;
}

body[data-active-group="practical-tools"] .utility-item-card,
body[data-active-group="daily-resources"] .resource-item-card {
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 14px;
  min-height: 110px;
  padding: 16px;
}

body[data-active-group="practical-tools"] .utility-item-card .utility-category-icon,
body[data-active-group="daily-resources"] .resource-item-card .utility-category-icon {
  width: 44px;
  height: 44px;
  font-size: 22px;
}

body[data-active-group="practical-tools"] .utility-item-card h3,
body[data-active-group="daily-resources"] .resource-item-card h3 {
  margin-bottom: 7px;
  font-size: 17px;
  line-height: 1.35;
}

body[data-active-group="practical-tools"] .utility-item-card p,
body[data-active-group="daily-resources"] .resource-item-card p {
  font-size: 14px;
  line-height: 1.55;
  -webkit-line-clamp: 3;
}

@media (max-width: 1180px) {
  body[data-active-group="practical-tools"] .utility-item-grid,
  body[data-active-group="daily-resources"] .resource-item-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  body[data-active-group="practical-tools"] .utility-item-grid,
  body[data-active-group="daily-resources"] .resource-item-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  body[data-active-group="practical-tools"] .utility-item-grid,
  body[data-active-group="daily-resources"] .resource-item-grid {
    grid-template-columns: 1fr;
  }
}
/* Portrait tutorial cards in the home overview */
.overview-tutorial-row .overview-marquee-group {
  gap: 12px;
  padding-right: 12px;
}

.overview-tool-card.overview-tutorial-card {
  width: 240px;
  min-width: 240px;
  min-height: 316px;
  align-items: stretch;
  padding: 9px;
  background: rgba(255, 255, 255, 0.035);
}

.overview-tutorial-cover {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  border: 1px solid rgba(88, 214, 141, 0.26);
  border-radius: 6px;
  background: #081317;
}

.overview-tutorial-cover img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(1.04) contrast(1.02) saturate(1.05);
  transition: scale .22s ease, filter .22s ease;
}

.overview-tutorial-title {
  position: absolute;
  top: 12px;
  right: 8px;
  left: 8px;
  padding: 10px 8px;
  border: 1px solid rgba(88, 214, 141, 0.24);
  border-left: 3px solid var(--green);
  border-radius: 4px;
  background: rgba(4, 13, 17, 0.92);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.28);
  text-align: center;
}

.overview-tutorial-title strong {
  display: block;
  color: #f3faf7;
  font-size: 15px;
  line-height: 1.25;
  white-space: nowrap;
}

.overview-tutorial-title strong.is-medium { font-size: 13.5px; }
.overview-tutorial-title strong.is-long { font-size: 12.5px; }

.overview-tutorial-fallback {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  font-size: 48px;
}

.overview-tutorial-card:hover .overview-tutorial-cover img,
.overview-tutorial-card:focus-visible .overview-tutorial-cover img {
  scale: 1.025;
  filter: brightness(1.09) contrast(1.03) saturate(1.09);
}

@media (max-width: 560px) {
  .overview-tool-card.overview-tutorial-card {
    width: 190px;
    min-width: 190px;
    min-height: 252px;
    padding: 7px;
  }

  .overview-tutorial-title strong { font-size: 12px; }
  .overview-tutorial-title strong.is-medium { font-size: 10.5px; }
  .overview-tutorial-title strong.is-long { font-size: 9.5px; }
}
/* Search spacing after removing the hero filter tabs */
.command-hero .search-panel {
  margin-top: 28px;
}

@media (max-width: 560px) {
  .command-hero .search-panel {
    margin-top: 20px;
  }
}
/* Animated aurora for the open space beside the home hero */
.command-hero {
  isolation: isolate;
  overflow: visible;
}

.command-hero > :not(.hero-aurora) {
  position: relative;
  z-index: 1;
}

.hero-aurora {
  position: absolute;
  z-index: 0;
  top: 48%;
  left: 72%;
  width: clamp(620px, 44vw, 820px);
  height: clamp(260px, 23vw, 360px);
  transform: translate3d(0, -55%, 0);
  border-radius: 48%;
  opacity: 1;
  pointer-events: none;
  mix-blend-mode: normal;
  filter: saturate(1.16) contrast(1.2) brightness(1.08);
  -webkit-mask-image: radial-gradient(ellipse 98% 92% at 50% 52%, #000 0%, #000 58%, rgba(0, 0, 0, .86) 76%, transparent 100%);
  mask-image: radial-gradient(ellipse 98% 92% at 50% 52%, #000 0%, #000 58%, rgba(0, 0, 0, .86) 76%, transparent 100%);
}

@media (max-width: 1280px) {
  .hero-aurora {
    left: 60%;
    width: 52vw;
    height: clamp(240px, 28vw, 335px);
    opacity: .9;
  }
}

@media (max-width: 760px) {
  .hero-aurora {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hero-aurora {
    opacity: .82;
  }
}

/* Empty states for new content groups */
.category-empty-state {
  display: grid;
  grid-column: 1 / -1;
  min-height: 180px;
  place-content: center;
  gap: 8px;
  padding: 28px;
  border: 1px dashed rgba(88, 214, 141, 0.22);
  border-radius: 6px;
  color: var(--muted);
  text-align: center;
  background: rgba(88, 214, 141, 0.025);
}

.category-empty-state strong {
  color: var(--text);
  font-size: 22px;
}

.category-empty-state p {
  margin: 0;
  line-height: 1.7;
}
/* Editorial tutorial cover typography */
.tutorial-thumb-copy,
.overview-tutorial-title {
  position: absolute;
  right: 10px;
  left: 10px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  text-align: center;
  pointer-events: none;
}

.tutorial-thumb-copy {
  top: 19%;
  padding: 8px 3px 14px;
}

.overview-tutorial-title {
  top: 20%;
  right: 12px;
  left: 12px;
  padding: 10px 4px 17px;
}

.tutorial-thumb-copy::after,
.overview-tutorial-title::after {
  content: "";
  position: absolute;
  bottom: 2px;
  left: 50%;
  width: 48px;
  height: 1px;
  transform: translateX(-50%);
  background: rgba(105, 227, 172, 0.72);
  box-shadow: 0 0 9px rgba(88, 214, 141, 0.38);
}

.tutorial-thumb-copy::before,
.overview-tutorial-title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 5px;
  height: 5px;
  transform: translateX(-50%) rotate(45deg);
  background: #79dfb0;
  box-shadow: 0 0 8px rgba(88, 214, 141, 0.55);
}

.tutorial-thumb-copy strong,
.overview-tutorial-title strong {
  display: block;
  color: #edf8f3;
  font-family: "STZhongsong", "Source Han Serif SC", "Noto Serif CJK SC", "Songti SC", "SimSun", serif;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0;
  white-space: nowrap;
  -webkit-text-stroke: .2px rgba(236, 255, 247, 0.38);
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.12), 0 4px 13px rgba(0, 0, 0, 0.96), 0 0 18px rgba(88, 214, 141, 0.16);
}

.tutorial-thumb-copy strong { font-size: 15.5px; }
.tutorial-thumb-copy strong.is-medium { font-size: 14px; }
.tutorial-thumb-copy strong.is-long { font-size: 12.5px; }

.overview-tutorial-title strong {
  font-size: 18px;
  -webkit-text-stroke-width: .25px;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.12), 0 5px 16px rgba(0, 0, 0, 0.96), 0 0 20px rgba(88, 214, 141, 0.18);
}

.overview-tutorial-title strong.is-medium { font-size: 16px; }
.overview-tutorial-title strong.is-long { font-size: 14px; }

@media (max-width: 680px) {
  .tutorial-thumb-copy {
    top: 18%;
    right: 6px;
    left: 6px;
    padding: 5px 2px 12px;
  }

  .tutorial-thumb-copy strong { font-size: 12px; }
  .tutorial-thumb-copy strong.is-medium { font-size: 10.5px; }
  .tutorial-thumb-copy strong.is-long { font-size: 9.2px; }
}

@media (max-width: 560px) {
  .overview-tutorial-title {
    top: 18%;
    right: 8px;
    left: 8px;
    padding: 7px 3px 14px;
  }

  .overview-tutorial-title strong { font-size: 14px; }
  .overview-tutorial-title strong.is-medium { font-size: 12px; }
  .overview-tutorial-title strong.is-long { font-size: 10.5px; }
}
/* Modern display treatment for tutorial covers */
.tutorial-thumb-copy,
.overview-tutorial-title {
  top: 24%;
  right: 8px;
  left: 8px;
  padding: 10px 5px 14px;
  border-left: 3px solid #63e4a7;
  background: linear-gradient(90deg, rgba(4, 15, 19, 0.94), rgba(6, 22, 26, 0.72) 72%, rgba(6, 22, 26, 0.16));
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.34), inset 0 -1px 0 rgba(105, 227, 172, 0.14);
  backdrop-filter: blur(4px);
  text-align: left;
}

.tutorial-thumb-copy::before,
.overview-tutorial-title::before {
  display: none;
}

.tutorial-thumb-copy::after,
.overview-tutorial-title::after {
  bottom: 6px;
  left: 7px;
  width: 42px;
  height: 2px;
  transform: none;
  background: linear-gradient(90deg, #62e1a4, rgba(71, 199, 232, 0.25));
  box-shadow: 0 0 10px rgba(88, 214, 141, 0.35);
}

.tutorial-thumb-copy strong,
.overview-tutorial-title strong {
  color: #f7fffb;
  font-family: "HarmonyOS Sans SC", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;
  font-weight: 800;
  letter-spacing: 0;
  -webkit-text-stroke: 0;
  background: linear-gradient(180deg, #ffffff 18%, #c7e5da 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 5px 16px rgba(0, 0, 0, 0.72), 0 0 18px rgba(88, 214, 141, 0.12);
  text-rendering: geometricPrecision;
}

.tutorial-thumb-copy strong { font-size: 17px; }
.tutorial-thumb-copy strong.is-medium { font-size: 15px; }
.tutorial-thumb-copy strong.is-long { font-size: 13px; }

.overview-tutorial-title {
  top: 25%;
  right: 10px;
  left: 10px;
  padding: 13px 10px 17px;
}

.overview-tutorial-title strong { font-size: 20px; }
.overview-tutorial-title strong.is-medium { font-size: 17.5px; }
.overview-tutorial-title strong.is-long { font-size: 15px; }

@media (max-width: 680px) {
  .tutorial-thumb-copy {
    top: 22%;
    right: 5px;
    left: 5px;
    padding: 7px 5px 11px;
  }

  .tutorial-thumb-copy::after { bottom: 4px; left: 5px; width: 30px; }
  .tutorial-thumb-copy strong { font-size: 12.5px; }
  .tutorial-thumb-copy strong.is-medium { font-size: 10.8px; }
  .tutorial-thumb-copy strong.is-long { font-size: 9px; }
}

@media (max-width: 560px) {
  .overview-tutorial-title {
    top: 23%;
    right: 7px;
    left: 7px;
    padding: 9px 7px 13px;
  }

  .overview-tutorial-title::after { bottom: 4px; left: 7px; width: 34px; }
  .overview-tutorial-title strong { font-size: 15px; }
  .overview-tutorial-title strong.is-medium { font-size: 12.5px; }
  .overview-tutorial-title strong.is-long { font-size: 10.8px; }
}
/* Centered title lockup refinement */
.tutorial-thumb-copy,
.overview-tutorial-title {
  right: 7px;
  left: 7px;
  padding: 11px 4px 15px;
  border-left: 0;
  background: linear-gradient(90deg, transparent, rgba(4, 15, 19, 0.72) 14%, rgba(4, 15, 19, 0.86) 50%, rgba(4, 15, 19, 0.72) 86%, transparent);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(3px);
  text-align: center;
}

.tutorial-thumb-copy::after,
.overview-tutorial-title::after {
  bottom: 5px;
  left: 50%;
  width: 34px;
  height: 1px;
  transform: translateX(-50%);
  background: rgba(99, 228, 167, 0.82);
}

.overview-tutorial-title {
  right: 9px;
  left: 9px;
  padding: 13px 5px 17px;
}

@media (max-width: 680px) {
  .tutorial-thumb-copy {
    right: 4px;
    left: 4px;
    padding: 8px 2px 12px;
  }

  .tutorial-thumb-copy::after {
    bottom: 4px;
    left: 50%;
    width: 26px;
    transform: translateX(-50%);
  }
}

@media (max-width: 560px) {
  .overview-tutorial-title {
    right: 6px;
    left: 6px;
    padding: 10px 3px 14px;
  }

  .overview-tutorial-title::after {
    bottom: 4px;
    left: 50%;
    width: 30px;
    transform: translateX(-50%);
  }
}


/* 即点即用：带直观插图的本地日常工具 */
body[data-active-group="instant-use"] .instant-use-section {
  padding: 14px clamp(18px, 2.4vw, 28px) clamp(18px, 2.4vw, 28px);
  border-color: rgba(88, 214, 141, 0.2);
  background:
    radial-gradient(circle at 88% 4%, rgba(71, 199, 232, 0.08), transparent 26%),
    rgba(15, 23, 34, 0.84);
}


.instant-tool-subsection {
  margin-top: 22px;
  padding-top: 22px;
  border-top-color: rgba(88, 214, 141, 0.12);
}

.instant-tool-subsection:first-of-type {
  margin-top: 0;
  padding-top: 0;
}

.instant-tool-subsection .utility-subsection-head {
  margin-bottom: 16px;
}

body[data-active-group="tutorial-knowledge"] .tutorial-subsection .utility-subsection-head {
  margin-bottom: 16px;
}

.instant-tool-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.instant-tool-card {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.16);
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(19, 31, 43, 0.94), rgba(12, 20, 29, 0.96));
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.2);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.instant-tool-card:hover,
.instant-tool-card:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(88, 214, 141, 0.46);
  background: linear-gradient(180deg, rgba(21, 36, 49, 0.98), rgba(13, 23, 33, 0.98));
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28), 0 0 0 1px rgba(71, 199, 232, 0.06);
  outline: none;
}

.instant-tool-visual {
  position: relative;
  z-index: 0;
  display: grid;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  isolation: isolate;
  place-items: center;
  border-bottom: 1px solid rgba(149, 166, 190, 0.12);
  background:
    radial-gradient(circle at 24% 18%, rgba(88, 214, 141, 0.13), transparent 32%),
    linear-gradient(145deg, rgba(8, 17, 25, 0.9), rgba(15, 29, 40, 0.82));
}

.instant-tool-visual::after {
  position: absolute;
  z-index: 2;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(180deg, transparent 78%, rgba(5, 12, 18, 0.1));
}

.instant-tool-visual img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s cubic-bezier(.22, .61, .36, 1), filter .35s ease;
}

.instant-tool-card:hover .instant-tool-visual img,
.instant-tool-card:focus-visible .instant-tool-visual img {
  transform: scale(1.025);
  filter: saturate(1.08) brightness(1.04);
}

.instant-tool-visual-fallback {
  font-size: 52px;
}

.instant-tool-body {
  position: relative;
  z-index: 1;
  padding: 14px 15px 16px;
  background: linear-gradient(180deg, rgba(14, 24, 34, 0.98), rgba(11, 19, 28, 0.98));
}

.instant-tool-title-row {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.instant-tool-icon {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid rgba(88, 214, 141, 0.16);
  border-radius: 9px;
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.16), rgba(71, 199, 232, 0.1));
  font-size: 19px;
}

.instant-tool-title-row h3 {
  min-width: 0;
  margin: 0;
  color: var(--text);
  font-size: 16px;
  line-height: 1.3;
}

.instant-tool-body p {
  display: -webkit-box;
  min-height: 40px;
  margin: 11px 0 0;
  overflow: hidden;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media (max-width: 1080px) {
  .instant-tool-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  body[data-active-group="instant-use"] .instant-use-section {
    padding: 12px 16px 16px;
  }

  .instant-tool-subsection .utility-subsection-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .instant-tool-subsection .utility-subsection-head p {
    max-width: none;
    text-align: center;
  }

  .instant-tool-grid {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .instant-tool-card,
  .instant-tool-visual img {
    transition: none;
  }
}

@media (min-width: 981px) and (max-width: 1360px) {
  .home-layout {
    grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
  }

  .stats-sidebar {
    position: relative;
    top: auto;
    grid-column: 1 / -1;
  }

  .stats-sidebar .insight-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .tools-workspace .category-bar {
    width: 100%;
    max-width: 100%;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
  }

  .tools-workspace .category-bar::-webkit-scrollbar {
    display: none;
  }
}

@media (min-width: 761px) and (max-width: 1280px) {
  .hero-aurora {
    right: -7%;
    left: auto;
  }
}


/* Stronger visual hierarchy for small category navigation and headings */
.tools-workspace .category-overflow-panel .category-pill {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  min-height: 42px;
  padding: 8px 11px;
  border: 1px solid rgba(71, 199, 232, 0.18);
  background: linear-gradient(135deg, rgba(20, 34, 46, 0.94), rgba(12, 23, 33, 0.96));
  color: rgba(239, 250, 246, 0.9);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.tools-workspace .category-overflow-panel .category-pill:hover,
.tools-workspace .category-overflow-panel .category-pill:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(88, 214, 141, 0.46);
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.14), rgba(71, 199, 232, 0.09));
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.06);
  outline: none;
}

.tools-workspace .category-overflow-panel .category-pill > span:first-child {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 1px solid rgba(88, 214, 141, 0.2);
  border-radius: 8px;
  background: rgba(88, 214, 141, 0.09);
  font-size: 16px;
}

.tools-workspace .category-overflow-panel .category-pill strong {
  min-width: 0;
  color: #f3fff9;
  font-weight: 800;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: anywhere;
}

.tools-workspace .category-overflow-panel .category-pill em {
  justify-self: end;
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading,
.tools-workspace .utility-subsection-head {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  align-items: center;
  min-height: 64px;
  margin-bottom: 15px;
  padding: 11px 14px;
  border: 1px solid rgba(71, 199, 232, 0.22);
  border-left: 4px solid var(--green);
  border-radius: 10px;
  background:
    linear-gradient(90deg, rgba(88, 214, 141, 0.14), rgba(71, 199, 232, 0.075) 56%, rgba(255, 255, 255, 0.025));
  box-shadow:
    0 10px 24px rgba(0, 0, 0, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading::after,
.tools-workspace .utility-subsection-head::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  right: -32px;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(71, 199, 232, 0.13), transparent 68%);
  transform: translateY(-50%);
  pointer-events: none;
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading h2,
.tools-workspace .utility-subsection-head h3 {
  color: #f7fffb;
  font-weight: 850;
  letter-spacing: .01em;
  text-shadow: 0 1px 12px rgba(88, 214, 141, 0.12);
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading h2 {
  font-size: 23px;
}

.tools-workspace .utility-subsection-head h3 {
  font-size: 20px;
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading h2 > span:first-child,
.tools-workspace .utility-subsection-head h3 > span:first-child {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border: 1px solid rgba(88, 214, 141, 0.28);
  border-radius: 10px;
  background: linear-gradient(145deg, rgba(88, 214, 141, 0.17), rgba(71, 199, 232, 0.1));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 5px 14px rgba(0, 0, 0, 0.16);
  font-size: 20px;
  line-height: 1;
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading p,
.tools-workspace .utility-subsection-head p {
  color: rgba(217, 234, 228, 0.76);
}

@media (max-width: 680px) {
  body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading,
  .tools-workspace .utility-subsection-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
    min-height: 0;
    padding: 10px 12px;
    border-left-width: 3px;
  }

  body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading h2,
  .tools-workspace .utility-subsection-head h3 {
    font-size: 19px;
  }

  body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading h2 > span:first-child,
  .tools-workspace .utility-subsection-head h3 > span:first-child {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    border-radius: 9px;
    font-size: 18px;
  }

  body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading .section-meta,
  .tools-workspace .utility-subsection-head p {
    width: 100%;
    padding-left: 42px;
  }
}

.tools-workspace .category-bar {
  flex-wrap: wrap;
  overflow: visible;
  max-width: 100%;
}

/* Full-site search */
.command-hero .search-panel {
  position: relative;
  z-index: 12;
}

.command-hero .search-box {
  cursor: text;
  transition: transform .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.command-hero .search-box:hover {
  transform: translateY(-2px);
  border-color: rgba(112, 220, 164, .46);
  background: rgba(12, 22, 31, .86);
  box-shadow: 0 22px 62px rgba(0, 0, 0, .3), 0 0 0 3px rgba(88, 214, 141, .055), inset 0 1px 0 rgba(255, 255, 255, .08);
}

.command-hero .search-box:focus-within {
  transform: translateY(-2px);
  border-color: rgba(112, 220, 164, .62);
  box-shadow: 0 24px 68px rgba(0, 0, 0, .34), 0 0 0 4px rgba(88, 214, 141, .09), inset 0 1px 0 rgba(255, 255, 255, .08);
}

.command-hero .search-icon {
  display: grid;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  margin-left: 10px;
  place-items: center;
  border-radius: 50%;
  color: rgba(225, 241, 234, .9);
  background: rgba(88, 214, 141, .08);
  pointer-events: none;
  transition: color .22s ease, background .22s ease, transform .22s ease;
}

.command-hero .search-box:hover .search-icon,
.command-hero .search-box:focus-within .search-icon {
  color: #d9ffea;
  background: rgba(88, 214, 141, .16);
  transform: scale(1.04);
}

.site-search-popover {
  position: absolute;
  z-index: 30;
  top: calc(100% + 12px);
  left: 0;
  width: 100%;
  overflow: hidden;
  border: 1px solid rgba(133, 190, 163, .26);
  border-radius: 8px;
  background: rgba(8, 15, 22, .97);
  box-shadow: 0 30px 90px rgba(0, 0, 0, .54), 0 0 0 1px rgba(255, 255, 255, .025) inset;
  backdrop-filter: blur(24px);
  animation: site-search-enter .2s ease both;
}

.site-search-popover[hidden] {
  display: none;
}

@keyframes site-search-enter {
  from { opacity: 0; transform: translateY(-7px) scale(.992); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

.site-search-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 66px;
  padding: 13px 15px 12px 18px;
  border-bottom: 1px solid rgba(149, 166, 190, .14);
  background: linear-gradient(90deg, rgba(88, 214, 141, .075), transparent 46%);
}

.site-search-head > div {
  display: flex;
  align-items: baseline;
  gap: 12px;
  min-width: 0;
}

.site-search-head strong {
  color: #eff8f3;
  font-size: 16px;
  line-height: 1.3;
}

.site-search-head span {
  color: rgba(180, 198, 188, .7);
  font-size: 12px;
  line-height: 1.4;
}

.site-search-close {
  display: grid;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  padding: 0;
  place-items: center;
  border: 1px solid rgba(149, 166, 190, .16);
  border-radius: 50%;
  color: rgba(218, 230, 224, .72);
  background: rgba(255, 255, 255, .035);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease;
}

.site-search-close:hover,
.site-search-close:focus-visible {
  color: #effff6;
  border-color: rgba(88, 214, 141, .42);
  background: rgba(88, 214, 141, .12);
  transform: rotate(5deg) scale(1.05);
  outline: none;
}

.site-search-results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  max-height: min(61vh, 620px);
  padding: 10px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.site-search-results::-webkit-scrollbar {
  width: 8px;
}

.site-search-results::-webkit-scrollbar-track {
  background: transparent;
}

.site-search-results::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 999px;
  background: rgba(125, 158, 143, .38);
  background-clip: padding-box;
}

.site-search-result {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) 22px;
  align-items: center;
  gap: 11px;
  min-height: 94px;
  padding: 11px 10px;
  border: 1px solid rgba(149, 166, 190, .12);
  border-radius: 8px;
  background: rgba(255, 255, 255, .026);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.site-search-result:hover,
.site-search-result:focus-visible,
.site-search-result.is-keyboard-active {
  transform: translateY(-2px);
  border-color: rgba(88, 214, 141, .34);
  background: rgba(88, 214, 141, .07);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .2);
  outline: none;
}

.site-search-visual.tool-icon {
  position: relative;
  display: grid;
  width: 50px;
  height: 50px;
  min-width: 50px;
  overflow: hidden;
  place-items: center;
  border: 1px solid rgba(149, 166, 190, .14);
  border-radius: 8px;
  color: #eaf7ef;
  background: rgba(255, 255, 255, .045);
  font-size: 23px;
}

.site-search-visual-ai { background: rgba(71, 199, 232, .075) !important; }
.site-search-visual-utility { background: rgba(88, 214, 141, .075) !important; }
.site-search-visual-resource { background: rgba(245, 193, 92, .075) !important; }
.site-search-visual-tutorial { background: rgba(183, 143, 235, .075) !important; }
.site-search-visual-instant { background: rgba(255, 145, 106, .075) !important; }

.site-search-visual .tool-logo {
  inset: 6px;
  width: calc(100% - 12px);
  height: calc(100% - 12px);
}

.site-search-result-image {
  position: absolute;
  inset: 5px;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border-radius: 6px;
  object-fit: contain;
}

.site-search-copy {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.site-search-title-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.site-search-title-row strong {
  min-width: 0;
  color: #f2f8f5;
  font-size: 14px;
  line-height: 1.35;
}

.site-search-title-row em {
  flex: 0 0 auto;
  padding: 3px 6px;
  border: 1px solid rgba(88, 214, 141, .2);
  border-radius: 4px;
  color: rgba(150, 232, 187, .88);
  background: rgba(88, 214, 141, .065);
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 1;
}

.site-search-summary {
  display: -webkit-box;
  overflow: hidden;
  color: rgba(193, 207, 199, .74);
  font-size: 12px;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.site-search-path {
  color: rgba(107, 202, 154, .82);
  font-size: 11px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.site-search-path small {
  margin-left: 6px;
  color: rgba(178, 194, 185, .6);
  font-size: 10px;
}

.site-search-arrow {
  color: rgba(157, 184, 170, .48);
  font-size: 16px;
  transition: color .18s ease, transform .18s ease;
}

.site-search-result:hover .site-search-arrow,
.site-search-result:focus-visible .site-search-arrow,
.site-search-result.is-keyboard-active .site-search-arrow {
  color: #8ce0b2;
  transform: translate(2px, -2px);
}

.site-search-empty {
  grid-column: 1 / -1;
  display: grid;
  min-height: 176px;
  place-content: center;
  gap: 8px;
  padding: 32px;
  color: rgba(189, 205, 197, .68);
  text-align: center;
}

.site-search-empty strong {
  color: #eef6f1;
  font-size: 16px;
}

.site-search-empty span {
  font-size: 13px;
}

@media (max-width: 760px) {
  .site-search-results {
    grid-template-columns: 1fr;
    max-height: min(65vh, 560px);
  }

  .site-search-head > div {
    display: grid;
    gap: 3px;
  }
}

@media (max-width: 560px) {
  .command-hero .search-box {
    min-height: 58px;
    padding-left: 18px;
  }

  .command-hero .search-icon {
    flex-basis: 38px;
    width: 38px;
    height: 38px;
  }

  .site-search-popover {
    top: calc(100% + 9px);
  }

  .site-search-results {
    padding: 8px;
  }

  .site-search-result {
    grid-template-columns: 44px minmax(0, 1fr) 18px;
    min-height: 88px;
    padding: 9px 8px;
  }

  .site-search-visual.tool-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-search-popover { animation: none; }
  .command-hero .search-box,
  .site-search-result { transition-duration: .01ms; }
}
body.site-search-open .command-hero {
  position: relative;
  z-index: 25;
}

/* Flowing aurora behind search recommendations */
.site-search-popover {
  isolation: isolate;
  transition: border-color .45s ease, box-shadow .45s ease;
}

.site-search-aurora {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
  filter: saturate(1.2) brightness(1.08) contrast(1.02);
  mix-blend-mode: screen;
  will-change: opacity;
  transition: opacity .18s ease;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, #000 4%, #000 96%, transparent 100%);
  mask-image: linear-gradient(to bottom, transparent 0%, #000 4%, #000 96%, transparent 100%);
}

.site-search-popover.is-recommendation-mode {
  border-color: rgba(92, 222, 160, .27);
  box-shadow: 0 30px 90px rgba(0, 0, 0, .54), 0 0 34px rgba(55, 208, 145, .045), 0 0 0 1px rgba(255, 255, 255, .03) inset;
}

.site-search-popover.is-recommendation-mode .site-search-aurora {
  opacity: .43;
}
.site-search-popover.is-query-mode .site-search-aurora {
  opacity: .38;
}

.site-search-head,
.site-search-results {
  position: relative;
  z-index: 1;
}

.site-search-popover.is-recommendation-mode .site-search-result {
  border-color: rgba(126, 204, 165, .15);
  background: rgba(7, 16, 22, .56);
  backdrop-filter: blur(4px) saturate(1.035);
}
.site-search-popover.is-query-mode .site-search-result {
  border-color: rgba(126, 204, 165, .12);
  background: rgba(7, 16, 22, .60);
  backdrop-filter: blur(4px) saturate(1.025);
}

.site-search-popover.is-recommendation-mode .site-search-result:hover,
.site-search-popover.is-recommendation-mode .site-search-result:focus-visible,
.site-search-popover.is-recommendation-mode .site-search-result.is-keyboard-active {
  border-color: rgba(105, 232, 166, .38);
  background: rgba(18, 43, 37, .66);
  box-shadow: 0 12px 34px rgba(0, 0, 0, .24), 0 0 24px rgba(55, 208, 145, .075);
}
.site-search-popover.is-query-mode .site-search-result:hover,
.site-search-popover.is-query-mode .site-search-result:focus-visible,
.site-search-popover.is-query-mode .site-search-result.is-keyboard-active {
  border-color: rgba(105, 232, 166, .3);
  background: rgba(15, 37, 33, .69);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .22), 0 0 18px rgba(55, 208, 145, .05);
}

@media (max-width: 560px) {
  .site-search-popover.is-recommendation-mode .site-search-aurora {
    opacity: .35;
  }

  .site-search-popover.is-query-mode .site-search-aurora {
    opacity: .31;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-search-aurora {
    transition: none;
  }
}
/* Clipped horizontal aurora for stats and category headers */
.stats-sidebar .metric {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  contain: paint;
}

.stats-sidebar .metric::before,
.stats-sidebar .metric::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  will-change: background-position, opacity;
}

.stats-sidebar .metric::before {
  inset: -58%;
  background:
    linear-gradient(104deg, transparent 0 18%, rgba(62, 205, 144, 0) 23%, rgba(72, 226, 157, .13) 30%, rgba(82, 226, 184, .23) 38%, rgba(58, 178, 159, .07) 49%, transparent 66%) 0 0 / 235px 100% repeat-x,
    linear-gradient(98deg, transparent 0 25%, rgba(50, 163, 148, 0) 31%, rgba(67, 199, 180, .09) 38%, rgba(80, 218, 168, .16) 45%, rgba(43, 151, 155, .04) 55%, transparent 72%) 0 0 / 340px 100% repeat-x;
  filter: blur(9px) saturate(1.14);
  opacity: .6;
  transform: skewX(-2deg) scaleY(.98);
  animation: metric-aurora-flow 11.8s linear infinite;
}

.stats-sidebar .metric::after {
  inset: -26% -76%;
  background: linear-gradient(101deg, transparent 0 38%, rgba(129, 255, 205, 0) 45%, rgba(139, 255, 211, .25) 50%, rgba(78, 211, 182, .09) 53%, transparent 61%) 0 0 / 290px 100% repeat-x;
  filter: blur(1.3px);
  opacity: .46;
  transform: none;
  animation: metric-aurora-thread 9.4s linear infinite;
}

.stats-sidebar .metric:nth-child(2)::before { animation-delay: -3.1s; }
.stats-sidebar .metric:nth-child(2)::after { animation-delay: -1.7s; }
.stats-sidebar .metric:nth-child(3)::before { animation-delay: -6.2s; }
.stats-sidebar .metric:nth-child(3)::after { animation-delay: -3.4s; }

.stats-sidebar .metric > * {
  position: relative;
  z-index: 1;
}

@keyframes metric-aurora-flow {
  from { background-position: -235px 0, -340px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes metric-aurora-thread {
  from { background-position: -290px 0; }
  to { background-position: 0 0; }
}
body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading::before,
.tools-workspace .utility-subsection-head::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -92% -48%;
  pointer-events: none;
  background:
    linear-gradient(102deg, transparent 5%, rgba(54, 182, 140, 0) 18%, rgba(78, 223, 160, .12) 28%, rgba(67, 198, 180, .19) 34%, rgba(42, 147, 148, .045) 43%, transparent 51%),
    linear-gradient(96deg, transparent 31%, rgba(58, 179, 151, 0) 42%, rgba(76, 205, 176, .105) 50%, rgba(82, 216, 169, .17) 56%, rgba(52, 158, 156, .045) 64%, transparent 72%),
    linear-gradient(108deg, transparent 55%, rgba(59, 184, 147, 0) 64%, rgba(79, 212, 164, .105) 72%, rgba(68, 185, 184, .14) 78%, transparent 88%);
  filter: blur(12px) saturate(1.12);
  opacity: var(--workspace-aurora-main-opacity, .28);
  transform: translate3d(-15%, 0, 0) skewX(-2deg);
  will-change: transform;
  animation: category-aurora-flow 15s cubic-bezier(.45, .04, .55, .96) infinite alternate;
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading::after,
.tools-workspace .utility-subsection-head::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -34% -56%;
  width: auto;
  height: auto;
  border-radius: 0;
  pointer-events: none;
  background: linear-gradient(100deg, transparent 32%, rgba(135, 255, 208, 0) 43%, rgba(137, 255, 210, .19) 49.5%, rgba(61, 196, 176, .065) 52%, transparent 60%);
  filter: blur(1.1px);
  opacity: var(--workspace-aurora-thread-opacity, .18);
  transform: translate3d(-18%, 0, 0);
  will-change: transform;
  animation: category-aurora-thread 11.5s cubic-bezier(.42, 0, .58, 1) infinite alternate;
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section:nth-child(2n) > .section-heading::before,
.tools-workspace .utility-subsection:nth-child(2n) .utility-subsection-head::before {
  animation-delay: -4.6s;
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section:nth-child(3n) > .section-heading::after,
.tools-workspace .utility-subsection:nth-child(3n) .utility-subsection-head::after {
  animation-delay: -3.8s;
}

body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading > *,
.tools-workspace .utility-subsection-head > * {
  position: relative;
  z-index: 1;
}

@keyframes category-aurora-flow {
  0% { transform: translate3d(-15%, -2%, 0) skewX(-2deg) scaleY(.93); }
  50% { transform: translate3d(2%, 2%, 0) skewX(1deg) scaleY(1.08); }
  100% { transform: translate3d(20%, -1%, 0) skewX(-1deg) scaleY(.98); }
}

@keyframes category-aurora-thread {
  0% { transform: translate3d(-18%, 2%, 0); }
  50% { transform: translate3d(3%, -2%, 0); }
  100% { transform: translate3d(24%, 1%, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .stats-sidebar .metric::before,
  .stats-sidebar .metric::after,
  body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading::before,
  body:not([data-active-group="home-overview"]) .tools-workspace .sections-root > .tool-section > .section-heading::after,
  .tools-workspace .utility-subsection-head::before,
  .tools-workspace .utility-subsection-head::after {
    animation: none;
  }
}
/* Keep top-level workspaces at the practical-tools luminance baseline. */
body:is(
  [data-active-group="home-overview"],
  [data-active-group="ai-tools"],
  [data-active-group="practical-tools"],
  [data-active-group="daily-resources"],
  [data-active-group="tutorial-knowledge"],
  [data-active-group="instant-use"]
) {
  --workspace-panel-bg: rgba(15, 23, 34, .86);
  --workspace-inner-bg: rgba(8, 14, 22, .72);
  --workspace-card-bg: rgba(255, 255, 255, .04);
  --workspace-card-hover-bg: rgba(255, 255, 255, .06);
  --workspace-panel-border: rgba(149, 166, 190, .18);
  --workspace-card-border: rgba(149, 166, 190, .13);
  --workspace-card-hover-border: rgba(88, 214, 141, .28);
  --workspace-aurora-main-opacity: .28;
  --workspace-aurora-thread-opacity: .18;
}

body:is(
  [data-active-group="home-overview"],
  [data-active-group="ai-tools"],
  [data-active-group="practical-tools"],
  [data-active-group="daily-resources"],
  [data-active-group="tutorial-knowledge"],
  [data-active-group="instant-use"]
) .tools-workspace .sections-root > .tool-section {
  border-color: var(--workspace-panel-border);
  background: var(--workspace-panel-bg);
  box-shadow: var(--shadow);
}

body:is(
  [data-active-group="home-overview"],
  [data-active-group="ai-tools"],
  [data-active-group="practical-tools"],
  [data-active-group="daily-resources"],
  [data-active-group="tutorial-knowledge"],
  [data-active-group="instant-use"]
) :is(.tool-card, .utility-item-card, .resource-item-card, .tutorial-item-card, .instant-tool-card, .overview-tool-card) {
  border-color: var(--workspace-card-border);
  background: var(--workspace-card-bg);
  box-shadow: none;
}

body:is(
  [data-active-group="home-overview"],
  [data-active-group="ai-tools"],
  [data-active-group="practical-tools"],
  [data-active-group="daily-resources"],
  [data-active-group="tutorial-knowledge"],
  [data-active-group="instant-use"]
) :is(.tool-card, .utility-item-card, .resource-item-card, .tutorial-item-card, .instant-tool-card, .overview-tool-card):is(:hover, :focus-visible) {
  border-color: var(--workspace-card-hover-border);
  background: var(--workspace-card-hover-bg);
  box-shadow: none;
}

body:is(
  [data-active-group="home-overview"],
  [data-active-group="ai-tools"],
  [data-active-group="practical-tools"],
  [data-active-group="daily-resources"],
  [data-active-group="tutorial-knowledge"],
  [data-active-group="instant-use"]
) .tools-workspace .category-overflow-panel {
  border-color: var(--workspace-panel-border);
  background: var(--workspace-inner-bg);
}

body:is(
  [data-active-group="home-overview"],
  [data-active-group="ai-tools"],
  [data-active-group="practical-tools"],
  [data-active-group="daily-resources"],
  [data-active-group="tutorial-knowledge"],
  [data-active-group="instant-use"]
) .tools-workspace .category-overflow-panel .category-pill {
  border-color: var(--workspace-card-border);
  background: linear-gradient(135deg, rgba(20, 34, 46, .94), rgba(12, 23, 33, .96));
}

body[data-active-group="instant-use"] .instant-use-section {
  border-color: var(--workspace-panel-border);
  background: var(--workspace-panel-bg);
}
/* Always-on rightward aurora inside the primary search field. */
.command-hero .search-box {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.command-hero .search-box::before,
.command-hero .search-box::after,
.command-hero .search-sweep {
  position: absolute;
  z-index: 0;
  pointer-events: none;
  mix-blend-mode: screen;
}

.command-hero .search-box::before,
.command-hero .search-box::after {
  content: "";
  will-change: background-position, opacity;
  transition: opacity .38s ease, filter .38s ease;
}

.command-hero .search-box::before {
  inset: -82% -54%;
  background:
    linear-gradient(104deg, transparent 0 17%, rgba(58, 196, 143, 0) 27%, rgba(75, 224, 160, .18) 37%, rgba(69, 202, 184, .29) 47%, rgba(52, 157, 151, .075) 58%, transparent 70%) 0 0 / 310px 100% repeat-x,
    linear-gradient(98deg, transparent 0 25%, rgba(55, 177, 149, 0) 35%, rgba(72, 205, 178, .13) 46%, rgba(85, 224, 170, .21) 56%, rgba(45, 151, 153, .055) 66%, transparent 78%) 0 0 / 460px 100% repeat-x;
  filter: blur(10px) saturate(1.16);
  opacity: .62;
  transform: skewX(-2deg);
  animation: search-field-aurora-flow 12.5s linear infinite;
}

.command-hero .search-box::after {
  inset: -36% -48%;
  background: linear-gradient(101deg, transparent 0 24%, rgba(134, 255, 209, 0) 35%, rgba(143, 255, 214, .28) 47%, rgba(71, 202, 181, .09) 53%, transparent 65%) 0 0 / 370px 100% repeat-x;
  filter: blur(1.25px);
  opacity: .5;
  animation: search-field-aurora-thread 9.8s linear infinite;
}

.command-hero .search-sweep {
  inset: -78% -42%;
  background: linear-gradient(102deg,
    transparent 22%,
    rgba(62, 177, 157, 0) 29%,
    rgba(77, 207, 177, .035) 34%,
    rgba(88, 226, 185, .105) 40%,
    rgba(126, 241, 204, .21) 45%,
    rgba(191, 255, 230, .34) 49%,
    rgba(238, 255, 249, .46) 51%,
    rgba(174, 252, 222, .3) 54%,
    rgba(102, 224, 192, .16) 59%,
    rgba(69, 191, 170, .065) 66%,
    rgba(54, 154, 151, 0) 73%,
    transparent 80%);
  filter: blur(5px) saturate(1.04);
  opacity: 0;
  transform: translate3d(-112%, 0, 0) skewX(-3deg) scaleX(1.08);
  will-change: transform, opacity;
}

.command-hero .search-box.is-sweeping .search-sweep {
  animation: search-field-click-sweep 2.9s cubic-bezier(.22, .61, .36, 1) both;
}

.command-hero .search-box:hover::before,
.command-hero .search-box:focus-within::before,
body.site-search-open .command-hero .search-box::before {
  opacity: .76;
  filter: blur(9px) saturate(1.2);
}

.command-hero .search-box:hover::after,
.command-hero .search-box:focus-within::after,
body.site-search-open .command-hero .search-box::after {
  opacity: .66;
}

.command-hero .search-box > input,
.command-hero .search-box > .search-icon {
  position: relative;
  z-index: 1;
}

@keyframes search-field-aurora-flow {
  from { background-position: -310px 0, -460px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes search-field-aurora-thread {
  from { background-position: -370px 0; }
  to { background-position: 0 0; }
}

@keyframes search-field-click-sweep {
  0% { opacity: 0; transform: translate3d(-112%, 0, 0) skewX(-3deg) scaleX(1.08); }
  10% { opacity: .2; }
  24% { opacity: .58; }
  52% { opacity: .72; }
  72% { opacity: .62; }
  89% { opacity: .24; }
  100% { opacity: 0; transform: translate3d(112%, 0, 0) skewX(-3deg) scaleX(1.08); }
}

@media (prefers-reduced-motion: reduce) {
  .command-hero .search-box::before,
  .command-hero .search-box::after,
  .command-hero .search-sweep {
    animation: none;
  }
}
/* Restrained rightward aurora for the top-level category bar */
.tools-workspace .category-bar {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  contain: paint;
}

.tools-workspace .category-bar::before,
.tools-workspace .category-bar::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  will-change: background-position, opacity;
}

.tools-workspace .category-bar::before {
  inset: -135% -22%;
  background:
    linear-gradient(103deg, transparent 0 16%, rgba(65, 212, 151, 0) 25%, rgba(81, 226, 171, .1) 35%, rgba(69, 198, 180, .2) 45%, rgba(52, 161, 177, .055) 56%, transparent 69%) 0 0 / 300px 100% repeat-x,
    linear-gradient(98deg, transparent 0 29%, rgba(71, 205, 172, 0) 39%, rgba(125, 239, 202, .09) 49%, rgba(57, 174, 183, .14) 59%, transparent 72%) 0 0 / 470px 100% repeat-x;
  filter: blur(13px) saturate(1.08);
  opacity: .48;
  transform: skewX(-3deg);
  animation: category-bar-aurora-flow 15s linear infinite;
}

.tools-workspace .category-bar::after {
  inset: -38% -30%;
  background: linear-gradient(101deg, transparent 30%, rgba(143, 255, 214, 0) 42%, rgba(143, 255, 214, .17) 50%, rgba(66, 205, 181, .055) 55%, transparent 64%) 0 0 / 360px 100% repeat-x;
  filter: blur(1.2px);
  opacity: .36;
  animation: category-bar-aurora-thread 11.5s linear infinite;
}

.tools-workspace .category-bar > * {
  position: relative;
  z-index: 1;
}

@keyframes category-bar-aurora-flow {
  from { background-position: -300px 0, -470px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes category-bar-aurora-thread {
  from { background-position: -360px 0; }
  to { background-position: 0 0; }
}

@media (prefers-reduced-motion: reduce) {
  .tools-workspace .category-bar::before,
  .tools-workspace .category-bar::after {
    animation: none;
  }
}
/* Keep each statistic readable as one centered unit in the narrow sidebar. */
.stats-sidebar .metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 112px;
  padding: 17px 14px;
  text-align: center;
}

.stats-sidebar .metric strong {
  flex: 0 0 auto;
  min-width: 4ch;
  color: rgba(250, 253, 255, .98);
  font-size: 40px;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
  line-height: .95;
  text-shadow: 0 0 20px rgba(226, 255, 244, .16), 0 0 30px rgba(88, 214, 141, .12);
}

.stats-sidebar .metric span {
  margin: 0;
  color: rgba(236, 244, 247, .88);
  font-size: 17px;
  font-weight: 750;
  line-height: 1.1;
  text-align: center;
  white-space: nowrap;
}

@media (max-width: 560px) {
  .stats-sidebar,
  .stats-sidebar .insight-row,
  .stats-sidebar .metric {
    width: 100%;
  }

  .stats-sidebar .insight-row {
    gap: 10px;
  }

  .stats-sidebar .metric {
    min-height: 94px;
    padding: 14px 16px;
  }
}

/* Search / AI conversation workspace */
.ai-search-layout {
  position: relative;
  width: 100%;
}

.search-control {
  min-width: 0;
}

.search-box-row {
  display: flex;
  align-items: stretch;
  gap: 10px;
  width: 100%;
}

.mode-switch {
  position: relative;
  display: inline-grid;
  place-items: center;
  align-self: center;
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  min-width: 0;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(147, 169, 190, 0.24);
  border-radius: 13px;
  color: rgba(231, 241, 247, 0.86);
  background: linear-gradient(145deg, rgba(16, 25, 34, 0.88), rgba(5, 11, 17, 0.9));
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.055);
  cursor: pointer;
  isolation: isolate;
  transition: color .22s ease, border-color .22s ease, background .22s ease, transform .22s ease, box-shadow .22s ease;
}

.mode-switch::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: 11px;
  background: linear-gradient(115deg, transparent 18%, rgba(93, 218, 183, 0.09) 48%, transparent 78%);
  transform: translateX(-115%);
  transition: transform .55s cubic-bezier(.2, .75, .2, 1);
}

.mode-switch:hover,
.mode-switch:focus-visible {
  color: #f4fbfd;
  border-color: rgba(94, 211, 177, 0.5);
  background: linear-gradient(145deg, rgba(18, 36, 39, 0.94), rgba(6, 14, 20, 0.94));
  box-shadow: 0 13px 30px rgba(0, 0, 0, 0.25), 0 0 0 3px rgba(88, 214, 141, 0.065), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  transform: translateY(-1px);
  outline: none;
}

.mode-switch:hover::before,
.mode-switch:focus-visible::before {
  transform: translateX(115%);
}

.mode-switch:active {
  transform: translateY(0) scale(.96);
  transition-duration: .08s;
}

.mode-switch.is-ai-mode {
  color: rgba(157, 244, 220, 0.96);
  border-color: rgba(88, 214, 177, 0.42);
  background: linear-gradient(145deg, rgba(13, 38, 38, 0.94), rgba(5, 17, 23, 0.94));
  box-shadow: 0 11px 28px rgba(0, 0, 0, 0.24), 0 0 18px rgba(66, 197, 169, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

.mode-switch-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-shadow: 0 0 14px rgba(112, 230, 200, 0.18);
}

.mode-switch-upload-icon {
  display: none;
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 8px rgba(112, 230, 200, 0.16));
}

body.ai-chat-mode.ai-chat-scrolled .mode-switch.is-upload-mode .mode-switch-icon {
  display: none;
}

body.ai-chat-mode.ai-chat-scrolled .mode-switch.is-upload-mode .mode-switch-upload-icon {
  display: block;
}

body.ai-chat-mode.ai-chat-scrolled .mode-switch.is-upload-mode:hover .mode-switch-upload-icon,
body.ai-chat-mode.ai-chat-scrolled .mode-switch.is-upload-mode:focus-visible .mode-switch-upload-icon {
  transform: translateY(-1px);
}

.mode-switch.is-ai-mode .mode-switch-icon::before {
  content: "";
  width: 13px;
  height: 13px;
  border: 2px solid currentColor;
  border-radius: 50%;
  box-sizing: border-box;
}

.mode-switch.is-ai-mode .mode-switch-icon::after {
  content: "";
  position: absolute;
  width: 7px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transform: translate(8px, 8px) rotate(45deg);
  transform-origin: left center;
}

.search-box-row .search-box {
  flex: 1 1 auto;
  min-width: 0;
}

/* Anchor the home AI chat window to the same content grid as AI news. */
main {
  position: relative;
}

body:not(.ai-chat-scrolled) .command-hero .search-panel {
  width: var(--ai-chat-search-width, 900px);
  max-width: none;
  transform: translateX(var(--ai-chat-search-shift, 0));
}

.ai-chat-window[hidden],
.ai-chat-backdrop[hidden] {
  display: none !important;
}

.ai-chat-window {
  position: absolute;
  z-index: 8;
  left: var(--ai-chat-home-left, 0);
  top: var(--ai-chat-home-top, 0);
  display: flex;
  flex-direction: column;
  width: var(--ai-chat-home-width, 360px);
  height: var(--ai-chat-home-height, 280px);
  aspect-ratio: auto;
  min-width: 0;
  overflow: visible;
  border: 1px solid rgba(71, 199, 232, 0.24);
  border-radius: 8px;
  color: var(--text);
  background: rgba(10, 18, 28, 0.9);
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(14px);
}
.ai-chat-window::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(128deg, rgba(88, 214, 141, 0.1), transparent 40%, rgba(71, 199, 232, 0.07));
  opacity: .72;
}

.ai-chat-window-head,
.ai-chat-messages {
  position: relative;
  z-index: 1;
}

.ai-chat-window-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 54px;
  padding: 0 16px;
  border-bottom: 1px solid rgba(149, 166, 190, 0.14);
}

.ai-chat-window-head > div {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.ai-chat-kicker {
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  border: 1px solid rgba(88, 214, 141, 0.45);
  border-radius: 7px;
  color: var(--green);
  font-size: 10px;
  font-weight: 800;
}

.ai-chat-window-head strong {
  font-size: 14px;
  white-space: nowrap;
}

.ai-chat-exit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 86px;
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid rgba(100, 224, 190, 0.46);
  border-radius: 9px;
  color: rgba(239, 255, 250, 0.96);
  background: linear-gradient(145deg, rgba(35, 105, 88, 0.34), rgba(12, 38, 40, 0.72));
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.2), 0 0 0 3px rgba(88, 214, 177, 0.045), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: color 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.ai-chat-exit svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 180ms ease;
}

.ai-chat-exit:hover,
.ai-chat-exit:focus-visible {
  color: #ffffff;
  border-color: rgba(119, 242, 207, 0.76);
  background: linear-gradient(145deg, rgba(42, 133, 106, 0.52), rgba(14, 53, 52, 0.86));
  box-shadow: 0 11px 28px rgba(0, 0, 0, 0.26), 0 0 0 4px rgba(88, 214, 177, 0.075), 0 0 22px rgba(66, 197, 169, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.11);
  outline: none;
  transform: translateY(-2px);
}

.ai-chat-exit:hover svg,
.ai-chat-exit:focus-visible svg {
  transform: translateX(2px);
}

.ai-chat-exit:active {
  transform: translateY(0) scale(0.97);
}

.ai-chat-messages {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 10px;
  min-height: 0;
  overflow-y: auto;
  padding: 16px;
}

.ai-chat-placeholder {
  margin: auto;
  max-width: 240px;
  color: rgba(195, 206, 216, 0.5);
  font-size: 13px;
  line-height: 1.7;
  text-align: center;
}

.ai-chat-message {
  max-width: 88%;
  padding: 10px 12px;
  border: 1px solid rgba(149, 166, 190, 0.15);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.045);
}

.ai-chat-message-user {
  align-self: flex-end;
  border-color: rgba(88, 214, 141, 0.25);
  background: rgba(88, 214, 141, 0.1);
}

.ai-chat-message-role {
  display: block;
  margin-bottom: 4px;
  color: var(--green);
  font-size: 11px;
  font-weight: 700;
}

.ai-chat-message p {
  margin: 0;
  color: rgba(238, 244, 248, 0.84);
  font-size: 13px;
  line-height: 1.55;
}

.ai-chat-backdrop {
  position: fixed;
  z-index: 60;
  inset: 0;
  pointer-events: auto;
  background: rgba(0, 0, 0, 0.46);
  backdrop-filter: blur(2px);
}

body.ai-chat-mode .ai-search-layout {
  display: block;
}

body.ai-chat-mode .ai-chat-window {
  display: flex;
}

body.ai-chat-mode .search-panel {
  width: min(900px, 100%);
}

body.ai-chat-mode .search-box {
  border-color: rgba(88, 214, 141, 0.34);
}

body.ai-chat-mode .search-box input {
  caret-color: var(--green);
}

body.ai-chat-mode .search-box input::placeholder {
  color: rgba(195, 206, 216, 0.54);
}

body.ai-chat-mode.ai-chat-scrolled .ai-chat-backdrop {
  display: block;
}

body.ai-chat-mode.ai-chat-scrolled .ai-chat-window {
  position: fixed;
  z-index: 72;
  left: var(--ai-chat-scrolled-left, 16px);
  right: var(--ai-chat-scrolled-right, 16px);
  top: var(--ai-chat-scrolled-top, 82px);
  bottom: var(--ai-chat-scrolled-bottom, 112px);
  width: auto;
  height: auto;
  max-width: none;
  max-height: none;
  aspect-ratio: auto;
  border-color: rgba(71, 199, 232, 0.28);
  border-radius: 10px;
  background: rgba(5, 12, 19, 0.42);
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.46), inset 0 1px 0 rgba(255, 255, 255, 0.045);
  transform: none;
}

body.ai-chat-mode.ai-chat-scrolled .ai-chat-window-head {
  min-height: 62px;
  padding: 0 22px;
}

body.ai-chat-mode.ai-chat-scrolled .ai-chat-window-head strong {
  font-size: 16px;
}

body.ai-chat-mode.ai-chat-scrolled .ai-chat-messages {
  padding: 22px;
}

body.ai-chat-mode.ai-chat-scrolled .ai-chat-placeholder {
  max-width: 360px;
  font-size: 14px;
}

body.ai-chat-mode.ai-chat-scrolled .search-panel {
  position: fixed;
  z-index: 74;
  left: 50%;
  bottom: 18px;
  width: min(960px, calc(100vw - 32px));
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  transform: translateX(-50%);
}

body.ai-chat-mode.ai-chat-scrolled .ai-search-layout {
  display: block;
}

body.ai-chat-mode.ai-chat-scrolled .search-control {
  width: 100%;
  padding: 10px;
  border: 0;
  border-radius: 16px;
  background: rgba(4, 10, 16, 0.50);
  box-shadow: 0 18px 54px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(18px);
}

body.ai-chat-mode.ai-chat-scrolled .search-label {
  display: none;
}

body.ai-chat-mode.ai-chat-scrolled .search-box-row {
  gap: 10px;
}

@media (max-width: 720px) {
  body.ai-chat-mode .ai-chat-window {
    width: 100%;
  }

  .mode-switch {
    flex-basis: 48px;
    width: 48px;
    height: 48px;
    border-radius: 12px;
  }
}

@media (max-width: 980px) {
  body:not(.ai-chat-scrolled) .command-hero .search-panel {
    width: 100%;
    max-width: 100%;
    transform: none;
  }

  body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-window {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    height: clamp(260px, 64vw, 360px);
    margin: 0 0 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mode-switch {
    transition: none;
  }
}


/* Keep the centered chat window viewport-relative while the composer is docked. */
@media (min-width: 721px) {
  body.ai-chat-mode.ai-chat-scrolled .search-panel {
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    transform: none;
  }
}


body.ai-chat-mode.ai-chat-scrolled .command-hero {
  z-index: 61;
}


body.ai-chat-mode.ai-chat-scrolled .search-panel {
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  transform: none;
}


/* AI mode shortcut below the compact site statistics. */
.stats-ai-entry {
  width: 100%;
  margin-top: 18px;
}

.stats-ai-mode-button {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 66px;
  padding: 13px 18px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  color: rgba(232, 244, 240, .94);
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255, 255, 255, .035);
  text-align: center;
  cursor: pointer;
  transition: transform .26s cubic-bezier(.22, 1, .36, 1), border-color .26s ease, background .26s ease, box-shadow .26s ease;
}

.stats-ai-mode-button::before,
.stats-ai-mode-button::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  will-change: background-position, opacity;
}

.stats-ai-mode-button::before {
  inset: -78% -42%;
  background:
    linear-gradient(104deg, transparent 0 22%, rgba(88, 214, 141, 0) 31%, rgba(88, 214, 141, .15) 43%, rgba(71, 199, 232, .1) 51%, transparent 65%) 0 0 / 230px 100% repeat-x,
    linear-gradient(99deg, transparent 0 32%, rgba(71, 199, 232, 0) 42%, rgba(71, 199, 232, .09) 52%, rgba(88, 214, 141, .07) 59%, transparent 72%) 0 0 / 340px 100% repeat-x;
  filter: blur(9px) saturate(1.08);
  opacity: .36;
  animation: statsAiAuroraFlow 9.2s linear infinite;
  transition: opacity .32s ease;
}

.stats-ai-mode-button::after {
  inset: -28% -48%;
  background: linear-gradient(102deg, transparent 0 37%, rgba(145, 255, 211, 0) 44%, rgba(145, 255, 211, .16) 50%, rgba(70, 197, 185, .06) 55%, transparent 64%) 0 0 / 285px 100% repeat-x;
  filter: blur(1.4px);
  opacity: .24;
  animation: statsAiAuroraThread 7.2s linear infinite;
  transition: opacity .32s ease;
}

.stats-ai-mode-button > * {
  position: relative;
  z-index: 1;
}

.stats-ai-mode-button:hover,
.stats-ai-mode-button:focus-visible {
  border-color: rgba(88, 214, 141, .38);
  background: linear-gradient(115deg, rgba(17, 27, 39, .92), rgba(13, 23, 33, .9));
  box-shadow: var(--shadow), 0 0 0 3px rgba(88, 214, 141, .045), inset 0 1px 0 rgba(255, 255, 255, .045);
  transform: translateY(-2px);
  outline: none;
}

.stats-ai-mode-button:hover::before,
.stats-ai-mode-button:focus-visible::before {
  opacity: .56;
}

.stats-ai-mode-button:hover::after,
.stats-ai-mode-button:focus-visible::after {
  opacity: .4;
}

@keyframes statsAiAuroraFlow {
  from { background-position: -230px 0, -340px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes statsAiAuroraThread {
  from { background-position: -285px 0; }
  to { background-position: 0 0; }
}

.stats-ai-mode-button.is-ai-mode {
  border-color: rgba(88, 214, 141, .34);
  background: linear-gradient(115deg, rgba(16, 28, 37, .92), rgba(12, 23, 33, .9));
  box-shadow: var(--shadow), inset 0 1px 0 rgba(255, 255, 255, .05);
}


.stats-ai-mode-label {
  min-width: 0;
  color: rgba(239, 249, 246, .98);
  font-size: 24px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
  text-align: center;
}


@media (min-width: 981px) and (max-width: 1360px) {
  .stats-ai-entry {
    width: min(100%, 320px);
    margin-left: auto;
  }
}

@media (max-width: 560px) {
  .stats-ai-entry {
    margin-top: 14px;
  }

  .stats-ai-mode-button {
    min-height: 60px;
  }

  .stats-ai-mode-label {
    font-size: 22px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .stats-ai-mode-button,
  .stats-ai-mode-button::before,
  .stats-ai-mode-button::after {
    transition: none;
  }
}


/* A I tools paged workspace */
html,
body {
  overflow-x: clip;
}

:root {
  --workspace-page-height: 897px;
}

.ai-tools-paged-section,
.utility-paged-section,
.resource-paged-section,
.instant-tools-paged-section,
.tutorial-paged-section {
  display: flex;
  flex-direction: column;
  min-height: var(--workspace-page-height);
  overflow: hidden;
}

/* Non-AI paged sections should follow their visible cards instead of reserving
   the taller homepage workspace height. */
.utility-paged-section,
.resource-paged-section,
.instant-tools-paged-section,
.tutorial-paged-section {
  min-height: 0;
}

.ai-tools-paged-section.ai-tools-compact-page {
  min-height: 0;
}

.ai-tools-paged-section.ai-tools-compact-page .ai-tools-pagination {
  margin-top: 30px;
}

.utility-paged-section .utility-tools-pagination,
.resource-paged-section .resource-pagination,
.instant-tools-paged-section .instant-tools-pagination,
.tutorial-paged-section .tutorial-pagination {
  margin-top: 30px;
}

.tools-workspace .ai-tools-page-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 226px;
}

.tools-workspace .utility-page-grid,
.tools-workspace .resource-page-grid,
.tools-workspace .instant-tools-page-grid,
.tools-workspace .tutorial-page-grid {
  align-content: start;
}

.tools-workspace .instant-tools-page-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.instant-tools-page-grid .instant-tool-card {
  display: flex;
  height: 272px;
  min-height: 272px;
  flex-direction: column;
}

.instant-tools-page-grid .instant-tool-visual {
  height: 150px;
  flex: 0 0 150px;
  aspect-ratio: auto;
}

.instant-tools-page-grid .instant-tool-visual img {
  object-fit: contain;
}

.instant-tools-page-grid .instant-tool-body {
  display: flex;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 14px 15px 15px;
  overflow: hidden;
}

.instant-tools-page-grid .instant-tool-title-row {
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px;
}

.instant-tools-page-grid .instant-tool-icon {
  width: 34px;
  height: 34px;
  font-size: 17px;
}

.instant-tools-page-grid .instant-tool-title-row h3 {
  font-size: 15px;
  line-height: 1.25;
}

.instant-tools-page-grid .instant-tool-body p {
  min-height: 0;
  margin-top: 10px;
  line-height: 1.5;
}

.utility-page-heading .section-meta p,
.resource-page-heading .section-meta p,
.instant-tools-page-heading .section-meta p {
  white-space: nowrap;
}

.ai-tools-page-grid .tool-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 226px;
  min-height: 226px;
  overflow: hidden;
}

.ai-tools-page-grid .tool-card > a {
  min-height: 0;
  flex: 1 1 auto;
  overflow: hidden;
}

.ai-tools-page-grid .tool-info {
  display: flex;
  min-height: 0;
  flex: 1 1 auto;
  flex-direction: column;
}

.ai-tools-page-grid .tool-info h3 {
  overflow: visible;
  white-space: normal;
  text-overflow: clip;
  overflow-wrap: anywhere;
}

.ai-tools-page-grid .tool-info p {
  display: -webkit-box;
  min-height: 0;
  margin-bottom: 8px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

.ai-tools-page-grid .tool-info small {
  display: block;
  margin-top: auto;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.ai-tools-page-grid .tool-tags {
  flex-wrap: nowrap;
  overflow: hidden;
  white-space: nowrap;
}

.ai-tools-page-heading .section-meta p {
  white-space: nowrap;
}

.ai-tools-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 50px;
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid rgba(149, 166, 190, 0.13);
}

.ai-tools-pagination p {
  margin: 0;
  color: rgba(196, 210, 222, 0.72);
  font-size: 12px;
  white-space: nowrap;
}

.ai-tools-pagination-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}

.ai-tools-page-arrow,
.ai-tools-page-number {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid rgba(149, 166, 190, 0.17);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.035);
  color: rgba(226, 237, 244, 0.78);
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}

.ai-tools-page-arrow {
  font-size: 20px;
  line-height: 1;
}

.ai-tools-page-number {
  font-size: 13px;
  font-weight: 800;
}

.ai-tools-page-arrow:hover:not(:disabled),
.ai-tools-page-arrow:focus-visible:not(:disabled),
.ai-tools-page-number:hover,
.ai-tools-page-number:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(88, 214, 141, 0.42);
  background: rgba(88, 214, 141, 0.085);
  color: #f2fff9;
  box-shadow: 0 7px 18px rgba(0, 0, 0, 0.18);
  outline: none;
}

.ai-tools-page-number.active {
  border-color: rgba(88, 214, 141, 0.5);
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.18), rgba(71, 199, 232, 0.1));
  color: #eafff3;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 0 16px rgba(88, 214, 141, 0.07);
}

.ai-tools-page-arrow:disabled {
  opacity: 0.28;
  cursor: default;
}

.ai-tools-page-ellipsis {
  display: inline-grid;
  place-items: center;
  width: 18px;
  color: rgba(196, 210, 222, 0.48);
}

.ai-tools-page-jump {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: 8px;
}

.ai-tools-page-jump label {
  display: flex;
  align-items: center;
  gap: 6px;
  color: rgba(196, 210, 222, 0.66);
  font-size: 12px;
  white-space: nowrap;
}

.ai-tools-page-jump-input {
  width: 58px;
  height: 34px;
  padding: 0 7px;
  border: 1px solid rgba(149, 166, 190, 0.17);
  border-radius: 7px;
  outline: none;
  background: rgba(255, 255, 255, 0.035);
  color: #eefaf5;
  font: inherit;
  font-weight: 750;
  text-align: center;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.ai-tools-page-jump-input::placeholder {
  color: rgba(196, 210, 222, 0.38);
  font-weight: 600;
}

.ai-tools-page-jump-input:focus {
  border-color: rgba(88, 214, 141, 0.5);
  background: rgba(88, 214, 141, 0.065);
  box-shadow: 0 0 0 3px rgba(88, 214, 141, 0.075), 0 7px 18px rgba(0, 0, 0, 0.16);
}

.ai-tools-page-jump-input::-webkit-inner-spin-button,
.ai-tools-page-jump-input::-webkit-outer-spin-button {
  margin: 0;
  appearance: none;
}

.ai-tools-page-jump-button {
  height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(88, 214, 141, 0.3);
  border-radius: 7px;
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.13), rgba(71, 199, 232, 0.075));
  color: rgba(234, 255, 243, 0.88);
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}

.ai-tools-page-jump-button:hover,
.ai-tools-page-jump-button:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(88, 214, 141, 0.52);
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.2), rgba(71, 199, 232, 0.11));
  color: #f2fff9;
  box-shadow: 0 7px 18px rgba(0, 0, 0, 0.18);
  outline: none;
}

.ai-tools-page-empty {
  display: grid;
  place-items: center;
  align-content: center;
  min-height: 500px;
  text-align: center;
}

.ai-tools-page-empty strong {
  font-size: 18px;
}

.ai-tools-page-empty p {
  margin: 8px 0 0;
  color: var(--muted);
}

.tools-workspace .category-overflow-panel .category-pill.active {
  border-color: rgba(88, 214, 141, 0.44);
  background: linear-gradient(135deg, rgba(88, 214, 141, 0.13), rgba(71, 199, 232, 0.075));
  box-shadow: inset 3px 0 0 rgba(88, 214, 141, 0.58), inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

@media (max-width: 1700px) {
  .tools-workspace .instant-tools-page-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .tools-workspace .tool-grid.ai-tools-page-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .tools-workspace .instant-tools-page-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .tools-workspace .ai-tools-page-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: 190px;
  }

  .ai-tools-page-grid .tool-card {
    height: 190px;
    min-height: 190px;
  }

  .ai-tools-page-heading {
    align-items: flex-start;
  }

  .ai-tools-pagination {
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
  }

  .ai-tools-pagination p {
    text-align: center;
  }

  .ai-tools-pagination-controls {
    justify-content: center;
  }

  .ai-tools-page-jump {
    flex-basis: 100%;
    justify-content: center;
    margin: 2px 0 0;
  }

  .ai-tools-page-arrow,
  .ai-tools-page-number {
    width: 32px;
    height: 32px;
  }
}

@media (max-width: 560px) {
  .tools-workspace .instant-tools-page-grid {
    grid-template-columns: 1fr;
  }

  .instant-tools-page-grid .instant-tool-card {
    height: 262px;
    min-height: 262px;
  }

  .instant-tools-page-grid .instant-tool-visual {
    height: 145px;
    flex-basis: 145px;
  }
}

@media (max-width: 390px) {
  .ai-tools-page-ellipsis,
  .ai-tools-page-number:not(.active) {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ai-tools-page-arrow,
  .ai-tools-page-number,
  .ai-tools-page-jump-input,
  .ai-tools-page-jump-button {
    transition: none;
  }
}


/* AI model picker and send action */
.search-box-row {
  position: relative;
}

.model-menu {
  position: absolute;
  z-index: 82;
  top: calc(100% + 10px);
  left: 0;
  display: grid;
  width: 238px;
  gap: 5px;
  padding: 7px;
  overflow: hidden;
  border: 1px solid rgba(94, 211, 177, 0.27);
  border-radius: 10px;
  background: rgba(6, 14, 20, 0.96);
  box-shadow: 0 22px 58px rgba(0, 0, 0, 0.44), inset 0 1px 0 rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(20px);
}

.model-menu[hidden],
body:not(.ai-chat-mode) .model-menu {
  display: none !important;
}

body.ai-chat-mode.ai-chat-scrolled .model-menu {
  top: auto;
  bottom: calc(100% + 10px);
}

.model-option {
  display: grid;
  grid-template-columns: 10px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 54px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 7px;
  color: rgba(222, 233, 239, 0.76);
  background: transparent;
  text-align: center;
  cursor: pointer;
  transition: color 160ms ease, border-color 160ms ease, background 160ms ease, transform 160ms ease;
}

.model-option:hover,
.model-option:focus-visible {
  color: #f4fbfd;
  border-color: rgba(71, 199, 232, 0.22);
  background: rgba(71, 199, 232, 0.075);
  outline: none;
  transform: translateX(2px);
}

.model-option.is-active {
  color: #effff8;
  border-color: rgba(88, 214, 141, 0.28);
  background: rgba(88, 214, 141, 0.095);
}

.model-option-dot {
  width: 7px;
  height: 7px;
  border: 1px solid rgba(162, 184, 196, 0.48);
  border-radius: 50%;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.018);
}

.model-option.is-active .model-option-dot {
  border-color: rgba(135, 240, 190, 0.95);
  background: rgba(88, 214, 141, 0.86);
  box-shadow: 0 0 12px rgba(88, 214, 141, 0.38);
}

.model-option-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
  margin: 0 !important;
  order: initial !important;
}

.model-option-copy strong,
.model-option-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.model-option-copy strong {
  font-size: 13px;
}

.model-option-copy small {
  color: rgba(179, 195, 205, 0.58);
  font-size: 11px;
}

.ai-send-button {
  position: relative;
  z-index: 2;
  display: none;
  order: 2;
  place-items: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  margin-left: 10px;
  padding: 0;
  border: 1px solid rgba(111, 226, 186, 0.2);
  border-radius: 50%;
  color: rgba(219, 255, 241, 0.92);
  background: rgba(88, 214, 141, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  cursor: pointer;
  line-height: 1;
  transition: color 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.ai-send-button svg {
  width: 21px;
  height: 21px;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 220ms cubic-bezier(.22, .61, .36, 1), filter 220ms ease;
}

body.ai-chat-mode .search-icon {
  display: none;
}

body.ai-chat-mode .ai-send-button {
  display: grid;
}

.ai-send-button:hover,
.ai-send-button:focus-visible {
  color: #fff;
  border-color: rgba(130, 241, 203, 0.5);
  background: rgba(88, 214, 141, 0.2);
  box-shadow: 0 0 0 4px rgba(88, 214, 141, 0.07), 0 8px 20px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.09);
  outline: none;
  transform: translateY(-1px) scale(1.04);
}

.ai-send-button:hover svg,
.ai-send-button:focus-visible svg {
  filter: drop-shadow(0 0 5px rgba(190, 255, 226, .32));
  transform: translateX(2px);
}

.ai-send-button:active {
  transform: translateY(0) scale(0.96);
}

@media (max-width: 720px) {
  .model-menu {
    width: min(226px, calc(100vw - 24px));
  }

  .ai-send-button {
    flex-basis: 38px;
    width: 38px;
    height: 38px;
    margin-left: 6px;
  }
}

/* Chat window model picker */
.ai-chat-window-head {
  z-index: 20;
  overflow: visible;
}

.ai-chat-head-model {
  position: relative;
  z-index: 21;
  display: flex;
  align-items: center;
  min-width: 0;
}

.ai-chat-model-switch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 48px;
  min-width: 0;
  min-height: 38px;
  padding: 4px;
  border: 1px solid transparent;
  border-radius: 8px;
  color: rgba(237, 248, 244, 0.94);
  background: transparent;
  cursor: pointer;
  transition: color 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.ai-chat-model-switch:hover,
.ai-chat-model-switch:focus-visible,
body.ai-chat-model-menu-open .ai-chat-model-switch {
  color: #f5fffb;
  border-color: rgba(88, 214, 177, 0.25);
  background: rgba(88, 214, 177, 0.075);
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.045);
  outline: none;
}

.ai-chat-model-switch:active {
  transform: scale(.98);
}

.ai-chat-model-icon,
.model-option-icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  overflow: hidden;
  border: 1px solid rgba(129, 231, 199, 0.28);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(31, 92, 74, 0.7), rgba(9, 30, 31, 0.92));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 0 16px rgba(68, 205, 164, 0.09);
}

.ai-chat-model-icon img,
.model-option-icon img {
  display: block;
  width: 19px;
  height: 19px;
  object-fit: contain;
}

.ai-chat-model-chevron {
  color: rgba(161, 226, 207, 0.64);
  font-size: 17px;
  line-height: 1;
  transition: color 180ms ease, transform 180ms ease;
}

body.ai-chat-model-menu-open .ai-chat-model-chevron {
  color: rgba(218, 255, 243, 0.96);
  transform: rotate(180deg);
}

.ai-chat-model-menu {
  z-index: 120;
  top: calc(100% + 7px);
  bottom: auto;
  left: 0;
  width: 232px;
}

body.ai-chat-mode.ai-chat-scrolled .ai-chat-model-menu {
  top: calc(100% + 7px);
  bottom: auto;
}

.model-option {
  grid-template-columns: 34px minmax(0, 1fr);
}

.model-option-icon {
  width: 32px;
  height: 32px;
}

.model-option-icon img {
  width: 20px;
  height: 20px;
}

@media (max-width: 430px) {
  .ai-chat-model-switch {
    gap: 7px;
  }

  .ai-chat-model-menu {
    width: min(222px, calc(100vw - 88px));
  }
}

/* Tutorial cover clarity and unified duck artwork */
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy,
.overview-tutorial-title {
  top: 14px;
  right: 5px;
  left: 5px;
  padding: 11px 6px 13px;
  border: 1px solid rgba(113, 231, 188, 0.24);
  border-left: 4px solid #69e3ac;
  border-radius: 5px;
  background: linear-gradient(90deg, rgba(3, 13, 17, 0.97), rgba(5, 20, 25, 0.9) 76%, rgba(5, 20, 25, 0.68));
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(5px);
  text-align: center;
}

body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy::after,
.overview-tutorial-title::after {
  display: none;
}

body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong {
  font-size: 17px;
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: 0;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.86);
}

body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium {
  font-size: 14px;
}

body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
  font-size: 12px;
}

.overview-tutorial-title {
  top: 14px;
  right: 10px;
  left: 10px;
  padding: 13px 14px 15px;
}

.overview-tutorial-title strong {
  font-size: 21px;
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: 0;
  text-shadow: 0 2px 9px rgba(0, 0, 0, 0.88);
}

.overview-tutorial-title strong.is-medium {
  font-size: 18px;
}

.overview-tutorial-title strong.is-long {
  font-size: 15px;
}

@media (max-width: 680px) {
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy {
    top: 8px;
    right: 5px;
    left: 5px;
    padding: 8px 7px 9px;
    border-left-width: 3px;
  }

  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong {
    font-size: 12px;
  }

  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium {
    font-size: 10.5px;
  }

  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
    font-size: 9px;
  }
}

@media (max-width: 560px) {
  .overview-tutorial-title {
    top: 9px;
    right: 7px;
    left: 7px;
    padding: 10px 8px 11px;
  }

  .overview-tutorial-title strong {
    font-size: 15px;
  }

  .overview-tutorial-title strong.is-medium {
    font-size: 12.5px;
  }

  .overview-tutorial-title strong.is-long {
    font-size: 10.5px;
  }
}


/* Embedded per-tool chat */
.simple-tool-card.has-embedded-chat {
  cursor: default;
}

.simple-tool-card.has-embedded-chat:focus-within {
  border-color: rgba(88, 214, 141, 0.34);
}

.simple-tool-card.has-embedded-chat > .embedded-tool-chat {
  grid-column: 1 / -1;
}

.embedded-tool-chat {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-width: 0;
  margin-top: 4px;
  overflow: hidden;
  border: 1px solid rgba(71, 199, 232, 0.16);
  border-radius: 8px;
  background: rgba(7, 13, 20, 0.38);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025), 0 10px 26px rgba(0, 0, 0, 0.11);
  opacity: 0.44;
  backdrop-filter: blur(14px);
  transition: opacity 220ms ease, border-color 220ms ease, background 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

.embedded-tool-chat::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(118deg, rgba(88, 214, 141, 0.075), transparent 34%, rgba(71, 199, 232, 0.065) 70%, transparent),
    linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.035), transparent);
  background-size: 100% 100%, 38% 100%;
  background-position: 0 0, -70% 0;
  animation: embedded-chat-flow 7.5s linear infinite;
}

.embedded-tool-chat:hover,
.embedded-tool-chat:focus-within,
.embedded-tool-chat.has-messages {
  opacity: 0.84;
  border-color: rgba(71, 199, 232, 0.3);
  background: rgba(7, 13, 20, 0.58);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045), 0 14px 34px rgba(0, 0, 0, 0.18), 0 0 24px rgba(71, 199, 232, 0.055);
  transform: translateY(-1px);
}

.embedded-tool-chat-messages {
  display: none;
  flex-direction: column;
  gap: 9px;
  max-height: 210px;
  padding: 12px 12px 0;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(71, 199, 232, 0.28) transparent;
}

.embedded-tool-chat.has-messages .embedded-tool-chat-messages {
  display: flex;
}

.embedded-tool-chat-message {
  width: max-content;
  max-width: min(88%, 680px);
  padding: 8px 10px;
  border: 1px solid rgba(149, 166, 190, 0.13);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
}

.embedded-tool-chat-message-user {
  align-self: flex-end;
  border-color: rgba(88, 214, 141, 0.2);
  background: rgba(88, 214, 141, 0.085);
}

.embedded-tool-chat-role {
  display: block;
  margin-bottom: 3px;
  color: rgba(125, 255, 178, 0.86);
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.embedded-tool-chat-message p {
  margin: 0;
  color: rgba(238, 244, 248, 0.84);
  font-size: 12px;
  line-height: 1.55;
  word-break: normal;
  overflow-wrap: break-word;
}

.embedded-tool-chat-form {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 34px;
  align-items: end;
  gap: 8px;
  min-height: 52px;
  padding: 8px 9px;
}

.embedded-tool-chat.has-messages .embedded-tool-chat-form {
  border-top: 1px solid rgba(149, 166, 190, 0.1);
}

.embedded-tool-chat-model,
.embedded-tool-chat-form button {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  margin-bottom: 1px;
  border-radius: 7px;
}

.embedded-tool-chat-model {
  border: 1px solid rgba(88, 214, 141, 0.2);
  background: rgba(88, 214, 141, 0.07);
}

.embedded-tool-chat-model img {
  width: 17px;
  height: 17px;
  object-fit: contain;
}

.embedded-tool-chat textarea {
  width: 100%;
  min-height: 34px;
  max-height: 112px;
  padding: 7px 4px 6px;
  resize: none;
  overflow-y: auto;
  border: 0;
  outline: 0;
  color: rgba(244, 249, 252, 0.92);
  background: transparent;
  font: inherit;
  font-size: 13px;
  line-height: 1.5;
}

.embedded-tool-chat textarea::placeholder {
  color: rgba(195, 206, 216, 0.58);
}

.embedded-tool-chat-form button {
  border: 1px solid rgba(71, 199, 232, 0.24);
  color: rgba(208, 242, 250, 0.9);
  background: rgba(71, 199, 232, 0.09);
  cursor: pointer;
  transition: transform 160ms ease, border-color 160ms ease, color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.embedded-tool-chat-form button svg {
  width: 17px;
  height: 17px;
}

.embedded-tool-chat-form button:hover,
.embedded-tool-chat-form button:focus-visible {
  border-color: rgba(88, 214, 141, 0.48);
  color: #b8ffd4;
  background: rgba(88, 214, 141, 0.14);
  box-shadow: 0 0 0 4px rgba(88, 214, 141, 0.055);
  outline: none;
  transform: translateX(2px);
}

.embedded-tool-chat-form button:disabled {
  cursor: wait;
  opacity: 0.45;
  transform: none;
}

.quick-tool-chat-slot {
  width: 100%;
  margin-top: 18px;
}

.quick-tool-chat-slot > .embedded-tool-chat {
  max-width: none;
}

@keyframes embedded-chat-flow {
  from { background-position: 0 0, -70% 0; }
  to { background-position: 0 0, 170% 0; }
}

@media (max-width: 640px) {
  .embedded-tool-chat {
    opacity: 0.58;
  }

  .embedded-tool-chat-message {
    max-width: 94%;
  }

  .embedded-tool-chat-form {
    grid-template-columns: 30px minmax(0, 1fr) 32px;
    gap: 6px;
    padding-inline: 7px;
  }

  .embedded-tool-chat-model,
  .embedded-tool-chat-form button {
    width: 30px;
    height: 30px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .embedded-tool-chat,
  .embedded-tool-chat::before,
  .embedded-tool-chat-form button {
    animation: none;
    transition: none;
  }
}


/* Semantic tool icons */
.semantic-icon {
  --semantic-a: rgba(72, 206, 153, 0.24);
  --semantic-b: rgba(31, 88, 104, 0.28);
  --semantic-line: rgba(118, 255, 194, 0.26);
  --semantic-shadow: rgba(39, 184, 127, 0.12);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  flex: 0 0 auto;
  color: #f7fffb;
  background:
    linear-gradient(145deg, var(--semantic-a), var(--semantic-b)) !important;
  box-shadow:
    inset 0 0 0 1px var(--semantic-line),
    inset 0 -14px 24px rgba(0, 0, 0, 0.08),
    0 9px 22px var(--semantic-shadow) !important;
  font-family: "Segoe UI Emoji", "Apple Color Emoji", sans-serif;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.semantic-icon::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -36% -55%;
  background: linear-gradient(112deg, transparent 38%, rgba(255, 255, 255, 0.16) 49%, transparent 61%);
  transform: translateX(-28%) rotate(-7deg);
  opacity: 0.7;
}

.semantic-icon::after {
  content: "";
  position: absolute;
  right: 7px;
  bottom: 7px;
  width: 5px;
  height: 5px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 2px;
  transform: rotate(45deg);
  opacity: 0.55;
}

.semantic-icon-glyph {
  position: relative;
  z-index: 1;
  display: inline-grid;
  place-items: center;
  line-height: 1;
  filter: saturate(1.05) drop-shadow(0 3px 5px rgba(0, 0, 0, 0.2));
  transform: translateY(-1px);
  transition: transform 220ms ease, filter 220ms ease;
}

.semantic-icon--cyan {
  --semantic-a: rgba(43, 190, 208, 0.26);
  --semantic-b: rgba(31, 73, 111, 0.28);
  --semantic-line: rgba(99, 231, 246, 0.27);
  --semantic-shadow: rgba(50, 190, 215, 0.12);
}

.semantic-icon--amber {
  --semantic-a: rgba(218, 167, 61, 0.25);
  --semantic-b: rgba(103, 66, 34, 0.27);
  --semantic-line: rgba(255, 207, 105, 0.27);
  --semantic-shadow: rgba(218, 157, 54, 0.11);
}

.semantic-icon--coral {
  --semantic-a: rgba(219, 104, 91, 0.24);
  --semantic-b: rgba(99, 52, 68, 0.28);
  --semantic-line: rgba(255, 145, 132, 0.26);
  --semantic-shadow: rgba(216, 93, 89, 0.11);
}

.semantic-icon--violet {
  --semantic-a: rgba(139, 111, 217, 0.24);
  --semantic-b: rgba(55, 54, 104, 0.3);
  --semantic-line: rgba(184, 160, 255, 0.26);
  --semantic-shadow: rgba(123, 102, 210, 0.11);
}

.semantic-icon--blue {
  --semantic-a: rgba(75, 129, 218, 0.25);
  --semantic-b: rgba(35, 64, 105, 0.3);
  --semantic-line: rgba(121, 169, 247, 0.27);
  --semantic-shadow: rgba(70, 125, 215, 0.12);
}

.semantic-icon--rose {
  --semantic-a: rgba(211, 91, 145, 0.23);
  --semantic-b: rgba(92, 48, 83, 0.3);
  --semantic-line: rgba(244, 134, 184, 0.25);
  --semantic-shadow: rgba(207, 86, 141, 0.11);
}

.semantic-icon--lime {
  --semantic-a: rgba(145, 190, 71, 0.23);
  --semantic-b: rgba(51, 91, 63, 0.29);
  --semantic-line: rgba(188, 228, 105, 0.25);
  --semantic-shadow: rgba(133, 183, 63, 0.1);
}

.simple-tool-card:hover .semantic-icon-glyph,
.simple-tool-card:focus-visible .semantic-icon-glyph,
.utility-item-card:hover .semantic-icon-glyph,
.utility-item-card:focus-visible .semantic-icon-glyph,
.overview-tool-card:hover .semantic-icon-glyph,
.overview-tool-card:focus-visible .semantic-icon-glyph,
.detail-file-card:hover .semantic-icon-glyph,
.detail-file-card:focus-visible .semantic-icon-glyph,
.site-search-result:hover .semantic-icon-glyph,
.site-search-result:focus-visible .semantic-icon-glyph {
  transform: translateY(-2px) rotate(-5deg) scale(1.1);
  filter: saturate(1.14) drop-shadow(0 5px 7px rgba(0, 0, 0, 0.25));
}

.site-search-visual-fallback.semantic-icon {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  font-size: 21px;
}

@media (prefers-reduced-motion: reduce) {
  .semantic-icon-glyph {
    transition: none;
  }
}

/* Tutorial covers: centered titles and consistent right-facing duck scenes */
.tutorial-item-thumb {
  isolation: isolate;
  border-color: rgba(105, 227, 172, 0.26);
  background: linear-gradient(180deg, #0b1920, #081219);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 12px 26px rgba(0, 0, 0, 0.2);
}
.tutorial-item-thumb::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(5, 14, 19, 0.03) 0 68%, rgba(5, 12, 17, 0.16) 100%);
}
.tutorial-item-thumb img {
  position: relative;
  z-index: 0;
  object-position: center center;
}
.tutorial-thumb-copy {
  z-index: 3;
  top: 12px;
  right: 10px;
  left: 10px;
  display: grid;
  min-height: 54px;
  padding: 8px 10px;
  place-items: center;
  border: 1px solid rgba(105, 227, 172, 0.32);
  border-radius: 6px;
  background: linear-gradient(180deg, rgba(7, 20, 26, 0.94), rgba(6, 16, 22, 0.88));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.055), 0 8px 20px rgba(0, 0, 0, 0.22);
  text-align: center;
}
.tutorial-thumb-copy strong,
.tutorial-thumb-copy strong.is-medium,
.tutorial-thumb-copy strong.is-long {
  width: 100%;
  color: #f8fffc;
  font-size: 16px;
  font-weight: 850;
  line-height: 1.26;
  letter-spacing: 0;
  text-align: center;
  text-wrap: balance;
  white-space: normal;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.85), 0 0 14px rgba(105, 227, 172, 0.16);
}
.tutorial-thumb-copy strong.is-medium { font-size: 15px; }
.tutorial-thumb-copy strong.is-long { font-size: 13.5px; }
.tutorial-item-card > div:last-child {
  align-self: center;
  min-width: 0;
}
.tutorial-item-card h3 {
  margin-bottom: 11px;
  color: #f8fffc;
  font-size: 22px;
  font-weight: 850;
  line-height: 1.3;
}
.tutorial-item-card p {
  color: rgba(225, 239, 234, 0.82);
  font-size: 15.5px;
  line-height: 1.7;
}
@media (max-width: 680px) {
  .tutorial-thumb-copy {
    top: 10px;
    right: 9px;
    left: 9px;
    min-height: 50px;
  }
  .tutorial-thumb-copy strong,
  .tutorial-thumb-copy strong.is-medium { font-size: 15px; }
  .tutorial-thumb-copy strong.is-long { font-size: 13px; }
  .tutorial-item-card h3 { font-size: 20px; }
}

/* Final tutorial cover polish */
.tutorial-thumb-copy {
  border-left: 1px solid rgba(105, 227, 172, 0.32);
  min-height: 58px;
}
.tutorial-thumb-copy strong {
  font-size: 16.5px;
}
.tutorial-thumb-copy strong.is-medium {
  font-size: 15.5px;
}
.tutorial-thumb-copy strong.is-long {
  max-width: 100%;
  font-size: 14.5px;
  line-height: 1.32;
}


/* Tutorial cover composition: one centered title hierarchy, restrained right-facing duck */
body[data-active-group="tutorial-knowledge"] .tutorial-item-card {
  grid-template-columns: 196px minmax(0, 1fr);
  min-height: 286px;
  gap: 22px;
}
body[data-active-group="tutorial-knowledge"] .tutorial-item-thumb {
  width: 196px;
  height: 260px;
  overflow: hidden;
  border-radius: 8px;
  border-color: rgba(105, 227, 172, 0.3);
  background: #08151c;
}
body[data-active-group="tutorial-knowledge"] .tutorial-item-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  filter: brightness(1.03) saturate(0.96) contrast(1.02);
}
body[data-active-group="tutorial-knowledge"] .tutorial-item-thumb::after {
  background: linear-gradient(180deg, rgba(4, 12, 17, 0.04) 0 56%, rgba(4, 11, 15, 0.22) 100%);
}
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy {
  top: 16px;
  right: 14px;
  left: 14px;
  min-height: 76px;
  padding: 11px 12px;
  place-items: center;
  border: 1px solid rgba(105, 227, 172, 0.38);
  border-radius: 7px;
  background: linear-gradient(180deg, rgba(5, 18, 24, 0.96), rgba(5, 17, 22, 0.84));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 8px 18px rgba(0,0,0,0.24);
}
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
  display: block;
  width: 100%;
  max-width: 166px;
  margin: 0 auto;
  color: #fbfffd;
  font-size: 18px !important;
  font-weight: 850;
  line-height: 1.26;
  text-align: center;
  text-wrap: balance;
  white-space: normal;
  letter-spacing: 0;
  text-shadow: 0 1px 3px rgba(0,0,0,0.88), 0 0 16px rgba(105,227,172,0.17);
}
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium {
  max-width: 156px;
  font-size: 17px !important;
}
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
  max-width: 145px;
  font-size: 16px !important;
  line-height: 1.32;
}
body[data-active-group="tutorial-knowledge"] .tutorial-item-card h3 {
  margin-bottom: 12px;
  font-size: 22px;
  line-height: 1.32;
}
body[data-active-group="tutorial-knowledge"] .tutorial-item-card p {
  font-size: 15.5px;
  line-height: 1.72;
}
@media (max-width: 680px) {
  body[data-active-group="tutorial-knowledge"] .tutorial-item-card {
    grid-template-columns: 136px minmax(0, 1fr);
    min-height: 214px;
    gap: 14px;
  }
  body[data-active-group="tutorial-knowledge"] .tutorial-item-thumb {
    width: 136px;
    height: 182px;
  }
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy {
    top: 11px;
    right: 9px;
    left: 9px;
    min-height: 58px;
    padding: 8px;
  }
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium {
    max-width: 112px;
    font-size: 15px !important;
  }
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
    max-width: 108px;
    font-size: 14px !important;
  }
  body[data-active-group="tutorial-knowledge"] .tutorial-item-card h3 { font-size: 19px; }
  body[data-active-group="tutorial-knowledge"] .tutorial-item-card p { font-size: 14px; }
}


/* Overview recommendation icons: one clean glyph, no stacked emoji decoration */
.overview-tool-icon.overview-compact-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  min-width: 42px;
  flex: 0 0 auto;
  overflow: hidden;
  border: 1px solid rgba(132, 228, 190, 0.24);
  border-radius: 10px;
  background: linear-gradient(145deg, rgba(72, 206, 153, 0.15), rgba(31, 88, 104, 0.2));
  color: #f5fffb;
  isolation: isolate;
}
.overview-tool-icon.overview-compact-icon::before,
.overview-tool-icon.overview-compact-icon::after,
.overview-tool-icon.overview-compact-icon > span::before,
.overview-tool-icon.overview-compact-icon > span::after {
  content: none !important;
  display: none !important;
}
.overview-tool-icon.overview-compact-icon > span {
  position: relative;
  z-index: 1;
  display: block;
  min-width: 0;
  height: auto;
  color: #f5fffb;
  font-family: "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", "Segoe UI Symbol", sans-serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  text-shadow: 0 1px 5px rgba(0, 0, 0, 0.24);
  transition: transform 220ms ease, color 220ms ease;
}
.overview-tool-card:hover .overview-compact-icon,
.overview-tool-card:focus-visible .overview-compact-icon {
  border-color: rgba(145, 238, 202, 0.38);
  background: linear-gradient(145deg, rgba(72, 206, 153, 0.21), rgba(31, 88, 104, 0.25));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05), 0 8px 18px rgba(39,184,127,0.11);
}
.overview-tool-card:hover .overview-compact-icon > span,
.overview-tool-card:focus-visible .overview-compact-icon > span {
  color: #ffffff;
  transform: translateY(-1px) scale(1.06);
}
.overview-tool-card .overview-tool-icon.tool-icon {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.overview-tool-card .overview-tool-icon.tool-icon::before,
.overview-tool-card .overview-tool-icon.tool-icon::after {
  content: none !important;
  display: none !important;
}
.overview-tool-card .overview-tool-icon.tool-icon .tool-logo {
  position: absolute;
  inset: 7px;
  display: block;
  width: calc(100% - 14px);
  height: calc(100% - 14px);
  margin: 0;
  object-fit: contain;
}
@media (max-width: 680px) {
  .overview-tool-icon.overview-compact-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border-radius: 9px;
  }
  .overview-tool-icon.overview-compact-icon > span { font-size: 18px; }
}

/* 20260717 multimodel AI workspace */
.ai-chat-workspace{position:relative;z-index:1;display:grid;grid-template-columns:210px minmax(0,1fr);flex:1;min-height:0;overflow:hidden}
.ai-chat-history{display:flex;flex-direction:column;min-width:0;padding:16px 10px;border-right:1px solid rgba(166,184,208,.14);background:rgba(3,9,17,.28)}
.ai-chat-history-head{display:flex;align-items:center;justify-content:space-between;padding:0 7px 12px;color:rgba(231,241,248,.72);font-size:12px;font-weight:700;letter-spacing:.04em}
.ai-chat-history-head button{display:grid;place-items:center;width:27px;height:27px;border:1px solid rgba(139,214,230,.26);border-radius:8px;color:#d9fbf2;background:rgba(70,169,171,.12);font-size:19px;line-height:1;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.ai-chat-history-head button[hidden]{display:none}
.ai-chat-history-head button:hover,.ai-chat-history-head button:focus-visible{border-color:rgba(137,242,220,.58);background:rgba(76,206,186,.22);transform:translateY(-1px);outline:none}
.ai-chat-history-list{display:flex;flex-direction:column;gap:4px;min-height:0;overflow:auto}
.ai-chat-history-item{display:flex;align-items:center;gap:9px;width:100%;min-height:48px;padding:7px 8px;border:1px solid transparent;border-radius:9px;color:rgba(215,226,237,.72);background:transparent;text-align:left;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}
.ai-chat-history-item:hover,.ai-chat-history-item:focus-visible{color:#f2fbfd;background:rgba(110,204,207,.09);border-color:rgba(117,221,218,.18);outline:none;transform:translateX(2px)}
.ai-chat-history-item.is-active{color:#f3fffd;background:rgba(72,178,166,.14);border-color:rgba(119,228,205,.3);box-shadow:inset 2px 0 0 rgba(123,235,204,.82)}
.ai-chat-history-item>span:last-child{display:flex;flex-direction:column;min-width:0;gap:3px}.ai-chat-history-item strong,.ai-chat-history-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-chat-history-item strong{font-size:12px;font-weight:650}.ai-chat-history-item small{color:rgba(173,193,208,.46);font-size:10px}.ai-chat-history-icon{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border:1px solid rgba(148,183,199,.2);border-radius:7px;color:rgba(186,232,223,.8);font-size:12px}
.ai-chat-main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}
.ai-chat-model-context{display:flex;align-items:center;gap:9px;padding:13px 18px 10px;color:rgba(229,241,248,.78)}.ai-chat-model-context>div{display:flex;flex-direction:column;gap:2px}.ai-chat-model-context strong{font-size:13px;font-weight:700}.ai-chat-model-context small{color:rgba(177,198,211,.52);font-size:10px}.ai-chat-context-dot{width:8px;height:8px;border-radius:50%;background:#77e3c5;box-shadow:0 0 12px rgba(119,227,197,.55)}
.ai-chat-model-name{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:120px}.ai-chat-model-name strong{font-size:13px;line-height:1.1}.ai-chat-model-name small{color:rgba(177,198,211,.55);font-size:10px;font-weight:500;line-height:1.1}.ai-chat-model-switch{display:flex!important;align-items:center;gap:9px;min-width:190px;text-align:left}
.ai-chat-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:210px;margin:auto;color:rgba(224,238,244,.78);text-align:center}.ai-chat-welcome-logo{display:grid;place-items:center;width:46px;height:46px;padding:9px;border:1px solid rgba(127,224,213,.25);border-radius:15px;background:rgba(73,181,169,.1);box-shadow:0 0 24px rgba(73,181,169,.09)}.ai-chat-welcome-logo img{width:100%;height:100%;object-fit:contain}.ai-chat-welcome strong{font-size:15px}.ai-chat-welcome p{max-width:310px;margin:0;color:rgba(185,204,215,.54);font-size:12px;line-height:1.65}
.ai-chat-message-row{display:flex;align-items:flex-start;gap:9px;max-width:92%}.ai-chat-message-row.ai-chat-message-user{align-self:flex-end;flex-direction:row-reverse}.ai-chat-message-avatar{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;padding:4px;border:1px solid rgba(141,196,212,.22);border-radius:10px;background:rgba(255,255,255,.06)}.ai-chat-message-avatar img{width:100%;height:100%;object-fit:contain}.ai-chat-message{max-width:min(620px,calc(100% - 38px));padding:10px 12px;border:1px solid rgba(149,166,190,.15);border-radius:12px;background:rgba(255,255,255,.045)}.ai-chat-message-user .ai-chat-message{border-color:rgba(95,215,184,.25);background:rgba(79,183,160,.1)}.ai-chat-message-role{display:block;margin-bottom:4px;color:rgba(142,230,203,.8);font-size:10px;font-weight:700}.ai-chat-message p{margin:0;color:rgba(238,244,248,.84);font-size:13px;line-height:1.65}
.ai-chat-studio{flex:1;min-height:0;overflow:auto;padding:8px 18px 22px}.ai-studio-shell{display:flex;flex-direction:column;gap:16px;max-width:860px;margin:0 auto;padding:15px 0 12px}.ai-studio-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ai-studio-heading div{display:flex;flex-direction:column;gap:5px}.ai-studio-heading span{color:rgba(118,224,207,.62);font-size:9px;font-weight:800;letter-spacing:.16em}.ai-studio-heading strong{color:rgba(242,249,250,.94);font-size:21px;letter-spacing:.01em}.ai-studio-heading>small{padding:5px 8px;border:1px solid rgba(127,224,213,.22);border-radius:7px;color:rgba(191,244,230,.8);font-size:10px}.ai-studio-prompt{display:flex;flex-direction:column;gap:7px}.ai-studio-prompt>span,.ai-studio-grid label>span,.ai-video-settings label>span{color:rgba(213,229,235,.68);font-size:11px;font-weight:700}.ai-studio-prompt textarea{width:100%;resize:vertical;min-height:92px;padding:12px 13px;border:1px solid rgba(132,180,195,.2);border-radius:11px;color:#eaf7f5;background:rgba(4,13,22,.45);font:inherit;font-size:13px;line-height:1.6;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.ai-studio-prompt textarea:focus{border-color:rgba(120,229,208,.58);box-shadow:0 0 0 3px rgba(89,209,183,.09)}.ai-studio-prompt small{color:rgba(179,199,208,.45);font-size:10px}.ai-studio-grid,.ai-video-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ai-studio-grid label,.ai-video-settings label{display:flex;flex-direction:column;gap:7px;min-width:0}.ai-studio-grid select,.ai-video-settings select{height:38px;padding:0 10px;border:1px solid rgba(132,180,195,.18);border-radius:9px;color:rgba(231,242,244,.84);background:rgba(255,255,255,.045);font:inherit;font-size:11px;outline:none}.ai-studio-upload,.ai-video-upload-card{display:flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px dashed rgba(120,213,201,.3);border-radius:9px;color:rgba(199,239,231,.75);background:rgba(77,177,166,.06);font:inherit;font-size:11px;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.ai-studio-upload:hover,.ai-video-upload-card:hover{border-color:rgba(140,242,219,.7);background:rgba(77,177,166,.14);transform:translateY(-1px)}.ai-studio-upload span,.ai-video-upload-card span{font-size:18px;color:#9cebd5}.ai-studio-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:2px;color:rgba(176,199,207,.5);font-size:11px}.ai-studio-actions button{min-height:40px;padding:0 15px;border:1px solid rgba(122,232,209,.38);border-radius:10px;color:#e7fff8;background:linear-gradient(135deg,rgba(44,139,119,.55),rgba(25,60,70,.76));font:inherit;font-size:12px;font-weight:750;cursor:pointer;box-shadow:0 7px 18px rgba(0,0,0,.18);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.ai-studio-actions button:hover{transform:translateY(-2px);box-shadow:0 11px 25px rgba(0,0,0,.28),0 0 18px rgba(89,221,189,.11);background:linear-gradient(135deg,rgba(57,166,138,.7),rgba(25,70,77,.84))}.ai-studio-actions button:disabled{opacity:.55;cursor:wait}.ai-studio-actions b{margin-left:7px;font-size:16px}.ai-studio-output{display:grid;place-items:center;min-height:118px;border:1px solid rgba(135,176,195,.13);border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.025),rgba(61,133,144,.035));color:rgba(180,204,212,.45);text-align:center}.ai-studio-output-mark{display:block;margin-bottom:4px;color:rgba(126,223,204,.55);font-size:23px}.ai-studio-output p{margin:0;font-size:11px}
.ai-studio-tabs{display:flex;gap:7px;padding-bottom:2px;border-bottom:1px solid rgba(137,176,195,.13)}.ai-studio-tab{position:relative;padding:8px 11px;border:0;color:rgba(184,202,211,.52);background:transparent;font:inherit;font-size:11px;cursor:pointer}.ai-studio-tab::after{content:"";position:absolute;right:10px;bottom:-3px;left:10px;height:2px;border-radius:2px;background:transparent;transition:background .2s ease}.ai-studio-tab:hover{color:rgba(229,246,244,.82)}.ai-studio-tab.is-active{color:#bdf4df;font-weight:750}.ai-studio-tab.is-active::after{background:#70d9bd;box-shadow:0 0 10px rgba(112,217,189,.35)}.ai-video-frame-pair{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px}.ai-video-frame-pair>i{color:rgba(143,224,207,.6);font-style:normal}.ai-video-upload-card{flex-direction:column;min-height:86px}.ai-video-upload-card strong{font-size:11px}.ai-video-upload-card small{color:rgba(176,201,208,.48);font-size:10px}.ai-video-upload-card.is-wide{width:100%}.ai-video-motion{grid-column:span 2}.ai-video-motion span{display:flex;justify-content:space-between}.ai-video-motion output{color:#bff4e0;font-weight:700}.ai-video-motion input{width:100%;accent-color:#70d9bd}.ai-video-output{min-height:105px}
body.ai-model-image .ai-chat-window::before{background:linear-gradient(130deg,rgba(159,116,255,.12),transparent 44%,rgba(255,177,111,.08));}.ai-model-image .ai-chat-context-dot{background:#c19cff;box-shadow:0 0 12px rgba(193,156,255,.55)}.ai-model-image .ai-studio-actions button{border-color:rgba(193,156,255,.42);background:linear-gradient(135deg,rgba(107,73,158,.55),rgba(44,39,79,.76))}.ai-model-video .ai-chat-window::before{background:linear-gradient(130deg,rgba(126,108,255,.13),transparent 45%,rgba(53,210,185,.08));}.ai-model-video .ai-chat-context-dot{background:#9b8dff;box-shadow:0 0 12px rgba(155,141,255,.58)}.ai-model-video .ai-studio-actions button{border-color:rgba(141,129,255,.45);background:linear-gradient(135deg,rgba(86,73,158,.58),rgba(31,45,79,.8))}.ai-model-video .ai-studio-tab.is-active{color:#c7beff}.ai-model-video .ai-studio-tab.is-active::after{background:#9b8dff;box-shadow:0 0 10px rgba(155,141,255,.38)}
body.ai-chat-scrolled .ai-chat-window{z-index:60}.ai-chat-backdrop{z-index:50}.ai-chat-window-head{z-index:5}.ai-chat-workspace{z-index:2}.ai-chat-studio[hidden],.ai-chat-messages[hidden]{display:none!important}
@media (max-width:980px){.ai-chat-workspace{grid-template-columns:168px minmax(0,1fr)}.ai-chat-history{padding-inline:7px}.ai-studio-grid,.ai-video-settings{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-chat-model-name{min-width:98px}}
@media (max-width:680px){.ai-chat-workspace{grid-template-columns:1fr}.ai-chat-history{display:none}.ai-chat-model-switch{min-width:0}.ai-chat-model-name small{display:none}.ai-chat-studio{padding-inline:12px}.ai-studio-grid,.ai-video-settings{grid-template-columns:1fr}.ai-video-motion{grid-column:auto}.ai-video-frame-pair{grid-template-columns:1fr}.ai-video-frame-pair>i{justify-self:center;transform:rotate(90deg)}.ai-studio-actions{align-items:stretch;flex-direction:column}.ai-studio-actions button{width:100%}}


/* Compact AI preview before the page enters the full blackout workspace. */
body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-window {
  overflow: hidden;
}

body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-workspace {
  grid-template-columns: 1fr;
  min-height: 0;
}

body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-history,
body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-model-context,
body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-studio {
  display: none !important;
}

body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-main {
  min-width: 0;
  min-height: 0;
  height: 100%;
}

body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-messages,
body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-messages[hidden] {
  display: flex !important;
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  height: 100%;
  padding: 18px 15px;
  overflow-x: hidden;
  overflow-y: auto;
  scroll-padding-top: 18px;
}

body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-welcome {
  min-height: 0;
  gap: 6px;
  align-content: center;
}

body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-welcome p {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

body.ai-chat-mode:not(.ai-chat-scrolled) .ai-chat-message-row {
  max-width: 100%;
}


/* AI tool card readability refinement */
.tools-workspace .tool-grid.ai-tools-page-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 200px;
}

.ai-tools-page-grid .tool-card {
  height: 200px;
  min-height: 200px;
  padding: 18px;
}

.ai-tools-page-grid .tool-card > a {
  min-height: 0;
  flex: 0 0 auto;
  align-items: flex-start;
  gap: 16px;
  overflow: visible;
}

.ai-tools-page-grid .tool-icon {
  flex: 0 0 58px;
  width: 58px;
  height: 58px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.045);
  box-shadow: inset 0 0 0 1px rgba(154, 224, 205, 0.08);
}

.ai-tools-page-grid .tool-icon img {
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.ai-tools-page-grid .tool-info {
  display: block;
  min-width: 0;
  padding-right: 0;
}

.ai-tools-page-grid .tool-info h3 {
  padding-right: 34px;
  margin: 1px 0 6px;
  color: rgba(244, 252, 249, 0.96);
  font-size: 20px;
  line-height: 1.2;
  font-weight: 820;
  display: -webkit-box;
  overflow: hidden;
  white-space: normal;
  text-overflow: clip;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.ai-tools-page-grid .tool-info p {
  display: -webkit-box;
  min-height: 0;
  margin: 0 0 7px;
  color: rgba(206, 220, 226, 0.82);
  font-size: 15px;
  line-height: 1.45;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.ai-tools-page-grid .tool-info small {
  display: block;
  margin-top: 0;
  color: rgba(91, 215, 232, 0.86);
  font-size: 13px;
  line-height: 1.35;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.ai-tools-page-grid .tool-tags {
  flex: 0 0 auto;
  gap: 7px;
  margin-top: 16px;
  padding-top: 13px;
  border-top: 1px solid rgba(149, 166, 190, 0.1);
  overflow: hidden;
  white-space: nowrap;
}

.ai-tools-page-grid .tool-tags span {
  padding: 6px 10px;
  font-size: 13px;
  line-height: 1;
}

.ai-tools-page-grid .favorite-btn {
  top: 16px;
  right: 16px;
  width: 38px;
  height: 38px;
  font-size: 18px;
}

@media (max-width: 1500px) {
  .tools-workspace .ai-tools-page-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .tools-workspace .ai-tools-page-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .tools-workspace .tool-grid.ai-tools-page-grid {
    grid-template-columns: 1fr;
    grid-auto-rows: 208px;
  }

  .ai-tools-page-grid .tool-card {
    height: 208px;
    min-height: 208px;
    padding: 16px;
  }

  .ai-tools-page-grid .tool-icon {
    flex-basis: 54px;
    width: 54px;
    height: 54px;
  }

  .ai-tools-page-grid .tool-icon img {
    width: 37px;
    height: 37px;
  }

  .ai-tools-page-grid .tool-info h3 {
    font-size: 19px;
  }

  .ai-tools-page-grid .tool-info p {
    font-size: 14px;
  }
}


/* Circular search and AI mode switch */
.mode-switch {
  border-radius: 50%;
}

.mode-switch::before {
  border-radius: 50%;
}


/* Search recommendations: one clean icon layer per result. */
.site-search-visual.tool-icon {
  isolation: isolate;
}
.site-search-visual > .site-search-fallback-glyph {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  color: #f5fffb;
  font-family: "Segoe UI Symbol", "Segoe UI Emoji", "Segoe UI", sans-serif;
  font-size: 23px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-shadow: 0 1px 5px rgba(0, 0, 0, .24);
  transition: opacity 180ms ease, transform 180ms ease;
}
.site-search-visual > .tool-logo,
.site-search-visual > .site-search-result-image {
  position: absolute;
  z-index: 2;
  inset: 5px;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border-radius: 6px;
  object-fit: contain;
  background: transparent;
}
.site-search-visual > .tool-logo {
  inset: 6px;
  width: calc(100% - 12px);
  height: calc(100% - 12px);
}
.site-search-visual.logo-loaded > .site-search-fallback-glyph {
  opacity: 0;
  transform: scale(.86);
  pointer-events: none;
}
.site-search-visual.logo-missing > .tool-logo {
  display: none;
}
.site-search-visual.logo-missing > .site-search-fallback-glyph {
  opacity: 1;
}
/* Backward-compatible cleanup for already-rendered nested semantic icons. */
.site-search-visual > .site-search-visual-fallback.semantic-icon {
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: inherit;
  background: transparent !important;
  box-shadow: none !important;
}
.site-search-visual > .site-search-visual-fallback.semantic-icon::before,
.site-search-visual > .site-search-visual-fallback.semantic-icon::after {
  content: none !important;
  display: none !important;
}
.site-search-visual > .site-search-visual-fallback.semantic-icon .semantic-icon-glyph {
  font-family: "Segoe UI Symbol", "Segoe UI Emoji", "Segoe UI", sans-serif;
  font-size: 23px;
  transform: none;
  filter: none;
}

.site-search-visual:has(> img) > .site-search-fallback-glyph {
  opacity: 0;
  transform: scale(.86);
  pointer-events: none;
}
.site-search-visual.logo-missing > .site-search-fallback-glyph {
  opacity: 1;
  transform: scale(1);
}


/* AI chat bubbles: give both sides a stable readable canvas. */
.ai-chat-message-row {
  width: min(100%, 960px);
  max-width: 100%;
  min-width: min(320px, 100%);
  gap: 12px;
}
.ai-chat-message-row.ai-chat-message-user {
  align-self: flex-end;
}
.ai-chat-message {
  flex: 0 1 auto;
  width: fit-content;
  min-width: min(460px, calc(100% - 40px));
  max-width: calc(100% - 40px);
  padding: 13px 16px;
  border-radius: 14px;
}
.ai-chat-message-user .ai-chat-message {
  min-width: min(320px, calc(100% - 40px));
}
.ai-chat-message-role {
  margin-bottom: 6px;
  font-size: 12px;
  line-height: 1.35;
  white-space: nowrap;
}
.ai-chat-message p {
  font-size: 15px;
  line-height: 1.7;
  word-break: normal;
  overflow-wrap: break-word;
}
@media (max-width: 680px) {
  .ai-chat-message-row {
    min-width: 0;
    width: 100%;
  }
  .ai-chat-message {
    min-width: min(250px, calc(100% - 40px));
    max-width: calc(100% - 40px);
  }
  .ai-chat-message-user .ai-chat-message {
    min-width: min(180px, calc(100% - 40px));
  }
}


/* Unified scrollbars: match the quiet, hover-revealed AI news rail. */
html, body, * {
  scrollbar-width: thin;
  scrollbar-color: transparent transparent;
}

html:hover, body:hover, *:hover {
  scrollbar-color: rgba(88, 214, 141, 0.6) rgba(255, 255, 255, 0.06);
}

html::-webkit-scrollbar,
body::-webkit-scrollbar,
*::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track,
*::-webkit-scrollbar-track {
  background: transparent;
}

html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: transparent;
}

html:hover::-webkit-scrollbar-track,
body:hover::-webkit-scrollbar-track,
*:hover::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.06);
}

html:hover::-webkit-scrollbar-thumb,
body:hover::-webkit-scrollbar-thumb,
*:hover::-webkit-scrollbar-thumb {
  background: rgba(88, 214, 141, 0.62);
}

html::-webkit-scrollbar-corner,
body::-webkit-scrollbar-corner,
*::-webkit-scrollbar-corner {
  background: transparent;
}

/* 20260717 studio parameter layout v2 */
.ai-chat-studio {
  padding: 12px 24px 28px;
}

.ai-studio-shell {
  gap: 18px;
  width: 100%;
  max-width: 1080px;
  padding: 14px 0 20px;
}

.ai-studio-heading {
  align-items: center;
  padding: 0 2px;
}

.ai-studio-heading span {
  font-size: 10px;
  letter-spacing: .14em;
}

.ai-studio-heading strong {
  font-size: 24px;
  line-height: 1.25;
}

.ai-studio-heading > small {
  padding: 7px 10px;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 750;
  letter-spacing: .04em;
  white-space: nowrap;
}

.ai-studio-parameter-panel {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 18px;
  border: 1px solid rgba(151, 184, 200, .17);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(255,255,255,.045), rgba(37,78,89,.045));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 14px 34px rgba(0,0,0,.13);
}

.ai-studio-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 13px;
  border-bottom: 1px solid rgba(150, 183, 199, .12);
}

.ai-studio-section-head > div {
  display: flex;
  align-items: baseline;
  gap: 12px;
  min-width: 0;
}

.ai-studio-section-head strong {
  color: rgba(244,250,252,.94);
  font-size: 15px;
  line-height: 1.2;
  white-space: nowrap;
}

.ai-studio-section-head span {
  color: rgba(184,203,213,.55);
  font-size: 12px;
  line-height: 1.4;
}

.ai-studio-section-head em {
  flex: 0 0 auto;
  padding: 5px 9px;
  border: 1px solid rgba(125,220,207,.2);
  border-radius: 999px;
  color: rgba(190,241,229,.75);
  background: rgba(77,177,166,.07);
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
}

.ai-studio-grid,
.ai-video-settings {
  display: grid;
  gap: 12px;
}

.ai-studio-grid-image {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ai-video-settings {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-studio-grid label,
.ai-video-settings label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.ai-studio-grid label > span,
.ai-video-settings label > span {
  color: rgba(220,232,238,.76);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.2;
  white-space: nowrap;
}

.ai-studio-grid select,
.ai-video-settings select {
  width: 100%;
  min-height: 45px;
  padding: 0 38px 0 12px;
  border: 1px solid rgba(148,184,199,.2);
  border-radius: 10px;
  color: rgba(241,247,250,.9);
  background: rgba(5,14,23,.58);
  font: inherit;
  font-size: 13px;
  outline: none;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.ai-studio-grid select:hover,
.ai-video-settings select:hover,
.ai-studio-grid select:focus,
.ai-video-settings select:focus {
  border-color: rgba(118,224,207,.48);
  background: rgba(9,22,32,.78);
  box-shadow: 0 0 0 3px rgba(93,213,190,.07);
}

.ai-studio-grid select option,
.ai-video-settings select option {
  color: #eef6f8;
  background: #101a24;
}

.ai-studio-reference-row {
  display: grid;
  grid-template-columns: minmax(320px, 1fr) auto;
  align-items: stretch;
  gap: 14px;
}

.ai-studio-upload.ai-studio-upload-large,
.ai-video-upload-card {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  width: 100%;
  min-height: 70px;
  padding: 12px 14px;
  border: 1px dashed rgba(120,213,201,.3);
  border-radius: 11px;
  color: rgba(222,241,237,.82);
  background: rgba(77,177,166,.055);
  text-align: center;
}

.ai-studio-upload.ai-studio-upload-large > span,
.ai-video-upload-card > span {
  display: grid;
  place-items: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(132,226,209,.28);
  border-radius: 10px;
  background: rgba(74,181,164,.09);
  font-size: 21px;
}

.ai-studio-upload.ai-studio-upload-large > div,
.ai-video-upload-card > div {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.ai-studio-upload.ai-studio-upload-large strong,
.ai-video-upload-card strong {
  color: rgba(239,248,248,.9);
  font-size: 13px;
  line-height: 1.2;
}

.ai-studio-upload.ai-studio-upload-large small,
.ai-video-upload-card small {
  color: rgba(179,201,210,.52);
  font-size: 11px;
  line-height: 1.4;
}

.ai-studio-actions {
  align-items: flex-end;
  justify-content: flex-end;
  flex-direction: column;
  min-width: 250px;
  padding: 0;
}

.ai-studio-actions > span {
  font-size: 11px;
  white-space: nowrap;
}

.ai-studio-actions button {
  min-width: 150px;
  min-height: 46px;
  padding: 0 18px;
  font-size: 13px;
}

.ai-studio-tabs {
  gap: 8px;
  padding: 4px;
  border: 1px solid rgba(145,177,194,.15);
  border-radius: 11px;
  background: rgba(4,12,20,.34);
}

.ai-studio-tab {
  flex: 1 1 0;
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid transparent;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 650;
  white-space: nowrap;
  transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}

.ai-studio-tab::after {
  content: none;
}

.ai-studio-tab:hover {
  background: rgba(255,255,255,.045);
}

.ai-studio-tab.is-active {
  border-color: rgba(133,124,241,.38);
  background: linear-gradient(135deg, rgba(112,91,204,.24), rgba(44,92,105,.17));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
}

.ai-video-upload-card {
  min-height: 76px;
}

.ai-video-frame-pair {
  gap: 12px;
}

.ai-video-motion {
  grid-column: span 2;
  justify-content: center;
  min-height: 69px;
  padding: 10px 12px;
  border: 1px solid rgba(148,184,199,.18);
  border-radius: 10px;
  background: rgba(5,14,23,.48);
}

.ai-video-motion input {
  height: 20px;
}

.ai-video-studio .ai-studio-actions {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  padding-top: 2px;
}

.ai-studio-output {
  min-height: 190px;
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(255,255,255,.025), rgba(61,133,144,.045));
}

.ai-video-output {
  min-height: 180px;
}

body.ai-model-image.ai-chat-mode .search-box {
  border-color: rgba(183,145,248,.28);
  box-shadow: inset 0 0 28px rgba(124,91,190,.035);
}

body.ai-model-video.ai-chat-mode .search-box {
  border-color: rgba(139,132,245,.3);
  box-shadow: inset 0 0 28px rgba(102,88,196,.04);
}

body.ai-model-image.ai-chat-mode #tool-search,
body.ai-model-video.ai-chat-mode #tool-search {
  font-size: 15px;
  font-weight: 520;
}

@media (max-width: 1180px) {
  .ai-studio-grid-image,
  .ai-video-settings {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ai-video-motion {
    grid-column: auto;
  }
}

@media (max-width: 760px) {
  .ai-chat-studio {
    padding: 8px 12px 20px;
  }
  .ai-studio-heading strong {
    font-size: 20px;
  }
  .ai-studio-section-head > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }
  .ai-studio-grid-image,
  .ai-video-settings,
  .ai-studio-reference-row {
    grid-template-columns: 1fr;
  }
  .ai-studio-actions,
  .ai-video-studio .ai-studio-actions {
    align-items: stretch;
    flex-direction: column;
    min-width: 0;
  }
  .ai-studio-actions button {
    width: 100%;
  }
}

/* 20260717 tutorial cover title hierarchy v2 */
.tutorial-thumb-copy,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy,
.overview-tutorial-title {
  z-index: 4;
  top: 20px;
  right: 8px;
  left: 8px;
  display: grid;
  min-height: 0;
  padding: 8px 2px 18px;
  place-items: center;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  text-align: center;
  pointer-events: none;
}
.tutorial-thumb-copy::before,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy::before,
.overview-tutorial-title::before {
  content: none;
  display: none;
}
.tutorial-thumb-copy::after,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy::after,
.overview-tutorial-title::after {
  content: "";
  position: absolute;
  bottom: 6px;
  left: 50%;
  display: block;
  width: 46px;
  height: 2px;
  transform: translateX(-50%);
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(116, 242, 194, 0.96), transparent);
  box-shadow: 0 0 12px rgba(97, 226, 171, 0.44);
}
.tutorial-thumb-copy strong,
.tutorial-thumb-copy strong.is-medium,
.tutorial-thumb-copy strong.is-long,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
  display: block;
  width: 100%;
  max-width: none;
  margin: 0;
  color: #ffffff;
  font-family: "HarmonyOS Sans SC", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;
  font-size: 23px !important;
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: 0;
  text-align: center;
  text-wrap: nowrap;
  white-space: nowrap;
  -webkit-text-fill-color: #ffffff;
  -webkit-text-stroke: 0.45px rgba(227, 255, 245, 0.36);
  paint-order: stroke fill;
  filter: drop-shadow(0 3px 2px rgba(0, 0, 0, 0.9)) drop-shadow(0 0 10px rgba(0, 0, 0, 0.76));
  text-shadow: 0 0 18px rgba(91, 222, 166, 0.22);
}
.tutorial-thumb-copy strong.is-medium,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium {
  font-size: 19px !important;
}
.tutorial-thumb-copy strong.is-long,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
  font-size: 15.5px !important;
}
.overview-tutorial-title {
  top: 24px;
  right: 10px;
  left: 10px;
  padding: 9px 2px 22px;
}
.overview-tutorial-title::after {
  bottom: 7px;
  width: 58px;
}
.overview-tutorial-title strong,
.overview-tutorial-title strong.is-medium,
.overview-tutorial-title strong.is-long {
  font-size: 29px !important;
  line-height: 1.06;
}
.overview-tutorial-title strong.is-medium { font-size: 24px !important; }
.overview-tutorial-title strong.is-long { font-size: 19px !important; }
.tutorial-item-card:hover .tutorial-thumb-copy strong,
.tutorial-item-card:focus-visible .tutorial-thumb-copy strong,
.overview-tutorial-card:hover .overview-tutorial-title strong,
.overview-tutorial-card:focus-visible .overview-tutorial-title strong {
  color: #ffffff;
  filter: drop-shadow(0 3px 2px rgba(0, 0, 0, 0.92)) drop-shadow(0 0 12px rgba(0, 0, 0, 0.82));
  text-shadow: 0 0 22px rgba(107, 239, 188, 0.36);
}
@media (max-width: 680px) {
  .tutorial-thumb-copy,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy {
    top: 13px;
    right: 5px;
    left: 5px;
    padding: 6px 1px 14px;
  }
  .tutorial-thumb-copy::after,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy::after {
    bottom: 4px;
    width: 32px;
  }
  .tutorial-thumb-copy strong,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong {
    font-size: 17px !important;
  }
  .tutorial-thumb-copy strong.is-medium,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium {
    font-size: 14px !important;
  }
  .tutorial-thumb-copy strong.is-long,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
    font-size: 11.5px !important;
  }
}
@media (max-width: 560px) {
  .overview-tutorial-title {
    top: 17px;
    right: 6px;
    left: 6px;
    padding: 7px 1px 17px;
  }
  .overview-tutorial-title::after {
    bottom: 5px;
    width: 40px;
  }
  .overview-tutorial-title strong,
  .overview-tutorial-title strong.is-medium,
  .overview-tutorial-title strong.is-long {
    font-size: 21px !important;
  }
  .overview-tutorial-title strong.is-medium { font-size: 17px !important; }
  .overview-tutorial-title strong.is-long { font-size: 13.5px !important; }
}

/* Compact model picker: keep the hierarchy clear without dominating the chat header. */
.ai-chat-model-switch {
  gap: 7px;
  min-width: 168px;
  min-height: 34px;
  padding: 3px 6px;
}

.ai-chat-model-icon {
  width: 27px;
  height: 27px;
  border-radius: 7px;
}

.ai-chat-model-icon img {
  width: 17px;
  height: 17px;
}

.ai-chat-model-name {
  min-width: 102px;
  gap: 1px;
}

.ai-chat-model-name strong {
  font-size: 12px;
}

.ai-chat-model-name small {
  font-size: 9px;
}

.ai-chat-model-chevron {
  font-size: 14px;
}

.ai-chat-model-menu {
  top: calc(100% + 5px);
  width: 206px;
  gap: 3px;
  padding: 5px;
  border-radius: 9px;
}

.model-option {
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 8px;
  min-height: 44px;
  padding: 6px 7px;
  border-radius: 6px;
}

.model-option-icon {
  width: 27px;
  height: 27px;
  border-radius: 7px;
}

.model-option-icon img {
  width: 17px;
  height: 17px;
}

.model-option-copy {
  gap: 2px;
}

.model-option-copy strong {
  font-size: 12px;
}

.model-option-copy small {
  font-size: 9.5px;
}

@media (max-width: 430px) {
  .ai-chat-model-switch {
    min-width: 154px;
  }

  .ai-chat-model-menu {
    width: min(198px, calc(100vw - 88px));
  }
}
/* 20260717 tutorial cover composition v3 */
.tutorial-thumb-copy,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy,
.overview-tutorial-title {
  top: 14px;
  right: 10px;
  left: 10px;
  padding: 9px 10px 10px;
  border: 1px solid rgba(105, 227, 172, 0.24);
  border-radius: 6px;
  background: linear-gradient(100deg, rgba(4, 14, 19, 0.94), rgba(8, 28, 35, 0.84));
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25), inset 3px 0 0 rgba(105, 227, 172, 0.88);
}
.tutorial-thumb-copy::after,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy::after,
.overview-tutorial-title::after {
  content: none;
  display: none;
}
.tutorial-thumb-copy strong,
.tutorial-thumb-copy strong.is-medium,
.tutorial-thumb-copy strong.is-long,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
  font-size: 19px !important;
  font-weight: 850;
  line-height: 1.15;
  -webkit-text-stroke: 0;
  filter: none;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.82);
}
.tutorial-thumb-copy strong.is-medium,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium { font-size: 16.5px !important; }
.tutorial-thumb-copy strong.is-long,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long { font-size: 14px !important; }
.overview-tutorial-title {
  top: 18px;
  right: 12px;
  left: 12px;
  padding: 11px 12px 12px;
}
.overview-tutorial-title strong,
.overview-tutorial-title strong.is-medium,
.overview-tutorial-title strong.is-long { font-size: 25px !important; }
.overview-tutorial-title strong.is-medium { font-size: 21px !important; }
.overview-tutorial-title strong.is-long { font-size: 17px !important; }
.tutorial-item-card:hover .tutorial-thumb-copy strong,
.tutorial-item-card:focus-visible .tutorial-thumb-copy strong,
.overview-tutorial-card:hover .overview-tutorial-title strong,
.overview-tutorial-card:focus-visible .overview-tutorial-title strong {
  filter: none;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.88);
}
@media (max-width: 680px) {
  .tutorial-thumb-copy,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy {
    top: 10px;
    right: 6px;
    left: 6px;
    padding: 7px 6px 8px;
  }
  .tutorial-thumb-copy strong,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong { font-size: 16px !important; }
  .tutorial-thumb-copy strong.is-medium,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium { font-size: 13.5px !important; }
  .tutorial-thumb-copy strong.is-long,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long { font-size: 11px !important; }
}
@media (max-width: 560px) {
  .overview-tutorial-title {
    top: 13px;
    right: 8px;
    left: 8px;
    padding: 9px 8px 10px;
  }
  .overview-tutorial-title strong,
  .overview-tutorial-title strong.is-medium,
  .overview-tutorial-title strong.is-long { font-size: 20px !important; }
  .overview-tutorial-title strong.is-medium { font-size: 17px !important; }
  .overview-tutorial-title strong.is-long { font-size: 13.5px !important; }
}



/* 20260717 compact chat message alignment fix */
.ai-chat-message-row {
  width: auto;
  min-width: 0;
  max-width: min(92%, 960px);
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.ai-chat-message-row.ai-chat-message-assistant {
  align-self: flex-start;
}
.ai-chat-message-row.ai-chat-message-user {
  align-self: flex-end;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.ai-chat-message-row .ai-chat-message {
  flex: 0 1 auto;
  width: auto;
  min-width: 0;
  max-width: min(760px, calc(100% - 40px));
}
.ai-chat-message-row.ai-chat-message-user .ai-chat-message {
  min-width: 0;
}
@media (max-width: 680px) {
  .ai-chat-message-row,
  .ai-chat-message-row.ai-chat-message-user,
  .ai-chat-message-row.ai-chat-message-assistant {
    width: auto;
    min-width: 0;
    max-width: 96%;
  }
  .ai-chat-message-row .ai-chat-message,
  .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
    min-width: 0;
    max-width: calc(100% - 40px);
  }
}

/* 20260717 dock image and video settings above the AI composer */
body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-chat-studio,
body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-chat-studio {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  padding: 8px 24px 10px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-studio-shell,
body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-shell {
  flex: 1 1 auto;
  min-height: 0;
  height: 100%;
  gap: 12px;
  padding: 4px 0 0;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-studio-heading,
body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-heading {
  order: 1;
  flex: 0 0 auto;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-studio-output,
body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-output {
  order: 2;
  flex: 1 1 auto;
  min-height: 72px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-studio-parameter-panel,
body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-parameter-panel {
  order: 3;
  flex: 0 0 auto;
  margin-top: auto;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-chat-studio,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-chat-studio {
    overflow-x: hidden;
    overflow-y: auto;
    padding: 6px 12px 8px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-studio-shell,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-shell {
    height: auto;
    min-height: 100%;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-studio-output,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-output {
    min-height: 96px;
  }
}

/* 20260717 compact video settings dock */
body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-output {
  min-height: 40px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-parameter-panel {
  gap: 10px;
  padding: 14px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-section-head {
  padding-bottom: 8px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-tabs {
  gap: 6px;
  padding: 3px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-tab {
  min-height: 34px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-video-settings {
  gap: 8px 10px;
}


/* 20260717 tighten the chat model switch layout */
.ai-chat-head-model {
  flex: 0 0 auto;
  width: max-content;
}

.ai-chat-model-switch {
  width: auto;
  min-width: 148px;
  min-height: 32px;
  gap: 5px;
  padding: 2px 4px;
}

.ai-chat-model-icon {
  width: 25px;
  height: 25px;
  border-radius: 6px;
}

.ai-chat-model-icon img {
  width: 16px;
  height: 16px;
}

.ai-chat-model-name {
  min-width: 88px;
  gap: 0;
}

.ai-chat-model-name strong,
body.ai-chat-mode.ai-chat-scrolled .ai-chat-model-name strong {
  font-size: 12px;
  line-height: 1.08;
}

.ai-chat-model-name small {
  font-size: 8.5px;
  line-height: 1.08;
}

.ai-chat-model-chevron {
  margin-left: 1px;
  font-size: 12px;
}

@media (max-width: 430px) {
  .ai-chat-model-switch {
    min-width: 140px;
  }

  .ai-chat-model-name {
    min-width: 82px;
  }
}


/* 20260717 enlarge chat message avatars */
.ai-chat-message-row {
  gap: 12px;
}

.ai-chat-message-avatar {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  padding: 5px;
  border-radius: 12px;
}

.ai-chat-message-avatar img {
  width: 100%;
  height: 100%;
}

.ai-chat-message-row .ai-chat-message {
  max-width: min(760px, calc(100% - 52px));
}

@media (max-width: 680px) {
  .ai-chat-message-avatar {
    flex-basis: 36px;
    width: 36px;
    height: 36px;
    padding: 4px;
  }

  .ai-chat-message-row .ai-chat-message,
  .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
    max-width: calc(100% - 48px);
  }
}


/* 20260718 content-sized full-screen chat bubbles */
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-messages {
  gap: 22px;
  padding-right: 42px;
  padding-left: 42px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row {
  width: auto;
  max-width: min(96%, 1080px);
  gap: 16px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row .ai-chat-message {
  flex: 0 1 auto;
  width: fit-content;
  min-width: 0;
  max-width: min(920px, calc(100% - 58px));
  padding: 20px 24px;
  border-radius: 18px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
  width: fit-content;
  min-width: 0;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-role {
  margin-bottom: 8px;
  font-size: 14px;
  line-height: 1.35;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message p {
  font-size: 17px;
  line-height: 1.75;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-messages {
    gap: 16px;
    padding-right: 16px;
    padding-left: 16px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row {
    width: auto;
    max-width: 100%;
    gap: 10px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row .ai-chat-message,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
    width: fit-content;
    min-width: 0;
    max-width: calc(100% - 48px);
    padding: 15px 17px;
    border-radius: 15px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-role {
    font-size: 12px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message p {
    font-size: 15px;
    line-height: 1.65;
  }
}


/* 20260717 separate model title and subtitle */
.ai-chat-model-name {
  justify-content: center;
  gap: 4px;
}

.ai-chat-model-name strong,
body.ai-chat-mode.ai-chat-scrolled .ai-chat-model-name strong {
  line-height: 1.2;
}

.ai-chat-model-name small {
  line-height: 1.25;
}


/* 20260717 let AI tool pages follow their actual card rows */
.ai-tools-paged-section {
  min-height: 0;
}

.ai-tools-paged-section .ai-tools-pagination {
  margin-top: 30px;
}


/* 20260717 tutorial cover safe layout v4 */
.tutorial-item-thumb,
.overview-tutorial-cover {
  box-sizing: border-box;
}

.tutorial-item-thumb img,
.overview-tutorial-cover img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center bottom;
  scale: .94;
  translate: 0 -5px;
  transform-origin: center bottom;
}

.tutorial-item-card:hover .tutorial-item-thumb img,
.tutorial-item-card:focus-visible .tutorial-item-thumb img,
.overview-tutorial-card:hover .overview-tutorial-cover img,
.overview-tutorial-card:focus-visible .overview-tutorial-cover img {
  scale: .955;
  translate: 0 -5px;
}

.tutorial-thumb-copy,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy,
.overview-tutorial-title {
  top: 16px;
  right: 16px;
  left: 16px;
  display: flex;
  width: auto;
  min-width: 0;
  min-height: 52px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 9px 13px 10px;
  overflow: visible;
}

.tutorial-thumb-copy strong,
.tutorial-thumb-copy strong.is-medium,
.tutorial-thumb-copy strong.is-long,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long,
.overview-tutorial-title strong,
.overview-tutorial-title strong.is-medium,
.overview-tutorial-title strong.is-long {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow: visible;
  text-align: center;
  text-overflow: clip;
  text-wrap: balance;
  white-space: normal;
  word-break: normal;
  overflow-wrap: anywhere;
  line-height: 1.22;
}

.tutorial-thumb-copy strong,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong {
  font-size: 18px !important;
}

.tutorial-thumb-copy strong.is-medium,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium {
  font-size: 16px !important;
}

.tutorial-thumb-copy strong.is-long,
body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
  font-size: 14px !important;
}

.overview-tutorial-title {
  top: 18px;
  right: 18px;
  left: 18px;
  min-height: 60px;
  padding: 10px 15px 11px;
}

.overview-tutorial-title strong {
  font-size: 23px !important;
}

.overview-tutorial-title strong.is-medium {
  font-size: 20px !important;
}

.overview-tutorial-title strong.is-long {
  font-size: 17px !important;
}

@media (max-width: 680px) {
  .tutorial-thumb-copy,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy {
    top: 12px;
    right: 11px;
    left: 11px;
    min-height: 46px;
    padding: 7px 9px 8px;
  }

  .tutorial-thumb-copy strong,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong {
    font-size: 15px !important;
  }

  .tutorial-thumb-copy strong.is-medium,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-medium {
    font-size: 13px !important;
  }

  .tutorial-thumb-copy strong.is-long,
  body[data-active-group="tutorial-knowledge"] .tutorial-thumb-copy strong.is-long {
    font-size: 11.5px !important;
  }
}

@media (max-width: 560px) {
  .overview-tutorial-title {
    top: 14px;
    right: 13px;
    left: 13px;
    min-height: 52px;
    padding: 8px 10px 9px;
  }

  .overview-tutorial-title strong {
    font-size: 18px !important;
  }

  .overview-tutorial-title strong.is-medium {
    font-size: 15px !important;
  }

  .overview-tutorial-title strong.is-long {
    font-size: 12.5px !important;
  }
}


/* 20260717 center tutorial hero brand independently from the wide search field */
body[data-active-group="tutorial-knowledge"] .command-hero .hero-badge,
body[data-active-group="tutorial-knowledge"] .command-hero .hero-brand-lockup {
  transform: translateX(var(--hero-brand-center-shift, 0px));
}

body[data-active-group="tutorial-knowledge"] .command-hero .hero-aurora {
  right: -7%;
  left: auto;
  transform: translate3d(0, -55%, 0);
}

@media (max-width: 980px) {
  body[data-active-group="tutorial-knowledge"] .command-hero .hero-badge,
  body[data-active-group="tutorial-knowledge"] .command-hero .hero-brand-lockup {
    transform: none;
  }
}


/* 20260717 multimodal video generation mode */
.ai-video-multimodal-card {
  position: relative;
  overflow: hidden;
  border-style: solid;
  border-color: rgba(145, 132, 241, .32);
  background: linear-gradient(120deg, rgba(112, 91, 204, .12), rgba(43, 126, 126, .07));
}

.ai-video-multimodal-card::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(105deg, transparent 12%, rgba(174, 162, 255, .08) 42%, rgba(112, 217, 189, .06) 58%, transparent 84%);
  transform: translateX(-55%);
  animation: aiMultimodalCardGlow 6.8s ease-in-out infinite;
}

.ai-video-multimodal-card > * {
  position: relative;
  z-index: 1;
}

.ai-video-multimodal-icon {
  color: #c8c0ff;
  border-color: rgba(164, 149, 255, .34) !important;
  background: rgba(113, 91, 204, .13) !important;
}

.ai-video-media-types {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: center;
  gap: 6px !important;
  margin-top: 3px;
}

.ai-video-media-types b {
  padding: 3px 7px;
  border: 1px solid rgba(147, 190, 205, .16);
  border-radius: 5px;
  color: rgba(213, 230, 235, .67);
  background: rgba(4, 12, 20, .32);
  font-size: 10px;
  font-weight: 650;
  line-height: 1;
}

.ai-video-reference-weight {
  grid-column: auto;
}

.ai-video-reference-weight input {
  accent-color: #9b8dff;
}

@keyframes aiMultimodalCardGlow {
  0%, 100% { transform: translateX(-60%); opacity: .45; }
  50% { transform: translateX(60%); opacity: .8; }
}

@media (max-width: 680px) {
  .ai-studio-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ai-video-reference-weight {
    grid-column: auto;
  }
}


/* 20260717 video generation history workspace */
body.ai-model-video .ai-chat-workspace {
  grid-template-columns: 344px minmax(0, 1fr);
}

.ai-chat-history.is-video-history {
  padding: 16px 14px 18px;
  background:
    linear-gradient(180deg, rgba(14, 18, 31, 0.82), rgba(8, 12, 22, 0.7)),
    radial-gradient(circle at 22% 0%, rgba(139, 103, 246, 0.1), transparent 42%);
}

.ai-chat-history.is-video-history .ai-chat-history-head {
  min-height: 36px;
  padding: 0 5px 10px;
}

.ai-chat-history.is-video-history .ai-chat-history-head > span {
  color: rgba(244, 241, 255, 0.9);
  font-size: 14px;
  font-weight: 750;
}

.ai-chat-history.is-video-history .ai-chat-history-list {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 2px 3px 8px 0;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(153, 130, 231, 0.38) transparent;
}

.ai-chat-history.is-video-history .ai-chat-history-list::-webkit-scrollbar {
  width: 5px;
}

.ai-chat-history.is-video-history .ai-chat-history-list::-webkit-scrollbar-track {
  background: transparent;
}

.ai-chat-history.is-video-history .ai-chat-history-list::-webkit-scrollbar-thumb {
  border-radius: 8px;
  background: rgba(153, 130, 231, 0.34);
}

.ai-video-history-empty {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 28px 18px;
  color: rgba(226, 225, 240, 0.62);
  text-align: center;
}

.ai-video-history-empty-icon {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border: 1px solid rgba(164, 139, 239, 0.26);
  border-radius: 14px;
  background: rgba(127, 92, 220, 0.1);
  color: rgba(228, 220, 255, 0.88);
  box-shadow: 0 12px 30px rgba(18, 12, 41, 0.28);
  font-size: 15px;
}

.ai-video-history-empty strong {
  color: rgba(244, 242, 252, 0.88);
  font-size: 14px;
}

.ai-video-history-empty p,
.ai-video-history-empty small {
  margin: 0;
  line-height: 1.65;
}

.ai-video-history-empty p {
  font-size: 12px;
}

.ai-video-history-empty small {
  color: rgba(180, 184, 205, 0.45);
  font-size: 10px;
}

.ai-video-history-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ai-video-history-group-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 4px;
  color: rgba(197, 198, 219, 0.58);
}

.ai-video-history-group-title strong {
  font-size: 11px;
  font-weight: 700;
}

.ai-video-history-group-title span {
  min-width: 20px;
  padding: 2px 6px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.045);
  font-size: 10px;
  text-align: center;
}

.ai-video-history-item {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  gap: 12px;
  padding: 10px;
  border: 1px solid rgba(157, 145, 198, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.025);
  color: rgba(238, 238, 248, 0.84);
  text-align: center;
  cursor: pointer;
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.ai-video-history-item:hover,
.ai-video-history-item:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(174, 151, 243, 0.32);
  background: rgba(139, 106, 224, 0.075);
  box-shadow: 0 12px 24px rgba(3, 5, 13, 0.22);
  outline: none;
}

.ai-video-history-item.is-active {
  border-color: rgba(175, 153, 244, 0.44);
  background: rgba(138, 104, 226, 0.1);
  box-shadow: inset 2px 0 0 rgba(187, 166, 255, 0.82), 0 12px 30px rgba(7, 5, 19, 0.18);
}

.ai-video-history-thumb {
  position: relative;
  display: block;
  width: 112px;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border: 1px solid rgba(170, 154, 221, 0.16);
  border-radius: 6px;
  background: linear-gradient(135deg, rgba(68, 48, 119, 0.48), rgba(17, 25, 46, 0.78));
}

.ai-video-history-thumb > img,
.ai-video-history-thumb > video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ai-video-history-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background:
    linear-gradient(120deg, transparent 12%, rgba(181, 154, 255, 0.12) 48%, transparent 82%),
    radial-gradient(circle at 70% 28%, rgba(97, 168, 255, 0.16), transparent 38%);
  background-size: 180% 100%, 100% 100%;
  animation: aiVideoHistorySweep 3.8s linear infinite;
}

.ai-video-history-placeholder img {
  width: 27px;
  height: 27px;
  object-fit: contain;
  opacity: 0.64;
}

.ai-video-history-placeholder b {
  position: absolute;
  right: 6px;
  bottom: 5px;
  color: rgba(248, 246, 255, 0.86);
  font-size: 10px;
}

.ai-video-history-status {
  position: absolute;
  left: 5px;
  bottom: 5px;
  z-index: 2;
  padding: 2px 5px;
  border-radius: 4px;
  font-size: 9px;
  font-style: normal;
  font-weight: 750;
}

.ai-video-history-status.is-processing {
  background: rgba(128, 91, 222, 0.78);
  color: #f7f2ff;
}

.ai-video-history-status.is-completed {
  background: rgba(40, 142, 127, 0.78);
  color: #edfffb;
}

.ai-video-history-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 7px;
}

.ai-video-history-title {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 7px;
}

.ai-video-history-title strong {
  min-width: 0;
  overflow: hidden;
  color: rgba(247, 245, 252, 0.9);
  display: -webkit-box;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  white-space: normal;
}

.ai-video-history-title small {
  flex: 0 0 auto;
  color: rgba(182, 186, 207, 0.42);
  font-size: 9px;
  line-height: 1.5;
}

.ai-video-history-progress {
  display: block;
  height: 4px;
  overflow: hidden;
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.06);
}

.ai-video-history-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(137, 102, 232, 0.72), rgba(186, 162, 255, 0.96));
  box-shadow: 0 0 8px rgba(165, 137, 245, 0.45);
  transition: width 420ms ease;
}

.ai-video-history-params {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px 6px;
}

.ai-video-history-param {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 4px;
  padding: 4px 5px;
  border: 1px solid rgba(166, 165, 198, 0.1);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.024);
  font-size: 9px;
  line-height: 1.2;
}

.ai-video-history-param b {
  flex: 0 0 auto;
  color: rgba(178, 174, 206, 0.52);
  font-weight: 600;
}

.ai-video-history-param em {
  min-width: 0;
  overflow: hidden;
  color: rgba(235, 233, 246, 0.76);
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-chat-history-icon img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}

.ai-video-output.is-processing {
  border-color: rgba(157, 125, 243, 0.25);
}

.ai-video-output.is-completed {
  border-color: rgba(76, 187, 164, 0.23);
}

@keyframes aiVideoHistorySweep {
  from { background-position: 160% 0, 0 0; }
  to { background-position: -80% 0, 0 0; }
}

@media (max-width: 1180px) {
  body.ai-model-video .ai-chat-workspace {
    grid-template-columns: 300px minmax(0, 1fr);
  }

  .ai-video-history-item {
    grid-template-columns: 96px minmax(0, 1fr);
  }

  .ai-video-history-thumb {
    width: 96px;
  }
}

@media (max-width: 760px) {
  body.ai-model-video .ai-chat-workspace {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ai-video-history-placeholder {
    animation: none;
  }
}


/* Favorite library workspace */
.stats-sidebar .metric.favorite-library-trigger{position:relative;isolation:isolate;overflow:hidden;width:100%;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.035);color:inherit;cursor:pointer;transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease}
.stats-sidebar .metric.favorite-library-trigger::before{content:"";position:absolute;inset:-58%;z-index:0;display:block;background:linear-gradient(104deg,transparent 0 18%,rgba(62,205,144,0) 23%,rgba(72,226,157,.13) 30%,rgba(82,226,184,.23) 38%,rgba(58,178,159,.07) 49%,transparent 66%) 0 0/235px 100% repeat-x,linear-gradient(98deg,transparent 0 25%,rgba(50,163,148,0) 31%,rgba(67,199,180,.09) 38%,rgba(80,218,168,.16) 45%,rgba(43,151,155,.04) 55%,transparent 72%) 0 0/340px 100% repeat-x;filter:blur(9px) saturate(1.14);opacity:.6;transform:skewX(-2deg) scaleY(.98);animation:metric-aurora-flow 11.8s linear infinite;transition:opacity .28s ease}
.stats-sidebar .metric.favorite-library-trigger::after{content:"";position:absolute;inset:-26% -76%;z-index:0;display:block;background:linear-gradient(101deg,transparent 0 38%,rgba(129,255,205,0) 45%,rgba(139,255,211,.25) 50%,rgba(78,211,182,.09) 53%,transparent 61%) 0 0/290px 100% repeat-x;filter:blur(1.3px);opacity:.46;animation:metric-aurora-thread 9.4s linear infinite;pointer-events:none}
.stats-sidebar .metric.favorite-library-trigger strong{color:rgba(250,253,255,.98);text-shadow:0 0 20px rgba(226,255,244,.16),0 0 30px rgba(88,214,141,.12)}
.stats-sidebar .metric.favorite-library-trigger span{color:rgba(236,244,247,.88);font-weight:750}
.stats-sidebar .metric.favorite-library-trigger>i{position:absolute;inset:11px 11px auto auto;margin:0;display:grid;place-items:center;width:29px;height:29px;border:1px solid rgba(88,214,141,.3);border-radius:50%;color:#baf1cf;background:rgba(88,214,141,.07);box-shadow:0 0 0 0 rgba(88,214,141,.12),inset 0 1px 0 rgba(255,255,255,.06);font-style:normal;font-size:15px;line-height:1;animation:favorite-trigger-breathe 3.2s ease-in-out infinite;transition:transform .28s ease,color .28s ease,border-color .28s ease,background .28s ease,text-shadow .28s ease}
.stats-sidebar .metric.favorite-library-trigger:hover,.stats-sidebar .metric.favorite-library-trigger:focus-visible{transform:translateY(-3px) scale(1.01);border-color:rgba(88,214,141,.4);background:linear-gradient(145deg,rgba(17,28,39,.93),rgba(13,23,33,.9));box-shadow:var(--shadow),0 0 0 3px rgba(88,214,141,.04),inset 0 1px 0 rgba(255,255,255,.045);outline:0}
.stats-sidebar .metric.favorite-library-trigger:hover::before,.stats-sidebar .metric.favorite-library-trigger:focus-visible::before{opacity:.72}
.stats-sidebar .metric.favorite-library-trigger:hover>i,.stats-sidebar .metric.favorite-library-trigger:focus-visible>i{color:#ddf9e8;border-color:rgba(88,214,141,.52);background:rgba(88,214,141,.12);transform:scale(1.08) rotate(7deg);text-shadow:0 0 14px rgba(88,214,141,.3)}
.stats-sidebar .metric.favorite-library-trigger:active{transform:translateY(-1px) scale(.99)}
@keyframes favorite-trigger-aurora{from{background-position:-260px 0}to{background-position:0 0}}
@keyframes favorite-trigger-breathe{0%,100%{box-shadow:0 0 0 0 rgba(88,214,141,.12),inset 0 1px 0 rgba(255,255,255,.06)}50%{box-shadow:0 0 0 7px rgba(88,214,141,0),0 0 16px rgba(88,214,141,.11),inset 0 1px 0 rgba(255,255,255,.08)}}

body.favorite-library-open{overflow-x:hidden}
body.favorite-library-open .command-hero,
body.favorite-library-open .home-layout,
body.favorite-library-open .ai-chat-window,
body.favorite-library-open .ai-chat-backdrop,
body.favorite-library-open #back-to-top{display:none!important}
.favorite-library[hidden]{display:none!important}
.favorite-library{position:relative;isolation:isolate;width:100%;min-height:calc(100vh - 92px);padding:clamp(26px,3vw,42px) 0 54px;overflow:hidden}
.favorite-library::before{content:"";position:absolute;inset:0;z-index:-3;background:linear-gradient(180deg,rgba(9,16,25,.88),rgba(7,11,18,.96) 56%,rgba(7,11,18,.99))}

.favorite-library-aurora{position:absolute;inset:0;z-index:-2;width:100%;height:100%;pointer-events:none;opacity:.29;filter:saturate(.86)}
.favorite-library-head{position:relative;display:flex;align-items:center;justify-content:center;min-height:92px;margin-bottom:24px}
.favorite-library-title{position:relative;display:grid;grid-template-columns:52px auto;align-items:center;justify-content:center;gap:18px;min-width:0;margin-inline:auto;padding:6px 74px 13px}
.favorite-library-title::after{content:"";position:absolute;left:50%;bottom:0;width:132px;height:1px;background:linear-gradient(90deg,transparent,rgba(71,199,232,.42),rgba(88,214,141,.3),transparent);transform:translateX(-50%)}
.favorite-library-mark{display:grid;place-items:center;width:50px;height:50px;flex:0 0 50px;border:1px solid rgba(245,193,92,.32);border-radius:12px;color:#f7d27d;background:linear-gradient(145deg,rgba(245,193,92,.14),rgba(12,22,31,.9));box-shadow:0 12px 28px rgba(0,0,0,.24),0 0 22px rgba(245,193,92,.07),inset 0 1px 0 rgba(255,255,255,.06);font-size:22px;line-height:1;transform:translateY(-1px)}
.favorite-library-title>div{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.favorite-library-title h1{margin:0;max-width:none;color:#f4f8fb;font-size:clamp(36px,3vw,46px);font-weight:880;line-height:1.04;letter-spacing:0;text-shadow:0 8px 28px rgba(0,0,0,.3)}
.favorite-library-title p{margin:9px 0 0;color:rgba(137,190,205,.78);font-size:13px;font-weight:720;line-height:1;letter-spacing:0;white-space:nowrap}

.favorite-library-exit{position:absolute;top:50%;right:0;display:flex;align-items:center;gap:12px;min-height:50px;padding:0 7px 0 20px;border:1px solid rgba(71,199,232,.56);border-radius:999px;color:#eaffff;background:linear-gradient(115deg,rgba(14,67,78,.68),rgba(12,43,52,.74));cursor:pointer;box-shadow:0 12px 34px rgba(0,0,0,.24),0 0 22px rgba(71,199,232,.11),inset 0 1px 0 rgba(255,255,255,.09);transform:translateY(-50%);transition:transform .22s ease,border-color .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease}
.favorite-library-exit b{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(115,225,235,.36);border-radius:50%;color:#d9ffff;background:linear-gradient(145deg,rgba(71,199,232,.26),rgba(88,214,141,.14));box-shadow:0 0 16px rgba(71,199,232,.11),inset 0 1px 0 rgba(255,255,255,.08);font-size:22px;font-weight:600;line-height:1;transition:transform .22s ease,border-color .22s ease,background .22s ease}
.favorite-library-exit span{font-size:14px;font-weight:850}
.favorite-library-exit:hover,.favorite-library-exit:focus-visible{transform:translateY(calc(-50% - 2px));border-color:rgba(88,214,141,.78);color:#fff;background:linear-gradient(115deg,rgba(26,94,72,.78),rgba(14,66,75,.82));box-shadow:0 15px 38px rgba(0,0,0,.28),0 0 28px rgba(88,214,141,.16),0 0 0 3px rgba(88,214,141,.055),inset 0 1px 0 rgba(255,255,255,.12);outline:none}
.favorite-library-exit:hover b,.favorite-library-exit:focus-visible b{transform:scale(1.06);border-color:rgba(154,246,217,.58);background:linear-gradient(145deg,rgba(88,214,141,.32),rgba(71,199,232,.2))}

.favorite-library-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-bottom:18px}
.favorite-library-search{position:relative;isolation:isolate;display:flex;align-items:center;gap:12px;min-height:58px;padding:0 16px;border:1px solid rgba(93,129,153,.3);border-radius:8px;background:rgba(8,15,23,.74);box-shadow:0 18px 45px rgba(0,0,0,.18);overflow:hidden;transition:border-color .25s ease,background .25s ease,box-shadow .25s ease}
.favorite-library-search::before{content:"";position:absolute;inset:-80% -20%;z-index:-1;background:linear-gradient(100deg,transparent 31%,rgba(71,199,232,.04) 42%,rgba(88,214,141,.1) 50%,transparent 63%);animation:favorite-search-flow 8s linear infinite}
.favorite-library-search:focus-within{border-color:rgba(71,199,232,.54);background:rgba(9,19,29,.9);box-shadow:0 18px 46px rgba(0,0,0,.22),0 0 0 3px rgba(71,199,232,.05)}
.favorite-library-search>span{color:#63d4e8;font-size:28px;line-height:1;transform:rotate(-15deg)}
.favorite-library-search input{width:100%;min-width:0;border:0;outline:0;color:#f5f9fb;background:transparent;font-size:16px}
.favorite-library-search input::placeholder{color:#758695}
.favorite-library-search kbd{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:54px;height:30px;padding:0 10px;border:1px solid rgba(132,153,172,.22);border-radius:6px;color:#9aabb7;background:rgba(255,255,255,.04);font:750 11.5px/1 system-ui,sans-serif;white-space:nowrap}
@keyframes favorite-search-flow{from{transform:translateX(-50%)}to{transform:translateX(52%)}}
.favorite-library-new-folder{display:flex;align-items:center;justify-content:center;gap:8px;min-width:148px;padding:0 18px;border:1px solid rgba(88,214,141,.35);border-radius:8px;color:#dff8e9;background:rgba(31,84,59,.25);cursor:pointer;font-weight:750;transition:transform .22s ease,border-color .22s ease,background .22s ease}
.favorite-library-new-folder span{font-size:20px;font-weight:400}
.favorite-library-new-folder:hover,.favorite-library-new-folder:focus-visible{transform:translateY(-2px);border-color:rgba(88,214,141,.62);background:rgba(34,106,70,.36)}

.favorite-library-layout{display:grid;grid-template-columns:280px minmax(0,1fr);align-items:start;gap:20px}
.favorite-folder-panel,.favorite-library-content{border:1px solid rgba(122,151,176,.2);border-radius:8px;background:rgba(11,19,28,.72);box-shadow:0 24px 58px rgba(0,0,0,.2);backdrop-filter:blur(18px)}
.favorite-folder-panel{position:sticky;top:86px;min-height:460px;padding:18px}
.favorite-folder-panel-head{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 7px 13px;border-bottom:1px solid rgba(132,153,172,.14)}
.favorite-folder-panel-head strong{font-size:17px}
.favorite-folder-panel-head span{display:grid;place-items:center;min-width:30px;height:26px;padding:0 8px;border-radius:999px;color:#8ee6bc;background:rgba(88,214,141,.1);font-size:12px;font-weight:800}
.favorite-folder-list{display:grid;gap:7px;margin-top:14px;max-height:calc(100vh - 290px);overflow:auto;padding-right:2px}
.favorite-folder-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:10px;width:100%;min-height:54px;padding:9px 11px;border:1px solid transparent;border-radius:7px;color:#b9c6cf;text-align:left;background:transparent;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}
.favorite-folder-item>span{display:grid;place-items:center;color:#7890a1;font-size:19px}
.favorite-folder-item strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14.5px}
.favorite-folder-item i{padding:4px 6px;border-radius:4px;color:#9bb5c6;background:rgba(71,199,232,.08);font-size:10px;font-style:normal}
.favorite-folder-item em{min-width:24px;color:#7d8f9d;text-align:right;font-size:12px;font-style:normal;font-weight:800}
.favorite-folder-item:hover{color:#eef7fb;background:rgba(255,255,255,.035);transform:translateX(2px)}
.favorite-folder-item.active{border-color:rgba(88,214,141,.29);color:#f4fbf7;background:linear-gradient(90deg,rgba(88,214,141,.13),rgba(71,199,232,.035))}
.favorite-folder-item.active>span,.favorite-folder-item.active em{color:#73dfaa}
.favorite-folder-tip{margin:16px 9px 3px;color:#748592;font-size:11.5px;line-height:1.65}

.favorite-library-content{min-width:0;padding:16px}
.favorite-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid rgba(132,153,172,.13)}
.favorite-library-selection,.favorite-library-selection label,.favorite-library-actions{display:flex;align-items:center;gap:10px}
.favorite-library-selection label{color:#b7c4ce;font-size:12px;cursor:pointer}
.favorite-library-selection input{width:16px;height:16px;accent-color:#58d68d}
.favorite-library-selection strong{padding-left:10px;border-left:1px solid rgba(132,153,172,.16);color:#8193a1;font-size:11px}
.favorite-library-actions button{min-height:34px;padding:0 12px;border:1px solid rgba(122,151,176,.22);border-radius:6px;color:#b7c4cf;background:rgba(255,255,255,.035);cursor:pointer;font-size:12px;transition:border-color .18s ease,background .18s ease,color .18s ease}
.favorite-library-actions button:hover:not(:disabled){border-color:rgba(71,199,232,.42);color:#eef8fb;background:rgba(71,199,232,.08)}
.favorite-library-actions button.danger:hover:not(:disabled){border-color:rgba(237,111,111,.48);color:#ffd7d7;background:rgba(237,111,111,.09)}
.favorite-library-actions button:disabled{cursor:not-allowed;opacity:.36}
.favorite-library-filter{display:flex;align-items:center;gap:10px;overflow-x:auto;padding:2px 0 16px;scrollbar-width:none}
.favorite-library-filter::-webkit-scrollbar{display:none}
.favorite-library-filter button{flex:0 0 auto;min-height:42px;padding:0 17px;border:1px solid rgba(122,151,176,.18);border-radius:999px;color:#9aabb8;background:rgba(255,255,255,.032);cursor:pointer;font-size:13.5px;font-weight:750;transition:transform .18s ease,border-color .18s ease,color .18s ease,background .18s ease}
.favorite-library-filter button:hover{transform:translateY(-1px);color:#e7f2f7;border-color:rgba(71,199,232,.4);background:rgba(71,199,232,.055)}
.favorite-library-filter button.active{color:#06120e;border-color:transparent;background:#70dca8;box-shadow:0 7px 20px rgba(88,214,141,.12)}
.favorite-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;min-height:0}
.favorite-library-card{position:relative;isolation:isolate;display:flex;flex-direction:column;min-width:0;min-height:188px;border:1px solid rgba(122,151,176,.19);border-radius:8px;background:linear-gradient(145deg,rgba(20,31,42,.8),rgba(9,16,24,.78));overflow:hidden;transition:transform .24s ease,border-color .24s ease,background .24s ease,box-shadow .24s ease}
.favorite-library-card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:linear-gradient(115deg,transparent 20%,rgba(71,199,232,.06),rgba(88,214,141,.08),transparent 78%);transform:translateX(-45%);transition:opacity .25s ease,transform .7s ease}
.favorite-library-card:hover{transform:translateY(-3px);border-color:rgba(88,214,141,.37);background:linear-gradient(145deg,rgba(23,38,49,.92),rgba(10,19,28,.9));box-shadow:0 16px 32px rgba(0,0,0,.22)}
.favorite-library-card:hover::before{opacity:1;transform:translateX(32%)}
.favorite-library-card.selected{border-color:rgba(71,199,232,.52);box-shadow:0 0 0 2px rgba(71,199,232,.07),0 14px 34px rgba(0,0,0,.22)}
.favorite-library-card.is-search-result{border-style:dashed;background:rgba(11,19,27,.58)}
.favorite-card-check{position:absolute;left:10px;top:10px;z-index:4;display:grid;place-items:center;width:25px;height:25px;cursor:pointer}
.favorite-card-check input{position:absolute;opacity:0;pointer-events:none}
.favorite-card-check span{display:block;width:17px;height:17px;border:1px solid rgba(168,186,200,.38);border-radius:5px;background:rgba(4,10,16,.8);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.favorite-card-check input:checked+span{border-color:#58d68d;background:#58d68d;box-shadow:0 0 0 3px rgba(88,214,141,.1)}
.favorite-card-check input:checked+span::after{content:"";display:block;width:7px;height:4px;margin:4px 0 0 4px;border-left:2px solid #07120d;border-bottom:2px solid #07120d;transform:rotate(-45deg)}
.favorite-card-link{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:start;gap:13px;flex:1;min-height:0;padding:42px 13px 10px;color:inherit}
.favorite-card-visual{display:grid;place-items:center;width:64px;height:64px;border:1px solid rgba(122,151,176,.17);border-radius:8px;background:rgba(255,255,255,.035);overflow:hidden;color:#8ce3bb;font-size:26px;font-weight:850}
.favorite-card-visual img{width:100%;height:100%;object-fit:contain;padding:7px}
.favorite-card-copy{min-width:0}
.favorite-card-copy>div{display:flex;align-items:center;gap:7px;min-width:0}
.favorite-card-copy em{flex:0 0 auto;padding:3px 6px;border:1px solid rgba(71,199,232,.17);border-radius:4px;color:#7ed7e9;background:rgba(71,199,232,.055);font-size:9px;font-style:normal;font-weight:800}
.favorite-card-copy h3{min-width:0;margin:0;overflow:hidden;color:#f0f6f9;text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:1.35}
.favorite-card-copy p{display:-webkit-box;margin:10px 0 8px;overflow:hidden;color:#95a5b2;font-size:12px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.favorite-card-copy small{display:block;overflow:hidden;color:#6f8391;text-overflow:ellipsis;white-space:nowrap;font-size:10px}
.favorite-library-card footer{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;margin:0 12px;padding:8px 2px;border-top:1px solid rgba(132,153,172,.2);color:#a6b5c0;font-size:12px}
.favorite-library-card footer span,.favorite-library-card footer b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.favorite-library-card footer span{color:#a6b5c0;font-weight:700}
.favorite-library-card footer b{flex:0 0 auto;padding:4px 7px;border:1px solid rgba(71,199,232,.2);border-radius:5px;color:#93dfed;background:rgba(71,199,232,.07);font-size:11.5px;font-weight:750}
.favorite-card-note.has-note{display:grid;grid-template-columns:minmax(0,1fr);max-width:96px;transition:flex-basis .3s cubic-bezier(.2,.8,.2,1),max-width .3s cubic-bezier(.2,.8,.2,1),background .22s ease,border-color .22s ease}
.favorite-card-note.has-note>i,.favorite-card-note.has-note>span{grid-area:1/1;display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity .22s ease,transform .28s cubic-bezier(.2,.8,.2,1)}
.favorite-card-note.has-note>i{font-style:normal;opacity:1;transform:translateY(0)}
.favorite-card-note.has-note>span{color:inherit;font-size:inherit;font-weight:inherit;opacity:0;transform:translateY(4px)}
.favorite-library-card:hover footer>.favorite-card-note.has-note,.favorite-library-card:focus-within footer>.favorite-card-note.has-note{flex:1 1 auto;max-width:72%;border-color:rgba(71,199,232,.34);background:rgba(71,199,232,.11)}
.favorite-library-card:hover footer>.favorite-card-note.has-note>i,.favorite-library-card:focus-within footer>.favorite-card-note.has-note>i{opacity:0;transform:translateY(-4px)}
.favorite-library-card:hover footer>.favorite-card-note.has-note>span,.favorite-library-card:focus-within footer>.favorite-card-note.has-note>span{opacity:1;transform:translateY(0)}
.favorite-library-card:hover footer>span,.favorite-library-card:focus-within footer>span{max-width:28%}

.library-favorite-btn{display:grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid rgba(245,193,92,.22);border-radius:50%;color:rgba(226,191,111,.7);background:rgba(7,13,20,.72);cursor:pointer;line-height:1;box-shadow:0 5px 16px rgba(0,0,0,.22);transition:transform .22s cubic-bezier(.2,.8,.2,1),color .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}
.library-favorite-btn:hover,.library-favorite-btn:focus-visible{transform:scale(1.12) rotate(8deg);color:#ffe08b;border-color:rgba(245,193,92,.58);background:rgba(67,51,21,.7);box-shadow:0 7px 20px rgba(0,0,0,.25),0 0 16px rgba(245,193,92,.16)}
.library-favorite-btn[aria-pressed="true"],.library-favorite-btn.is-favorite{color:#ffe18e;border-color:rgba(245,193,92,.62);background:rgba(86,64,20,.72);text-shadow:0 0 12px rgba(245,193,92,.62);animation:favorite-star-pop .42s cubic-bezier(.2,.9,.2,1)}
@keyframes favorite-star-pop{0%{transform:scale(.72) rotate(-16deg)}58%{transform:scale(1.22) rotate(10deg)}100%{transform:scale(1) rotate(0)}}
.card-favorite-star,.search-favorite-star,.category-favorite-star,.detail-card-star,.detail-hero-star,.detail-link-star,.favorite-card-star{position:absolute;z-index:5}
.card-favorite-star{right:10px;top:10px}
.search-favorite-star{right:10px;top:50%;transform:translateY(-50%)}
.search-favorite-star:hover,.search-favorite-star:focus-visible{transform:translateY(-50%) scale(1.12) rotate(8deg)}
.category-favorite-star{right:5px;top:5px;width:25px;height:25px;font-size:12px}
.detail-card-star{right:14px;top:14px}
.detail-hero-star{right:10px;top:10px;width:29px;height:29px;font-size:14px}
.detail-link-star{right:12px;top:50%;transform:translateY(-50%)}
.detail-link-star:hover,.detail-link-star:focus-visible{transform:translateY(-50%) scale(1.12) rotate(8deg)}
.favorite-card-star{right:10px;top:10px}
.favorite-capable-card,.utility-item-card-shell,.instant-tool-card-shell,.site-search-result-shell,.category-pill-shell,.category-group-shell,.tutorial-link-card-shell{position:relative;min-width:0}
.utility-item-card-shell,.instant-tool-card-shell,.site-search-result-shell{height:100%}
.utility-item-card-shell>.utility-item-card,.instant-tool-card-shell>.instant-tool-card,.site-search-result-shell>.site-search-result{height:100%;width:100%}
.category-pill-shell{position:relative;flex:0 0 auto}
.category-pill-shell>.category-pill{width:100%;padding-right:38px}
.category-group-shell{display:block}
.tutorial-link-card-shell{display:block}
.tutorial-link-card-shell>a{display:block;padding-right:48px}
.detail-page-favorite{position:absolute;right:14px;top:14px;z-index:8;display:grid;place-items:center;width:34px;height:34px;margin:0;padding:0}
.detail-page-favorite>.library-favorite-btn{width:34px;height:34px;margin:0;font-size:17px;line-height:1}

.favorite-library-empty[hidden],.favorite-library-grid.has-items + .favorite-library-empty{display:none!important}
.favorite-library-empty{display:grid;place-items:center;align-content:center;min-height:190px;text-align:center;color:#7d8d99}
.favorite-library-empty span{color:rgba(245,193,92,.68);font-size:52px;line-height:1}
.favorite-library-empty strong{margin-top:15px;color:#c8d3da;font-size:17px}
.favorite-library-empty p{margin:7px 0 0;font-size:12px}
.favorite-library-pagination:empty{display:none}
.favorite-library-pagination{display:flex;align-items:center;justify-content:center;gap:6px;min-height:48px;margin-top:16px}
.favorite-library-pagination button{display:grid;place-items:center;min-width:34px;height:34px;padding:0 9px;border:1px solid rgba(122,151,176,.2);border-radius:6px;color:#9aacb9;background:rgba(255,255,255,.03);cursor:pointer;font-size:12px;transition:border-color .18s ease,color .18s ease,background .18s ease}
.favorite-library-pagination button:hover:not(:disabled){color:#edf8fb;border-color:rgba(71,199,232,.42);background:rgba(71,199,232,.08)}
.favorite-library-pagination button.active{color:#07130e;border-color:transparent;background:#65d79d;font-weight:850}
.favorite-library-pagination button:disabled{cursor:not-allowed;opacity:.3}
.favorite-library-pagination>span{color:#637582}
.favorite-library-pagination small{margin-left:7px;color:#71838f;font-size:10px}
.favorite-library-context{position:fixed;z-index:1200;width:220px;padding:6px;border:1px solid rgba(133,158,178,.28);border-radius:8px;background:rgba(10,17,25,.97);box-shadow:0 22px 60px rgba(0,0,0,.5);backdrop-filter:blur(18px)}
.favorite-library-context[hidden]{display:none!important}
.favorite-library-context button{display:block;width:100%;min-height:41px;padding:0 11px;border:0;border-radius:5px;color:#bdc9d1;text-align:left;background:transparent;cursor:pointer;font-size:12px}
.favorite-library-context button:hover{color:#fff;background:rgba(71,199,232,.09)}
.favorite-library-context button.danger:hover{color:#ffd4d4;background:rgba(237,111,111,.1)}
.favorite-library-dialog{width:min(480px,calc(100vw - 28px));padding:0;border:1px solid rgba(126,153,173,.3);border-radius:8px;color:#ecf3f6;background:rgba(11,18,27,.98);box-shadow:0 30px 90px rgba(0,0,0,.62)}
.favorite-library-dialog::backdrop{background:rgba(2,6,10,.7);backdrop-filter:blur(6px)}
.favorite-library-dialog form{display:grid;gap:14px;padding:17px}
.favorite-library-dialog header,.favorite-library-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px}
.favorite-library-dialog header{padding-bottom:12px;border-bottom:1px solid rgba(132,153,172,.14)}
.favorite-library-dialog header strong{font-size:16px}
.favorite-library-dialog header button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid rgba(132,153,172,.18);border-radius:50%;color:#aab8c2;background:rgba(255,255,255,.03);cursor:pointer;font-size:18px}
.favorite-library-dialog label{display:grid;gap:7px;color:#9aabb7;font-size:11px}
.favorite-library-dialog input,.favorite-library-dialog textarea{width:100%;border:1px solid rgba(126,153,173,.25);border-radius:6px;outline:0;color:#eef5f8;background:rgba(2,8,13,.72);font:inherit;line-height:1.6;resize:vertical}
.favorite-library-dialog input{height:42px;padding:0 11px}
.favorite-library-dialog textarea{min-height:92px;padding:10px 11px}
.favorite-library-dialog input:focus,.favorite-library-dialog textarea:focus{border-color:rgba(71,199,232,.52);box-shadow:0 0 0 3px rgba(71,199,232,.05)}
.favorite-library-dialog footer{justify-content:flex-end;padding-top:3px}
.favorite-library-dialog footer button{min-width:78px;height:36px;border:1px solid rgba(126,153,173,.22);border-radius:6px;color:#aab9c3;background:rgba(255,255,255,.04);cursor:pointer}
.favorite-library-dialog footer button.primary{color:#07130e;border-color:transparent;background:#67d99f;font-weight:800}
.favorite-move-options{display:grid;gap:7px;max-height:320px;overflow:auto}
.favorite-move-options button{display:flex;align-items:center;justify-content:space-between;min-height:43px;padding:0 12px;border:1px solid rgba(126,153,173,.18);border-radius:6px;color:#b9c7cf;background:rgba(255,255,255,.025);cursor:pointer;text-align:left}
.favorite-move-options button:hover{border-color:rgba(88,214,141,.38);color:#eef9f3;background:rgba(88,214,141,.07)}

@media(max-width:980px){
  .favorite-library-layout{grid-template-columns:230px minmax(0,1fr)}
  .favorite-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .favorite-library{padding-top:18px}
  .favorite-library-head{align-items:center}
  .favorite-library-title{max-width:calc(100% - 48px)}
  .favorite-library-exit span{display:none}
  .favorite-library-exit{padding:6px}
  .favorite-library-search-row{grid-template-columns:1fr}
  .favorite-library-new-folder{min-height:45px}
  .favorite-library-layout{grid-template-columns:1fr}
  .favorite-folder-panel{position:relative;top:auto;min-height:0}
  .favorite-folder-list{display:flex;max-height:none;overflow-x:auto;padding:0 0 4px}
  .favorite-folder-item{grid-template-columns:26px auto auto;flex:0 0 auto;width:auto;min-width:156px}
  .favorite-folder-item i{display:none}
  .favorite-folder-tip{display:none}
  .favorite-library-toolbar{align-items:flex-start;flex-direction:column}
  .favorite-library-actions{width:100%}
  .favorite-library-actions button{flex:1}
  .favorite-library-grid{grid-template-columns:1fr;min-height:280px}
  .favorite-library-card{min-height:190px}
  .favorite-library-empty{min-height:280px}
}
@media(prefers-reduced-motion:reduce){
  .favorite-library-search::before,.stats-sidebar .metric.favorite-library-trigger::before,.favorite-library-trigger i{animation:none}
  .favorite-library-card,.favorite-library-trigger,.library-favorite-btn{transition-duration:.01ms}
}

/* 20260718 roomier model-aware chat history */
body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-workspace {
  grid-template-columns: 292px minmax(0, 1fr);
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history {
  padding: 18px 14px;
  background: linear-gradient(180deg, rgba(4, 11, 20, 0.46), rgba(3, 9, 17, 0.3));
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-head {
  min-height: 38px;
  padding: 0 5px 12px;
  font-size: 14px;
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-list {
  gap: 8px;
  padding-right: 3px;
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-item {
  gap: 12px;
  min-height: 66px;
  padding: 10px 11px;
  border-color: rgba(142, 177, 198, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.018);
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-item:hover,
body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-item:focus-visible {
  transform: translateX(2px);
  border-color: rgba(117, 221, 218, 0.24);
  background: rgba(84, 177, 173, 0.1);
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-item.is-active {
  border-color: rgba(119, 228, 205, 0.32);
  background: linear-gradient(100deg, rgba(72, 178, 166, 0.17), rgba(72, 178, 166, 0.06));
  box-shadow: inset 3px 0 0 rgba(123, 235, 204, 0.76);
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-icon {
  display: grid;
  place-items: center;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  padding: 8px;
  border-color: rgba(148, 205, 211, 0.24);
  border-radius: 10px;
  background: rgba(8, 20, 29, 0.62);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.025);
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-icon img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-copy {
  display: flex;
  flex: 1 1 auto;
  min-width: 0;
  flex-direction: column;
  gap: 7px;
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-copy strong {
  overflow: hidden;
  color: rgba(244, 250, 253, 0.9);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-copy small {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
  overflow: visible;
  font-size: 10px;
  line-height: 1;
  white-space: nowrap;
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-model {
  overflow: hidden;
  padding: 4px 7px;
  border: 1px solid rgba(121, 207, 200, 0.16);
  border-radius: 5px;
  color: rgba(184, 236, 222, 0.78);
  background: rgba(68, 164, 157, 0.08);
  font-weight: 650;
  text-overflow: ellipsis;
}

body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-history-copy time {
  flex: 0 0 auto;
  color: rgba(168, 188, 201, 0.42);
}

@media (max-width: 1180px) {
  body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-workspace {
    grid-template-columns: 248px minmax(0, 1fr);
  }
}

@media (max-width: 680px) {
  body.ai-chat-scrolled:not(.ai-model-video) .ai-chat-workspace {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* 20260718 integrate docked AI upload into the composer */
.ai-composer-upload {
  display: none;
}

body.ai-chat-mode.ai-chat-scrolled .mode-switch {
  display: none;
}

body.ai-chat-mode.ai-chat-scrolled .search-box-row {
  gap: 0;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .search-box {
  padding-left: 8px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-composer-upload {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  margin: 0 2px 0 0;
  padding: 0;
  border: 1px solid rgba(111, 226, 186, .22);
  border-radius: 50%;
  color: rgba(188, 247, 227, .88);
  background: rgba(88, 214, 141, .08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .055);
  cursor: pointer;
  transition: color 180ms ease, border-color 180ms ease, background 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-composer-upload svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-composer-upload:hover,
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-composer-upload:focus-visible {
  color: #effff9;
  border-color: rgba(130, 241, 203, .5);
  background: rgba(88, 214, 141, .17);
  box-shadow: 0 0 0 4px rgba(88, 214, 141, .06), inset 0 1px 0 rgba(255, 255, 255, .085);
  outline: none;
  transform: translateY(-1px) scale(1.04);
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-composer-upload:active {
  transform: scale(.96);
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-chat-studio,
body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-chat-studio {
  padding: 2px 24px 22px;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-studio-shell,
body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-shell {
  padding: 2px 0 0;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .search-box {
    padding-left: 6px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-composer-upload {
    flex-basis: 38px;
    width: 38px;
    height: 38px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-composer-upload svg {
    width: 19px;
    height: 19px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-chat-studio,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-chat-studio {
    padding: 0 12px 18px;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-image .ai-studio-shell,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-video .ai-studio-shell {
    padding-top: 0;
  }
}
/* 20260718 favorite library control sizing and sidebar order */
.favorite-library-search-row{display:block;margin-bottom:18px}
.favorite-library-layout{grid-template-columns:306px minmax(0,1fr);gap:22px}
.favorite-library-sidebar-stack{position:sticky;top:86px;display:grid;align-content:start;gap:14px;min-width:0}
.favorite-library-sidebar-stack .favorite-library-new-folder{width:100%;min-height:58px;padding:0 22px;border-color:rgba(88,214,141,.44);font-size:17px;font-weight:820;box-shadow:0 14px 32px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.045)}
.favorite-library-sidebar-stack .favorite-library-new-folder span{font-size:25px;line-height:1}
.favorite-library-sidebar-stack .favorite-folder-panel{position:relative;top:auto;min-height:0;padding:20px}
.favorite-folder-panel-head{min-height:56px;padding:0 8px 15px}
.favorite-folder-panel-head strong{font-size:20px}
.favorite-folder-panel-head span{min-width:34px;height:30px;padding:0 9px;font-size:13px}
.favorite-folder-list{gap:9px;margin-top:17px;max-height:calc(100vh - 330px);padding-right:4px}
.favorite-folder-item{grid-template-columns:30px minmax(0,1fr) auto auto;gap:11px;min-height:58px;padding:10px 12px}
.favorite-folder-item>span{font-size:21px}
.favorite-folder-item strong{font-size:16px}
.favorite-folder-item i{font-size:11px}
.favorite-folder-item em{font-size:13px}
.favorite-folder-tip{margin:17px 10px 2px;font-size:13px;line-height:1.7}
.favorite-library-content{padding:20px}
.favorite-library-toolbar{min-height:72px;margin-bottom:15px;padding:12px 14px 15px}
.favorite-library-selection,.favorite-library-selection label,.favorite-library-actions{gap:13px}
.favorite-library-selection label{font-size:15px;font-weight:720}
.favorite-library-selection input{width:24px;height:24px}
.favorite-library-selection strong{padding-left:13px;font-size:13px}
.favorite-library-actions button{min-height:44px;padding:0 18px;font-size:14px;font-weight:760}
.favorite-library-filter{gap:11px;padding:3px 0 19px}
.favorite-library-filter button{min-height:48px;padding:0 20px;font-size:15px}
@media(max-width:980px){
  .favorite-library-layout{grid-template-columns:270px minmax(0,1fr);gap:16px}
  .favorite-library-sidebar-stack .favorite-folder-panel{padding:16px}
}
@media(max-width:720px){
  .favorite-library-layout{grid-template-columns:1fr;gap:14px}
  .favorite-library-sidebar-stack{position:relative;top:auto;gap:12px}
  .favorite-library-sidebar-stack .favorite-library-new-folder{min-height:54px}
  .favorite-library-toolbar{padding:12px 10px 14px}
  .favorite-library-selection{width:100%;justify-content:space-between}
  .favorite-library-filter button{min-height:46px;padding:0 18px}
}

/* image studio live results */
.ai-studio-result-meta {
  display: grid;
  gap: 4px;
  margin: 0 0 12px;
  text-align: center;
}
.ai-studio-result-meta strong {
  color: rgba(238, 244, 248, 0.94);
  font-size: 14px;
}
.ai-studio-result-meta span {
  color: rgba(154, 169, 184, 0.78);
  font-size: 12px;
  line-height: 1.5;
}
.ai-studio-result-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
  width: 100%;
}
.ai-studio-result-card {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.16);
  border-radius: 10px;
  background: rgba(5, 12, 20, 0.55);
}
.ai-studio-result-card img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  background: rgba(255, 255, 255, 0.03);
}
.ai-studio-result-card figcaption {
  padding: 8px 10px;
  color: rgba(154, 169, 184, 0.78);
  font-size: 11px;
  text-align: center;
}

/* jimeng-like image studio */
body.ai-model-image .ai-chat-history {
  display: none;
}
body.ai-model-image .ai-chat-main {
  width: 100%;
}
body.ai-model-image .ai-chat-studio {
  display: block !important;
  min-height: min(72vh, 820px);
}
.ai-image-studio {
  max-width: none;
  margin: 0;
  padding: 0;
}
.ai-image-layout {
  display: grid;
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  gap: 14px;
  min-height: min(58vh, 640px);
}
.ai-image-history {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  padding: 10px 8px;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 14px;
  background: rgba(6, 12, 20, 0.72);
}
.ai-image-history-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  padding: 0 2px;
}
.ai-image-history-head strong {
  color: rgba(236, 244, 248, 0.9);
  font-size: 12px;
}
.ai-image-history-head button {
  border: 0;
  background: transparent;
  color: rgba(154, 169, 184, 0.78);
  font: inherit;
  font-size: 11px;
  cursor: pointer;
}
.ai-image-history-head button:disabled {
  opacity: 0.4;
  cursor: default;
}
.ai-image-history-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow: auto;
  max-height: min(58vh, 640px);
  padding-right: 2px;
}
.ai-image-history-empty {
  padding: 18px 8px;
  color: rgba(154, 169, 184, 0.62);
  font-size: 11px;
  line-height: 1.5;
  text-align: center;
}
.ai-image-history-item {
  position: relative;
  display: grid;
  width: 100%;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.03);
  cursor: pointer;
}
.ai-image-history-item img,
.ai-image-history-fallback {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}
.ai-image-history-fallback {
  display: grid;
  place-items: center;
  color: rgba(193, 156, 255, 0.8);
  font-size: 18px;
  background: rgba(120, 88, 180, 0.12);
}
.ai-image-history-item em {
  position: absolute;
  right: 6px;
  bottom: 6px;
  padding: 2px 6px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.55);
  color: rgba(255, 255, 255, 0.88);
  font-size: 10px;
  font-style: normal;
}
.ai-image-history-item.is-active {
  border-color: rgba(193, 156, 255, 0.55);
  box-shadow: 0 0 0 1px rgba(193, 156, 255, 0.25);
}
.ai-image-main {
  display: grid;
  grid-template-rows: auto auto minmax(180px, 1fr);
  gap: 12px;
  min-width: 0;
}
.ai-image-toolbar {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
}
.ai-image-toolbar span {
  display: block;
  color: rgba(193, 156, 255, 0.72);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
}
.ai-image-toolbar strong {
  color: rgba(244, 248, 252, 0.95);
  font-size: 22px;
}
.ai-image-toolbar small {
  color: rgba(154, 169, 184, 0.7);
  font-size: 12px;
}
.ai-image-stage {
  min-height: 200px;
  padding: 16px;
  overflow: auto;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 16px;
  background:
    radial-gradient(circle at top right, rgba(193, 156, 255, 0.08), transparent 34%),
    linear-gradient(180deg, rgba(10, 16, 26, 0.92), rgba(7, 12, 20, 0.88));
}
.ai-image-stage-empty {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 8px;
  min-height: 160px;
  color: rgba(154, 169, 184, 0.78);
  text-align: center;
}
.ai-image-stage-empty span {
  color: rgba(193, 156, 255, 0.8);
  font-size: 28px;
}
.ai-image-stage-empty strong {
  color: rgba(238, 244, 248, 0.94);
  font-size: 18px;
}
.ai-image-stage-empty p,
.ai-image-stage-empty small {
  max-width: 420px;
  margin: 0;
  line-height: 1.6;
}
.ai-image-stage-empty.is-error span,
.ai-image-stage-empty.is-error strong {
  color: #ffb4b4;
}
.ai-image-spinner {
  width: 28px;
  height: 28px;
  border: 2px solid rgba(193, 156, 255, 0.2);
  border-top-color: rgba(193, 156, 255, 0.9);
  border-radius: 50%;
  animation: aiImageSpin 0.8s linear infinite;
}
@keyframes aiImageSpin {
  to { transform: rotate(360deg); }
}
.ai-image-stage-head {
  display: grid;
  gap: 8px;
  margin-bottom: 14px;
}
.ai-image-stage-head > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
.ai-image-stage-head strong {
  color: rgba(238, 244, 248, 0.95);
  font-size: 15px;
}
.ai-image-stage-head span,
.ai-image-stage-head p {
  color: rgba(154, 169, 184, 0.76);
  font-size: 12px;
  line-height: 1.5;
}
.ai-image-stage-head p {
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ai-image-result-grid {
  display: grid;
  gap: 12px;
}
.ai-image-result-grid.cols-1 { grid-template-columns: minmax(0, 420px); }
.ai-image-result-grid.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ai-image-result-grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ai-image-result-grid.cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ai-image-result-card {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.14);
  border-radius: 14px;
  background: rgba(5, 12, 20, 0.55);
}
.ai-image-result-card img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}
.ai-image-result-card figcaption {
  padding: 8px 10px;
  color: rgba(154, 169, 184, 0.76);
  font-size: 11px;
}
.ai-image-composer {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(193, 156, 255, 0.18);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(28, 22, 48, 0.72), rgba(10, 14, 24, 0.9));
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22);
}
.ai-image-prompt-wrap {
  display: grid;
  gap: 8px;
}
.ai-image-prompt-wrap > span,
.ai-image-field > span {
  color: rgba(213, 229, 235, 0.72);
  font-size: 12px;
  font-weight: 700;
}
.ai-image-prompt-wrap textarea {
  width: 100%;
  min-height: 86px;
  resize: vertical;
  padding: 12px 14px;
  border: 1px solid rgba(193, 156, 255, 0.18);
  border-radius: 14px;
  color: #f3f7fb;
  background: rgba(5, 10, 18, 0.55);
  font: inherit;
  font-size: 14px;
  line-height: 1.6;
  outline: none;
}
.ai-image-prompt-wrap textarea:focus {
  border-color: rgba(193, 156, 255, 0.55);
  box-shadow: 0 0 0 3px rgba(193, 156, 255, 0.12);
}
.ai-image-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 10px;
}
.ai-image-ratio-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.ai-image-chip {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid rgba(149, 166, 190, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.03);
  color: rgba(220, 230, 238, 0.78);
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.ai-image-chip.is-active {
  border-color: rgba(193, 156, 255, 0.5);
  background: rgba(193, 156, 255, 0.14);
  color: #f1e7ff;
}
.ai-image-field {
  display: grid;
  gap: 6px;
  min-width: 108px;
}
.ai-image-field select {
  height: 38px;
  padding: 0 10px;
  border: 1px solid rgba(149, 166, 190, 0.16);
  border-radius: 10px;
  color: rgba(238, 244, 248, 0.9);
  background: rgba(255, 255, 255, 0.04);
  font: inherit;
  font-size: 12px;
}
.ai-image-ref-btn,
.ai-image-generate {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 12px;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}
.ai-image-ref-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px dashed rgba(193, 156, 255, 0.34);
  color: rgba(228, 214, 255, 0.88);
  background: rgba(193, 156, 255, 0.08);
}
.ai-image-generate {
  margin-left: auto;
  border: 1px solid rgba(193, 156, 255, 0.42);
  color: #fff;
  background: linear-gradient(135deg, rgba(138, 92, 214, 0.9), rgba(84, 62, 160, 0.95));
  box-shadow: 0 10px 24px rgba(88, 52, 160, 0.24);
}
.ai-image-generate:disabled {
  opacity: 0.55;
  cursor: wait;
}
.ai-image-composer-tip {
  color: rgba(154, 169, 184, 0.66);
  font-size: 11px;
}
@media (max-width: 980px) {
  .ai-image-layout {
    grid-template-columns: 1fr;
  }
  .ai-image-history-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
    max-height: 120px;
  }
  .ai-image-result-grid.cols-3,
  .ai-image-result-grid.cols-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ai-image-generate {
    margin-left: 0;
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .ai-image-spinner { animation: none; }
}

/* 20260718 favorite library content height fix */
.favorite-library-content.has-content {
  min-height: 0 !important;
  height: fit-content;
  align-self: start;
  padding-bottom: 20px;
}

.favorite-library-content.has-content .favorite-library-grid,
.favorite-library-grid.has-items {
  min-height: 0 !important;
  height: auto;
  align-content: start;
}

.favorite-library-content.has-content .favorite-library-empty,
.favorite-library-grid.has-items + .favorite-library-empty,
.favorite-library-empty[hidden] {
  display: none !important;
  min-height: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
}


/* image mode always show studio */
body.ai-chat-mode.ai-model-image .ai-chat-history { display: none !important; }
body.ai-chat-mode.ai-model-image .ai-chat-window {
  display: flex !important;
  flex-direction: column !important;
  z-index: 95 !important;
  overflow: hidden !important;
}
body.ai-chat-mode.ai-model-image:not(.ai-chat-scrolled) .ai-chat-window {
  left: 50% !important;
  right: auto !important;
  top: 72px !important;
  width: min(1200px, calc(100vw - 20px)) !important;
  height: min(88vh, 960px) !important;
  max-height: calc(100vh - 76px) !important;
  transform: translateX(-50%) !important;
}
body.ai-chat-mode.ai-model-image .ai-chat-window-head {
  flex: 0 0 auto !important;
}
body.ai-chat-mode.ai-model-image .ai-chat-workspace {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}
body.ai-chat-mode.ai-model-image .ai-chat-main {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
body.ai-chat-mode.ai-model-image .ai-chat-model-context { display: none !important; }
body.ai-chat-mode.ai-model-image .ai-chat-studio {
  display: block !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow: auto !important;
  padding: 8px 12px 12px !important;
}
body.ai-chat-mode.ai-model-image .ai-image-studio { height: 100%; }
body.ai-chat-mode.ai-model-image .ai-image-layout {
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
  gap: 12px;
  min-height: 0 !important;
  height: 100%;
  align-items: stretch;
}
body.ai-chat-mode.ai-model-image .ai-image-history {
  min-height: 0;
  max-height: none;
  height: 100%;
}
body.ai-chat-mode.ai-model-image .ai-image-history-list {
  max-height: none;
  flex: 1 1 auto;
  min-height: 0;
}
body.ai-chat-mode.ai-model-image .ai-image-main {
  grid-template-rows: auto auto minmax(160px, 1fr);
  min-height: 0 !important;
  height: 100%;
}
body.ai-chat-mode.ai-model-image .ai-image-stage {
  min-height: 180px !important;
  max-height: none;
}
body.ai-chat-mode.ai-model-image .ai-image-stage-empty {
  min-height: 160px;
}
body.ai-chat-mode.ai-model-image .ai-image-composer {
  position: relative;
  z-index: 2;
}
body.ai-chat-mode.ai-model-image .category-bar,
body.ai-chat-mode.ai-model-image .tools-workspace {
  pointer-events: none;
}
body.ai-chat-mode.ai-model-image .ai-chat-window,
body.ai-chat-mode.ai-model-image .search-panel,
body.ai-chat-mode.ai-model-image .command-hero,
body.ai-chat-mode.ai-model-image .app-header {
  pointer-events: auto;
}

/* compact global image studio mins that were too tall */
.ai-image-layout { min-height: 520px; }
.ai-image-main { min-height: 0; }
.ai-image-stage { min-height: 200px; }
.ai-image-history-list { max-height: min(52vh, 560px); }

/* studio-fill-fix */
body.ai-chat-mode.ai-model-image .ai-chat-studio { min-height: 560px !important; }
body.ai-chat-mode.ai-model-image:not(.ai-chat-scrolled) .ai-chat-window { height: min(90vh, 980px) !important; max-height: calc(100vh - 64px) !important; }

/* 20260718 finish responsive favorites and detail stars */
.favorite-card-copy > div {
  align-items: flex-start;
}

.favorite-card-copy h3 {
  display: -webkit-box;
  min-height: 2.7em;
  overflow: hidden;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media (max-width: 1180px) {
  .detail-hero-panel.is-simple {
    grid-template-columns: minmax(0, 1fr);
  }

  .detail-visual-card,
  .detail-file-stack,
  .detail-file-card-shell {
    width: 100%;
    min-width: 0;
    max-width: 100%;
  }
}
/* 20260718 preserve complete favorite titles */
.favorite-card-copy h3 {
  display: block;
  min-height: 2.7em;
  height: auto;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
  -webkit-box-orient: initial;
  -webkit-line-clamp: unset;
}
/* 20260718 homepage overview favorites */
.overview-tool-card-shell {
  position: relative;
  flex: 0 0 auto;
  min-width: 190px;
}
.overview-tool-card-shell > .overview-tool-card {
  width: 100%;
  min-width: 100%;
  padding-right: 52px;
}
.overview-favorite-star {
  position: absolute;
  z-index: 7;
  top: 9px;
  right: 9px;
  width: 34px;
  height: 34px;
  font-size: 16px;
}
.overview-tutorial-card-shell {
  width: 240px;
  min-width: 240px;
}
.overview-tutorial-card-shell > .overview-tool-card.overview-tutorial-card {
  width: 100%;
  min-width: 100%;
  padding-right: 9px;
}
.overview-tutorial-card-shell > .overview-favorite-star {
  top: 10px;
  right: 10px;
  bottom: auto;
  width: 28px;
  height: 28px;
  font-size: 13px;
  background: rgba(5, 12, 17, 0.82);
}
@media (max-width: 560px) {
  .overview-tool-card-shell { min-width: 174px; }
  .overview-tool-card-shell > .overview-tool-card { padding-right: 48px; }
  .overview-favorite-star {
    width: 32px;
    height: 32px;
    font-size: 15px;
  }
  .overview-tutorial-card-shell {
    width: 190px;
    min-width: 190px;
  }
  .overview-tutorial-card-shell > .overview-tool-card.overview-tutorial-card { padding-right: 7px; }
  .overview-tutorial-card-shell > .overview-favorite-star {
    top: 8px;
    right: 8px;
    bottom: auto;
    width: 26px;
    height: 26px;
    font-size: 12px;
  }
}

/* image result true aspect + detailed meta */
.ai-image-result-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px;
  align-items: start;
}
.ai-image-result-grid.cols-1,
.ai-image-result-grid.cols-2,
.ai-image-result-grid.cols-3,
.ai-image-result-grid.cols-4 {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.ai-image-result-card {
  display: grid;
  gap: 0;
  overflow: hidden;
  border: 1px solid rgba(149, 166, 190, 0.16);
  border-radius: 14px;
  background: rgba(5, 12, 20, 0.55);
}
.ai-image-result-card > a {
  display: block;
  width: 100%;
  background: rgba(255, 255, 255, 0.02);
}
.ai-image-result-card img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: var(--image-ratio, 1 / 1);
  object-fit: cover;
}
.ai-image-result-card figcaption {
  display: grid;
  gap: 8px;
  padding: 10px 12px 12px;
  color: rgba(154, 169, 184, 0.86);
  font-size: 11px;
  text-align: center;
}
.ai-image-result-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: rgba(236, 244, 248, 0.92);
  font-size: 12px;
}
.ai-image-result-meta-list {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ai-image-result-meta-list li {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.ai-image-result-meta-list em {
  color: rgba(154, 169, 184, 0.7);
  font-style: normal;
}
.ai-image-result-meta-list span {
  color: rgba(220, 230, 238, 0.9);
  text-align: right;
}
.ai-image-partial-note {
  margin: 0;
  color: #f0c987;
  font-size: 12px;
}
.ai-image-stage-head p {
  white-space: normal;
}

/* image studio layout polish v3: dock top dialog, wider history */
body.ai-chat-mode.ai-model-image .ai-image-layout,
.ai-image-layout {
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr) !important;
  gap: 16px !important;
}
body.ai-chat-mode.ai-model-image .ai-image-main,
.ai-image-main {
  grid-template-rows: auto auto auto minmax(180px, 1fr) !important;
  gap: 12px !important;
}
.ai-image-history {
  min-width: 280px !important;
  width: 100%;
  padding: 14px 12px !important;
}
.ai-image-history-item {
  grid-template-columns: 72px minmax(0, 1fr) !important;
  gap: 10px !important;
  padding: 10px !important;
}
.ai-image-history-thumb,
.ai-image-history-thumb img,
.ai-image-history-fallback {
  width: 72px !important;
  height: 72px !important;
}
.ai-image-history-copy strong {
  font-size: 13px !important;
  white-space: normal !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.ai-image-history-copy small {
  font-size: 11px !important;
}
.ai-image-composer-mount {
  min-height: 72px;
}
/* when search panel is docked into image studio */
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 12px !important;
  border: 1px solid rgba(193,156,255,0.22) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, rgba(32,24,54,0.94), rgba(12,14,24,0.98)) !important;
  box-shadow: 0 12px 30px rgba(0,0,0,0.22) !important;
  z-index: 5 !important;
}
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked .search-label {
  display: none !important;
}
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked .ai-search-layout,
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked .search-control,
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked .search-box-row,
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked .search-box {
  width: 100% !important;
  max-width: none !important;
}
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked .search-box {
  min-height: 56px !important;
}
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked #tool-search {
  font-size: 15px !important;
}
/* hide empty hero gap while image mode uses docked composer */
body.ai-chat-mode.ai-model-image .command-hero {
  min-height: 0 !important;
  padding-bottom: 8px !important;
}
body.ai-chat-mode.ai-model-image .command-hero .hero-badge,
body.ai-chat-mode.ai-model-image .command-hero .hero-brand-lockup {
  /* keep brand, but less vertical space */
  margin-bottom: 0 !important;
}
/* no leftover 画面描述 panel styles needed */
.ai-image-prompt-panel { display: none !important; }
@media (max-width: 1100px) {
  body.ai-chat-mode.ai-model-image .ai-image-layout,
  .ai-image-layout {
    grid-template-columns: minmax(220px, 250px) minmax(0, 1fr) !important;
  }
}
@media (max-width: 820px) {
  body.ai-chat-mode.ai-model-image .ai-image-layout,
  .ai-image-layout {
    grid-template-columns: 1fr !important;
  }
}

/* image/video studio fullscreen fix: never hide studio before scroll */
body.ai-chat-mode.ai-model-image:not(.ai-chat-scrolled) .ai-chat-studio,
body.ai-chat-mode.ai-model-video:not(.ai-chat-scrolled) .ai-chat-studio,
body.ai-chat-mode.ai-studio-fullscreen:not(.ai-chat-scrolled) .ai-chat-studio,
body.ai-chat-mode.ai-model-image .ai-chat-studio,
body.ai-chat-mode.ai-model-video .ai-chat-studio,
body.ai-chat-mode.ai-studio-fullscreen .ai-chat-studio {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  overflow: auto !important;
}

body.ai-chat-mode.ai-model-image:not(.ai-chat-scrolled) .ai-chat-history,
body.ai-chat-mode.ai-model-image .ai-chat-history,
body.ai-chat-mode.ai-studio-fullscreen .ai-chat-history,
body.ai-chat-mode.ai-model-image .ai-chat-model-context,
body.ai-chat-mode.ai-studio-fullscreen .ai-chat-model-context {
  display: none !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-window,
body.ai-chat-mode.ai-model-video .ai-chat-window,
body.ai-chat-mode.ai-studio-fullscreen .ai-chat-window {
  display: flex !important;
  flex-direction: column !important;
  position: fixed !important;
  z-index: 120 !important;
  left: 50% !important;
  right: auto !important;
  top: 72px !important;
  bottom: 16px !important;
  width: min(1240px, calc(100vw - 24px)) !important;
  max-width: calc(100vw - 24px) !important;
  height: auto !important;
  max-height: calc(100vh - 88px) !important;
  min-height: min(78vh, 820px) !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
  overflow: hidden !important;
  background: rgba(8, 12, 20, 0.98) !important;
  box-shadow: 0 24px 80px rgba(0,0,0,0.45) !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-workspace,
body.ai-chat-mode.ai-studio-fullscreen .ai-chat-workspace {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-main,
body.ai-chat-mode.ai-studio-fullscreen .ai-chat-main {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

/* cover homepage noise while image studio is open */
body.ai-chat-mode.ai-model-image .home-layout,
body.ai-chat-mode.ai-model-image .tools-workspace,
body.ai-chat-mode.ai-model-image .category-bar,

body.ai-chat-mode.ai-model-image .ai-chat-backdrop,
body.ai-chat-mode.ai-studio-fullscreen .ai-chat-backdrop {
  display: block !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

body.ai-chat-mode.ai-model-image .ai-image-layout {
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr) !important;
  min-height: 0 !important;
  height: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-image-main {
  grid-template-rows: auto auto auto minmax(200px, 1fr) !important;
  min-height: 0 !important;
  height: 100% !important;
}

body.ai-chat-mode.ai-model-image .search-panel.is-image-docked {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  z-index: 5 !important;
}

/* image studio height fill v2 */
body.ai-chat-mode.ai-model-image .ai-chat-window,
body.ai-chat-mode.ai-studio-fullscreen .ai-chat-window {
  top: 64px !important;
  bottom: 12px !important;
  min-height: calc(100vh - 76px) !important;
  height: calc(100vh - 76px) !important;
  max-height: calc(100vh - 76px) !important;
}
body.ai-chat-mode.ai-model-image .ai-chat-window-head {
  flex: 0 0 auto !important;
}
body.ai-chat-mode.ai-model-image .ai-chat-workspace,
body.ai-chat-mode.ai-model-image .ai-chat-main,
body.ai-chat-mode.ai-model-image .ai-chat-studio,
body.ai-chat-mode.ai-model-image .ai-studio-shell,
body.ai-chat-mode.ai-model-image .ai-image-studio,
body.ai-chat-mode.ai-model-image .ai-image-layout {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: 100% !important;
}
body.ai-chat-mode.ai-model-image .ai-image-layout {
  display: grid !important;
  grid-template-columns: minmax(280px, 320px) minmax(0, 1fr) !important;
  grid-template-rows: 1fr !important;
}
body.ai-chat-mode.ai-model-image .ai-image-history {
  min-height: 0 !important;
  height: 100% !important;
  overflow: auto !important;
}
body.ai-chat-mode.ai-model-image .ai-image-main {
  display: grid !important;
  grid-template-rows: auto auto auto minmax(240px, 1fr) !important;
  min-height: 0 !important;
  height: 100% !important;
}
body.ai-chat-mode.ai-model-image .ai-image-stage {
  min-height: 240px !important;
  flex: 1 1 auto !important;
}
body.ai-chat-mode.ai-model-image .home-layout,
body.ai-chat-mode.ai-model-image .tools-workspace,
body.ai-chat-mode.ai-model-image .category-bar {
  display: none !important;
}

/* === 20260718 FINAL VISUAL CONSISTENCY START === */
/* Reveal a scrollbar only when its own scroll surface is active. */
:root {
  --quiet-scroll-thumb: rgba(88, 214, 141, 0.58);
  --quiet-scroll-thumb-hover: rgba(105, 226, 158, 0.76);
  --quiet-scroll-track: rgba(255, 255, 255, 0.05);
}

html,
body,
* {
  scrollbar-color: transparent transparent;
}

html:hover,
body:hover,
*:hover {
  scrollbar-color: transparent transparent;
}

:is(
  html,
  body,
  .news-list,
  .site-search-results,
  .ai-chat-messages,
  .embedded-tool-chat-messages,
  .embedded-tool-chat textarea,
  .ai-chat-history-list,
  .ai-chat-studio,
  .ai-chat-main,
  .ai-image-history,
  .ai-image-history-list,
  .ai-image-stage,
  .ai-video-history-list,
  .favorite-folder-list,
  .favorite-move-options
) {
  scrollbar-width: thin;
  scrollbar-color: transparent transparent;
}

:is(
  html,
  body,
  .news-list,
  .site-search-results,
  .ai-chat-messages,
  .embedded-tool-chat-messages,
  .embedded-tool-chat textarea,
  .ai-chat-history-list,
  .ai-chat-studio,
  .ai-chat-main,
  .ai-image-history,
  .ai-image-history-list,
  .ai-image-stage,
  .ai-video-history-list,
  .favorite-folder-list,
  .favorite-move-options
):is(:hover, :focus-within) {
  scrollbar-color: var(--quiet-scroll-thumb) var(--quiet-scroll-track);
}

:is(
  html,
  body,
  .news-list,
  .site-search-results,
  .ai-chat-messages,
  .embedded-tool-chat-messages,
  .embedded-tool-chat textarea,
  .ai-chat-history-list,
  .ai-chat-studio,
  .ai-chat-main,
  .ai-image-history,
  .ai-image-history-list,
  .ai-image-stage,
  .ai-video-history-list,
  .favorite-folder-list,
  .favorite-move-options
)::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

:is(
  html,
  body,
  .news-list,
  .site-search-results,
  .ai-chat-messages,
  .embedded-tool-chat-messages,
  .embedded-tool-chat textarea,
  .ai-chat-history-list,
  .ai-chat-studio,
  .ai-chat-main,
  .ai-image-history,
  .ai-image-history-list,
  .ai-image-stage,
  .ai-video-history-list,
  .favorite-folder-list,
  .favorite-move-options
)::-webkit-scrollbar-track,
:is(
  html,
  body,
  .news-list,
  .site-search-results,
  .ai-chat-messages,
  .embedded-tool-chat-messages,
  .embedded-tool-chat textarea,
  .ai-chat-history-list,
  .ai-chat-studio,
  .ai-chat-main,
  .ai-image-history,
  .ai-image-history-list,
  .ai-image-stage,
  .ai-video-history-list,
  .favorite-folder-list,
  .favorite-move-options
)::-webkit-scrollbar-thumb {
  background: transparent;
}

:is(
  html,
  body,
  .news-list,
  .site-search-results,
  .ai-chat-messages,
  .embedded-tool-chat-messages,
  .embedded-tool-chat textarea,
  .ai-chat-history-list,
  .ai-chat-studio,
  .ai-chat-main,
  .ai-image-history,
  .ai-image-history-list,
  .ai-image-stage,
  .ai-video-history-list,
  .favorite-folder-list,
  .favorite-move-options
):is(:hover, :focus-within)::-webkit-scrollbar-track {
  background: var(--quiet-scroll-track);
}

:is(
  html,
  body,
  .news-list,
  .site-search-results,
  .ai-chat-messages,
  .embedded-tool-chat-messages,
  .embedded-tool-chat textarea,
  .ai-chat-history-list,
  .ai-chat-studio,
  .ai-chat-main,
  .ai-image-history,
  .ai-image-history-list,
  .ai-image-stage,
  .ai-video-history-list,
  .favorite-folder-list,
  .favorite-move-options
):is(:hover, :focus-within)::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 999px;
  background: var(--quiet-scroll-thumb);
  background-clip: padding-box;
}

:is(
  .news-list,
  .site-search-results,
  .ai-chat-messages,
  .embedded-tool-chat-messages,
  .ai-chat-history-list,
  .ai-chat-studio,
  .ai-chat-main,
  .ai-image-history,
  .ai-image-history-list,
  .ai-image-stage,
  .ai-video-history-list,
  .favorite-folder-list,
  .favorite-move-options
):is(:hover, :focus-within)::-webkit-scrollbar-thumb:hover {
  background: var(--quiet-scroll-thumb-hover);
  background-clip: padding-box;
}

.command-hero .hero-tabs,
.tools-workspace .category-bar,
.favorite-library-filter {
  scrollbar-width: none !important;
}
.command-hero .hero-tabs::-webkit-scrollbar,
.tools-workspace .category-bar::-webkit-scrollbar,
.favorite-library-filter::-webkit-scrollbar {
  display: none !important;
}

/* One rightward rhythm across the site; intensity follows visual importance. */
.app-header::before {
  opacity: .30;
  filter: blur(16px) saturate(.92);
  animation-duration: 11.2s;
}
.app-header::after {
  opacity: .18;
  animation-duration: 8.6s;
}

.tools-workspace .category-overflow-panel::before {
  opacity: .22;
  filter: blur(16px) saturate(.94);
  animation-duration: 11s;
}
.tools-workspace .category-overflow-panel::after {
  opacity: .14;
  animation-duration: 8.4s;
}

.overview-section::before {
  opacity: .20;
  filter: blur(30px) saturate(.76);
  animation-duration: 11.4s;
}
.overview-section::after {
  opacity: .11;
  animation-duration: 8.8s;
}

.tools-workspace .category-bar::before {
  opacity: .27;
  filter: blur(15px) saturate(.94);
  animation-duration: 10.8s;
}
.tools-workspace .category-bar::after {
  opacity: .16;
  animation-duration: 8.2s;
}

.stats-ai-mode-button::before {
  opacity: .30;
  filter: blur(10px) saturate(.96);
  animation-duration: 10.6s;
}
.stats-ai-mode-button::after {
  opacity: .19;
  animation-duration: 8.1s;
}

.command-hero .search-box::before {
  opacity: .44;
  filter: blur(12px) saturate(1.02);
  animation-duration: 10.8s;
}
.command-hero .search-box::after {
  opacity: .28;
  animation-duration: 8.4s;
}
.command-hero .search-box:hover::before,
.command-hero .search-box:focus-within::before,
body.site-search-open .command-hero .search-box::before {
  opacity: .56;
  filter: blur(11px) saturate(1.06);
}
.command-hero .search-box:hover::after,
.command-hero .search-box:focus-within::after,
body.site-search-open .command-hero .search-box::after {
  opacity: .38;
}

.news-aurora {
  opacity: .22;
  filter: saturate(.94) brightness(.98) contrast(1.01);
}
.news-sidebar:hover .news-aurora,
.news-sidebar:focus-within .news-aurora {
  opacity: .32;
  filter: saturate(1.02) brightness(1.02) contrast(1.01);
}
.news-sidebar-head::before {
  opacity: .24;
  animation-duration: 10.9s;
}
.news-sidebar-head::after {
  opacity: .14;
  animation-duration: 8.3s;
}

.favorite-library-search::before {
  opacity: .72;
  animation-duration: 9.2s;
}

/* 20260718 favorite library search composer */
.favorite-library-search-row {
  padding: 8px 10px;
}

.favorite-library-search {
  gap: 14px;
  min-height: 76px;
  padding: 7px 10px 7px 12px;
  border: 1px solid rgba(92, 220, 169, .48);
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(19, 77, 67, .38) 0%, rgba(8, 23, 31, .9) 38%, rgba(5, 16, 24, .94) 100%);
  box-shadow: 0 0 0 8px rgba(3, 10, 16, .54), 0 18px 44px rgba(0, 0, 0, .22), 0 0 24px rgba(64, 200, 156, .07), inset 0 1px 0 rgba(220, 255, 241, .075), inset 0 0 0 2px rgba(74, 196, 151, .055);
  transition: border-color .25s ease, background .25s ease, box-shadow .25s ease, transform .25s ease;
}

.favorite-library-search::before {
  inset: -100% -18%;
  background: linear-gradient(100deg, transparent 30%, rgba(71, 199, 232, .025) 42%, rgba(88, 214, 141, .095) 50%, transparent 64%);
  opacity: .58;
  animation-duration: 9.2s;
}

.favorite-library-search:hover {
  border-color: rgba(113, 230, 185, .64);
  background: linear-gradient(90deg, rgba(23, 89, 75, .44) 0%, rgba(9, 29, 37, .94) 38%, rgba(6, 19, 28, .96) 100%);
  box-shadow: 0 0 0 8px rgba(3, 10, 16, .58), 0 20px 48px rgba(0, 0, 0, .26), 0 0 30px rgba(75, 214, 164, .1), inset 0 1px 0 rgba(224, 255, 243, .1), inset 0 0 0 2px rgba(81, 207, 160, .07);
  transform: translateY(-1px);
}

.favorite-library-search:focus-within {
  border-color: rgba(126, 238, 195, .72);
  background: linear-gradient(90deg, rgba(25, 96, 80, .48) 0%, rgba(9, 31, 39, .96) 38%, rgba(6, 20, 29, .98) 100%);
  box-shadow: 0 0 0 8px rgba(3, 10, 16, .62), 0 20px 50px rgba(0, 0, 0, .28), 0 0 0 3px rgba(88, 214, 141, .055), 0 0 34px rgba(75, 214, 164, .11), inset 0 1px 0 rgba(230, 255, 246, .11), inset 0 0 0 2px rgba(88, 214, 141, .08);
  transform: translateY(-1px);
}

.favorite-library-search > .favorite-library-search-icon,
.favorite-library-search > .favorite-library-search-action {
  display: grid;
  place-items: center;
  flex: 0 0 50px;
  width: 50px;
  height: 50px;
  border: 1px solid rgba(111, 223, 180, .3);
  border-radius: 50%;
  color: rgba(202, 247, 229, .78);
  background: rgba(31, 103, 81, .2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
  line-height: 1;
  transform: none;
  transition: color .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease, transform .22s ease;
}

.favorite-library-search > .favorite-library-search-action {
  color: rgba(220, 255, 241, .9);
  background: rgba(42, 120, 91, .22);
}

.favorite-library-search svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.favorite-library-search input {
  min-height: 50px;
  padding: 0 4px;
  color: rgba(240, 249, 246, .94);
  font-size: 17px;
  font-weight: 540;
  letter-spacing: 0;
}

.favorite-library-search input::placeholder {
  color: rgba(155, 174, 181, .68);
}

.favorite-library-search:hover > .favorite-library-search-icon,
.favorite-library-search:hover > .favorite-library-search-action,
.favorite-library-search:focus-within > .favorite-library-search-icon,
.favorite-library-search:focus-within > .favorite-library-search-action {
  color: #eafff7;
  border-color: rgba(134, 238, 198, .48);
  background: rgba(48, 137, 103, .3);
  box-shadow: 0 0 18px rgba(88, 214, 141, .09), inset 0 1px 0 rgba(255, 255, 255, .09);
}

.favorite-library-search:hover > .favorite-library-search-action,
.favorite-library-search:focus-within > .favorite-library-search-action {
  transform: translateX(2px);
}

@media (max-width: 720px) {
  .favorite-library-search-row {
    padding: 6px 7px;
  }

  .favorite-library-search {
    gap: 9px;
    min-height: 64px;
    padding: 6px 8px;
    box-shadow: 0 0 0 6px rgba(3, 10, 16, .54), 0 14px 34px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(220, 255, 241, .07);
  }

  .favorite-library-search > .favorite-library-search-icon,
  .favorite-library-search > .favorite-library-search-action {
    flex-basis: 42px;
    width: 42px;
    height: 42px;
  }

  .favorite-library-search input {
    min-height: 42px;
    font-size: 15px;
  }
}

.hero-aurora {
  opacity: .78;
  filter: saturate(.92) contrast(1.08) brightness(.98);
}

@media (max-width: 560px) {
  .news-aurora {
    opacity: .20;
  }
  .news-sidebar:hover .news-aurora,
  .news-sidebar:focus-within .news-aurora {
    opacity: .27;
  }
}
/* Keep utility/resource favorites consistently in each card's upper-right corner. */
body[data-active-group="practical-tools"] .utility-item-card-shell > .card-favorite-star,
body[data-active-group="daily-resources"] .utility-item-card-shell > .card-favorite-star {
  top: 12px !important;
  right: 12px !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 10;
}

body[data-active-group="tutorial-knowledge"] .utility-item-card-shell > .tutorial-item-card h3 {
  padding-right: 46px;
}
/* Lower card content slightly beneath upper-right favorite controls. */
body[data-active-group="practical-tools"] .utility-item-card-shell > .utility-item-card,
body[data-active-group="daily-resources"] .utility-item-card-shell > .resource-item-card {
  padding-top: 26px;
  padding-bottom: 17px;
  align-items: start;
}

body[data-active-group="practical-tools"] .utility-item-card-shell > .utility-item-card > div:last-child,
body[data-active-group="daily-resources"] .utility-item-card-shell > .resource-item-card > div:last-child {
  min-width: 0;
}
/* === 20260718 FINAL VISUAL CONSISTENCY END === */

/* chat mode uses original layout; fullscreen only for image/video studio */
body.ai-chat-mode.ai-model-image .ai-chat-window,
body.ai-chat-mode.ai-model-video .ai-chat-window,
body.ai-chat-mode.ai-studio-fullscreen.ai-model-image .ai-chat-window,
body.ai-chat-mode.ai-studio-fullscreen.ai-model-video .ai-chat-window {
  display: flex !important;
  position: fixed !important;
  z-index: 120 !important;
  left: 50% !important;
  top: 64px !important;
  bottom: 12px !important;
  width: min(1240px, calc(100vw - 24px)) !important;
  max-width: calc(100vw - 24px) !important;
  height: calc(100vh - 76px) !important;
  max-height: calc(100vh - 76px) !important;
  min-height: calc(100vh - 76px) !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
  overflow: hidden !important;
}
body.ai-chat-mode.ai-model-image:not(.ai-chat-scrolled) .ai-chat-studio,
body.ai-chat-mode.ai-model-video:not(.ai-chat-scrolled) .ai-chat-studio,
body.ai-chat-mode.ai-model-image .ai-chat-studio,
body.ai-chat-mode.ai-model-video .ai-chat-studio {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
body.ai-chat-mode.ai-model-image .home-layout,
body.ai-chat-mode.ai-model-image .tools-workspace,
body.ai-chat-mode.ai-model-image .category-bar,
body.ai-chat-mode.ai-model-video .home-layout,
body.ai-chat-mode.ai-model-video .tools-workspace,
body.ai-chat-mode.ai-model-video .category-bar {
  visibility: hidden !important;
  pointer-events: none !important;
}
/* do NOT force fixed overlay for plain chat mode */
body.ai-chat-mode.ai-model-chat:not(.ai-studio-fullscreen) .ai-chat-window {
  /* restore cascade to original absolute/home layout rules */
  position: absolute !important;
  transform: none !important;
  left: var(--ai-chat-home-left, 0) !important;
  top: var(--ai-chat-home-top, 0) !important;
  width: var(--ai-chat-home-width, 360px) !important;
  height: var(--ai-chat-home-height, 280px) !important;
  min-height: 0 !important;
  max-height: none !important;
  bottom: auto !important;
  z-index: 8 !important;
}
/* superseded by scrolled chat stacking fix */

/* scrolled chat stacking fix: keep GPT above homepage tools */
body.ai-chat-mode.ai-chat-scrolled .ai-chat-backdrop {
  display: block !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 70 !important;
  background: rgba(2, 7, 12, 0.28) !important;
  backdrop-filter: blur(4px) saturate(0.88) !important;
  -webkit-backdrop-filter: blur(4px) saturate(0.88) !important;
  pointer-events: auto !important;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-window {
  position: fixed !important;
  z-index: 80 !important;
  left: var(--ai-chat-scrolled-left, 16px) !important;
  right: var(--ai-chat-scrolled-right, 16px) !important;
  top: var(--ai-chat-scrolled-top, 82px) !important;
  bottom: var(--ai-chat-scrolled-bottom, 112px) !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  transform: none !important;
  overflow: hidden !important;
  background: rgba(5, 12, 19, 0.5) !important;
  backdrop-filter: blur(18px) saturate(1.02) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.02) !important;
  box-shadow:
    0 24px 80px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
  isolation: isolate !important;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-window-head {
  background: rgba(5, 12, 19, 0.24);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history {
  background: linear-gradient(180deg, rgba(4, 11, 20, 0.3), rgba(3, 9, 17, 0.18));
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-main {
  background: rgba(3, 8, 14, 0.08);
}
body.ai-chat-mode.ai-chat-scrolled .search-panel {
  z-index: 82 !important;
}
body.ai-chat-mode.ai-chat-scrolled .command-hero {
  z-index: 81 !important;
}
/* prevent homepage cards from punching through the chat layer */
body.ai-chat-mode.ai-chat-scrolled .home-layout,
body.ai-chat-mode.ai-chat-scrolled .tools-workspace,
body.ai-chat-mode.ai-chat-scrolled .category-bar,
body.ai-chat-mode.ai-chat-scrolled .news-sidebar,
body.ai-chat-mode.ai-chat-scrolled .stats-sidebar {
  position: relative !important;
  z-index: 1 !important;
  pointer-events: none !important;
}
body.ai-chat-mode.ai-chat-scrolled .home-layout *,
body.ai-chat-mode.ai-chat-scrolled .tools-workspace *,
body.ai-chat-mode.ai-chat-scrolled .category-bar * {
  /* keep paint order under backdrop/window */
}
body.ai-chat-mode.ai-chat-scrolled .app-header {
  z-index: 85 !important;
}
/* Keep all primary categories fully visible on one comfortable row. */
.tools-workspace .category-bar {
  display: flex;
  flex-wrap: nowrap !important;
  justify-content: space-between;
  gap: clamp(4px, 0.55vw, 9px);
  overflow: hidden !important;
}
.tools-workspace .category-group-shell {
  flex: 0 1 auto;
  min-width: 0;
}
.tools-workspace .category-group-shell > .category-pill {
  width: auto;
  max-width: 100%;
  padding: 0 clamp(7px, 0.65vw, 11px);
  gap: clamp(4px, 0.45vw, 7px);
}
.tools-workspace .category-group-toggle strong,
.tools-workspace .category-group-toggle .category-toggle-mark {
  white-space: nowrap;
}
.tools-workspace .category-group-toggle em {
  min-width: 21px;
  padding-inline: 6px;
}
.tools-workspace .category-group-toggle .category-toggle-mark {
  padding-inline: 7px;
}
@media (max-width: 980px) {
  .tools-workspace .category-bar {
    justify-content: flex-start;
    overflow-x: auto !important;
  }
  .tools-workspace .category-group-shell {
    flex: 0 0 auto;
  }
}
/* Homepage identity belongs to search mode, not the AI workspace. */
body.ai-chat-mode .command-hero > .hero-badge,
body.ai-chat-mode .command-hero > .hero-brand-lockup {
  display: none !important;
}
/* 20260718 category favorite star left of count */
.tools-workspace .category-overflow-panel .category-pill-shell > .category-pill {
  padding-right: 11px;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-pill em {
  width: 38px;
  min-width: 38px;
  margin-left: 36px;
  padding-inline: 4px;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star {
  top: 50%;
  right: 54px;
  width: 25px;
  height: 25px;
  transform: translateY(-50%);
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star:hover,
.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star:focus-visible {
  transform: translateY(-50%) scale(1.12) rotate(8deg);
}
/* 20260718 compact overview favorite stars */
.overview-tool-card-shell:not(.overview-tutorial-card-shell) > .overview-tool-card {
  padding-right: 44px;
}

.overview-tool-card-shell:not(.overview-tutorial-card-shell) > .overview-favorite-star {
  top: 50%;
  right: 6px;
  width: 28px;
  height: 28px;
  font-size: 13px;
  transform: translateY(-50%);
}

.overview-tool-card-shell:not(.overview-tutorial-card-shell) > .overview-favorite-star:hover,
.overview-tool-card-shell:not(.overview-tutorial-card-shell) > .overview-favorite-star:focus-visible {
  transform: translateY(-50%) scale(1.1) rotate(8deg);
}

@media (max-width: 560px) {
  .overview-tool-card-shell:not(.overview-tutorial-card-shell) > .overview-tool-card {
    padding-right: 42px;
  }

  .overview-tool-card-shell:not(.overview-tutorial-card-shell) > .overview-favorite-star {
    right: 5px;
    width: 27px;
    height: 27px;
    font-size: 12px;
  }
}
/* Keep the AI workspace clean: the window-level aurora created a stray glow
   behind the controls in the upper-right corner. */
body.ai-chat-mode .ai-chat-window::before {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
  animation: none !important;
}
body.ai-chat-mode #hero-aurora,
body.ai-chat-mode .command-hero > .hero-aurora {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  filter: none !important;
  animation: none !important;
}
/* Resource detail favorites stay pinned to each card corner. */
.detail-file-card-shell > .detail-file-card-star,
.resource-aligned-card > .detail-card-star {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 8 !important;
  margin: 0 !important;
  grid-area: auto !important;
  align-self: auto !important;
  justify-self: auto !important;
}

.resource-aligned-card .simple-tool-head {
  padding-right: 38px;
}

@media (max-width: 560px) {
  .detail-file-card-shell > .detail-file-card-star,
  .resource-aligned-card > .detail-card-star {
    top: 10px !important;
    right: 10px !important;
  }
}
/* 20260719 keep long desktop chat messages inside their bubbles */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row {
    width: auto;
    min-width: 0;
    max-width: calc(100% - 16px);
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row .ai-chat-message,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
    width: fit-content;
    min-width: 0;
    max-width: min(1120px, calc(100vw - 180px));
    overflow-x: visible;
  }

  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-message p {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: anywhere;
  }
}
/* 20260718 align category favorite stars optically */
.tools-workspace .category-overflow-panel .category-pill-shell {
  height: 100%;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-pill {
  height: 100%;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-pill em {
  align-self: center;
  justify-self: end;
  text-align: center;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star {
  display: grid;
  place-items: center;
  box-sizing: border-box;
  padding: 0;
  font-size: 0;
  line-height: 1;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star::before {
  content: "☆";
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  font-family: "Segoe UI Symbol", "Arial Unicode MS", sans-serif;
  font-size: 15px;
  line-height: 1;
  transform: none;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star[aria-pressed="true"]::before,
.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star.is-favorite::before {
  content: "★";
}
/* 20260718 keep expanded category cards on one aligned row */
.tools-workspace .category-overflow-panel {
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}

.tools-workspace .category-overflow-panel .category-pill-shell {
  min-width: 0;
  height: 62px;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-pill {
  grid-template-columns: 28px minmax(0, 1fr) 38px;
  column-gap: 10px;
  width: 100%;
  min-width: 0;
  height: 62px;
  min-height: 62px;
  padding: 9px 11px;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-pill strong {
  min-width: 0;
  white-space: nowrap !important;
  word-break: keep-all;
  overflow-wrap: normal;
  line-height: 1;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-pill em {
  width: 38px;
  min-width: 38px;
  margin-left: 36px;
  align-self: center;
  justify-self: end;
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star {
  top: 50%;
  right: 54px;
  margin: 0;
  transform: translateY(-50%);
}

.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star:hover,
.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star:focus-visible {
  transform: translateY(-50%) scale(1.1);
}

@media (max-width: 620px) {
  .tools-workspace .category-overflow-panel {
    grid-template-columns: 1fr;
  }
}
/* 20260718 remove favorite workspace backdrop */
.favorite-library::before {
  content: none;
  display: none;
  background: none;
}

/* AI news column statistics layout */
.news-column {
  position: sticky;
  top: 86px;
  align-self: start;
  display: grid;
  min-width: 0;
  gap: 12px;
}

.news-column .news-sidebar {
  position: relative;
  top: auto;
  width: 100%;
  max-height: calc(100vh - 232px);
}

.news-stats-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  gap: 12px;
  margin: 0;
}

.news-stats-row .metric {
  position: relative;
  isolation: isolate;
  contain: paint;
  display: flex;
  min-width: 0;
  min-height: 92px;
  padding: 11px 14px;
  overflow: hidden;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-color: rgba(71, 199, 232, .2);
  background: rgba(10, 18, 28, .9);
  text-align: center;
  transition: transform .28s cubic-bezier(.22, 1, .36, 1), border-color .28s ease, background .28s ease, box-shadow .28s ease;
}

.news-stats-row .metric:hover {
  transform: translateY(-2px);
  border-color: rgba(88, 214, 141, .32);
  background: rgba(12, 22, 32, .94);
  box-shadow: var(--shadow), 0 0 0 3px rgba(88, 214, 141, .035), inset 0 1px 0 rgba(255, 255, 255, .04);
}

.news-stats-row .metric strong {
  position: relative;
  z-index: 1;
  min-width: 4ch;
  color: rgba(250, 253, 255, .98);
  font-size: 38px;
  font-weight: 850;
  font-variant-numeric: tabular-nums;
  line-height: .95;
  text-shadow: 0 0 20px rgba(226, 255, 244, .14), 0 0 28px rgba(88, 214, 141, .1);
}

.news-stats-row .metric span {
  position: relative;
  z-index: 1;
  margin: 0;
  color: rgba(236, 244, 247, .86);
  font-size: 16px;
  font-weight: 750;
  line-height: 1.1;
  white-space: nowrap;
}

.news-stats-row .metric::before,
.news-stats-row .metric::after {
  content: none;
  display: none;
  animation: none !important;
}

.news-stats-row .metric::before {
  inset: -58%;
  background:
    linear-gradient(104deg, transparent 0 18%, rgba(62, 205, 144, 0) 23%, rgba(72, 226, 157, .11) 30%, rgba(82, 226, 184, .2) 38%, rgba(58, 178, 159, .06) 49%, transparent 66%) 0 0 / 235px 100% repeat-x,
    linear-gradient(98deg, transparent 0 25%, rgba(50, 163, 148, 0) 31%, rgba(67, 199, 180, .075) 38%, rgba(80, 218, 168, .13) 45%, rgba(43, 151, 155, .035) 55%, transparent 72%) 0 0 / 340px 100% repeat-x;
  filter: blur(9px) saturate(1.08);
  opacity: .48;
  transform: skewX(-2deg) scaleY(.98);
  animation: metric-aurora-flow 11.8s linear infinite;
}

.news-stats-row .metric::after {
  inset: -26% -76%;
  background: linear-gradient(101deg, transparent 0 38%, rgba(129, 255, 205, 0) 45%, rgba(139, 255, 211, .2) 50%, rgba(78, 211, 182, .07) 53%, transparent 61%) 0 0 / 290px 100% repeat-x;
  filter: blur(1.3px);
  opacity: .34;
  animation: metric-aurora-thread 9.4s linear infinite;
}

.news-stats-row .metric:nth-child(2)::before {
  animation-delay: -3.1s;
}

.news-stats-row .metric:nth-child(2)::after {
  animation-delay: -1.7s;
}

.news-column .news-list {
  max-height: calc(100vh - 314px);
}

.news-column .ai-ranking-panel {
  min-height: min(430px, calc(100vh - 314px));
}

body[data-active-group="tutorial-knowledge"] .news-column {
  display: none;
}

body.ai-chat-mode.ai-chat-scrolled .news-column {
  position: relative !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

@media (min-width: 981px) and (max-width: 1360px) {
  .stats-sidebar {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 320px));
    justify-content: end;
    gap: 12px;
  }

  .stats-sidebar .insight-row {
    grid-template-columns: 1fr;
  }

  .stats-ai-entry {
    width: 100%;
    margin: 0;
  }
}

@media (max-width: 980px) {
  .news-column {
    position: relative;
    top: auto;
  }

  .news-column .news-sidebar {
    max-height: none;
  }

  .news-column .news-list {
    max-height: 360px;
  }

  .news-column .ai-ranking-panel {
    min-height: 360px;
  }
}

@media (max-width: 560px) {
  .news-stats-row {
    gap: 10px;
  }

  .news-stats-row .metric {
    min-height: 84px;
    padding: 10px 12px;
  }

  .news-stats-row .metric strong {
    font-size: 33px;
  }

  .news-stats-row .metric span {
    font-size: 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .news-stats-row .metric,
  .news-stats-row .metric::before,
  .news-stats-row .metric::after {
    animation: none;
    transition: none;
  }
}
/* Refined AI mode entry card */
.stats-ai-mode-button {
  gap: 14px;
  min-height: 82px;
  padding: 14px 22px;
  border-color: rgba(139, 173, 188, .24);
  background:
    radial-gradient(circle at 28% 18%, rgba(88, 214, 141, .095), transparent 38%),
    linear-gradient(118deg, rgba(17, 28, 40, .95), rgba(11, 20, 30, .94));
  box-shadow:
    0 18px 38px rgba(0, 0, 0, .24),
    inset 0 1px 0 rgba(255, 255, 255, .055),
    inset 0 -1px 0 rgba(71, 199, 232, .035);
}

.stats-ai-mode-button::before {
  inset: -72% -28%;
  background:
    radial-gradient(ellipse at 24% 50%, rgba(88, 214, 141, .18), transparent 31%),
    radial-gradient(ellipse at 64% 45%, rgba(71, 199, 232, .12), transparent 34%);
  filter: blur(16px) saturate(.94);
  opacity: .36;
  transform: translate3d(-8%, 0, 0);
  animation: statsAiModeDrift 7.6s ease-in-out infinite alternate;
}

.stats-ai-mode-button::after {
  inset: -20% auto -20% -42%;
  width: 38%;
  background: linear-gradient(100deg, transparent, rgba(218, 255, 242, .13) 44%, rgba(116, 231, 207, .18) 52%, transparent 72%);
  filter: blur(3px);
  opacity: 0;
  transform: skewX(-16deg);
  animation: statsAiModeSheen 5.8s cubic-bezier(.45, 0, .2, 1) infinite;
}

.stats-ai-mode-emblem {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border: 1px solid rgba(130, 235, 197, .25);
  border-radius: 50%;
  background:
    radial-gradient(circle at 35% 30%, rgba(166, 255, 220, .16), transparent 43%),
    rgba(6, 17, 24, .58);
  box-shadow:
    inset 0 0 0 5px rgba(88, 214, 141, .025),
    0 0 20px rgba(71, 199, 232, .07);
  transition: transform .3s cubic-bezier(.22, 1, .36, 1), border-color .3s ease, box-shadow .3s ease;
}

.stats-ai-mode-emblem::after {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid rgba(71, 199, 232, .11);
  border-radius: 50%;
}

.stats-ai-mode-emblem svg {
  width: 23px;
  height: 23px;
  overflow: visible;
  fill: rgba(213, 255, 237, .06);
  stroke: rgba(219, 255, 241, .92);
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 7px rgba(88, 214, 141, .22));
}

.stats-ai-mode-label {
  color: rgba(246, 252, 250, .98);
  font-size: 25px;
  font-weight: 850;
  line-height: 1;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .08), 0 0 20px rgba(88, 214, 141, .09);
}

.stats-ai-mode-button:hover,
.stats-ai-mode-button:focus-visible {
  border-color: rgba(111, 218, 180, .43);
  background:
    radial-gradient(circle at 30% 15%, rgba(88, 214, 141, .13), transparent 40%),
    linear-gradient(118deg, rgba(19, 32, 44, .97), rgba(12, 23, 33, .96));
  box-shadow:
    0 20px 44px rgba(0, 0, 0, .28),
    0 0 0 3px rgba(88, 214, 141, .035),
    inset 0 1px 0 rgba(255, 255, 255, .075);
  transform: translateY(-2px);
}

.stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-ai-mode-button:focus-visible .stats-ai-mode-emblem {
  border-color: rgba(151, 246, 211, .44);
  box-shadow:
    inset 0 0 0 5px rgba(88, 214, 141, .04),
    0 0 24px rgba(71, 199, 232, .13);
  transform: scale(1.06) rotate(-3deg);
}

.stats-ai-mode-button:active {
  transform: translateY(0) scale(.985);
  transition-duration: .1s;
}

.stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
  border-color: rgba(139, 246, 205, .5);
  background: rgba(8, 27, 29, .72);
  box-shadow: inset 0 0 0 5px rgba(88, 214, 141, .045), 0 0 24px rgba(88, 214, 141, .14);
}

@keyframes statsAiModeDrift {
  from { transform: translate3d(-9%, 1%, 0) scale(.98); }
  to { transform: translate3d(10%, -1%, 0) scale(1.03); }
}

@keyframes statsAiModeSheen {
  0%, 62% { left: -42%; opacity: 0; }
  69% { opacity: .2; }
  84% { opacity: .12; }
  100% { left: 112%; opacity: 0; }
}

@media (max-width: 560px) {
  .stats-ai-mode-button {
    min-height: 72px;
    gap: 12px;
    padding: 12px 18px;
  }

  .stats-ai-mode-emblem {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }

  .stats-ai-mode-label {
    font-size: 23px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .stats-ai-mode-button::before,
  .stats-ai-mode-button::after {
    animation: none;
  }
}


/* 20260719 integrated AI chat composer and message metadata */
.ai-chat-composer-dock { display: none; }
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-main { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; min-width: 0; min-height: 0; overflow: hidden; }
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages { min-height: 0; padding: 22px 28px 18px; overflow: auto; scroll-padding-bottom: 24px; }
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
  position: relative; z-index: 7; display: flex; justify-content: center; width: 100%; padding: 14px 28px 20px;
  border-top: 1px solid rgba(151, 190, 204, 0.1);
  background: linear-gradient(180deg, rgba(4, 11, 18, 0.02), rgba(4, 11, 18, 0.2));
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
}
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked,
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .search-panel.is-chat-docked {
  position: relative !important; inset: auto !important; top: auto !important; right: auto !important; bottom: auto !important; left: auto !important;
  z-index: 1 !important; width: min(980px, 100%) !important; max-width: 980px !important; margin: 0 auto !important; transform: none !important;
}
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .ai-search-layout,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-control,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box-row { width: 100%; max-width: none; margin: 0; }
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-label,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .site-search-popover { display: none !important; }
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box {
  min-height: 62px; border-color: rgba(151, 206, 218, 0.22); background: rgba(7, 17, 25, 0.58);
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.055);
  backdrop-filter: blur(20px) saturate(1.08); -webkit-backdrop-filter: blur(20px) saturate(1.08);
}
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box:hover,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box:focus-within {
  border-color: rgba(131, 220, 215, 0.34); background: rgba(8, 20, 29, 0.68);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(109, 211, 204, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.07);
}
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked #tool-search { min-width: 0; font-size: 15px; }
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .ai-attachment-preview:not([hidden]) { margin: 0 0 10px; }
body.ai-chat-mode.ai-model-chat .ai-chat-message-row { gap: 14px; align-items: flex-start; }
body.ai-chat-mode.ai-model-chat .ai-chat-message-avatar {
  display: grid; place-items: center; flex: 0 0 50px; width: 50px; height: 50px; padding: 7px;
  border: 1px solid rgba(145, 203, 216, 0.24); border-radius: 15px; background: rgba(255, 255, 255, 0.075);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07), 0 8px 20px rgba(0, 0, 0, 0.16);
}
body.ai-chat-mode.ai-model-chat .ai-chat-message-avatar img { width: 100%; height: 100%; object-fit: contain; }
body.ai-chat-mode.ai-model-chat .ai-chat-message-row .ai-chat-message {
  width: fit-content; min-width: 0; padding: 12px 15px 13px; border-radius: 14px; background: rgba(255, 255, 255, 0.052);
}
body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message { background: rgba(64, 157, 142, 0.13); }
body.ai-chat-mode.ai-model-chat .ai-chat-message-meta { display: flex; align-items: center; gap: 12px; min-height: 18px; margin-bottom: 6px; }
body.ai-chat-mode.ai-model-chat .ai-chat-message-user .ai-chat-message-meta { justify-content: flex-end; }
body.ai-chat-mode.ai-model-chat .ai-chat-message-role { display: inline; margin: 0; color: rgba(161, 232, 212, 0.92); font-size: 12px; line-height: 1.2; font-weight: 760; }
body.ai-chat-mode.ai-model-chat .ai-chat-message-meta time { color: rgba(196, 211, 219, 0.48); font-size: 11px; line-height: 1; font-variant-numeric: tabular-nums; }
body.ai-chat-mode.ai-model-chat .ai-chat-message p { font-size: 14px; line-height: 1.65; }
@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages { padding: 18px 14px 14px; }
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock { padding: 10px 12px 14px; }
  body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box { min-height: 56px; }
  body.ai-chat-mode.ai-model-chat .ai-chat-message-row { gap: 10px; max-width: 100%; }
  body.ai-chat-mode.ai-model-chat .ai-chat-message-avatar { flex-basis: 42px; width: 42px; height: 42px; padding: 6px; border-radius: 13px; }
  body.ai-chat-mode.ai-model-chat .ai-chat-message-row .ai-chat-message { max-width: calc(100% - 52px); }
}

/* Give text-chat history enough room to scan titles, models and timestamps. */
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-workspace {
  grid-template-columns: 328px minmax(0, 1fr);
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history {
  padding: 20px 16px 18px;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-head {
  min-height: 42px;
  padding: 0 4px 14px;
  color: rgba(236, 247, 250, 0.82);
  font-size: 15px;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-head button {
  width: 31px;
  height: 31px;
  border-radius: 9px;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-list {
  gap: 10px;
  padding: 2px 4px 10px 0;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-item {
  align-items: center;
  gap: 14px;
  min-height: 86px;
  padding: 13px 14px;
  border-radius: 10px;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-icon {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  padding: 9px;
  border-radius: 12px;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-icon img {
  width: 28px;
  height: 28px;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-copy {
  gap: 10px;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-copy strong {
  font-size: 15px;
  line-height: 1.25;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-copy small {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  font-size: 11px;
  line-height: 1.1;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-model {
  min-width: 0;
  padding: 5px 8px;
}
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-copy time {
  align-self: center;
  padding-right: 2px;
  font-variant-numeric: tabular-nums;
}
@media (max-width: 1180px) and (min-width: 681px) {
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-workspace {
    grid-template-columns: 276px minmax(0, 1fr);
  }
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history {
    padding-inline: 12px;
  }
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history-item {
    gap: 11px;
    padding-inline: 11px;
  }
}

/* The star glyph sits slightly high inside its font box; center it optically. */
.tools-workspace .category-overflow-panel .category-pill-shell > .category-favorite-star::before {
  transform: translateY(1px);
}

/* 20260718 final AI mode entry redesign */
.stats-sidebar .stats-ai-entry {
  width: 100%;
  margin-top: 18px;
}

.stats-sidebar .stats-ai-mode-button {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: 50px auto;
  align-items: center;
  justify-content: center;
  gap: 15px;
  width: 100%;
  min-height: 96px;
  padding: 17px 24px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background:
    radial-gradient(circle at 17% 28%, rgba(88, 214, 141, .09), transparent 34%),
    linear-gradient(118deg, rgba(16, 25, 37, .96), rgba(10, 18, 28, .94));
  color: rgba(244, 251, 249, .98);
  box-shadow:
    var(--shadow),
    inset 0 1px 0 rgba(255, 255, 255, .055),
    inset 0 -1px 0 rgba(71, 199, 232, .035);
  text-align: left;
  cursor: pointer;
  transition:
    transform .28s cubic-bezier(.22, 1, .36, 1),
    border-color .28s ease,
    background .28s ease,
    box-shadow .28s ease;
}

.stats-sidebar .stats-ai-mode-button::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -60% -38%;
  pointer-events: none;
  background:
    linear-gradient(103deg, transparent 0 30%, rgba(88, 214, 141, 0) 38%, rgba(88, 214, 141, .14) 47%, rgba(71, 199, 232, .09) 54%, transparent 66%) 0 0 / 300px 100% repeat-x,
    linear-gradient(98deg, transparent 0 37%, rgba(71, 199, 232, 0) 43%, rgba(71, 199, 232, .075) 51%, rgba(88, 214, 141, .06) 57%, transparent 68%) 0 0 / 430px 100% repeat-x;
  filter: blur(13px) saturate(1.02);
  opacity: .34;
  animation: statsAiEntryFlow 8.4s linear infinite;
  transition: opacity .3s ease;
}

.stats-sidebar .stats-ai-mode-button::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -28%;
  bottom: -28%;
  left: -34%;
  width: 26%;
  pointer-events: none;
  background: linear-gradient(102deg, transparent, rgba(213, 255, 239, .12) 44%, rgba(115, 226, 207, .18) 53%, transparent 72%);
  filter: blur(3px);
  opacity: 0;
  transform: skewX(-15deg);
  animation: statsAiEntrySheen 6.6s cubic-bezier(.45, 0, .2, 1) infinite;
}

.stats-sidebar .stats-ai-mode-button > * {
  position: relative;
  z-index: 1;
}

.stats-sidebar .stats-ai-mode-emblem {
  display: grid !important;
  place-items: center;
  width: 50px;
  height: 50px;
  min-width: 50px;
  border: 1px solid rgba(128, 226, 195, .31);
  border-radius: 14px;
  background:
    radial-gradient(circle at 32% 25%, rgba(180, 255, 226, .16), transparent 42%),
    linear-gradient(145deg, rgba(21, 48, 49, .78), rgba(7, 22, 31, .86));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .09),
    inset 0 0 0 5px rgba(88, 214, 141, .025),
    0 9px 22px rgba(0, 0, 0, .22),
    0 0 20px rgba(71, 199, 232, .07);
  transition:
    transform .3s cubic-bezier(.22, 1, .36, 1),
    border-color .3s ease,
    box-shadow .3s ease;
}

.stats-sidebar .stats-ai-mode-emblem::after {
  content: "";
  position: absolute;
  inset: 6px;
  border: 1px solid rgba(165, 238, 218, .1);
  border-radius: 9px;
  pointer-events: none;
}

.stats-sidebar .stats-ai-mode-emblem svg {
  display: block;
  width: 27px;
  height: 27px;
  overflow: visible;
  fill: rgba(215, 255, 239, .055);
  stroke: rgba(224, 255, 244, .96);
  stroke-width: 1.45;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 8px rgba(88, 214, 141, .28));
}

.stats-sidebar .stats-ai-mode-label {
  display: block;
  min-width: 0;
  color: rgba(246, 252, 250, .99);
  font-size: 25px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
  text-align: left;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .08), 0 0 22px rgba(88, 214, 141, .1);
}

.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus-visible {
  border-color: rgba(111, 218, 180, .43);
  background:
    radial-gradient(circle at 20% 26%, rgba(88, 214, 141, .14), transparent 36%),
    linear-gradient(118deg, rgba(19, 32, 44, .98), rgba(11, 22, 32, .97));
  box-shadow:
    0 21px 44px rgba(0, 0, 0, .28),
    0 0 0 3px rgba(88, 214, 141, .035),
    inset 0 1px 0 rgba(255, 255, 255, .075);
  transform: translateY(-2px);
  outline: none;
}

.stats-sidebar .stats-ai-mode-button:hover::before,
.stats-sidebar .stats-ai-mode-button:focus-visible::before {
  opacity: .52;
}

.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem {
  border-color: rgba(151, 246, 211, .5);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .11),
    inset 0 0 0 5px rgba(88, 214, 141, .045),
    0 11px 24px rgba(0, 0, 0, .24),
    0 0 25px rgba(71, 199, 232, .14);
  transform: scale(1.055) rotate(-2deg);
}

.stats-sidebar .stats-ai-mode-button:active {
  transform: translateY(0) scale(.985);
  transition-duration: .1s;
}

@keyframes statsAiEntryFlow {
  from { background-position: -300px 0, -430px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes statsAiEntrySheen {
  0%, 64% { left: -34%; opacity: 0; }
  71% { opacity: .22; }
  86% { opacity: .1; }
  100% { left: 116%; opacity: 0; }
}

@media (max-width: 560px) {
  .stats-sidebar .stats-ai-mode-button {
    grid-template-columns: 44px auto;
    gap: 13px;
    min-height: 82px;
    padding: 14px 19px;
  }

  .stats-sidebar .stats-ai-mode-emblem {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 12px;
  }

  .stats-sidebar .stats-ai-mode-label {
    font-size: 23px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .stats-sidebar .stats-ai-mode-button::before,
  .stats-sidebar .stats-ai-mode-button::after {
    animation: none;
  }
}

/* 20260718 docked AI composer aurora and press feedback */
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  transition:
    transform .2s cubic-bezier(.22, 1, .36, 1),
    border-color .3s ease,
    background .3s ease,
    box-shadow .3s ease;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box::before,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box::after,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-sweep {
  position: absolute;
  pointer-events: none;
  mix-blend-mode: screen;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box::before,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box::after {
  content: "";
  z-index: 0;
  will-change: background-position, opacity;
  transition: opacity .32s ease, filter .32s ease;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box::before {
  inset: -86% -46%;
  background:
    linear-gradient(103deg, transparent 0 20%, rgba(74, 210, 166, 0) 29%, rgba(79, 224, 175, .13) 39%, rgba(75, 207, 194, .24) 49%, rgba(62, 166, 170, .07) 59%, transparent 71%) 0 0 / 330px 100% repeat-x,
    linear-gradient(98deg, transparent 0 27%, rgba(67, 190, 166, 0) 36%, rgba(101, 228, 196, .1) 47%, rgba(87, 213, 193, .17) 57%, transparent 72%) 0 0 / 480px 100% repeat-x;
  opacity: .46;
  filter: blur(12px) saturate(1.08);
  transform: skewX(-2deg);
  animation: docked-composer-aurora 10.6s linear infinite;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box::after {
  inset: -34% -42%;
  background: linear-gradient(101deg, transparent 0 27%, rgba(154, 255, 224, 0) 36%, rgba(161, 255, 226, .2) 47%, rgba(84, 210, 196, .07) 55%, transparent 66%) 0 0 / 390px 100% repeat-x;
  opacity: .28;
  filter: blur(1.8px);
  animation: docked-composer-thread 8.4s linear infinite;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-sweep {
  z-index: 1;
  inset: -82% -40%;
  background: linear-gradient(102deg,
    transparent 20%,
    rgba(79, 206, 183, 0) 29%,
    rgba(104, 235, 202, .08) 38%,
    rgba(172, 255, 229, .28) 47%,
    rgba(239, 255, 250, .48) 51%,
    rgba(153, 247, 218, .24) 56%,
    rgba(81, 201, 190, .06) 66%,
    transparent 78%);
  opacity: 0;
  filter: blur(5px) saturate(1.06);
  transform: translate3d(-112%, 0, 0) skewX(-3deg) scaleX(1.08);
  will-change: transform, opacity;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box > :not(.search-sweep) {
  position: relative;
  z-index: 2;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box:hover::before,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box:focus-within::before {
  opacity: .64;
  filter: blur(10px) saturate(1.16);
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box:hover::after,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box:focus-within::after {
  opacity: .42;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box.is-sweeping {
  transform: translateY(1px) scale(.9985);
  border-color: rgba(142, 232, 218, .48);
  background: rgba(9, 24, 32, .72);
  box-shadow:
    0 13px 34px rgba(0, 0, 0, .23),
    0 0 0 2px rgba(102, 218, 200, .055),
    inset 0 1px 0 rgba(255, 255, 255, .085),
    inset 0 0 24px rgba(80, 208, 183, .035);
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box.is-sweeping .search-sweep {
  animation: docked-composer-click-sweep 2.7s cubic-bezier(.22, .61, .36, 1) both;
}

@keyframes docked-composer-aurora {
  from { background-position: -330px 0, -480px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes docked-composer-thread {
  from { background-position: -390px 0; }
  to { background-position: 0 0; }
}

@keyframes docked-composer-click-sweep {
  0% { opacity: 0; transform: translate3d(-112%, 0, 0) skewX(-3deg) scaleX(1.08); }
  12% { opacity: .2; }
  34% { opacity: .65; }
  58% { opacity: .74; }
  78% { opacity: .48; }
  100% { opacity: 0; transform: translate3d(112%, 0, 0) skewX(-3deg) scaleX(1.08); }
}

@media (prefers-reduced-motion: reduce) {
  body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box::before,
  body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box::after,
  body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-sweep {
    animation: none;
  }
}
/* Keep long histories and conversations contained inside the AI window. */
body.ai-chat-mode.ai-model-chat .ai-chat-window-head {
  flex: 0 0 auto;
}

body.ai-chat-mode.ai-model-chat .ai-chat-workspace {
  flex: 1 1 0;
  height: 0;
  min-height: 0;
  max-height: 100%;
  overflow: hidden;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history {
  min-height: 0;
  max-height: 100%;
  overflow: hidden;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-head {
  flex: 0 0 auto;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-list {
  flex: 1 1 0;
  min-height: 0;
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-main {
  height: 100%;
  max-height: 100%;
  min-height: 0;
  overflow: hidden;
}

body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
  min-height: 0;
  max-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}
/* Keep passive statistics still; give the favorites entry a deliberate light response. */
.news-stats-row .metric {
  transition: none;
}

.news-stats-row .metric:hover {
  transform: none;
  border-color: rgba(71, 199, 232, .2);
  background: rgba(10, 18, 28, .9);
  box-shadow: var(--shadow);
}

.stats-sidebar .metric.favorite-library-trigger::after {
  inset: -34% auto -34% -62%;
  width: 46%;
  background: linear-gradient(102deg,
    transparent 0,
    rgba(117, 244, 207, 0) 24%,
    rgba(137, 255, 218, .16) 43%,
    rgba(226, 255, 246, .4) 52%,
    rgba(107, 225, 202, .12) 63%,
    transparent 100%);
  filter: blur(4px) saturate(1.08);
  opacity: 0;
  transform: skewX(-12deg);
  animation: none;
  will-change: left, opacity;
}

.stats-sidebar .metric.favorite-library-trigger:hover::after,
.stats-sidebar .metric.favorite-library-trigger:focus-visible::after {
  animation: favorite-metric-hover-sweep 1.7s cubic-bezier(.22, .61, .36, 1) both;
}

@keyframes favorite-metric-hover-sweep {
  0% { left: -62%; opacity: 0; }
  18% { opacity: .34; }
  52% { opacity: .78; }
  82% { opacity: .32; }
  100% { left: 122%; opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .stats-sidebar .metric.favorite-library-trigger:hover::after,
  .stats-sidebar .metric.favorite-library-trigger:focus-visible::after {
    animation: none;
    opacity: .24;
    left: 28%;
  }
}
/* Let the AI mode entry blend into the sidebar while keeping its light sweep. */
.stats-sidebar .stats-ai-mode-button,
.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus-visible {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus-visible {
  background: radial-gradient(circle at 24% 50%, rgba(88, 214, 141, .055), transparent 58%);
}
/* 20260718 place chat identity and time above content-sized bubbles */
body.ai-chat-mode.ai-model-chat .ai-chat-message-row {
  padding-top: 27px;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row .ai-chat-message {
  position: relative;
  width: fit-content;
  min-width: 0;
  padding: 12px 16px 13px;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-meta {
  position: absolute;
  left: 4px;
  bottom: calc(100% + 8px);
  display: flex;
  align-items: center;
  gap: 10px;
  width: max-content;
  max-width: 100%;
  min-height: 0;
  margin: 0;
  white-space: nowrap;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-user .ai-chat-message-meta {
  right: 4px;
  left: auto;
  justify-content: flex-end;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-role {
  margin: 0;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-message-row {
    padding-top: 24px;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-message-row .ai-chat-message,
  body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
    max-width: calc(100% - 52px);
    padding: 11px 14px 12px;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-message-meta {
    bottom: calc(100% + 6px);
  }
}
/* 20260718 let the docked AI composer fill the conversation width */
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
  padding-right: 18px;
  padding-left: 18px;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked,
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .search-panel.is-chat-docked {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
    padding-right: 12px;
    padding-left: 12px;
  }
}
/* 20260718 unified image and video generation workspace */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
  display: flex !important;
  flex-direction: column !important;
  top: 64px !important;
  bottom: 12px !important;
  width: min(1480px, calc(100vw - 28px)) !important;
  max-width: calc(100vw - 28px) !important;
  min-height: 0 !important;
  height: calc(100vh - 76px) !important;
  max-height: calc(100vh - 76px) !important;
  overflow: hidden !important;
  background: rgba(7, 12, 20, .88) !important;
  backdrop-filter: blur(24px) saturate(1.08) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window-head {
  flex: 0 0 auto !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-workspace {
  display: grid !important;
  grid-template-columns: 292px minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  flex: 1 1 0 !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 18px 14px 16px !important;
  overflow: hidden !important;
  border-right: 1px solid rgba(150, 171, 196, .16) !important;
  background: linear-gradient(180deg, rgba(8, 15, 25, .62), rgba(5, 11, 19, .44)) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-head {
  flex: 0 0 auto;
  min-height: 38px;
  padding: 0 5px 13px;
  color: rgba(235, 244, 249, .86);
  font-size: 13px;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-list {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  gap: 10px !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  padding: 2px 3px 12px 1px !important;
  scrollbar-gutter: stable;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-main {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-model-context {
  display: flex !important;
  flex: 0 0 auto;
  min-height: 52px;
  padding: 12px 22px 10px;
  border-bottom: 1px solid rgba(149, 169, 192, .1);
  background: rgba(7, 13, 22, .28);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  display: block !important;
  flex: 1 1 0 !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  padding: 14px 18px 16px !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  display: grid !important;
  grid-template-rows: auto minmax(210px, 1fr) auto auto !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 48px;
  padding: 9px 14px;
  border: 1px solid rgba(149, 169, 192, .13);
  border-radius: 10px;
  background: rgba(10, 17, 28, .54);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar > div {
  display: flex;
  align-items: baseline;
  gap: 11px;
  min-width: 0;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar span {
  flex: 0 0 auto;
  color: rgba(139, 226, 211, .72);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar strong {
  overflow: hidden;
  color: rgba(242, 248, 250, .94);
  font-size: 16px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar small {
  flex: 0 0 auto;
  color: rgba(184, 204, 215, .64);
  font-size: 11px;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  position: relative;
  display: grid !important;
  min-width: 0 !important;
  min-height: 210px !important;
  height: auto !important;
  padding: 16px !important;
  overflow: auto !important;
  border: 1px solid rgba(149, 169, 192, .14) !important;
  border-radius: 12px !important;
  background:
    radial-gradient(circle at 50% 10%, rgba(102, 196, 183, .055), transparent 38%),
    linear-gradient(180deg, rgba(5, 11, 19, .68), rgba(8, 14, 23, .82)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .03) !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage {
  border-color: rgba(193, 156, 255, .16) !important;
  background:
    radial-gradient(circle at 50% 8%, rgba(193, 156, 255, .065), transparent 40%),
    linear-gradient(180deg, rgba(9, 10, 20, .66), rgba(11, 12, 24, .84)) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  min-width: 0 !important;
  min-height: 0 !important;
  max-height: 244px !important;
  margin: 0 !important;
  padding: 13px 15px 14px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border: 1px solid rgba(149, 169, 192, .13) !important;
  border-radius: 11px !important;
  background: rgba(9, 16, 26, .66) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-params-head,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-section-head {
  margin-bottom: 11px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  display: grid !important;
  grid-template-columns: minmax(290px, 1.5fr) minmax(118px, .55fr) minmax(118px, .55fr) auto !important;
  align-items: end !important;
  gap: 12px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 220px;
}

body.ai-chat-mode.ai-model-image .ai-image-generate {
  margin-left: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings {
  grid-template-columns: repeat(4, minmax(120px, 1fr)) !important;
  gap: 10px 12px !important;
}

body.ai-chat-mode.ai-model-video .ai-video-motion {
  grid-column: span 2;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions {
  margin-top: 11px !important;
  padding-top: 11px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
  min-width: 0;
  min-height: 68px;
  padding: 0;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked {
  position: relative !important;
  inset: auto !important;
  z-index: 6 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-label,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .ai-composer-upload,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .site-search-popover {
  display: none !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked :is(.ai-search-layout, .search-control, .search-box-row, .search-box) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  min-height: 64px !important;
  padding-left: 18px !important;
  border-color: rgba(143, 185, 199, .2) !important;
  border-radius: 12px !important;
  background: rgba(5, 11, 19, .72) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035), 0 12px 30px rgba(0, 0, 0, .18) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked #tool-search {
  min-width: 0;
  font-size: 15px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .ai-send-button {
  display: grid !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 3px 2px;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-item {
  display: grid !important;
  grid-template-columns: 86px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 11px !important;
  flex: 0 0 auto;
  width: 100% !important;
  min-height: 82px !important;
  padding: 9px !important;
  overflow: hidden !important;
  border-radius: 11px !important;
  text-align: left;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-thumb {
  position: relative;
  display: block;
  width: 86px !important;
  height: 62px !important;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(255, 255, 255, .035);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-thumb img,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-fallback {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-copy {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  min-width: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-copy strong,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-group {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-item {
  display: grid !important;
  grid-template-columns: 92px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 11px !important;
  flex: 0 0 auto;
  width: 100% !important;
  min-height: 88px !important;
  padding: 9px !important;
  overflow: hidden !important;
  border-radius: 11px !important;
  text-align: left !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-thumb {
  width: 92px !important;
  height: 66px !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  border-radius: 8px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-copy {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-title,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-params {
  min-width: 0;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-params {
  display: flex !important;
  gap: 5px !important;
  overflow: hidden !important;
  white-space: nowrap;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-param {
  flex: 0 0 auto;
}

@media (max-width: 1120px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 244px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(250px, 1fr) repeat(2, minmax(108px, .45fr)) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-column: 1 / -1;
    min-width: 0;
  }

  body.ai-chat-mode.ai-model-video .ai-video-settings {
    grid-template-columns: repeat(2, minmax(120px, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
    top: 56px !important;
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    height: calc(100vh - 66px) !important;
    max-height: calc(100vh - 66px) !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 1fr !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history {
    display: none !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
    padding: 10px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: auto minmax(180px, 1fr) auto auto !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls,
  body.ai-chat-mode.ai-model-video .ai-video-settings {
    grid-template-columns: 1fr !important;
  }

  body.ai-chat-mode.ai-model-video .ai-video-motion,
  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-column: auto;
  }
}
/* 20260718 generation workspace short viewport refinement */
@media (max-height: 820px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
    top: 54px !important;
    bottom: 8px !important;
    height: calc(100vh - 62px) !important;
    max-height: calc(100vh - 62px) !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-model-context {
    min-height: 46px;
    padding-block: 9px 8px;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
    padding: 10px 14px 12px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: auto minmax(150px, 1fr) minmax(118px, auto) auto !important;
    gap: 9px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar {
    min-height: 42px;
    padding-block: 7px;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
    min-height: 150px !important;
    padding: 12px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    max-height: 188px !important;
    padding: 11px 13px 12px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
    min-height: 58px;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
    min-height: 58px !important;
  }
}
/* 20260718 favorite library homepage-style search and recommendations */
.favorite-library-search-row {
  display: block;
  margin: 0 0 24px;
  padding: 8px 4px 12px;
}

.favorite-library-search {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 74px;
  padding: 8px 9px 8px 25px;
  overflow: hidden;
  border: 1px solid rgba(87, 220, 164, .5);
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(18, 72, 62, .42), rgba(8, 25, 32, .94) 36%, rgba(5, 16, 24, .97));
  box-shadow: 0 18px 44px rgba(0, 0, 0, .24), 0 0 24px rgba(69, 211, 163, .08), inset 0 1px 0 rgba(224, 255, 244, .08), inset 0 0 0 1px rgba(75, 195, 151, .05);
  transition: transform .24s ease, border-color .24s ease, background .24s ease, box-shadow .24s ease;
}

.favorite-library-search::before {
  content: "";
  position: absolute;
  inset: -92% -24%;
  z-index: -1;
  background: linear-gradient(100deg, transparent 30%, rgba(66, 195, 228, .025) 42%, rgba(91, 222, 164, .105) 51%, transparent 64%);
  opacity: .62;
  animation: favorite-search-flow 9.2s linear infinite;
  pointer-events: none;
}

.favorite-library-search:hover,
.favorite-library-search:focus-within {
  transform: translateY(-1px);
  border-color: rgba(121, 235, 190, .72);
  background: linear-gradient(90deg, rgba(22, 88, 74, .48), rgba(8, 28, 35, .96) 36%, rgba(5, 18, 26, .98));
  box-shadow: 0 20px 48px rgba(0, 0, 0, .27), 0 0 0 3px rgba(88, 214, 141, .045), 0 0 30px rgba(75, 214, 164, .1), inset 0 1px 0 rgba(230, 255, 246, .1);
}

.favorite-library-search input {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  min-height: 54px;
  padding: 0;
  border: 0;
  outline: 0;
  color: rgba(242, 250, 247, .96);
  background: transparent;
  font-size: 17px;
  font-weight: 560;
  letter-spacing: 0;
}

.favorite-library-search input::placeholder {
  color: rgba(159, 178, 185, .72);
}

.favorite-library-search > .favorite-library-search-action {
  display: grid;
  place-items: center;
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  padding: 0;
  border: 1px solid rgba(112, 229, 183, .42);
  border-radius: 50%;
  color: rgba(226, 255, 243, .94);
  background: linear-gradient(145deg, rgba(49, 139, 102, .42), rgba(26, 91, 75, .28));
  box-shadow: 0 9px 22px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255, 255, 255, .1);
  cursor: pointer;
  transition: transform .22s ease, color .22s ease, border-color .22s ease, background .22s ease, box-shadow .22s ease;
}

.favorite-library-search > .favorite-library-search-action:hover,
.favorite-library-search > .favorite-library-search-action:focus-visible,
.favorite-library-search > .favorite-library-search-action.active {
  transform: scale(1.045);
  color: #f2fff9;
  border-color: rgba(142, 243, 202, .68);
  background: linear-gradient(145deg, rgba(58, 158, 116, .58), rgba(30, 105, 84, .42));
  box-shadow: 0 10px 24px rgba(0, 0, 0, .22), 0 0 20px rgba(88, 214, 141, .13), inset 0 1px 0 rgba(255, 255, 255, .12);
}

.favorite-library-search > .favorite-library-search-action svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.favorite-library-content.is-recommending .favorite-library-toolbar {
  display: none;
}

.favorite-library-content.is-recommending .favorite-library-grid::before {
  content: "热门推荐";
  grid-column: 1 / -1;
  display: block;
  margin: 2px 0 4px;
  color: rgba(239, 252, 247, .96);
  font-size: 22px;
  font-weight: 820;
  line-height: 1.2;
  letter-spacing: 0;
}

@media (max-width: 720px) {
  .favorite-library-search-row {
    padding: 5px 0 10px;
  }

  .favorite-library-search {
    min-height: 64px;
    padding: 6px 7px 6px 18px;
  }

  .favorite-library-search input {
    min-height: 48px;
    font-size: 15px;
  }

  .favorite-library-search > .favorite-library-search-action {
    flex-basis: 48px;
    width: 48px;
    height: 48px;
  }
}
/* Keep the hero title clear while concentrating the aurora on the right. */
@media (min-width: 761px) {
  .command-hero .hero-aurora,
  body[data-active-group="tutorial-knowledge"] .command-hero .hero-aurora {
    top: 48%;
    right: -7%;
    left: auto;
    width: clamp(720px, 62vw, 1040px);
    height: clamp(270px, 24vw, 380px);
    transform: translate3d(0, -55%, 0);
    border-radius: 50%;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, transparent 12%, rgba(0, 0, 0, .08) 22%, rgba(0, 0, 0, .34) 34%, #000 50%, #000 84%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, transparent 12%, rgba(0, 0, 0, .08) 22%, rgba(0, 0, 0, .34) 34%, #000 50%, #000 84%, transparent 100%);
  }
}
/* 20260718 make the sidebar AI mode entry respond like Favorites. */
.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus-visible {
  transform: translateY(-3px) scale(1.01);
  border-color: rgba(88, 214, 141, .42);
  background:
    radial-gradient(circle at 28% 18%, rgba(88, 214, 141, .14), transparent 40%),
    linear-gradient(145deg, rgba(17, 28, 39, .95), rgba(13, 23, 33, .92));
  box-shadow:
    var(--shadow),
    0 0 0 3px rgba(88, 214, 141, .04),
    0 0 28px rgba(71, 199, 232, .08),
    inset 0 1px 0 rgba(255, 255, 255, .06);
  outline: 0;
}

.stats-sidebar .stats-ai-mode-button:hover::before,
.stats-sidebar .stats-ai-mode-button:focus-visible::before {
  opacity: .72;
}

.stats-sidebar .stats-ai-mode-button:hover::after,
.stats-sidebar .stats-ai-mode-button:focus-visible::after {
  opacity: .5;
}

.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem {
  transform: scale(1.08) rotate(-3deg);
  border-color: rgba(151, 246, 211, .52);
  box-shadow:
    inset 0 0 0 5px rgba(88, 214, 141, .05),
    0 0 24px rgba(71, 199, 232, .15);
}

.stats-sidebar .stats-ai-mode-button:active {
  transform: translateY(-1px) scale(.99);
}
/* 20260718 keep chat identity and time visibly anchored above each bubble. */
body.ai-chat-mode.ai-model-chat .ai-chat-message-row {
  padding-top: 31px;
  overflow: visible;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row .ai-chat-message {
  position: relative;
  overflow: visible !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-meta {
  position: absolute;
  z-index: 4;
  top: -25px;
  right: auto;
  bottom: auto;
  left: 3px;
  display: flex !important;
  align-items: center;
  gap: 9px;
  width: max-content;
  max-width: none;
  min-height: 17px;
  margin: 0;
  opacity: 1 !important;
  visibility: visible !important;
  white-space: nowrap;
  pointer-events: none;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-user .ai-chat-message-meta {
  right: 3px;
  left: auto;
  justify-content: flex-end;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-role,
body.ai-chat-mode.ai-model-chat .ai-chat-message-meta time {
  display: inline-block !important;
  opacity: 1 !important;
  visibility: visible !important;
  white-space: nowrap;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-role {
  color: rgba(184, 239, 222, .92);
  font-size: 12px;
  font-weight: 760;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-meta time {
  color: rgba(188, 204, 214, .64);
  font-size: 11px;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-message-row {
    padding-top: 29px;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-message-meta {
    top: -23px;
  }
}
/* 20260718 final shared shell for Image 2 and Kling V3 workspaces. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
  position: fixed !important;
  inset: 64px 16px 12px !important;
  left: 16px !important;
  right: 16px !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  transform: none !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-workspace {
  display: grid !important;
  grid-template-columns: 328px minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history {
  min-width: 0 !important;
  padding: 20px 16px 18px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-head {
  min-height: 42px !important;
  padding: 0 4px 14px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-list {
  gap: 11px !important;
  padding: 2px 4px 14px 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-main,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  min-width: 0 !important;
  min-height: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-model-context {
  min-height: 54px !important;
  padding: 12px 22px 11px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  padding: 14px 18px 16px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  display: grid !important;
  grid-template-rows: auto minmax(240px, 1fr) minmax(156px, auto) auto !important;
  gap: 12px !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar {
  min-width: 0 !important;
  min-height: 50px !important;
  padding: 10px 16px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar > div {
  align-items: center !important;
  gap: 12px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar span,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar strong,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar small {
  line-height: 1.25 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar strong {
  font-size: 17px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  min-width: 0 !important;
  min-height: 240px !important;
  height: 100% !important;
  padding: 18px !important;
  overflow: auto !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  min-width: 0 !important;
  min-height: 156px !important;
  max-height: 224px !important;
  padding: 14px 16px 15px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  min-width: 0 !important;
  margin-bottom: 12px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) > div {
  display: flex !important;
  align-items: baseline !important;
  gap: 12px !important;
  min-width: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) strong,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) span {
  line-height: 1.35 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  grid-template-columns: minmax(300px, 1.45fr) minmax(132px, .55fr) minmax(132px, .55fr) minmax(210px, auto) !important;
  align-items: end !important;
  gap: 12px 14px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-block,
body.ai-chat-mode.ai-model-video .ai-video-settings > label {
  min-width: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  min-width: 210px !important;
  align-self: end !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings {
  grid-template-columns: repeat(4, minmax(138px, 1fr)) !important;
  gap: 11px 14px !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  margin-bottom: 12px !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions {
  margin-top: 12px !important;
  padding-top: 12px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 68px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked :is(.ai-search-layout, .search-control, .search-box-row, .search-box) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-item,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-item {
  grid-template-columns: 100px minmax(0, 1fr) !important;
  gap: 12px !important;
  min-height: 92px !important;
  padding: 10px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-thumb,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-thumb {
  width: 100px !important;
  height: 70px !important;
}

@media (max-width: 1180px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 276px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history {
    padding-inline: 13px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-item,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-item {
    grid-template-columns: 82px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-thumb,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-thumb {
    width: 82px !important;
    height: 60px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(260px, 1fr) repeat(2, minmax(116px, .46fr)) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-column: 1 / -1 !important;
    min-width: 0 !important;
    justify-content: flex-end !important;
  }

  body.ai-chat-mode.ai-model-video .ai-video-settings {
    grid-template-columns: repeat(2, minmax(150px, 1fr)) !important;
  }
}

@media (max-height: 820px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
    inset: 54px 12px 8px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: auto minmax(180px, 1fr) minmax(144px, auto) auto !important;
    gap: 10px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
    min-height: 180px !important;
    padding: 14px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 144px !important;
    max-height: 214px !important;
    padding: 12px 14px 13px !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
    inset: 56px 8px 10px !important;
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history {
    display: none !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-model-context {
    padding-inline: 14px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
    padding: 10px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: auto minmax(180px, 1fr) auto auto !important;
    gap: 9px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
    min-height: 180px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 0 !important;
    max-height: 230px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) > div {
    display: block !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) span {
    display: block !important;
    margin-top: 3px !important;
    white-space: normal !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls,
  body.ai-chat-mode.ai-model-video .ai-video-settings {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-model-video .ai-video-motion,
  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-column: auto !important;
  }
}
/* 20260718 keep generation settings above the bottom composer. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  order: 0 !important;
  margin-top: 0 !important;
}

/* 20260718 use the exact GPT frame for every model workspace. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
  inset: auto !important;
  left: var(--ai-chat-scrolled-left, 16px) !important;
  right: var(--ai-chat-scrolled-right, 16px) !important;
  top: var(--ai-chat-scrolled-top, 82px) !important;
  bottom: 16px !important;
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  transform: none !important;
}

/* Give image and video models the same calm two-column rhythm as GPT. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-workspace {
  grid-template-columns: 328px minmax(0, 1fr) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history {
  padding: 20px 16px 18px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-model-context {
  min-height: 55px !important;
  padding: 13px 18px 10px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  padding: 16px 20px 18px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  grid-template-rows: auto minmax(260px, 1fr) minmax(154px, 190px) auto !important;
  gap: 14px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  min-height: 260px !important;
  padding: 20px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  min-height: 154px !important;
  max-height: 190px !important;
  padding: 14px 18px 16px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
  min-height: 76px !important;
}

@media (max-height: 820px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
    left: var(--ai-chat-scrolled-left, 12px) !important;
    right: var(--ai-chat-scrolled-right, 12px) !important;
    top: var(--ai-chat-scrolled-top, 54px) !important;
    bottom: 8px !important;
    width: auto !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: auto minmax(190px, 1fr) minmax(136px, 172px) auto !important;
    gap: 10px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
    min-height: 190px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 136px !important;
    max-height: 172px !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
    left: 8px !important;
    right: 8px !important;
    top: 56px !important;
    bottom: 10px !important;
    width: auto !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: auto minmax(180px, 1fr) auto auto !important;
    gap: 9px !important;
  }
}

/* 20260718 reserve the same viewport gutter for every AI model. */
html {
  scrollbar-gutter: stable;
}

/* 20260718 lock every AI workspace to the same measured content width. */
body.ai-chat-mode.ai-chat-scrolled .ai-chat-window {
  right: auto !important;
  width: var(--ai-chat-scrolled-width, calc(100vw - 32px)) !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-chat-scrolled .ai-chat-window {
    left: 8px !important;
    right: auto !important;
    width: calc(100vw - 16px) !important;
  }
}
/* 20260718 make image and video workspaces visibly match the GPT frame. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled .ai-chat-workspace {
    grid-template-columns: 328px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled .ai-chat-history {
    width: 328px !important;
    min-width: 328px !important;
  }
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-main {
  display: grid !important;
  grid-template-rows: 55px minmax(0, 1fr) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-model-context {
  min-height: 55px !important;
  padding: 12px 22px 10px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
  padding: 16px 22px 18px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  display: grid !important;
  grid-template-rows: 40px minmax(250px, 1fr) 224px 104px !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 40px !important;
  padding: 0 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar > div {
  display: flex !important;
  align-items: baseline !important;
  gap: 10px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar span {
  color: rgba(105, 222, 206, .72) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar strong {
  color: rgba(241, 248, 250, .95) !important;
  font-size: 18px !important;
  font-weight: 760 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar small {
  padding: 5px 10px !important;
  border: 1px solid rgba(135, 211, 203, .14) !important;
  border-radius: 999px !important;
  background: rgba(24, 83, 81, .14) !important;
  color: rgba(198, 232, 228, .72) !important;
  white-space: nowrap !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  min-width: 0 !important;
  min-height: 250px !important;
  padding: 18px !important;
  overflow: hidden !important;
  border: 1px solid rgba(142, 166, 191, .15) !important;
  border-radius: 12px !important;
  background: radial-gradient(circle at 50% 38%, rgba(45, 117, 112, .095), transparent 44%), linear-gradient(180deg, rgba(8, 15, 25, .7), rgba(5, 10, 18, .82)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035) !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage {
  display: grid !important;
  place-items: center !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-video-stage {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 16px !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-video-stage.has-assets {
  grid-template-columns: minmax(0, 1fr) 320px !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-asset-rail,
body.ai-chat-mode.ai-model-video .ai-generation-asset-rail :is(.ai-video-upload-card, .ai-video-frame-pair) {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-asset-rail .ai-video-upload-card {
  align-content: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-video .ai-video-frame-pair {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: 1fr auto 1fr !important;
  gap: 8px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-output,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-result,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-empty-stage {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  min-width: 0 !important;
  min-height: 224px !important;
  max-height: 224px !important;
  margin: 0 !important;
  padding: 14px 16px !important;
  overflow: hidden !important;
  border: 1px solid rgba(142, 166, 191, .14) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, rgba(13, 23, 34, .78), rgba(8, 16, 26, .86)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .03) !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-settings {
  display: grid !important;
  grid-template-rows: 28px minmax(0, 1fr) !important;
  gap: 10px !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-settings {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 172px !important;
  grid-template-rows: 28px 36px minmax(0, 1fr) !important;
  gap: 9px 12px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 28px !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-section-head {
  grid-column: 1 / -1 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) > div {
  display: flex !important;
  align-items: center !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) > div > span {
  display: none !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) strong {
  color: rgba(239, 247, 249, .94) !important;
  font-size: 15px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-params-head, .ai-studio-section-head) em {
  padding: 4px 8px !important;
  border-radius: 999px !important;
  background: rgba(29, 91, 86, .17) !important;
  color: rgba(166, 222, 214, .72) !important;
  font-size: 10px !important;
  font-style: normal !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  display: grid !important;
  grid-template-columns: minmax(420px, 1.65fr) minmax(160px, .62fr) minmax(160px, .62fr) minmax(230px, .78fr) !important;
  align-items: stretch !important;
  gap: 10px !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-block {
  display: grid !important;
  align-content: center !important;
  min-width: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid rgba(142, 166, 191, .11) !important;
  border-radius: 9px !important;
  background: rgba(255, 255, 255, .024) !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-label {
  margin-bottom: 8px !important;
  color: rgba(193, 210, 220, .7) !important;
  font-size: 11px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-ratio-row {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 7px !important;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-chip, .ai-image-select) {
  min-height: 38px !important;
  border-radius: 8px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  display: grid !important;
  grid-template-columns: 1fr 1.18fr !important;
  align-items: stretch !important;
  gap: 9px !important;
  min-width: 0 !important;
  padding: 10px 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions > button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 42px !important;
  margin: 0 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  display: grid !important;
  grid-column: 1 / -1 !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tab {
  min-width: 0 !important;
  min-height: 36px !important;
  padding: 7px 10px !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings {
  display: grid !important;
  grid-column: 1 !important;
  grid-row: 3 !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 8px !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label {
  display: grid !important;
  grid-template-rows: auto 36px !important;
  align-content: center !important;
  min-width: 0 !important;
  padding: 8px 9px !important;
  border: 1px solid rgba(142, 166, 191, .1) !important;
  border-radius: 9px !important;
  background: rgba(255, 255, 255, .023) !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label > span {
  margin-bottom: 6px !important;
  color: rgba(193, 210, 220, .68) !important;
  font-size: 10px !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings :is(select, input[type='range']) {
  width: 100% !important;
  min-width: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-video-motion {
  grid-column: auto !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions {
  display: flex !important;
  grid-column: 2 !important;
  grid-row: 3 !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > span {
  display: none !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  margin: 0 !important;
  align-self: stretch !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
  min-width: 0 !important;
  min-height: 104px !important;
  height: 104px !important;
  overflow: visible !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-shell {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  min-height: 104px !important;
  height: 104px !important;
  padding: 15px 16px 15px 20px !important;
  border-radius: 12px !important;
  box-sizing: border-box !important;
}

@media (max-width: 1700px) and (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled .ai-chat-workspace {
    grid-template-columns: 300px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled .ai-chat-history {
    width: 300px !important;
    min-width: 300px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: 38px minmax(220px, 1fr) 252px 96px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 252px !important;
    max-height: 252px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(0, 1fr) minmax(150px, .55fr) minmax(150px, .55fr) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-block:first-child {
    grid-column: 1 / -1 !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-template-columns: 1fr 1.2fr !important;
    padding: 0 !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-video-stage.has-assets {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 290px) !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
    min-height: 96px !important;
    height: 96px !important;
  }
}

@media (max-height: 900px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: 34px minmax(180px, 1fr) 214px 90px !important;
    gap: 9px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 214px !important;
    max-height: 214px !important;
    padding-block: 11px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
    min-height: 90px !important;
    height: 90px !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
    padding: 10px !important;
    overflow-y: auto !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    display: flex !important;
    flex-direction: column !important;
    gap: 9px !important;
    height: auto !important;
    overflow: visible !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    flex: 0 0 auto !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-video-stage.has-assets,
  body.ai-chat-mode.ai-model-image .ai-image-controls,
  body.ai-chat-mode.ai-model-video .ai-video-settings {
    grid-template-columns: 1fr !important;
  }

  body.ai-chat-mode.ai-model-video .ai-studio-actions {
    width: 100% !important;
  }
}

/* 20260718 keep the generation prompt fully inside the shared workspace grid. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .ai-search-layout,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-control,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box-row {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-control {
  padding: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}
/* 20260719 final shared frame and studio rhythm for GPT, Image 2 and Kling V3. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-window {
    position: fixed !important;
    left: var(--ai-chat-scrolled-left, 16px) !important;
    right: var(--ai-chat-scrolled-right, 16px) !important;
    top: var(--ai-chat-scrolled-top, 82px) !important;
    bottom: var(--ai-chat-scrolled-bottom, 112px) !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    display: grid !important;
    grid-template-columns: 328px minmax(0, 1fr) !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 328px !important;
    min-width: 328px !important;
    max-width: 328px !important;
    box-sizing: border-box !important;
  }
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-main {
  display: grid !important;
  grid-template-rows: 55px minmax(0, 1fr) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 16px 22px 18px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  display: grid !important;
  grid-template-rows: 40px minmax(250px, 1fr) 224px 104px !important;
  gap: 12px !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar {
  min-height: 40px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  min-height: 250px !important;
  padding: 18px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  min-height: 224px !important;
  max-height: 224px !important;
  padding: 14px 16px !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-settings {
  display: grid !important;
  grid-template-rows: 28px minmax(0, 1fr) !important;
  gap: 10px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  display: grid !important;
  grid-template-columns: minmax(360px, 1.45fr) minmax(150px, .62fr) minmax(150px, .62fr) minmax(210px, .78fr) !important;
  align-items: stretch !important;
  gap: 10px !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-block,
body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  min-width: 0 !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  display: grid !important;
  grid-template-columns: 1fr 1.15fr !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 10px 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-settings {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 176px !important;
  grid-template-rows: 28px 38px minmax(0, 1fr) !important;
  gap: 9px 12px !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-section-head,
body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  grid-column: 1 / -1 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings {
  display: grid !important;
  grid-column: 1 !important;
  grid-row: 3 !important;
  grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)) !important;
  align-items: stretch !important;
  align-content: stretch !important;
  gap: 8px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow-y: auto !important;
  padding-right: 3px !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label {
  display: grid !important;
  grid-template-rows: auto 38px !important;
  align-content: center !important;
  min-width: 0 !important;
  min-height: 68px !important;
  padding: 9px 10px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label > span {
  margin-bottom: 7px !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions {
  display: flex !important;
  grid-column: 2 !important;
  grid-row: 3 !important;
  align-items: stretch !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > button {
  width: 100% !important;
  min-height: 68px !important;
  align-self: stretch !important;
  white-space: nowrap !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  min-height: 104px !important;
  height: 104px !important;
}

@media (max-width: 1700px) and (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 300px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(0, 1fr) minmax(150px, .55fr) minmax(150px, .55fr) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-block:first-child {
    grid-column: 1 / -1 !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-template-columns: 1fr 1.15fr !important;
  }
}

@media (max-height: 900px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: 34px minmax(176px, 1fr) 214px 90px !important;
    gap: 9px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
    min-height: 176px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 214px !important;
    max-height: 214px !important;
    padding-block: 11px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
    min-height: 90px !important;
    height: 90px !important;
  }
}
/* 20260719 authoritative unified AI workspace frame and studio layout v12. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-window {
    position: fixed !important;
    left: var(--ai-chat-scrolled-left, 16px) !important;
    right: var(--ai-chat-scrolled-right, 16px) !important;
    top: var(--ai-chat-scrolled-top, 82px) !important;
    bottom: var(--ai-chat-scrolled-bottom, 16px) !important;
    width: auto !important;
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    display: grid !important;
    grid-template-columns: 328px minmax(0, 1fr) !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 328px !important;
    min-width: 328px !important;
    max-width: 328px !important;
    min-height: 0 !important;
    box-sizing: border-box !important;
  }
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-main {
  display: grid !important;
  grid-template-rows: 55px minmax(0, 1fr) !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 18px 22px 20px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: 44px minmax(260px, 1fr) 218px 112px !important;
  gap: 12px !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-generation-toolbar, .ai-generation-stage, .ai-generation-settings, .ai-generation-composer-mount) {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar {
  min-height: 44px !important;
  padding: 0 4px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  min-height: 260px !important;
  padding: 20px !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  min-height: 218px !important;
  max-height: 218px !important;
  padding: 14px 16px !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-settings {
  display: grid !important;
  grid-template-rows: 30px minmax(0, 1fr) !important;
  gap: 10px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  display: grid !important;
  grid-template-columns: minmax(360px, 1.55fr) minmax(170px, .62fr) minmax(170px, .62fr) minmax(220px, .8fr) !important;
  align-items: stretch !important;
  gap: 10px !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-block,
body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 12px !important;
  border: 1px solid rgba(145, 172, 194, .12) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, .026) !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-block {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-ratio-row {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: 1fr 1fr !important;
  align-items: stretch !important;
  gap: 8px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions > button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-settings {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 188px !important;
  grid-template-rows: 30px 42px minmax(0, 1fr) !important;
  gap: 9px 12px !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-section-head,
body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  grid-column: 1 / -1 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tab {
  min-width: 0 !important;
  min-height: 42px !important;
  padding: 8px 12px !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings {
  display: grid !important;
  grid-column: 1 !important;
  grid-row: 3 !important;
  grid-template-columns: repeat(auto-fit, minmax(148px, 1fr)) !important;
  align-items: stretch !important;
  align-content: stretch !important;
  gap: 8px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden auto !important;
  padding: 0 3px 0 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label {
  display: grid !important;
  grid-template-rows: auto 38px !important;
  align-content: center !important;
  min-width: 0 !important;
  min-height: 78px !important;
  padding: 9px 10px !important;
  border: 1px solid rgba(145, 172, 194, .12) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, .026) !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label > span {
  margin-bottom: 7px !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions {
  display: flex !important;
  grid-column: 2 !important;
  grid-row: 3 !important;
  align-items: stretch !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > span {
  display: none !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > button {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 78px !important;
  align-self: stretch !important;
  margin: 0 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  min-height: 112px !important;
  height: 112px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  padding: 16px 18px 16px 22px !important;
  border-radius: 10px !important;
}

@media (max-width: 1700px) and (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 300px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: 42px minmax(230px, 1fr) 248px 104px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 248px !important;
    max-height: 248px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(0, 1fr) minmax(145px, .55fr) minmax(145px, .55fr) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-block:first-child {
    grid-column: 1 / -1 !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-template-columns: 1fr 1.15fr !important;
    grid-template-rows: 1fr !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
    min-height: 104px !important;
    height: 104px !important;
  }
}

@media (max-height: 900px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: 36px minmax(170px, 1fr) 210px 88px !important;
    gap: 9px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
    min-height: 170px !important;
    padding: 14px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 210px !important;
    max-height: 210px !important;
    padding-block: 10px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
    min-height: 88px !important;
    height: 88px !important;
  }
}
/* 20260719 full-width unified AI workspace and orderly generation studios v13. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-window {
    left: var(--ai-chat-scrolled-left, 16px) !important;
    right: var(--ai-chat-scrolled-right, 16px) !important;
    width: auto !important;
    max-width: none !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 328px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 328px !important;
    min-width: 328px !important;
    max-width: 328px !important;
  }
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  padding: 16px 18px 18px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  grid-template-rows: 44px minmax(240px, 1fr) 206px 104px !important;
  gap: 10px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  min-height: 240px !important;
  padding: 18px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  min-height: 206px !important;
  max-height: 206px !important;
  padding: 13px 15px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  grid-template-columns: minmax(390px, 1.55fr) minmax(170px, .62fr) minmax(170px, .62fr) minmax(230px, .82fr) !important;
  gap: 10px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-block,
body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  padding: 11px 12px !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-settings {
  grid-template-columns: minmax(0, 1fr) 198px !important;
  grid-template-rows: 28px 40px minmax(0, 1fr) !important;
  gap: 8px 10px !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  gap: 7px !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tab {
  min-height: 40px !important;
  padding: 7px 12px !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-template-columns: none !important;
  grid-auto-columns: minmax(132px, 1fr) !important;
  gap: 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 0 2px 2px 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label {
  min-height: 76px !important;
  padding: 8px 9px !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > button {
  min-height: 76px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  min-height: 104px !important;
  height: 104px !important;
}

@media (max-width: 1700px) and (min-width: 1181px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 300px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(330px, 1.4fr) minmax(145px, .62fr) minmax(145px, .62fr) minmax(210px, .8fr) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-block:first-child {
    grid-column: auto !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-template-columns: 1fr !important;
    grid-template-rows: 1fr 1fr !important;
  }
}

@media (max-width: 1180px) and (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 260px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 260px !important;
    min-width: 260px !important;
    max-width: 260px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: 42px minmax(210px, 1fr) 246px 96px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 246px !important;
    max-height: 246px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(0, 1.25fr) minmax(145px, .7fr) minmax(145px, .7fr) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-block:first-child {
    grid-column: 1 / -1 !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-template-columns: 1fr 1.15fr !important;
    grid-template-rows: 1fr !important;
  }
}
/* 20260719 definitive shared AI workspace and generation layout v14. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-window {
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    max-width: none !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 328px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 328px !important;
    min-width: 328px !important;
    max-width: 328px !important;
  }
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-main {
  grid-template-rows: 55px minmax(0, 1fr) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  width: 100% !important;
  height: 100% !important;
  padding: 12px 28px 18px !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: 44px minmax(220px, 1fr) 188px 96px !important;
  gap: 10px !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-generation-toolbar, .ai-generation-stage, .ai-generation-settings, .ai-generation-composer-mount) {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  min-height: 220px !important;
  padding: 16px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  min-height: 188px !important;
  max-height: 188px !important;
  padding: 12px 14px !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-settings {
  display: grid !important;
  grid-template-rows: 28px minmax(0, 1fr) !important;
  gap: 9px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  display: grid !important;
  grid-template-columns: minmax(420px, 1.55fr) minmax(178px, .64fr) minmax(168px, .6fr) minmax(218px, .76fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 10px !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-block,
body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  align-self: stretch !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-block {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-ratio-row {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 7px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  gap: 8px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions > button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-settings {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 214px !important;
  grid-template-rows: 28px 38px minmax(0, 1fr) !important;
  gap: 8px 10px !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-section-head,
body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  grid-column: 1 / -1 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tabs {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 7px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-tab {
  min-width: 0 !important;
  min-height: 38px !important;
  padding: 6px 10px !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings {
  display: grid !important;
  grid-column: 1 !important;
  grid-row: 3 !important;
  grid-auto-flow: column !important;
  grid-template-columns: none !important;
  grid-auto-columns: minmax(124px, 1fr) !important;
  align-items: stretch !important;
  gap: 7px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 2px 2px 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label {
  display: grid !important;
  grid-template-rows: auto minmax(34px, 1fr) !important;
  align-content: center !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  padding: 7px 9px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label > span {
  margin-bottom: 5px !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions {
  display: flex !important;
  grid-column: 2 !important;
  grid-row: 3 !important;
  align-items: stretch !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > span {
  display: none !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > button {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  align-self: stretch !important;
  margin: 0 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  min-height: 96px !important;
  height: 96px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  padding: 14px 18px 14px 20px !important;
}

@media (max-width: 1700px) and (min-width: 1181px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 300px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
    padding-inline: 22px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: 42px minmax(210px, 1fr) 198px 92px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 198px !important;
    max-height: 198px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(360px, 1.45fr) minmax(150px, .62fr) minmax(145px, .58fr) minmax(190px, .75fr) !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-settings {
    grid-template-columns: minmax(0, 1fr) 190px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
    min-height: 92px !important;
    height: 92px !important;
  }
}

@media (max-width: 1180px) and (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-workspace {
    grid-template-columns: 250px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-history {
    width: 250px !important;
    min-width: 250px !important;
    max-width: 250px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
    padding: 10px 16px 14px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-studio {
    grid-template-rows: 40px minmax(190px, 1fr) 224px 88px !important;
    gap: 8px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
    min-height: 224px !important;
    max-height: 224px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(0, 1.25fr) minmax(135px, .72fr) minmax(135px, .72fr) !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-block:first-child {
    grid-column: 1 / -1 !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-column: 3 !important;
    grid-row: 2 !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-settings {
    grid-template-columns: minmax(0, 1fr) 168px !important;
  }

  body.ai-chat-mode.ai-model-video .ai-video-settings {
    grid-auto-columns: minmax(118px, 1fr) !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
    min-height: 88px !important;
    height: 88px !important;
  }
}
/* 20260719 full-width unified model workspace v15. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled .ai-chat-window {
    left: 16px !important;
    right: 16px !important;
    width: auto !important;
    max-width: none !important;
  }

  body.ai-chat-mode.ai-chat-scrolled .ai-chat-workspace {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: 328px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-chat-scrolled .ai-chat-history {
    width: 328px !important;
    min-width: 328px !important;
    max-width: 328px !important;
  }
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-chat-main, .ai-chat-studio) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-studio {
  padding: 12px 22px 18px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-shell.ai-generation-studio {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: 44px minmax(210px, 1fr) 188px 96px !important;
  gap: 10px !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-generation-toolbar, .ai-generation-stage, .ai-generation-settings, .ai-generation-composer-mount) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar {
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 4px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-stage {
  height: 100% !important;
  min-height: 210px !important;
  padding: 14px !important;
  overflow: hidden !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings {
  height: 188px !important;
  min-height: 188px !important;
  max-height: 188px !important;
  padding: 12px 14px !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-settings {
  display: grid !important;
  grid-template: 28px minmax(0, 1fr) / minmax(0, 1fr) !important;
  gap: 9px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  display: grid !important;
  grid-template-columns: minmax(420px, 1.65fr) minmax(176px, .62fr) minmax(176px, .62fr) minmax(218px, .76fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 10px !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-control-block, .ai-image-control-actions) {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  align-self: stretch !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  display: grid !important;
  grid-template: repeat(2, minmax(0, 1fr)) / minmax(0, 1fr) !important;
  gap: 8px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions > button {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-settings {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 204px !important;
  grid-template-rows: 28px 38px minmax(0, 1fr) !important;
  gap: 8px 10px !important;
}

body.ai-chat-mode.ai-model-video :is(.ai-studio-section-head, .ai-studio-tabs) {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings {
  display: grid !important;
  grid-column: 1 !important;
  grid-row: 3 !important;
  grid-auto-flow: column !important;
  grid-template-columns: none !important;
  grid-auto-columns: minmax(130px, 1fr) !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

body.ai-chat-mode.ai-model-video .ai-video-settings > label {
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions {
  display: flex !important;
  grid-column: 2 !important;
  grid-row: 3 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-studio-actions > button {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked :is(.ai-search-layout, .search-control, .search-box-row, .search-box) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  height: 96px !important;
  min-height: 96px !important;
}

@media (max-width: 1700px) and (min-width: 1181px) {
  body.ai-chat-mode.ai-chat-scrolled .ai-chat-workspace { grid-template-columns: 300px minmax(0, 1fr) !important; }
  body.ai-chat-mode.ai-chat-scrolled .ai-chat-history { width: 300px !important; min-width: 300px !important; max-width: 300px !important; }
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-shell.ai-generation-studio { grid-template-rows: 42px minmax(200px, 1fr) 198px 92px !important; }
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings { height: 198px !important; min-height: 198px !important; max-height: 198px !important; }
  body.ai-chat-mode.ai-model-image .ai-image-controls { grid-template-columns: minmax(340px, 1.48fr) minmax(150px, .64fr) minmax(150px, .64fr) minmax(190px, .78fr) !important; }
  body.ai-chat-mode.ai-model-video .ai-generation-settings { grid-template-columns: minmax(0, 1fr) 188px !important; }
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box { height: 92px !important; min-height: 92px !important; }
}

@media (max-width: 1180px) and (min-width: 761px) {
  body.ai-chat-mode.ai-chat-scrolled .ai-chat-workspace { grid-template-columns: 250px minmax(0, 1fr) !important; }
  body.ai-chat-mode.ai-chat-scrolled .ai-chat-history { width: 250px !important; min-width: 250px !important; max-width: 250px !important; }
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-shell.ai-generation-studio { grid-template-rows: 40px minmax(180px, 1fr) 226px 88px !important; }
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-settings { height: 226px !important; min-height: 226px !important; max-height: 226px !important; }
  body.ai-chat-mode.ai-model-image .ai-image-controls { grid-template-columns: minmax(0, 1.25fr) minmax(135px, .72fr) minmax(135px, .72fr) !important; grid-template-rows: repeat(2, minmax(0, 1fr)) !important; }
  body.ai-chat-mode.ai-model-image .ai-image-control-block:first-child { grid-column: 1 / -1 !important; }
  body.ai-chat-mode.ai-model-image .ai-image-control-actions { grid-column: 3 !important; grid-row: 2 !important; }
  body.ai-chat-mode.ai-model-video .ai-generation-settings { grid-template-columns: minmax(0, 1fr) 164px !important; }
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box { height: 88px !important; min-height: 88px !important; }
}
/* 20260719 show only the final user timestamp in each three-minute conversation group. */
body.ai-chat-mode.ai-model-chat .ai-chat-message-user .ai-chat-message-meta time {
  order: 1;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-user .ai-chat-message-role {
  order: 2;
}
/* 20260719 proportionally enlarge the desktop home overview without changing its layout. */
@media (min-width: 981px) {
  body[data-active-group="home-overview"] #home-overview {
    zoom: 1.11;
  }
}
/* Hide the global brand bar while a focused workspace is open. */
body.favorite-library-open .app-header,
body.ai-chat-mode .app-header {
  display: none !important;
}

body.favorite-library-open .favorite-library {
  min-height: 100vh;
}

body.ai-chat-mode.ai-chat-scrolled .ai-chat-window {
  top: 16px !important;
}
/* Remove every visual frame around the AI mode emblem. */
.stats-sidebar .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.stats-sidebar .stats-ai-mode-emblem::before,
.stats-sidebar .stats-ai-mode-emblem::after {
  content: none !important;
  display: none !important;
}
/* Keep the entire AI mode shortcut frameless in every interaction state. */
.stats-sidebar .stats-ai-mode-button,
.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus,
.stats-sidebar .stats-ai-mode-button:focus-visible,
.stats-sidebar .stats-ai-mode-button:active,
.stats-sidebar .stats-ai-mode-button.is-ai-mode {
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.stats-sidebar .stats-ai-mode-button::before,
.stats-sidebar .stats-ai-mode-button::after {
  -webkit-mask-image: radial-gradient(ellipse at center, #000 0 42%, rgba(0, 0, 0, .72) 60%, transparent 82%) !important;
  mask-image: radial-gradient(ellipse at center, #000 0 42%, rgba(0, 0, 0, .72) 60%, transparent 82%) !important;
}

/* 20260719 final removal of every rectangular AI shortcut layer. */
.stats-sidebar .stats-ai-entry {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

.stats-sidebar .stats-ai-mode-button::before,
.stats-sidebar .stats-ai-mode-button::after {
  content: none !important;
  display: none !important;
  background: none !important;
  box-shadow: none !important;
  animation: none !important;
  filter: none !important;
  opacity: 0 !important;
}

.stats-sidebar .stats-ai-mode-button {
  overflow: visible !important;
  isolation: auto !important;
}

.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem {
  filter: drop-shadow(0 0 10px rgba(88, 214, 141, .22)) drop-shadow(0 0 16px rgba(71, 199, 232, .1));
}

.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-label,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-label {
  color: #fff !important;
  text-shadow: 0 0 14px rgba(88, 214, 141, .16);
}
/* 20260719 refine the Favorites heading into a compact centered lockup. */
.favorite-library-head {
  min-height: 88px;
  margin-bottom: 22px;
}

.favorite-library-title {
  grid-template-columns: 54px minmax(0, auto);
  gap: 16px;
  width: fit-content;
  margin-inline: auto;
  padding: 4px 76px 14px;
}

.favorite-library-title::after {
  width: 104px;
  height: 1px;
  opacity: .78;
}

.favorite-library-mark {
  width: 54px;
  height: 54px;
  flex-basis: 54px;
  border-radius: 13px;
  font-size: 24px;
  transform: none;
}

.favorite-library-title > div {
  align-items: center;
  justify-content: center;
}

.favorite-library-title h1 {
  font-size: clamp(40px, 3.15vw, 50px);
  font-weight: 880;
  line-height: 1;
  white-space: nowrap;
  text-align: center;
}

.favorite-library-title p {
  margin-top: 8px;
  font-size: 14px;
  font-weight: 740;
  line-height: 1.1;
  text-align: center;
}

@media (max-width: 680px) {
  .favorite-library-head {
    min-height: 76px;
    margin-bottom: 18px;
  }

  .favorite-library-title {
    grid-template-columns: 46px minmax(0, auto);
    gap: 12px;
    padding: 4px 54px 12px;
  }

  .favorite-library-mark {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
    border-radius: 11px;
    font-size: 21px;
  }

  .favorite-library-title h1 {
    font-size: 36px;
  }

  .favorite-library-title p {
    margin-top: 6px;
    font-size: 12px;
  }
}
/* 20260719 AI workspace portal: final visual layer. */
.stats-sidebar .stats-ai-entry {
  width: 100% !important;
  margin-top: 12px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.stats-sidebar .stats-ai-mode-button,
.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus,
.stats-sidebar .stats-ai-mode-button:focus-visible,
.stats-sidebar .stats-ai-mode-button:active,
.stats-sidebar .stats-ai-mode-button.is-ai-mode {
  position: relative !important;
  isolation: isolate !important;
  display: grid !important;
  grid-template-columns: 58px auto !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  width: 100% !important;
  min-height: 112px !important;
  padding: 17px 18px !important;
  overflow: hidden !important;
  border: 1px solid rgba(71, 199, 232, .18) !important;
  border-radius: 8px !important;
  outline: 0 !important;
  background:
    radial-gradient(circle at 20% 26%, rgba(88, 214, 141, .085), transparent 34%),
    linear-gradient(118deg, rgba(15, 25, 36, .96), rgba(9, 17, 27, .94)) !important;
  color: rgba(247, 253, 251, .98) !important;
  box-shadow:
    0 18px 44px rgba(0, 0, 0, .18),
    inset 0 1px 0 rgba(255, 255, 255, .055),
    inset 0 -1px 0 rgba(71, 199, 232, .035) !important;
  cursor: pointer !important;
  transition:
    transform .32s cubic-bezier(.22, 1, .36, 1),
    border-color .32s ease,
    background .32s ease,
    box-shadow .32s ease !important;
}

.stats-sidebar .stats-ai-mode-button::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: -58% -40% !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(101deg, transparent 0 32%, rgba(88, 214, 141, 0) 39%, rgba(88, 214, 141, .13) 48%, rgba(71, 199, 232, .075) 56%, transparent 68%) 0 0 / 330px 100% repeat-x,
    linear-gradient(97deg, transparent 0 37%, rgba(71, 199, 232, 0) 44%, rgba(71, 199, 232, .065) 51%, rgba(88, 214, 141, .045) 58%, transparent 69%) 0 0 / 470px 100% repeat-x !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 1%, #000 18%, #000 82%, transparent 99%) !important;
  mask-image: linear-gradient(90deg, transparent 1%, #000 18%, #000 82%, transparent 99%) !important;
  filter: blur(14px) saturate(.96) !important;
  opacity: .32 !important;
  animation: statsAiPortalFlow 8.2s linear infinite !important;
}

.stats-sidebar .stats-ai-mode-button::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: -32% !important;
  bottom: -32% !important;
  left: -42% !important;
  z-index: 1 !important;
  width: 30% !important;
  pointer-events: none !important;
  background: linear-gradient(101deg, transparent, rgba(217, 255, 240, .07) 34%, rgba(133, 232, 211, .2) 50%, rgba(71, 199, 232, .08) 66%, transparent) !important;
  -webkit-mask-image: linear-gradient(180deg, transparent, #000 25%, #000 75%, transparent) !important;
  mask-image: linear-gradient(180deg, transparent, #000 25%, #000 75%, transparent) !important;
  filter: blur(7px) !important;
  opacity: 0 !important;
  transform: skewX(-10deg) !important;
  animation: none !important;
}

.stats-sidebar .stats-ai-mode-button > * {
  position: relative !important;
  z-index: 2 !important;
}

.stats-sidebar .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  width: 58px !important;
  height: 58px !important;
  border: 1px solid rgba(116, 230, 187, .3) !important;
  border-radius: 50% !important;
  background:
    radial-gradient(circle at 34% 28%, rgba(255, 255, 255, .13), transparent 31%),
    linear-gradient(145deg, rgba(88, 214, 141, .13), rgba(71, 199, 232, .07)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .09),
    inset 0 0 0 6px rgba(88, 214, 141, .025),
    0 10px 24px rgba(0, 0, 0, .22),
    0 0 22px rgba(88, 214, 141, .08) !important;
  filter: none !important;
  transform: none !important;
  transition:
    transform .32s cubic-bezier(.22, 1, .36, 1),
    border-color .32s ease,
    box-shadow .32s ease !important;
}

.stats-sidebar .stats-ai-mode-emblem::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 5px !important;
  border: 1px solid rgba(71, 199, 232, .09) !important;
  border-radius: 50% !important;
  animation: statsAiPortalOrbit 8s linear infinite !important;
}

.stats-sidebar .stats-ai-mode-emblem::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 4px !important;
  left: 50% !important;
  width: 5px !important;
  height: 5px !important;
  margin-left: -2.5px !important;
  border-radius: 50% !important;
  background: #8fe8bd !important;
  box-shadow: 0 0 10px rgba(88, 214, 141, .7) !important;
  transform-origin: 2.5px 25px !important;
  animation: statsAiPortalOrbit 8s linear infinite !important;
}

.stats-sidebar .stats-ai-mode-emblem svg {
  width: 31px !important;
  height: 31px !important;
  overflow: visible !important;
  fill: none !important;
  stroke: rgba(227, 255, 244, .96) !important;
  stroke-width: 1.65 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  filter: drop-shadow(0 0 8px rgba(88, 214, 141, .2)) !important;
}

.stats-sidebar .stats-ai-mode-emblem svg path:nth-child(2) {
  stroke: rgba(112, 224, 184, .94) !important;
}

.stats-sidebar .stats-ai-mode-emblem svg path:nth-child(3) {
  stroke: rgba(111, 207, 232, .72) !important;
  stroke-width: 1.25 !important;
}

.stats-sidebar .stats-ai-mode-label {
  display: block !important;
  margin: 0 !important;
  color: rgba(248, 253, 252, .98) !important;
  font-size: 24px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  text-align: left !important;
  text-shadow: 0 0 18px rgba(88, 214, 141, .09) !important;
}

.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus-visible {
  border-color: rgba(104, 224, 188, .38) !important;
  background:
    radial-gradient(circle at 20% 26%, rgba(88, 214, 141, .12), transparent 36%),
    linear-gradient(118deg, rgba(17, 29, 41, .97), rgba(10, 20, 31, .95)) !important;
  box-shadow:
    0 21px 46px rgba(0, 0, 0, .22),
    inset 0 1px 0 rgba(255, 255, 255, .075),
    inset 0 -1px 0 rgba(71, 199, 232, .055),
    0 0 26px rgba(88, 214, 141, .055) !important;
  transform: translateY(-2px) !important;
}

.stats-sidebar .stats-ai-mode-button:hover::before,
.stats-sidebar .stats-ai-mode-button:focus-visible::before {
  opacity: .44 !important;
}

.stats-sidebar .stats-ai-mode-button:hover::after,
.stats-sidebar .stats-ai-mode-button:focus-visible::after {
  animation: statsAiPortalSweep 1.35s cubic-bezier(.22, .72, .24, 1) 1 !important;
}

.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem {
  border-color: rgba(135, 239, 200, .46) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .11),
    inset 0 0 0 6px rgba(88, 214, 141, .035),
    0 12px 27px rgba(0, 0, 0, .24),
    0 0 27px rgba(71, 199, 232, .12) !important;
  transform: scale(1.045) !important;
}

.stats-sidebar .stats-ai-mode-button:active {
  transform: translateY(0) scale(.985) !important;
  transition-duration: .1s !important;
}

@keyframes statsAiPortalFlow {
  from { background-position: -330px 0, -470px 0; }
  to { background-position: 0 0, 0 0; }
}

@keyframes statsAiPortalSweep {
  0% { left: -42%; opacity: 0; }
  14% { opacity: .72; }
  74% { opacity: .34; }
  100% { left: 118%; opacity: 0; }
}

@keyframes statsAiPortalOrbit {
  to { transform: rotate(360deg); }
}

@media (max-width: 560px) {
  .stats-sidebar .stats-ai-mode-button,
  .stats-sidebar .stats-ai-mode-button:hover,
  .stats-sidebar .stats-ai-mode-button:focus-visible,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode {
    grid-template-columns: 50px auto !important;
    gap: 14px !important;
    min-height: 94px !important;
    padding: 15px 17px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
    width: 50px !important;
    height: 50px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem::after {
    transform-origin: 2.5px 21px !important;
  }

  .stats-sidebar .stats-ai-mode-label {
    font-size: 21px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .stats-sidebar .stats-ai-mode-button::before,
  .stats-sidebar .stats-ai-mode-button::after,
  .stats-sidebar .stats-ai-mode-emblem::before,
  .stats-sidebar .stats-ai-mode-emblem::after {
    animation: none !important;
  }
}

/* Disabled duplicate composer override; the active consolidated block follows below.
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
  min-height: 96px !important;
  padding: 8px 28px 26px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-shell.ai-generation-studio {
  grid-template-rows: 44px minmax(210px, 1fr) 188px 96px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  height: 96px !important;
  min-height: 96px !important;
  padding: 8px 0 26px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked {
  width: min(980px, 100%) !important;
  max-width: 980px !important;
  height: 62px !important;
  min-height: 62px !important;
  margin: 0 auto !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked :is(.ai-search-layout, .search-control, .search-box-row) {
  width: 100% !important;
  height: 62px !important;
  min-height: 62px !important;
  margin: 0 !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box {
  position: relative !important;
  isolation: isolate !important;
  width: 100% !important;
  height: 62px !important;
  min-height: 62px !important;
  padding: 8px 9px 8px 16px !important;
  overflow: hidden !important;
  border: 1px solid rgba(151, 206, 218, .22) !important;
  border-radius: 18px !important;
  background: rgba(7, 17, 25, .58) !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .055) !important;
  backdrop-filter: blur(20px) saturate(1.08) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.08) !important;
  box-sizing: border-box !important;
  transition: transform .2s cubic-bezier(.22, 1, .36, 1), border-color .3s ease, background .3s ease, box-shadow .3s ease !important;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box {
  padding-left: 8px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .ai-composer-upload {
  display: none !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::before,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::after,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-sweep {
  position: absolute !important;
  pointer-events: none !important;
  mix-blend-mode: screen !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::before,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::after {
  content: " !important;
  z-index: 0 !important;
  will-change: background-position, opacity !important;
  transition: opacity .32s ease, filter .32s ease !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::before {
  inset: -86% -46% !important;
  background:
    linear-gradient(103deg, transparent 0 20%, rgba(74, 210, 166, 0) 29%, rgba(79, 224, 175, .13) 39%, rgba(75, 207, 194, .24) 49%, rgba(62, 166, 170, .07) 59%, transparent 71%) 0 0 / 330px 100% repeat-x,
    linear-gradient(98deg, transparent 0 27%, rgba(67, 190, 166, 0) 36%, rgba(101, 228, 196, .1) 47%, rgba(87, 213, 193, .17) 57%, transparent 72%) 0 0 / 480px 100% repeat-x !important;
  opacity: .46 !important;
  filter: blur(12px) saturate(1.08) !important;
  transform: skewX(-2deg) !important;
  animation: docked-composer-aurora 10.6s linear infinite !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::after {
  inset: -34% -42% !important;
  background: linear-gradient(101deg, transparent 0 27%, rgba(154, 255, 224, 0) 36%, rgba(161, 255, 226, .2) 47%, rgba(84, 210, 196, .07) 55%, transparent 66%) 0 0 / 390px 100% repeat-x !important;
  opacity: .28 !important;
  filter: blur(1.8px) !important;
  animation: docked-composer-thread 8.4s linear infinite !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-sweep {
  z-index: 1 !important;
  inset: -82% -40% !important;
  background: linear-gradient(102deg, transparent 20%, rgba(79, 206, 183, 0) 29%, rgba(104, 235, 202, .08) 38%, rgba(172, 255, 229, .28) 47%, rgba(239, 255, 250, .48) 51%, rgba(153, 247, 218, .24) 56%, rgba(81, 201, 190, .06) 66%, transparent 78%) !important;
  opacity: 0;
  filter: blur(5px) saturate(1.06) !important;
  transform: translate3d(-112%, 0, 0) skewX(-3deg) scaleX(1.08);
  will-change: transform, opacity;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box > :not(.search-sweep) {
  position: relative !important;
  z-index: 2 !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:hover,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:focus-within {
  border-color: rgba(131, 220, 215, .34) !important;
  background: rgba(8, 20, 29, .68) !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, .25), 0 0 0 1px rgba(109, 211, 204, .06), inset 0 1px 0 rgba(255, 255, 255, .07) !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:hover::before,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:focus-within::before {
  opacity: .64 !important;
  filter: blur(10px) saturate(1.16) !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:hover::after,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:focus-within::after {
  opacity: .42 !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box.is-sweeping {
  transform: translateY(1px) scale(.9985) !important;
  border-color: rgba(142, 232, 218, .48) !important;
  background: rgba(9, 24, 32, .72) !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box.is-sweeping .search-sweep {
  animation: docked-composer-click-sweep 2.7s cubic-bezier(.22, .61, .36, 1) both !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) #tool-search {
  min-width: 0 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .ai-send-button {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
}

@media (max-width: 1700px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-shell.ai-generation-studio {
    grid-template-rows: 42px minmax(190px, 1fr) 198px 96px !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
    min-height: 84px !important;
    padding: 6px 12px 22px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
    height: 84px !important;
    min-height: 84px !important;
    padding: 6px 0 22px !important;
  }

  body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked),
  body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) :is(.ai-search-layout, .search-control, .search-box-row),
  body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box {
    height: 56px !important;
    min-height: 56px !important;
  }
}

*/

/* 20260719 align and raise the shared GPT, Image 2 and Kling V3 composer. */
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
  min-height: 96px !important;
  padding: 2px 28px 32px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-shell.ai-generation-studio {
  grid-template-rows: 44px minmax(210px, 1fr) 188px 96px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  height: 96px !important;
  min-height: 96px !important;
  padding: 2px 28px 32px !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked {
  width: 100% !important;
  max-width: none !important;
  height: 62px !important;
  min-height: 62px !important;
  max-height: 62px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked :is(.ai-search-layout, .search-control, .search-box-row, .search-box) {
  width: 100% !important;
  height: 62px !important;
  min-height: 62px !important;
  max-height: 62px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .search-box {
  padding: 8px 9px 8px 16px !important;
  border-radius: 18px !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box {
  position: relative !important;
  isolation: isolate !important;
  width: 100% !important;
  height: 62px !important;
  min-height: 62px !important;
  padding: 8px 9px 8px 16px !important;
  overflow: hidden !important;
  border: 1px solid rgba(151, 206, 218, .22) !important;
  border-radius: 18px !important;
  background: rgba(7, 17, 25, .58) !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .055) !important;
  backdrop-filter: blur(20px) saturate(1.08) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.08) !important;
  box-sizing: border-box !important;
  transition: transform .2s cubic-bezier(.22, 1, .36, 1), border-color .3s ease, background .3s ease, box-shadow .3s ease !important;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box {
  padding-left: 8px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked .ai-composer-upload {
  display: none !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::before,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::after,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-sweep {
  position: absolute !important;
  pointer-events: none !important;
  mix-blend-mode: screen !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::before,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::after {
  content: "" !important;
  z-index: 0 !important;
  will-change: background-position, opacity !important;
  transition: opacity .32s ease, filter .32s ease !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::before {
  inset: -86% -46% !important;
  background:
    linear-gradient(103deg, transparent 0 20%, rgba(74, 210, 166, 0) 29%, rgba(79, 224, 175, .13) 39%, rgba(75, 207, 194, .24) 49%, rgba(62, 166, 170, .07) 59%, transparent 71%) 0 0 / 330px 100% repeat-x,
    linear-gradient(98deg, transparent 0 27%, rgba(67, 190, 166, 0) 36%, rgba(101, 228, 196, .1) 47%, rgba(87, 213, 193, .17) 57%, transparent 72%) 0 0 / 480px 100% repeat-x;
  opacity: .46 !important;
  filter: blur(12px) saturate(1.08) !important;
  transform: skewX(-2deg) !important;
  animation: docked-composer-aurora 10.6s linear infinite !important;
  animation-play-state: running !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box::after {
  inset: -34% -42% !important;
  background: linear-gradient(101deg, transparent 0 27%, rgba(154, 255, 224, 0) 36%, rgba(161, 255, 226, .2) 47%, rgba(84, 210, 196, .07) 55%, transparent 66%) 0 0 / 390px 100% repeat-x;
  opacity: .28 !important;
  filter: blur(1.8px) !important;
  animation: docked-composer-thread 8.4s linear infinite !important;
  animation-play-state: running !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-sweep {
  z-index: 1 !important;
  inset: -82% -40% !important;
  background: linear-gradient(102deg, transparent 20%, rgba(79, 206, 183, 0) 29%, rgba(104, 235, 202, .08) 38%, rgba(172, 255, 229, .28) 47%, rgba(239, 255, 250, .48) 51%, rgba(153, 247, 218, .24) 56%, rgba(81, 201, 190, .06) 66%, transparent 78%) !important;
  opacity: 0;
  filter: blur(5px) saturate(1.06) !important;
  transform: translate3d(-112%, 0, 0) skewX(-3deg) scaleX(1.08);
  will-change: transform, opacity;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box > :not(.search-sweep) {
  position: relative !important;
  z-index: 2 !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:hover,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:focus-within {
  border-color: rgba(131, 220, 215, .34) !important;
  background: rgba(8, 20, 29, .68) !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, .25), 0 0 0 1px rgba(109, 211, 204, .06), inset 0 1px 0 rgba(255, 255, 255, .07) !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:hover::before,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:focus-within::before {
  opacity: .64 !important;
  filter: blur(10px) saturate(1.16) !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:hover::after,
body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box:focus-within::after {
  opacity: .42 !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box.is-sweeping {
  transform: translateY(1px) scale(.9985) !important;
  border-color: rgba(142, 232, 218, .48) !important;
  background: rgba(9, 24, 32, .72) !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box.is-sweeping .search-sweep {
  animation: docked-composer-click-sweep 2.7s cubic-bezier(.22, .61, .36, 1) both !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) #tool-search {
  min-width: 0 !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
}

body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .ai-send-button {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
}

@media (max-width: 1700px) and (min-width: 761px) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-shell.ai-generation-studio {
    grid-template-rows: 42px minmax(190px, 1fr) 198px 96px !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
    min-height: 84px !important;
    padding: 6px 12px 22px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-composer-mount {
    height: 84px !important;
    min-height: 84px !important;
    padding: 6px 12px 22px !important;
  }

  body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked),
  body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) :is(.ai-search-layout, .search-control, .search-box-row),
  body.ai-chat-mode .search-panel:is(.is-chat-docked, .is-generation-docked) .search-box {
    height: 56px !important;
    min-height: 56px !important;
  }

  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .search-panel.is-generation-docked :is(.ai-search-layout, .search-control, .search-box-row, .search-box) {
    width: 100% !important;
    max-width: none !important;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
}

/* 20260719 give the empty Favorites workspace more vertical breathing room. */
@media (min-width: 721px) {
  body.favorite-library-open .favorite-library-layout:has(.favorite-library-content:not(.has-content)) {
    align-items: stretch;
  }

  body.favorite-library-open .favorite-library-content:not(.has-content) {
    display: flex;
    flex-direction: column;
    min-height: clamp(590px, calc(100dvh - 120px), 820px);
  }

  body.favorite-library-open .favorite-library-content:not(.has-content) .favorite-library-empty:not([hidden]) {
    display: grid;
    flex: 1 1 auto;
    min-height: 360px;
    align-content: center;
  }

  body.favorite-library-open .favorite-library-layout:has(.favorite-library-content:not(.has-content)) .favorite-library-sidebar-stack {
    grid-template-rows: auto minmax(0, 1fr);
    align-self: stretch;
  }

  body.favorite-library-open .favorite-library-layout:has(.favorite-library-content:not(.has-content)) .favorite-folder-panel {
    height: 100%;
  }
}
/* 20260719 unify Image 2 and Kling V3 with the GPT glass palette. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) {
  --ai-glass-bg: rgba(4, 13, 19, .42);
  --ai-glass-panel: rgba(7, 20, 27, .46);
  --ai-glass-control: rgba(10, 27, 35, .64);
  --ai-glass-control-hover: rgba(12, 35, 42, .76);
  --ai-glass-border: rgba(126, 198, 198, .18);
  --ai-glass-border-strong: rgba(114, 217, 193, .38);
  --ai-glass-accent: #72d9c1;
  --ai-glass-accent-soft: rgba(114, 217, 193, .16);
  --ai-glass-text: rgba(235, 247, 247, .94);
  --ai-glass-muted: rgba(181, 207, 211, .62);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window {
  border-color: rgba(130, 195, 200, .16) !important;
  background: var(--ai-glass-bg) !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .30), inset 0 1px 0 rgba(255, 255, 255, .035) !important;
  backdrop-filter: blur(22px) saturate(1.04) !important;
  -webkit-backdrop-filter: blur(22px) saturate(1.04) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-window::before {
  background:
    radial-gradient(ellipse at 18% 12%, rgba(86, 202, 185, .075), transparent 36%),
    linear-gradient(112deg, transparent 16%, rgba(83, 194, 184, .045) 46%, transparent 72%) !important;
  opacity: .78 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-chat-workspace, .ai-chat-main, .ai-chat-studio, .ai-studio-shell) {
  background: transparent !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history {
  border-right-color: rgba(126, 198, 198, .13) !important;
  background: rgba(3, 12, 18, .26) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-item:hover,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-item:focus-visible {
  border-color: rgba(114, 217, 193, .20) !important;
  background: rgba(80, 187, 170, .10) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-item.is-active {
  border-color: rgba(114, 217, 193, .30) !important;
  background: rgba(74, 174, 159, .15) !important;
  box-shadow: inset 2px 0 0 rgba(114, 217, 193, .78) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-context-dot {
  background: var(--ai-glass-accent) !important;
  box-shadow: 0 0 12px rgba(114, 217, 193, .55) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar {
  color: var(--ai-glass-text) !important;
  background: transparent !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-generation-toolbar > small,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-section-head > em,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-video-history-group-title > span {
  border-color: rgba(114, 217, 193, .22) !important;
  color: rgba(194, 240, 229, .82) !important;
  background: rgba(67, 156, 145, .10) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-generation-stage, .ai-generation-settings) {
  border-color: var(--ai-glass-border) !important;
  background: linear-gradient(145deg, rgba(8, 23, 30, .47), rgba(5, 16, 23, .31)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035), 0 16px 36px rgba(0, 0, 0, .13) !important;
  backdrop-filter: blur(14px) saturate(1.02) !important;
  -webkit-backdrop-filter: blur(14px) saturate(1.02) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-generation-stage, .ai-generation-settings)::before,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-generation-stage, .ai-generation-settings)::after {
  border-color: rgba(114, 217, 193, .12) !important;
  background-color: transparent !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-stage-empty, .ai-video-history-empty, .ai-image-history-empty) {
  border-color: rgba(114, 217, 193, .16) !important;
  color: var(--ai-glass-muted) !important;
  background: rgba(7, 21, 28, .28) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-stage-empty > span, .ai-video-history-empty-icon, .ai-image-history-empty > span, .ai-studio-output-mark) {
  border-color: rgba(114, 217, 193, .24) !important;
  color: var(--ai-glass-accent) !important;
  background: rgba(69, 166, 150, .12) !important;
  box-shadow: 0 0 20px rgba(69, 199, 172, .08) !important;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-control-block, .ai-image-history),
body.ai-chat-mode.ai-model-video .ai-video-settings > label {
  border-color: rgba(126, 198, 198, .16) !important;
  background: var(--ai-glass-control) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-control-label, .ai-video-settings label > span, .ai-studio-section-head span) {
  color: var(--ai-glass-muted) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-tabs {
  border-bottom-color: rgba(126, 198, 198, .14) !important;
  background: transparent !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-tab {
  color: rgba(184, 207, 211, .62) !important;
  background: transparent !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-tab:hover {
  color: rgba(231, 247, 244, .90) !important;
  background: rgba(114, 217, 193, .06) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-tab.is-active {
  color: #c7f4e7 !important;
  background: rgba(114, 217, 193, .10) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-studio-tab.is-active::after {
  background: var(--ai-glass-accent) !important;
  box-shadow: 0 0 10px rgba(114, 217, 193, .35) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-chip {
  border-color: rgba(126, 198, 198, .18) !important;
  color: rgba(214, 232, 233, .74) !important;
  background: rgba(8, 24, 31, .54) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-chip:hover {
  border-color: rgba(114, 217, 193, .34) !important;
  color: rgba(239, 250, 248, .94) !important;
  background: rgba(79, 176, 160, .12) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-chip.is-active {
  border-color: rgba(114, 217, 193, .42) !important;
  color: #d8f8ef !important;
  background: rgba(74, 174, 159, .20) !important;
  box-shadow: inset 0 0 0 1px rgba(137, 231, 210, .06), 0 0 18px rgba(57, 190, 159, .07) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-select, .ai-video-settings select, .ai-studio-grid select) {
  color-scheme: dark !important;
  border-color: rgba(126, 198, 198, .20) !important;
  color: rgba(231, 244, 244, .90) !important;
  background-color: rgba(8, 23, 31, .88) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035), 0 8px 18px rgba(0, 0, 0, .10) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-select, .ai-video-settings select, .ai-studio-grid select):hover {
  border-color: rgba(114, 217, 193, .34) !important;
  background-color: rgba(10, 30, 38, .94) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-select, .ai-video-settings select, .ai-studio-grid select):focus {
  border-color: rgba(114, 217, 193, .52) !important;
  background-color: rgba(10, 30, 38, .96) !important;
  box-shadow: 0 0 0 3px rgba(73, 194, 168, .10), inset 0 1px 0 rgba(255, 255, 255, .04) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-select, .ai-video-settings select, .ai-studio-grid select) :is(option, optgroup) {
  color: #dcebea !important;
  background: #0b1821 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-select, .ai-video-settings select, .ai-studio-grid select) option:checked {
  color: #effbf8 !important;
  background: #173a3a !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-ref-btn, .ai-video-upload-card, .ai-studio-upload) {
  border-color: rgba(114, 217, 193, .25) !important;
  color: rgba(207, 241, 234, .84) !important;
  background: rgba(62, 151, 140, .09) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-ref-btn, .ai-video-upload-card, .ai-studio-upload):hover {
  border-color: rgba(114, 217, 193, .46) !important;
  color: #eafff9 !important;
  background: rgba(69, 174, 155, .16) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-generate, .ai-studio-actions > button) {
  border-color: rgba(114, 217, 193, .42) !important;
  color: #edfff9 !important;
  background: linear-gradient(135deg, rgba(43, 128, 111, .66), rgba(20, 62, 68, .82)) !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .18), inset 0 1px 0 rgba(207, 255, 242, .08) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-generate, .ai-studio-actions > button):hover {
  border-color: rgba(135, 233, 210, .58) !important;
  background: linear-gradient(135deg, rgba(50, 153, 128, .78), rgba(22, 77, 78, .90)) !important;
  box-shadow: 0 13px 29px rgba(0, 0, 0, .24), 0 0 20px rgba(75, 211, 180, .09), inset 0 1px 0 rgba(224, 255, 247, .10) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-history-item, .ai-video-history-item) {
  border-color: rgba(126, 198, 198, .13) !important;
  color: rgba(226, 240, 240, .84) !important;
  background: rgba(7, 21, 28, .44) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-history-item, .ai-video-history-item):hover,
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-history-item, .ai-video-history-item):focus-visible {
  border-color: rgba(114, 217, 193, .28) !important;
  background: rgba(73, 166, 151, .11) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-history-item, .ai-video-history-item).is-active {
  border-color: rgba(114, 217, 193, .38) !important;
  background: rgba(73, 166, 151, .17) !important;
  box-shadow: inset 2px 0 0 rgba(114, 217, 193, .74) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-image-history-thumb, .ai-video-history-thumb, .ai-video-history-placeholder, .ai-image-history-fallback) {
  border-color: rgba(126, 198, 198, .14) !important;
  background-color: rgba(6, 18, 25, .68) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) :is(.ai-video-history-param, .ai-video-history-status, .ai-image-history-item em) {
  border-color: rgba(114, 217, 193, .18) !important;
  color: rgba(196, 235, 226, .78) !important;
  background: rgba(58, 145, 134, .12) !important;
}

body.ai-chat-mode.ai-model-video .ai-video-motion input {
  accent-color: var(--ai-glass-accent) !important;
}
/* 20260719 move the hero aurora right and tighten its layered composition. */
@media (min-width: 761px) {
  .command-hero .hero-aurora,
  body[data-active-group="tutorial-knowledge"] .command-hero .hero-aurora {
    top: 50%;
    right: -6%;
    left: auto;
    width: clamp(560px, 54vw, 820px);
    height: clamp(250px, 22vw, 330px);
    transform: translate3d(0, -52%, 0);
    border-radius: 50%;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, transparent 28%, rgba(0, 0, 0, .06) 38%, rgba(0, 0, 0, .72) 55%, #000 68%, #000 93%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, transparent 28%, rgba(0, 0, 0, .06) 38%, rgba(0, 0, 0, .72) 55%, #000 68%, #000 93%, transparent 100%);
  }
}
/* 20260719 place Image 2 parameter labels outside their control frames. */
body.ai-chat-mode.ai-model-image .ai-generation-settings {
  grid-template: minmax(0, 1fr) / minmax(0, 1fr) !important;
  gap: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  align-items: stretch !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group {
  display: grid !important;
  grid-template-rows: 16px minmax(0, 1fr) !important;
  gap: 7px !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-caption {
  display: block !important;
  min-width: 0 !important;
  padding-left: 2px !important;
  color: rgba(190, 207, 216, .68) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group .ai-image-control-block {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  align-self: stretch !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group .ai-image-field {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  align-content: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  height: calc(100% - 23px) !important;
  min-height: 0 !important;
  margin-top: 23px !important;
  padding: 0 !important;
  align-self: end !important;
}

@media (max-width: 1180px) and (min-width: 761px) {
  body.ai-chat-mode.ai-model-image .ai-image-control-group:first-child {
    grid-column: 1 / -1 !important;
  }
}
/* 20260719 remove the Image 2 toolbar and lift the generation stage. */
body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
  grid-template-rows: minmax(210px, 1fr) 188px 96px !important;
}

@media (max-width: 1700px) and (min-width: 761px) {
  body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(190px, 1fr) 198px 96px !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(180px, 1fr) auto 84px !important;
  }
}
/* 20260719 disable the homepage hero aurora completely. */
.command-hero .hero-aurora {
  display: none !important;
}
/* 20260719 raise the final GPT messages and anchor the user identity on the right. */
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
  padding-bottom: 84px !important;
  scroll-padding-bottom: 84px !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user {
  align-self: flex-end !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-meta {
  right: 3px !important;
  left: 3px !important;
  width: auto !important;
  max-width: none !important;
  justify-content: flex-end !important;
  text-align: right !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
    padding-bottom: 52px !important;
    scroll-padding-bottom: 52px !important;
  }
}

/* image result grid tidy + pending placeholders + avoid bottom dock cover */
body.ai-chat-mode.ai-model-image .ai-generation-studio,
body.ai-chat-mode.ai-model-image .ai-image-studio {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto auto !important;
  gap: 12px !important;
  min-height: 0 !important;
  height: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-image-stage,
body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage {
  min-height: 280px !important;
  max-height: none !important;
  overflow: auto !important;
  padding: 14px 14px 18px !important;
  padding-bottom: 20px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-params-panel,
body.ai-chat-mode.ai-model-image .ai-generation-settings {
  position: relative !important;
  z-index: 4 !important;
  flex: 0 0 auto !important;
  background: rgba(8, 12, 20, 0.96) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid,
.ai-image-result-grid {
  display: grid !important;
  grid-template-columns: repeat(var(--result-cols, 3), minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: start !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 { --result-cols: 1; }
body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-2 { --result-cols: 2; }
body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-3 { --result-cols: 3; }
body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-4 { --result-cols: 3; }
body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-5 { --result-cols: 3; }

@media (max-width: 1100px) {
  body.ai-chat-mode.ai-model-image .ai-image-result-grid { --result-cols: 2 !important; }
}

body.ai-chat-mode.ai-model-image .ai-image-result-card,
.ai-image-result-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  border: 1px solid rgba(149, 166, 190, 0.16) !important;
  border-radius: 14px !important;
  background: rgba(5, 12, 20, 0.88) !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-frame,
.ai-image-result-frame {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  aspect-ratio: var(--image-ratio, 1 / 1) !important;
  max-height: 320px !important;
  background: linear-gradient(180deg, rgba(8, 12, 20, 0.98), rgba(2, 5, 10, 1)) !important;
  overflow: hidden !important;
  color: rgba(180, 196, 210, 0.9);
  gap: 8px;
  text-decoration: none;
}

body.ai-chat-mode.ai-model-image .ai-image-result-frame img,
.ai-image-result-frame img,
body.ai-chat-mode.ai-model-image .ai-image-result-card img {
  width: 100% !important;
  height: 100% !important;
  max-height: 320px !important;
  object-fit: cover !important;
  display: block !important;
  aspect-ratio: auto !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-badge {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 2;
  padding: 2px 8px;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.55);
  color: #f3f7fb;
  font-size: 11px;
  font-weight: 700;
}

body.ai-chat-mode.ai-model-image .ai-image-result-caption,
body.ai-chat-mode.ai-model-image .ai-image-result-card figcaption,
.ai-image-result-card figcaption {
  display: grid !important;
  gap: 6px !important;
  padding: 8px 10px 10px !important;
  min-height: 58px !important;
  height: auto !important;
  background: rgba(0, 0, 0, 0.34) !important;
  text-align: left !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-title {
  display: flex !important;
  justify-content: space-between !important;
  gap: 8px !important;
  color: rgba(238, 244, 248, 0.96) !important;
  font-size: 12px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-meta-line {
  color: rgba(186, 200, 214, 0.92) !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
  white-space: normal !important;
  word-break: break-word !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame {
  border-bottom: 1px solid rgba(149, 166, 190, 0.1);
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-pending .ai-image-result-frame {
  background:
    radial-gradient(circle at 50% 42%, rgba(92, 214, 198, 0.14), transparent 48%),
    linear-gradient(180deg, rgba(8, 12, 20, 0.98), rgba(2, 5, 10, 1)) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-card-spinner {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 2px solid rgba(120, 220, 210, 0.18);
  border-top-color: rgba(120, 220, 210, 0.95);
  animation: ai-image-spin 0.9s linear infinite;
}

@keyframes ai-image-spin {
  to { transform: rotate(360deg); }
}

body.ai-chat-mode.ai-model-image .ai-image-stage-head {
  position: sticky;
  top: 0;
  z-index: 3;
  margin-bottom: 10px;
  padding-bottom: 8px;
  background: linear-gradient(180deg, rgba(10, 16, 26, 0.98), rgba(10, 16, 26, 0.9) 72%, transparent);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-head span {
  white-space: normal !important;
  text-align: right;
  line-height: 1.45;
}

body.ai-chat-mode.ai-model-image .ai-image-partial-note.is-progress {
  color: #8ee7d8 !important;
}

/* prevent docked prompt from covering result captions */
body.ai-chat-mode.ai-model-image .search-panel.is-image-docked,
body.ai-chat-mode.ai-model-image .ai-image-composer-mount {
  position: relative !important;
  z-index: 5 !important;
}


/* image stage head labeled params: scannable fixed panel */
body.ai-chat-mode.ai-model-image .ai-image-stage-head,
.ai-image-stage-head {
  display: grid !important;
  gap: 14px !important;
  margin: 0 0 16px !important;
  padding: 16px !important;
  border: 1px solid rgba(149, 166, 190, 0.14) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(180deg, rgba(14, 20, 32, 0.98), rgba(8, 12, 20, 0.94)) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
  position: sticky;
  top: 0;
  z-index: 3;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-title-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-title-copy {
  display: grid;
  gap: 2px;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-count {
  display: inline-flex;
  align-items: baseline;
  gap: 2px;
  color: rgba(244, 248, 252, 0.98) !important;
  font-size: 30px !important;
  font-weight: 780 !important;
  letter-spacing: 0.01em;
  line-height: 1;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-count em {
  margin: 0 1px;
  color: rgba(154, 169, 184, 0.7);
  font-style: normal;
  font-weight: 650;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-count-label {
  color: rgba(232, 240, 246, 0.92);
  font-size: 14px;
  font-weight: 700;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-title-sub {
  color: rgba(154, 169, 184, 0.72);
  font-size: 12px;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 10px;
  max-width: 100%;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid rgba(142, 231, 216, 0.16);
  background: rgba(18, 34, 36, 0.72);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status.is-partial {
  border-color: rgba(240, 201, 135, 0.2);
  background: rgba(42, 32, 18, 0.72);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status.is-done {
  border-color: rgba(149, 166, 190, 0.16);
  background: rgba(18, 24, 34, 0.72);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #7de3d2;
  box-shadow: 0 0 0 4px rgba(125, 227, 210, 0.12);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status.is-progress .ai-image-stage-status-dot {
  animation: ai-image-status-pulse 1.2s ease-in-out infinite;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status.is-partial .ai-image-stage-status-dot {
  background: #f0c987;
  box-shadow: 0 0 0 4px rgba(240, 201, 135, 0.12);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status.is-done .ai-image-stage-status-dot {
  background: #95a6be;
  box-shadow: none;
}

@keyframes ai-image-status-pulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(0.85); opacity: 0.65; }
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status-text {
  color: rgba(236, 248, 246, 0.95);
  font-size: 12px;
  font-weight: 700;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-status-hint {
  color: rgba(168, 186, 198, 0.78);
  font-size: 12px;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-prompt-block {
  display: grid;
  gap: 8px;
  padding: 12px 12px 12px;
  border-radius: 14px;
  background: rgba(0, 0, 0, 0.18);
  border: 1px solid rgba(149, 166, 190, 0.08);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-prompt-label {
  color: rgba(154, 169, 184, 0.78);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-prompt,
body.ai-chat-mode.ai-model-image .ai-image-stage-head p {
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(198, 212, 224, 0.92) !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

body.ai-chat-mode.ai-model-image .ai-image-partial-note {
  display: none !important;
}


/* Image 2 stacking/layout fix: context bar owns top row, results never sit under it */
body.ai-chat-mode.ai-model-image .ai-chat-main {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-content: stretch !important;
  gap: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-model-context {
  position: relative !important;
  z-index: 20 !important;
  display: grid !important;
  grid-template-columns: 10px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 10px 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(149, 169, 192, 0.12) !important;
  border-radius: 0 !important;
  background: rgba(8, 13, 22, 0.98) !important;
  box-shadow: none !important;
  flex: 0 0 auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-model-context > div {
  display: grid !important;
  grid-template-columns: 88px minmax(0, 1fr) !important;
  gap: 10px 12px !important;
  align-items: start !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-model-context #ai-chat-context-title {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  color: rgba(244, 248, 252, 0.98);
  font-size: 15px;
  font-weight: 780;
  line-height: 1.2;
  white-space: nowrap;
}

body.ai-chat-mode.ai-model-image .ai-chat-model-context #ai-chat-context-description {
  grid-column: 2;
  grid-row: 1;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  white-space: normal !important;
  overflow: visible !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-item {
  display: grid !important;
  gap: 4px !important;
  min-width: 0 !important;
  padding: 8px 10px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(149, 166, 190, 0.12) !important;
  background: rgba(255, 255, 255, 0.03) !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-item.is-prompt {
  grid-column: 1 / -1 !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-item em {
  color: rgba(154, 169, 184, 0.78) !important;
  font-size: 11px !important;
  font-style: normal !important;
  font-weight: 650 !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-item strong {
  color: rgba(236, 244, 248, 0.96) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-item.is-prompt strong {
  white-space: normal !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}

@media (max-width: 1200px) {
  body.ai-chat-mode.ai-model-image .ai-chat-model-context > div {
    grid-template-columns: 1fr !important;
  }
  body.ai-chat-mode.ai-model-image .ai-context-param-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* studio fills the second row only */
body.ai-chat-mode.ai-model-image .ai-chat-studio {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: 100% !important;
  max-height: none !important;
  overflow: hidden !important;
  padding: 10px 12px 12px !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-image-studio,
body.ai-chat-mode.ai-model-image .ai-generation-studio.ai-image-studio {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto auto !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-image-stage,
body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage {
  position: relative !important;
  z-index: 1 !important;
  min-height: 0 !important;
  height: 100% !important;
  max-height: none !important;
  overflow: auto !important;
  padding: 12px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-params-panel,
body.ai-chat-mode.ai-model-image .ai-generation-settings,
body.ai-chat-mode.ai-model-image .ai-generation-composer-mount {
  position: relative !important;
  z-index: 2 !important;
  flex: 0 0 auto !important;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-head {
  display: none !important;
}

/* result cards stay below context bar in stacking and flow */
body.ai-chat-mode.ai-model-image .ai-image-result-grid,
body.ai-chat-mode.ai-model-image .ai-image-result-card {
  position: relative !important;
  z-index: 1 !important;
}

/* 20260719 GPT history context menu and batch deletion */
.ai-chat-history-batch[hidden],
.ai-chat-history-context[hidden] {
  display: none !important;
}

.ai-chat-history-batch {
  display: grid;
  grid-template-columns: minmax(0, 1fr) repeat(3, auto);
  align-items: center;
  gap: 6px;
  margin: 0 4px 10px;
  padding: 7px;
  border: 1px solid rgba(116, 220, 198, .16);
  border-radius: 8px;
  background: rgba(16, 35, 40, .42);
  box-shadow: inset 0 1px 0 rgba(226, 255, 249, .035);
  backdrop-filter: blur(14px);
}

.ai-chat-history-batch strong {
  min-width: 0;
  padding-left: 4px;
  overflow: hidden;
  color: rgba(226, 244, 242, .78);
  font-size: 11px;
  font-weight: 650;
  line-height: 26px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-chat-history-batch button {
  min-width: 42px;
  height: 26px;
  padding: 0 8px;
  border: 1px solid rgba(132, 201, 195, .16);
  border-radius: 6px;
  color: rgba(219, 235, 236, .76);
  background: rgba(225, 246, 246, .045);
  font-size: 10px;
  font-weight: 650;
  line-height: 1;
  cursor: pointer;
  transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease;
}

.ai-chat-history-batch button:hover,
.ai-chat-history-batch button:focus-visible {
  border-color: rgba(118, 229, 205, .34);
  color: rgba(243, 255, 252, .96);
  background: rgba(88, 194, 175, .13);
  outline: none;
  transform: translateY(-1px);
}

.ai-chat-history-batch button.danger {
  border-color: rgba(239, 118, 124, .18);
  color: rgba(255, 188, 191, .86);
  background: rgba(167, 45, 53, .09);
}

.ai-chat-history-batch button.danger:hover,
.ai-chat-history-batch button.danger:focus-visible {
  border-color: rgba(255, 133, 139, .42);
  color: #ffe9ea;
  background: rgba(197, 56, 65, .19);
}

.ai-chat-history-batch button:disabled {
  border-color: rgba(132, 159, 164, .08);
  color: rgba(177, 195, 197, .3);
  background: rgba(255, 255, 255, .018);
  cursor: default;
  transform: none;
}

.ai-chat-history-item .ai-chat-history-check {
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  border: 1px solid rgba(152, 193, 195, .28);
  border-radius: 50%;
  background: rgba(4, 15, 20, .54);
  box-shadow: inset 0 0 0 3px rgba(4, 15, 20, .72);
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.ai-chat-history-item.is-selected {
  color: rgba(244, 255, 252, .98) !important;
  border-color: rgba(115, 230, 204, .38) !important;
  background: rgba(70, 176, 158, .16) !important;
  box-shadow: inset 2px 0 0 rgba(121, 235, 208, .88), 0 8px 22px rgba(2, 12, 17, .12) !important;
}

.ai-chat-history-item.is-selected .ai-chat-history-check {
  border-color: rgba(141, 245, 220, .92);
  background: rgba(105, 224, 195, .92);
  box-shadow: inset 0 0 0 3px rgba(18, 74, 67, .9), 0 0 12px rgba(103, 225, 196, .2);
}

.ai-chat-history-item.is-selected .ai-chat-history-check::after {
  width: 5px;
  height: 3px;
  border-left: 1.5px solid #effffb;
  border-bottom: 1.5px solid #effffb;
  content: '';
  transform: translateY(-1px) rotate(-45deg);
}

.ai-chat-history-item:active .ai-chat-history-check {
  transform: scale(.92);
}

.ai-chat-history-context {
  position: fixed;
  z-index: 2200;
  display: grid;
  width: 168px;
  padding: 6px;
  border: 1px solid rgba(125, 211, 200, .2);
  border-radius: 9px;
  background: rgba(7, 18, 24, .96);
  box-shadow: 0 18px 42px rgba(0, 4, 9, .46), inset 0 1px 0 rgba(224, 255, 250, .045);
  backdrop-filter: blur(18px) saturate(1.16);
}

.ai-chat-history-context button {
  width: 100%;
  min-height: 34px;
  padding: 0 10px;
  border: 0;
  border-radius: 6px;
  color: rgba(222, 239, 239, .84);
  background: transparent;
  font-size: 12px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
  transition: color .16s ease, background .16s ease;
}

.ai-chat-history-context button:hover,
.ai-chat-history-context button:focus-visible {
  color: #f3fffc;
  background: rgba(84, 189, 171, .13);
  outline: none;
}

.ai-chat-history-context button.danger {
  color: rgba(255, 177, 181, .9);
}

.ai-chat-history-context button.danger:hover,
.ai-chat-history-context button.danger:focus-visible {
  color: #ffe9ea;
  background: rgba(195, 55, 64, .18);
}

@media (max-width: 1180px) {
  .ai-chat-history-batch {
    gap: 4px;
    margin-inline: 2px;
    padding: 6px;
  }

  .ai-chat-history-batch button {
    min-width: 36px;
    padding-inline: 6px;
  }
}
/* 20260719 final GPT bottom clearance and user meta right alignment. */
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
  padding-bottom: 28px !important;
  scroll-padding-bottom: 56px !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row:last-child {
  margin-bottom: 28px !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user {
  align-self: flex-end !important;
  margin-right: 0 !important;
  margin-left: auto !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
  margin-right: 0 !important;
  margin-left: auto !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-meta {
  right: 0 !important;
  left: auto !important;
  width: max-content !important;
  max-width: 100% !important;
  justify-content: flex-end !important;
  text-align: right !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-role,
body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-meta time {
  text-align: right !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
    padding-bottom: 20px !important;
    scroll-padding-bottom: 40px !important;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-message-row:last-child {
    margin-bottom: 20px !important;
  }
}
/* 20260719 compact Image 2 parameter controls and strengthen their labels. */
body.ai-chat-mode.ai-model-image .ai-generation-settings {
  align-content: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group {
  grid-template-rows: 20px auto !important;
  gap: 5px !important;
  height: auto !important;
  align-self: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-caption {
  padding-left: 4px !important;
  color: rgba(236, 247, 249, .95) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
  text-shadow: 0 0 14px rgba(123, 225, 210, .14) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group .ai-image-control-block {
  height: auto !important;
  min-height: 58px !important;
  padding: 7px 10px !important;
  align-self: auto !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group .ai-image-field {
  height: auto !important;
  min-height: 38px !important;
}
/* 20260719 organize Image 2 history card typography. */
body.ai-chat-mode.ai-model-image .ai-image-history-item {
  align-items: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-copy {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) 16px !important;
  align-content: center !important;
  gap: 7px !important;
  height: 70px !important;
  min-width: 0 !important;
  padding: 2px 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-copy strong {
  display: -webkit-box !important;
  min-width: 0 !important;
  max-height: 40px !important;
  overflow: hidden !important;
  color: rgba(235, 247, 248, .93) !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  line-height: 20px !important;
  white-space: normal !important;
  word-break: break-word !important;
  text-overflow: clip !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-copy small {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  color: rgba(185, 211, 215, .78) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  font-variant-numeric: tabular-nums !important;
  line-height: 16px !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}


/* failed image slots */
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-result-frame {
  background:
    radial-gradient(circle at 50% 42%, rgba(255, 120, 120, 0.12), transparent 48%),
    linear-gradient(180deg, rgba(20, 10, 12, 0.98), rgba(8, 4, 6, 1)) !important;
  color: rgba(255, 190, 190, 0.92);
}
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-result-meta-line {
  color: rgba(255, 186, 186, 0.9) !important;
}
/* 20260719 restore the Kling studio three-row layout. */
body.ai-chat-mode.ai-model-video .ai-studio-shell.ai-generation-studio {
  grid-template-rows: minmax(260px, 1fr) 218px 96px !important;
  align-content: stretch !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-stage {
  grid-row: 1 !important;
  min-height: 260px !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-settings {
  grid-row: 2 !important;
  height: 218px !important;
  min-height: 218px !important;
  max-height: 218px !important;
}

body.ai-chat-mode.ai-model-video .ai-generation-composer-mount {
  grid-row: 3 !important;
  height: 96px !important;
  min-height: 96px !important;
}

@media (max-width: 1700px) and (min-width: 1181px) {
  body.ai-chat-mode.ai-model-video .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(230px, 1fr) 226px 92px !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-stage {
    min-height: 230px !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-settings {
    height: 226px !important;
    min-height: 226px !important;
    max-height: 226px !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-composer-mount {
    height: 92px !important;
    min-height: 92px !important;
  }
}

@media (max-width: 1180px) and (min-width: 761px) {
  body.ai-chat-mode.ai-model-video .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(200px, 1fr) 248px 88px !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-stage {
    min-height: 200px !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-settings {
    height: 248px !important;
    min-height: 248px !important;
    max-height: 248px !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-composer-mount {
    height: 88px !important;
    min-height: 88px !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-video .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(240px, 1fr) auto 84px !important;
    overflow-y: auto !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-stage {
    min-height: 240px !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-settings {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  body.ai-chat-mode.ai-model-video .ai-generation-composer-mount {
    height: 84px !important;
    min-height: 84px !important;
  }
}
/* 20260719 visible looping feedback while GPT is thinking. */
body.ai-chat-mode.ai-model-chat .ai-chat-message-row.is-pending .ai-chat-message {
  width: max-content !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 68px !important;
  display: flex !important;
  align-items: center !important;
  padding: 16px !important;
  border-color: rgba(117, 218, 197, 0.24) !important;
  background: linear-gradient(135deg, rgba(19, 31, 38, 0.86), rgba(12, 22, 29, 0.72)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 12px 28px rgba(0, 0, 0, 0.18) !important;
  animation: ai-thinking-bubble-breathe 2.4s ease-in-out infinite !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.is-pending .ai-chat-message::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 1px;
  border-radius: 13px;
  pointer-events: none;
  background: linear-gradient(108deg, transparent 25%, rgba(151, 255, 222, 0.03) 39%, rgba(193, 255, 235, 0.16) 50%, rgba(151, 255, 222, 0.03) 61%, transparent 75%) 140% 0 / 230% 100% no-repeat;
  animation: ai-thinking-soft-sweep 3.1s cubic-bezier(.42, 0, .35, 1) infinite;
}

body.ai-chat-mode.ai-model-chat .ai-chat-thinking {
  position: relative;
  z-index: 1;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 13px !important;
  min-width: 0;
  margin: 0 !important;
  color: rgba(235, 247, 244, 0.92) !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-thinking-label {
  display: inline-block;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 650;
  letter-spacing: 0;
}

body.ai-chat-mode.ai-model-chat .ai-chat-thinking-dots {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: 31px;
  height: 18px;
}

body.ai-chat-mode.ai-model-chat .ai-chat-thinking-dots i {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #86e7ca;
  box-shadow: 0 0 8px rgba(105, 231, 195, 0.52);
  opacity: 0.3;
  animation: ai-thinking-dot-rise 1.35s cubic-bezier(.45, 0, .25, 1) infinite;
}

body.ai-chat-mode.ai-model-chat .ai-chat-thinking-dots i:nth-child(2) {
  animation-delay: 0.16s;
}

body.ai-chat-mode.ai-model-chat .ai-chat-thinking-dots i:nth-child(3) {
  animation-delay: 0.32s;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.is-pending .ai-chat-message-avatar {
  animation: ai-thinking-avatar-pulse 2.4s ease-in-out infinite;
}

@keyframes ai-thinking-dot-rise {
  0%, 60%, 100% { opacity: 0.28; transform: translateY(1px) scale(0.78); }
  30% { opacity: 1; transform: translateY(-4px) scale(1); }
}

@keyframes ai-thinking-bubble-breathe {
  0%, 100% { border-color: rgba(117, 218, 197, 0.2); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 12px 28px rgba(0, 0, 0, 0.17); }
  50% { border-color: rgba(132, 235, 211, 0.36); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 12px 30px rgba(0, 0, 0, 0.2), 0 0 18px rgba(77, 205, 171, 0.09); }
}

@keyframes ai-thinking-soft-sweep {
  0%, 14% { background-position: 140% 0; opacity: 0; }
  24% { opacity: 0.8; }
  64% { opacity: 0.8; }
  76%, 100% { background-position: -120% 0; opacity: 0; }
}

@keyframes ai-thinking-avatar-pulse {
  0%, 100% { border-color: rgba(145, 203, 216, 0.24); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07), 0 8px 20px rgba(0, 0, 0, 0.16); }
  50% { border-color: rgba(128, 226, 205, 0.42); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.09), 0 8px 22px rgba(0, 0, 0, 0.18), 0 0 16px rgba(76, 214, 177, 0.12); }
}

@media (prefers-reduced-motion: reduce) {
  body.ai-chat-mode.ai-model-chat .ai-chat-message-row.is-pending .ai-chat-message,
  body.ai-chat-mode.ai-model-chat .ai-chat-message-row.is-pending .ai-chat-message::after,
  body.ai-chat-mode.ai-model-chat .ai-chat-message-row.is-pending .ai-chat-message-avatar,
  body.ai-chat-mode.ai-model-chat .ai-chat-thinking-dots i {
    animation: none !important;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-thinking-dots i {
    opacity: 0.72;
    transform: none;
  }
}

/* 20260719 Image history clear button refinement. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear {
  position: relative;
  isolation: isolate;
  display: inline-grid;
  grid-template-columns: 17px auto;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 62px;
  height: 29px;
  min-width: 62px;
  padding: 0 9px 0 7px;
  overflow: hidden;
  border: 1px solid rgba(124, 220, 201, .18);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(32, 48, 54, .78), rgba(16, 28, 33, .72));
  color: rgba(222, 241, 237, .9);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .055), 0 5px 14px rgba(0, 0, 0, .14);
  backdrop-filter: blur(12px) saturate(118%);
  -webkit-backdrop-filter: blur(12px) saturate(118%);
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, color .18s ease, background .18s ease, box-shadow .18s ease;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: 0;
  background: linear-gradient(105deg, transparent 12%, rgba(123, 232, 208, .14) 48%, transparent 82%);
  transform: translateX(-105%);
  transition: transform .48s cubic-bezier(.22, .75, .22, 1), opacity .18s ease;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear > span {
  display: grid;
  place-items: center;
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: rgba(111, 219, 196, .09);
  color: rgba(137, 234, 213, .9);
  font-size: 15px;
  font-weight: 400;
  line-height: 1;
  transform: translateY(-.5px);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear > strong {
  font-size: 12px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear:hover:not(:disabled) {
  transform: translateY(-1px);
  border-color: rgba(126, 229, 207, .38);
  background: linear-gradient(180deg, rgba(38, 60, 65, .88), rgba(18, 34, 38, .82));
  color: #f0fbf8;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 7px 18px rgba(0, 0, 0, .2), 0 0 14px rgba(73, 201, 172, .08);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear:hover:not(:disabled)::after {
  opacity: 1;
  transform: translateX(105%);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear:active:not(:disabled) {
  transform: translateY(0) scale(.97);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear:focus-visible {
  outline: 2px solid rgba(117, 226, 203, .46);
  outline-offset: 2px;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear:disabled {
  opacity: .36;
  cursor: default;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .03);
}

@media (prefers-reduced-motion: reduce) {
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear,
  body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear::after {
    transition: none;
  }
}
/* 20260719 Keep the GPT welcome prompt on one line. */
body.ai-chat-mode.ai-model-chat .ai-chat-welcome {
  width: 100%;
  max-width: 100%;
  padding-inline: 18px;
  box-sizing: border-box;
}

body.ai-chat-mode.ai-model-chat .ai-chat-welcome p,
body.ai-chat-mode.ai-model-chat:not(.ai-chat-scrolled) .ai-chat-welcome p {
  display: block;
  width: max-content;
  max-width: 100%;
  margin-inline: auto;
  overflow: hidden;
  color: rgba(185, 204, 215, .58);
  line-height: 1.5;
  white-space: nowrap;
  text-overflow: ellipsis;
  -webkit-box-orient: initial;
  -webkit-line-clamp: unset;
}

@media (max-width: 680px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-welcome {
    padding-inline: 10px;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-welcome p {
    font-size: 11px;
  }
}
/* 20260720 compact Image 2 parameter toolbar. */
body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
  grid-template-rows: minmax(260px, 1fr) 104px 96px !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-settings {
  height: 104px !important;
  min-height: 104px !important;
  max-height: 104px !important;
  padding: 10px 12px !important;
  overflow: visible !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  display: grid !important;
  grid-template-columns: minmax(350px, 1.7fr) minmax(150px, .58fr) minmax(140px, .54fr) minmax(236px, .82fr) !important;
  grid-template-rows: 1fr !important;
  align-items: stretch !important;
  gap: 10px !important;
  height: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group {
  display: grid !important;
  grid-template-rows: 18px 42px !important;
  align-content: center !important;
  gap: 4px !important;
  min-width: 0 !important;
  height: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-caption {
  display: block !important;
  margin: 0 !important;
  padding-inline: 2px !important;
  color: rgba(210, 227, 231, .84) !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 18px !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group .ai-image-control-block {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 4px 6px !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-image-ratio-row {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 5px !important;
  width: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-image-chip {
  height: 32px !important;
  min-height: 32px !important;
  padding: 0 8px !important;
  border-radius: 7px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-group .ai-image-field,
body.ai-chat-mode.ai-model-image .ai-image-control-group .ai-image-select {
  width: 100% !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-image-select {
  padding-block: 0 !important;
  line-height: 32px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  display: grid !important;
  grid-template: 42px / minmax(94px, .72fr) minmax(132px, 1fr) !important;
  align-self: center !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions > button {
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding-inline: 12px !important;
  border-radius: 8px !important;
  white-space: nowrap !important;
}

@media (max-width: 1180px) and (min-width: 761px) {
  body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(220px, 1fr) 164px 88px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-generation-settings {
    height: 164px !important;
    min-height: 164px !important;
    max-height: 164px !important;
    padding: 10px 12px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(320px, 1.5fr) minmax(140px, .65fr) minmax(140px, .65fr) !important;
    grid-template-rows: 66px 58px !important;
    gap: 8px 10px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-group:first-child {
    grid-column: 1 / 2 !important;
    grid-row: 1 / 2 !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-self: end !important;
    width: min(100%, 360px) !important;
    margin-top: 6px !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(210px, 1fr) auto 84px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-generation-settings {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 10px !important;
    overflow: visible !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-rows: auto !important;
    gap: 8px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-group:first-child,
  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-column: 1 / -1 !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    margin-top: 0 !important;
  }
}
/* 20260720 compact Image 2 context summary bar. */
body.ai-chat-mode.ai-model-image .ai-chat-model-context {
  align-items: center !important;
  gap: 8px 10px !important;
  padding: 7px 12px !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-model-context > div {
  grid-template-columns: 78px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 8px 10px !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-model-context #ai-chat-context-title {
  align-self: center !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-grid {
  display: grid !important;
  grid-template-columns: minmax(188px, 1.25fr) minmax(138px, .9fr) minmax(102px, .62fr) minmax(92px, .56fr) minmax(132px, .82fr) minmax(150px, .95fr) minmax(240px, 1.75fr) !important;
  align-items: center !important;
  gap: 7px !important;
  width: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-item,
body.ai-chat-mode.ai-model-image .ai-context-param-item.is-prompt {
  grid-column: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-width: 0 !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 5px 9px !important;
  border-radius: 9px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-item em {
  flex: 0 0 auto !important;
  font-size: 10px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-context-param-item strong,
body.ai-chat-mode.ai-model-image .ai-context-param-item.is-prompt strong {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  color: rgba(236, 244, 248, .96) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  -webkit-box-orient: initial !important;
  -webkit-line-clamp: unset !important;
}

@media (max-width: 1500px) and (min-width: 1101px) {
  body.ai-chat-mode.ai-model-image .ai-context-param-grid {
    grid-template-columns: minmax(180px, 1.2fr) minmax(128px, .82fr) minmax(92px, .58fr) minmax(84px, .52fr) minmax(120px, .75fr) minmax(136px, .86fr) minmax(190px, 1.4fr) !important;
    gap: 6px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-context-param-item,
  body.ai-chat-mode.ai-model-image .ai-context-param-item.is-prompt {
    padding-inline: 7px !important;
    gap: 5px !important;
  }
}

@media (max-width: 1100px) and (min-width: 761px) {
  body.ai-chat-mode.ai-model-image .ai-chat-model-context > div {
    grid-template-columns: 70px minmax(0, 1fr) !important;
  }

  body.ai-chat-mode.ai-model-image .ai-context-param-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-context-param-item.is-prompt {
    grid-column: span 2 !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-chat-model-context {
    padding: 7px 9px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-chat-model-context > div {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-context-param-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-context-param-item.is-prompt {
    grid-column: 1 / -1 !important;
  }
}
/* 20260720 generated image original-file context action. */
.ai-image-result-context[hidden] {
  display: none !important;
}

.ai-image-result-context {
  position: fixed;
  z-index: 2400;
  width: 178px;
  padding: 6px;
  border: 1px solid rgba(113, 211, 194, .22);
  border-radius: 8px;
  background: rgba(6, 17, 22, .95);
  box-shadow: 0 18px 44px rgba(0, 5, 10, .48), inset 0 1px 0 rgba(222, 255, 249, .05);
  backdrop-filter: blur(18px) saturate(1.14);
}

.ai-image-result-context button {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 38px;
  padding: 0 10px 0 7px;
  border: 0;
  border-radius: 6px;
  color: rgba(231, 247, 245, .9);
  background: transparent;
  font: inherit;
  font-size: 12px;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
  transition: color .16s ease, background .16s ease, transform .16s ease;
}

.ai-image-result-context button:hover,
.ai-image-result-context button:focus-visible {
  color: #f4fffc;
  background: rgba(77, 188, 168, .15);
  outline: none;
}

.ai-image-result-context button:active {
  transform: scale(.985);
}

.ai-image-result-context-icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(116, 222, 200, .2);
  border-radius: 7px;
  color: rgba(159, 241, 222, .96);
  background: rgba(61, 165, 148, .12);
  font-size: 18px;
  line-height: 1;
}

.ai-image-result-context button.is-working .ai-image-result-context-icon {
  animation: ai-image-save-pulse .72s ease-in-out infinite alternate;
}

@keyframes ai-image-save-pulse {
  from { opacity: .48; transform: translateY(-1px); }
  to { opacity: 1; transform: translateY(1px); }
}

/* 20260720 compact inline Image 2 parameter drawers. */
body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
  grid-template-rows: minmax(260px, 1fr) 76px 96px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-params-panel.ai-generation-settings {
  height: 76px !important;
  min-height: 76px !important;
  max-height: 76px !important;
  padding: 10px 12px !important;
  overflow: visible !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  grid-template-rows: 42px !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  height: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-image-compact-parameters {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select {
  position: relative;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 0;
  height: 42px;
  padding: 0 32px 0 12px;
  border: 1px solid rgba(111, 194, 181, .2);
  border-radius: 8px;
  background: rgba(7, 23, 28, .68);
  box-shadow: inset 0 1px 0 rgba(225, 255, 249, .035);
  box-sizing: border-box;
  color: rgba(225, 237, 240, .9);
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-ratio {
  width: 178px;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-resolution {
  width: 146px;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-count {
  width: 154px;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select:hover {
  border-color: rgba(114, 218, 199, .38);
  background: rgba(9, 31, 36, .82);
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select:focus-within {
  border-color: rgba(120, 231, 209, .58);
  box-shadow: 0 0 0 2px rgba(74, 190, 169, .1), inset 0 1px 0 rgba(225, 255, 249, .05);
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select > span {
  flex: 0 0 auto;
  color: rgba(188, 207, 211, .82);
  font-size: 12px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select > select {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  height: 40px;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  appearance: none;
  color: #f2fbf9;
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  line-height: 40px;
  cursor: pointer;
  color-scheme: dark;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select > select option {
  color: #eaf5f3;
  background: #0b1a1f;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 13px;
  width: 6px;
  height: 6px;
  margin-top: -5px;
  border-right: 1.5px solid rgba(155, 221, 209, .82);
  border-bottom: 1.5px solid rgba(155, 221, 209, .82);
  transform: rotate(45deg);
  pointer-events: none;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  display: grid !important;
  grid-template: 42px / 112px 164px !important;
  align-self: center !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: auto !important;
  min-width: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions > button {
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding-inline: 12px !important;
  border-radius: 8px !important;
  white-space: nowrap !important;
}

@media (max-width: 980px) and (min-width: 761px) {
  body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(220px, 1fr) 128px 88px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-params-panel.ai-generation-settings {
    height: 128px !important;
    min-height: 128px !important;
    max-height: 128px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: 42px 42px !important;
    row-gap: 8px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-compact-parameters {
    grid-column: 1 / -1;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio {
    grid-template-rows: minmax(210px, 1fr) auto 84px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-params-panel.ai-generation-settings {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-controls {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto !important;
    gap: 8px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-compact-parameters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.ai-chat-mode.ai-model-image .ai-image-inline-select,
  body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-ratio,
  body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-resolution,
  body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-count {
    width: 100%;
  }

  body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-ratio {
    grid-column: 1 / -1;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-template-columns: minmax(104px, .72fr) minmax(138px, 1fr) !important;
    grid-column: 1 !important;
    grid-row: auto !important;
    width: 100% !important;
  }
}

@media (max-width: 460px) {
  body.ai-chat-mode.ai-model-image .ai-image-compact-parameters {
    grid-template-columns: 1fr;
  }

  body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-ratio {
    grid-column: auto;
  }
}
/* 20260720 Image 2 history selection and batch management. */
body.ai-chat-mode.ai-model-image .ai-image-history-item {
  position: relative !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-check {
  position: absolute;
  z-index: 5;
  top: 13px;
  left: 13px;
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border: 1px solid rgba(152, 193, 195, .42);
  border-radius: 50%;
  background: rgba(4, 15, 20, .8);
  box-shadow: inset 0 0 0 3px rgba(4, 15, 20, .72), 0 4px 12px rgba(0, 0, 0, .24);
  pointer-events: none;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.ai-chat-mode.ai-model-image .ai-image-history-item.is-selected {
  border-color: rgba(115, 230, 204, .48) !important;
  background: rgba(70, 176, 158, .17) !important;
  box-shadow: inset 2px 0 0 rgba(121, 235, 208, .88), 0 8px 22px rgba(2, 12, 17, .14) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-item.is-selected .ai-image-history-check {
  border-color: rgba(141, 245, 220, .92);
  background: rgba(105, 224, 195, .92);
  box-shadow: inset 0 0 0 3px rgba(18, 74, 67, .9), 0 0 12px rgba(103, 225, 196, .22);
}

body.ai-chat-mode.ai-model-image .ai-image-history-item.is-selected .ai-image-history-check::after {
  width: 6px;
  height: 3px;
  border-left: 1.5px solid #effffb;
  border-bottom: 1.5px solid #effffb;
  content: '';
  transform: translateY(-1px) rotate(-45deg);
}

body.ai-chat-mode.ai-model-image .ai-image-history-item:active .ai-image-history-check {
  transform: scale(.92);
}

/* 20260720 remove Image 2 context row and expand generation stage. */
body.ai-chat-mode.ai-model-image .ai-chat-main {
  grid-template-rows: minmax(0, 1fr) !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-model-context,
body.ai-chat-mode.ai-model-image .ai-chat-model-context[hidden] {
  display: none !important;
}

/* 20260720 preserve each generated image's requested aspect ratio. */
body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 {
  --result-cols: 1 !important;
  justify-items: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 .ai-image-result-card {
  width: min(100%, 720px) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1[data-ratio="9:16"] .ai-image-result-card {
  width: min(100%, 420px) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1[data-ratio="3:4"] .ai-image-result-card {
  width: min(100%, 520px) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1[data-ratio="16:9"] .ai-image-result-card,
body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1[data-ratio="4:3"] .ai-image-result-card {
  width: min(100%, 860px) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-frame,
body.ai-chat-mode.ai-model-image .ai-image-result-frame img,
body.ai-chat-mode.ai-model-image .ai-image-result-card img {
  max-height: none !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-frame img,
body.ai-chat-mode.ai-model-image .ai-image-result-card img {
  object-fit: contain !important;
}

/* 20260720 pure generated images and contextual image management. */
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-ready {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  transform: none !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-ready .ai-image-result-frame {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
  cursor: context-menu;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-ready .ai-image-result-frame::before,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-ready .ai-image-result-frame::after,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-ready::before,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-ready::after {
  display: none !important;
  content: none !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-ready img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  object-fit: contain !important;
  filter: none !important;
  transform: none !important;
}

.ai-image-result-context button.is-danger {
  color: rgba(255, 188, 188, .96);
}

.ai-image-result-context button.is-danger .ai-image-result-context-icon {
  color: #ffc1c1;
  border-color: rgba(255, 111, 111, .24);
  background: rgba(184, 54, 54, .14);
}

.ai-image-result-context button.is-danger:hover,
.ai-image-result-context button.is-danger:focus-visible {
  color: #fff1f1;
  background: rgba(184, 54, 54, .18);
}

.ai-image-result-details[hidden] {
  display: none !important;
}

.ai-image-result-details {
  position: fixed;
  inset: 0;
  z-index: 10040;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(2, 7, 12, .68);
  backdrop-filter: blur(12px);
}

.ai-image-result-details-panel {
  width: min(560px, 100%);
  max-height: min(720px, calc(100vh - 48px));
  overflow: auto;
  padding: 22px;
  border: 1px solid rgba(104, 218, 190, .2);
  border-radius: 8px;
  color: #eef8f5;
  background: linear-gradient(180deg, rgba(13, 25, 31, .98), rgba(5, 13, 20, .98));
  box-shadow: 0 24px 70px rgba(0, 0, 0, .48), 0 0 32px rgba(69, 195, 164, .08);
}

.ai-image-result-details-panel header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
}

.ai-image-result-details-panel header span,
.ai-image-result-details-prompt > span,
.ai-image-result-details-grid span {
  color: rgba(157, 190, 188, .78);
  font-size: 12px;
}

.ai-image-result-details-panel h3 {
  margin: 4px 0 0;
  font-size: 20px;
  letter-spacing: 0;
}

.ai-image-result-details-panel header button {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid rgba(143, 192, 184, .2);
  border-radius: 50%;
  color: rgba(235, 249, 245, .9);
  background: rgba(255, 255, 255, .05);
  font-size: 21px;
  line-height: 1;
  cursor: pointer;
}

.ai-image-result-details-panel header button:hover,
.ai-image-result-details-panel header button:focus-visible {
  border-color: rgba(101, 226, 195, .48);
  background: rgba(91, 205, 177, .14);
  outline: none;
}

.ai-image-result-details-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.ai-image-result-details-grid > div,
.ai-image-result-details-prompt {
  min-width: 0;
  padding: 12px 13px;
  border: 1px solid rgba(146, 178, 181, .12);
  border-radius: 7px;
  background: rgba(255, 255, 255, .035);
}

.ai-image-result-details-grid strong {
  display: block;
  margin-top: 5px;
  color: rgba(242, 250, 248, .96);
  font-size: 14px;
  font-weight: 650;
  overflow-wrap: anywhere;
}

.ai-image-result-details-prompt {
  margin-top: 10px;
}

.ai-image-result-details-prompt p {
  margin: 7px 0 0;
  color: rgba(226, 239, 237, .92);
  font-size: 14px;
  line-height: 1.7;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

@media (max-width: 560px) {
  .ai-image-result-details {
    padding: 12px;
  }

  .ai-image-result-details-panel {
    padding: 16px;
  }

  .ai-image-result-details-grid {
    grid-template-columns: 1fr;
  }
}

/* 20260720 clean animated image-generation waiting canvas. */
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder {
  position: relative !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame {
  isolation: isolate;
  border: 0 !important;
  border-radius: 12px !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(93, 224, 197, .12) 0, rgba(93, 224, 197, .035) 28%, transparent 58%),
    radial-gradient(circle at 34% 32%, rgba(96, 184, 180, .08), transparent 36%),
    linear-gradient(145deg, rgba(13, 30, 34, .5), rgba(7, 18, 23, .28)) !important;
  background-size: 145% 145%, 125% 125%, 100% 100% !important;
  background-position: 50% 50%, 32% 32%, 50% 50% !important;
  box-shadow: none !important;
  color: transparent !important;
  gap: 0 !important;
  animation: ai-image-waiting-field 7s ease-in-out infinite alternate;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame::before {
  position: absolute;
  z-index: -1;
  width: 62%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(94, 224, 198, .11), rgba(50, 132, 128, .035) 44%, transparent 70%);
  filter: blur(18px);
  content: '';
  animation: ai-image-waiting-cloud 5.6s ease-in-out infinite;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(112deg, transparent 32%, rgba(154, 247, 224, .045) 48%, transparent 64%);
  background-size: 220% 100%;
  content: '';
  animation: ai-image-waiting-sweep 6.8s ease-in-out infinite;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder figcaption,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-caption,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-title,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-meta-line,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-meta-list,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder strong,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder small,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-card-spinner {
  display: none !important;
}

.ai-image-waiting-visual {
  position: relative;
  display: block;
  width: clamp(132px, 30%, 214px);
  aspect-ratio: 1;
  border-radius: 50%;
  transform: translateZ(0);
}

.ai-image-waiting-halo,
.ai-image-waiting-orbit,
.ai-image-waiting-core,
.ai-image-waiting-particle {
  position: absolute;
  display: block;
  border-radius: 50%;
  pointer-events: none;
}

.ai-image-waiting-halo {
  inset: 12%;
  background: radial-gradient(circle, rgba(151, 255, 232, .22), rgba(70, 202, 181, .075) 45%, transparent 72%);
  filter: blur(9px);
  animation: ai-image-waiting-breathe 2.8s ease-in-out infinite;
}

.ai-image-waiting-orbit {
  inset: 3%;
  border: 1px solid rgba(130, 231, 211, .12);
  border-top-color: rgba(164, 255, 235, .78);
  border-right-color: rgba(84, 205, 184, .36);
  box-shadow: inset 0 0 18px rgba(66, 192, 170, .035), 0 0 18px rgba(68, 205, 180, .045);
  animation: ai-image-waiting-orbit 4.8s linear infinite;
}

.ai-image-waiting-orbit.is-inner {
  inset: 24%;
  border-color: rgba(109, 221, 201, .12);
  border-right-color: rgba(190, 255, 240, .82);
  border-bottom-color: rgba(68, 194, 174, .38);
  animation-duration: 3.4s;
  animation-direction: reverse;
}

.ai-image-waiting-core {
  inset: 36%;
  background: radial-gradient(circle at 40% 35%, rgba(235, 255, 250, .98), rgba(119, 238, 211, .9) 24%, rgba(45, 164, 148, .36) 58%, transparent 72%);
  box-shadow: 0 0 18px rgba(115, 240, 211, .48), 0 0 44px rgba(62, 188, 167, .22);
  animation: ai-image-waiting-core 2.2s ease-in-out infinite;
}

.ai-image-waiting-particle {
  width: 7px;
  height: 7px;
  background: rgba(190, 255, 239, .92);
  box-shadow: 0 0 9px rgba(125, 239, 214, .7);
}

.ai-image-waiting-particle.is-one {
  top: 8%;
  left: 48%;
  animation: ai-image-waiting-particle-one 4.8s ease-in-out infinite;
}

.ai-image-waiting-particle.is-two {
  right: 12%;
  bottom: 24%;
  width: 5px;
  height: 5px;
  opacity: .72;
  animation: ai-image-waiting-particle-two 3.7s ease-in-out infinite;
}

.ai-image-waiting-particle.is-three {
  bottom: 15%;
  left: 18%;
  width: 4px;
  height: 4px;
  opacity: .55;
  animation: ai-image-waiting-particle-three 4.2s ease-in-out infinite;
}

.ai-image-placeholder-mark {
  width: 54px;
  aspect-ratio: 1;
  border: 1px dashed rgba(126, 191, 182, .28);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(102, 206, 187, .1), transparent 64%);
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-placeholder-mark {
  border-color: rgba(221, 125, 125, .34);
  background: radial-gradient(circle, rgba(190, 77, 77, .1), transparent 64%);
}

@keyframes ai-image-waiting-field {
  0% { background-position: 50% 54%, 25% 28%, 50% 50%; }
  100% { background-position: 50% 44%, 43% 38%, 50% 50%; }
}

@keyframes ai-image-waiting-cloud {
  0%, 100% { opacity: .58; transform: scale(.88); }
  50% { opacity: 1; transform: scale(1.08); }
}

@keyframes ai-image-waiting-sweep {
  0%, 18% { background-position: 180% 0; opacity: 0; }
  42% { opacity: .82; }
  70%, 100% { background-position: -90% 0; opacity: 0; }
}

@keyframes ai-image-waiting-breathe {
  0%, 100% { opacity: .58; transform: scale(.84); }
  50% { opacity: 1; transform: scale(1.12); }
}

@keyframes ai-image-waiting-orbit {
  to { transform: rotate(360deg); }
}

@keyframes ai-image-waiting-core {
  0%, 100% { opacity: .72; transform: scale(.78); }
  50% { opacity: 1; transform: scale(1.16); }
}

@keyframes ai-image-waiting-particle-one {
  0%, 100% { opacity: .36; transform: translate(-12px, 7px) scale(.7); }
  50% { opacity: 1; transform: translate(15px, -5px) scale(1.15); }
}

@keyframes ai-image-waiting-particle-two {
  0%, 100% { opacity: .24; transform: translate(-4px, -12px); }
  50% { opacity: .86; transform: translate(8px, 10px); }
}

@keyframes ai-image-waiting-particle-three {
  0%, 100% { opacity: .18; transform: translate(10px, -4px); }
  50% { opacity: .68; transform: translate(-8px, 8px); }
}

@media (prefers-reduced-motion: reduce) {
  body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame,
  body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame::before,
  body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame::after,
  .ai-image-waiting-halo,
  .ai-image-waiting-orbit,
  .ai-image-waiting-core,
  .ai-image-waiting-particle {
    animation: none !important;
  }
}
/* 20260720 remove the generated-image parameter summary strip and its layout footprint. */
body.ai-chat-mode.ai-model-image .ai-image-stage-meta {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
}
/* 20260720 keep dragged chat attachments compact inside the composer. */
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .ai-search-layout,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-control,
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box-row {
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-control {
  display: flex !important;
  flex-direction: column !important;
}

body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .ai-attachment-preview:not([hidden]) {
  order: -1;
  display: flex !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 10px !important;
  padding: 0 2px 2px !important;
  gap: 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scrollbar-color: rgba(105, 206, 194, .38) transparent;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-item {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) !important;
  flex: 0 0 210px !important;
  width: 210px !important;
  min-width: 0 !important;
  max-width: 210px !important;
  height: 64px !important;
  min-height: 64px !important;
  max-height: 64px !important;
  margin: 0 !important;
  padding: 6px 32px 6px 6px !important;
  align-items: center !important;
  gap: 9px !important;
  overflow: hidden !important;
  border: 1px solid rgba(131, 220, 215, .17) !important;
  border-radius: 9px !important;
  background: rgba(7, 18, 26, .78) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .045), 0 8px 20px rgba(0, 0, 0, .16) !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-item > img,
body.ai-chat-mode.ai-model-chat .ai-attachment-item > video,
body.ai-chat-mode.ai-model-chat .ai-attachment-file-icon {
  display: block !important;
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  margin: 0 !important;
  border-radius: 7px !important;
  object-fit: cover !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-item figcaption {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-item figcaption strong,
body.ai-chat-mode.ai-model-chat .ai-attachment-item figcaption span {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-item figcaption strong {
  color: rgba(235, 247, 248, .92) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 650 !important;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-item figcaption span {
  margin-top: 4px !important;
  color: rgba(178, 204, 209, .58) !important;
  font-size: 10px !important;
  line-height: 1.2 !important;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-item > [data-ai-attachment-remove] {
  position: absolute !important;
  top: 7px !important;
  right: 7px !important;
  display: grid !important;
  place-items: center !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(220, 235, 237, .09) !important;
  color: rgba(232, 244, 246, .72) !important;
  font-size: 14px !important;
  line-height: 1 !important;
  cursor: pointer;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-item > [data-ai-attachment-remove]:hover,
body.ai-chat-mode.ai-model-chat .ai-attachment-item > [data-ai-attachment-remove]:focus-visible {
  background: rgba(116, 211, 198, .2) !important;
  color: #f4fffd !important;
}

body.ai-chat-mode.ai-model-chat .ai-attachment-kind {
  display: none !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat .ai-attachment-item {
    grid-template-columns: 46px minmax(0, 1fr) !important;
    flex-basis: 178px !important;
    width: 178px !important;
    max-width: 178px !important;
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
  }

  body.ai-chat-mode.ai-model-chat .ai-attachment-item > img,
  body.ai-chat-mode.ai-model-chat .ai-attachment-item > video,
  body.ai-chat-mode.ai-model-chat .ai-attachment-file-icon {
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
  }
}
/* Align image and video generation history with the GPT history rail. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-head {
  display: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-chat-history-list {
  justify-content: flex-start !important;
  align-content: flex-start !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* Remove the outer frame around the Image 2 compact parameter bar. */
body.ai-chat-mode.ai-model-image .ai-image-params-panel.ai-generation-settings {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.ai-chat-mode.ai-model-image .ai-image-params-panel.ai-generation-settings::before,
body.ai-chat-mode.ai-model-image .ai-image-params-panel.ai-generation-settings::after {
  display: none !important;
  content: none !important;
}
/* Visually center the GPT history title with the new-chat button. */
body.ai-chat-mode.ai-model-chat .ai-chat-history-head {
  align-items: center !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-head > #ai-chat-history-title {
  display: flex !important;
  align-items: center !important;
  min-height: 31px !important;
  line-height: 1 !important;
  transform: translateY(-1px);
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-head > #ai-new-chat {
  align-self: center !important;
  margin: 0 !important;
}
/* Simplified image-generation empty state. */
body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro {
  width: 100% !important;
  min-height: 100% !important;
  padding: 32px 24px !important;
  align-content: center !important;
  gap: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span {
  display: grid !important;
  width: 44px !important;
  height: 44px !important;
  margin: 0 0 18px !important;
  place-items: center !important;
  border: 1px solid rgba(111, 221, 198, .3) !important;
  border-radius: 50% !important;
  color: rgba(139, 238, 216, .96) !important;
  background: rgba(61, 157, 143, .12) !important;
  box-shadow: 0 0 24px rgba(72, 205, 179, .1) !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > strong {
  color: rgba(245, 250, 251, .96) !important;
  font-size: 25px !important;
  font-weight: 720 !important;
  line-height: 1.25 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > p {
  max-width: none !important;
  margin: 10px 0 0 !important;
  color: rgba(165, 188, 190, .76) !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro {
    padding: 24px 16px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > strong {
    font-size: 22px !important;
  }
}

/* 20260720 counted, ratio-aware image generation placeholders. */
body.ai-chat-mode.ai-model-image .ai-image-result-grid {
  width: 100% !important;
  grid-auto-flow: row !important;
  justify-content: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 {
  grid-template-columns: minmax(0, min(100%, 720px)) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder {
  border: 1px solid rgba(112, 207, 190, .13) !important;
  background: #020506 !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .015), 0 16px 38px rgba(0, 0, 0, .18) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame {
  background:
    radial-gradient(circle at 50% 48%, rgba(77, 199, 178, .115), transparent 31%),
    linear-gradient(180deg, #04090a 0%, #010304 100%) !important;
  animation-delay: var(--slot-delay, 0s) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-placeholder .ai-image-result-frame::after {
  background: linear-gradient(112deg, transparent 34%, rgba(151, 246, 224, .07) 49%, transparent 64%) !important;
  animation-delay: var(--slot-delay, 0s) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-waiting-visual {
  width: clamp(92px, 27%, 156px) !important;
  transform: translateY(-13%) translateZ(0) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-generating-status {
  position: absolute;
  left: 50%;
  top: 65%;
  z-index: 3;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transform: translate(-50%, -50%);
  color: rgba(218, 239, 235, .86) !important;
  white-space: nowrap;
  pointer-events: none;
}

body.ai-chat-mode.ai-model-image .ai-image-generating-label {
  display: inline !important;
  font-size: 13px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: 0;
}

body.ai-chat-mode.ai-model-image .ai-image-generating-dots {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
}

body.ai-chat-mode.ai-model-image .ai-image-generating-dots i {
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(139, 237, 215, .9);
  box-shadow: 0 0 7px rgba(99, 222, 196, .5);
  animation: ai-image-generating-dot 1.15s ease-in-out infinite;
  animation-delay: calc(var(--slot-delay, 0s) + var(--dot-delay, 0s));
}

body.ai-chat-mode.ai-model-image .ai-image-generating-dots i:nth-child(1) { --dot-delay: 0s; }
body.ai-chat-mode.ai-model-image .ai-image-generating-dots i:nth-child(2) { --dot-delay: .14s; }
body.ai-chat-mode.ai-model-image .ai-image-generating-dots i:nth-child(3) { --dot-delay: .28s; }

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-generating-status {
  color: rgba(239, 172, 172, .9) !important;
}

@keyframes ai-image-generating-dot {
  0%, 70%, 100% { opacity: .25; transform: translateY(0) scale(.8); }
  35% { opacity: 1; transform: translateY(-3px) scale(1.08); }
}

@media (max-width: 1100px) {
  body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 680px) {
  body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-2,
  body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-3 {
    grid-template-columns: 1fr !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.ai-chat-mode.ai-model-image .ai-image-generating-dots i {
    animation: none !important;
    opacity: .72;
  }
}
/* Match generation history heading to the GPT history heading. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: auto !important;
  margin-right: -8px !important;
  padding: 0 0 4px 4px !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > span {
  display: flex !important;
  align-items: center !important;
  min-height: 31px !important;
  color: rgba(236, 247, 250, .82) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .04em !important;
  transform: translateY(-1px);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > .ai-image-history-clear {
  align-self: center !important;
  margin: 0 !important;
}
/* Restore the GPT workspace to a two-row conversation layout. */
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-main {
  grid-template-rows: minmax(0, 1fr) auto !important;
}

body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
  height: auto !important;
  min-height: 0 !important;
}

body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
  align-self: end !important;
}
/* Restore the Kling workspace after the chat-only rollback. */
body.ai-chat-mode.ai-model-video .ai-chat-main {
  grid-template-rows: minmax(0, 1fr) !important;
}

body.ai-chat-mode.ai-model-video .ai-chat-studio {
  grid-row: 1 !important;
  min-height: 0 !important;
  height: 100% !important;
}

body.ai-chat-mode.ai-model-video .ai-chat-messages[hidden],
body.ai-chat-mode.ai-model-video .ai-chat-composer-dock:empty {
  display: none !important;
}
/* 20260720 keep a completed single image fully visible in the stage. */
body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage:has(.ai-image-result-grid.cols-1 > .ai-image-result-card.is-ready:only-child) {
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1:has(> .ai-image-result-card.is-ready:only-child) {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 > .ai-image-result-card.is-ready:only-child {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 > .ai-image-result-card.is-ready:only-child .ai-image-result-frame {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  aspect-ratio: auto !important;
  background: transparent !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 > .ai-image-result-card.is-ready:only-child img {
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}
/* 20260720 center Image 2 select values and expanded menu options. */
body.ai-chat-mode.ai-model-image .ai-image-inline-select:is(.is-ratio, .is-resolution) > select {
  text-align: center !important;
  text-align-last: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select:is(.is-ratio, .is-resolution) > select option {
  padding-inline: 0 !important;
  text-align: center !important;
  text-align-last: center !important;
}
/* 20260720 downward Image 2 count menu. */
body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-count > .ai-image-count-trigger {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  min-width: 0;
  height: 40px;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  color: #f2fbf9;
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  line-height: 40px;
  text-align: left;
  cursor: pointer;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-count > .ai-image-count-trigger strong {
  font: inherit;
  white-space: nowrap;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-count:has(.ai-image-count-popover:popover-open)::after {
  margin-top: -1px;
  transform: rotate(225deg);
}

body.ai-chat-mode.ai-model-image .ai-image-count-popover {
  position: fixed;
  z-index: 2147483647;
  inset: auto;
  display: none;
  grid-template-columns: 1fr;
  gap: 2px;
  box-sizing: border-box;
  margin: 0;
  padding: 5px;
  overflow-x: hidden;
  overflow-y: auto;
  border: 1px solid rgba(112, 204, 191, .28);
  border-radius: 8px;
  color: rgba(235, 247, 245, .94);
  background: rgba(7, 22, 27, .98);
  box-shadow: 0 14px 34px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(236, 255, 250, .045);
  color-scheme: dark;
}

body.ai-chat-mode.ai-model-image .ai-image-count-popover:popover-open {
  display: grid;
}

body.ai-chat-mode.ai-model-image .ai-image-count-option {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 32px;
  padding: 0 10px;
  border: 0;
  border-radius: 5px;
  color: rgba(225, 239, 239, .88);
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 650;
  text-align: left;
  cursor: pointer;
}

body.ai-chat-mode.ai-model-image .ai-image-count-option:hover,
body.ai-chat-mode.ai-model-image .ai-image-count-option:focus-visible {
  outline: 0;
  color: #f5fffc;
  background: rgba(75, 183, 163, .16);
}

body.ai-chat-mode.ai-model-image .ai-image-count-option.is-active {
  color: #f5fffc;
  background: rgba(91, 203, 181, .22);
}

body.ai-chat-mode.ai-model-image .ai-image-count-popover::-webkit-scrollbar {
  width: 5px;
}

body.ai-chat-mode.ai-model-image .ai-image-count-popover::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(105, 202, 188, .34);
}
/* 20260720 keep a single portrait generation card fully inside the visible stage. */
body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage:has(.ai-image-result-grid.cols-1 > .ai-image-result-card:only-child) {
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1:has(> .ai-image-result-card:only-child) {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 18px !important;
  box-sizing: border-box !important;
  align-items: center !important;
  justify-items: center !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 > .ai-image-result-card:only-child {
  width: auto !important;
  height: min(calc(100% - 8px), 600px) !important;
  max-width: calc(100% - 8px) !important;
  max-height: calc(100% - 8px) !important;
  aspect-ratio: var(--image-ratio, 1 / 1) !important;
  align-self: center !important;
  justify-self: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 > .ai-image-result-card:only-child .ai-image-result-frame {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  aspect-ratio: auto !important;
}

body.ai-chat-mode.ai-model-image .ai-image-result-grid.cols-1 > .ai-image-result-card.is-ready:only-child img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
}
/* 20260720 image generation retry action. */
body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-error .ai-image-retry {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 112px;
  height: 38px;
  margin: 10px 0 0;
  padding: 0 20px;
  border: 1px solid rgba(102, 218, 195, .34);
  border-radius: 7px;
  color: rgba(239, 253, 250, .96);
  background: rgba(55, 151, 135, .18);
  box-shadow: inset 0 1px 0 rgba(244, 255, 252, .06), 0 8px 24px rgba(0, 0, 0, .18);
  font: inherit;
  font-size: 14px;
  font-weight: 750;
  line-height: 1;
  cursor: pointer;
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-error .ai-image-retry:hover,
body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-error .ai-image-retry:focus-visible {
  outline: 0;
  border-color: rgba(126, 235, 214, .62);
  background: rgba(62, 174, 154, .28);
  box-shadow: inset 0 1px 0 rgba(244, 255, 252, .1), 0 0 0 3px rgba(84, 205, 183, .08), 0 10px 28px rgba(0, 0, 0, .22);
  transform: translateY(-1px);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-error .ai-image-retry:active {
  transform: translateY(0) scale(.98);
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-error .ai-image-retry:disabled {
  opacity: .46;
  cursor: default;
  transform: none;
}
/* 20260720 content-sized thinking bubble. */
body.ai-chat-mode.ai-model-chat .ai-chat-message-row.is-pending .ai-chat-message {
  flex: 0 0 auto !important;
  width: fit-content !important;
  min-width: 0 !important;
  max-width: calc(100% - 64px) !important;
  padding-right: 16px !important;
  padding-left: 16px !important;
}
/* 20260720 align chat time and identity on one baseline. */
body.ai-chat-mode.ai-model-chat .ai-chat-message-meta {
  align-items: baseline !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-role,
body.ai-chat-mode.ai-model-chat .ai-chat-message-meta time {
  line-height: 1.2 !important;
  vertical-align: baseline !important;
}
/* 20260720 make image-history quantity labels clearly readable. */
body.ai-chat-mode.ai-model-image .ai-image-history-thumb > em {
  right: 5px !important;
  bottom: 5px !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 22px !important;
  padding: 0 7px !important;
  border: 1px solid rgba(213, 244, 239, .28) !important;
  border-radius: 6px !important;
  color: rgba(250, 255, 254, .98) !important;
  background: rgba(3, 14, 19, .88) !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .72) !important;
  backdrop-filter: blur(6px) !important;
}
/* 20260720 narrow and slightly raise the chat model picker. */
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  width: 174px !important;
  min-width: 174px !important;
  height: 54px !important;
  min-height: 54px !important;
  padding: 6px 9px !important;
  gap: 8px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-chevron {
  flex: 0 0 auto !important;
  margin-left: 0 !important;
}
/* 20260720 keep all Image 2 parameter drawers visually consistent. */
body.ai-chat-mode.ai-model-image .ai-image-inline-select > :is(.ai-image-param-trigger, .ai-image-count-trigger) {
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  color: #f2fbf9 !important;
  background: transparent !important;
  font: inherit !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  line-height: 40px !important;
  text-align: center !important;
  cursor: pointer !important;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select > :is(.ai-image-param-trigger, .ai-image-count-trigger) strong {
  width: 100% !important;
  font: inherit !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-select:has(.ai-image-param-popover:popover-open)::after,
body.ai-chat-mode.ai-model-image .ai-image-inline-select:has(.ai-image-count-popover:popover-open)::after {
  margin-top: -1px !important;
  transform: rotate(225deg) !important;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-param-popover, .ai-image-count-popover) {
  position: fixed !important;
  z-index: 2147483647 !important;
  inset: auto !important;
  display: none;
  grid-template-columns: 1fr !important;
  gap: 2px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 5px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  border: 1px solid rgba(112, 204, 191, .28) !important;
  border-radius: 8px !important;
  color: rgba(235, 247, 245, .94) !important;
  background: rgba(7, 22, 27, .98) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .42), inset 0 1px 0 rgba(236, 255, 250, .045) !important;
  color-scheme: dark;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-param-popover, .ai-image-count-popover):popover-open {
  display: grid;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-param-option, .ai-image-count-option) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 32px !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 5px !important;
  color: rgba(225, 239, 239, .88) !important;
  background: transparent !important;
  font: inherit !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  text-align: center !important;
  cursor: pointer !important;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-param-option, .ai-image-count-option):is(:hover, :focus-visible) {
  outline: 0 !important;
  color: #f5fffc !important;
  background: rgba(75, 183, 163, .16) !important;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-param-option, .ai-image-count-option).is-active {
  color: #f5fffc !important;
  background: rgba(91, 203, 181, .22) !important;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-param-popover, .ai-image-count-popover)::-webkit-scrollbar {
  width: 5px;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-param-popover, .ai-image-count-popover)::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(105, 202, 188, .34);
}
/* 20260720 tighten the Image 2 parameter and action controls. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-model-image .ai-image-inline-select {
    padding-right: 26px !important;
    padding-left: 10px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-ratio {
    width: 152px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-resolution {
    width: 124px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-inline-select.is-count {
    width: 140px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-inline-select::after {
    right: 10px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-template-columns: 96px 144px !important;
  }
}
/* 20260720 GPT session resource library. */
.ai-resource-library[hidden],
body.ai-chat-mode:not(.ai-model-chat) .ai-resource-library {
  display: none !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-workspace {
  grid-template-columns: 300px minmax(560px, 1fr) 300px !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history {
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border-left: 1px solid rgba(132, 202, 197, .15);
  background: linear-gradient(180deg, rgba(8, 21, 26, .64), rgba(5, 15, 20, .48));
  box-shadow: inset 1px 0 0 rgba(225, 255, 249, .025);
  backdrop-filter: blur(18px);
}

.ai-resource-library-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 0 0 auto;
  min-height: 64px;
  padding: 12px 14px 10px 16px;
}

.ai-resource-library-title {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 10px;
}

.ai-resource-library-title > div {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 2px;
}

.ai-resource-library-title strong {
  color: rgba(240, 250, 248, .96);
  font-size: 15px;
  font-weight: 760;
  line-height: 1.2;
}

.ai-resource-library-title > div > span {
  color: rgba(167, 194, 197, .58);
  font-size: 10px;
  font-weight: 650;
  line-height: 1.2;
}

.ai-resource-library-mark,
.ai-resource-library-upload {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
}

.ai-resource-library-mark {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(111, 209, 192, .22);
  border-radius: 8px;
  color: rgba(168, 241, 225, .9);
  background: rgba(56, 145, 139, .12);
}

.ai-resource-library-mark svg,
.ai-resource-library-upload svg,
.ai-resource-library-search svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ai-resource-library-mark svg {
  width: 18px;
  height: 18px;
}

.ai-resource-library-upload {
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid rgba(111, 209, 192, .2);
  border-radius: 8px;
  color: rgba(202, 238, 233, .82);
  background: rgba(22, 66, 69, .46);
  cursor: pointer;
  transition: color .18s ease, border-color .18s ease, background .18s ease, transform .18s ease;
}

.ai-resource-library-upload svg {
  width: 17px;
  height: 17px;
}

.ai-resource-library-upload:is(:hover, :focus-visible) {
  outline: 0;
  color: #effffc;
  border-color: rgba(119, 228, 207, .48);
  background: rgba(48, 137, 128, .3);
  transform: translateY(-1px);
}

.ai-resource-library-search {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  height: 36px;
  margin: 0 14px 10px;
  padding: 0 11px;
  gap: 8px;
  border: 1px solid rgba(140, 190, 192, .14);
  border-radius: 8px;
  color: rgba(164, 198, 199, .5);
  background: rgba(3, 13, 18, .38);
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.ai-resource-library-search:focus-within {
  color: rgba(176, 239, 226, .78);
  border-color: rgba(103, 210, 190, .34);
  background: rgba(5, 21, 26, .68);
  box-shadow: 0 0 0 3px rgba(68, 178, 160, .07);
}

.ai-resource-library-search svg {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
}

.ai-resource-library-search input {
  width: 100%;
  min-width: 0;
  height: 34px;
  padding: 0;
  border: 0;
  outline: 0;
  color: rgba(235, 247, 245, .92);
  background: transparent;
  font: inherit;
  font-size: 12px;
  font-weight: 580;
}

.ai-resource-library-search input::placeholder {
  color: rgba(151, 177, 180, .44);
}

.ai-resource-library-list {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  padding: 0 10px 14px;
  gap: 6px;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(92, 188, 175, .28) transparent;
}

.ai-resource-library-list[hidden] {
  display: none !important;
}

.ai-resource-library-list::-webkit-scrollbar {
  width: 5px;
}

.ai-resource-library-list::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(92, 188, 175, .28);
}

.ai-resource-item {
  position: relative;
  display: flex;
  align-items: stretch;
  min-height: 64px;
  overflow: hidden;
  border: 1px solid rgba(139, 188, 190, .11);
  border-radius: 8px;
  background: rgba(9, 27, 31, .38);
  transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.ai-resource-item:hover {
  border-color: rgba(103, 207, 189, .27);
  background: rgba(13, 43, 45, .54);
  transform: translateY(-1px);
}

.ai-resource-item-main {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  padding: 8px 38px 8px 8px;
  gap: 9px;
  border: 0;
  color: inherit;
  background: transparent;
  text-align: left;
  cursor: pointer;
}

.ai-resource-item-main:focus-visible {
  outline: 1px solid rgba(116, 226, 205, .5);
  outline-offset: -2px;
}

.ai-resource-thumb {
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  overflow: hidden;
  border: 1px solid rgba(146, 197, 197, .14);
  border-radius: 7px;
  color: rgba(164, 226, 217, .84);
  background: rgba(3, 12, 16, .56);
}

.ai-resource-thumb :is(img, video) {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ai-resource-kind {
  position: absolute;
  right: 3px;
  bottom: 3px;
  padding: 1px 3px;
  border-radius: 3px;
  color: rgba(240, 253, 250, .94);
  background: rgba(2, 10, 13, .74);
  font-size: 7px;
  font-weight: 760;
}

.ai-resource-copy {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
  gap: 5px;
}

.ai-resource-copy strong,
.ai-resource-copy small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-resource-copy strong {
  color: rgba(231, 244, 242, .9);
  font-size: 11px;
  font-weight: 680;
}

.ai-resource-copy small {
  color: rgba(157, 185, 187, .5);
  font-size: 9px;
  font-weight: 580;
}

.ai-resource-delete {
  position: absolute;
  top: 8px;
  right: 8px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  color: rgba(175, 198, 200, .42);
  background: rgba(2, 10, 13, .32);
  font: inherit;
  font-size: 17px;
  line-height: 1;
  cursor: pointer;
  opacity: .62;
  transition: color .18s ease, background .18s ease, opacity .18s ease;
}

.ai-resource-delete:is(:hover, :focus-visible) {
  outline: 0;
  color: rgba(255, 226, 226, .96);
  background: rgba(163, 61, 66, .24);
  opacity: 1;
}

.ai-resource-file-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 30px;
  height: 34px;
}

.ai-resource-file-icon svg {
  width: 26px;
  height: 30px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ai-resource-file-icon b {
  position: absolute;
  bottom: 5px;
  max-width: 23px;
  overflow: hidden;
  color: rgba(209, 241, 235, .82);
  font-size: 6px;
  font-weight: 800;
  line-height: 1;
  text-overflow: ellipsis;
}

.ai-resource-library-empty {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 0;
  padding: 20px;
  color: rgba(163, 193, 194, .5);
  text-align: center;
}

.ai-resource-library-empty[hidden] {
  display: none !important;
}

.ai-resource-library-empty > span {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  margin-bottom: 13px;
  border: 1px solid rgba(105, 199, 184, .16);
  border-radius: 10px;
  color: rgba(140, 217, 204, .55);
  background: rgba(49, 125, 121, .08);
}

.ai-resource-library-empty svg {
  width: 25px;
  height: 25px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ai-resource-library-empty strong {
  color: rgba(211, 230, 229, .68);
  font-size: 12px;
  font-weight: 680;
}

.ai-resource-library-empty p {
  margin: 5px 0 0;
  color: rgba(148, 174, 177, .43);
  font-size: 10px;
}

@media (max-width: 1600px) and (min-width: 1181px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-workspace {
    grid-template-columns: 260px minmax(480px, 1fr) 260px !important;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-history {
    width: 260px !important;
    min-width: 260px !important;
    max-width: 260px !important;
  }
}

@media (max-width: 1180px) and (min-width: 901px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-workspace {
    grid-template-columns: 220px minmax(360px, 1fr) 220px !important;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-history {
    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;
  }

  .ai-resource-library-head {
    padding-right: 10px;
    padding-left: 10px;
  }

  .ai-resource-library-search {
    margin-right: 10px;
    margin-left: 10px;
  }
}

@media (max-width: 900px) {
  body.ai-chat-mode.ai-model-chat .ai-resource-library {
    display: none !important;
  }
}

/* 20260720 stable mixed-ratio image result gallery. */
body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage:has(.ai-image-result-grid) {
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid {
  display: grid !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
  padding: 18px !important;
  gap: 14px !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  align-content: stretch !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid.is-single {
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  place-items: center !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid.is-fit-gallery {
  grid-template-columns: repeat(var(--result-cols, 2), minmax(0, 1fr)) !important;
  grid-template-rows: repeat(var(--result-rows, 1), minmax(0, 1fr)) !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid.is-scroll-gallery {
  grid-template-columns: repeat(var(--result-cols, 3), minmax(0, 1fr)) !important;
  grid-template-rows: none !important;
  grid-auto-rows: clamp(220px, 36vh, 340px) !important;
  align-content: start !important;
  padding-right: 10px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scrollbar-gutter: stable !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid > .ai-image-result-card {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
  aspect-ratio: auto !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  overflow: hidden !important;
  container-type: size;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid.is-single > .ai-image-result-card:only-child {
  width: min(100%, 760px) !important;
  height: min(100%, 560px) !important;
  max-width: 760px !important;
  max-height: 560px !important;
  align-self: center !important;
  justify-self: center !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid > .ai-image-result-card > .ai-image-result-frame {
  position: relative !important;
  flex: 0 1 auto !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 auto !important;
  aspect-ratio: var(--image-ratio, 1 / 1) !important;
  align-self: center !important;
  justify-self: center !important;
  overflow: hidden !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid > .ai-image-result-card.is-ready > .ai-image-result-frame {
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid > .ai-image-result-card.is-ready > .ai-image-result-frame::before,
body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid > .ai-image-result-card.is-ready > .ai-image-result-frame::after {
  display: none !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid > .ai-image-result-card.is-ready img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  border: 0 !important;
  background: transparent !important;
  object-fit: contain !important;
  object-position: center !important;
  aspect-ratio: auto !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid > .ai-image-result-card.is-placeholder > .ai-image-result-frame {
  border: 1px solid rgba(112, 207, 190, .13) !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid.is-scroll-gallery::-webkit-scrollbar {
  width: 6px;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid.is-scroll-gallery::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(105, 202, 188, .28);
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage .ai-image-result-grid.is-gallery {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    grid-auto-rows: minmax(220px, 58vh) !important;
    align-content: start !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }
}

/* 20260720 keep the model chevron close to its label. */
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-chevron {
  margin-left: -2px !important;
}
/* 20260720 align Image 2 parameter menus with their controls. */
body.ai-chat-mode.ai-model-image :is(.ai-image-param-popover, .ai-image-count-popover) {
  scrollbar-width: none !important;
}

body.ai-chat-mode.ai-model-image :is(.ai-image-param-popover, .ai-image-count-popover)::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
}
/* 20260720 render the Image 2 reference upload as a compact square. */
body.ai-chat-mode.ai-model-image .ai-image-inline-reference {
  display: flex !important;
  flex: 0 0 58px !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 6px !important;
  border: 1px dashed rgba(114, 217, 193, .3) !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
  color: rgba(207, 241, 234, .9) !important;
  background: rgba(62, 151, 140, .09) !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-reference > span {
  display: grid !important;
  place-items: center !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-reference > strong {
  display: block !important;
  margin: 0 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-generate {
  display: grid !important;
  flex: 0 0 58px !important;
  place-items: center !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 6px !important;
  border: 1px solid rgba(100, 215, 190, .46) !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
  color: #effffb !important;
  background: linear-gradient(145deg, rgba(37, 126, 113, .92), rgba(24, 89, 85, .96)) !important;
  box-shadow: inset 0 1px 0 rgba(226, 255, 248, .12), 0 7px 18px rgba(5, 43, 39, .24) !important;
  font-size: 11px !important;
  font-weight: 750 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-image-inline-generate:hover:not(:disabled) {
  border-color: rgba(125, 236, 210, .7) !important;
  background: linear-gradient(145deg, rgba(44, 145, 128, .96), rgba(27, 103, 97, .98)) !important;
  box-shadow: inset 0 1px 0 rgba(235, 255, 251, .18), 0 9px 22px rgba(5, 55, 49, .3) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-control-actions {
  grid-template: 42px / 144px !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-image-inline-reference {
    width: 58px !important;
    min-width: 58px !important;
    flex-basis: 58px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-control-actions {
    grid-template-columns: minmax(138px, 1fr) !important;
  }
}
/* 20260720 align every AI model picker to the same left edge. */
body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-window-head {
  padding-left: 11px !important;
}
/* 20260720 match Image 2 and Kling workspace transparency to GPT. */
body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-image, .ai-model-video) .ai-chat-window {
  background: rgba(5, 12, 19, 0.5) !important;
  backdrop-filter: blur(18px) saturate(1.02) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.02) !important;
  box-shadow:
    0 24px 80px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
}

body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-image, .ai-model-video) .ai-chat-window-head {
  background: rgba(5, 12, 19, 0.24) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-image, .ai-model-video) .ai-chat-history {
  background: linear-gradient(180deg, rgba(4, 11, 20, 0.3), rgba(3, 9, 17, 0.18)) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-image, .ai-model-video)
:is(.ai-chat-main, .ai-chat-studio, .ai-studio-shell) {
  background: transparent !important;
}
/* 20260720 center the shared model picker in every AI workspace header. */
body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-window-head {
  position: relative !important;
}

body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-window-head > .ai-chat-head-model {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  z-index: 24 !important;
  margin: 0 !important;
  transform: translate(-50%, -50%) !important;
}

body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video) .ai-chat-window-head > .ai-chat-exit {
  position: relative !important;
  z-index: 25 !important;
  margin-left: auto !important;
}
/* 20260720 keep the GPT resource library in a dedicated right column. */
body.ai-chat-mode.ai-model-chat .ai-chat-workspace {
  grid-template-areas: "history main library" !important;
  grid-template-rows: minmax(0, 1fr) !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history {
  grid-area: history;
}

body.ai-chat-mode.ai-model-chat .ai-chat-main {
  grid-area: main;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library {
  grid-area: library;
}

@media (max-width: 900px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-workspace {
    grid-template-columns: 220px minmax(0, 1fr) !important;
    grid-template-areas: "history main" !important;
  }
}
@media (max-width: 680px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-workspace {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas: "main" !important;
  }
}

/* 20260720 match Image 2 and Kling inner workspace transparency to GPT. */
body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-image, .ai-model-video)
:is(.ai-generation-stage, .ai-generation-settings) {
  background: rgba(3, 8, 14, 0.08) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025) !important;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-video
.ai-studio-output.ai-video-output {
  background: transparent !important;
  box-shadow: none !important;
}

body.ai-chat-mode.ai-chat-scrolled.ai-model-video
.ai-video-settings label {
  background: rgba(10, 27, 35, 0.22) !important;
}

/* 20260720 match the collapsed model picker to the expanded model rows. */
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  align-items: center !important;
  width: 206px !important;
  min-width: 206px !important;
  height: 50px !important;
  min-height: 50px !important;
  gap: 8px !important;
  padding: 6px 12px !important;
  border: 1px solid rgba(88, 214, 141, 0.28) !important;
  border-radius: 7px !important;
  box-sizing: border-box !important;
  background: rgba(88, 214, 141, 0.095) !important;
  box-shadow: none !important;
}
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-icon {
  width: 27px !important;
  height: 27px !important;
  border-radius: 7px !important;
}
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-icon img {
  width: 17px !important;
  height: 17px !important;
}
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name {
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  text-align: center !important;
}
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name strong {
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: normal !important;
  white-space: nowrap !important;
}
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-chevron {
  position: absolute !important;
  top: 50% !important;
  right: 10px !important;
  width: 12px !important;
  margin: 0 !important;
  font-size: 12px !important;
  text-align: center !important;
  transform: translateY(-50%) !important;
}
body.ai-chat-model-menu-open .ai-chat-head-model .ai-chat-model-chevron {
  transform: translateY(-50%) rotate(180deg) !important;
}

/* 20260720 remove the legacy model-header breathing light in every AI workspace. */
body.ai-chat-mode:is(.ai-model-chat, .ai-model-image, .ai-model-video)
.ai-chat-head-model::before,
body.ai-chat-mode:is(.ai-model-chat, .ai-model-image, .ai-model-video)
.ai-chat-head-model::after,
body.ai-chat-mode:is(.ai-model-chat, .ai-model-image, .ai-model-video)
.ai-chat-model-switch::before,
body.ai-chat-mode:is(.ai-model-chat, .ai-model-image, .ai-model-video)
.ai-chat-model-switch::after {
  content: none !important;
  display: none !important;
  animation: none !important;
  box-shadow: none !important;
}

body.ai-chat-mode:is(.ai-model-chat, .ai-model-image, .ai-model-video)
.ai-chat-head-model > :is(
  .ai-chat-model-status,
  .ai-chat-model-indicator,
  .ai-chat-model-pulse,
  .ai-chat-model-light,
  .model-status-dot,
  .model-breathing-light,
  .live-kicker
) {
  display: none !important;
  animation: none !important;
}

/* 20260720 compact the shared model picker without changing its alignment. */
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  grid-template-columns: 25px minmax(0, 1fr) !important;
  width: 190px !important;
  min-width: 190px !important;
  height: 46px !important;
  min-height: 46px !important;
  gap: 6px !important;
  padding: 4px 9px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-icon {
  width: 25px !important;
  height: 25px !important;
  border-radius: 6px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-icon img {
  width: 16px !important;
  height: 16px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name strong {
  font-size: 15px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-chevron {
  right: 8px !important;
  width: 10px !important;
  font-size: 11px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-menu {
  top: calc(100% + 4px) !important;
  width: 190px !important;
  gap: 2px !important;
  padding: 4px !important;
  border-radius: 8px !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option {
  grid-template-columns: 25px minmax(0, 1fr) !important;
  min-height: 42px !important;
  gap: 6px !important;
  padding: 4px 6px !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option-icon {
  width: 25px !important;
  height: 25px !important;
  border-radius: 6px !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option-icon img {
  width: 16px !important;
  height: 16px !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option-copy {
  gap: 1px !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option-copy strong {
  font-size: 13px !important;
  line-height: 1.15 !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option-copy small {
  font-size: 10px !important;
  line-height: 1.15 !important;
}
/* 20260720 keep GPT history and resource library exactly equal width. */
body.ai-chat-mode.ai-model-chat .ai-chat-workspace,
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-workspace {
  grid-template-columns: 300px minmax(560px, 1fr) 300px !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history,
body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history {
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
}

@media (max-width: 1600px) and (min-width: 1181px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-workspace,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-workspace {
    grid-template-columns: 260px minmax(480px, 1fr) 260px !important;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-history,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history {
    width: 260px !important;
    min-width: 260px !important;
    max-width: 260px !important;
  }
}

@media (max-width: 1180px) and (min-width: 901px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-workspace,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-workspace {
    grid-template-columns: 220px minmax(360px, 1fr) 220px !important;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-history,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history {
    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;
  }
}

/* 20260720 show a real current-generation empty state in the Image 2 history rail. */
body.ai-chat-mode.ai-model-image .ai-image-current-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  width: 100%;
  min-height: 86px;
  padding: 13px 14px;
  border: 1px solid rgba(119, 228, 205, .3);
  border-radius: 10px;
  color: #f3fffd;
  background: rgba(72, 178, 166, .14);
  box-shadow: inset 2px 0 0 rgba(123, 235, 204, .82);
  box-sizing: border-box;
}

body.ai-chat-mode.ai-model-image .ai-image-current-placeholder-icon {
  display: grid;
  place-items: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  padding: 9px;
  border: 1px solid rgba(148, 183, 199, .2);
  border-radius: 12px;
  background: rgba(255, 255, 255, .025);
  box-sizing: border-box;
}

body.ai-chat-mode.ai-model-image .ai-image-current-placeholder-icon img {
  display: block;
  width: 28px;
  height: 28px;
  object-fit: contain;
}

body.ai-chat-mode.ai-model-image .ai-image-current-placeholder-copy {
  display: flex;
  align-items: center;
  min-width: 0;
}

body.ai-chat-mode.ai-model-image .ai-image-current-placeholder-copy strong {
  overflow: hidden;
  color: rgba(243, 255, 253, .96);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* Keep the empty current-generation card centered inside the history rail. */
body.ai-chat-mode.ai-model-image .ai-chat-history-list {
  width: 100% !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
  scrollbar-gutter: auto !important;
}

body.ai-chat-mode.ai-model-image .ai-image-current-placeholder {
  margin-inline: 0 !important;
}

/* 20260720 image intro motion feedback. */
body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro {
  position: relative !important;
  isolation: isolate;
  overflow: hidden;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  width: 250px;
  height: 160px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(72, 205, 179, .11) 0%, rgba(72, 205, 179, .045) 38%, transparent 72%);
  filter: blur(11px);
  opacity: .62;
  pointer-events: none;
  transform: translate(-50%, -61%) scale(.9);
  animation: ai-image-intro-halo 5.6s ease-in-out infinite;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span {
  position: relative;
  z-index: 2;
  animation: ai-image-intro-core 2.8s ease-in-out infinite;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span::before,
body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span::before {
  inset: -8px;
  border: 1px solid rgba(112, 226, 203, .28);
  animation: ai-image-intro-pulse-ring 3.2s ease-out infinite;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span::after {
  inset: -5px;
  border: 1px solid transparent;
  border-top-color: rgba(151, 242, 222, .72);
  border-right-color: rgba(91, 206, 183, .18);
  animation: ai-image-intro-orbit 6.8s linear infinite;
}

body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > strong,
body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > p {
  position: relative;
  z-index: 2;
}

@keyframes ai-image-intro-core {
  0%, 100% {
    transform: scale(1);
    border-color: rgba(111, 221, 198, .3);
    box-shadow: 0 0 18px rgba(72, 205, 179, .08), inset 0 0 0 rgba(139, 238, 216, 0);
  }
  50% {
    transform: scale(1.06);
    border-color: rgba(139, 238, 216, .55);
    box-shadow: 0 0 30px rgba(72, 205, 179, .2), inset 0 0 14px rgba(139, 238, 216, .07);
  }
}

@keyframes ai-image-intro-pulse-ring {
  0% {
    opacity: 0;
    transform: scale(.86);
  }
  18% {
    opacity: .66;
  }
  72%, 100% {
    opacity: 0;
    transform: scale(1.5);
  }
}

@keyframes ai-image-intro-orbit {
  to {
    transform: rotate(360deg);
  }
}

@keyframes ai-image-intro-halo {
  0%, 100% {
    opacity: .48;
    transform: translate(-50%, -61%) scale(.88);
  }
  50% {
    opacity: .78;
    transform: translate(-50%, -61%) scale(1.08);
  }
}

@media (prefers-reduced-motion: reduce) {
  body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro::before,
  body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span,
  body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span::before,
  body.ai-chat-mode.ai-model-image .ai-image-stage-empty.is-intro > span::after {
    animation: none !important;
  }
}

/* 20260720 lower resource library heading and remove count spacing. */
body.ai-chat-mode.ai-model-chat .ai-resource-library-head {
  min-height: 74px !important;
  padding-top: 22px !important;
  justify-content: flex-end !important;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library-title > div {
  justify-content: center;
  gap: 0 !important;
}

/* 20260720 widen equal GPT side panels on large desktops. */
@media (min-width: 1601px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-workspace,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-workspace {
    grid-template-columns: 340px minmax(560px, 1fr) 340px !important;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-history,
  body.ai-chat-mode.ai-chat-scrolled.ai-model-chat .ai-chat-history {
    width: 340px !important;
    min-width: 340px !important;
    max-width: 340px !important;
  }
}

/* 20260720 vertically center the Image 2 parameter row. */
body.ai-chat-mode.ai-model-image .ai-image-params-panel.ai-generation-settings {
  padding-top: 9px !important;
  padding-bottom: 9px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  grid-template-rows: 58px !important;
  height: 58px !important;
  align-items: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-compact-parameters {
  height: 58px !important;
  align-items: center !important;
}

/* 20260720 improve image history heading and clear-button contrast. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > span {
  color: rgba(242, 250, 251, .96) !important;
  font-weight: 750 !important;
  text-shadow: 0 1px 10px rgba(137, 225, 210, .08);
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear {
  border-color: rgba(124, 220, 201, .25) !important;
  color: rgba(229, 244, 241, .94) !important;
  background: linear-gradient(180deg, rgba(34, 54, 60, .86), rgba(18, 32, 37, .82)) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear > span {
  color: rgba(143, 237, 216, .96) !important;
  background: rgba(111, 219, 196, .14) !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-clear:disabled {
  opacity: .64 !important;
  color: rgba(208, 225, 223, .86) !important;
  border-color: rgba(112, 190, 177, .18) !important;
  background: rgba(21, 36, 41, .72) !important;
}

/* 20260720 remove the redundant Image 2 generate button space. */
body.ai-chat-mode.ai-model-image .ai-image-controls {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
}

/* 20260720 close the GPT composer space after removing the upload button. */
body.ai-chat-mode.ai-model-chat .search-panel.is-chat-docked .search-box {
  padding-left: 16px !important;
}

/* 20260720 place the Image 2 reference upload beside the composer. */
body.ai-chat-mode.ai-model-image .ai-generation-composer-mount {
  display: grid !important;
  grid-template-columns: max-content minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 76px !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-composer-mount > .search-panel.is-generation-docked {
  min-width: 0 !important;
  width: 100% !important;
}

body.ai-chat-mode.ai-model-image .ai-image-composer-reference {
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  flex: 0 0 76px !important;
  padding: 8px !important;
  gap: 6px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-composer-reference > span {
  width: 24px !important;
  height: 24px !important;
  font-size: 24px !important;
  line-height: 24px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-composer-reference > strong {
  font-size: 12px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-compact-parameters {
  justify-content: flex-start !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-generation-composer-mount {
    grid-template-columns: 60px minmax(0, 1fr) !important;
    gap: 8px !important;
    min-height: 60px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-image-composer-reference {
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    min-height: 60px !important;
    flex-basis: 60px !important;
  }
}

/* 20260720 tighten the shared model picker width and remove trailing space. */
body.ai-chat-mode .ai-chat-head-model,
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch,
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-menu {
  width: 172px !important;
  min-width: 172px !important;
  max-width: 172px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  grid-template-columns: 25px minmax(0, 1fr) !important;
  gap: 5px !important;
  padding-left: 7px !important;
  padding-right: 7px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-chevron {
  right: 6px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-menu {
  padding: 4px !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option {
  grid-template-columns: 25px minmax(0, 1fr) !important;
  gap: 4px !important;
  padding-left: 5px !important;
  padding-right: 4px !important;
}

/* 20260720 center the GPT history title and place new-chat directly beside it. */
body.ai-chat-mode.ai-model-chat .ai-chat-history-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 10px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-head > #ai-chat-history-title {
  grid-column: 2 !important;
  justify-self: center !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-head > #ai-new-chat {
  grid-column: 3 !important;
  justify-self: start !important;
  align-self: center !important;
  margin: 0 !important;
}

/* 20260720 stack the clear action above the current-generation row. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  row-gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 0 2px !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > span {
  grid-column: 1 !important;
  grid-row: 1 !important;
  justify-self: center !important;
  margin: 0 !important;
  padding-right: 0 !important;
  text-align: center !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > .ai-image-history-clear {
  grid-column: 1 !important;
  grid-row: 2 !important;
  justify-self: stretch !important;
  align-self: center !important;
  margin: 0 !important;
  width: 100% !important;
  min-height: 36px !important;
  border-radius: 9px !important;
}

/* 20260720 show the active Image 2 prompt beside the compact parameters. */
body.ai-chat-mode.ai-model-image .ai-image-current-prompt {
  flex: 1 1 300px;
  min-width: 180px;
  height: 42px;
  margin-left: 4px;
  padding: 5px 12px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  column-gap: 7px;
  box-sizing: border-box;
  border: 1px solid rgba(111, 194, 181, .16);
  border-radius: 8px;
  background: rgba(7, 23, 28, .46);
  color: rgba(226, 239, 241, .92);
  overflow: hidden;
}

body.ai-chat-mode.ai-model-image .ai-image-current-prompt > span {
  padding-top: 0;
  color: rgba(153, 214, 204, .9);
  font-size: 12px;
  font-weight: 750;
  line-height: 15px;
  white-space: nowrap;
}

body.ai-chat-mode.ai-model-image .ai-image-current-prompt > p {
  align-self: center;
  min-width: 0;
  max-height: 30px;
  margin: 0;
  padding: 0 4px 0 0;
  overflow-x: hidden;
  overflow-y: auto;
  color: rgba(235, 244, 245, .94);
  font-size: 12px;
  font-weight: 550;
  line-height: 15px;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  scrollbar-width: thin;
  scrollbar-color: rgba(113, 204, 187, .32) transparent;
}

body.ai-chat-mode.ai-model-image .ai-image-current-prompt > p.is-empty {
  color: rgba(160, 181, 184, .56);
  font-weight: 500;
}

body.ai-chat-mode.ai-model-image .ai-image-current-prompt > p::-webkit-scrollbar {
  width: 3px;
}

body.ai-chat-mode.ai-model-image .ai-image-current-prompt > p::-webkit-scrollbar-thumb {
  border-radius: 99px;
  background: rgba(113, 204, 187, .32);
}

@media (max-width: 1040px) {
  body.ai-chat-mode.ai-model-image .ai-image-current-prompt {
    flex-basis: 220px;
    min-width: 140px;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-image-current-prompt {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
    margin-left: 0;
  }
}

/* 20260720 show one current model and only the two alternatives. */
body.ai-chat-mode .ai-chat-head-model,
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch,
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-menu {
  width: 164px !important;
  min-width: 164px !important;
  max-width: 164px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  grid-template-columns: 25px minmax(0, 1fr) !important;
  min-height: 44px !important;
  height: 44px !important;
  gap: 5px !important;
  padding: 3px 20px 3px 6px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 1px !important;
  text-align: left !important;
  overflow: hidden !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name strong {
  max-width: 100% !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name small {
  display: block !important;
  max-width: 100% !important;
  color: rgba(177, 198, 211, 0.62) !important;
  font-size: 9px !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-chevron {
  right: 5px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-menu {
  gap: 0 !important;
  padding: 3px !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option {
  min-height: 39px !important;
  gap: 4px !important;
  padding: 3px 4px !important;
}

/* 20260720 place the GPT new-chat action above the conversation list. */
body.ai-chat-mode.ai-model-chat .ai-chat-history-head {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  grid-template-columns: none !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-head > #ai-chat-history-title {
  margin: 0 !important;
  transform: none !important;
}

body.ai-chat-mode.ai-model-chat #ai-new-chat.ai-chat-new-row {
  display: grid;
  place-items: center;
  width: 100%;
  min-width: 0;
  height: 44px;
  min-height: 44px;
  margin: 0 0 5px;
  padding: 0;
  box-sizing: border-box;
  border: 1px solid rgba(119, 228, 205, .24);
  border-radius: 9px;
  color: rgba(218, 249, 241, .92);
  background: rgba(72, 178, 166, .09);
  box-shadow: none;
  font-size: 22px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}

body.ai-chat-mode.ai-model-chat #ai-new-chat.ai-chat-new-row[hidden] {
  display: none !important;
}

body.ai-chat-mode.ai-model-chat #ai-new-chat.ai-chat-new-row:hover,
body.ai-chat-mode.ai-model-chat #ai-new-chat.ai-chat-new-row:focus-visible {
  border-color: rgba(137, 242, 220, .42);
  color: #effffb;
  background: rgba(76, 206, 186, .15);
  outline: none;
}

body.ai-chat-mode.ai-model-chat #ai-new-chat.ai-chat-new-row:active {
  background: rgba(76, 206, 186, .2);
}

/* 20260720 compact Image 2 reference stack and full-window drop target. */
body.ai-chat-mode.ai-model-image .ai-generation-composer-mount {
  grid-template-columns: max-content minmax(0, 1fr) !important;
}

body.ai-chat-mode.ai-model-image .ai-image-reference-stack {
  --reference-size: 76px;
  --reference-step: 34px;
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  width: max-content;
  min-width: var(--reference-size);
  height: var(--reference-size);
  min-height: var(--reference-size);
  isolation: isolate;
}

body.ai-chat-mode.ai-model-image .ai-image-reference-stack > * {
  flex: 0 0 var(--reference-size);
  width: var(--reference-size);
  height: var(--reference-size);
  min-width: var(--reference-size);
  min-height: var(--reference-size);
  box-sizing: border-box;
}

body.ai-chat-mode.ai-model-image .ai-image-reference-stack.has-items > * + * {
  margin-left: calc(var(--reference-step) - var(--reference-size));
}

body.ai-chat-mode.ai-model-image .ai-image-reference-item {
  position: relative;
  z-index: calc(2 + var(--reference-index));
  margin-block: 0;
  overflow: visible;
  border: 1px solid rgba(118, 218, 199, .34);
  border-radius: 8px;
  background: rgba(8, 20, 25, .96);
  box-shadow: 0 10px 24px rgba(0, 0, 0, .28), inset 0 1px 0 rgba(255, 255, 255, .06);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

body.ai-chat-mode.ai-model-image .ai-image-reference-item:hover,
body.ai-chat-mode.ai-model-image .ai-image-reference-item:focus-within {
  z-index: 20;
  transform: translateY(-3px);
  border-color: rgba(137, 238, 217, .7);
  box-shadow: 0 14px 30px rgba(0, 0, 0, .34), 0 0 18px rgba(99, 212, 190, .14);
}

body.ai-chat-mode.ai-model-image .ai-image-reference-item > img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 7px;
  object-fit: cover;
}

body.ai-chat-mode.ai-model-image .ai-image-reference-item > button {
  position: absolute;
  top: -7px;
  right: -7px;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  padding: 0;
  border: 1px solid rgba(139, 224, 207, .48);
  border-radius: 50%;
  color: rgba(239, 255, 251, .95);
  background: rgba(12, 32, 37, .96);
  box-shadow: 0 5px 14px rgba(0, 0, 0, .34);
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}

body.ai-chat-mode.ai-model-image .ai-image-reference-add {
  position: relative;
  z-index: calc(2 + var(--reference-index));
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px dashed rgba(120, 218, 199, .38);
  border-radius: 8px;
  color: rgba(188, 236, 227, .9);
  background: rgba(10, 27, 32, .94);
  box-shadow: 0 10px 22px rgba(0, 0, 0, .22);
  cursor: pointer;
  transition: transform .18s ease, color .18s ease, border-color .18s ease, background .18s ease;
}

body.ai-chat-mode.ai-model-image .ai-image-reference-add:hover,
body.ai-chat-mode.ai-model-image .ai-image-reference-add:focus-visible {
  z-index: 21;
  color: #effffb;
  border-color: rgba(142, 239, 219, .72);
  background: rgba(20, 53, 58, .98);
  outline: none;
  transform: translateY(-3px);
}

body.ai-chat-mode.ai-model-image .ai-image-reference-add > span {
  font-size: 26px;
  font-weight: 400;
  line-height: 1;
}

.ai-chat-dropzone {
  position: absolute;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: center;
  padding: 28px;
  border-radius: inherit;
  background: rgba(4, 14, 19, .86);
  backdrop-filter: blur(12px);
  pointer-events: none;
}

.ai-chat-dropzone[hidden] {
  display: none !important;
}

.ai-chat-dropzone::before {
  content: '';
  position: absolute;
  inset: 14px;
  border: 1px dashed rgba(127, 230, 208, .58);
  border-radius: 10px;
  box-shadow: inset 0 0 46px rgba(77, 199, 179, .08), 0 0 34px rgba(75, 201, 179, .08);
}

.ai-chat-dropzone-content {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  gap: 10px;
  color: rgba(216, 246, 240, .82);
  text-align: center;
}

.ai-chat-dropzone-content strong {
  color: rgba(243, 255, 252, .98);
  font-size: 20px;
}

.ai-chat-dropzone-content > span:last-child {
  font-size: 13px;
}

.ai-chat-dropzone-icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(129, 233, 211, .48);
  border-radius: 50%;
  color: rgba(174, 248, 232, .98);
  background: rgba(68, 184, 165, .13);
  box-shadow: 0 0 30px rgba(78, 211, 187, .16);
}

.ai-chat-dropzone-icon svg {
  width: 25px;
  height: 25px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-image-reference-stack {
    --reference-size: 60px;
    --reference-step: 28px;
  }

  .ai-chat-dropzone {
    padding: 16px;
  }

  .ai-chat-dropzone::before {
    inset: 8px;
  }
}

/* 20260720 final GPT message clearance and user identity alignment. */
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
  padding-bottom: 14px !important;
  scroll-padding-bottom: 54px !important;
}

body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages:has(.ai-chat-message-row)::after {
  content: '';
  display: block;
  flex: 0 0 40px;
  width: 100%;
  min-height: 40px;
  pointer-events: none;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row:last-child {
  margin-bottom: 0 !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user {
  align-self: flex-end !important;
  flex-direction: row-reverse !important;
  margin-right: 0 !important;
  margin-left: auto !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
  position: relative !important;
  margin-right: 0 !important;
  margin-left: auto !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-meta {
  position: absolute !important;
  top: -25px !important;
  right: 0 !important;
  bottom: auto !important;
  left: auto !important;
  display: flex !important;
  width: max-content !important;
  max-width: none !important;
  justify-content: flex-end !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-role,
body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-meta time {
  text-align: right !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages:has(.ai-chat-message-row)::after {
    flex-basis: 30px;
    min-height: 30px;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-meta {
    top: -23px !important;
  }
}


/* 20260720 force message clearance and right-align the user identity. */
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
  padding-bottom: 46px !important;
  scroll-padding-bottom: 46px !important;
}

body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages:has(.ai-chat-message-row)::after {
  display: none !important;
  content: none !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-meta {
  right: -1px !important;
  left: auto !important;
  margin: 0 !important;
  transform: none !important;
  justify-content: flex-end !important;
  text-align: right !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
    padding-bottom: 36px !important;
    scroll-padding-bottom: 36px !important;
  }
}


/* 20260720 align the collapsed model copy with every expanded model row. */
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  grid-template-columns: 25px minmax(0, 1fr) !important;
  column-gap: 5px !important;
  padding-left: 7px !important;
  padding-right: 19px !important;
}

body.ai-chat-mode .ai-chat-head-model :is(.ai-chat-model-name, .model-option-copy) {
  min-width: 0 !important;
  justify-self: stretch !important;
  align-items: flex-start !important;
  text-align: left !important;
}

body.ai-chat-mode .ai-chat-head-model .model-option-copy :is(strong, small) {
  width: 100% !important;
  text-align: left !important;
}

/* 20260720 daily update board above the home statistics. */
.daily-update-board {
  position: absolute;
  right: 0;
  bottom: calc(100% + 12px);
  left: 0;
  z-index: 3;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  height: 186px;
  overflow: hidden;
  border: 1px solid rgba(91, 190, 178, .24);
  border-radius: 8px;
  background-color: rgba(7, 18, 24, .94);
  box-shadow: 0 18px 44px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255, 255, 255, .035), inset 0 0 38px rgba(51, 144, 131, .035);
  backdrop-filter: blur(14px);
}

.daily-update-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 54px;
  padding: 10px 13px;
  border-bottom: 1px solid rgba(111, 190, 181, .14);
}

.daily-update-head > div {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.daily-update-kicker {
  color: rgba(128, 220, 199, .64);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  line-height: 1;
}

.daily-update-head h2 {
  margin: 0;
  color: rgba(245, 252, 251, .96);
  font-size: 18px;
  font-weight: 820;
  line-height: 1.15;
}

.daily-update-head > time {
  flex: 0 0 auto;
  color: rgba(166, 229, 214, .84);
  font-size: 13px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.daily-update-list {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 5px 7px 7px;
  scrollbar-width: thin;
  scrollbar-color: rgba(104, 198, 180, .34) transparent;
}

.daily-update-list::-webkit-scrollbar {
  width: 4px;
}

.daily-update-list::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(104, 198, 180, .34);
}

.daily-update-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-height: 39px;
  padding: 7px 6px;
  border-bottom: 1px solid rgba(116, 176, 169, .1);
  color: inherit;
  text-decoration: none;
  transition: background-color .18s ease, color .18s ease;
}

.daily-update-item:last-child {
  border-bottom: 0;
}

.daily-update-item:hover,
.daily-update-item:focus-visible {
  color: #f5fffc;
  background-color: rgba(82, 183, 163, .075);
  outline: none;
}

.daily-update-type {
  display: inline-grid;
  place-items: center;
  min-width: 38px;
  height: 22px;
  padding: 0 6px;
  border: 1px solid rgba(93, 204, 181, .24);
  border-radius: 5px;
  color: rgba(145, 235, 216, .92);
  background-color: rgba(64, 168, 147, .08);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.daily-update-item strong {
  min-width: 0;
  overflow: hidden;
  color: rgba(235, 245, 243, .9);
  font-size: 12px;
  font-weight: 720;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.daily-update-item time {
  color: rgba(165, 186, 188, .7);
  font-size: 10px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.daily-update-empty {
  display: grid;
  min-height: 100%;
  place-items: center;
  margin: 0;
  color: rgba(170, 190, 190, .62);
  font-size: 12px;
}

@media (max-width: 980px) {
  .daily-update-board {
    position: relative;
    right: auto;
    bottom: auto;
    left: auto;
    height: 186px;
  }
}

@media (max-width: 560px) {
  .daily-update-board {
    height: 178px;
  }

  .daily-update-head {
    min-height: 50px;
    padding: 9px 11px;
  }

  .daily-update-head h2 {
    font-size: 17px;
  }

  .daily-update-item {
    gap: 7px;
    min-height: 37px;
    padding-inline: 4px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .daily-update-item {
    transition: none;
  }
}

/* 20260720 AI mode button: focused sparkle orbit. */
.stats-sidebar .stats-ai-mode-button,
.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus,
.stats-sidebar .stats-ai-mode-button:focus-visible,
.stats-sidebar .stats-ai-mode-button:active,
.stats-sidebar .stats-ai-mode-button.is-ai-mode {
  grid-template-columns: 68px auto !important;
  gap: 12px !important;
  min-height: 104px !important;
  padding: 14px 16px !important;
}

.stats-sidebar .stats-ai-mode-button::before,
.stats-sidebar .stats-ai-mode-button::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}

.stats-sidebar .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
  width: 56px !important;
  height: 56px !important;
  overflow: visible !important;
  border: 1px solid rgba(117, 231, 198, .42) !important;
  background: rgba(15, 41, 42, .28) !important;
  box-shadow: inset 0 0 0 1px rgba(164, 244, 221, .035), 0 0 19px rgba(89, 226, 188, .09) !important;
  transform: none !important;
  animation: statsAiSparkleBreathe 3.2s ease-in-out infinite !important;
}

.stats-sidebar .stats-ai-mode-emblem::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: -8px !important;
  border: 1px solid rgba(96, 204, 180, .18) !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: 0 0 17px rgba(62, 199, 169, .035) !important;
  opacity: .72 !important;
  animation: statsAiOuterRingBreathe 4.2s ease-in-out infinite !important;
}

.stats-sidebar .stats-ai-mode-emblem::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: -8px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: conic-gradient(from 12deg, transparent 0 54%, rgba(94, 228, 196, .05) 61%, rgba(125, 242, 213, .92) 72%, rgba(91, 211, 184, .34) 80%, transparent 88% 100%) !important;
  box-shadow: none !important;
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 1px)) !important;
  mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 1px)) !important;
  transform-origin: 50% 50% !important;
  opacity: .86 !important;
  animation: statsAiSparkOrbit 4.8s linear infinite !important;
}

.stats-sidebar .stats-ai-mode-emblem svg {
  width: 22px !important;
  height: 22px !important;
  overflow: visible !important;
  fill: #91f0cf !important;
  stroke: none !important;
  filter: drop-shadow(0 0 8px rgba(103, 237, 199, .34)) !important;
  animation: statsAiSparkPulse 2.6s ease-in-out infinite !important;
}

.stats-sidebar .stats-ai-mode-label {
  font-size: 22px !important;
}

.stats-sidebar .stats-ai-mode-emblem svg path {
  fill: inherit !important;
  stroke: none !important;
}

.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem {
  border-color: rgba(142, 242, 212, .62) !important;
  box-shadow: inset 0 0 0 1px rgba(183, 255, 233, .06), 0 0 25px rgba(89, 226, 188, .16) !important;
  transform: scale(1.055) !important;
}

.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem::before,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem::before {
  border-color: rgba(111, 225, 198, .3) !important;
  opacity: .94 !important;
}

.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem::after,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem::after {
  opacity: 1 !important;
  animation-duration: 3.2s !important;
}

@keyframes statsAiSparkOrbit {
  to { transform: rotate(360deg); }
}

@keyframes statsAiSparkPulse {
  0%, 100% { opacity: .84; transform: scale(.94); }
  50% { opacity: 1; transform: scale(1.08); }
}

@keyframes statsAiSparkleBreathe {
  0%, 100% { box-shadow: inset 0 0 0 1px rgba(164, 244, 221, .035), 0 0 15px rgba(89, 226, 188, .065); }
  50% { box-shadow: inset 0 0 0 1px rgba(164, 244, 221, .065), 0 0 24px rgba(89, 226, 188, .14); }
}

@keyframes statsAiOuterRingBreathe {
  0%, 100% { opacity: .48; transform: scale(.985); }
  50% { opacity: .82; transform: scale(1.015); }
}

@media (max-width: 560px) {
  .stats-sidebar .stats-ai-mode-button,
  .stats-sidebar .stats-ai-mode-button:hover,
  .stats-sidebar .stats-ai-mode-button:focus-visible,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode {
    grid-template-columns: 60px auto !important;
    gap: 10px !important;
    min-height: 90px !important;
    padding: 13px 15px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
    width: 49px !important;
    height: 49px !important;
  }

  .stats-sidebar .stats-ai-mode-label {
    font-size: 19px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .stats-sidebar .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-emblem::before,
  .stats-sidebar .stats-ai-mode-emblem::after,
  .stats-sidebar .stats-ai-mode-emblem svg {
    animation: none !important;
  }
}

/* 20260720 align GPT history card edges and contents. */
body.ai-chat-mode.ai-model-chat .ai-chat-history-list {
  width: 100% !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
  scrollbar-gutter: auto !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-item {
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-icon {
  align-self: center !important;
  justify-self: start !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-copy {
  display: grid !important;
  grid-template-rows: auto auto !important;
  align-content: center !important;
  align-self: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-copy > strong {
  align-self: end !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-copy > small {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-model {
  align-self: center !important;
  min-width: 0 !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-copy time {
  align-self: center !important;
  justify-self: end !important;
  padding-right: 0 !important;
  line-height: 1 !important;
}


/* 20260720 center resource library title in a full-width action bar. */
body.ai-chat-mode.ai-model-chat .ai-resource-library-head {
  display: grid !important;
  place-items: center !important;
  place-content: center !important;
  justify-content: center !important;
  width: calc(100% - 28px) !important;
  min-width: 0 !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 14px 8px !important;
  padding: 0 14px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(119, 228, 205, .24) !important;
  border-radius: 9px !important;
  background: rgba(72, 178, 166, .09) !important;
  box-shadow: none !important;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library-title {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: max-content !important;
  min-width: 0 !important;
  gap: 8px !important;
  margin: 0 !important;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library-title > div {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  gap: 0 !important;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library-title strong {
  margin: 0 !important;
  color: rgba(218, 249, 241, .94) !important;
  font-size: 15px !important;
  font-weight: 740 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library-mark {
  display: grid !important;
  place-items: center !important;
  width: 20px !important;
  height: 20px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: rgba(176, 242, 227, .9) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library-mark svg {
  width: 18px !important;
  height: 18px !important;
}

body.ai-chat-mode.ai-model-chat .ai-resource-library-search {
  width: calc(100% - 28px) !important;
  margin: 0 14px 10px !important;
  box-sizing: border-box !important;
}
/* 20260721 enlarge the homepage light ribbon and strengthen its depth. */
.command-hero > .hero-flow-wave {
  position: absolute;
  z-index: 0;
  top: -12px;
  right: -520px;
  display: block;
  width: clamp(940px, 78vw, 1160px);
  height: 320px;
  pointer-events: none;
  opacity: 1;
  filter: saturate(1.34) contrast(1.3) brightness(1.15);
  transform: translateZ(0);
  -webkit-mask-image: radial-gradient(ellipse 82% 94% at 72% 52%, #000 0%, #000 52%, rgba(0, 0, 0, .9) 67%, rgba(0, 0, 0, .38) 85%, transparent 100%);
  mask-image: radial-gradient(ellipse 82% 94% at 72% 52%, #000 0%, #000 52%, rgba(0, 0, 0, .9) 67%, rgba(0, 0, 0, .38) 85%, transparent 100%);
}

body.ai-chat-mode .command-hero > .hero-flow-wave,
body.favorite-library-open .command-hero > .hero-flow-wave {
  display: none !important;
}

@media (max-width: 1100px) and (min-width: 901px) {
  .command-hero > .hero-flow-wave {
    top: 2px;
    right: -250px;
    width: 820px;
    height: 250px;
    opacity: .96;
  }
}

@media (max-width: 900px) {
  .command-hero > .hero-flow-wave {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .command-hero > .hero-flow-wave {
    opacity: .76;
  }
}


/* 20260721 remove the collapsed model picker shell and tighten its chevron. */
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  display: inline-grid !important;
  grid-template-columns: 25px max-content 10px !important;
  align-items: center !important;
  width: max-content !important;
  min-width: 0 !important;
  max-width: 100% !important;
  column-gap: 5px !important;
  padding: 3px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name {
  width: max-content !important;
  max-width: 112px !important;
  justify-self: start !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-chevron {
  position: static !important;
  top: auto !important;
  right: auto !important;
  width: 10px !important;
  margin: 0 !important;
  transform: none !important;
}

body.ai-chat-model-menu-open .ai-chat-head-model .ai-chat-model-chevron {
  transform: rotate(180deg) !important;
}

/* 20260721 keep the current-generation logo left while centering its title. */
body.ai-chat-mode.ai-model-image .ai-image-current-placeholder {
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) 48px !important;
  align-items: center !important;
  gap: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-current-placeholder-icon {
  grid-column: 1 !important;
  justify-self: start !important;
}

body.ai-chat-mode.ai-model-image .ai-image-current-placeholder-copy {
  grid-column: 2 !important;
  justify-self: center !important;
  text-align: center !important;
}

/* 20260721 emphasize Image 2 history timestamp and count. */
body.ai-chat-mode.ai-model-image .ai-image-history-copy small {
  color: rgba(210, 239, 234, .92) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  text-shadow: 0 0 10px rgba(103, 221, 196, .16) !important;
}

/* 20260721 return the shared model picker to the left edge. */
body.ai-chat-mode.ai-chat-scrolled:is(.ai-model-chat, .ai-model-image, .ai-model-video)
  .ai-chat-window-head > .ai-chat-head-model {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  z-index: 24 !important;
  margin: 0 auto 0 0 !important;
  transform: none !important;
}

/* 20260721 center and wrap Kling history titles. */
body.ai-chat-mode.ai-model-video .ai-video-history-title {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 7px !important;
  min-width: 0 !important;
}

body.ai-chat-mode.ai-model-video .ai-video-history-title strong {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
  color: rgba(247, 245, 252, .9) !important;
  line-height: 1.4 !important;
  text-align: center !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  text-overflow: clip !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
}

body.ai-chat-mode.ai-model-video .ai-video-history-title small {
  align-self: start !important;
  white-space: nowrap !important;
}

/* 20260721 center the GPT history item title. */
body.ai-chat-mode.ai-model-chat .ai-chat-history-copy > strong {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
}

/* 20260721 center GPT history titles on the whole card axis. */
body.ai-chat-mode.ai-model-chat .ai-chat-history-item:not(:has(.ai-chat-history-check)) {
  grid-template-columns: 48px minmax(0, 1fr) 48px !important;
  grid-template-rows: auto auto !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-item:not(:has(.ai-chat-history-check)) > .ai-chat-history-icon {
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-item:not(:has(.ai-chat-history-check)) > .ai-chat-history-copy {
  display: contents !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-item:not(:has(.ai-chat-history-check)) > .ai-chat-history-copy > strong {
  grid-column: 2 !important;
  grid-row: 1 !important;
  justify-self: stretch !important;
  text-align: center !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-item:not(:has(.ai-chat-history-check)) > .ai-chat-history-copy > small {
  display: contents !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-item:not(:has(.ai-chat-history-check)) .ai-chat-history-model {
  grid-column: 2 !important;
  grid-row: 2 !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-item:not(:has(.ai-chat-history-check)) .ai-chat-history-copy time {
  grid-column: 3 !important;
  grid-row: 2 !important;
  justify-self: end !important;
}

/* 20260721 match the generation clear row to the GPT new-chat action. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > .ai-image-history-clear {
  display: grid !important;
  grid-template-columns: 20px auto !important;
  place-content: center !important;
  align-items: center !important;
  gap: 7px !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(119, 228, 205, .24) !important;
  border-radius: 9px !important;
  color: rgba(218, 249, 241, .92) !important;
  background: rgba(72, 178, 166, .09) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > .ai-image-history-clear > span {
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  color: rgba(164, 241, 224, .96) !important;
  background: rgba(72, 178, 166, .18) !important;
  font-size: 17px !important;
  font-weight: 500 !important;
  line-height: 20px !important;
  transform: none !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > .ai-image-history-clear > strong {
  color: rgba(225, 245, 241, .94) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > .ai-image-history-clear:disabled {
  border-color: rgba(119, 228, 205, .24) !important;
  color: rgba(218, 249, 241, .92) !important;
  background: rgba(72, 178, 166, .09) !important;
  opacity: 1 !important;
}

/* 20260721 full-screen original image viewer. */
html.is-viewing-original-image,
body.is-viewing-original-image {
  overflow: hidden !important;
  overscroll-behavior: none;
}

.ai-image-original-viewer[hidden] {
  display: none !important;
}

.ai-image-original-viewer {
  position: fixed;
  inset: 0;
  z-index: 10060;
  overflow: hidden;
  background: rgba(1, 7, 11, .94);
  backdrop-filter: blur(10px) saturate(.9);
}

.ai-image-original-stage {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  cursor: grab;
  touch-action: none;
}

.ai-image-original-viewer.is-dragging .ai-image-original-stage {
  cursor: grabbing;
}

.ai-image-original-stage img {
  display: block;
  width: auto;
  height: auto;
  max-width: calc(100vw - 72px);
  max-height: calc(100vh - 72px);
  object-fit: contain;
  border: 0;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .42);
  user-select: none;
  pointer-events: none;
  transform-origin: center;
  will-change: transform;
}

.ai-image-original-close {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(151, 225, 211, .28);
  border-radius: 8px;
  color: rgba(240, 253, 249, .96);
  background: rgba(8, 24, 29, .82);
  box-shadow: 0 12px 32px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(232, 255, 251, .08);
  backdrop-filter: blur(16px);
  font: inherit;
  font-size: 26px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}

.ai-image-original-close:hover,
.ai-image-original-close:focus-visible {
  border-color: rgba(111, 235, 208, .6);
  color: #fff;
  background: rgba(30, 94, 86, .7);
  outline: none;
}

.ai-image-original-close:active {
  transform: scale(.94);
}

@media (max-width: 640px) {
  .ai-image-original-stage img {
    max-width: calc(100vw - 28px);
    max-height: calc(100vh - 28px);
  }

  .ai-image-original-close {
    top: 12px;
    right: 12px;
    width: 40px;
    height: 40px;
  }
}


/* 20260721 center Image 2 history prompt and metadata. */
body.ai-chat-mode.ai-model-image .ai-image-history-copy {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) 16px !important;
  align-content: center !important;
  gap: 7px !important;
  width: 100% !important;
  height: 70px !important;
  min-width: 0 !important;
  padding: 2px 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-copy strong {
  align-self: center !important;
  justify-self: stretch !important;
  width: 100% !important;
  text-align: center !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-copy small {
  align-self: center !important;
  justify-self: center !important;
  width: max-content !important;
  max-width: 100% !important;
  text-align: center !important;
  white-space: nowrap !important;
}
/* 20260721 Image 2 prompt assistant. */
body.ai-chat-mode.ai-model-image [data-image-current-prompt] {
  cursor: context-menu;
}

.ai-prompt-context-menu {
  position: fixed;
  z-index: 10072;
  min-width: 132px;
  padding: 5px;
  border: 1px solid rgba(129, 219, 204, .28);
  border-radius: 8px;
  background: rgba(8, 23, 27, .92);
  box-shadow: 0 16px 42px rgba(0, 0, 0, .38), inset 0 1px 0 rgba(231, 255, 250, .06);
  backdrop-filter: blur(18px) saturate(1.12);
}

.ai-prompt-context-menu[hidden],
.ai-prompt-assistant[hidden] {
  display: none !important;
}

.ai-prompt-context-menu button {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  height: 36px;
  padding: 0 10px;
  border: 0;
  border-radius: 6px;
  color: rgba(235, 251, 247, .94);
  background: transparent;
  font: inherit;
  font-size: 13px;
  letter-spacing: 0;
  cursor: pointer;
  transition: color .16s ease, background .16s ease, transform .16s ease;
}

.ai-prompt-context-menu button:hover,
.ai-prompt-context-menu button:focus-visible {
  color: #fff;
  background: rgba(76, 180, 161, .18);
  outline: none;
}

.ai-prompt-context-menu button:active {
  transform: scale(.97);
}

.ai-prompt-context-menu svg {
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
}

.ai-prompt-assistant {
  position: fixed;
  z-index: 10070;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  width: min(390px, calc(100vw - 24px));
  height: min(480px, calc(100vh - 24px));
  overflow: hidden;
  border: 1px solid rgba(111, 221, 202, .26);
  border-radius: 8px;
  color: rgba(238, 251, 248, .96);
  background: linear-gradient(180deg, rgba(7, 22, 26, .88), rgba(4, 15, 19, .82));
  box-shadow: 0 24px 70px rgba(0, 0, 0, .48), inset 0 1px 0 rgba(227, 255, 249, .07);
  backdrop-filter: blur(22px) saturate(1.12);
  isolation: isolate;
}

.ai-prompt-assistant::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(circle at 84% 0%, rgba(69, 190, 168, .13), transparent 36%);
}

.ai-prompt-assistant-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  padding: 10px 12px 9px 14px;
  border-bottom: 1px solid rgba(132, 212, 199, .13);
  cursor: grab;
  touch-action: none;
  user-select: none;
}

.ai-prompt-assistant.is-dragging .ai-prompt-assistant-head {
  cursor: grabbing;
}

.ai-prompt-assistant.is-dragging {
  box-shadow: 0 30px 82px rgba(0, 0, 0, .56), inset 0 1px 0 rgba(227, 255, 249, .08);
}

.ai-prompt-assistant-close {
  cursor: pointer;
}

.ai-prompt-assistant-identity {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.ai-prompt-assistant-model,
.ai-prompt-assistant-form-model {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid rgba(134, 225, 209, .22);
  background: rgba(115, 214, 195, .09);
}

.ai-prompt-assistant-model {
  width: 34px;
  height: 34px;
  border-radius: 8px;
}

.ai-prompt-assistant-model img,
.ai-prompt-assistant-form-model img {
  display: block;
  width: 68%;
  height: 68%;
  object-fit: contain;
}

.ai-prompt-assistant-identity div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.ai-prompt-assistant-identity strong {
  font-size: 14px;
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: 0;
}

.ai-prompt-assistant-identity small {
  color: rgba(177, 211, 204, .7);
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: 0;
}

.ai-prompt-assistant-close {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 7px;
  color: rgba(190, 219, 213, .76);
  background: transparent;
  font: inherit;
  font-size: 22px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
  transition: color .16s ease, background .16s ease, transform .16s ease;
}

.ai-prompt-assistant-close:hover,
.ai-prompt-assistant-close:focus-visible {
  color: #fff;
  background: rgba(116, 205, 188, .12);
  outline: none;
}

.ai-prompt-assistant-close:active {
  transform: scale(.92);
}

.ai-prompt-assistant-context {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 8px;
  margin: 10px 12px 0;
  padding: 8px 10px;
  border: 1px solid rgba(112, 202, 186, .13);
  border-radius: 7px;
  background: rgba(113, 210, 191, .055);
}

.ai-prompt-assistant-context span {
  color: rgba(133, 223, 206, .86);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.55;
  white-space: nowrap;
}

.ai-prompt-assistant-context p {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: rgba(222, 241, 237, .84);
  font-size: 11px;
  line-height: 1.55;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-prompt-assistant-messages {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 14px 12px 12px;
  scrollbar-width: thin;
  scrollbar-color: rgba(111, 211, 192, .24) transparent;
}

.ai-prompt-assistant-message {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  margin: 0 0 13px;
}

.ai-prompt-assistant-message.is-user {
  align-items: flex-end;
}

.ai-prompt-assistant-role {
  padding: 0 3px;
  color: rgba(159, 194, 187, .62);
  font-size: 10px;
  line-height: 1.2;
  letter-spacing: 0;
}

.ai-prompt-assistant-message.is-user .ai-prompt-assistant-role {
  color: rgba(138, 222, 205, .7);
}

.ai-prompt-assistant-bubble {
  max-width: 86%;
  padding: 9px 11px;
  border: 1px solid rgba(135, 209, 196, .13);
  border-radius: 8px;
  color: rgba(233, 247, 244, .92);
  background: rgba(16, 41, 44, .62);
  box-shadow: inset 0 1px 0 rgba(232, 255, 250, .025);
}

.ai-prompt-assistant-message.is-user .ai-prompt-assistant-bubble {
  border-color: rgba(92, 218, 194, .22);
  color: #f4fffc;
  background: rgba(43, 126, 115, .42);
}

.ai-prompt-assistant-message.is-error .ai-prompt-assistant-bubble {
  border-color: rgba(226, 134, 134, .24);
  color: rgba(255, 218, 218, .92);
  background: rgba(95, 35, 39, .32);
}

.ai-prompt-assistant-bubble p {
  margin: 0;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
  font-size: 12px;
  line-height: 1.68;
  letter-spacing: 0;
}

.ai-prompt-assistant-actions {
  display: flex;
  justify-content: flex-end;
  width: min(86%, 100%);
  margin-top: 2px;
}

.ai-prompt-assistant-use {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 29px;
  padding: 0 9px;
  border: 1px solid rgba(117, 220, 201, .22);
  border-radius: 6px;
  color: rgba(181, 226, 217, .82);
  background: rgba(61, 151, 137, .11);
  font: inherit;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
  cursor: pointer;
  transition: color .16s ease, border-color .16s ease, background .16s ease, transform .16s ease;
}

.ai-prompt-assistant-use svg {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

.ai-prompt-assistant-use:hover,
.ai-prompt-assistant-use:focus-visible {
  border-color: rgba(126, 237, 216, .48);
  color: rgba(242, 255, 252, .98);
  background: rgba(65, 176, 158, .22);
  outline: none;
}

.ai-prompt-assistant-use:active {
  transform: scale(.96);
}

.ai-prompt-assistant-use.is-used {
  border-color: rgba(125, 237, 181, .44);
  color: rgba(223, 255, 237, .98);
  background: rgba(54, 162, 111, .2);
}

.ai-prompt-assistant-thinking {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 34px;
  height: 16px;
}

.ai-prompt-assistant-thinking span {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(128, 224, 206, .92);
  animation: prompt-assistant-thinking 1.05s ease-in-out infinite;
}

.ai-prompt-assistant-thinking span:nth-child(2) { animation-delay: .14s; }
.ai-prompt-assistant-thinking span:nth-child(3) { animation-delay: .28s; }

@keyframes prompt-assistant-thinking {
  0%, 60%, 100% { opacity: .36; transform: translateY(0); }
  30% { opacity: 1; transform: translateY(-3px); }
}

.ai-prompt-assistant-form {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 34px;
  align-items: end;
  gap: 8px;
  margin: 0 12px 12px;
  padding: 7px 7px 7px 8px;
  border: 1px solid rgba(125, 217, 201, .21);
  border-radius: 8px;
  background: rgba(5, 20, 24, .72);
  box-shadow: inset 0 1px 0 rgba(224, 255, 249, .035), 0 9px 24px rgba(0, 0, 0, .16);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.ai-prompt-assistant-form:focus-within {
  border-color: rgba(101, 231, 207, .46);
  background: rgba(8, 26, 30, .82);
  box-shadow: 0 0 0 3px rgba(75, 211, 185, .08), inset 0 1px 0 rgba(229, 255, 250, .05);
}

.ai-prompt-assistant-form-model {
  width: 28px;
  height: 28px;
  border-radius: 7px;
}

.ai-prompt-assistant-form textarea {
  width: 100%;
  min-height: 28px;
  max-height: 88px;
  padding: 5px 0 3px;
  resize: none;
  overflow-y: auto;
  border: 0;
  outline: 0;
  color: rgba(240, 252, 249, .96);
  background: transparent;
  font: inherit;
  font-size: 12px;
  line-height: 1.55;
  letter-spacing: 0;
}

.ai-prompt-assistant-form textarea::placeholder {
  color: rgba(158, 191, 184, .5);
}

.ai-prompt-assistant-form button[type='submit'] {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid rgba(119, 231, 210, .26);
  border-radius: 7px;
  color: rgba(231, 255, 250, .94);
  background: rgba(56, 154, 139, .42);
  cursor: pointer;
  transition: background .16s ease, border-color .16s ease, transform .16s ease, opacity .16s ease;
}

.ai-prompt-assistant-form button[type='submit']:hover,
.ai-prompt-assistant-form button[type='submit']:focus-visible {
  border-color: rgba(133, 243, 222, .56);
  background: rgba(63, 181, 162, .56);
  outline: none;
}

.ai-prompt-assistant-form button[type='submit']:active {
  transform: scale(.93);
}

.ai-prompt-assistant-form button[type='submit']:disabled {
  cursor: wait;
  opacity: .45;
}

.ai-prompt-assistant-form button[type='submit'] svg {
  width: 17px;
  height: 17px;
}

@media (max-width: 520px) {
  .ai-prompt-assistant {
    width: calc(100vw - 20px);
    height: min(460px, calc(100vh - 20px));
  }
}

@media (prefers-reduced-motion: reduce) {
  .ai-prompt-assistant-thinking span {
    animation-duration: 1.8s;
  }
}


/* 20260721 align GPT history labels on one visual centerline. */
body.ai-chat-mode.ai-model-chat
  .ai-chat-history-item:not(:has(.ai-chat-history-check))
  > .ai-chat-history-copy
  > strong,
body.ai-chat-mode.ai-model-chat
  .ai-chat-history-item:not(:has(.ai-chat-history-check))
  .ai-chat-history-model {
  grid-column: 2 !important;
  justify-self: center !important;
  align-self: center !important;
  width: max-content !important;
  max-width: 100% !important;
  margin-inline: auto !important;
  text-align: center !important;
}

body.ai-chat-mode.ai-model-chat
  .ai-chat-history-item:not(:has(.ai-chat-history-check))
  .ai-chat-history-model {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}


/* 20260721 refined tall daily update board. */
.daily-update-board {
  isolation: isolate;
  height: 258px;
  border-color: rgba(101, 211, 191, .3);
  border-radius: 10px;
  background: rgba(5, 16, 22, .965);
  box-shadow:
    0 22px 54px rgba(0, 0, 0, .3),
    0 0 0 1px rgba(120, 231, 211, .025),
    inset 0 1px 0 rgba(224, 255, 249, .055);
}

.daily-update-board::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  left: 0;
  width: 3px;
  background: linear-gradient(180deg, rgba(104, 231, 206, .96), rgba(70, 165, 157, .36) 58%, rgba(70, 165, 157, 0));
  pointer-events: none;
}

.daily-update-board::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: 18px;
  width: 74px;
  height: 1px;
  background: rgba(130, 238, 217, .5);
  box-shadow: -26px 0 18px rgba(93, 221, 195, .18);
  pointer-events: none;
}

.daily-update-head,
.daily-update-list {
  position: relative;
  z-index: 1;
}

.daily-update-head {
  min-height: 76px;
  padding: 14px 17px 13px;
  border-bottom-color: rgba(116, 202, 191, .16);
  background: rgba(9, 25, 30, .36);
}

.daily-update-head > div {
  gap: 5px;
}

.daily-update-kicker {
  display: flex;
  align-items: center;
  gap: 7px;
  color: rgba(139, 230, 209, .78);
  font-size: 9px;
  letter-spacing: .12em;
}

.daily-update-kicker::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(111, 235, 208, .92);
  box-shadow: 0 0 0 4px rgba(94, 220, 193, .075), 0 0 13px rgba(94, 220, 193, .34);
}

.daily-update-head h2 {
  font-size: 22px;
  font-weight: 840;
  line-height: 1.05;
}

.daily-update-head > time {
  display: grid;
  place-items: center;
  min-width: 62px;
  min-height: 42px;
  padding: 5px 9px 4px;
  border: 1px solid rgba(103, 213, 192, .2);
  border-radius: 7px;
  color: rgba(181, 239, 225, .92);
  background: rgba(75, 170, 153, .09);
  font-size: 14px;
  line-height: 1;
  box-shadow: inset 0 1px 0 rgba(225, 255, 249, .04);
}

.daily-update-head > time::before {
  content: "TODAY";
  display: block;
  margin-bottom: 4px;
  color: rgba(137, 194, 187, .58);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
}

.daily-update-list {
  display: grid;
  align-content: start;
  gap: 4px;
  padding: 8px 10px 11px 12px;
}

.daily-update-item {
  position: relative;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: 10px;
  min-height: 49px;
  padding: 8px 9px;
  border: 1px solid transparent;
  border-bottom: 1px solid rgba(120, 181, 175, .1);
  border-radius: 7px;
  background: rgba(255, 255, 255, .012);
  transition: transform .2s cubic-bezier(.22, 1, .36, 1), background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.daily-update-item:last-child {
  border-bottom-color: transparent;
}

.daily-update-item:hover,
.daily-update-item:focus-visible {
  transform: translateX(3px);
  border-color: rgba(103, 216, 195, .2);
  color: #f5fffc;
  background-color: rgba(68, 171, 153, .09);
  box-shadow: inset 3px 0 0 rgba(105, 228, 204, .66);
}

.daily-update-type {
  min-width: 42px;
  height: 25px;
  padding-inline: 7px;
  border-color: rgba(97, 213, 190, .28);
  border-radius: 6px;
  background-color: rgba(61, 161, 143, .1);
  font-size: 10px;
}

.daily-update-item strong {
  font-size: 13px;
  font-weight: 740;
}

.daily-update-item time {
  color: rgba(175, 202, 202, .72);
  font-size: 11px;
}

@media (max-width: 980px) {
  .daily-update-board {
    height: 238px;
  }
}

@media (max-width: 560px) {
  .daily-update-board {
    height: 224px;
  }

  .daily-update-head {
    min-height: 68px;
    padding: 12px 13px 11px;
  }

  .daily-update-head h2 {
    font-size: 20px;
  }

  .daily-update-item {
    min-height: 45px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .daily-update-item {
    transition: background-color .18s ease, border-color .18s ease;
  }
}

/* 20260721 match the GPT history heading to the generation history heading. */
body.ai-chat-mode.ai-model-chat .ai-chat-history-head > #ai-chat-history-title {
  min-height: 31px !important;
  color: rgba(242, 250, 251, .96) !important;
  font-size: 17px !important;
  font-weight: 750 !important;
  line-height: 1 !important;
  letter-spacing: .04em !important;
  text-shadow: 0 1px 10px rgba(137, 225, 210, .08) !important;
}


/* 20260721 place site statistics above Daily Updates without shifting AI News. */
@media (min-width: 981px) {
  .news-column > .news-stats-row {
    order: 1;
    transform: translateY(-270px);
  }

  .news-column > .daily-update-board {
    order: 2;
    transform: translateY(120px);
  }

  .news-column > .news-sidebar {
    order: 3;
  }
}

@media (max-width: 980px) {
  .news-column > .news-stats-row {
    order: 1;
  }

  .news-column > .daily-update-board {
    order: 2;
  }

  .news-column > .news-sidebar {
    order: 3;
  }
}


/* 20260721 animated light treatment for Daily Updates board. */
.daily-update-board {
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 12%, rgba(81, 222, 194, .085), transparent 31%),
    rgba(5, 16, 22, .965);
  animation: daily-update-board-breathe 4.2s ease-in-out infinite;
}

.daily-update-board::before {
  box-shadow: 0 0 18px rgba(91, 229, 201, .28);
  animation: daily-update-rail-pulse 2.6s ease-in-out infinite;
}

.daily-update-board::after {
  top: -38%;
  bottom: -38%;
  left: -32%;
  right: auto;
  width: 24%;
  height: auto;
  background: linear-gradient(
    105deg,
    transparent 0%,
    rgba(76, 212, 187, .02) 27%,
    rgba(92, 231, 204, .15) 47%,
    rgba(218, 255, 247, .1) 53%,
    rgba(76, 212, 187, .035) 68%,
    transparent 100%
  );
  box-shadow: none;
  filter: blur(7px);
  opacity: 0;
  transform: translateX(0) skewX(-14deg);
  animation: daily-update-board-sweep 4.1s cubic-bezier(.45, .05, .55, .95) infinite;
}

.daily-update-board:hover {
  border-color: rgba(112, 228, 205, .42);
}

.daily-update-kicker::before {
  animation: daily-update-dot-pulse 2s ease-in-out infinite;
}

@keyframes daily-update-board-breathe {
  0%, 100% {
    box-shadow:
      0 22px 54px rgba(0, 0, 0, .3),
      0 0 0 1px rgba(120, 231, 211, .025),
      inset 0 1px 0 rgba(224, 255, 249, .055);
  }
  50% {
    box-shadow:
      0 24px 58px rgba(0, 0, 0, .32),
      0 0 22px rgba(76, 207, 182, .095),
      0 0 0 1px rgba(125, 236, 214, .075),
      inset 0 1px 0 rgba(224, 255, 249, .08);
  }
}

@keyframes daily-update-board-sweep {
  0%, 12% {
    opacity: 0;
    transform: translateX(0) skewX(-14deg);
  }
  24% { opacity: .88; }
  68% { opacity: .42; }
  78%, 100% {
    opacity: 0;
    transform: translateX(650%) skewX(-14deg);
  }
}

@keyframes daily-update-rail-pulse {
  0%, 100% {
    opacity: .68;
    box-shadow: 0 0 12px rgba(91, 229, 201, .18);
  }
  50% {
    opacity: 1;
    box-shadow: 0 0 22px rgba(91, 229, 201, .42);
  }
}

@keyframes daily-update-dot-pulse {
  0%, 100% {
    transform: scale(.88);
    opacity: .72;
  }
  50% {
    transform: scale(1.08);
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .daily-update-board,
  .daily-update-board::before,
  .daily-update-board::after,
  .daily-update-kicker::before {
    animation: none;
  }
}


/* 20260721 redesigned favorites folder entry. */
.stats-sidebar .metric.favorite-library-trigger {
  min-height: 104px;
  padding: 14px 15px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 13px;
  text-align: left;
  border-radius: 11px;
  border-color: rgba(91, 215, 188, .3);
  background: linear-gradient(135deg, rgba(15, 55, 57, .84), rgba(7, 28, 37, .93));
  box-shadow: 0 16px 32px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(220, 255, 247, .07);
}

.stats-sidebar .metric.favorite-library-trigger:hover {
  transform: translateY(-2px);
  border-color: rgba(111, 232, 204, .58);
  background: linear-gradient(135deg, rgba(18, 68, 67, .9), rgba(8, 34, 42, .96));
  box-shadow: 0 19px 36px rgba(0, 0, 0, .25), 0 0 21px rgba(74, 212, 183, .11), inset 0 1px 0 rgba(230, 255, 249, .1);
}

.stats-sidebar .metric.favorite-library-trigger:active {
  transform: translateY(0) scale(.985);
}

.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-folder,
.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-copy,
.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-arrow {
  position: relative;
  z-index: 1;
}

.stats-sidebar .favorite-entry-folder {
  display: grid;
  place-items: center;
  width: 45px;
  height: 45px;
  flex: 0 0 45px;
  border: 1px solid rgba(117, 230, 203, .28);
  border-radius: 10px;
  color: rgba(156, 246, 220, .94);
  background: linear-gradient(145deg, rgba(67, 195, 169, .18), rgba(45, 139, 143, .08));
  box-shadow: inset 0 1px 0 rgba(230, 255, 249, .1), 0 0 17px rgba(67, 208, 179, .08);
}

.stats-sidebar .favorite-entry-folder svg {
  width: 29px;
  height: 29px;
  fill: rgba(100, 222, 192, .18);
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.1;
}

.stats-sidebar .favorite-entry-copy {
  min-width: 0;
  display: grid;
  align-content: center;
  gap: 5px;
}

.stats-sidebar .favorite-entry-title {
  display: block;
  color: rgba(245, 255, 252, .97);
  font-size: 17px;
  font-weight: 780;
  line-height: 1.15;
  white-space: nowrap;
}

.stats-sidebar .favorite-entry-meta {
  display: flex;
  align-items: baseline;
  gap: 5px;
  color: rgba(187, 221, 216, .78);
  font-size: 12px;
  font-weight: 620;
  line-height: 1.1;
  white-space: nowrap;
}

.stats-sidebar .favorite-entry-meta strong {
  display: inline;
  color: rgba(242, 255, 251, .98);
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  text-shadow: 0 0 16px rgba(151, 255, 218, .2);
}

.stats-sidebar .favorite-entry-meta > span {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
}

.stats-sidebar .favorite-entry-arrow {
  display: grid;
  place-items: center;
  width: 20px;
  height: 28px;
  margin-left: auto;
  flex: 0 0 20px;
  color: rgba(173, 235, 222, .66);
  transition: transform .25s ease, color .25s ease;
}

.stats-sidebar .favorite-entry-arrow svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.stats-sidebar .metric.favorite-library-trigger:hover .favorite-entry-arrow,
.stats-sidebar .metric.favorite-library-trigger:focus-visible .favorite-entry-arrow {
  color: rgba(209, 255, 243, .96);
  transform: translateX(3px);
}

@media (max-width: 560px) {
  .stats-sidebar .metric.favorite-library-trigger {
    min-height: 96px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .stats-sidebar .metric.favorite-library-trigger,
  .stats-sidebar .favorite-entry-arrow {
    transition: none;
  }
}


/* Keep the redesigned favorite entry horizontal against legacy metric rules. */
.stats-sidebar .metric.favorite-library-trigger {
  flex-direction: row;
}


/* Keep the favorites card at the same compact height as the AI entry. */
.stats-sidebar .metric.favorite-library-trigger {
  height: 104px;
}
@media (max-width: 560px) {
  .stats-sidebar .metric.favorite-library-trigger {
    height: 96px;
  }
}


/* 20260721 structured AI answer typography */
body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content {
  display: grid;
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  color: rgba(238, 244, 248, 0.88);
  font-size: 14px;
  line-height: 1.78;
  overflow-wrap: anywhere;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content > * {
  min-width: 0;
  max-width: 100%;
  margin: 0;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content p {
  margin: 0;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: anywhere;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content h3,
body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content h4,
body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content h5 {
  color: rgba(244, 250, 252, 0.96);
  font-weight: 760;
  line-height: 1.45;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content h3 { font-size: 17px; }
body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content h4 { font-size: 15px; }
body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content h5 { font-size: 14px; }

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-list {
  display: grid;
  gap: 9px;
  margin: 0;
  padding-left: 1.55rem;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-list li {
  min-width: 0;
  padding-left: 4px;
  color: rgba(232, 240, 245, 0.88);
  line-height: 1.72;
  word-break: break-word;
  overflow-wrap: anywhere;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-list li::marker {
  color: rgba(118, 216, 198, 0.9);
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content strong {
  color: rgba(247, 252, 253, 0.98);
  font-weight: 760;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-quote {
  padding: 9px 12px;
  border-left: 2px solid rgba(102, 218, 199, 0.7);
  border-radius: 0 8px 8px 0;
  background: rgba(86, 196, 182, 0.065);
  color: rgba(218, 233, 238, 0.76);
  line-height: 1.72;
  word-break: break-word;
  overflow-wrap: anywhere;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-code {
  overflow: auto;
  padding: 12px 14px;
  border: 1px solid rgba(144, 190, 204, 0.14);
  border-radius: 9px;
  background: rgba(2, 10, 16, 0.52);
  color: rgba(226, 239, 243, 0.88);
  font: 12.5px/1.65 Consolas, "SFMono-Regular", monospace;
  white-space: pre-wrap;
  word-break: break-word;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-inline-code {
  padding: 0.12em 0.38em;
  border: 1px solid rgba(145, 200, 211, 0.14);
  border-radius: 5px;
  background: rgba(3, 13, 19, 0.46);
  color: rgba(163, 231, 218, 0.96);
  font: 0.9em/1.45 Consolas, "SFMono-Regular", monospace;
}

body.ai-chat-mode.ai-model-chat .ai-user-message-content {
  white-space: normal;
  word-break: break-word;
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-content {
    gap: 10px;
    font-size: 13.5px;
    line-height: 1.72;
  }

  body.ai-chat-mode.ai-model-chat .ai-chat-message-assistant .ai-answer-list {
    gap: 7px;
    padding-left: 1.35rem;
  }
}


/* 20260721 align the collapsed model row with expanded model options. */
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  padding-left: 10px !important;
}


/* 20260721 compact favorites entry and five-row daily update board. */
.stats-sidebar .metric.favorite-library-trigger {
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) 18px !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
  min-height: 92px !important;
  height: 92px !important;
  padding: 12px 12px 12px 13px !important;
  text-align: left !important;
}

.stats-sidebar .favorite-entry-folder {
  width: 38px !important;
  height: 38px !important;
  flex: 0 0 38px !important;
  border-radius: 9px !important;
}

.stats-sidebar .favorite-entry-folder svg {
  width: 24px !important;
  height: 24px !important;
}

.stats-sidebar .favorite-entry-copy {
  min-width: 0 !important;
  gap: 4px !important;
}

.stats-sidebar .favorite-entry-title {
  min-width: 0 !important;
  font-size: 16px !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
}

.stats-sidebar .favorite-entry-meta {
  align-items: baseline !important;
  gap: 4px !important;
  min-width: 0 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.stats-sidebar .favorite-entry-meta strong {
  font-size: 19px !important;
  line-height: 1 !important;
}

.stats-sidebar .favorite-entry-arrow {
  width: 18px !important;
  height: 24px !important;
  margin-left: 0 !important;
  flex: 0 0 18px !important;
  justify-self: end !important;
}

.stats-sidebar .favorite-entry-arrow svg {
  width: 15px !important;
  height: 15px !important;
}

.daily-update-board {
  height: 310px !important;
}

.daily-update-head {
  min-height: 66px !important;
  padding: 11px 15px 10px !important;
}

.daily-update-list {
  gap: 2px !important;
  padding: 7px 10px 9px 12px !important;
  overflow-y: hidden !important;
}

.daily-update-item {
  min-height: 43px !important;
  padding: 6px 9px !important;
}

@media (max-width: 980px) {
  .daily-update-board {
    height: 296px !important;
  }
}

@media (max-width: 560px) {
  .stats-sidebar .metric.favorite-library-trigger {
    min-height: 88px !important;
    height: 88px !important;
    grid-template-columns: 34px minmax(0, 1fr) 16px !important;
    gap: 8px !important;
    padding-inline: 11px !important;
  }

  .stats-sidebar .favorite-entry-folder {
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
  }

  .stats-sidebar .favorite-entry-folder svg {
    width: 22px !important;
    height: 22px !important;
  }

  .stats-sidebar .favorite-entry-title {
    font-size: 15px !important;
  }

  .daily-update-board {
    height: 292px !important;
  }

  .daily-update-list {
    overflow-y: auto !important;
  }
}

/* 20260721 compact AI mode left sparkle effect. */
@media (min-width: 561px) {
  .stats-sidebar .stats-ai-mode-button,
  .stats-sidebar .stats-ai-mode-button:hover,
  .stats-sidebar .stats-ai-mode-button:focus,
  .stats-sidebar .stats-ai-mode-button:focus-visible,
  .stats-sidebar .stats-ai-mode-button:active,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode {
    grid-template-columns: 58px auto !important;
    gap: 10px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
    width: 46px !important;
    height: 46px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem::before,
  .stats-sidebar .stats-ai-mode-emblem::after {
    inset: -6px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem svg {
    width: 19px !important;
    height: 19px !important;
  }
}

@media (max-width: 560px) {
  .stats-sidebar .stats-ai-mode-button,
  .stats-sidebar .stats-ai-mode-button:hover,
  .stats-sidebar .stats-ai-mode-button:focus,
  .stats-sidebar .stats-ai-mode-button:focus-visible,
  .stats-sidebar .stats-ai-mode-button:active,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode {
    grid-template-columns: 54px auto !important;
    gap: 9px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
    width: 43px !important;
    height: 43px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem::before,
  .stats-sidebar .stats-ai-mode-emblem::after {
    inset: -6px !important;
  }

  .stats-sidebar .stats-ai-mode-emblem svg {
    width: 18px !important;
    height: 18px !important;
  }
}
/* Keep older minimum sizes from expanding the compact sparkle. */
@media (min-width: 561px) {
  .stats-sidebar .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
    min-width: 46px !important;
    flex-basis: 46px !important;
  }
}

@media (max-width: 560px) {
  .stats-sidebar .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
    min-width: 43px !important;
    flex-basis: 43px !important;
  }
}
/* Move the GPT history heading back toward the left edge. */
body.ai-chat-mode.ai-model-chat .ai-chat-history-head {
  justify-content: flex-start !important;
  padding-left: 7px !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-history-head > #ai-chat-history-title {
  margin: 0 !important;
  text-align: left !important;
}
/* Move generation history headings toward the left rail. */
body.ai-chat-mode:is(.ai-model-image, .ai-model-video) .ai-image-history-tools > span {
  justify-self: start !important;
  padding-left: 7px !important;
  text-align: left !important;
}
/* Keep Daily Updates visually separated from AI News. */
@media (min-width: 981px) {
  .news-column > .daily-update-board {
    transform: translateY(104px) !important;
  }
}
/* Present tool and resource totals as typography instead of cards. */
.news-stats-row .metric,
.news-stats-row .metric:hover,
.news-stats-row .metric:focus-visible {
  min-height: 92px !important;
  padding: 8px 12px !important;
  overflow: visible !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  transform: none !important;
}

.news-stats-row .metric strong,
.news-stats-row .metric span {
  background: linear-gradient(108deg, #58d68d 0%, #48d1b3 50%, #47c7e8 100%) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  font-weight: 900 !important;
  text-shadow: 0 0 24px rgba(72, 209, 179, .12) !important;
}

.news-stats-row .metric strong {
  min-width: 0 !important;
  font-size: 44px !important;
  line-height: .94 !important;
}

.news-stats-row .metric span {
  font-size: 18px !important;
  line-height: 1 !important;
}

@media (max-width: 560px) {
  .news-stats-row .metric {
    min-height: 78px !important;
    padding: 6px 8px !important;
  }

  .news-stats-row .metric strong {
    font-size: 37px !important;
  }

  .news-stats-row .metric span {
    font-size: 16px !important;
  }
}
/* Keep the unframed statistic labels clear of the Daily Updates board. */
@media (min-width: 981px) {
  .news-column > .news-stats-row {
    transform: translateY(-300px) !important;
  }
}
/* Raise the homepage light ribbon slightly further while preserving its scale and motion. */
@media (min-width: 1101px) {
  .command-hero > .hero-flow-wave {
    top: -72px !important;
  }
}

@media (max-width: 1100px) and (min-width: 901px) {
  .command-hero > .hero-flow-wave {
    top: -50px !important;
  }
}
/* 20260721 AI mode label matches the main brand gradient. */
.stats-sidebar .stats-ai-mode-label,
.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-label,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-label,
.stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-label {
  color: transparent !important;
  background: linear-gradient(90deg, var(--green), var(--cyan)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-weight: 900 !important;
  text-shadow: none !important;
}
/* Match the Favorites title to the homepage brand wordmark. */
.favorite-library-title h1 {
  color: transparent !important;
  background: linear-gradient(90deg, var(--green), var(--cyan)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-weight: 900 !important;
  text-shadow: none !important;
}
/* 20260721 favorites entry: center the title and place the count beside it. */
.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-copy {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 0 !important;
  text-align: center !important;
}

.stats-sidebar .metric.favorite-library-trigger .favorite-entry-title {
  grid-column: 2 !important;
  justify-self: center !important;
  font-size: 23px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.stats-sidebar .metric.favorite-library-trigger .favorite-entry-meta {
  grid-column: 3 !important;
  justify-self: start !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
  margin-left: 12px !important;
  font-size: 0 !important;
  line-height: 1 !important;
}

.stats-sidebar .metric.favorite-library-trigger .favorite-entry-meta strong {
  font-size: 26px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

@media (max-width: 560px) {
  .stats-sidebar .metric.favorite-library-trigger .favorite-entry-meta {
    margin-left: 9px !important;
  }

  .stats-sidebar .metric.favorite-library-trigger .favorite-entry-title {
    font-size: 20px !important;
  }

  .stats-sidebar .metric.favorite-library-trigger .favorite-entry-meta strong {
    font-size: 23px !important;
  }
}
/* 20260721 raise the Image 2 generation composer slightly. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-model-image .ai-generation-composer-mount {
    transform: translateY(-18px) !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-image .ai-generation-composer-mount {
    transform: translateY(-10px) !important;
  }
}
/* 20260721 raise the GPT conversation composer slightly. */
@media (min-width: 761px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
    transform: translateY(-18px) !important;
  }
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
    transform: translateY(-10px) !important;
  }
}
/* 20260721 final homepage, sidebar, and Image 2 spacing. */
@media (min-width: 981px) {
  .home-layout {
    position: relative;
  }

  .home-layout > .news-column {
    position: relative;
    top: 0 !important;
    display: block;
    min-width: 0;
    padding-top: 72px;
  }

  .home-layout > .news-column > .daily-update-board {
    position: absolute;
    z-index: 3;
    top: auto !important;
    right: 0;
    bottom: calc(100% - 54px);
    left: 0;
    width: 100%;
    margin: 0;
    transform: none !important;
  }

  .home-layout > .news-column > .news-sidebar {
    width: 100%;
    margin: 0;
    transform: none !important;
  }
}

.home-layout > .stats-sidebar {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}

.home-layout > .stats-sidebar > .news-stats-row {
  order: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  width: 100%;
  margin: 0;
  transform: none !important;
}

.home-layout > .stats-sidebar > .news-stats-row .metric {
  min-height: 60px !important;
  padding: 3px 2px !important;
}

.home-layout > .stats-sidebar > .news-stats-row .metric strong {
  font-size: 32px !important;
  line-height: 1 !important;
  color: rgba(248, 252, 255, .96) !important;
  text-align: center;
}

.home-layout > .stats-sidebar > .news-stats-row .metric span {
  font-size: 14px !important;
  line-height: 1 !important;
  color: rgba(248, 252, 255, .96) !important;
  text-align: center;
}

.home-layout > .stats-sidebar > .insight-row {
  order: 1;
  width: 100%;
  margin: 0 !important;
}

.home-layout > .stats-sidebar > .stats-ai-entry {
  order: 2;
  width: 100%;
  margin: 0 !important;
}

.stats-sidebar .metric.favorite-library-trigger {
  position: relative;
  display: grid !important;
  grid-template-columns: 42px auto !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100%;
  min-height: 82px !important;
  height: 82px !important;
  padding: 10px 38px 10px 24px !important;
  border-radius: 9px !important;
  text-align: center !important;
}

.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-folder {
  position: static !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  margin: 0 !important;
  border-color: rgba(111, 232, 204, .3) !important;
  color: rgba(157, 247, 220, .96) !important;
  background: rgba(70, 202, 175, .1) !important;
}

.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-copy {
  position: static !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  text-align: center !important;
}

.stats-sidebar .metric.favorite-library-trigger .favorite-entry-title {
  display: block !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  color: rgba(248, 252, 255, .96) !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
}

.stats-sidebar .metric.favorite-library-trigger .favorite-entry-meta {
  display: none !important;
}

.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-arrow {
  position: absolute !important;
  z-index: 2;
  top: 50% !important;
  right: 13px !important;
  width: 18px !important;
  height: 24px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
}

.stats-sidebar .metric.favorite-library-trigger:hover > .favorite-entry-arrow,
.stats-sidebar .metric.favorite-library-trigger:focus-visible > .favorite-entry-arrow {
  transform: translate(2px, -50%) !important;
}

.stats-sidebar .stats-ai-mode-button,
.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus,
.stats-sidebar .stats-ai-mode-button:focus-visible,
.stats-sidebar .stats-ai-mode-button:active,
.stats-sidebar .stats-ai-mode-button.is-ai-mode {
  display: grid !important;
  grid-template-columns: 38px auto !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 11px !important;
  min-height: 70px !important;
  height: 70px !important;
  padding: 8px 22px !important;
  border-radius: 9px !important;
}

.stats-sidebar .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  flex-basis: 38px !important;
}

.stats-sidebar .stats-ai-mode-label {
  font-size: 20px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-image .ai-chat-studio {
  padding-top: 5px !important;
  padding-bottom: 2px !important;
}

body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio.ai-image-studio {
  grid-template-rows: minmax(340px, 1fr) auto auto !important;
  gap: 3px !important;
  padding-bottom: 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage {
  min-height: 340px !important;
  margin-bottom: 0 !important;
  padding-bottom: 2px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-params-panel.ai-generation-settings {
  margin: 0 !important;
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

body.ai-chat-mode.ai-model-image .ai-image-controls {
  min-height: 52px !important;
  height: 52px !important;
  grid-template-rows: 52px !important;
}

@media (max-width: 980px) {
  .home-layout > .news-column {
    display: grid;
    gap: 14px;
    padding-top: 0;
  }

  .home-layout > .news-column > .daily-update-board,
  .home-layout > .news-column > .news-sidebar {
    position: relative;
    inset: auto;
    width: 100%;
    margin: 0;
    transform: none !important;
  }

  .home-layout > .stats-sidebar {
    gap: 10px;
  }
}

@media (max-width: 560px) {
  .stats-sidebar .metric.favorite-library-trigger {
    min-height: 74px !important;
    height: 74px !important;
  }

  .stats-sidebar .stats-ai-mode-button,
  .stats-sidebar .stats-ai-mode-button:hover,
  .stats-sidebar .stats-ai-mode-button:focus-visible,
  .stats-sidebar .stats-ai-mode-button.is-ai-mode {
    min-height: 66px !important;
    height: 66px !important;
  }

  body.ai-chat-mode.ai-model-image .ai-studio-shell.ai-generation-studio.ai-image-studio {
    grid-template-rows: minmax(280px, 1fr) auto auto !important;
  }

  body.ai-chat-mode.ai-model-image .ai-generation-stage.ai-image-stage {
    min-height: 280px !important;
  }
}
/* 20260721 place the Daily Updates status above the frame and center its title. */
.daily-update-shell {
  min-width: 0;
}

.daily-update-shell > .daily-update-kicker {
  position: absolute;
  z-index: 5;
  bottom: calc(100% + 10px);
  left: 15px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: max-content;
  color: rgba(145, 231, 211, .82);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .12em;
  line-height: 1;
  pointer-events: none;
}

.daily-update-shell > .daily-update-board {
  position: relative !important;
  inset: auto !important;
  width: 100%;
  margin: 0;
  transform: none !important;
}

.daily-update-board .daily-update-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
}

.daily-update-board .daily-update-head > div {
  display: grid;
  justify-items: center;
  width: 100%;
}

.daily-update-board .daily-update-head h2 {
  font-size: 26px;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

@media (min-width: 981px) {
  .home-layout > .news-column > .daily-update-shell {
    position: absolute;
    z-index: 3;
    top: auto;
    right: 0;
    bottom: calc(100% - 54px);
    left: 0;
    width: 100%;
    margin: 0;
  }
}

@media (max-width: 980px) {
  .home-layout > .news-column > .daily-update-shell {
    position: relative;
    width: 100%;
    margin: 22px 0 0;
  }
}
/* 20260721 align the Favorites emblem with the site's cyan-green icon language. */
.favorite-library-mark {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-color: rgba(84, 219, 190, .38) !important;
  color: #71e4c4 !important;
  background: linear-gradient(145deg, rgba(42, 149, 123, .13), rgba(45, 154, 181, .08) 58%, rgba(7, 16, 24, .82)) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .22), 0 0 24px rgba(72, 209, 179, .1), inset 0 1px 0 rgba(210, 255, 246, .08) !important;
}

.favorite-library-mark::before {
  content: "";
  position: absolute;
  inset: 7px;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(88, 214, 141, .14), rgba(71, 199, 232, .035) 52%, transparent 74%);
  filter: blur(4px);
}

.favorite-library-mark svg {
  width: 29px;
  height: 29px;
  overflow: visible;
}

.favorite-library-mark-folder {
  fill: rgba(71, 199, 232, .035);
  stroke: currentColor;
  stroke-width: 1.35;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.favorite-library-mark-spark {
  fill: #8ff0d2;
  stroke: rgba(211, 255, 244, .78);
  stroke-width: .45;
  filter: drop-shadow(0 0 5px rgba(88, 214, 141, .55));
}

@media (max-width: 680px) {
  .favorite-library-mark svg {
    width: 25px;
    height: 25px;
  }
}
/* 20260721 keep the Favorites exit control quiet and consistent with the site UI. */
.favorite-library-exit {
  gap: 8px;
  min-height: 40px;
  padding: 0 13px 0 15px;
  border-color: rgba(91, 176, 172, .3);
  border-radius: 9px;
  color: rgba(226, 243, 242, .86);
  background: linear-gradient(145deg, rgba(17, 48, 51, .54), rgba(8, 22, 30, .7));
  box-shadow: 0 8px 22px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255, 255, 255, .045);
}

.favorite-library-exit span {
  font-size: 13px;
  font-weight: 760;
}

.favorite-library-exit svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: .78;
  transition: transform .2s ease, opacity .2s ease;
}

.favorite-library-exit:hover,
.favorite-library-exit:focus-visible {
  color: #f1fffb;
  border-color: rgba(88, 214, 177, .55);
  background: linear-gradient(145deg, rgba(24, 72, 63, .62), rgba(10, 35, 39, .78));
  box-shadow: 0 10px 26px rgba(0, 0, 0, .23), 0 0 18px rgba(88, 214, 177, .07), inset 0 1px 0 rgba(255, 255, 255, .07);
}

.favorite-library-exit:hover svg,
.favorite-library-exit:focus-visible svg {
  opacity: 1;
  transform: translateX(2px);
}

.favorite-library-exit:active {
  transform: translateY(-50%) scale(.97);
}

@media (max-width: 680px) {
  .favorite-library-exit {
    width: 38px;
    min-height: 38px;
    padding: 0;
    justify-content: center;
  }

  .favorite-library-exit svg {
    width: 17px;
    height: 17px;
  }
}
/* 20260721 optically center the homepage category bar between search and content. */
body:not(.ai-chat-mode) .command-hero {
  margin-bottom: 24px;
}

body:not(.ai-chat-mode) .tools-workspace .category-bar {
  margin-bottom: 24px;
}
/* 20260721 extend AI News to the bottom of the main content column. */
@media (min-width: 981px) {
  body:not(.ai-chat-mode) .home-layout > .news-column {
    align-self: stretch;
    min-height: 0;
  }

  body:not(.ai-chat-mode) .home-layout > .news-column > .news-sidebar {
    position: absolute;
    inset: 72px 0 0;
    display: flex;
    height: auto;
    max-height: none;
    flex-direction: column;
  }

  body:not(.ai-chat-mode) .home-layout > .news-column > .news-sidebar > .news-list,
  body:not(.ai-chat-mode) .home-layout > .news-column > .news-sidebar > .ai-ranking-panel {
    flex: 1;
    min-height: 0;
    max-height: none;
  }
}
/* 20260721 keep GPT messages clear of the composer and pin the user label right. */
body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-main {
  grid-template-rows: minmax(0, 1fr) auto !important;
  row-gap: 24px !important;
}

body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-composer-dock {
  transform: none !important;
}

body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
  padding-bottom: 14px !important;
  scroll-padding-bottom: 38px !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user {
  align-self: flex-end !important;
  flex-direction: row-reverse !important;
  justify-content: flex-start !important;
  margin-right: 0 !important;
  margin-left: auto !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message {
  margin-right: 0 !important;
  margin-left: auto !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-meta {
  position: static !important;
  inset: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 6px !important;
  transform: none !important;
  text-align: right !important;
  white-space: nowrap !important;
}

body.ai-chat-mode.ai-model-chat .ai-chat-message-row.ai-chat-message-user .ai-chat-message-role {
  margin-left: auto !important;
  text-align: right !important;
}

@media (max-width: 760px) {
  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-main {
    row-gap: 18px !important;
  }

  body.ai-chat-mode.ai-model-chat:not(.ai-model-image):not(.ai-model-video) .ai-chat-messages {
    padding-bottom: 12px !important;
    scroll-padding-bottom: 30px !important;
  }
}
/* 20260721 align the collapsed model row with both expanded model options. */
body.ai-chat-mode .ai-chat-head-model .ai-chat-model-switch {
  grid-template-columns: 25px minmax(0, 1fr) 10px !important;
  column-gap: 4px !important;
  height: 39px !important;
  min-height: 39px !important;
  padding: 3px 0 3px 9px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name {
  display: grid !important;
  align-content: center !important;
  gap: 1px !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name strong,
body.ai-chat-mode .ai-chat-head-model .model-option-copy strong {
  font-size: 13px !important;
  line-height: 1.15 !important;
}

body.ai-chat-mode .ai-chat-head-model .ai-chat-model-name small,
body.ai-chat-mode .ai-chat-head-model .model-option-copy small {
  font-size: 10px !important;
  line-height: 1.15 !important;
}

/* 20260721 center Daily Updates copy and give new entries a quiet arrival state. */
.daily-update-board .daily-update-list {
  counter-reset: daily-update-entry;
}

.daily-update-board .daily-update-item {
  grid-template-columns: 64px minmax(0, 1fr) 64px !important;
  column-gap: 8px !important;
  overflow: hidden;
  border: 1px solid rgba(104, 218, 197, .105) !important;
  background: linear-gradient(90deg, rgba(69, 171, 152, .065), rgba(255, 255, 255, .012) 34%, rgba(255, 255, 255, .012) 66%, rgba(69, 171, 152, .045)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .018);
  animation: daily-update-arrive .52s cubic-bezier(.22, 1, .36, 1) both;
}

.daily-update-board .daily-update-item:nth-child(2) { animation-delay: 55ms; }
.daily-update-board .daily-update-item:nth-child(3) { animation-delay: 110ms; }
.daily-update-board .daily-update-item:nth-child(4) { animation-delay: 165ms; }
.daily-update-board .daily-update-item:nth-child(5) { animation-delay: 220ms; }

.daily-update-board .daily-update-item:first-child {
  border-color: rgba(110, 232, 209, .22) !important;
  background: linear-gradient(90deg, rgba(70, 181, 160, .105), rgba(102, 218, 197, .035) 50%, rgba(70, 181, 160, .075)) !important;
  box-shadow: inset 3px 0 0 rgba(112, 230, 207, .62), inset 0 1px 0 rgba(255, 255, 255, .03);
}

.daily-update-board .daily-update-item .daily-update-type { justify-self: start; }

.daily-update-board .daily-update-item strong {
  justify-self: stretch;
  width: 100%;
  color: rgba(242, 251, 249, .96);
  text-align: center;
  text-shadow: 0 0 16px rgba(105, 219, 198, .12);
}

.daily-update-board .daily-update-item time {
  justify-self: end;
  text-align: right;
}

.daily-update-board .daily-update-item:hover,
.daily-update-board .daily-update-item:focus-visible {
  transform: translateY(-1px) !important;
  border-color: rgba(111, 229, 207, .28) !important;
  background-color: rgba(68, 171, 153, .09) !important;
  box-shadow: inset 3px 0 0 rgba(112, 230, 207, .72), 0 5px 16px rgba(5, 21, 20, .14) !important;
}

@keyframes daily-update-arrive {
  from { opacity: 0; transform: translateY(7px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 560px) {
  .daily-update-board .daily-update-item {
    grid-template-columns: 54px minmax(0, 1fr) 54px !important;
    column-gap: 5px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .daily-update-board .daily-update-item { animation: none !important; }
}
/* 20260721 center the Daily Updates heading independently from its date badge. */
.daily-update-board .daily-update-head {
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  justify-items: stretch !important;
}

.daily-update-board .daily-update-head > div {
  grid-column: 1 !important;
  width: 100% !important;
  padding-inline: 76px !important;
  box-sizing: border-box !important;
  justify-items: center !important;
}

.daily-update-board .daily-update-head h2 {
  width: 100% !important;
  text-align: center !important;
}

.daily-update-board .daily-update-head > time {
  position: absolute !important;
  top: 50% !important;
  right: 15px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
}

@media (max-width: 560px) {
  .daily-update-board .daily-update-head > div {
    padding-inline: 66px !important;
  }

  .daily-update-board .daily-update-head > time {
    right: 11px !important;
  }
}
/* 20260721 move the Daily Updates date badge outside the board. */
.daily-update-shell > #daily-update-date {
  position: absolute;
  z-index: 5;
  right: 15px;
  bottom: calc(100% + 8px);
  display: grid;
  place-items: center;
  min-width: 62px;
  min-height: 42px;
  margin: 0;
  padding: 5px 9px 4px;
  border: 1px solid rgba(103, 213, 192, .2);
  border-radius: 7px;
  color: rgba(181, 239, 225, .92);
  background: rgba(7, 22, 27, .88);
  box-shadow: inset 0 1px 0 rgba(225, 255, 249, .04), 0 8px 20px rgba(0, 0, 0, .16);
  backdrop-filter: blur(10px);
  font-size: 14px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  pointer-events: none;
}

.daily-update-shell > #daily-update-date::before {
  content: "TODAY";
  display: block;
  margin-bottom: 4px;
  color: rgba(137, 194, 187, .64);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
}

.daily-update-board .daily-update-head > div {
  padding-inline: 20px !important;
}

@media (max-width: 560px) {
  .daily-update-shell > #daily-update-date {
    right: 11px;
    bottom: calc(100% + 7px);
  }

  .daily-update-board .daily-update-head > div {
    padding-inline: 14px !important;
  }
}

/* 20260721 strengthen the homepage category bar text and moving light. */
body:not(.ai-chat-mode) .tools-workspace .category-bar {
  border-color: rgba(105, 220, 195, .24) !important;
  background: rgba(8, 17, 25, .88) !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .28), inset 0 1px 0 rgba(187, 255, 235, .055), 0 0 30px rgba(55, 211, 174, .055) !important;
}

body:not(.ai-chat-mode) .tools-workspace .category-group-toggle {
  color: rgba(232, 242, 247, .94) !important;
}

body:not(.ai-chat-mode) .tools-workspace .category-group-toggle > span {
  opacity: 1;
  filter: saturate(1.16) brightness(1.12);
}

body:not(.ai-chat-mode) .tools-workspace .category-group-toggle strong {
  color: rgba(238, 247, 250, .94) !important;
  font-weight: 800;
  text-shadow: 0 0 14px rgba(119, 236, 205, .10);
}

body:not(.ai-chat-mode) .tools-workspace .category-group-toggle em {
  color: #75e5aa !important;
  border: 1px solid rgba(71, 214, 151, .16);
  background: rgba(50, 192, 129, .13) !important;
  box-shadow: 0 0 16px rgba(50, 204, 143, .08);
}

body:not(.ai-chat-mode) .tools-workspace .category-group-toggle .category-toggle-mark {
  color: #64d9ef !important;
  border-color: rgba(75, 207, 232, .34) !important;
  background: rgba(38, 153, 183, .09);
  box-shadow: inset 0 0 12px rgba(71, 199, 232, .045), 0 0 14px rgba(71, 199, 232, .055);
}

body:not(.ai-chat-mode) .tools-workspace .category-bar::before {
  opacity: .54;
  filter: blur(13px) saturate(1.28) brightness(1.16);
}

body:not(.ai-chat-mode) .tools-workspace .category-bar::after {
  opacity: .34;
  filter: blur(.8px) saturate(1.24) brightness(1.18);
}

/* 20260721 frame the homepage tool and resource totals. */
body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric,
body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric:hover,
body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric:focus-visible {
  min-height: 68px !important;
  padding: 7px 8px !important;
  overflow: hidden !important;
  border: 1px solid rgba(74, 213, 184, .25) !important;
  border-radius: 6px !important;
  background: linear-gradient(145deg, rgba(8, 24, 29, .86), rgba(5, 17, 23, .78)) !important;
  box-shadow: inset 0 1px 0 rgba(213, 255, 246, .045), 0 8px 22px rgba(0, 0, 0, .18), 0 0 18px rgba(54, 205, 175, .035) !important;
  backdrop-filter: blur(8px) !important;
  transform: none !important;
}

body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric:hover,
body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric:focus-visible {
  border-color: rgba(87, 227, 197, .38) !important;
  background: linear-gradient(145deg, rgba(10, 29, 34, .9), rgba(6, 20, 27, .84)) !important;
}

/* 20260721 center Image 2 history text against the full card. */
body.ai-chat-mode.ai-model-image .ai-image-history-copy {
  position: relative !important;
  transform: translateX(-56px) !important;
}

@media (max-width: 1180px) and (min-width: 761px) {
  body.ai-chat-mode.ai-model-image .ai-image-history-copy {
    transform: translateX(-47px) !important;
  }
}

/* 20260721 keep failed image batches visible and retryable. */
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-result-frame {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-retry {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 104px;
  height: 36px;
  padding: 0 18px;
  border: 1px solid rgba(102, 218, 195, .34);
  border-radius: 7px;
  color: rgba(239, 253, 250, .96);
  background: rgba(55, 151, 135, .18);
  box-shadow: inset 0 1px 0 rgba(244, 255, 252, .06), 0 8px 22px rgba(0, 0, 0, .18);
  font: inherit;
  font-size: 14px;
  font-weight: 750;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-retry:hover,
body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-retry:focus-visible {
  outline: 0;
  border-color: rgba(126, 235, 214, .62);
  background: rgba(62, 174, 154, .28);
  box-shadow: inset 0 1px 0 rgba(244, 255, 252, .1), 0 0 0 3px rgba(84, 205, 183, .08), 0 10px 28px rgba(0, 0, 0, .22);
  transform: translateY(-1px);
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-retry:active {
  transform: translateY(0) scale(.98);
}

body.ai-chat-mode.ai-model-image .ai-image-result-card.is-failed .ai-image-retry:disabled {
  opacity: .46;
  cursor: default;
  transform: none;
}

/* 20260721 keep the Daily Updates date badge inside the board header. */
.daily-update-board .daily-update-head {
  position: relative !important;
}

.daily-update-board .daily-update-head > div {
  padding-inline: 76px !important;
}

.daily-update-board .daily-update-head > #daily-update-date {
  position: absolute !important;
  z-index: 3;
  top: 50% !important;
  right: 15px !important;
  bottom: auto !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
}

@media (max-width: 560px) {
  .daily-update-board .daily-update-head > div {
    padding-inline: 66px !important;
  }

  .daily-update-board .daily-update-head > #daily-update-date {
    right: 11px !important;
  }
}


/* 20260721 enlarge Daily Updates entry text. */
.daily-update-board .daily-update-item strong {
  font-size: 15px !important;
  line-height: 1.35 !important;
}


/* 20260721 keep the enlarged Daily Updates heading in clear white. */
.daily-update-board .daily-update-head h2 {
  color: #fff !important;
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: #fff !important;
  font-size: 30px !important;
  font-weight: 900 !important;
}

@media (max-width: 560px) {
  .daily-update-board .daily-update-head h2 {
    font-size: 27px !important;
  }
}


/* 20260721 make only the homepage statistic numbers smaller and white. */
body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric strong {
  color: rgba(248, 252, 255, .96) !important;
  background: none !important;
  background-clip: border-box !important;
  -webkit-background-clip: border-box !important;
  -webkit-text-fill-color: rgba(248, 252, 255, .96) !important;
  font-size: 28px !important;
  text-shadow: none !important;
}

@media (max-width: 560px) {
  body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric strong {
    font-size: 26px !important;
  }
}

/* 20260721 keep Image 2 history copy inside the thumbnail's right column. */
body.ai-chat-mode.ai-model-image .ai-image-history-copy {
  position: static !important;
  transform: none !important;
  justify-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  padding: 2px 4px 2px 0 !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-copy strong {
  width: 100% !important;
  max-width: 100% !important;
  text-align: left !important;
  overflow: hidden !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

body.ai-chat-mode.ai-model-image .ai-image-history-copy small {
  justify-self: start !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: left !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* 20260721 correct Daily Updates text emphasis. */
.daily-update-board .daily-update-item .daily-update-type {
  color: rgba(248, 252, 255, .96) !important;
}

.daily-update-board .daily-update-item strong {
  color: rgba(235, 245, 243, .9) !important;
  text-shadow: none !important;
}

/* 20260721 animate homepage statistic cards and keep their labels white. */
body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric {
  position: relative !important;
  isolation: isolate;
}

body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric > strong,
body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric > span {
  position: relative;
  z-index: 2;
}

body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric > span {
  color: rgba(248, 252, 255, .96) !important;
  background: none !important;
  background-clip: border-box !important;
  -webkit-background-clip: border-box !important;
  -webkit-text-fill-color: rgba(248, 252, 255, .96) !important;
  text-shadow: none !important;
}

body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric::before {
  content: "" !important;
  display: block !important;
  position: absolute;
  inset: -45% -80%;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(105deg, transparent 36%, rgba(77, 224, 181, .04) 43%, rgba(119, 244, 211, .18) 50%, rgba(71, 200, 219, .06) 57%, transparent 64%);
  filter: blur(7px);
  opacity: .65;
  transform: translateX(-36%) scaleY(.9);
  animation: homepage-stat-light 4.8s cubic-bezier(.45, 0, .55, 1) infinite !important;
}

body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric:nth-child(2)::before {
  animation-delay: -2.4s !important;
}

@keyframes homepage-stat-light {
  0% { transform: translateX(-36%) scaleY(.9); opacity: .24; }
  45% { opacity: .7; }
  100% { transform: translateX(36%) scaleY(1.08); opacity: .24; }
}

@media (prefers-reduced-motion: reduce) {
  body:not(.ai-chat-mode) .home-layout > .stats-sidebar > .news-stats-row .metric::before {
    animation: none !important;
  }
}

/* 20260721 soften the hero wave canvas boundary without changing its placement. */
.command-hero {
  isolation: isolate !important;
  overflow: visible !important;
}

.command-hero > .hero-flow-wave {
  z-index: 0 !important;
  -webkit-mask-image: radial-gradient(ellipse 74% 100% at 79% 52%, #000 0%, #000 50%, rgba(0, 0, 0, .9) 67%, rgba(0, 0, 0, .34) 84%, transparent 100%) !important;
  mask-image: radial-gradient(ellipse 74% 100% at 79% 52%, #000 0%, #000 50%, rgba(0, 0, 0, .9) 67%, rgba(0, 0, 0, .34) 84%, transparent 100%) !important;
}

.command-hero > .hero-brand-lockup,
.command-hero > .search-panel {
  z-index: 1 !important;
}

/* 20260721 replace the AI ranking motion with a steady light treatment. */
.news-view-toggle,
.news-view-toggle[aria-pressed="false"] {
  animation: none !important;
  translate: 0 0 !important;
  transform: none !important;
  border-color: rgba(105, 233, 197, .46) !important;
  background: linear-gradient(180deg, rgba(16, 45, 49, .82), rgba(5, 19, 27, .86)) !important;
  color: rgba(244, 255, 252, .96) !important;
  box-shadow: 0 0 0 1px rgba(105, 233, 197, .08), 0 0 13px rgba(77, 224, 192, .22), inset 0 0 15px rgba(77, 224, 192, .1) !important;
}

.news-view-toggle::before,
.news-view-toggle:hover::before,
.news-view-toggle:focus-visible::before {
  inset: 1px !important;
  transform: none !important;
  transition: none !important;
  background: radial-gradient(circle at 22% 50%, rgba(119, 247, 218, .16), transparent 54%) !important;
  opacity: 1 !important;
}

.news-view-toggle:hover,
.news-view-toggle:focus-visible,
.news-view-toggle:active,
.news-view-toggle[aria-pressed="false"]:hover,
.news-view-toggle[aria-pressed="false"]:focus-visible,
.news-view-toggle[aria-pressed="false"]:active {
  animation: none !important;
  translate: 0 0 !important;
  transform: none !important;
  border-color: rgba(119, 247, 218, .68) !important;
  background: linear-gradient(180deg, rgba(20, 57, 58, .9), rgba(7, 24, 32, .9)) !important;
  box-shadow: 0 0 0 1px rgba(119, 247, 218, .12), 0 0 18px rgba(77, 224, 192, .32), inset 0 0 17px rgba(77, 224, 192, .14) !important;
}

.news-view-toggle-icon i {
  transition: opacity .2s ease !important;
}

.news-view-toggle:hover .news-view-toggle-icon i:nth-child(1) { height: 6px !important; }
.news-view-toggle:hover .news-view-toggle-icon i:nth-child(2) { height: 11px !important; }
.news-view-toggle:hover .news-view-toggle-icon i:nth-child(3) { height: 8px !important; }
/* 20260721 center the Favorites and AI mode icon-label groups. */
.stats-sidebar .metric.favorite-library-trigger,
.stats-sidebar .stats-ai-mode-button,
.stats-sidebar .stats-ai-mode-button:hover,
.stats-sidebar .stats-ai-mode-button:focus,
.stats-sidebar .stats-ai-mode-button:focus-visible,
.stats-sidebar .stats-ai-mode-button:active,
.stats-sidebar .stats-ai-mode-button.is-ai-mode {
  grid-template-columns: 42px 90px !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 12px !important;
}

.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-folder,
.stats-sidebar .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
  grid-column: 1 !important;
  grid-row: 1 !important;
  justify-self: center !important;
  align-self: center !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  flex-basis: 42px !important;
}

.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-copy,
.stats-sidebar .stats-ai-mode-label {
  grid-column: 2 !important;
  grid-row: 1 !important;
  justify-self: center !important;
  align-self: center !important;
}
/* 20260721 match and align the AI emblem with the Favorites icon. */
.stats-sidebar .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:hover .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button:focus-visible .stats-ai-mode-emblem,
.stats-sidebar .stats-ai-mode-button.is-ai-mode .stats-ai-mode-emblem {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  flex-basis: 42px !important;
  translate: -8px 0 !important;
}

.stats-sidebar .stats-ai-mode-emblem::before,
.stats-sidebar .stats-ai-mode-emblem::after {
  inset: 0 !important;
}

/* 20260722 align the Favorites and AI mode label start positions. */
.stats-sidebar .metric.favorite-library-trigger > .favorite-entry-copy,
.stats-sidebar .stats-ai-mode-label {
  width: 90px !important;
  justify-self: stretch !important;
  text-align: left !important;
  translate: 6px 0 !important;
}

/* 20260722 align the AI mode text with the Favorites text. */
.stats-sidebar .stats-ai-mode-label {
  translate: 16px 0 !important;
}
