:root { --consult-blue: #5366f2; --consult-navy: #0d1d45; --consult-line: #e3e8f2; --consult-muted: #71809c; }
* { box-sizing: border-box; }
.consultation-page { min-height: 100vh; color: #14213d; background: #f4f6fa; }
.consultation-header { position: sticky; z-index: 20; top: 0; height: 72px; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(25,43,79,.09); backdrop-filter: blur(18px); }
.consultation-header-inner { display: flex; width: min(calc(100% - 48px), 1240px); height: 100%; margin: 0 auto; align-items: center; justify-content: space-between; }
.consultation-page .brand { color: var(--consult-navy); }
.consultation-page .brand-word > span { color: var(--consult-blue); }
.consultation-page .brand-word small { color: var(--consult-muted); border-color: #dce2ec; }
.consultation-header nav { display: flex; align-items: center; gap: 10px; }
.consultation-header nav a, .consultation-header nav button { padding: 9px 12px; color: #4d5c77; background: transparent; border: 0; border-radius: 9px; font-size: 13px; font-weight: 750; cursor: pointer; }
.consultation-header nav a:hover, .consultation-header nav button:hover { color: var(--consult-navy); background: #edf1f8; }
.consultation-user { margin-right: 4px; color: var(--consult-navy); font-size: 13px; font-weight: 800; }
.consultation-shell { width: min(calc(100% - 48px), 1240px); margin: 0 auto; padding: 52px 0 70px; }
.consultation-intro { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 28px; }
.consultation-intro > div:first-child > p:first-child { display: flex; align-items: center; gap: 8px; margin: 0 0 11px; color: var(--consult-blue); letter-spacing: .15em; font-size: 13px; font-weight: 850; }
.consultation-intro > div:first-child > p:first-child span { width: 23px; height: 2px; background: var(--consult-blue); }
.consultation-intro h1 { margin: 0 0 10px; color: var(--consult-navy); letter-spacing: -.045em; font-size: clamp(32px, 4vw, 45px); }
.consultation-intro > div:first-child > p:last-child { margin: 0; color: #66758f; font-size: 13px; line-height: 1.7; }
.consultation-role-badge { padding: 10px 14px; color: var(--consult-blue); background: #ebefff; border: 1px solid #d9e0ff; border-radius: 999px; font-size: 13px; font-weight: 850; white-space: nowrap; }
.question-composer { display: grid; grid-template-columns: .8fr 1.2fr; gap: 40px; margin-bottom: 22px; padding: 28px 32px; background: linear-gradient(135deg, #101f49, #192e68); border-radius: 20px; box-shadow: 0 20px 55px rgba(11,29,70,.16); }
.question-composer > div > span { color: #94a9ff; letter-spacing: .14em; font-size: 13px; font-weight: 850; }
.question-composer h2 { margin: 8px 0 9px; color: #fff; font-size: 22px; }
.question-composer p { margin: 0; color: rgba(226,233,255,.7); font-size: 13px; line-height: 1.7; }
.question-composer form { display: grid; gap: 10px; }
.question-composer label { display: grid; gap: 6px; }
.question-composer label > span { color: rgba(229,235,255,.72); font-size: 13px; font-weight: 750; }
.question-composer input, .question-composer textarea { width: 100%; padding: 11px 13px; color: #17233e; background: #fff; border: 1px solid transparent; border-radius: 10px; outline: none; font: inherit; font-size: 13px; }
.question-composer textarea { min-height: 84px; resize: vertical; line-height: 1.65; }
.question-composer input:focus, .question-composer textarea:focus { border-color: #9aabff; box-shadow: 0 0 0 3px rgba(137,157,255,.19); }
.question-composer form > div { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.question-composer small { color: rgba(218,226,255,.55); font-size: 13px; }
.question-composer button, .message-form button { min-width: 82px; height: 38px; color: var(--consult-navy); background: #fff; border: 0; border-radius: 9px; font-size: 13px; font-weight: 850; cursor: pointer; }
.question-composer button:disabled, .message-form button:disabled { opacity: .55; cursor: wait; }
.consultation-notice { margin-bottom: 16px; padding: 12px 15px; color: #155d45; background: #e9f8f2; border: 1px solid #cdeee1; border-radius: 11px; font-size: 13px; font-weight: 700; }
.consultation-notice.error { color: #9e3440; background: #fff0f2; border-color: #f4d2d7; }
.consultation-workspace { display: grid; grid-template-columns: minmax(300px, .8fr) minmax(480px, 1.45fr); min-height: 620px; overflow: hidden; background: #fff; border: 1px solid var(--consult-line); border-radius: 22px; box-shadow: 0 22px 65px rgba(19,39,82,.09); }
.consultation-list-panel { display: flex; min-width: 0; flex-direction: column; background: #f9fafc; border-right: 1px solid var(--consult-line); }
.consultation-list-head { display: flex; min-height: 85px; padding: 19px 21px; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--consult-line); }
.consultation-list-head span { display: block; margin-bottom: 5px; color: var(--consult-blue); letter-spacing: .13em; font-size: 13px; font-weight: 850; }
.consultation-list-head h2 { margin: 0; font-size: 17px; }
.consultation-list-head button { padding: 7px 9px; color: #65738c; background: #fff; border: 1px solid #dde3ed; border-radius: 8px; font-size: 13px; font-weight: 750; cursor: pointer; }
.consultation-list { overflow-y: auto; padding: 12px; }
.consultation-section-label { margin: 12px 7px 8px; color: #8490a5; letter-spacing: .08em; font-size: 13px; font-weight: 850; }
.consultation-card { width: 100%; margin-bottom: 8px; padding: 15px; text-align: left; background: #fff; border: 1px solid #e2e7ef; border-radius: 13px; transition: .18s ease; }
[data-open-room].consultation-card { cursor: pointer; }
[data-open-room].consultation-card:hover, [data-open-room].consultation-card.active { border-color: #aeb9fb; box-shadow: 0 8px 24px rgba(65,83,172,.1); transform: translateY(-1px); }
.consultation-card-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
.consultation-card-top strong { overflow: hidden; color: var(--consult-navy); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.status-chip { flex: 0 0 auto; padding: 4px 7px; color: #66738d; background: #edf0f5; border-radius: 999px; font-size: 13px; font-weight: 850; }
.status-chip.open { color: #315fd0; background: #eaf0ff; }
.status-chip.pending, .status-chip.invited { color: #9a650c; background: #fff4dc; }
.status-chip.accepted, .status-chip.active { color: #187054; background: #e4f7f0; }
.consultation-card p { display: -webkit-box; overflow: hidden; margin: 0 0 9px; color: #66748d; font-size: 13px; line-height: 1.55; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.consultation-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #919bad; font-size: 13px; }
.consultation-card-actions { display: flex; gap: 6px; margin-top: 11px; }
.consultation-card-actions button { flex: 1; height: 31px; color: #4f5f7a; background: #f0f3f8; border: 0; border-radius: 7px; font-size: 13px; font-weight: 800; cursor: pointer; }
.consultation-card-actions button.primary { color: #fff; background: var(--consult-blue); }
.consultation-loading, .consultation-empty-list { padding: 40px 18px; color: #8a95aa; text-align: center; font-size: 13px; line-height: 1.7; }
.conversation-panel { min-width: 0; background: #fff; }
.conversation-empty { display: grid; height: 100%; min-height: 620px; padding: 35px; place-content: center; text-align: center; }
.conversation-empty > span { display: grid; width: 54px; height: 54px; margin: 0 auto 15px; place-items: center; color: #fff; background: linear-gradient(135deg, var(--consult-blue), #7889ff); border-radius: 17px; font-size: 18px; box-shadow: 0 15px 32px rgba(83,102,242,.22); }
.conversation-empty h2 { margin: 0 0 8px; color: var(--consult-navy); font-size: 20px; }
.conversation-empty p { max-width: 370px; margin: 0; color: #78859b; font-size: 13px; line-height: 1.7; }
.conversation-room { display: grid; height: 100%; min-height: 620px; grid-template-rows: auto auto minmax(260px, 1fr) auto; }
.conversation-head { display: flex; min-height: 85px; padding: 17px 21px; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--consult-line); }
.conversation-head span { display: block; margin-bottom: 4px; color: var(--consult-blue); font-size: 13px; font-weight: 850; }
.conversation-head h2 { margin: 0 0 4px; font-size: 17px; }
.conversation-head p { margin: 0; color: #7d899e; font-size: 13px; }
.conversation-head button { padding: 8px 10px; color: #8c4150; background: #fff1f3; border: 0; border-radius: 8px; font-size: 13px; font-weight: 800; cursor: pointer; }
.conversation-question { padding: 13px 20px; background: #f5f7fb; border-bottom: 1px solid #e7ebf2; }
.conversation-question strong { display: block; margin-bottom: 5px; color: #53627d; font-size: 13px; }
.conversation-question p { margin: 0; color: #65728a; font-size: 13px; line-height: 1.55; white-space: pre-wrap; }
.conversation-messages { overflow-y: auto; padding: 22px; background: linear-gradient(#fff, #fbfcfe); }
.message-row { display: flex; margin-bottom: 13px; align-items: flex-end; gap: 7px; }
.message-row.mine { justify-content: flex-end; }
.message-bubble { max-width: min(72%, 470px); padding: 10px 12px; color: #34425e; background: #edf1f7; border-radius: 5px 13px 13px 13px; font-size: 13px; line-height: 1.65; white-space: pre-wrap; word-break: break-word; }
.message-row.mine .message-bubble { color: #fff; background: var(--consult-blue); border-radius: 13px 5px 13px 13px; }
.message-time { color: #9aa3b3; font-size: 13px; white-space: nowrap; }
.message-empty { padding: 55px 20px; color: #98a2b3; text-align: center; font-size: 13px; }
.message-form { display: grid; grid-template-columns: 1fr auto; gap: 10px; padding: 14px 17px; background: #fff; border-top: 1px solid var(--consult-line); }
.message-form textarea { min-height: 50px; max-height: 130px; padding: 10px 12px; resize: vertical; color: #25334f; background: #f6f8fb; border: 1px solid #dfe5ef; border-radius: 10px; outline: none; font: inherit; font-size: 13px; line-height: 1.55; }
.message-form textarea:focus { background: #fff; border-color: #a9b4fa; box-shadow: 0 0 0 3px rgba(83,102,242,.09); }
.message-form button { align-self: stretch; color: #fff; background: var(--consult-blue); }
.conversation-locked { padding: 17px 20px; color: #6f7c92; background: #f4f6fa; border-top: 1px solid var(--consult-line); text-align: center; font-size: 13px; }
@media (max-width: 900px) {
    .consultation-shell, .consultation-header-inner { width: min(calc(100% - 28px), 760px); }
    .question-composer { grid-template-columns: 1fr; gap: 22px; }
    .consultation-workspace { grid-template-columns: 1fr; overflow: visible; }
    .consultation-list-panel { max-height: 520px; border-right: 0; border-bottom: 1px solid var(--consult-line); }
    .conversation-room, .conversation-empty { min-height: 560px; }
}
@media (max-width: 560px) {
    .consultation-header { height: 64px; }
    .consultation-header nav a, .consultation-user { display: none; }
    .consultation-shell { padding-top: 35px; }
    .consultation-intro { align-items: flex-start; flex-direction: column; gap: 15px; }
    .question-composer { padding: 23px 20px; }
    .question-composer form > div { align-items: stretch; flex-direction: column; }
    .consultation-workspace { border-radius: 17px; }
    .message-bubble { max-width: 84%; }
}

/* Live public chat */
.consultation-workspace { height: min(720px, calc(100vh - 205px)); min-height: 590px; }
.consultation-list-panel { min-height: 0; }
.consultation-list { flex: 1; min-height: 0; }
.new-room-button { padding: 9px 11px !important; color: #4255c7 !important; background: #eef1ff !important; border-color: #d8dfff !important; }
.new-room-button:hover { background: #e3e8ff !important; border-color: #bec8ff !important; }
.list-refresh-note { display: flex; min-height: 42px; padding: 10px 15px; align-items: center; gap: 6px; color: #8a95a8; background: #fff; border-top: 1px solid var(--consult-line); font-size: 13px; }
.list-refresh-note i, .live-label i { width: 6px; height: 6px; background: #31c48d; border-radius: 50%; box-shadow: 0 0 0 4px rgba(49,196,141,.12); }
.list-refresh-note button { margin-left: auto; padding: 0; color: var(--consult-blue); background: none; border: 0; font-size: 13px; font-weight: 800; cursor: pointer; }
.room-list-item { display: block; width: 100%; margin-bottom: 7px; padding: 14px; text-align: left; background: #fff; border: 1px solid #e1e6ef; border-radius: 12px; cursor: pointer; transition: .18s ease; }
.room-list-item:hover, .room-list-item.active { border-color: #aab6fb; box-shadow: 0 8px 22px rgba(65,83,172,.09); transform: translateY(-1px); }
.room-list-item.active { background: #f7f8ff; }
.room-list-title { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 7px; }
.room-list-title strong { overflow: hidden; color: var(--consult-navy); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.room-list-item p { overflow: hidden; margin: 0 0 8px; color: #69768d; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.room-list-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #959eae; font-size: 13px; }
.room-list-item.private-item { border-left: 3px solid var(--consult-blue); }
.private-room-open { display: block; width: 100%; padding: 0; color: inherit; text-align: left; background: transparent; border: 0; font: inherit; cursor: pointer; }
.private-room-open:focus-visible { outline: 3px solid rgba(83,102,242,.24); outline-offset: 5px; border-radius: 7px; }
.conversation-panel, .conversation-room { height: 100%; min-height: 0; }
.conversation-empty { min-height: 100%; }
.conversation-room { grid-template-rows: auto auto minmax(0, 1fr) auto; }
.conversation-head { min-height: 78px; }
.conversation-head .live-label { display: flex; align-items: center; gap: 7px; color: #19845e; }
.conversation-actions { display: flex; gap: 7px; }
.conversation-actions .invite-button { padding: 9px 12px; color: #4255c7; background: #eef1ff; border: 1px solid #d8dfff; border-radius: 8px; font-size: 13px; font-weight: 850; cursor: pointer; }
.conversation-actions .invite-button:hover { background: #e3e8ff; border-color: #bec8ff; }
.conversation-actions .delete-button { padding: 9px 11px; color: #a93446; background: #fff0f2; border: 1px solid #f2d6dc; border-radius: 8px; font-size: 13px; font-weight: 850; cursor: pointer; }
.conversation-actions .delete-button:hover { color: #fff; background: #c53f55; border-color: #c53f55; }
.conversation-actions .push-button { padding: 9px 12px; color: #315fd0; background: #edf3ff; border: 1px solid #d5e1ff; border-radius: 8px; font-size: 13px; font-weight: 850; cursor: pointer; }
.conversation-actions .push-button.enabled { color: #176b50; background: #e7f8f1; border-color: #c9ebdf; }
.conversation-actions .push-button.unavailable { color: #6c7890; background: #f1f3f7; border-color: #dce1e9; }
.conversation-actions .push-button:disabled { opacity: .6; cursor: wait; }
.privacy-guide { display: flex; padding: 10px 19px; align-items: center; gap: 10px; color: #69768f; background: #f3f6ff; border-bottom: 1px solid #e2e7f1; font-size: 13px; }
.privacy-guide strong { color: #4255c7; white-space: nowrap; }
.privacy-guide.private { color: #537060; background: #eff9f5; }
.privacy-guide.private strong { color: #197053; }
.conversation-messages { min-height: 0; }
.chat-message { display: flex; margin-bottom: 15px; align-items: flex-end; gap: 8px; }
.chat-message.mine { justify-content: flex-end; }
.chat-avatar { display: grid; flex: 0 0 31px; width: 31px; height: 31px; place-items: center; color: #fff; background: #8b98ad; border-radius: 10px; font-size: 13px; font-weight: 850; }
.chat-message.adjuster .chat-avatar { background: linear-gradient(135deg, #5366f2, #7e8dff); }
.chat-message.agent .chat-avatar { background: linear-gradient(135deg, #152b5c, #274686); }
.chat-content { max-width: min(72%, 510px); }
.chat-sender { display: flex; margin: 0 0 5px 2px; align-items: center; gap: 6px; color: #526079; font-size: 13px; font-weight: 800; }
.chat-sender b { color: #7d899e; font-size: 13px; font-weight: 700; }
.chat-sender em { padding: 2px 5px; color: #5366f2; background: #edf0ff; border-radius: 4px; font-size: 13px; font-style: normal; }
.chat-bubble { padding: 10px 12px; color: #34425e; background: #edf1f7; border-radius: 5px 13px 13px; font-size: 13px; line-height: 1.65; white-space: pre-wrap; word-break: break-word; }
.chat-message.mine .chat-content { display: flex; flex-direction: column; align-items: flex-end; }
.chat-message.mine .chat-bubble { color: #fff; background: var(--consult-blue); border-radius: 13px 5px 13px 13px; }
.chat-message.opening .chat-bubble { color: #24345b; background: #edf2ff; border: 1px solid #dfe6ff; }
.chat-time { display: block; margin-top: 4px; color: #99a2b2; font-size: 13px; }
.consultation-dialog { width: min(calc(100% - 28px), 520px); padding: 0; color: #172542; background: #fff; border: 0; border-radius: 20px; box-shadow: 0 28px 90px rgba(9,24,59,.28); }
.consultation-dialog::backdrop { background: rgba(8,19,45,.55); backdrop-filter: blur(4px); }
.consultation-dialog form { display: grid; gap: 15px; padding: 27px; }
.dialog-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.dialog-head span { color: var(--consult-blue); letter-spacing: .14em; font-size: 13px; font-weight: 850; }
.dialog-head h2 { margin: 6px 0 0; color: var(--consult-navy); font-size: 22px; }
.dialog-head > button { width: 32px; height: 32px; color: #748198; background: #f0f3f8; border: 0; border-radius: 9px; font-size: 20px; cursor: pointer; }
.consultation-dialog form > p { margin: -3px 0 2px; color: #748097; font-size: 13px; line-height: 1.65; }
.consultation-dialog label { display: grid; gap: 6px; }
.consultation-dialog label span { color: #56647d; font-size: 13px; font-weight: 800; }
.consultation-dialog input, .consultation-dialog textarea { width: 100%; padding: 11px 12px; color: #24314c; background: #f7f8fb; border: 1px solid #dfe4ed; border-radius: 10px; outline: 0; font: inherit; font-size: 13px; }
.consultation-dialog textarea { min-height: 115px; resize: vertical; line-height: 1.65; }
.consultation-dialog input:focus, .consultation-dialog textarea:focus { background: #fff; border-color: #aab5fa; box-shadow: 0 0 0 3px rgba(83,102,242,.09); }
.consultation-dialog small { color: #929bac; font-size: 13px; }
.consultation-dialog .dialog-submit { height: 43px; color: #fff; background: var(--consult-blue); border: 0; border-radius: 10px; font-size: 13px; font-weight: 850; cursor: pointer; }
.consultation-dialog .dialog-submit:disabled { opacity: .55; }
.invite-dialog { width: min(calc(100% - 28px), 590px); }
.invite-dialog form { max-height: min(780px, calc(100vh - 40px)); overflow-y: auto; }
.invite-search-field { position: sticky; z-index: 2; top: -27px; padding-top: 8px; background: #fff; }
.invite-candidate-list { display: grid; max-height: 235px; overflow-y: auto; gap: 7px; padding: 3px; }
.invite-candidate { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 10px; width: 100%; padding: 10px; text-align: left; background: #f7f8fb; border: 1px solid #e0e5ee; border-radius: 11px; cursor: pointer; transition: .15s ease; }
.invite-candidate:hover, .invite-candidate.selected { background: #f2f4ff; border-color: #aeb9fb; box-shadow: 0 5px 16px rgba(70,87,175,.08); }
.invite-candidate-avatar { display: grid; width: 38px; height: 38px; place-items: center; color: #fff; background: linear-gradient(135deg, #142a5c, #31518f); border-radius: 10px; font-size: 13px; font-weight: 850; }
.invite-candidate-info { min-width: 0; }
.invite-candidate-info strong { display: block; margin-bottom: 3px; color: var(--consult-navy); font-size: 13px; }
.invite-candidate-info span { display: block; overflow: hidden; color: #6e7b91; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.invite-candidate-info small { display: block; overflow: hidden; margin-top: 3px; color: #98a1b1; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.invite-candidate > em { padding: 5px 7px; color: var(--consult-blue); background: #e9edff; border-radius: 6px; font-size: 13px; font-style: normal; font-weight: 800; white-space: nowrap; }
.invite-candidate:disabled { opacity: .58; cursor: not-allowed; }
.invite-selection { display: grid; grid-template-columns: auto 1fr; gap: 3px 9px; padding: 11px 13px; background: #eef8f4; border: 1px solid #d5eee4; border-radius: 10px; }
.invite-selection > span { grid-row: 1 / 3; align-self: center; padding: 5px 7px; color: #197052; background: #d9f1e7; border-radius: 6px; font-size: 13px; font-weight: 850; }
.invite-selection strong { color: #23483c; font-size: 13px; }
.invite-selection small { color: #648177; font-size: 13px; }
.invite-candidate-empty { padding: 25px 12px; color: #8a95a8; text-align: center; font-size: 13px; line-height: 1.65; }
.conversation-room[data-public-room] { grid-template-rows: auto auto minmax(0, 1fr) auto auto auto; }
.question-category-picker { display: flex; min-height: 52px; padding: 9px 17px; align-items: center; gap: 12px; background: #fff; border-top: 1px solid var(--consult-line); }
.question-category-picker[hidden] { display: none; }
.question-category-picker > strong { flex: 0 0 auto; color: #526079; font-size: 13px; }
.question-category-picker > div { display: flex; flex-wrap: wrap; gap: 6px; }
.question-category-picker button { padding: 7px 10px; color: #596983; background: #f1f4f8; border: 1px solid #e0e5ed; border-radius: 999px; font-size: 13px; font-weight: 800; cursor: pointer; }
.question-category-picker button.active { color: #fff; background: var(--consult-blue); border-color: var(--consult-blue); box-shadow: 0 5px 13px rgba(83,102,242,.2); }
.category-chip { display: inline-flex; width: max-content; margin: 0 0 5px 2px; padding: 3px 6px; color: #4255c7; background: #eaf0ff; border-radius: 5px; font-size: 13px; font-weight: 850; }
.questioner-item .room-list-meta span { color: var(--consult-blue); font-weight: 800; }
.reply-target { display: flex; min-height: 48px; padding: 9px 17px; align-items: center; justify-content: space-between; gap: 12px; color: #354463; background: #f0f3ff; border-top: 1px solid #dfe5ff; }
.reply-target[hidden] { display: none; }
.reply-target div { display: flex; align-items: center; gap: 9px; }
.reply-target span { padding: 4px 7px; color: #fff; background: var(--consult-blue); border-radius: 6px; font-size: 13px; font-weight: 850; }
.reply-target strong { color: #24365e; font-size: 13px; }
.reply-target button { padding: 5px 8px; color: #6d7890; background: #fff; border: 1px solid #d9dfec; border-radius: 7px; font-size: 13px; font-weight: 800; cursor: pointer; }
.message-actions { display: flex; gap: 6px; margin-top: 7px; }
.message-actions button { padding: 5px 8px; color: #485875; background: #fff; border: 1px solid #d9e0eb; border-radius: 7px; font-size: 13px; font-weight: 800; cursor: pointer; }
.message-actions button.primary { color: #fff; background: var(--consult-blue); border-color: var(--consult-blue); }
.message-actions button.primary:hover { background: #4255df; border-color: #4255df; }
.message-actions button.private { color: #4255c7; background: #f5f6ff; border-color: #d8dfff; }
.message-actions button.private:hover { background: #e9edff; border-color: #bec8ff; }
.answer-recipient { display: block; margin: -1px 0 5px 2px; color: #5366f2; font-size: 13px; font-weight: 800; }
.conversation-actions .back-lobby-button { color: #4255c7; background: #edf0ff; }
.message-form textarea:disabled { color: #8d98aa; background: #eef1f5; cursor: not-allowed; }
.message-form button:disabled { opacity: .5; cursor: not-allowed; }
.push-guide-link { display: inline-flex; width: fit-content; color: var(--consult-blue); font-size: 13px; font-weight: 850; text-decoration: none; }
.push-guide-link:hover { text-decoration: underline; }
.push-category-options { display: grid; margin: 0; padding: 0; gap: 8px; border: 0; }
.push-category-options label { display: flex; padding: 11px 12px; align-items: center; grid-template-columns: none; gap: 10px; background: #f7f8fb; border: 1px solid #e0e5ee; border-radius: 11px; cursor: pointer; }
.push-category-options label:has(input:checked) { background: #f0f3ff; border-color: #aeb9fb; }
.push-category-options input { width: 16px; height: 16px; padding: 0; accent-color: var(--consult-blue); }
.push-category-options label > span { display: grid; gap: 3px; }
.push-category-options label strong { color: var(--consult-navy); font-size: 13px; }
.push-category-options label small { color: #7d899e; font-size: 13px; }
.push-setting-status { padding: 10px 12px; color: #596983; background: #f2f5f9; border-radius: 9px; font-size: 13px; line-height: 1.55; }
.consultation-dialog .dialog-secondary { height: 40px; color: #8c4150; background: #fff1f3; border: 1px solid #f2d6dc; border-radius: 10px; font-size: 13px; font-weight: 800; cursor: pointer; }
@media (max-width: 900px) {
    .consultation-workspace { height: auto; }
    .consultation-list-panel { height: 420px; }
    .conversation-panel { height: 600px; }
}
@media (max-width: 560px) {
    .consultation-intro h1 { font-size: 31px; }
    .consultation-list-panel { height: 370px; }
    .conversation-panel { height: 620px; }
    .privacy-guide { align-items: flex-start; flex-direction: column; gap: 3px; }
    .chat-content { max-width: 82%; }
    .chat-avatar { display: none; }
    .conversation-head { align-items: flex-start; flex-direction: column; }
    .conversation-actions { width: 100%; flex-wrap: wrap; }
    .question-category-picker { align-items: flex-start; flex-direction: column; }
}
