[data-staff-assistant] {
    --sa-ink:#183246;
    --sa-accent:#127b7b;
    --sa-line:#dde6ec;
    --sa-soft:#f3f7f9;
    color:var(--sa-ink);
    font-size:14px
}
[data-staff-assistant] [hidden] {
    display:none!important
}
.sa-launcher {
    position:fixed;
    bottom:24px;
    right:24px;
    z-index:1055;
    border:0;
    border-radius:28px;
    padding:13px 21px;
    background:#163b50;
    color:white;
    box-shadow:0 5px 22px #153c5040;
    font-weight:650;
    display:flex;
    gap:9px;
    align-items:center
}
.sa-launcher:hover {
    background:#127b7b
}
.sa-panel {
    position:fixed;
    bottom:86px;
    right:24px;
    width:440px;
    height:min(740px,calc(100dvh - 112px));
    z-index:1056;
    background:#fff;
    border:1px solid var(--sa-line);
    border-radius:16px;
    box-shadow:0 18px 80px #102d4b40;
    display:flex;
    flex-direction:column;
    overflow:hidden
}
.sa-panel.sa-expanded {
    inset:12px;
    width:auto;
    height:auto;
    border-radius:12px
}
.sa-header {
    padding:15px 18px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:#163b50;
    color:white;
    gap:8px
}
.sa-header strong {
    font-size:16px
}
.sa-header small {
    display:block;
    color:#d1e2e9;
    font-size:11px;
    margin-top:4px
}
.sa-header-actions {
    display:flex;
    gap:6px
}
.sa-header button {
    background:transparent;
    color:white;
    border:1px solid #ffffff30;
    border-radius:7px;
    width:32px;
    height:32px
}
.sa-mode-note {
    padding:6px 14px;
    background:#fff7e9;
    color:#79551e;
    font-size:11px;
    border-bottom:1px solid #eee5d4
}
.sa-workspace {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    min-height:0;
    flex:1
}
.sa-expanded .sa-workspace {
    grid-template-columns:235px minmax(0,1fr) 380px
}
.sa-results,.sa-case-pane {
    display:none;
    min-width:0;
    min-height:0
}
.sa-expanded .sa-results {
    display:flex;
    flex-direction:column;
    border-right:1px solid var(--sa-line);
    background:#f8fafb
}
.sa-expanded .sa-case-pane {
    display:flex;
    flex-direction:column;
    background:#eff3f6
}
.sa-chat-pane {
    display:flex;
    flex-direction:column;
    min-width:0;
    min-height:0;
    border-left:1px solid var(--sa-line)
}
.sa-pane-title {
    padding:12px 14px;
    border-bottom:1px solid var(--sa-line);
    display:flex;
    gap:8px;
    justify-content:space-between;
    align-items:center;
    font-size:12px
}
.sa-pane-title a {
    font-size:11px
}
.sa-worklist {
    overflow:auto;
    flex:1;
    padding:9px
}
.sa-work-item {
    display:block;
    width:100%;
    text-align:left;
    padding:12px;
    border:1px solid var(--sa-line);
    border-radius:9px;
    background:white;
    margin-bottom:8px;
    color:var(--sa-ink)
}
.sa-work-item.is-selected {
    border-color:var(--sa-accent);
    box-shadow:inset 3px 0 var(--sa-accent)
}
.sa-work-item.is-skipped {
    opacity:.5
}
.sa-work-item strong,.sa-work-item small {
    display:block
}
.sa-work-item strong {
    font-size:12px;
    margin:5px 0
}
.sa-work-item small {
    font-size:11px;
    color:#5b6e7b;
    line-height:1.5
}
.sa-work-item .sa-reason {
    margin-top:7px;
    color:#127b7b
}
.sa-next-controls {
    padding:9px;
    display:flex;
    gap:6px;
    flex-wrap:wrap
}
.sa-next-controls button,.sa-conversation-controls button,.sa-proposal button,.sa-pane-links button {
    border:1px solid var(--sa-line);
    background:white;
    border-radius:6px;
    padding:6px 9px;
    color:var(--sa-ink);
    font-size:11px
}
.sa-coverage {
    font-size:10px;
    padding:0 12px;
    color:#6b7f8d
}
.sa-case-host {
    overflow:auto;
    flex:1;
    padding:12px;
    min-height:0
}
.sa-case-placeholder {
    display:grid;
    place-content:center;
    min-height:65vh;
    text-align:center;
    color:#718493;
    line-height:1.8
}
.sa-case-placeholder i {
    font-size:35px
}
.sa-case-host .queue-detail-grid {
    display:block!important;
    min-width:0
}
.sa-case-host .queue-detail-sidebar,.sa-case-host [data-queue-sidebar] {
    display:none!important
}
.sa-case-host .queue-detail-conversation {
    min-width:0
}
.sa-case-host .queue-detail-reply-card {
    position:relative!important;
    bottom:auto!important;
    max-height:none!important
}
.sa-conversation-controls {
    display:flex;
    gap:8px;
    padding:9px 12px;
    border-bottom:1px solid var(--sa-line)
}
.sa-conversation-controls select {
    flex:1;
    min-width:0;
    background:white;
    border:1px solid var(--sa-line);
    border-radius:6px;
    padding:5px;
    font-size:11px;
    color:var(--sa-ink)
}
.sa-messages {
    flex:1;
    overflow:auto;
    padding:18px 15px;
    scroll-behavior:smooth
}
.sa-welcome {
    padding:12px 2px
}
.sa-welcome h2 {
    font-size:23px;
    font-weight:650;
    line-height:1.3;
    letter-spacing:-.5px;
    margin:0 0 10px
}
.sa-welcome p {
    font-size:12px;
    color:#6c7e89;
    line-height:1.6
}
.sa-shortcuts {
    display:grid;
    gap:8px;
    margin-top:20px
}
.sa-shortcuts button {
    background:#f6f9fb;
    border:1px solid var(--sa-line);
    border-radius:9px;
    padding:12px;
    text-align:left;
    color:var(--sa-ink);
    font-size:12px;
    display:flex;
    justify-content:space-between
}
.sa-shortcuts button:hover {
    border-color:var(--sa-accent)
}
.sa-message {
    margin-bottom:16px;
    line-height:1.65;
    font-size:12px;
    white-space:pre-wrap;
    overflow-wrap:anywhere
}
.sa-message.sa-user {
    background:#edf5f5;
    border:1px solid #d8e9e8;
    border-radius:10px;
    padding:11px 13px;
    margin-left:22px
}
.sa-message.sa-assistant {
    padding:0 2px
}
.sa-message-label {
    font-size:10px;
    color:#657c89;
    font-weight:650;
    display:block;
    margin-bottom:5px
}
.sa-message a {
    color:#08777b;
    text-decoration:underline
}
.sa-progress {
    font-size:11px;
    padding:0 14px;
    color:#127b7b;
    min-height:18px
}
.sa-error {
    font-size:12px;
    background:#fff1ed;
    color:#9d3c2a;
    padding:10px 14px;
    white-space:pre-wrap
}
.sa-composer {
    margin:9px 12px 0;
    border:1px solid #c9d7e0;
    border-radius:10px;
    padding:9px;
    background:white
}
.sa-composer:focus-within {
    border-color:var(--sa-accent);
    box-shadow:0 0 0 2px #127b7b15
}
.sa-composer textarea {
    width:100%;
    max-height:130px;
    resize:vertical;
    border:0;
    outline:none;
    font-size:12px;
    background:transparent;
    color:var(--sa-ink)
}
.sa-composer-controls {
    display:flex;
    align-items:center;
    gap:7px
}
.sa-composer-controls [type=submit] {
    margin-left:auto;
    background:#127b7b;
    color:white;
    border:0;
    border-radius:7px;
    padding:7px 11px;
    font-size:11px
}
.sa-composer-controls button[disabled] {
    opacity:.5
}
.sa-upload {
    cursor:pointer;
    display:flex;
    gap:4px;
    font-size:11px;
    color:#5d7483;
    align-items:center
}
.sa-composer-controls [data-sa-cancel] {
    font-size:11px;
    border:1px solid var(--sa-line);
    border-radius:6px;
    background:white
}
.sa-footer-note {
    font-size:9px;
    text-align:center;
    color:#748794;
    padding:7px 9px;
    margin:0
}
.sa-evidence {
    display:flex;
    gap:5px;
    flex-wrap:wrap;
    padding:0 12px
}
.sa-evidence label {
    font-size:10px;
    padding:4px 7px;
    background:#f0f6f9;
    border-radius:5px;
    max-width:100%;
    overflow-wrap:anywhere
}
.sa-proposal {
    margin:12px 0;
    padding:11px;
    border:1px solid #bddbd8;
    border-radius:10px;
    background:#f7fbfa;
    font-size:12px;
    white-space:normal
}
.sa-proposal summary {
    cursor:pointer;
    font-weight:650;
    line-height:1.6
}
.sa-proposal dl {
    font-size:10px;
    margin:10px 0
}
.sa-proposal dt {
    color:#6c8088;
    font-weight:normal
}
.sa-proposal dd {
    margin-bottom:5px;
    overflow-wrap:anywhere
}
.sa-proposal textarea {
    width:100%;
    min-height:150px;
    font-size:12px;
    line-height:1.6;
    border:1px solid var(--sa-line);
    border-radius:6px;
    padding:8px;
    color:var(--sa-ink);
    background:white
}
.sa-proposal-actions {
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:9px
}
.sa-proposal [data-approve] {
    background:#127b7b;
    color:white;
    border-color:#127b7b
}
.sa-proposal button:disabled {
    opacity:.45
}
.sa-proposal-state {
    font-size:10px;
    display:block;
    color:#527c73;
    margin-top:6px
}
.sa-muted {
    font-size:12px;
    color:#6f8491;
    padding:10px
}
.sa-pane-links {
    margin:10px 0
}
.sa-research {
    padding:10px;
    border:1px solid var(--sa-line);
    border-radius:8px;
    margin:10px 0;
    font-size:11px
}
.sa-research a {
    display:block;
    margin:5px 0;
    overflow-wrap:anywhere
}
.sa-mobile-tabs {
    display:none
}
.sa-panel button:focus-visible,.sa-panel a:focus-visible,.sa-launcher:focus-visible {
    outline:3px solid #65bcb6;
    outline-offset:2px
}
.sa-case-host .queue-detail-sidebar-rail {
    display:none!important
}
.sa-case-host .queue-detail-reply-card {
    position:sticky!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    bottom:0!important;
    z-index:3!important
}
.sa-case-host .queue-detail-conversation {
    padding-bottom:0!important
}
@media(max-width:1190px) {
    .sa-expanded .sa-workspace {
        grid-template-columns:195px minmax(0,1fr) 330px
    }
    .sa-work-item {
        padding:9px
    }
    .sa-messages {
        padding:12px
    }
}
@media(max-width:950px) {
    .sa-panel {
        right:10px;
        width:min(440px,calc(100vw - 20px));
        bottom:76px
    }
    .sa-panel.sa-expanded {
        inset:5px
    }
    .sa-expanded .sa-workspace {
        display:block
    }
    .sa-expanded .sa-chat-pane,.sa-expanded .sa-results,.sa-expanded .sa-case-pane {
        height:100%;
        display:none
    }
    .sa-expanded [data-pane=chat] .sa-chat-pane {
        display:flex
    }
    .sa-expanded [data-pane=results] .sa-results {
        display:flex
    }
    .sa-expanded [data-pane=case] .sa-case-pane {
        display:flex
    }
    .sa-expanded .sa-mobile-tabs {
        display:flex;
        border-bottom:1px solid var(--sa-line)
    }
    .sa-mobile-tabs button {
        flex:1;
        padding:8px;
        border:0;
        background:#f3f7f9;
        font-size:12px
    }
    .sa-launcher {
        bottom:18px;
        right:12px
    }
    .sa-case-host .queue-detail-grid {
        padding:0
    }
    .sa-case-placeholder {
        min-height:50vh
    }
}
