.customer{box-sizing:border-box;max-width:480px;min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));color:#1b1b1b;background:#fff;flex-direction:column;gap:14px;margin:0 auto;font:17px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex}.customer [hidden]{display:none!important}.customer h1{margin:8px 0 0;font-size:1.45rem;line-height:1.25}.customer p{margin:0}.customer .notice{flex-direction:column;gap:12px;display:flex}.customer .message{text-align:center;margin-top:30vh;font-size:1.1rem}.customer button{font:inherit;cursor:pointer}.customer .primary,.customer .secondary{border-radius:12px;width:100%;min-height:52px;font-size:1.1rem;font-weight:600}.customer .primary{color:#fff;background:#1f5c99;border:0;margin-top:auto}.customer .primary:disabled{cursor:default;background:#a9bccf}.customer .secondary{color:#1f5c99;background:#fff;border:2px solid #1f5c99}.customer .selfview{aspect-ratio:3/4;background:#111;border-radius:16px;width:100%;max-height:52dvh;position:relative;overflow:hidden}.customer .selfview video{object-fit:cover;width:100%;height:100%}.customer .mirrored{transform:scaleX(-1)}.customer .flip{color:#fff;background:#0000008c;border:0;border-radius:50%;place-items:center;width:52px;height:52px;display:grid;position:absolute;bottom:12px;right:12px}.customer .status{align-items:flex-start;gap:10px;display:flex}.customer .status .dot{background:#c9a227;border-radius:50%;flex:none;width:12px;height:12px;margin-top:.4em}.customer .status.ok .dot{background:#2e7d32}.customer .status.problem .dot{background:#c62828}.customer .status.problem{font-weight:600}.customer .meter{background:#e4e4e4;border-radius:5px;height:10px;overflow:hidden}.customer .meter-fill{transform-origin:0;background:#2e7d32;height:100%;transition:transform 80ms linear;transform:scaleX(0)}.customer .alert{color:#8a1c1c;background:#fdecea;border-radius:10px;padding:12px}.customer .failure{flex-direction:column;flex:1;gap:14px;display:flex}.customer .spinner{border:4px solid #d6e2ee;border-top-color:#1f5c99;border-radius:50%;align-self:center;width:36px;height:36px;animation:.9s linear infinite customer-spin}@keyframes customer-spin{to{transform:rotate(360deg)}}.customer.call{gap:12px}.customer .stage{background:#111;border-radius:16px;flex:1;place-items:center;min-height:48dvh;display:grid;position:relative;overflow:hidden}.customer .stage .remote{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.customer .pip{aspect-ratio:3/4;background:#222;border:2px solid #fff;border-radius:10px;width:30%;position:absolute;top:12px;right:12px;overflow:hidden}.customer .pip video{object-fit:cover;width:100%;height:100%}.customer .pip .flip{width:40px;height:40px;bottom:6px;right:6px}.customer .status-line{text-align:center;font-weight:600}.customer .captions{background:#eef3f8;border-radius:10px;min-height:3em;padding:10px 12px}.customer .captions:empty{display:none}.customer .danger{color:#fff;background:#b3261e;border:0;border-radius:12px;width:100%;min-height:52px;font-size:1.1rem;font-weight:600}.customer .danger:disabled{cursor:default;background:#d9a19d}.customer .confirm{flex-direction:column;gap:10px;display:flex}.customer .confirm p{text-align:center;font-weight:600}.invite-dialog{border:1px solid #ccc;border-radius:10px;width:min(28rem,100vw - 2rem);padding:1.25rem;font:15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.invite-dialog::backdrop{background:#00000059}.invite-dialog h2{margin:0 0 1rem;font-size:1.2rem}.invite-dialog form,.invite-dialog .invite-result{flex-direction:column;gap:.75rem;display:flex}.invite-dialog label{flex-direction:column;gap:.25rem;font-weight:600;display:flex}.invite-dialog input,.invite-dialog select{font:inherit;padding:.4rem;font-weight:400}.invite-dialog .row{gap:.5rem;display:flex}.invite-dialog .close{margin-top:1rem}.queue,.call-page{padding:0 1rem 1rem;font:15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.banner{color:#6a3d00;background:#fff4e5;border-radius:6px;padding:.5rem .75rem}.queue-table{border-collapse:collapse;width:100%;margin-top:1rem}.queue-table th,.queue-table td{text-align:left;border-bottom:1px solid #ddd;padding:.4rem .6rem}.queue-table tr[data-state=waiting]{background:#eef6ee}.call-page{grid-template-columns:minmax(0,2fr) minmax(16rem,1fr);grid-template-areas:"header header""banner banner""media transcript""media risk";align-items:start;gap:.75rem;display:grid}.call-page.notice{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.call-header{grid-area:header;align-items:center;gap:.75rem;display:flex}.call-header h1{margin:.5rem 0;font-size:1.3rem}.call-page>.banner{grid-column:1/-1}.badge{color:#1f4f80;background:#e3ecf7;border-radius:999px;padding:.15rem .5rem;font-size:.85rem}.call-media{flex-direction:column;grid-area:media;gap:.75rem;display:flex}.customer-video{aspect-ratio:16/9;color:#ddd;background:#111;border-radius:10px;place-items:center;display:grid;overflow:hidden}.customer-video video{object-fit:contain;width:100%;height:100%}.self-row{align-items:flex-start;gap:.75rem;display:flex}.self-view{aspect-ratio:16/9;background:#222;border-radius:8px;flex:none;width:12rem;overflow:hidden}.self-view video{object-fit:cover;width:100%;height:100%}.self-view .mirrored{transform:scaleX(-1)}.controls{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.call-page button.danger{color:#fff;background:#b3261e;border:0;border-radius:6px;padding:.4rem .8rem}.panel{border:1px solid #ddd;border-radius:10px;padding:.75rem}.panel h2{margin:0 0 .5rem;font-size:1rem}.panel.placeholder{color:#666;border-style:dashed}.panel[data-milestone=M3-1]{grid-area:transcript}.panel[data-milestone=M3-3\ M3-7]{grid-area:risk}@media (width<=760px){.call-page{grid-template-columns:1fr;grid-template-areas:"header""banner""media""transcript""risk"}}
