/* Private DR.YS theme. Derived from the supplied Warm Science strategy and
   latest packaging; see docs/DRYS_CI_APPLICATION.md. Layout stays in chassis. */
:root.theme-drys {
  color-scheme: light;
  --bg: #f4f0e8;
  --surface: #fffcf7;
  --surface-2: #e8ebe4;
  --ink: #142d32;
  --ink-2: #465957;
  --ink-3: #52635e;
  --muted: #52635e;
  --line: #c9d0c5;
  --line-2: #788980;
  --brand: #eab84e;
  --brand-600: #dba735;
  --brand-700: #214b48;
  --brand-50: #e1e8dc;
  --brand-100: #adbdb0;
  --brand-ink: #214b48;
  --on-brand: #142d32;
  --grad-brand: #eab84e;
  --accent: #214b48;
  --green: #256046; --green-soft: #e0eee2; --green-line: #91b29c;
  --red: #a3283d; --red-soft: #f9e8e8; --red-line: #d69aa2;
  --orange: #805006; --orange-soft: #f8edd0; --orange-line: #c6a562;
  --purple: #672f37; --purple-soft: #f4e5e6; --purple-line: #cfa4ab;
  --hot: #b54b2e; --hot-ink: #94391f; --hot-soft: #f9e7df; --hot-track: #e8b8a3;
  --warm: #9c700b; --warm-ink: #715007; --warm-soft: #f5e9c8; --warm-track: #ddc78a;
  --cold: #5e7874; --cold-ink: #355951; --cold-soft: #e3ece7; --cold-track: #b5ccc1;
  --bubble-ai: #e3eadd;
  --opoff-soft: #f8edd0; --opoff-line: #c6a562;
  --neutral-soft: #e8ebe4; --neutral-strong: #142d32;
  --chart-inbound: #68704d;
  --chart-revenue: #672f37;
  --shadow-1: 0 1px 3px rgb(20 45 50 / 8%);
  --shadow-2: 0 4px 8px rgb(20 45 50 / 12%);
  --shadow-sheet: -8px 0 24px rgb(20 45 50 / 18%);
  /* 16 ต.ค. 2026 (คอนโซลรุ่นล่าสุด): เหลืองป้าย "AI off (not qualify)" — คนละโทนกับอำพัน --warm */
  --qualify: #f5d90a; --qualify-ink: #3d3300; --qualify-soft: #fdf5b0;
  --scrim: rgb(12 32 36 / 46%);
}

:root.theme-drys.theme-dark {
  color-scheme: dark;
  --bg: #0c2024;
  --surface: #142d32;
  --surface-2: #203e40;
  --ink: #f4f0e8;
  --ink-2: #c6d3c9;
  --ink-3: #acbeb3;
  --muted: #acbeb3;
  --line: #355451;
  --line-2: #6b877c;
  --brand: #eab84e;
  --brand-600: #f2c865;
  --brand-700: #f0cc79;
  --brand-50: #344638;
  --brand-100: #6d8059;
  --brand-ink: #f0cc79;
  --on-brand: #142d32;
  --accent: #eab84e;
  --green: #83d1a4; --green-soft: #1d4439; --green-line: #4c8b6e;
  --red: #ffa1ac; --red-soft: #4c2831; --red-line: #a4606b;
  --orange: #f1c372; --orange-soft: #493c25; --orange-line: #998050;
  --purple: #e7b1ba; --purple-soft: #492d38; --purple-line: #9e6576;
  --hot: #ee9b78; --hot-ink: #ffd4bf; --hot-soft: #4c3028; --hot-track: #87513b;
  --warm: #eab84e; --warm-ink: #f6d999; --warm-soft: #4a4026; --warm-track: #8a7742;
  --cold: #9fb8ad; --cold-ink: #d4e5dc; --cold-soft: #284740; --cold-track: #577f6f;
  --bubble-ai: #294638;
  --opoff-soft: #493c25; --opoff-line: #998050;
  --neutral-soft: #27423f; --neutral-strong: #f4f0e8;
  --chart-inbound: #eab84e;
  --chart-revenue: #dca3af;
  --shadow-1: 0 1px 3px rgb(0 0 0 / 20%);
  --shadow-2: 0 4px 8px rgb(0 0 0 / 24%);
  --shadow-sheet: -8px 0 24px rgb(0 0 0 / 32%);
  --qualify: #e8d12a; --qualify-ink: #2b2400; --qualify-soft: #45421c;
  --scrim: rgb(4 12 14 / 62%);
}

:root.theme-drys {
  --danger: var(--red); --danger-soft: var(--red-soft); --danger-line: var(--red-line);
  --chart-inbound-fill: color-mix(in srgb, var(--chart-inbound) 18%, transparent);
  --chart-revenue-muted: color-mix(in srgb, var(--chart-revenue) 24%, transparent);
}
:root.theme-drys :focus-visible { outline-color: var(--accent); }
:root.theme-drys .login-body { background: var(--bg); }
:root.theme-drys .brand-mark,
:root.theme-drys .login-mark {
  background: var(--brand); color: var(--on-brand);
  box-shadow: none; text-shadow: none;
}
:root.theme-drys .brand-mark::after { display: none; }
:root.theme-drys .brand:hover .brand-mark { transform: none; }
:root.theme-drys .topnav-link.is-active { background: var(--brand-50); color: var(--brand-ink); }
:root.theme-drys .theme-toggle { color: var(--ink-2); }
:root.theme-drys .btn-primary,
:root.theme-drys .fchip-branch.is-active,
:root.theme-drys .btn-resume { color: var(--on-brand); border-color: var(--brand-ink); }
:root.theme-drys .fchip-branch.is-active { background: var(--brand); }
:root.theme-drys .convo-row.is-active:hover { background: var(--brand-50); }
:root.theme-drys .btn-primary:active { background: var(--brand-600); }
:root.theme-drys .convo-search-input:hover { background: var(--surface-2); }
:root.theme-drys .badge-gray { background: var(--neutral-soft); }
:root.theme-drys .toast { background: var(--surface-2); color: var(--ink); }
:root.theme-drys .kpi-hero,
:root.theme-drys .roas-hero { background: var(--surface); border-color: var(--line-2); box-shadow: none; }
:root.theme-drys .kpi-hero-title,
:root.theme-drys .kpi-hero-link { color: var(--brand-ink); }
:root.theme-drys .roas-hero .kpi-hero-title { color: var(--green); }
:root.theme-drys .kpi-hero-cell,
:root.theme-drys .roas-big,
:root.theme-drys .roas-split-cell { box-shadow: none; }
:root.theme-drys .kpi-hero-cell.is-alert .kpi-hero-value,
:root.theme-drys .roas-big.is-bad .roas-big-value { color: var(--red); }
:root.theme-drys .kpi-hero-broken { background: var(--red-soft); border-color: var(--red-line); }

/* ------------------------------------------------------------------------------------------
   16 ต.ค. 2026 — พื้นผิวใหม่ของคอนโซลรุ่นล่าสุด (ลูกแพร 397a6981) ใต้ธีม DR.YS
   ไฟล์กลางบางไฟล์ใช้ token ที่มีเฉพาะในธีมลูกแพร (--border/--text/--radius-sm/--ease-out/--lk-*)
   หรือสีตายตัวโทนชมพู/พลัม (history.css, studio.css, historyAudit.css, triage.css)
   ตรงนี้ให้ค่าแทนจาก token ของ DR.YS ทั้งสว่าง/มืด — ไม่มีพื้นขาว/ชมพูโผล่ในโหมดมืด
   กติกา CI: พื้นด้าน ไม่มี gradient ไม่มี motion ใหม่ (ปิด keyframe ของพื้นผิวใหม่)
   ------------------------------------------------------------------------------------------ */
:root.theme-drys {
  --border: var(--line);
  --text: var(--ink);
  --radius-sm: 10px;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  /* identityLinks.css ปิด outline แล้วใช้ --ring เป็นกรอบโฟกัส — ไม่มีค่า = คีย์บอร์ดมองไม่เห็นว่าโฟกัสอยู่ไหน */
  --ring: 0 0 0 3px color-mix(in srgb, var(--accent) 55%, transparent);
  --ok: var(--green);
  --warn: var(--orange);
  --warm-50: var(--warm-soft);
  --blue: var(--brand-ink);
  /* ไฟล์กลางที่อ้างโทนลูกแพร (เผื่อหลุดนอกไฟล์ธีมลูกแพร) = ใช้สีของ DR.YS แทน */
  --lk-rose: var(--brand); --lk-rose-ink: var(--brand-ink); --lk-plum: var(--purple); --lk-plum-ink: var(--purple);
  --lk-gold-soft: var(--warm-soft); --lk-night: var(--bg);
}

/* ห้อง/แถว/ชิปที่ถูกเลือก: ตัวหนังสือบนพื้นสีสถานะต้องอ่านออกทั้งสองโหมด (ขาวบนส้มอ่อนของโหมดมืดอ่านไม่ออก) */
:root.theme-drys .fchip-hotfollow.is-active { color: var(--surface); }
:root.theme-drys .spam-dialog::backdrop,
:root.theme-drys .bs-sheet::backdrop { background: var(--scrim); backdrop-filter: none; }

/* ประวัติแชท (history.css มีแต่สีโทนลูกแพรและพื้นขาว ไม่มีกฎโหมดมืด) */
:root.theme-drys .history-view-tabs button { background: var(--surface); color: var(--ink); border-color: var(--line); }
:root.theme-drys .history-view-tabs button.active { background: var(--brand); border-color: var(--brand); color: var(--on-brand); }
:root.theme-drys .history-two-pane { background: var(--surface); border-color: var(--line); }
:root.theme-drys .history-rooms,
:root.theme-drys .history-room-head { border-color: var(--line); }
:root.theme-drys .history-thread-search input,
:root.theme-drys .history-thread-search select,
:root.theme-drys .history-case-picker select,
:root.theme-drys .jev-feedback select,
:root.theme-drys .jev-feedback textarea { background: var(--surface-2); color: var(--ink); border-color: var(--line-2); }
:root.theme-drys .history-thread { color: var(--ink); }
:root.theme-drys .history-thread:hover,
:root.theme-drys .history-thread.selected { background: var(--brand-50); border-color: var(--brand-100); }
:root.theme-drys .history-thread span,
:root.theme-drys .history-thread small,
:root.theme-drys .history-muted,
:root.theme-drys .history-room-empty,
:root.theme-drys .history-bubble small,
:root.theme-drys .jev-evidence,
:root.theme-drys .jev-label { color: var(--ink-3); }
:root.theme-drys .history-bubble.in { background: var(--surface-2); color: var(--ink); }
:root.theme-drys .history-bubble.out { background: var(--bubble-ai); color: var(--ink); }
:root.theme-drys .history-error { background: var(--red-soft); border-color: var(--red-line); color: var(--red); }
:root.theme-drys .jev-agree { background: var(--green-soft); color: var(--green); }
:root.theme-drys .jev-disagree { background: var(--orange-soft); color: var(--orange); }
:root.theme-drys .jev-unknown { background: var(--neutral-soft); color: var(--ink-2); }
:root.theme-drys .jev-inspector { background: var(--surface-2); border-color: var(--line); }
:root.theme-drys .jev-decision-row { border-top-color: var(--line); }
:root.theme-drys .jev-saved { color: var(--green); }
:root.theme-drys .history-shell button:focus-visible,
:root.theme-drys .history-shell select:focus-visible,
:root.theme-drys .history-shell input:focus-visible,
:root.theme-drys .history-shell textarea:focus-visible { outline-color: var(--accent); }
:root.theme-drys .history-audit-diff { border-color: var(--orange-line); }
:root.theme-drys .history-audit-label { color: var(--orange); }

/* สตูดิโอบรอดแคสต์: จอ LINE จำลองคงหน้าตา LINE แต่ปุ่มหลักใช้สีร้าน (เดิมชมพูลูกแพร) และโหมดมืดไม่มีฟองขาวจ้า */
:root.theme-drys .bs-pv-card-button.is-primary { background: var(--brand); color: var(--on-brand); }
:root.theme-drys .bs-pv-avatar { background: var(--brand); }
:root.theme-drys.theme-dark .bs-pv-bubble,
:root.theme-drys.theme-dark .bs-pv-card,
:root.theme-drys.theme-dark .bs-pv-media { background: var(--surface-2); color: var(--ink); box-shadow: none; }
:root.theme-drys.theme-dark .bs-pv-card-text { color: var(--ink-2); }
:root.theme-drys.theme-dark .bs-pv-link,
:root.theme-drys.theme-dark .bs-pv-card-button { color: var(--brand-ink); background: var(--brand-50); }
:root.theme-drys.theme-dark .bs-pv-card-button.is-primary { background: var(--brand); color: var(--on-brand); }

/* แผงช่องทางอื่นของลูกค้า: แชทจำลองโหมดมืดใช้พื้นของร้าน */
:root.theme-drys.theme-dark { --idl-chat-bg: var(--bg); --idl-chat-bubble: var(--surface-2); --idl-chat-ink: var(--ink); }

/* ไม่มี motion ใหม่ (CI ของ DR.YS) — ฉากเข้า/กระพริบ/โครงโหลดของพื้นผิวใหม่หยุดนิ่ง (ทุกโหมด ไม่ต้องรอ reduced-motion) */
:root.theme-drys .adref-banner.is-entering,
:root.theme-drys .spam-dialog[open],
:root.theme-drys .bs-skeleton,
:root.theme-drys .sm-modebar.is-on .sm-mode-dot { animation: none; }

/* โหมดมืด: --brand-100 ของ DR.YS เป็นสีเส้น/แถบ (ตัวหนังสือบนพื้นนี้ได้ 2.8:1) — ชิป/ปุ่มที่วางตัวหนังสือบนพื้นนี้ใช้ --brand-50 แทน */
:root.theme-drys.theme-dark .bc-access-all,
:root.theme-drys.theme-dark .yolo-btn:hover { background: var(--brand-50); color: var(--brand-ink); }

/* เมนูบนเดสก์ท็อป: DR.YS มีเมนูของร้านเพิ่ม (ออเดอร์ร้าน · ลูกค้าเก่า · คอนเทนต์) — ป้ายห้ามตัดบรรทัดเป็นตัวต่อตัว
   จอแคบกว่าที่เมนูทั้งแถวพอดี = เลื่อนแถวเมนูซ้าย/ขวาได้ แทนการบีบป้ายจนอ่านไม่ออก */
@media (min-width: 1024px) {
  :root.theme-drys .topnav { flex: 1 1 auto; min-width: 0; overflow-x: auto; scrollbar-width: thin; }
  :root.theme-drys .topnav-link { white-space: nowrap; flex-shrink: 0; padding: 7px 12px; }
}

/* หน้าภาพรวมรุ่นล่าสุด: พื้นการ์ดมีแสงเรือง (radial) และแถบไล่สี — CI ของ DR.YS เป็นพื้นด้าน */
:root.theme-drys .ov-dialog { background: var(--surface); }
:root.theme-drys .adsp { background: var(--surface); }
:root.theme-drys .adsp::before { background: var(--brand); }

/* Care Room — owner-requested exploration, 6 Nov 2026. These tokens are local
   to chat; the established brand remains on other console surfaces. */
:root.theme-drys .chat-workspace {
  --bg: #f8f7f2; --surface: #ffffff; --surface-2: #eeefed;
  --ink: #263441; --ink-2: #4b5865; --ink-3: #606c78;
  --line: #dde2e6; --line-2: #b8c2cc;
  --brand: #4967bb; --brand-600: #3a55a4; --brand-700: #38549e;
  --brand-ink: #38549e; --brand-50: #edf0fc; --brand-100: #ccd5f0;
  --on-brand: #fff; --accent: #4967bb; --bubble-ai: #eee9fc;
  --green: #286448; --green-soft: #dff1e7; --green-line: #a5cfb9;
  --neutral-soft: #eeefed; --neutral-strong: #263441;
  --care-lavender: #eee9fc; --care-lavender-ink: #655188;
  --care-shadow: 0 5px 18px rgb(38 52 65 / 5%);
  color: var(--ink); background: var(--bg);
}
:root.theme-drys.theme-dark .chat-workspace {
  --bg: #19232f; --surface: #222e3c; --surface-2: #2c3a4b;
  --ink: #f3f4f7; --ink-2: #c7d1dc; --ink-3: #a7b7c9;
  --line: #3b4b60; --line-2: #61728a;
  --brand: #b6c7ff; --brand-600: #ccdaff; --brand-700: #c3d0ff;
  --brand-ink: #c3d0ff; --brand-50: #303f60; --brand-100: #526799;
  --on-brand: #1c2c4d; --accent: #b6c7ff; --bubble-ai: #3a3455;
  --green: #a6e1bf; --green-soft: #244737; --green-line: #4e8666;
  --neutral-soft: #2c3a4b; --neutral-strong: #f3f4f7;
  --care-lavender: #3a3455; --care-lavender-ink: #d1bff3;
  --care-shadow: 0 5px 18px rgb(0 0 0 / 12%);
}
:root.theme-drys .care-inbox-welcome { display: grid; gap: 4px; padding: 22px 20px 14px; }
:root.theme-drys .care-eyebrow { color: var(--brand-ink); font-size: 10px; font-weight: 750; letter-spacing: .13em; }
:root.theme-drys .care-inbox-welcome strong { font-size: 20px; font-weight: 650; line-height: 1.5; }
:root.theme-drys .care-inbox-welcome > span:last-child { color: var(--ink-3); font-size: 12px; }
:root.theme-drys .convo-head { padding: 4px 16px 10px; }
:root.theme-drys .convo-search-input { border-radius: 14px; min-height: 44px; border-color: var(--line); }
:root.theme-drys .care-filters { display: block; overflow: visible; padding: 2px 16px 8px; }
:root.theme-drys .care-primary-filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
:root.theme-drys .care-primary-filters .fchip { justify-content: space-between; }
:root.theme-drys .care-filters .fchip { min-height: 40px; border-radius: 12px; padding: 6px 10px; }
:root.theme-drys .care-filters .fchip.is-active { background: var(--brand-50); color: var(--brand-ink); border-color: var(--brand-100); }
:root.theme-drys .care-filters .fchip-needs.is-active { background: var(--orange-soft); color: var(--orange); border-color: var(--orange-line); }
:root.theme-drys .care-more-filters { margin-top: 7px; }
:root.theme-drys .care-more-filters summary { padding: 9px 3px; cursor: pointer; color: var(--ink-2); font-size: 12px; }
:root.theme-drys .care-secondary-filters { display: flex; gap: 6px; flex-wrap: wrap; padding: 2px 0 8px; max-height: 180px; overflow-y: auto; }
:root.theme-drys .filter-explain { padding: 0 18px 12px; font-size: 11px; line-height: 1.6; border-bottom: 0; }
:root.theme-drys .convo-list { padding: 4px 10px 12px; }
:root.theme-drys .convo-row { min-height: 88px; margin-bottom: 5px; border: 1px solid transparent; border-radius: 17px; padding: 12px 10px; }
:root.theme-drys .convo-row.is-active { border-color: var(--brand-100); box-shadow: var(--care-shadow); }
:root.theme-drys .convo-name { font-size: 14px; }
:root.theme-drys .convo-main { gap: 5px; }
:root.theme-drys .convo-bottom { flex-wrap: wrap; row-gap: 4px; }
:root.theme-drys .chat-head { gap: 8px; flex-wrap: wrap; padding: 14px 20px; }
:root.theme-drys .chat-head-main { min-width: 140px; }
:root.theme-drys .chat-head-name { font-size: 18px; font-weight: 650; }
:root.theme-drys .chat-workspace .chat-head > button { min-height: 40px; border-radius: 12px; }
:root.theme-drys .chat-workspace .ctx-toggle { width: auto; padding: 8px 12px; font-size: 12px; font-weight: 650; white-space: nowrap; }
:root.theme-drys .chat-workspace .ctx-toggle.is-active { background: var(--care-lavender); color: var(--care-lavender-ink); }
:root.theme-drys .care-companion { display: flex; flex-shrink: 0; align-items: center; gap: 11px; margin: 14px 24px 0; padding: 11px 15px; border: 1px solid var(--green-line); border-radius: 18px; background: var(--green-soft); }
:root.theme-drys .care-yada { display: grid; place-items: center; flex: 0 0 38px; height: 38px; border-radius: 14px 14px 14px 5px; background: var(--surface); color: var(--green); font-size: 22px; font-weight: 650; box-shadow: 0 2px 0 var(--green-line); transform: rotate(-5deg); }
:root.theme-drys .care-companion-copy { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
:root.theme-drys .care-companion-copy strong { font-size: 13px; font-weight: 650; }
:root.theme-drys .care-companion-copy span { font-size: 12px; color: var(--ink-2); overflow-wrap: anywhere; }
:root.theme-drys .care-status-dot { margin-left: auto; flex: 0 0 7px; height: 7px; border-radius: 50%; background: var(--green); }
:root.theme-drys .care-companion.is-paused { background: var(--care-lavender); border-color: var(--line-2); }
:root.theme-drys .care-companion.is-limited { background: var(--orange-soft); border-color: var(--orange-line); }
:root.theme-drys .care-companion.is-paused .care-yada,
:root.theme-drys .care-companion.is-paused .care-status-dot { color: var(--care-lavender-ink); }
:root.theme-drys .care-companion.is-paused .care-status-dot { background: var(--care-lavender-ink); }
:root.theme-drys .care-companion.is-limited .care-status-dot { background: var(--orange); }
:root.theme-drys .bubbles { padding: 22px 28px 18px; gap: 14px; }
:root.theme-drys .bubble { padding: 12px 16px; font-size: 16px; line-height: 1.65; border-radius: 20px; box-shadow: var(--care-shadow); }
:root.theme-drys .from-them .bubble { border-bottom-left-radius: 6px; }
:root.theme-drys .from-us .bubble { border-bottom-right-radius: 6px; }
:root.theme-drys .day-sep { margin: 4px 0 8px; }
:root.theme-drys .day-sep::before,
:root.theme-drys .day-sep::after { background: var(--line); }
:root.theme-drys .reply-bar { margin: 0 20px 18px; padding: 12px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); box-shadow: var(--care-shadow); }
:root.theme-drys .reply-bar:focus-within { border-color: var(--brand); }
:root.theme-drys .reply-line { flex-wrap: wrap; align-items: center; gap: 8px; }
:root.theme-drys .reply-input { flex: 1 1 200px; min-height: 48px; font-size: 16px; background: var(--surface); border-color: transparent; border-radius: 12px; }
:root.theme-drys .reply-input:focus { box-shadow: none; }
:root.theme-drys .reply-input:disabled { background: var(--surface-2); color: var(--ink-3); cursor: not-allowed; }
:root.theme-drys .btn-send { min-width: 72px; min-height: 44px; border-radius: 14px; }
:root.theme-drys .btn-attach { min-width: 42px; min-height: 42px; border-radius: 13px; }
:root.theme-drys .chat-workspace button:disabled { opacity: .52; cursor: not-allowed; transform: none; }
:root.theme-drys .chat-workspace :is(button, a, summary):focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
:root.theme-drys .context-pane { min-width: 0; }
:root.theme-drys .ctx-scroll { overflow-x: hidden; }
:root.theme-drys .ctx-close { display: inline-flex; }
:root.theme-drys .ctx-card { padding: 16px; }
:root.theme-drys .chat-workspace .tenant-panel { padding: 16px; }
:root.theme-drys .chat-empty-box { max-width: 400px; }
:root.theme-drys .chat-empty-title { font-size: 22px; }
:root.theme-drys .chat-empty-sub { line-height: 1.8; }

/* Only deliberate interaction moves. Polling and incoming message lists do not
   replay an entrance, and status dots never pretend the model is thinking. */
:root.theme-drys .chat-workspace :is(button, .fchip, .convo-row) { transition: transform 150ms ease-out, background-color 150ms ease-out, border-color 150ms ease-out; }
@media (hover: hover) {
  :root.theme-drys .chat-workspace :is(button, .fchip):not(:disabled):hover { transform: translateY(-1px); }
}
:root.theme-drys .chat-workspace :is(button, .fchip):not(:disabled):active { transform: translateY(1px); }
@keyframes care-panel-reveal { from { opacity: 0; transform: translateX(12px); } to { opacity: 1; transform: translateX(0); } }
@media (min-width: 1024px) {
  :root.theme-drys .chat-workspace { grid-template-columns: 320px minmax(0, 1fr); }
  :root.theme-drys .chat-workspace.ctx-open { grid-template-columns: 300px minmax(0, 1fr) 360px; }
  :root.theme-drys .context-pane.care-panel-enter { animation: care-panel-reveal 200ms ease-out both; }
}
@media (min-width: 1024px) and (max-width: 1279.98px) {
  :root.theme-drys .chat-workspace.ctx-open { grid-template-columns: 270px minmax(0, 1fr) 320px; }
  :root.theme-drys .chat-workspace.ctx-open .chat-head { padding: 10px 12px; }
}
@media (max-width: 1023.98px) {
  :root.theme-drys .chat-head { padding: max(10px, calc(env(safe-area-inset-top) + 10px)) 12px 10px; gap: 6px; }
  :root.theme-drys .chat-head-name { font-size: 16px; }
  :root.theme-drys .care-companion { margin: 10px 12px 0; padding: 10px 12px; }
  :root.theme-drys .bubbles { padding: 16px 14px; gap: 12px; }
  :root.theme-drys .reply-bar { margin: 0 8px max(8px, env(safe-area-inset-bottom)); padding: 8px; border-radius: 18px; }
  :root.theme-drys .reply-input { flex-basis: calc(100% - 10px); order: -1; }
  :root.theme-drys .btn-send { margin-left: auto; }
  :root.theme-drys .context-pane { transition: transform 200ms ease-out; }
  :root.theme-drys .chat-head .yolo-anchor { display: inline-flex; }
  :root.theme-drys .chat-head .yolo-btn { position: static; }
}
@media (max-height: 650px) {
  :root.theme-drys .care-companion-copy > span { display: none; }
  :root.theme-drys .care-companion { margin-top: 6px; padding: 6px 10px; }
  :root.theme-drys .care-yada { height: 28px; flex-basis: 28px; font-size: 18px; }
  :root.theme-drys .care-inbox-welcome { padding-top: 12px; padding-bottom: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  :root.theme-drys .chat-workspace *, :root.theme-drys .chat-workspace *::before, :root.theme-drys .chat-workspace *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  :root.theme-drys .chat-workspace :is(button, .fchip):hover,
  :root.theme-drys .chat-workspace :is(button, .fchip):active { transform: none; }
}
