/* Lumiere theme companion palette – scoped to avoid altering the actual theme. */
.lcc-app, .lcc-widget, .lcc-login { --lcc-accent: #f26c4f; --lcc-heading:#161616; --lcc-muted:#83878c; --lcc-border:#e8e8e8; --lcc-bg:#fff; --lcc-soft:#f7f7f7; font-family:inherit; color:var(--lcc-muted); font-size:14px; line-height:1.45; }
.lcc-app *, .lcc-app *::before, .lcc-app *::after, .lcc-widget *, .lcc-widget *::before, .lcc-widget *::after {box-sizing:border-box}
.lcc-app button, .lcc-widget button {font:inherit;cursor:pointer;border:none;text-transform:none;letter-spacing:normal;line-height:1.3}
.lcc-app button:focus-visible, .lcc-widget button:focus-visible, .lcc-app textarea:focus-visible, .lcc-app input:focus-visible {outline:2px solid var(--lcc-accent);outline-offset:2px}
.lcc-app-main {width:100%; min-height:580px; margin:26px 0 44px;}
.lcc-shell {width:100%;height:670px;min-height:520px;max-height:78vh; display:flex;overflow:hidden;border:1px solid var(--lcc-border);background:var(--lcc-bg); box-shadow:0 15px 45px rgba(0,0,0,.055);text-align:left}
.lcc-side {width:270px;flex:0 0 270px;display:flex;flex-direction:column;background:#fafafa;border-right:1px solid var(--lcc-border);min-width:0;}
.lcc-sidebar-header {padding:22px 17px 17px;font-weight:700;letter-spacing:.12em;color:var(--lcc-heading);font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:6px}
.lcc-sidebar-header span {font-size:11px;letter-spacing:0;text-transform:none;font-weight:400;color:var(--lcc-muted);}
.lcc-tabs {display:flex;border-bottom:1px solid var(--lcc-border);margin:0 10px 10px;gap:3px}
.lcc-tabs button {flex:1;padding:11px 5px;background:transparent;color:var(--lcc-muted);border-bottom:2px solid transparent;font-size:12px}
.lcc-tabs button[aria-selected="true"] {color:var(--lcc-accent);border-color:var(--lcc-accent);font-weight:700}
.lcc-side-list {overflow-y:auto;flex:1;min-height:60px;scrollbar-width:thin}
.lcc-chat-row {width:100%;min-height:62px;display:flex;align-items:center;gap:12px;text-align:left;padding:10px 14px;background:transparent;color:var(--lcc-heading);transition:background .15s}
.lcc-chat-row:hover, .lcc-chat-row.is-active {background:#f0f0f0}
.lcc-chat-row.is-active {box-shadow:inset 3px 0 0 var(--lcc-accent)}
.lcc-chat-row .lcc-row-body {flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.lcc-chat-row .lcc-row-body strong {font-size:13px;font-weight:600;color:var(--lcc-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lcc-chat-row .lcc-row-body small {font-size:11px;color:var(--lcc-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lcc-room-symbol {font-size:21px;color:var(--lcc-accent);width:34px;text-align:center;font-weight:600}
.lcc-avatar {position:relative;display:inline-flex;flex:0 0 35px;width:35px;height:35px;border-radius:50%;align-items:center;justify-content:center;background:#e4e4e4;overflow:visible}
.lcc-avatar img {width:35px;height:35px;object-fit:cover;border-radius:50%;}
.lcc-avatar-placeholder {color:var(--lcc-muted);font-size:23px}
.lcc-online-dot {position:absolute;bottom:-1px;right:-1px;width:10px;height:10px;border-radius:50%;background:#35ae77;border:2px solid #fafafa}
.lcc-count {display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;border-radius:10px;padding:0 4px;background:var(--lcc-accent);color:white;font-size:11px;font-weight:700}
.lcc-empty-side {padding:10px 16px;font-size:12px;}
.lcc-search-wrap {padding:0 12px 12px}
.lcc-user-search {width:100%!important;height:34px!important;border:1px solid var(--lcc-border)!important;background:white!important;font:inherit!important;font-size:12px!important;padding:5px 10px!important;color:#222!important;box-shadow:none!important}
.lcc-side-foot {border-top:1px solid var(--lcc-border);padding:12px 14px}
.lcc-side-foot button {background:transparent;color:var(--lcc-muted);font-size:12px;text-align:left;width:100%;}
.lcc-discussion {min-width:0;flex:1;display:flex;flex-direction:column;position:relative;background:white;}
.lcc-discussion-head {height:64px;flex:0 0 64px;border-bottom:1px solid var(--lcc-border);display:flex;align-items:center;gap:12px;padding:0 20px}
.lcc-discussion-title {flex:1;color:var(--lcc-heading);font-family:inherit;font-size:17px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lcc-small-btn {padding:7px 10px;background:#f6f6f6;color:#444;border:1px solid #dedede!important;font-size:12px!important;}
.lcc-mobile-menu {display:none;background:transparent;color:var(--lcc-heading);font-size:22px!important}
.lcc-conversation-scroll {flex:1;overflow-y:auto;overscroll-behavior:contain;min-height:100px;padding:20px 21px 12px;scrollbar-width:thin;}
.lcc-message-list {display:flex;flex-direction:column;gap:15px;min-height:100%}
.lcc-message {display:flex;gap:10px;align-items:flex-end;max-width:88%;}
.lcc-message.is-own {margin-left:auto;flex-direction:row-reverse}
.lcc-message-avatar {flex:0 0 30px;width:30px;height:30px}
.lcc-message-avatar img {width:30px;height:30px}
.lcc-message-bubble {background:#f5f5f5;min-width:90px;max-width:100%;padding:10px 13px 7px;border-radius:7px 7px 7px 2px;overflow-wrap:anywhere;}
.lcc-message.is-own .lcc-message-bubble {background:#fff0eb;border-radius:7px 7px 2px 7px;}
.lcc-message-meta {display:flex;align-items:baseline;gap:9px;margin-bottom:5px;}
.lcc-message-meta strong {font-size:12px;color:var(--lcc-heading);font-weight:700}
.lcc-message-meta time {font-size:10px;color:#999;white-space:nowrap}
.lcc-message-text {font-size:13px;line-height:1.5;color:#333;white-space:normal}
.lcc-message-bubble em {font-size:12px;color:#999}
.lcc-report {display:block;margin-top:4px!important;padding:2px 0!important;background:none!important;color:#999!important;font-size:10px!important;text-align:left;}
.lcc-report:hover {color:var(--lcc-accent)!important}
.lcc-attachment {display:block;font-size:12px!important;margin-top:7px;color:var(--lcc-accent)!important;word-break:break-all;}
.lcc-attachment-img {max-width:245px;max-height:185px;width:auto;height:auto;object-fit:contain;display:block;margin-top:8px;border-radius:4px}
.lcc-load-older {align-self:center;padding:8px 11px!important;color:var(--lcc-accent)!important;background:transparent!important;font-size:12px!important}
.lcc-placeholder {margin:auto;text-align:center;color:#a5a5a5;padding:40px 20px;}
.lcc-typing {min-height:22px;flex:0 0 22px;padding:1px 22px;font-size:11px;color:#999;font-style:italic}
.lcc-composer {position:relative;border-top:1px solid var(--lcc-border);padding:12px 16px 15px;background:white;margin:0!important}
.lcc-compose-row {display:flex;gap:9px;align-items:center;}
.lcc-compose-row textarea {flex:1;min-width:0;max-height:110px;min-height:45px;height:45px;padding:10px 12px!important;border:1px solid #dedede!important;border-radius:2px!important;background:#fff!important;color:#333!important;font:inherit!important;font-size:13px!important;resize:vertical;box-shadow:none!important;line-height:1.45!important;text-transform:none!important}
.lcc-emoji-toggle {flex:0 0 25px;background:none;color:#666;font-size:23px!important;padding:0!important}
.lcc-upload {display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;color:#333;width:27px;height:36px;margin:0;}
.lcc-upload input {display:none}
.lcc-send, .lcc-button {background:var(--lcc-accent)!important;color:white!important;padding:13px 14px!important;border-radius:2px!important;font-weight:600!important;font-size:12px!important;letter-spacing:.025em!important}
.lcc-send:disabled {opacity:.55;cursor:default}
.lcc-emoji-panel {position:absolute;left:10px;bottom:85px;background:white;border:1px solid var(--lcc-border);padding:10px;box-shadow:0 8px 25px rgba(0,0,0,.14);display:grid;grid-template-columns:repeat(8,1fr);gap:2px;z-index:2;max-width:295px}
.lcc-emoji-panel[hidden] {display:none}
.lcc-emoji-panel button {background:transparent;padding:5px;font-size:19px}
.lcc-emoji-panel button:hover {background:#eee}
.lcc-file-selected {font-size:11px;color:#777;padding-left:32px;word-break:break-word;}
.lcc-disabled {margin:0;padding:6px 18px;background:#fff4f2;color:#9b3b29;font-size:12px;}
.lcc-notice {position:absolute;top:70px;left:50%;transform:translateX(-50%);z-index:5;padding:10px 16px;background:#262626;color:#fff;font-size:12px;box-shadow:0 4px 20px #0002;max-width:90%;}
.lcc-error,.lcc-loading,.lcc-login {padding:28px;text-align:center;border:1px solid var(--lcc-border);background:var(--lcc-soft)}
.lcc-login a {color:var(--lcc-accent);text-decoration:underline}
.lcc-widget {position:fixed;bottom:25px;right:25px;z-index:99999;line-height:1.4}
.lcc-float-button {background:var(--lcc-accent)!important;color:white!important;padding:15px 22px!important;border-radius:40px!important;box-shadow:0 6px 25px #0003;font-size:14px!important;font-weight:600!important;position:relative}
.lcc-float-badge {position:absolute;top:-6px;right:-5px;background:#222;border-radius:15px;min-width:22px;height:22px;line-height:22px;text-align:center;font-size:11px;}
.lcc-widget-panel {position:absolute;bottom:70px;right:0;width:390px;max-width:calc(100vw - 26px);background:white;box-shadow:0 12px 50px rgba(0,0,0,.22);border:1px solid var(--lcc-border);}
.lcc-widget-panel[hidden] {display:none}
.lcc-widget-header {padding:12px 14px;background:#181818;display:flex;align-items:center;justify-content:space-between;color:white}
.lcc-widget-header strong {font-size:13px;color:#fff}
.lcc-widget-close {background:transparent!important;color:white!important;font-size:24px!important;line-height:1!important}
.lcc-app-widget .lcc-shell {height:440px;min-height:0;max-height:none;border:none;box-shadow:none;}
.lcc-app-widget .lcc-side {width:130px;flex-basis:130px;}
.lcc-app-widget .lcc-sidebar-header {padding:12px 7px;font-size:10px;letter-spacing:.01em;}
.lcc-app-widget .lcc-sidebar-header span {display:none}
.lcc-app-widget .lcc-tabs {margin:0 3px 5px;gap:0}
.lcc-app-widget .lcc-tabs button {font-size:10px;padding:7px 2px}
.lcc-app-widget .lcc-chat-row {padding:6px;gap:5px;min-height:46px;}
.lcc-app-widget .lcc-chat-row .lcc-row-body strong {font-size:11px}
.lcc-app-widget .lcc-chat-row .lcc-row-body small {display:none}
.lcc-app-widget .lcc-avatar, .lcc-app-widget .lcc-avatar img {width:23px;height:23px;flex-basis:23px}
.lcc-app-widget .lcc-room-symbol {font-size:17px;width:16px}
.lcc-app-widget .lcc-side-foot {padding:8px 3px}
.lcc-app-widget .lcc-side-foot button {font-size:10px}
.lcc-app-widget .lcc-discussion-head {height:45px;flex-basis:45px;padding:0 10px}
.lcc-app-widget .lcc-discussion-title {font-size:12px}
.lcc-app-widget .lcc-small-btn {font-size:10px!important;padding:5px!important}
.lcc-app-widget .lcc-conversation-scroll {padding:9px 7px}
.lcc-app-widget .lcc-message-list {gap:9px}
.lcc-app-widget .lcc-message {max-width:100%;gap:5px}
.lcc-app-widget .lcc-message-avatar, .lcc-app-widget .lcc-message-avatar img {width:18px;height:18px;flex:0 0 18px}
.lcc-app-widget .lcc-message-bubble {padding:7px;min-width:50px;}
.lcc-app-widget .lcc-message-meta {gap:4px;flex-wrap:wrap}
.lcc-app-widget .lcc-message-meta strong {font-size:10px}
.lcc-app-widget .lcc-message-meta time {font-size:9px}
.lcc-app-widget .lcc-message-text {font-size:11px}
.lcc-app-widget .lcc-composer {padding:7px 5px}
.lcc-app-widget .lcc-compose-row {gap:3px}
.lcc-app-widget .lcc-compose-row textarea {height:39px;min-height:39px;padding:5px!important;font-size:11px!important;}
.lcc-app-widget .lcc-emoji-toggle {font-size:16px!important;flex:0 0 16px}
.lcc-app-widget .lcc-upload {font-size:14px;width:18px}
.lcc-app-widget .lcc-send {font-size:10px!important;padding:10px 5px!important}
.lcc-app-widget .lcc-emoji-panel {grid-template-columns:repeat(6,1fr)}
.lcc-widget-link {display:block;text-align:center;padding:9px!important;color:var(--lcc-accent)!important;text-decoration:none!important;font-size:12px;border-top:1px solid var(--lcc-border)}
@media (max-width:700px) {
 .lcc-app-main .lcc-shell {height:650px;max-height:79vh;min-height:450px;position:relative}
 .lcc-app-main .lcc-side {position:absolute;top:0;left:0;bottom:0;z-index:3;transform:translateX(-101%);box-shadow:4px 0 12px #0001;transition:transform .2s}
 .lcc-app-main.lcc-mobile-nav .lcc-side {transform:translateX(0)}
 .lcc-mobile-menu {display:block}
 .lcc-app-main .lcc-discussion-head {padding:0 10px}
 .lcc-message {max-width:95%}
 .lcc-conversation-scroll {padding:12px 8px}
 .lcc-compose-row {gap:4px}
 .lcc-send {padding:12px 8px!important}
 .lcc-widget {bottom:12px;right:12px}
 .lcc-widget-panel {bottom:60px}
}
@media (max-width:400px) {
 .lcc-app-widget .lcc-side {width:113px;flex-basis:113px}
 .lcc-widget-panel {width:calc(100vw - 24px)}
}
