.public-live-chat { position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 200; font-family: inherit; }
.public-live-chat-toggle { display: grid; width: 3.5rem; height: 3.5rem; padding: 0; place-items: center; border: 0; border-radius: 50%; background: linear-gradient(135deg,var(--primary),var(--secondary)); color: var(--bg); box-shadow: 0 15px 40px rgba(var(--secondary-rgb), .42); cursor: pointer; }
.public-live-chat-toggle svg { width: 1.45rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.public-live-chat-panel { position: absolute; right: 0; bottom: 4.25rem; display: flex; width: min(23rem,calc(100vw - 1.5rem)); max-height: min(38rem,calc(100dvh - 7rem)); overflow: hidden; flex-direction: column; border: 1px solid rgba(var(--primary-strong-rgb), .22); border-radius: 1rem; background: rgb(var(--bg-rgb)); color: var(--text); box-shadow: 0 24px 70px rgba(0,0,0,.58); }
.public-live-chat-panel[hidden] { display: none; }
.public-live-chat-panel > header { display: flex; align-items: center; justify-content: space-between; padding: .9rem 1rem; border-bottom: 1px solid var(--line); background: rgba(var(--primary-rgb), .08); }
.public-live-chat-panel header strong,.public-live-chat-panel header small { display: block; }.public-live-chat-panel header small { margin-top:.12rem;color:var(--muted);font-size:.65rem }.public-live-chat-panel header button{border:0;background:transparent;color:var(--muted);font-size:1.4rem;cursor:pointer}
.public-live-chat-notice { padding: .65rem .85rem; background: rgba(var(--warning-rgb), .08); color: var(--warning-soft); font-size: .68rem; line-height: 1.45; }.public-live-chat-notice a{color:inherit;text-decoration:underline}

.public-live-chat-panel:has(.public-live-chat-conversation:not([hidden])) .public-live-chat-notice{display:none}
.public-live-chat-start { display:grid;gap:.7rem;padding:.9rem;overflow-y:auto }.public-live-chat-start label{display:grid;gap:.3rem;color:var(--muted);font-size:.68rem}.public-live-chat-start input,.public-live-chat-start textarea{width:100%;padding:.65rem;border:1px solid var(--line);border-radius:.55rem;background:rgb(var(--bg-rgb));color:var(--text);font:inherit}.public-live-chat-start textarea{min-height:5rem;resize:vertical}.public-live-chat-start button{padding:.7rem;border:0;border-radius:.6rem;font-weight:700}
.public-live-chat-start[hidden],.public-live-chat-new[hidden],.public-live-chat-ended[hidden],.public-live-chat-conversation form[hidden],.public-live-chat-status button[hidden]{display:none!important}
.public-live-chat-conversation { display:flex;min-height:0;flex:1;flex-direction:column }.public-live-chat-conversation[hidden]{display:none}.public-live-chat-status{padding:.45rem .8rem;border-bottom:1px solid var(--line);color:var(--muted);font-size:.65rem}.public-live-chat-messages{display:flex;height:12rem;min-height:0;overflow-y:auto;flex:1 1 auto;flex-direction:column;gap:.55rem;padding:.8rem}.public-live-message{max-width:85%;padding:.55rem .65rem;border-radius:.7rem;background:rgba(var(--primary-strong-rgb), .09)}.public-live-message.is-visitor{align-self:flex-end;background:rgba(var(--primary-rgb), .18)}.public-live-message strong,.public-live-message time{display:block;font-size:.58rem}.public-live-message time{color:var(--muted)}.public-live-message p{margin:.2rem 0 0;font-size:.72rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}

.public-live-chat-ended{display:grid;flex:0 0 auto;gap:.5rem;margin:.65rem;padding:.75rem;border:1px solid rgba(var(--primary-strong-rgb), .18);border-radius:.75rem;background:rgba(var(--bg-rgb), .92);text-align:center}
.public-live-chat-ended p{margin:0;color:var(--muted);font-size:.68rem}
.public-live-chat-new{padding:.6rem .75rem;border:0;border-radius:.55rem;background:var(--primary);color:var(--bg);font:inherit;font-weight:700;cursor:pointer}
.public-live-chat-new:hover{background:var(--primary-strong)}
.public-live-chat-status{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.public-live-chat-status button{padding:.25rem .45rem;border:1px solid rgba(252,165,165,.25);border-radius:.4rem;background:rgba(127,29,29,.14);color:#fca5a5;font-size:.6rem;cursor:pointer}
.public-live-message.is-system,.agent-live-message.is-system{align-self:center;width:calc(100% - 1rem);max-width:none;padding:.55rem .7rem;border:1px solid rgba(var(--primary-strong-rgb), .14);background:linear-gradient(90deg,transparent,rgba(var(--primary-rgb), .1),transparent);color:var(--primary-strong);text-align:center}.public-live-message.is-system strong,.agent-live-message.is-system strong{color:var(--primary-strong);text-transform:uppercase;letter-spacing:.08em}.public-live-message.is-system p,.agent-live-message.is-system p{margin-top:.3rem;color:var(--text)}

.agent-live-message.is-system > header{justify-content:center}
.public-live-chat-start,.public-live-chat-messages,.agent-live-inbox,.agent-live-messages,.agent-response-picker>div{scrollbar-width:thin;scrollbar-color:rgba(var(--primary-rgb), .65) rgba(var(--bg-rgb), .75)}
.public-live-chat-start::-webkit-scrollbar,.public-live-chat-messages::-webkit-scrollbar,.agent-live-inbox::-webkit-scrollbar,.agent-live-messages::-webkit-scrollbar,.agent-response-picker>div::-webkit-scrollbar{width:8px;height:8px}
.public-live-chat-start::-webkit-scrollbar-track,.public-live-chat-messages::-webkit-scrollbar-track,.agent-live-inbox::-webkit-scrollbar-track,.agent-live-messages::-webkit-scrollbar-track,.agent-response-picker>div::-webkit-scrollbar-track{background:rgba(var(--bg-rgb), .75);border-radius:999px}
.public-live-chat-start::-webkit-scrollbar-thumb,.public-live-chat-messages::-webkit-scrollbar-thumb,.agent-live-inbox::-webkit-scrollbar-thumb,.agent-live-messages::-webkit-scrollbar-thumb,.agent-response-picker>div::-webkit-scrollbar-thumb{border:2px solid rgba(var(--bg-rgb), .75);border-radius:999px;background:linear-gradient(var(--primary),var(--secondary))}
.public-live-chat-start::-webkit-scrollbar-thumb:hover,.public-live-chat-messages::-webkit-scrollbar-thumb:hover,.agent-live-inbox::-webkit-scrollbar-thumb:hover,.agent-live-messages::-webkit-scrollbar-thumb:hover,.agent-response-picker>div::-webkit-scrollbar-thumb:hover{background:var(--primary-strong)}
.public-live-chat-conversation form{display:grid;flex:0 0 auto;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;margin:.65rem;padding:.45rem;border:1px solid rgba(var(--primary-strong-rgb), .18);border-radius:.75rem;background:rgba(var(--bg-rgb), .92);box-shadow:inset 0 1px 0 rgba(var(--primary-strong-rgb), .04)}.public-live-chat-conversation textarea{min-height:2.8rem;max-height:7rem;padding:.6rem;border:0;outline:0;border-radius:.5rem;background:transparent;color:var(--text);resize:none}.public-live-chat-conversation form:focus-within{border-color:rgba(var(--primary-rgb), .55);box-shadow:0 0 0 3px rgba(var(--primary-rgb), .09)}.public-live-chat-conversation form button{align-self:stretch;padding:.55rem .75rem;border:0;border-radius:.55rem;background:var(--primary);color:var(--bg);font-weight:700}.public-live-chat-error{padding:.65rem;color:#fca5a5;font-size:.68rem}
.public-live-chat-confirm{position:absolute;z-index:5;right:.7rem;bottom:.7rem;left:.7rem;padding:.85rem;border:1px solid rgba(252,165,165,.28);border-radius:.75rem;background:rgba(var(--bg-rgb), .98);box-shadow:0 14px 40px rgba(0,0,0,.55)}.public-live-chat-confirm[hidden]{display:none}.public-live-chat-confirm strong{font-size:.78rem}.public-live-chat-confirm p{margin:.3rem 0 .75rem;color:var(--muted);font-size:.68rem}.public-live-chat-confirm>div{display:flex;justify-content:flex-end;gap:.45rem}.public-live-chat-confirm button{padding:.45rem .65rem;border:1px solid var(--line);border-radius:.5rem;background:rgb(var(--bg-rgb));color:var(--text);cursor:pointer}.public-live-chat-confirm button.is-danger{border-color:rgba(252,165,165,.3);background:rgba(127,29,29,.22);color:#fca5a5}
.agent-live-shell{display:grid;grid-template-columns:17rem minmax(0,1fr);height:min(46rem,calc(100dvh - 12rem));min-height:35rem;overflow:hidden;border-radius:1rem}.agent-live-inbox{min-width:0;overflow-y:auto;border-right:1px solid var(--line);background:rgba(var(--bg-rgb), .7)}.agent-live-inbox>header{padding:1rem;border-bottom:1px solid var(--line)}.agent-live-inbox h2,.agent-live-header h2{margin:.2rem 0 0}.agent-live-inbox nav{display:grid;padding:.5rem}.agent-live-conversation{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.7rem;border-radius:.65rem;color:var(--text)}.agent-live-conversation:hover,.agent-live-conversation.is-active{background:rgba(var(--primary-rgb), .12)}.agent-live-conversation span{min-width:0}.agent-live-conversation strong,.agent-live-conversation small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-live-conversation strong{font-size:.73rem}.agent-live-conversation small{margin-top:.2rem;color:var(--muted);font-size:.6rem}.status-waiting{color:var(--warning);background:rgba(var(--warning-rgb),.12)}
.agent-live-main{display:flex;min-width:0;min-height:0;flex-direction:column}.agent-live-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid var(--line)}.agent-live-header p{margin:.2rem 0 0!important;font-size:.68rem!important}.agent-live-header-actions{display:flex;align-items:center;gap:.4rem}.agent-live-messages{display:flex;min-height:0;overflow-y:auto;flex:1;flex-direction:column;gap:.65rem;padding:1rem}.agent-live-message{max-width:78%;padding:.65rem .75rem;border-radius:.75rem;background:rgba(var(--primary-strong-rgb), .08)}.agent-live-message.is-agent{align-self:flex-end;background:rgba(var(--primary-rgb), .16)}.agent-live-message header{display:flex;gap:.45rem}.agent-live-message time{color:var(--muted);font-size:.58rem}.agent-live-message strong{font-size:.65rem}.agent-live-message p{margin:.25rem 0 0;color:var(--text);font-size:.75rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.agent-live-composer{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem;margin:.75rem;padding:.5rem;border:1px solid rgba(var(--primary-strong-rgb), .18);border-radius:.8rem;background:rgba(var(--bg-rgb), .92)}.agent-live-composer:focus-within{border-color:rgba(var(--primary-rgb), .55);box-shadow:0 0 0 3px rgba(var(--primary-rgb), .08)}.agent-live-composer textarea{min-height:3rem;padding:.65rem;border:0;outline:0;border-radius:.6rem;background:transparent;color:var(--text);resize:none}.agent-live-composer>button,.agent-response-picker>button{padding:.6rem .75rem;border:1px solid var(--line);border-radius:.6rem;background:rgb(var(--bg-rgb));color:var(--text);cursor:pointer}.agent-live-composer>button{border:0;background:var(--primary);color:var(--bg);font-weight:700}.agent-response-picker{position:relative}.agent-response-picker>div{position:absolute;left:0;bottom:3.4rem;z-index:20;display:grid;width:18rem;max-height:18rem;overflow-y:auto;padding:.5rem;border:1px solid var(--line);border-radius:.7rem;background:rgb(var(--bg-rgb));box-shadow:0 15px 40px #000}.agent-response-picker>div[hidden]{display:none}.agent-response-picker input{margin-bottom:.4rem;padding:.55rem;border:1px solid var(--line);border-radius:.45rem;background:rgb(var(--bg-rgb));color:var(--text)}.agent-response-picker div button{display:grid;grid-template-columns:5rem 1fr;gap:.4rem;padding:.5rem;border:0;border-radius:.45rem;background:transparent;color:var(--text);text-align:left;cursor:pointer}.agent-response-picker div button:hover{background:rgba(var(--primary-rgb), .1)}.agent-response-picker code{color:var(--primary-strong)}
.live-chat-view-tabs{display:flex;gap:.4rem;margin-bottom:.65rem}.live-chat-view-tabs a{padding:.5rem .75rem;border:1px solid var(--line);border-radius:.6rem;color:var(--muted);font-size:.7rem}.live-chat-view-tabs a:hover,.live-chat-view-tabs a.is-active{border-color:rgba(var(--primary-rgb), .45);background:rgba(var(--primary-rgb), .1);color:var(--primary-strong)}
.live-response-admin{margin-top:1rem}
.agent-response-picker>button small{margin-left:.35rem;padding:.12rem .3rem;border:1px solid rgba(var(--primary-strong-rgb), .18);border-radius:.3rem;color:var(--muted);font-size:.52rem;text-transform:uppercase}
@media(max-width:700px){.public-live-chat{right:.75rem;bottom:.75rem}.agent-live-shell{display:flex;height:auto;min-height:0;flex-direction:column}.agent-live-inbox{max-height:15rem;border-right:0;border-bottom:1px solid var(--line)}.agent-live-main{min-height:65dvh}.agent-live-header{align-items:flex-start;flex-direction:column}.agent-live-header-actions{width:100%;flex-wrap:wrap}.agent-live-composer{grid-template-columns:1fr auto}.agent-response-picker{grid-column:1/-1}.agent-response-picker>div{left:0;bottom:auto;top:3rem;width:min(18rem,calc(100vw - 3rem))}.live-response-form{grid-template-columns:1fr}.live-response-form textarea.form-field{grid-column:auto}.agent-live-message{max-width:90%}}

@media (max-width: 560px) {
    .public-live-chat { right: .75rem; bottom: .75rem; left: .75rem; }

    .public-live-chat-toggle {
        width: 3rem;
        height: 3rem;
        margin-left: auto;
    }

    .public-live-chat-panel {
        position: fixed;
        right: .75rem;
        left: .75rem;
        bottom: 4.5rem;
        width: auto;
        max-height: min(30rem, calc(100dvh - 7rem));
    }
}

@media (max-width: 380px) {
    .public-live-chat-panel { bottom: 4rem; max-height: calc(100dvh - 6rem); }
}

.live-response-admin { padding: 1rem 1.15rem; }
.live-response-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: 0; }
.live-response-heading h2 { margin: .15rem 0 0; }
.live-response-heading p { margin: .25rem 0 0; }
.live-response-admin-actions { display: flex; flex: 0 0 auto; align-items: center; gap: .5rem; }
.live-response-admin-actions button { white-space: nowrap; }
.live-response-admin-actions button span { display: grid; min-width: 1.2rem; height: 1.2rem; margin-left: .35rem; padding: 0 .3rem; place-items: center; border-radius: 999px; background: rgba(var(--primary-strong-rgb), .12); color: var(--primary-strong); font-size: .56rem; }
.live-response-field-hint { display: block; margin-top: .35rem; color: var(--muted); font-size: .62rem; }
.live-response-field-hint code { color: var(--primary-strong); }
#add-live-command textarea { min-height: 7rem; resize: vertical; }
#existing-live-commands { max-width: min(44rem, calc(100vw - 2rem)); }
#existing-live-commands .dashboard-modal-body { padding-bottom: .1rem; }
.live-response-list { display: grid; gap: .55rem; margin: 0; }
.live-response-item { overflow: hidden; padding: 0; border: 1px solid rgba(var(--primary-strong-rgb), .13); border-radius: .75rem; background: rgba(var(--bg-rgb), .34); transition: border-color .15s ease, background .15s ease; }
.live-response-item[open] { border-color: rgba(var(--primary-rgb), .35); background: rgba(var(--primary-rgb), .045); }
.live-response-item > summary { display: flex; min-height: 3.4rem; align-items: center; justify-content: space-between; gap: .8rem; padding: .7rem .8rem; cursor: pointer; list-style: none; }
.live-response-item > summary::-webkit-details-marker { display: none; }
.live-response-item > summary > span:first-child { display: flex; min-width: 0; align-items: center; gap: .65rem; }
.live-response-item > summary code { flex: 0 0 auto; padding: .25rem .42rem; border: 1px solid rgba(var(--primary-rgb), .2); border-radius: .42rem; background: rgba(var(--primary-rgb), .08); color: var(--primary-strong); font-size: .68rem; }
.live-response-item > summary strong { overflow: hidden; font-size: .75rem; text-overflow: ellipsis; white-space: nowrap; }
.live-response-item > summary .status-badge { float: none; flex: 0 0 auto; font-size: .56rem; }
.live-response-edit-form { gap: .8rem; padding: .9rem .8rem .45rem; border-top: 1px solid rgba(var(--primary-strong-rgb), .1); }
.live-response-edit-form textarea { min-height: 6rem; resize: vertical; }
.live-response-item-actions { display: flex !important; justify-content: flex-end; }
.live-response-delete-form { display: flex; justify-content: flex-end; margin: 0; padding: 0 .8rem .8rem; }
.live-response-item-actions .dashboard-action-button,
.live-response-delete-form .dashboard-action-button { padding: .48rem .65rem; font-size: .64rem; }
.live-response-empty { display: grid; gap: .25rem; min-height: 8rem; place-items: center; align-content: center; }
.live-response-empty strong { color: var(--text); font-size: .82rem; }
.live-response-empty span { color: var(--muted); font-size: .68rem; }

@media (max-width: 700px) {
    .live-response-heading { align-items: stretch; flex-direction: column; }
    .live-response-admin-actions { display: grid; grid-template-columns: 1fr 1fr; }
    .live-response-admin-actions button { justify-content: center; }
}

@media (max-width: 430px) {
    .live-response-admin-actions { grid-template-columns: 1fr; }
    .live-response-item > summary { align-items: flex-start; flex-direction: column; }
    .live-response-item > summary strong { white-space: normal; }
}
