:root {
    --tg-petrol: #183640;
    --tg-petrol-deep: #0b2d3a;
    --tg-blue: #2388dc;
    --tg-cyan: #49b8f2;
    --tg-ice: #eef8fb;
    --tg-sand: #f6f2e9;
    --tg-surface-muted: #f4f8fa;
    --tg-border: #d9e6ea;
    --tg-text-muted: #64767d;
    --tg-success: #14b378;
    --tg-shadow: 0 0.7rem 2.2rem rgba(11, 45, 58, 0.075);
}

html {
    min-width: 320px;
    background: var(--tg-surface-muted);
}

html, body {
    margin: 0;
    min-height: 100%;
    max-width: 100%;
    overflow-x: clip;
    color: var(--tg-petrol);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.5;
}

*, *::before, *::after {
    box-sizing: border-box;
}

button, input, select, textarea {
    font: inherit;
    max-width: 100%;
}

img, svg, video, canvas {
    max-width: 100%;
}

p, span, strong, small, label, h1, h2, h3 {
    overflow-wrap: anywhere;
}

@supports (padding: max(0px)) {
    body {
        padding-left: env(safe-area-inset-left);
        padding-right: env(safe-area-inset-right);
    }
}

button, a {
    -webkit-tap-highlight-color: transparent;
}

button {
    cursor: pointer;
}

a, .btn-link {
    color: var(--tg-blue);
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

h1:focus {
    outline: none;
}

:focus-visible {
    outline: 3px solid rgba(73, 184, 242, 0.75);
    outline-offset: 3px;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}
.app-update-notice { position: sticky; top: 0; z-index: 1100; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: calc(.8rem + env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) .8rem max(1rem, env(safe-area-inset-left)); color: #0b2d3a; background: #e4f5ff; border-bottom: 2px solid #218ee5; overflow-wrap: anywhere; }
.app-update-notice > div { min-width: 0; }
.app-update-notice strong { display: block; }
.app-update-notice p { margin: .2rem 0 0; font-size: .85rem; }
.app-update-notice p:empty { display: none; }
.app-update-notice button { flex-shrink: 0; min-height: 2.75rem; padding: .65rem 1rem; border: 1px solid #218ee5; border-radius: .7rem; color: white; background: #218ee5; font-weight: 800; }
.app-update-notice button:focus-visible { outline: 3px solid #0b2d3a; outline-offset: 2px; }
.app-update-notice button:disabled { opacity: .65; }
@media(max-width: 600px) { .app-update-notice { align-items: stretch; flex-direction: column; gap: .6rem; } .app-update-notice button { width: 100%; } }

/* Shared billing screens: follow existing work surfaces and safe-area action bars. */
.billing-page { width:100%; max-width:68rem; min-width:0; }
.billing-page header { margin-bottom:1.3rem; }
.billing-page h1 { margin:.25rem 0; font-size:clamp(1.8rem,3vw,2.55rem); letter-spacing:-.045em; }
.billing-page h2 { margin:.25rem 0 .65rem; font-size:1.2rem; }
.billing-page .eyebrow { color:var(--tg-blue); font-size:.7rem; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.billing-page p { color:var(--tg-text-muted); overflow-wrap:anywhere; }
.billing-panel { min-width:0; margin-bottom:1rem; padding:1.25rem; border:1px solid var(--tg-border); border-radius:1rem; background:white; box-shadow:var(--tg-shadow); }
.billing-page form,.billing-page label { display:grid; gap:.5rem; min-width:0; }
.billing-page label { font-weight:750; font-size:.85rem; }
.billing-page input { min-width:0; width:100%; max-width:100%; box-sizing:border-box; min-height:2.8rem; padding:.65rem .8rem; border:1px solid var(--tg-border); border-radius:.7rem; background:white; color:var(--tg-petrol); font:inherit; font-size:1rem; }
.billing-page input:focus-visible { outline:2px solid var(--tg-blue); outline-offset:2px; }
.billing-page select { min-width:0; width:100%; max-width:100%; box-sizing:border-box; min-height:2.8rem; padding:.65rem .8rem; border:1px solid var(--tg-border); border-radius:.7rem; background:white; color:var(--tg-petrol); font:inherit; font-size:1rem; }
.billing-page select:focus-visible { outline:2px solid var(--tg-blue); outline-offset:2px; }
.billing-page .billing-link { display:inline-flex; align-items:center; min-height:2.8rem; padding:.6rem .85rem; box-sizing:border-box; max-width:100%; border:1px solid var(--tg-border); border-radius:.75rem; color:var(--tg-petrol); background:white; text-decoration:none; font-weight:750; overflow-wrap:anywhere; }
.billing-page .billing-link:focus-visible { outline:3px solid var(--tg-blue); outline-offset:2px; }
.billing-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); min-width:0; gap:1rem; border:0; padding:0; margin:0; }
.billing-page .billing-check { display:flex; align-items:center; gap:.6rem; }
.billing-page .billing-check input { width:1.4rem; min-height:1.4rem; flex-shrink:0; }
.billing-page button { min-height:2.8rem; padding:.65rem 1rem; border:1px solid var(--tg-blue); border-radius:.75rem; background:var(--tg-blue); color:white; font-weight:800; overflow-wrap:anywhere; }
.billing-page button:disabled { opacity:.6; }
.billing-page button:focus-visible { outline:3px solid var(--tg-petrol); outline-offset:2px; }
.billing-page .billing-secondary { color:var(--tg-petrol); background:white; border-color:var(--tg-border); }
.billing-actions { display:flex; flex-wrap:wrap; gap:.6rem; justify-content:flex-end; }
.billing-row { min-width:0; padding:1rem 0; border-top:1px solid var(--tg-border); overflow-wrap:anywhere; }
.billing-page .billing-error { padding:.75rem; background:#fff0f2; border:1px solid #f5c8cf; border-radius:.7rem; color:#a61e32; }
.billing-page .billing-success { padding:.75rem; background:#e5f8ef; border:1px solid #b5ead5; border-radius:.7rem; color:#087c56; }
/* Read-only support screens share one calm control-card style. Customer/billing forms are unaffected. */
.billing-page.support-page { font-family:inherit; font-size:1rem; font-weight:400; line-height:1.5; }
.support-page .support-controls { display:flex; flex-direction:column; gap:1.25rem; box-sizing:border-box; max-width:100%; }
.support-page .support-controls form { gap:1rem; margin:0; }
.billing-page.support-page label { font-family:inherit; font-size:1rem; font-weight:500; line-height:1.5; }
.billing-page.support-page input,.billing-page.support-page select { font-family:inherit; font-size:1rem; font-weight:400; line-height:1.5; min-height:3rem; }
.billing-page.support-page button,.billing-page.support-page .billing-link { font-family:inherit; font-size:1rem; font-weight:500; line-height:1.5; }
.support-page .support-controls > .billing-link { align-self:flex-start; margin:0; }
.support-page .support-controls p { margin:0; font-size:1rem; font-weight:400; line-height:1.5; }
.billing-page.support-page h2 { font-weight:600; overflow-wrap:anywhere; }
@media(max-width:680px) {
    .billing-fields { grid-template-columns:minmax(0,1fr); }
    .billing-panel { padding:1rem; }
    .billing-actions { position:sticky; bottom:0; z-index:4; padding:.65rem 0 calc(.65rem + env(safe-area-inset-bottom)); background:rgba(255,255,255,.97); border-top:1px solid var(--tg-border); }
    .billing-actions button { flex:1 1 100%; width:100%; }
}

/* Shared customer/support Caller presentation. */
.caller-surface .caller-history-note { display:flex; align-items:flex-start; gap:.55rem; margin:0 0 1rem; color:var(--tg-text-muted); font-size:.85rem; line-height:1.5; }
.caller-surface .caller-history-note span { min-width:0; overflow-wrap:anywhere; }
.caller-surface .caller-history-note svg { flex:0 0 1.15rem; width:1.15rem; height:1.15rem; margin-top:.1rem; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.caller-surface .calls-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.4rem; }
.caller-surface .calls-heading h1 { margin: .24rem 0 .25rem; font-size: clamp(1.8rem, 3vw, 2.55rem); font-weight: 860; letter-spacing: -.045em; }
.caller-surface .calls-heading p { margin: 0; color: var(--tg-text-muted); }
.caller-surface .eyebrow { color: var(--tg-blue); font-size: .72rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.caller-surface .calls-actions { display: flex; align-items: center; gap: .7rem; }
.caller-surface .preview-badge, .caller-surface .live-badge { min-height: 2.55rem; display: inline-flex; align-items: center; padding: .55rem .8rem; border-radius: .72rem; font-size: .76rem; font-weight: 750; }
.caller-surface .preview-badge { color: #7f5a05; background: #fff3cd; border: 1px solid #f2d88d; }
.caller-surface .live-badge { gap: .45rem; color: #087c56; background: #e5f8ef; border: 1px solid #bdebd8; }
.caller-surface .live-badge span { width: .5rem; height: .5rem; background: var(--tg-success); border-radius: 50%; }
.caller-surface .live-badge.is-reconnecting { color: #8a650b; background: #fff6dd; border-color: #f0dda5; }
.caller-surface .live-badge.is-reconnecting span { background: #e3a725; }
.caller-surface .sound-button { min-height: 2.55rem; display: inline-flex; align-items: center; gap: .45rem; padding: .55rem .8rem; color: var(--tg-text-muted); background: white; border: 1px solid var(--tg-border); border-radius: .72rem; font-size: .76rem; font-weight: 780; }
.caller-surface .sound-button svg { width: 1rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.caller-surface .sound-button.is-on { color: #087c56; background: #e5f8ef; border-color: #bdebd8; }
.caller-surface .call-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; padding: .65rem; background: white; border: 1px solid var(--tg-border); border-radius: 1rem; box-shadow: var(--tg-shadow); }
.caller-surface .filter-tabs, .caller-surface .selectors { display: flex; align-items: center; gap: .45rem; }
.caller-surface .filter-tabs button, .caller-surface .selectors select { min-height: 2.4rem; border-radius: .7rem; font-size: .76rem; font-weight: 750; }
.caller-surface .filter-tabs button { display: inline-flex; align-items: center; gap: .45rem; padding: .45rem .75rem; color: var(--tg-text-muted); background: transparent; border: 0; }
.caller-surface .filter-tabs button span { min-width: 1.35rem; height: 1.35rem; display: grid; place-items: center; background: var(--tg-surface-muted); border-radius: 999px; font-size: .65rem; }
.caller-surface .filter-tabs button.active { color: white; background: var(--tg-petrol-deep); }
.caller-surface .filter-tabs button.active span { color: var(--tg-petrol-deep); background: var(--tg-cyan); }
.caller-surface .selectors select { padding: .45rem 2rem .45rem .7rem; color: var(--tg-petrol); background: white; border: 1px solid var(--tg-border); }
.caller-surface .action-error { margin-bottom: 1rem; padding: .75rem 1rem; color: #9d2332; background: #fff0f2; border: 1px solid #f4c5cb; border-radius: .8rem; font-size: .8rem; font-weight: 700; }
.caller-surface .connection-warning { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; margin-bottom: 1rem; padding: .85rem 1rem; color: #785706; background: #fff6dd; border: 1px solid #f0dda5; border-radius: .8rem; font-size: .8rem; overflow-wrap: anywhere; }
.caller-surface .connection-warning span { flex: 1 1 15rem; min-width: 0; }
.caller-surface .connection-warning button { min-height: 2.75rem; padding: .6rem .85rem; max-width: 100%; color: var(--tg-petrol); background: white; border: 1px solid var(--tg-border); border-radius: .7rem; font-weight: 750; }
.caller-surface .primary-action:disabled, .caller-surface .more-action:disabled, .caller-surface .assignment-panel button:disabled { opacity: .55; cursor: not-allowed; }
.caller-surface .call-board { display: grid; gap: .8rem; }
.caller-surface .call-card { min-height: 7.2rem; display: grid; grid-template-columns: auto minmax(10rem, 1.2fr) minmax(5rem, .5fr) minmax(10rem, .8fr) auto; align-items: center; gap: 1rem; padding: 1rem; position: relative; overflow: hidden; background: white; border: 1px solid var(--tg-border); border-radius: 1rem; box-shadow: var(--tg-shadow); }
.caller-surface .call-card::before { content: ""; width: .28rem; position: absolute; inset: 0 auto 0 0; background: var(--tg-blue); }
.caller-surface .call-card.is-urgent::before { background: #e74455; }
.caller-surface .call-card.is-waiting::before { background: #f3a72f; }
.caller-surface .call-card.is-done { opacity: .72; }
.caller-surface .call-card.is-done::before { background: var(--tg-success); }
.caller-surface .call-type-icon { width: 3rem; height: 3rem; display: grid; place-items: center; color: var(--tg-blue); background: var(--tg-ice); border-radius: .9rem; }
.caller-surface .is-urgent .call-type-icon { color: #d93649; background: #fff0f2; }
.caller-surface .is-waiting .call-type-icon { color: #c77800; background: #fff6e7; }
.caller-surface .call-type-icon svg, .caller-surface .empty-bell svg { width: 1.45rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.caller-surface .call-identity span { color: var(--tg-text-muted); font-size: .66rem; font-weight: 750; text-transform: uppercase; letter-spacing: .08em; }
.caller-surface .call-identity h2 { margin: .1rem 0 0; font-size: 1.18rem; font-weight: 850; }
.caller-surface .call-identity p { margin: .05rem 0 0; color: var(--tg-text-muted); font-size: .76rem; }
.caller-surface .waiting-time { display: grid; grid-template-columns: auto auto; align-items: baseline; width: fit-content; }
.caller-surface .waiting-time strong { color: var(--tg-petrol); font-size: 1.8rem; line-height: 1; }
.caller-surface .is-urgent .waiting-time strong { color: #d93649; }
.caller-surface .is-waiting .waiting-time strong { color: #c77800; }
.caller-surface .waiting-time span { margin-left: .2rem; font-size: .72rem; font-weight: 780; }
.caller-surface .waiting-time small { grid-column: 1 / -1; color: var(--tg-text-muted); font-size: .65rem; }
.caller-surface .assignment { display: flex; align-items: center; gap: .55rem; }
.caller-surface .assignment small, .caller-surface .assignment strong { display: block; }
.caller-surface .assignment small { color: var(--tg-text-muted); font-size: .63rem; }
.caller-surface .assignment strong { font-size: .75rem; }
.caller-surface .avatar, .caller-surface .done-check, .caller-surface .unassigned-dot { flex: 0 0 auto; }
.caller-surface .avatar, .caller-surface .done-check { width: 2.1rem; height: 2.1rem; display: grid; place-items: center; color: white; border-radius: 50%; font-size: .68rem; font-weight: 850; }
.caller-surface .avatar { background: var(--tg-blue); }
.caller-surface .done-check { background: var(--tg-success); }
.caller-surface .unassigned-dot { width: .7rem; height: .7rem; margin: .7rem; background: #f3a72f; border-radius: 50%; box-shadow: 0 0 0 .25rem #fff3da; }
.caller-surface .call-card-actions { display: flex; align-items: center; gap: .5rem; }
.caller-surface .primary-action, .caller-surface .more-action { min-height: 2.55rem; border-radius: .72rem; font-size: .74rem; font-weight: 800; }
.caller-surface .primary-action { min-width: 6.6rem; padding: .55rem .8rem; color: white; background: var(--tg-blue); border: 1px solid var(--tg-blue); }
.caller-surface .primary-action:hover { background: #1875c6; }
.caller-surface .more-action { width: 2.7rem; color: var(--tg-petrol); background: var(--tg-ice); border: 1px solid var(--tg-border); }
.caller-surface .completed-label { min-width: 6.6rem; display: inline-flex; justify-content: center; padding: .5rem .7rem; color: #087c56; background: #e5f8ef; border-radius: .7rem; font-size: .73rem; font-weight: 800; }
.caller-surface .empty-state { display: grid; place-items: center; padding: 4rem 1rem; text-align: center; background: white; border: 1px solid var(--tg-border); border-radius: 1rem; }
.caller-surface .empty-bell { width: 3.5rem; height: 3.5rem; display: grid; place-items: center; color: var(--tg-blue); background: var(--tg-ice); border-radius: 1rem; }
.caller-surface .empty-state h2 { margin: 1rem 0 .2rem; font-size: 1.05rem; }
.caller-surface .empty-state p { margin: 0; color: var(--tg-text-muted); font-size: .8rem; }
.caller-surface .data-state { min-height: 28rem; display: grid; place-items: center; align-content: center; padding: 2rem; text-align: center; background: white; border: 1px solid var(--tg-border); border-radius: 1rem; box-shadow: var(--tg-shadow); }
.caller-surface .data-state h1 { margin: 1rem 0 .3rem; font-size: 1.25rem; }
.caller-surface .data-state p { max-width: 34rem; margin: 0; color: var(--tg-text-muted); }
.caller-surface .data-state > button { margin-top: 1rem; padding: .65rem 1rem; color: white; background: var(--tg-blue); border: 0; border-radius: .72rem; font-weight: 750; }
.caller-surface .data-state-error .empty-bell { color: white; background: #d93649; font-size: 1.4rem; }
@media (max-width: 1120px) {
.caller-surface .call-card { grid-template-columns: auto 1fr auto; }
.caller-surface .assignment { grid-column: 2; }
.caller-surface .call-card-actions { grid-column: 3; grid-row: 1 / 3; }
}
@media (max-width: 760px) {
.caller-surface .calls-heading { align-items: flex-start; flex-direction: column; }
.caller-surface .calls-actions { width: 100%; flex-wrap: wrap; }
.caller-surface .call-toolbar { align-items: stretch; flex-direction: column; overflow-x: auto; }
.caller-surface .filter-tabs { overflow-x: auto; }
.caller-surface .filter-tabs button { white-space: nowrap; }
.caller-surface .call-card { grid-template-columns: auto 1fr auto; }
.caller-surface .assignment { grid-column: 1 / 3; }
.caller-surface .call-card-actions { grid-column: 1 / -1; grid-row: auto; }
.caller-surface .primary-action, .caller-surface .completed-label { flex: 1; }
}
@media (max-width: 480px) {
.caller-surface .preview-badge { width: 100%; justify-content: center; }
.caller-surface .call-card { gap: .75rem; }
.caller-surface .call-type-icon { width: 2.6rem; height: 2.6rem; }
.caller-surface .waiting-time strong { font-size: 1.5rem; }
.caller-surface .selectors { display: grid; grid-template-columns: 1fr 1fr; }
.caller-surface .selectors select { width: 100%; }
}
.caller-surface .assignment-panel {grid-column:1/-1;display:grid;grid-template-columns:minmax(12rem,1fr) minmax(12rem,.7fr) auto;align-items:center;gap:.7rem;margin-top:-.2rem;padding:.8rem;background:var(--tg-surface-muted);border-radius:.75rem}
.caller-surface .assignment-panel strong, .caller-surface .assignment-panel small {display:block}
.caller-surface .assignment-panel strong {font-size:.78rem}
.caller-surface .assignment-panel small {margin-top:.1rem;color:var(--tg-text-muted);font-size:.64rem}
.caller-surface .assignment-panel select {min-height:2.45rem;padding:.45rem .7rem;color:var(--tg-petrol);background:white;border:1px solid var(--tg-border);border-radius:.65rem}
.caller-surface .assignment-panel button {min-height:2.45rem;padding:.45rem .85rem;color:white;background:var(--tg-blue);border:1px solid var(--tg-blue);border-radius:.65rem;font-weight:800}
.caller-surface .members-loading {color:var(--tg-text-muted);font-size:.72rem}
.caller-surface .call-toolbar, .caller-surface .call-board, .caller-surface .call-card, .caller-surface .call-card > *, .caller-surface .assignment-panel > * { min-width: 0; }
.caller-surface .call-identity, .caller-surface .assignment, .caller-surface .assignment-panel { overflow-wrap: anywhere; }
@media (max-width: 760px) {
.caller-surface .call-toolbar { overflow-x: visible; }
.caller-surface .filter-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow-x: visible; }
.caller-surface .filter-tabs button { min-width: 0; justify-content: center; padding-inline: .35rem; white-space: normal; }
.caller-surface .selectors { display: grid; grid-template-columns: 1fr; }
.caller-surface .selectors select { width: 100%; }
.caller-surface .assignment-panel { grid-template-columns: 1fr; align-items: stretch; }
.caller-surface .assignment-panel select, .caller-surface .assignment-panel button { width: 100%; }
.caller-surface .assignment-panel button {
        position: sticky;
        bottom: max(.5rem, env(safe-area-inset-bottom));
        z-index: 2;
        box-shadow: 0 .35rem 1rem rgba(11, 45, 58, .18);
    }
}
@media (max-width: 480px) {
.caller-surface .call-card { grid-template-columns: auto minmax(0, 1fr); align-items: start; }
.caller-surface .waiting-time { grid-column: 2; }
.caller-surface .assignment, .caller-surface .call-card-actions, .caller-surface .assignment-panel { grid-column: 1 / -1; }
.caller-surface .call-card-actions { align-items: stretch; flex-wrap: wrap; }
.caller-surface .more-action { flex: 0 0 2.7rem; }
}
