:root {
    --ink: #111827;
    --muted: #64748b;
    --soft: #f2f7ff;
    --line: #dbe5f1;
    --navy: #0f2742;
    --blue: #2563eb;
    --blue-soft: #eaf2ff;
    --mint: #10b981;
    --mint-soft: #ecfdf5;
    --amber: #f59e0b;
    --amber-soft: #fff7df;
    --violet: #7c3aed;
    --violet-soft: #f3efff;
    --danger: #f43f5e;
    --danger-soft: #fff0f3;
    --shadow: 0 14px 40px rgba(37, 99, 235, .08);
}

* { box-sizing: border-box; }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--soft); color: var(--ink); font-family: "Noto Sans Thai", sans-serif; font-size: 14px; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.app-shell { min-height: 100vh; }
.sidebar { position: fixed; inset: 0 auto 0 0; z-index: 20; width: 252px; padding: 26px 18px 20px; background: #0f172a; color: #fff; display: flex; flex-direction: column; }
.brand { height: 48px; padding: 0 8px; display: flex; align-items: center; gap: 11px; }
.brand-mark { width: 38px; height: 38px; border-radius: 12px; background: linear-gradient(145deg, #ffffff, #e8f3ff); color: #06b6d4; display: grid; place-items: center; }
.brand-mark svg { width: 24px; height: 24px; stroke-width: 2.2; }
.brand strong { display: block; font-size: 15px; letter-spacing: -.2px; }
.brand span { display: block; color: #94a3b8; font-size: 10px; margin-top: 2px; letter-spacing: .7px; text-transform: uppercase; }
.nav-list { margin-top: 28px; }
.nav-label { color: #64748b; font-size: 10px; font-weight: 700; letter-spacing: 1.2px; margin: 0 12px 9px; text-transform: uppercase; }
.section-label { margin-top: 28px; }
.nav-item { position: relative; height: 44px; border-radius: 10px; padding: 0 12px; color: #b7c3d5; display: flex; align-items: center; gap: 12px; font-size: 13px; font-weight: 500; margin-bottom: 4px; transition: .18s ease; }
.nav-item:hover { color: #fff; background: rgba(37,99,235,.20); }
.nav-item.active { color: #fff; background: #2563eb; }
.nav-item.active::before { content: ""; position: absolute; left: -18px; width: 3px; height: 22px; border-radius: 0 4px 4px 0; background: #22d3ee; }
.nav-item svg { width: 18px; height: 18px; }
.nav-count { margin-left: auto; min-width: 22px; height: 20px; padding: 0 6px; border-radius: 10px; background: #fb7185; color: #fff; font-size: 10px; display: grid; place-items: center; }
.sidebar-card { margin-top: auto; padding: 15px; border: 1px solid rgba(255,255,255,.09); border-radius: 14px; background: rgba(255,255,255,.04); }
.spark-icon { width: 27px; height: 27px; border-radius: 8px; background: rgba(34,211,238,.15); color: #22d3ee; display: grid; place-items: center; margin-bottom: 10px; }
.sidebar-card strong { font-size: 12px; }
.sidebar-card p { color: #8f98a9; font-size: 10px; line-height: 1.5; margin: 5px 0 10px; }
.progress { height: 4px; background: rgba(255,255,255,.09); border-radius: 4px; overflow: hidden; }
.progress span { height: 100%; display: block; background: #2dd4bf; border-radius: inherit; }
.profile-mini { margin-top: 16px; padding: 14px 7px 0; border-top: 1px solid rgba(255,255,255,.08); display: flex; align-items: center; gap: 10px; }
.profile-mini div:nth-child(2) { min-width: 0; }
.profile-mini strong, .profile-mini span { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.profile-mini strong { font-size: 11px; }
.profile-mini span { color: #7e8797; font-size: 9px; margin-top: 3px; }
.profile-mini button { margin-left: auto; background: none; border: 0; color: #747d8d; cursor: pointer; }
.profile-mini .logout-form { margin-left: auto; }
.profile-mini .logout-form button { width: 32px; height: 32px; padding: 0; border-radius: 8px; display: grid; place-items: center; }
.profile-mini .logout-form button:hover { color: #fff; background: rgba(255,255,255,.08); }
.profile-mini .logout-form svg { width: 17px; height: 17px; }

.main-content { min-height: 100vh; margin-left: 252px; }
.topbar { height: 82px; padding: 0 38px; background: rgba(255,255,255,.92); border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; position: sticky; top: 0; z-index: 10; backdrop-filter: blur(12px); }
.topbar-left { display: flex; align-items: center; gap: 12px; }
.topbar h1 { font-size: 18px; line-height: 1; margin: 5px 0 0; letter-spacing: -.25px; }
.eyebrow { color: #a1a7b1; font-size: 9px; font-weight: 800; letter-spacing: 1.4px; margin: 0; }
.topbar-actions { display: flex; align-items: center; gap: 10px; }
.system-status { color: #687181; font-size: 11px; display: flex; align-items: center; gap: 7px; margin-right: 7px; }
.system-status span, .live-dot::before, .connected-badge i, .page-health i { width: 7px; height: 7px; background: #10b981; border-radius: 50%; box-shadow: 0 0 0 4px rgba(16,185,129,.13); }
.icon-button { position: relative; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 10px; background: #fff; display: grid; place-items: center; cursor: pointer; }
.icon-button i { position: absolute; top: 7px; right: 8px; width: 6px; height: 6px; background: #ec6670; border: 1.5px solid #fff; border-radius: 50%; }
.menu-button { display: none; }
.primary-button, .secondary-button, .facebook-button, .review-button { min-height: 40px; border-radius: 9px; padding: 0 16px; border: 1px solid transparent; font-weight: 650; font-size: 12px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; cursor: pointer; transition: transform .16s ease, box-shadow .16s ease, background .16s ease; }
.primary-button { background: var(--navy); color: #fff; box-shadow: 0 6px 16px rgba(37,99,235,.16); }
.primary-button:hover, .facebook-button:hover { transform: translateY(-1px); box-shadow: 0 9px 22px rgba(37,99,235,.22); }
.primary-button svg { width: 15px; height: 15px; }
.primary-button.compact { min-height: 39px; padding: 0 14px; }
.secondary-button { background: #fff; border-color: var(--line); color: #414a5b; }
.secondary-button:hover { background: #f9fafc; }
.secondary-button svg { width: 16px; height: 16px; }
.full { width: 100%; }
.page-wrap { max-width: 1480px; padding: 30px 38px 42px; margin: 0 auto; }
.welcome-row, .page-intro { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 23px; }
.welcome-row h2, .page-intro h2 { margin: 0; font-size: 23px; line-height: 1.3; letter-spacing: -.55px; }
.welcome-row h2 span { font-size: 19px; }
.welcome-row p, .page-intro p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.date-chip { height: 37px; padding: 0 13px; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: #566071; font-size: 11px; display: flex; align-items: center; gap: 8px; }
.date-chip svg { width: 15px; height: 15px; }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
.stat-card, .panel, .knowledge-summary article { background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow); }
.stat-card { min-height: 144px; padding: 18px 20px; }
.stat-head { display: flex; justify-content: space-between; align-items: center; }
.stat-icon { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; }
.stat-icon svg { width: 18px; height: 18px; }
.stat-icon.blue, .summary-icon.blue { background: var(--blue-soft); color: var(--blue); }
.stat-icon.amber { background: var(--amber-soft); color: var(--amber); }
.stat-icon.green, .summary-icon.green { background: var(--mint-soft); color: var(--mint); }
.stat-icon.violet, .summary-icon.violet { background: var(--violet-soft); color: var(--violet); }
.trend { color: var(--mint); background: var(--mint-soft); padding: 4px 7px; border-radius: 6px; font-size: 9px; font-weight: 700; }
.trend.attention { color: var(--amber); background: var(--amber-soft); }
.stat-card > p { color: var(--muted); font-size: 11px; margin: 15px 0 4px; }
.stat-card > strong { font-size: 25px; letter-spacing: -.6px; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(260px, .8fr); gap: 15px; margin-top: 15px; }
.panel-header { min-height: 69px; padding: 17px 20px; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; }
.panel-header h3 { font-size: 14px; margin: 0; }
.panel-header p { color: var(--muted); font-size: 10px; margin: 4px 0 0; }
.panel-header > a { color: var(--blue); font-size: 11px; font-weight: 650; }
.panel-header > a span { margin-left: 5px; }
.comment-row { padding: 16px 20px; display: flex; align-items: flex-start; gap: 12px; border-bottom: 1px solid #eff1f5; }
.comment-row:last-child { border-bottom: 0; }
.comment-row:hover { background: #fbfcfe; }
.avatar { position: relative; flex: 0 0 auto; width: 38px; height: 38px; overflow: hidden; border-radius: 50%; display: grid; place-items: center; font-size: 10px; font-weight: 750; }
.avatar > span { grid-area: 1 / 1; }
.avatar > img { grid-area: 1 / 1; width: 100%; height: 100%; display: block; object-fit: cover; }
.avatar.blue { color: #2f68b7; background: #dceaff; }.avatar.violet { color: #7252bd; background: #e9e0ff; }.avatar.orange { color: #b06731; background: #ffe5d1; }.avatar.pink { color: #b14e72; background: #ffe0ec; }.avatar.green { color: #327e68; background: #d8f1e9; }.avatar.dark { color: #fff; background: #364157; width: 34px; height: 34px; }
.comment-body { min-width: 0; flex: 1; }
.comment-meta { display: flex; align-items: baseline; gap: 7px; min-width: 0; }
.comment-meta strong { font-size: 11px; }
.comment-meta span { color: #9aa1ad; font-size: 9px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.comment-body > p { color: #3d4656; font-size: 11px; line-height: 1.55; margin: 5px 0 9px; max-width: 700px; }
.comment-tags { display: flex; align-items: center; gap: 5px; flex-wrap: wrap; }
.tag { padding: 3px 7px; border-radius: 5px; font-size: 8px; font-weight: 700; }
.tag.positive { color: #168467; background: #eaf8f3; }.tag.negative, .tag.danger { color: #bf4c58; background: var(--danger-soft); }.tag.neutral, .tag.plain { color: #697383; background: #f0f2f6; }
.review-button { align-self: center; min-height: 32px; padding: 0 11px; color: var(--blue); background: var(--blue-soft); border-color: #d9e5ff; white-space: nowrap; font-size: 10px; }
.review-button:hover { background: #dfe9ff; }
.ai-panel { display: flex; flex-direction: column; }
.ai-panel > .secondary-button { width: auto; margin: 0 20px 19px; }
.live-dot { color: var(--mint); font-size: 8px; font-weight: 800; display: flex; gap: 7px; align-items: center; }
.live-dot::before { content: ""; width: 6px; height: 6px; }
.score-ring { --size: 124px; width: var(--size); height: var(--size); margin: 24px auto 20px; border-radius: 50%; background: conic-gradient(var(--mint) calc(var(--score) * 1%), #edf2f5 0); display: grid; place-items: center; position: relative; }
.score-ring::after { content: ""; width: 98px; height: 98px; border-radius: 50%; background: #fff; position: absolute; }
.score-ring > div { z-index: 1; text-align: center; }
.score-ring strong, .score-ring span { display: block; }.score-ring strong { font-size: 22px; }.score-ring span { color: var(--muted); font-size: 8px; margin-top: 2px; }
.ai-metrics { padding: 0 20px 18px; }
.ai-metrics div { padding: 9px 0; border-top: 1px solid #f0f1f4; display: flex; justify-content: space-between; }
.ai-metrics span { color: var(--muted); font-size: 10px; }.ai-metrics strong { font-size: 10px; }
.setup-panel { min-height: 112px; margin-top: 15px; padding: 21px 22px; display: grid; grid-template-columns: 1.1fr 1.7fr auto; gap: 24px; align-items: center; overflow: hidden; position: relative; }
.setup-panel::before { content: ""; position: absolute; width: 200px; height: 200px; border: 35px solid #f2f5fb; border-radius: 50%; right: -80px; top: -95px; z-index: 0; }
.setup-copy, .setup-steps, .setup-panel > a { position: relative; z-index: 1; }
.setup-kicker, .ai-label { color: var(--blue); font-size: 8px; font-weight: 850; letter-spacing: 1.15px; }
.setup-copy h3 { font-size: 13px; margin: 7px 0 4px; }.setup-copy p { color: var(--muted); font-size: 9px; margin: 0; line-height: 1.5; }
.setup-steps { display: flex; align-items: center; }
.setup-step { min-width: 110px; display: flex; gap: 8px; align-items: center; }
.setup-step > span { width: 28px; height: 28px; flex: 0 0 auto; border: 1px solid #dfe3eb; border-radius: 50%; display: grid; place-items: center; color: #9ca4b1; font-size: 10px; font-weight: 700; background: #fff; }
.setup-step.done > span { color: #fff; background: var(--mint); border-color: var(--mint); }.setup-step.current > span { color: #fff; background: var(--blue); border-color: var(--blue); box-shadow: 0 0 0 5px var(--blue-soft); }
.setup-step strong, .setup-step small { display: block; }.setup-step strong { font-size: 9px; white-space: nowrap; }.setup-step small { color: #9ca3af; font-size: 8px; margin-top: 2px; white-space: nowrap; }
.setup-line { height: 1px; flex: 1; min-width: 20px; max-width: 48px; background: #dde2e9; margin: 0 8px; }

.with-actions { align-items: center; }
.inbox-toolbar { min-height: 69px; padding: 13px 16px; display: flex; justify-content: space-between; gap: 16px; box-shadow: none; }
.tabs { display: flex; gap: 4px; }
.tabs button { min-height: 35px; padding: 0 12px; border: 0; border-radius: 8px; background: transparent; color: var(--muted); font-size: 10px; cursor: pointer; white-space: nowrap; }
.tabs button.active { color: var(--ink); background: #eef2f7; font-weight: 700; }.tabs button span { margin-left: 4px; color: #9299a5; }
.toolbar-actions { display: flex; gap: 7px; }
.search-box { height: 37px; width: 225px; border: 1px solid var(--line); border-radius: 8px; background: #fff; display: flex; align-items: center; gap: 8px; padding: 0 11px; }
.search-box svg { width: 15px; color: #9098a5; }.search-box input { min-width: 0; width: 100%; border: 0; outline: 0; color: var(--ink); font-size: 10px; }.search-box input::placeholder { color: #aab0ba; }
.filter-button { width: 37px; border: 1px solid var(--line); border-radius: 8px; background: #fff; display: grid; place-items: center; cursor: pointer; }.filter-button svg { width: 15px; }
.full-comments-panel { margin-top: 14px; box-shadow: none; overflow: hidden; }
.inbox-row { min-height: 112px; padding: 20px; align-items: flex-start; }
.inbox-row .avatar { width: 42px; height: 42px; }
.inbox-row .comment-body > p { font-size: 12px; margin-top: 8px; }
.ai-confidence { color: #7b8491; font-size: 8px; margin-left: 4px; display: inline-flex; gap: 5px; align-items: center; }.ai-confidence i { width: 6px; height: 6px; border-radius: 50%; background: var(--mint); }
.row-actions { align-self: center; display: flex; align-items: center; gap: 7px; }
.more-button { width: 30px; height: 30px; border: 0; background: transparent; color: #9ba2ad; cursor: pointer; }
.status-pill { font-size: 9px; font-weight: 700; padding: 7px 9px; border-radius: 7px; }.status-pill.success { color: var(--mint); background: var(--mint-soft); }
.empty-state { display: none; text-align: center; padding: 60px 20px; color: var(--muted); }.empty-state span { display: block; font-size: 28px; }.empty-state strong { display: block; color: var(--ink); margin: 10px 0 4px; }.empty-state p { margin: 0; font-size: 11px; }

.knowledge-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 14px; }
.knowledge-summary article { display: flex; align-items: center; gap: 12px; padding: 17px 18px; box-shadow: none; }
.summary-icon { flex: 0 0 auto; width: 39px; height: 39px; border-radius: 10px; display: grid; place-items: center; font-weight: 800; }
.knowledge-summary strong { font-size: 14px; }.knowledge-summary p { color: var(--muted); font-size: 9px; margin: 3px 0 0; }
.knowledge-panel { overflow: hidden; box-shadow: none; }
.knowledge-header .search-box { width: 220px; }
.knowledge-grid { padding: 17px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.knowledge-card { min-height: 175px; padding: 17px; border: 1px solid var(--line); border-radius: 11px; }
.knowledge-card-head, .knowledge-card footer { display: flex; justify-content: space-between; align-items: center; }
.knowledge-card-head span { color: var(--blue); background: var(--blue-soft); padding: 4px 7px; border-radius: 5px; font-size: 8px; font-weight: 700; }.knowledge-card-head button, .knowledge-card footer button { border: 0; background: transparent; color: #8e96a3; font-size: 10px; cursor: pointer; }
.knowledge-card h4 { font-size: 13px; margin: 16px 0 7px; }.knowledge-card > p { min-height: 37px; color: var(--muted); font-size: 10px; line-height: 1.65; margin: 0 0 14px; }
.knowledge-card footer { padding-top: 12px; border-top: 1px solid #eff1f4; }.knowledge-card footer span { color: var(--muted); font-size: 8px; display: flex; gap: 6px; align-items: center; }.knowledge-card footer i { width: 6px; height: 6px; background: var(--mint); border-radius: 50%; }

.connect-hero { min-height: 480px; overflow: hidden; display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; box-shadow: none; }
.connect-visual { height: 100%; min-height: 480px; position: relative; display: grid; place-items: center; background: #f5f8ff; overflow: hidden; }
.facebook-mark { position: relative; z-index: 2; width: 100px; height: 100px; border-radius: 28px; color: #fff; background: #1877f2; display: grid; place-items: end center; font: 800 88px/1 Arial; overflow: hidden; box-shadow: 0 24px 60px rgba(24,119,242,.28); }
.orbit { position: absolute; border: 1px dashed #cbd9f5; border-radius: 50%; }.orbit-one { width: 280px; height: 280px; }.orbit-two { width: 420px; height: 420px; }
.float-bubble { position: absolute; z-index: 2; width: 48px; height: 48px; border-radius: 15px; background: #fff; box-shadow: 0 15px 35px rgba(45,75,130,.15); display: grid; place-items: center; }.float-bubble.one { transform: translate(-130px,-115px); }.float-bubble.two { transform: translate(135px,-70px); color: var(--violet); }.float-bubble.three { transform: translate(105px,130px); color: var(--mint); }
.connect-copy { max-width: 520px; padding: 55px; }.connect-copy h2 { font-size: 27px; margin: 10px 0 11px; letter-spacing: -.6px; }.connect-copy > p { color: var(--muted); font-size: 12px; line-height: 1.7; }.connect-copy ul { list-style: none; padding: 8px 0 12px; margin: 0; }.connect-copy li { margin: 11px 0; font-size: 11px; }.connect-copy li span { width: 19px; height: 19px; margin-right: 8px; border-radius: 50%; color: var(--mint); background: var(--mint-soft); display: inline-grid; place-items: center; font-size: 9px; font-weight: 800; }
.facebook-button { width: 100%; min-height: 46px; color: #fff; background: #1877f2; margin-top: 8px; }.facebook-button strong { font: 800 21px Arial; }.connect-copy small { color: #a0a6b0; font-size: 8px; display: block; text-align: center; margin-top: 12px; }
.connected-page { padding: 23px; display: grid; grid-template-columns: auto 1fr auto auto auto; gap: 24px; align-items: center; box-shadow: none; }.page-logo { width: 54px; height: 54px; border-radius: 15px; color: #fff; background: linear-gradient(145deg, var(--blue), var(--mint)); display: grid; place-items: center; font-size: 21px; font-weight: 800; }.connected-copy h3 { margin: 8px 0 2px; font-size: 15px; }.connected-copy p { margin: 0; color: var(--muted); font-size: 9px; }.connected-badge { color: var(--mint); font-size: 8px; font-weight: 700; display: flex; gap: 6px; align-items: center; }.connected-badge i { width: 6px; height: 6px; box-shadow: none; }.page-health { padding-left: 25px; border-left: 1px solid var(--line); }.page-health span, .page-health strong { display: block; }.page-health span { color: var(--muted); font-size: 8px; margin-bottom: 5px; }.page-health strong { font-size: 10px; }.page-health strong i { display: inline-block; width: 6px; height: 6px; margin-right: 5px; box-shadow: none; }

.settings-layout { max-width: 900px; }.settings-card { padding: 23px; margin-bottom: 14px; box-shadow: none; }.settings-section-head { display: flex; gap: 12px; align-items: center; margin-bottom: 20px; }.settings-section-head h3 { margin: 0; font-size: 14px; }.settings-section-head p { color: var(--muted); font-size: 9px; margin: 4px 0 0; }
.tone-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 11px; }.tone-option input { position: absolute; opacity: 0; pointer-events: none; }.tone-option > span { position: relative; min-height: 135px; padding: 16px; border: 1px solid var(--line); border-radius: 11px; cursor: pointer; display: block; transition: .16s ease; }.tone-option b { display: block; font-size: 20px; margin-bottom: 15px; }.tone-option strong, .tone-option small { display: block; }.tone-option strong { font-size: 11px; }.tone-option small { color: var(--muted); font-size: 8px; line-height: 1.5; margin-top: 5px; }.tone-option i { display: none; position: absolute; right: 12px; top: 12px; width: 18px; height: 18px; border-radius: 50%; background: var(--blue); color: #fff; place-items: center; font-size: 8px; font-style: normal; }.tone-option input:checked + span { border-color: var(--blue); box-shadow: 0 0 0 3px var(--blue-soft); }.tone-option input:checked + span i { display: grid; }
.switch-row { padding: 15px 0; display: flex; justify-content: space-between; align-items: center; }.switch-row strong { font-size: 11px; }.switch-row p { color: var(--muted); font-size: 9px; margin: 4px 0 0; }.switch { position: relative; width: 42px; height: 24px; }.switch input { opacity: 0; width: 0; height: 0; }.switch i { position: absolute; inset: 0; background: #d8dce3; border-radius: 13px; cursor: pointer; transition: .2s; }.switch i::before { content: ""; position: absolute; width: 18px; height: 18px; left: 3px; top: 3px; background: #fff; border-radius: 50%; box-shadow: 0 2px 5px rgba(0,0,0,.15); transition: .2s; }.switch input:checked + i { background: var(--mint); }.switch input:checked + i::before { transform: translateX(18px); }
.notice-box { padding: 12px 14px; border-radius: 9px; background: #f6f8fc; display: flex; gap: 10px; align-items: flex-start; }.notice-box > span { width: 20px; height: 20px; border-radius: 50%; background: var(--blue-soft); color: var(--blue); display: grid; place-items: center; font-size: 9px; font-weight: 800; }.notice-box p { color: var(--muted); font-size: 9px; line-height: 1.55; margin: 0; }.notice-box strong { display: block; color: var(--ink); margin-bottom: 2px; }.settings-actions { display: flex; justify-content: flex-end; gap: 8px; }
.template-settings-card .summary-icon svg { width: 18px; height: 18px; }
.template-variable-help { margin-bottom: 16px; padding: 13px 14px; border: 1px solid #dce6f2; border-radius: 10px; background: #f8fbff; }
.template-variable-help > strong { display: block; margin-bottom: 8px; font-size: 12px; }
.template-variable-help > div { display: flex; flex-wrap: wrap; gap: 6px; }
.template-variable-help code { padding: 3px 7px; border: 1px solid #d8e3f1; border-radius: 6px; color: #285faa; background: #fff; font-family: inherit; font-size: 10px; }
.template-variable-help p { margin: 9px 0 0; color: var(--muted); font-size: 10px; line-height: 1.6; }
.template-variable-help p code { padding: 0; border: 0; background: transparent; }
.message-template-list { display: grid; gap: 12px; }
.message-template-field { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 14px; align-items: start; }
.message-template-field > span { padding-top: 10px; }
.message-template-field strong, .message-template-field small { display: block; }
.message-template-field strong { font-size: 12px; }
.message-template-field small { margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.5; }
.message-template-field textarea { width: 100%; min-height: 132px; padding: 11px 12px; resize: vertical; border: 1px solid var(--line); border-radius: 9px; outline: 0; color: var(--ink); background: #fff; font-size: 12px; line-height: 1.65; }
.message-template-field textarea:focus { border-color: #8db2ee; box-shadow: 0 0 0 3px rgba(37,99,235,.08); }

.modal-backdrop { position: fixed; inset: 0; z-index: 60; padding: 20px; background: rgba(12,20,34,.53); backdrop-filter: blur(4px); display: none; place-items: center; }
.modal-backdrop.open { display: grid; animation: fadeIn .16s ease; }.modal-card { width: min(610px, 100%); max-height: calc(100vh - 40px); overflow: auto; background: #fff; border-radius: 16px; box-shadow: 0 28px 90px rgba(7,14,30,.27); animation: slideUp .22s ease; }.small-modal { width: min(500px, 100%); }
.modal-header { padding: 21px 23px 17px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: flex-start; }.modal-header h3 { margin: 6px 0 0; font-size: 17px; }.modal-close { width: 30px; height: 30px; border: 0; border-radius: 8px; background: #f3f5f8; color: #727b89; font-size: 20px; cursor: pointer; }
.original-comment { margin: 20px 23px 13px; padding: 14px; border-radius: 11px; background: #f7f8fb; display: flex; gap: 11px; }.original-comment strong { font-size: 10px; }.original-comment p { font-size: 11px; line-height: 1.55; margin: 4px 0; }.original-comment small { color: var(--muted); font-size: 8px; }
.reply-editor { padding: 7px 23px 20px; }.editor-label, .editor-footer { display: flex; justify-content: space-between; align-items: center; }.editor-label label { font-size: 10px; font-weight: 700; }.editor-label > span { color: var(--muted); font-size: 8px; display: flex; gap: 4px; align-items: center; }.editor-label i { width: 6px; height: 6px; background: var(--mint); border-radius: 50%; }.editor-label b { color: var(--mint); }
.reply-editor textarea, .knowledge-form input, .knowledge-form textarea { width: 100%; border: 1px solid #dfe3e9; border-radius: 10px; outline: 0; resize: vertical; color: var(--ink); background: #fff; transition: .15s ease; }.reply-editor textarea { margin-top: 8px; padding: 13px; line-height: 1.65; font-size: 11px; }.reply-editor textarea:focus, .knowledge-form input:focus, .knowledge-form textarea:focus { border-color: #7ba0f2; box-shadow: 0 0 0 3px var(--blue-soft); }.editor-footer { margin-top: 6px; color: #9ba2ad; font-size: 8px; }
.modal-actions { padding: 15px 23px; border-top: 1px solid var(--line); display: flex; justify-content: flex-end; gap: 8px; }.split-actions { justify-content: space-between; }.split-actions > div { display: flex; gap: 8px; }.inline-form { display: inline-flex; }.text-button { height: 40px; border: 0; background: transparent; color: var(--muted); font-size: 10px; cursor: pointer; }
.knowledge-form { padding: 20px 23px 0; }.knowledge-form label { display: block; margin-bottom: 15px; font-size: 10px; font-weight: 700; }.knowledge-form input, .knowledge-form textarea { display: block; margin-top: 7px; padding: 11px 12px; font-size: 11px; }.knowledge-form .modal-actions { margin: 4px -23px 0; }
.toast { position: fixed; top: 95px; right: 25px; z-index: 50; min-width: 260px; padding: 12px 14px; border: 1px solid #cbeee3; border-radius: 10px; background: #f1fbf8; color: #247d66; box-shadow: 0 12px 35px rgba(20,60,50,.12); display: flex; align-items: center; gap: 9px; font-size: 13px; animation: slideLeft .25s ease; }.toast > span { width: 19px; height: 19px; border-radius: 50%; color: #fff; background: var(--mint); display: grid; place-items: center; font-size: 9px; }.toast button { margin-left: auto; border: 0; background: transparent; color: inherit; cursor: pointer; }.toast.error { color: var(--danger); background: var(--danger-soft); border-color: #ffd7db; }.toast.error > span { background: var(--danger); }
.not-found { min-height: 65vh; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; }.not-found > span { color: #dae2f1; font-size: 80px; font-weight: 850; letter-spacing: -5px; }.not-found h2 { margin: -5px 0 6px; }.not-found p { color: var(--muted); margin: 0 0 22px; }
.sidebar-overlay { display: none; }

.login-page { min-height: 100vh; background: radial-gradient(circle at 75% 20%, #dcecff 0, transparent 32%), var(--soft); }
.login-shell { min-height: 100vh; padding: 24px; display: grid; place-items: center; }
.login-card { width: min(430px, 100%); padding: 38px; border: 1px solid var(--line); border-radius: 22px; background: #fff; box-shadow: 0 24px 70px rgba(15,39,66,.13); }
.login-brand { width: 52px; height: 52px; margin-bottom: 22px; border-radius: 15px; color: #087da4; background: #e8f2fb; display: grid; place-items: center; }
.login-brand svg { width: 28px; height: 28px; stroke-width: 2.2; }
.login-eyebrow { margin: 0 0 6px; color: var(--blue); font-size: 10px; font-weight: 800; letter-spacing: 1.2px; }
.login-card h1 { margin: 0; font-size: 27px; line-height: 1.35; letter-spacing: -.5px; }
.login-description { margin: 9px 0 24px; color: var(--muted); font-size: 13px; line-height: 1.65; }
.login-alert { margin-bottom: 18px; padding: 12px 14px; border: 1px solid #ffd7db; border-radius: 10px; color: #b73549; background: var(--danger-soft); font-size: 12px; line-height: 1.6; }
.login-alert code { font-size: 11px; }
.login-form { display: grid; gap: 15px; }
.login-form label > span { display: block; margin-bottom: 7px; font-size: 12px; font-weight: 700; }
.login-form input { width: 100%; height: 46px; padding: 0 13px; border: 1px solid var(--line); border-radius: 10px; outline: 0; background: #fff; color: var(--ink); transition: .16s ease; }
.login-form input:focus { border-color: #79a6eb; box-shadow: 0 0 0 3px rgba(37,99,235,.1); }
.login-submit { width: 100%; min-height: 46px; margin-top: 5px; }
.login-submit:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.login-security { margin: 20px 0 0; color: #7a8796; font-size: 10px; text-align: center; }
.login-security span { color: var(--mint); font-weight: 800; }

@keyframes fadeIn { from { opacity: 0; } }
@keyframes slideUp { from { transform: translateY(12px); opacity: .4; } }
@keyframes slideLeft { from { transform: translateX(14px); opacity: .3; } }

@media (max-width: 1100px) {
    .page-wrap { padding-inline: 24px; }.topbar { padding-inline: 24px; }.stats-grid { grid-template-columns: repeat(2,1fr); }.setup-panel { grid-template-columns: 1fr auto; }.setup-steps { display: none; }.connect-copy { padding: 35px; }
}
@media (max-width: 820px) {
    .sidebar { transform: translateX(-100%); transition: transform .22s ease; }.sidebar.open { transform: translateX(0); }.sidebar-overlay.open { display: block; position: fixed; inset: 0; z-index: 19; background: rgba(9,15,26,.45); }.main-content { margin-left: 0; }.menu-button { display: grid; }.system-status { display: none; }.dashboard-grid { grid-template-columns: 1fr; }.ai-panel { min-height: 390px; }.connect-hero { grid-template-columns: 1fr; }.connect-visual { min-height: 280px; }.orbit-two { width: 350px; height: 350px; }.connected-page { grid-template-columns: auto 1fr auto; }.page-health { display: none; }.inbox-toolbar { align-items: stretch; flex-direction: column; }.toolbar-actions, .search-box { width: 100%; }.tabs { overflow-x: auto; padding-bottom: 2px; }.knowledge-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .topbar { height: 70px; padding: 0 15px; }.topbar-actions .primary-button { display: none; }.topbar h1 { font-size: 16px; }.comments-toolbar { top: 70px; height: 62px; padding-inline: 12px; }.page-wrap { padding: 22px 15px 35px; }.welcome-row, .page-intro { align-items: flex-start; gap: 16px; }.date-chip { display: none; }.welcome-row h2, .page-intro h2 { font-size: 20px; }.stats-grid { grid-template-columns: 1fr 1fr; gap: 10px; }.stat-card { min-height: 128px; padding: 15px; }.stat-card > strong { font-size: 21px; }.stat-icon { width: 32px; height: 32px; }.dashboard-grid { gap: 10px; margin-top: 10px; }.panel-header { padding-inline: 15px; }.comment-row { padding: 15px; }.compact-list .comment-row:nth-child(n+3) { display: none; }.comment-meta { align-items: flex-start; flex-direction: column; gap: 2px; }.comment-row .review-button { padding-inline: 8px; }.setup-panel { margin-top: 10px; grid-template-columns: 1fr; gap: 15px; }.setup-panel > a { width: 100%; }.inbox-row { position: relative; padding-bottom: 58px; }.inbox-row .row-actions { position: absolute; bottom: 13px; left: 69px; }.knowledge-summary { grid-template-columns: 1fr; }.knowledge-summary article { padding: 12px 15px; }.knowledge-header { align-items: flex-start; flex-direction: column; gap: 12px; }.knowledge-header .search-box { width: 100%; }.connect-copy { padding: 28px 22px; }.connect-copy h2 { font-size: 23px; }.connect-visual { min-height: 235px; }.facebook-mark { width: 80px; height: 80px; font-size: 70px; border-radius: 23px; }.orbit-one { width: 210px; height: 210px; }.orbit-two { width: 310px; height: 310px; }.float-bubble.one { transform: translate(-100px,-75px); }.float-bubble.two { transform: translate(105px,-45px); }.float-bubble.three { transform: translate(75px,85px); }.connected-page { gap: 13px; padding: 16px; }.tone-grid { grid-template-columns: 1fr; }.tone-option > span { min-height: 105px; }.split-actions { align-items: stretch; flex-direction: column-reverse; }.split-actions > div { justify-content: flex-end; }.modal-backdrop { padding: 8px; }.modal-card { max-height: calc(100vh - 16px); }.toast { left: 15px; right: 15px; top: 144px; min-width: 0; }
}

@media (max-width: 480px) {
    .login-shell { padding: 0; align-items: stretch; }
    .login-card { width: 100%; min-height: 100vh; padding: 34px 24px; border: 0; border-radius: 0; box-shadow: none; }
}

/* Larger content typography. Page headers with actions intentionally keep their original scale. */
.page-wrap .welcome-row h2,
.page-wrap .page-intro:not(.with-actions) h2 { font-size: 25px; }
.page-wrap .welcome-row p,
.page-wrap .page-intro:not(.with-actions) p { font-size: 14px; }
.page-wrap .date-chip { font-size: 13px; }
.page-wrap .stat-card > p { font-size: 13px; }
.page-wrap .stat-card > strong { font-size: 27px; }
.page-wrap .trend { font-size: 11px; }
.page-wrap .panel-header h3 { font-size: 16px; }
.page-wrap .panel-header p { font-size: 12px; }
.page-wrap .panel-header > a { font-size: 13px; }
.page-wrap .comment-meta strong { font-size: 13px; }
.page-wrap .comment-meta span { font-size: 11px; }
.page-wrap .comment-body > p { font-size: 13px; }
.page-wrap .inbox-row .comment-body > p { font-size: 14px; }
.page-wrap .tag,
.page-wrap .live-dot,
.page-wrap .ai-confidence { font-size: 10px; }
.page-wrap .review-button { font-size: 12px; }
.page-wrap .score-ring strong { font-size: 24px; }
.page-wrap .score-ring span { font-size: 10px; }
.page-wrap .ai-metrics span,
.page-wrap .ai-metrics strong { font-size: 12px; }
.page-wrap .setup-kicker,
.page-wrap .ai-label { font-size: 10px; }
.page-wrap .setup-copy h3 { font-size: 15px; }
.page-wrap .setup-copy p { font-size: 11px; }
.page-wrap .setup-step strong { font-size: 11px; }
.page-wrap .setup-step small { font-size: 10px; }
.page-wrap .tabs button,
.page-wrap .search-box input { font-size: 12px; }
.page-wrap .status-pill { font-size: 11px; }
.page-wrap .empty-state p { font-size: 13px; }
.page-wrap .knowledge-summary strong { font-size: 16px; }
.page-wrap .knowledge-summary p { font-size: 11px; }
.page-wrap .knowledge-card-head span,
.page-wrap .knowledge-card footer span { font-size: 10px; }
.page-wrap .knowledge-card-head button,
.page-wrap .knowledge-card footer button { font-size: 12px; }
.page-wrap .knowledge-card h4 { font-size: 15px; }
.page-wrap .knowledge-card > p { font-size: 12px; }
.page-wrap .connect-copy h2 { font-size: 29px; }
.page-wrap .connect-copy > p { font-size: 14px; }
.page-wrap .connect-copy li { font-size: 13px; }
.page-wrap .connect-copy small { font-size: 10px; }
.page-wrap .connected-copy h3 { font-size: 17px; }
.page-wrap .connected-copy p { font-size: 11px; }
.page-wrap .connected-badge,
.page-wrap .page-health span { font-size: 10px; }
.page-wrap .page-health strong { font-size: 12px; }
.page-wrap .settings-section-head h3 { font-size: 16px; }
.page-wrap .settings-section-head p { font-size: 11px; }
.page-wrap .tone-option strong { font-size: 13px; }
.page-wrap .tone-option small { font-size: 10px; }
.page-wrap .template-variable-help > strong, .page-wrap .message-template-field strong { font-size: 13px; }
.page-wrap .template-variable-help code, .page-wrap .template-variable-help p, .page-wrap .message-template-field small { font-size: 11px; }
.page-wrap .message-template-field textarea { font-size: 13px; }
.page-wrap .switch-row strong { font-size: 13px; }
.page-wrap .switch-row p,
.page-wrap .notice-box p { font-size: 11px; }
.page-wrap .modal-header h3 { font-size: 19px; }
.page-wrap .original-comment strong,
.page-wrap .editor-label label,
.page-wrap .text-button,
.page-wrap .knowledge-form label { font-size: 12px; }
.page-wrap .original-comment p,
.page-wrap .reply-editor textarea,
.page-wrap .knowledge-form input,
.page-wrap .knowledge-form textarea { font-size: 13px; }
.page-wrap .original-comment small,
.page-wrap .editor-label > span,
.page-wrap .editor-footer { font-size: 10px; }

/* Two-pane comment workspace */
.comments-toolbar { position: sticky; top: 82px; z-index: 9; height: 70px; padding: 0 24px; overflow-x: auto; border-bottom: 1px solid #dbe5f1; background: rgba(255,255,255,.96); backdrop-filter: blur(12px); scrollbar-width: none; }
.comments-toolbar::-webkit-scrollbar { display: none; }
.comments-toolbar-inner { width: 100%; min-width: 850px; height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.comments-toolbar-filters, .comments-toolbar-actions { display: flex; align-items: center; gap: 8px; }
.comments-toolbar-filters { min-width: 0; flex: 1; }
.comments-toolbar-actions { position: relative; flex: 0 0 auto; }
.comments-filter-control, .comments-toolbar-search { height: 38px; border: 1px solid #dbe5f1; border-radius: 11px; color: #526178; background: #f9fbfe; display: flex; align-items: center; }
.comments-filter-control { position: relative; flex: 0 0 auto; padding: 0 10px; gap: 8px; }
.comments-filter-control.channel-filter { width: 142px; }
.comments-filter-control.hospital-filter { width: 222px; }
.comments-filter-control.date-filter { width: 174px; }
.comments-filter-control > svg:first-child { width: 17px; height: 17px; flex: 0 0 auto; color: #70839a; }
.comments-filter-control > svg:last-child { width: 15px; height: 15px; flex: 0 0 auto; color: #718096; }
.comments-filter-control select { min-width: 0; flex: 1; appearance: none; border: 0; outline: 0; color: #435168; background: transparent; font-size: 12px; font-weight: 600; cursor: pointer; }
.facebook-filter-icon { width: 18px; height: 18px; flex: 0 0 auto; border-radius: 50%; color: #fff; background: #2563eb; display: grid; place-items: center; font: 700 12px/1 Arial; }
.comments-toolbar-search { min-width: 190px; max-width: 320px; flex: 1; padding: 0 12px; gap: 9px; }
.comments-toolbar-search:focus-within { border-color: #82aaff; box-shadow: 0 0 0 3px rgba(37,99,235,.10); background: #fff; }
.comments-toolbar-search svg { width: 17px; height: 17px; flex: 0 0 auto; color: #8190a4; }
.comments-toolbar-search input { min-width: 0; width: 100%; border: 0; outline: 0; color: var(--ink); background: transparent; font-size: 12px; }
.comments-toolbar-search input::placeholder { color: #9aa6b5; }
.sla-chip { height: 38px; padding: 0 10px 0 13px; border: 1px solid #98e8cf; border-radius: 12px; color: #14765f; background: #edfcf7; display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; cursor: pointer; }
.sla-chip svg { width: 16px; height: 16px; color: #0da77f; }
.sla-chip strong { font-size: 12px; font-weight: 650; }
.sla-chip > span { min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: rgba(13,167,127,.12); display: grid; place-items: center; font-size: 10px; font-weight: 700; }
.sla-chip:hover, .sla-chip.active { border-color: #22c99a; background: #dff9ef; }
.sla-chip.active { box-shadow: 0 0 0 3px rgba(13,167,127,.12); }
.comments-advanced-filter { width: 38px; height: 38px; flex: 0 0 auto; padding: 0; border: 1px solid #dbe5f1; border-radius: 11px; color: #526178; background: #fff; display: grid; place-items: center; cursor: pointer; }
.comments-advanced-filter:hover, .comments-advanced-filter.active { color: var(--blue); border-color: #a9c8ff; background: var(--blue-soft); }
.comments-advanced-filter svg { width: 18px; height: 18px; }
.advanced-filter-panel { position: fixed; z-index: 20; top: 144px; right: 24px; width: 270px; padding: 15px; border: 1px solid #d8e4f2; border-radius: 13px; background: #fff; box-shadow: 0 18px 45px rgba(34,55,91,.16); }
.advanced-filter-panel[hidden] { display: none; }
.advanced-filter-panel > div { margin-bottom: 13px; display: flex; align-items: center; justify-content: space-between; color: var(--ink); font-size: 13px; }
.advanced-filter-panel > div button { width: 26px; height: 26px; padding: 0; border: 0; border-radius: 7px; color: #7a8798; background: #f3f6fa; font-size: 19px; line-height: 1; cursor: pointer; }
.advanced-filter-panel > label { margin-top: 11px; color: #657389; display: grid; gap: 6px; font-size: 11px; font-weight: 600; }
.advanced-filter-panel select { width: 100%; height: 38px; padding: 0 10px; border: 1px solid #dbe5f1; border-radius: 9px; outline: 0; color: #344258; background: #f9fbfe; font: 500 12px/1 'Noto Sans Thai', sans-serif; }
.advanced-filter-panel select:focus { border-color: #82aaff; box-shadow: 0 0 0 3px rgba(37,99,235,.1); }
.advanced-filter-panel .advanced-check { grid-template-columns: 17px 1fr; align-items: center; color: #435168; font-size: 12px; font-weight: 500; cursor: pointer; }
.advanced-check input { width: 16px; height: 16px; margin: 0; accent-color: var(--blue); }
.advanced-reset { width: 100%; height: 36px; margin-top: 14px; border: 1px solid #dbe5f1; border-radius: 9px; color: var(--blue); background: #f5f8ff; font-size: 12px; font-weight: 600; cursor: pointer; }
.advanced-reset:hover { border-color: #a9c8ff; background: var(--blue-soft); }
@media (max-width: 720px) {
    .advanced-filter-panel { top: 124px; right: 12px; }
}
.inbox-page-wrap { max-width: none; height: calc(100dvh - 152px); min-height: 0; padding: 18px; overflow: hidden; }
.comments-empty-shell { height: 100%; min-height: 360px; padding: 24px; border: 1px solid #d8e4f2; border-radius: 16px; background: #fff; display: grid; place-items: center; box-shadow: 0 18px 50px rgba(37,99,235,.09); }
.comments-empty-card { width: min(100%, 520px); padding: 42px 28px; border: 1px solid #dfe8f2; border-radius: 16px; background: #f8fbff; text-align: center; }
.comments-empty-icon { width: 56px; height: 56px; margin: 0 auto 14px; border-radius: 16px; color: var(--blue); background: var(--blue-soft); display: grid; place-items: center; }
.comments-empty-icon svg { width: 27px; height: 27px; }
.comments-empty-status { padding: 5px 9px; border-radius: 999px; color: #08785b; background: #e8faf4; display: inline-flex; font-size: 11px; font-weight: 700; }
.comments-empty-card.has-error .comments-empty-icon { color: #c2410c; background: #fff1e8; }
.comments-empty-card.has-error .comments-empty-status { color: #a63b10; background: #fff1e8; }
.comments-empty-card h2 { margin: 13px 0 6px; color: var(--ink); font-size: 21px; }
.comments-empty-card p { max-width: 410px; margin: 0 auto; color: #738095; font-size: 13px; line-height: 1.65; }
.comments-empty-card .primary-button { margin-top: 20px; }
.inbox-workspace { height: 100%; min-height: 0; display: grid; grid-template-columns: minmax(330px, 380px) minmax(0, 1fr); overflow: hidden; border: 1px solid #d8e4f2; border-radius: 16px; background: #fff; box-shadow: 0 18px 50px rgba(37, 99, 235, .09); }
.message-queue { min-width: 0; min-height: 0; overflow: hidden; display: flex; flex-direction: column; border-right: 1px solid #dce6f2; background: #fbfdff; }
.queue-header { min-height: 76px; padding: 19px 20px 15px; display: flex; align-items: center; justify-content: space-between; background: #fff; }
.queue-header > div { display: flex; align-items: center; gap: 9px; }
.queue-header h2 { margin: 0; font-size: 20px; letter-spacing: -.25px; }
.queue-header > div > span { padding: 4px 8px; border-radius: 7px; color: #5f6f86; background: #edf3fb; font-size: 12px; font-weight: 700; }
.queue-refresh { width: 38px; height: 38px; border: 1px solid #d7e2ef; border-radius: 10px; background: #fff; color: #4f6078; display: grid; place-items: center; cursor: pointer; }
.queue-refresh:hover { color: var(--blue); border-color: #a9c8ff; background: var(--blue-soft); }
.queue-refresh svg { width: 17px; height: 17px; }
.queue-refresh.is-loading svg { animation: queueSpin .7s linear infinite; }
.queue-refresh.is-complete { color: var(--mint); border-color: #9ee8cf; background: #ecfdf5; }
@keyframes queueSpin { to { transform: rotate(360deg); } }
.queue-tabs { margin: 0; padding: 0; display: grid; grid-template-columns: .9fr .95fr 1fr 1.2fr; gap: 0; border-bottom: 1px solid #dce6f2; background: #fff; }
.queue-tabs button { position: relative; min-width: 0; height: 43px; padding: 0 3px; border: 0; border-radius: 0; color: #6b7788; background: transparent; font-size: 12px; font-weight: 650; white-space: nowrap; cursor: pointer; transition: color .16s ease, background .16s ease; }
.queue-tabs button span { margin-left: 2px; color: #8b97a6; font-size: 10px; line-height: 1; }
.queue-tabs button:hover { color: var(--blue); background: #f4f8ff; }
.queue-tabs button.active { color: var(--blue); background: #f3f7ff; box-shadow: inset 0 -3px 0 var(--blue); }
.queue-tabs button.active span { color: var(--blue); }
.queue-sort-row { min-height: 45px; padding: 0 18px; display: flex; align-items: center; justify-content: space-between; color: #718096; background: #f5f8fd; border-bottom: 1px solid #dce6f2; }
.queue-sort-row span, .queue-sort-row button { display: flex; align-items: center; gap: 6px; font-size: 12px; }
.queue-sort-row button { padding: 0; border: 0; color: #586576; background: transparent; cursor: pointer; }
.queue-sort-row svg { width: 14px; height: 14px; }
.queue-list { position: relative; min-height: 0; flex: 1 1 0; overflow-y: auto; overscroll-behavior: contain; }
.queue-loading { position: absolute; inset: 0; z-index: 3; padding: 8px 0; display: none; background: #fff; }
.queue-list.is-loading .queue-loading { display: block; }
.queue-list.is-loading > .queue-item, .queue-list.is-loading > .queue-empty { visibility: hidden; }
.queue-skeleton { min-height: 112px; padding: 15px 16px; border-bottom: 1px solid #edf0f3; display: flex; align-items: flex-start; gap: 11px; }
.queue-skeleton > i, .queue-skeleton b { display: block; background: linear-gradient(90deg,#edf1f5 25%,#f7f9fb 50%,#edf1f5 75%); background-size: 220% 100%; animation: skeletonMove 1.15s linear infinite; }
.queue-skeleton > i { width: 36px; height: 36px; flex: 0 0 auto; border-radius: 50%; }
.queue-skeleton > span { padding-top: 2px; flex: 1; display: grid; gap: 10px; }
.queue-skeleton b { height: 10px; border-radius: 5px; }
.queue-skeleton b:nth-child(1) { width: 42%; }
.queue-skeleton b:nth-child(2) { width: 92%; }
.queue-skeleton b:nth-child(3) { width: 61%; }
@keyframes skeletonMove { to { background-position: -220% 0; } }
.queue-item { position: relative; width: 100%; min-height: 124px; padding: 13px 14px; border: 0; border-bottom: 1px solid #e1e8f1; background: #fff; display: flex; align-items: flex-start; gap: 10px; text-align: left; cursor: pointer; transition: background .16s ease, box-shadow .16s ease; }
.queue-item::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: transparent; }
.queue-item:hover { background: #f6f9ff; }
.queue-item.selected { background: #eaf2ff; box-shadow: inset 0 0 0 1px rgba(37,99,235,.12); }
.queue-item.selected::before { background: var(--blue); }
.queue-item.urgent:not(.selected) { background: #fffafa; }
.queue-item .avatar { width: 36px; height: 36px; margin-top: 1px; font-size: 11px; }
.queue-item-body { min-width: 0; flex: 1; display: block; }
.queue-item-top, .queue-item-bottom, .queue-item-tags { display: flex; align-items: center; }
.queue-item-top { justify-content: space-between; gap: 8px; }
.queue-item-top strong { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.queue-item.new .queue-item-top strong::before { content: ""; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: #2563eb; display: inline-block; vertical-align: 1px; box-shadow: 0 0 0 3px rgba(37,99,235,.12); }
.queue-item-top time { flex: 0 0 auto; color: #8c96a3; font-size: 12px; }
.facebook-mini { width: 17px; height: 17px; border-radius: 50%; color: #fff; background: #2563eb; display: grid; place-items: center; font: 700 11px Arial; font-style: normal; }
.intent-label { max-width: 118px; padding: 3px 7px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; border: 1px solid #bce9db; border-radius: 6px; color: #23846c; background: #f0fcf8; font-size: 10px; font-weight: 650; }
.intent-label.appointment { color: #1d5fd1; border-color: #aecbff; background: #edf4ff; }
.intent-label.praise { color: #23846c; border-color: #bce9db; background: #f0fcf8; }
.intent-label.urgent { color: #c74450; border-color: #ffc5ca; background: #fff2f3; }
.intent-label.complaint { color: #c2410c; border-color: #fdba74; background: #fff7ed; }
.intent-label.finance { color: #7553b6; border-color: #d9caf5; background: #f6f2fd; }
.intent-label.location { color: #ad681e; border-color: #f0d2aa; background: #fff8ed; }
.intent-label.general { color: #687485; border-color: #d7dde5; background: #f4f6f8; }
.queue-preview { margin-top: 6px; height: 39px; overflow: hidden; color: #4f5d6d; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 13px; line-height: 1.5; }
.queue-item-bottom { justify-content: space-between; gap: 7px; margin-top: 6px; }
.queue-item-tags { min-width: 0; gap: 5px; }
.queue-status { padding: 3px 7px; border: 1px solid #f0cb6a; border-radius: 10px; color: #bd7304; background: #fffaf0; font-size: 10px; font-weight: 700; white-space: nowrap; }
.queue-status.new { color: #1d5fd1; border-color: #aecbff; background: #edf4ff; }
.queue-status.pending { color: #ad681e; border-color: #f0d2aa; background: #fff8ed; }
.queue-status.waiting { color: #a56b16; border-color: #ead9ad; background: #fffaf0; }
.queue-status.escalated { color: #cc424d; border-color: #ffc7cc; background: #fff3f4; }
.queue-status.replied { color: #1c846a; border-color: #bce9dc; background: #effbf7; }
.queue-status.ignored { color: #687485; border-color: #d7dde5; background: #f4f6f8; }
.queue-item-bottom small { color: #a0a8b3; font-size: 10px; }
.queue-empty { display: none; padding: 60px 20px; color: #8b95a2; text-align: center; }
.queue-empty strong, .queue-empty span { display: block; }
.queue-empty strong { color: var(--ink); font-size: 16px; }
.queue-empty span { margin-top: 5px; font-size: 13px; }

.comment-detail { min-width: 0; min-height: 0; overflow: hidden; display: flex; flex-direction: column; background: var(--soft); }
.detail-header { min-height: 77px; padding: 14px 25px; flex: 0 0 auto; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #dbe5f1; background: #fff; }
.detail-person { min-width: 0; display: flex; align-items: center; gap: 11px; }
.detail-person .avatar { width: 41px; height: 41px; }
.detail-name-row { display: flex; align-items: center; gap: 9px; }
.detail-name-row h2 { margin: 0; font-size: 18px; }
.detail-person p { margin: 4px 0 0; color: #7c8895; font-size: 13px; }
.facebook-source { padding: 4px 9px; border-radius: 10px; color: #2563eb; background: #eaf2ff; display: inline-flex; align-items: center; gap: 5px; font-size: 11px; font-weight: 700; }
.facebook-source b { width: 14px; height: 14px; border-radius: 50%; color: #fff; background: #2563eb; display: grid; place-items: center; font: 700 9px Arial; }
.detail-header-actions { display: flex; align-items: center; gap: 10px; }
.detail-status { padding: 6px 10px; border: 1px solid #bce7d9; border-radius: 12px; color: #24836d; background: #f2fcf9; font-size: 12px; font-weight: 700; }
.detail-status.new { color: #1d5fd1; border-color: #aecbff; background: #edf4ff; }
.detail-status.pending { color: #ad681e; border-color: #f0d2aa; background: #fff8ed; }
.detail-status.waiting { color: #a56b16; border-color: #ead9ad; background: #fffaf0; }
.detail-status.escalated { color: #c74450; border-color: #ffc5ca; background: #fff2f3; }
.detail-status.replied { color: #1c846a; border-color: #bce9dc; background: #effbf7; }
.detail-status.ignored { color: #687485; border-color: #d7dde5; background: #f4f6f8; }
.detail-more { width: 32px; height: 32px; border: 0; background: transparent; color: #8a95a2; cursor: pointer; }
.detail-scroll { min-height: 0; flex: 1 1 0; padding: 22px 26px 28px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.detail-columns { width: 100%; max-width: 1280px; margin-inline: auto; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .95fr); gap: 14px; align-items: start; }
.detail-primary, .detail-aside { min-width: 0; }
.detail-aside { position: sticky; top: 0; }

.queue-list::-webkit-scrollbar, .detail-scroll::-webkit-scrollbar { width: 8px; }
.queue-list::-webkit-scrollbar-track, .detail-scroll::-webkit-scrollbar-track { background: transparent; }
.queue-list::-webkit-scrollbar-thumb, .detail-scroll::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 8px; background: #c7d0dc; background-clip: padding-box; }
.context-card, .assessment-card, .reference-card, .reply-composer, .resolved-card { max-width: 980px; margin-inline: auto; border: 1px solid var(--line); border-radius: 15px; background: #fff; }
.detail-columns .context-card, .detail-columns .assessment-card, .detail-columns .reference-card, .detail-columns .reply-composer, .detail-columns .resolved-card { max-width: none; margin-inline: 0; }
.detail-columns .workflow-error { max-width: none; }
.context-card { padding: 18px; }
.context-card-head { display: flex; align-items: center; justify-content: space-between; }
.context-title { display: flex; align-items: center; gap: 9px; }
.context-title h3 { margin: 0; color: var(--ink); font-size: 14px; }
.context-head-icon { width: 29px; height: 29px; border-radius: 8px; color: var(--blue); background: var(--blue-soft); display: grid; place-items: center; }
.context-head-icon svg { width: 16px; height: 16px; }
.context-card-head > a { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; font-weight: 700; }
.context-card-head > a { color: #788794; }
.context-card-head > a svg { width: 16px; height: 16px; }
.post-context { margin-top: 13px; padding: 11px 12px; display: flex; align-items: center; gap: 12px; border: 1px dashed #cbd5e1; border-radius: 9px; background: #fff; }
.post-visual { width: 72px; height: 72px; flex: 0 0 auto; overflow: hidden; border-radius: 8px; background: #eef2f7; }
.post-visual img { width: 100%; height: 100%; display: block; object-fit: cover; }
.post-context > div:last-child { min-width: 0; }
.post-context small, .post-context strong, .post-context > div:last-child > span { display: block; }
.post-context small { color: #58718b; font-size: 10px; font-weight: 700; }
.post-context strong { margin: 3px 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.post-context > div:last-child > span { color: #82909d; font-size: 12px; }
.customer-comment-box { position: relative; margin-top: 13px; padding: 14px; display: flex; gap: 11px; border: 1px solid #d8e2ec; border-radius: 10px; background: #f7fafe; }
.customer-comment-box .avatar { width: 36px; height: 36px; }
.customer-comment-box > div { min-width: 0; flex: 1; }
.customer-comment-box > div > div { display: flex; align-items: center; gap: 8px; }
.customer-comment-box strong { font-size: 14px; }
.customer-comment-box time { color: #8e99a5; font-size: 11px; }
.comment-type-label { margin-left: auto; padding: 3px 7px; border-radius: 8px; color: #286da9; background: #fff; font-size: 9px; font-weight: 700; }
.customer-comment-box p { margin: 7px 0 0; color: #273444; font-size: 14px; line-height: 1.6; }

.assessment-card { padding: 18px; overflow: hidden; background: #fff; box-shadow: 0 12px 30px rgba(37,99,235,.06); }
.assessment-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.assessment-title-row { min-width: 0; display: flex; align-items: center; gap: 9px; }
.assessment-title-row h3 { margin: 0; font-size: 16px; white-space: nowrap; }
.assessment-icon, .composer-icon { width: 29px; height: 29px; border-radius: 8px; color: #fff; background: var(--navy); display: grid; place-items: center; font-size: 13px; }
.assessment-icon { flex: 0 0 auto; color: var(--blue); background: var(--blue-soft); }
.assessment-icon svg { width: 17px; height: 17px; stroke-width: 2; }
.confidence-pill { padding: 6px 10px; border: 1px solid #92e7ca; border-radius: 14px; color: #08785b; background: var(--mint-soft); display: inline-flex; align-items: center; gap: 4px; font-size: 11px; white-space: nowrap; }
.assessment-content { min-width: 0; margin-top: 16px; }
.assessment-table th { vertical-align: middle; }
.assessment-table td { vertical-align: middle; }
.assessment-table td > strong { color: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; }
.analysis-label { min-width: 0; display: flex; align-items: center; gap: 8px; color: inherit; font-size: inherit; font-weight: inherit; }
.analysis-label svg { width: 19px; height: 19px; flex: 0 0 auto; color: #41536c; stroke-width: 2; }
.sentiment-value { display: inline-flex; align-items: center; gap: 7px; }
.sentiment-emoji { flex: 0 0 auto; font-size: 16px; line-height: 1.25; }
.analysis-topics { color: #3c4a5e; font-size: 12px; font-weight: 400; line-height: 1.5; }
.topic-empty { color: #8a95a3; font-size: 11px; font-style: italic; }
.medical-alert { margin-top: 9px; padding: 9px 11px; display: none; align-items: center; gap: 9px; border: 1px solid #ffc4c8; border-radius: 9px; color: #c23d49; background: #fff3f4; }
.medical-alert.visible { display: flex; }
.medical-alert svg { width: 18px; height: 18px; flex: 0 0 auto; }
.medical-alert strong { font-size: 11px; line-height: 1.45; }

.reference-card { margin-top: 12px; padding: 18px; box-shadow: 0 12px 30px rgba(37,99,235,.04); }
.reference-header, .reference-header > div { display: flex; align-items: center; }
.reference-header { justify-content: space-between; gap: 12px; }
.reference-header > div { min-width: 0; gap: 9px; }
.reference-header h3 { margin: 0; font-size: 14px; }
.reference-header > span { flex: 0 0 auto; color: #7d8998; font-size: 12px; }
.reference-icon { width: 29px; height: 29px; flex: 0 0 auto; border-radius: 8px; color: var(--blue); background: var(--blue-soft); display: grid; place-items: center; }
.reference-icon svg { width: 17px; height: 17px; }
.reference-list { margin-top: 13px; display: grid; gap: 8px; }
.reference-item { min-width: 0; padding: 12px; border: 1px solid #e0e8f2; border-radius: 10px; background: #f9fbfe; }
.reference-item-head, .reference-item-head > div { min-width: 0; display: flex; align-items: center; }
.reference-item-head { justify-content: space-between; gap: 10px; }
.reference-item-head > div:first-child { flex: 1; gap: 10px; }
.reference-item-icon { width: 29px; height: 29px; flex: 0 0 auto; border-radius: 8px; color: #5e7590; background: #fff; display: grid; place-items: center; border: 1px solid #e1e8f1; }
.reference-item-icon svg { width: 15px; height: 15px; }
.reference-item-head > div:first-child > div { min-width: 0; display: grid; }
.reference-item-head > div:first-child > div > span { color: #2563c9; font-size: 12px; font-weight: 650; }
.reference-item-actions { flex: 0 0 auto; justify-content: flex-end; gap: 6px; }
.reference-copy-button { width: 29px; height: 29px; flex: 0 0 auto; padding: 0; border: 1px solid #d7e3f0; border-radius: 8px; color: #2969c7; background: #fff; display: grid; place-items: center; cursor: pointer; transition: border-color .16s ease, background .16s ease, color .16s ease; }
.reference-copy-button:hover { border-color: #a9c4ea; background: #eef5ff; }
.reference-copy-button svg { width: 15px; height: 15px; }
.reference-copy-button.is-copied { color: #08785b; border-color: #9ee3cc; background: #edfbf6; }
.reference-table { width: 100%; margin-top: 10px; overflow: hidden; border: 1px solid #e1e8f1; border-collapse: separate; border-spacing: 0; border-radius: 8px; background: #fff; table-layout: fixed; }
.reference-table.assessment-table { margin-top: 0; }
.reference-table th, .reference-table td { padding: 8px 10px; border-top: 1px solid #e8edf4; text-align: left; vertical-align: top; line-height: 1.5; }
.reference-table tr:first-child > * { border-top: 0; }
.reference-table th { width: 104px; color: #7d8998; background: #f6f8fb; font-size: 12px; font-weight: 500; }
.reference-table td { overflow-wrap: anywhere; color: #3c4a5e; font-size: 12px; font-weight: 400; }
.reference-table tr:first-child td { color: #243348; font-size: 12px; font-weight: 600; }
.reference-table-link { color: #2969c7; font-weight: inherit; overflow-wrap: anywhere; word-break: break-all; }
.reference-empty { padding: 16px; border: 1px dashed #d9e2ed; border-radius: 10px; color: #8a95a3; background: #fafbfd; font-size: 12px; text-align: center; }

.reply-composer { margin-top: 12px; padding: 15px 16px; }
.composer-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.composer-head > div:first-child { display: flex; align-items: center; gap: 9px; }
.composer-icon { color: var(--blue); background: var(--blue-soft); }
.composer-head h3 { margin: 0; font-size: 14px; }
.reply-textarea-wrap { margin-top: 11px; overflow: hidden; border: 1px solid #dce4e9; border-radius: 12px; }
.reply-textarea-wrap:focus-within { border-color: #83b5d2; box-shadow: 0 0 0 3px rgba(22,120,184,.08); }
.reply-textarea-wrap textarea { width: 100%; min-height: 96px; max-height: 180px; padding: 13px 14px; border: 0; outline: 0; resize: vertical; color: #253242; background: #fff; font-size: 14px; line-height: 1.65; }
.reply-textarea-wrap footer { min-height: 39px; padding: 0 13px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid #edf0f2; color: #7e8996; background: #fafbfc; font-size: 11px; }
.reply-textarea-wrap footer span { color: #66788a; }
.reply-textarea-wrap footer b { white-space: nowrap; }
.composer-actions { margin-top: 12px; display: flex; align-items: center; justify-content: space-between; }
.composer-actions > div { display: flex; gap: 8px; }
.composer-actions form { display: flex; }
.decline-button, .send-reply-button { min-height: 43px; padding: 0 16px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; font-size: 13px; font-weight: 700; cursor: pointer; }
.decline-button { color: #cb4350; border: 1px solid #ffc8cd; background: #fff4f5; }
.send-reply-button { color: #fff; border: 1px solid var(--mint); background: var(--mint); box-shadow: 0 6px 15px rgba(0,168,134,.17); }
.send-reply-button:hover { background: #008f73; }
.send-reply-button svg { width: 16px; height: 16px; }
.send-reply-button:disabled { cursor: wait; opacity: .78; box-shadow: none; }
.button-spinner { width: 15px; height: 15px; border: 2px solid rgba(255,255,255,.42); border-top-color: #fff; border-radius: 50%; animation: queueSpin .7s linear infinite; }
.workflow-error { max-width: 980px; margin: 12px auto 0; padding: 11px 13px; border: 1px solid #ffc9ce; border-radius: 11px; color: #b93b47; background: #fff5f6; display: none; align-items: center; gap: 10px; }
.workflow-error.is-visible { display: flex; }
.workflow-error > span { width: 31px; height: 31px; flex: 0 0 auto; border-radius: 8px; background: #ffe5e8; display: grid; place-items: center; }
.workflow-error svg { width: 16px; height: 16px; }
.workflow-error > div { min-width: 0; flex: 1; }
.workflow-error strong { font-size: 12px; }
.workflow-error p { margin: 1px 0 0; font-size: 11px; }
.workflow-error button { min-height: 34px; padding: 0 11px; border: 1px solid #efadb4; border-radius: 8px; color: #b93b47; background: #fff; font-size: 11px; font-weight: 700; cursor: pointer; }
.ai-fallback { margin-top: 11px; padding: 9px 11px; border: 1px solid #f1d39f; border-radius: 9px; color: #8a5b18; background: #fff9ee; display: none; align-items: center; gap: 8px; }
.ai-fallback.is-visible { display: flex; }
.ai-fallback > span { width: 21px; height: 21px; flex: 0 0 auto; border-radius: 50%; color: #fff; background: #d59129; display: grid; place-items: center; font-size: 11px; font-weight: 800; }
.ai-fallback p { margin: 0; font-size: 11px; }
.workflow-panel.is-hidden { display: none; }
.resolved-card { margin-top: 12px; padding: 16px; }
.resolved-card header { display: flex; align-items: center; gap: 10px; }
.resolved-card header > div { min-width: 0; }
.resolved-card h3 { margin: 0; font-size: 14px; }
.resolved-card header p { margin: 2px 0 0; color: #7d8996; font-size: 11px; }
.resolved-icon { width: 34px; height: 34px; flex: 0 0 auto; border-radius: 9px; display: grid; place-items: center; }
.resolved-icon svg { width: 17px; height: 17px; }
.resolved-icon.replied { color: #178167; background: #eaf8f3; }
.resolved-icon.ignored { color: #697687; background: #eef1f4; }
.sent-reply { margin-top: 12px; padding: 13px 14px; border: 1px solid #d8e8e2; border-radius: 10px; color: #2c3b48; background: #f7fcfa; font-size: 14px; line-height: 1.65; }
.ignored-reason { margin-top: 12px; padding: 11px 13px; border-radius: 9px; background: #f6f7f9; }
.ignored-reason span, .ignored-reason strong { display: block; }
.ignored-reason span { color: #89939f; font-size: 10px; }
.ignored-reason strong { margin-top: 2px; color: #4c5968; font-size: 13px; }
.ignored-summary form { margin-top: 12px; display: flex; justify-content: flex-end; }
.restore-button { min-height: 39px; padding: 0 13px; border: 1px solid #cdd9e4; border-radius: 9px; color: #315b7c; background: #fff; display: inline-flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 700; cursor: pointer; }
.restore-button:hover { border-color: #a9c4d9; background: #f6fafe; }
.restore-button svg { width: 15px; height: 15px; }

@media (max-width: 1100px) {
    .inbox-workspace { grid-template-columns: minmax(290px, 330px) minmax(0, 1fr); }
    .queue-item { padding-inline: 14px; }
    .detail-scroll { padding-inline: 18px; }
    .post-context { display: none; }
}

@media (max-width: 1500px) {
    .assessment-header { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 1320px) {
    .detail-columns { grid-template-columns: 1fr; }
    .detail-aside { position: static; grid-row: 1; }
}

@media (max-width: 820px) {
    .inbox-page-wrap { height: auto; padding: 12px; overflow: visible; }
    .inbox-workspace { min-height: 0; grid-template-columns: 1fr; overflow: visible; }
    .message-queue { max-height: 500px; border-right: 0; border-bottom: 1px solid #e2e7ed; }
    .queue-list { max-height: 330px; }
    .comment-detail { min-height: 700px; overflow: visible; }
    .detail-scroll { overflow: visible; }
    .assessment-header { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 600px) {
    .inbox-page-wrap { padding: 0; }
    .inbox-workspace { border-inline: 0; border-radius: 0; }
    .queue-header, .detail-header { padding-inline: 15px; }
    .queue-tabs { overflow-x: auto; display: flex; }
    .queue-tabs button { min-width: 84px; }
    .detail-header { align-items: flex-start; gap: 10px; }
    .detail-header-actions { margin-top: 4px; }
    .facebook-source, .detail-more { display: none; }
    .detail-scroll { padding: 14px 12px 20px; }
    .context-card, .assessment-card, .reference-card, .reply-composer, .resolved-card { padding: 14px; border-radius: 12px; }
    .context-card-head > a { display: none; }
    .reference-table th { width: 88px; }
    .message-template-field { grid-template-columns: 1fr; gap: 6px; }
    .message-template-field > span { padding-top: 0; }
    .composer-actions { align-items: stretch; flex-direction: column-reverse; gap: 9px; }
    .composer-actions > div { display: grid; grid-template-columns: 1fr 1fr; }
    .composer-actions form, .decline-button, .send-reply-button { width: 100%; }
}
