:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;color:#1d1d1b;background:#f6f5f1}*{box-sizing:border-box}body{margin:0}button{font:inherit;padding:6px 10px;border:1px solid #c9c6bc;border-radius:4px;background:#fff;cursor:pointer}button:disabled{opacity:.5;cursor:default}button.ok{background:#2f8f4e;color:#fff;border-color:#2f8f4e}button.danger{background:#b23a3a;color:#fff;border-color:#b23a3a}input,textarea{font:inherit;padding:6px 8px;border:1px solid #c9c6bc;border-radius:4px;width:100%}.row{display:flex;gap:6px;align-items:center;margin:6px 0}.pill{font-size:11px;padding:1px 7px;border-radius:10px;background:#e6e3d8}.layout{display:grid;grid-template-columns:280px 240px 1fr;height:100vh}.softphone{border-right:1px solid #ddd;padding:12px;background:#fff}.softphone header{display:flex;justify-content:space-between;margin-bottom:8px}.status{text-transform:capitalize;font-size:12px;padding:2px 8px;border-radius:10px;background:#eee}.status-available{background:#d9f0e0}.status-busy{background:#ffe9c7}.status-error{background:#f8d2d2}.call{margin-top:12px;padding:10px;border-radius:6px;background:#f1efe8}.call-incoming{background:#fff2cc;animation:pulse 1s infinite alternate}@keyframes pulse{0%{box-shadow:0 0 #f0c14b}to{box-shadow:0 0 0 4px #f0c14b55}}.call-head{display:flex;gap:8px;justify-content:space-between}.num{font-variant-numeric:tabular-nums}.timer{font-variant-numeric:tabular-nums;color:#555}.dialer{display:flex;gap:6px;margin-top:12px}.list{border-right:1px solid #ddd;padding:12px;display:flex;flex-direction:column;gap:4px;overflow:auto;background:#fbfaf7}.list>button{text-align:left}.list>button.sel{background:#e6eef6;border-color:#7ea2c4}.pop{background:#fff2cc;padding:8px;border-radius:4px;display:flex;justify-content:space-between;align-items:center}main{padding:16px 24px;overflow:auto}.empty{color:#777}.contacts{display:flex;gap:6px;flex-wrap:wrap}.new-issue{display:grid;gap:6px;max-width:600px;margin-bottom:12px}.issues,.timeline{list-style:none;padding:0;margin:0}.issue{background:#fff;border:1px solid #e2dfd5;border-radius:6px;padding:10px;margin-bottom:8px}.issue-closed{opacity:.6}.timeline li{display:flex;gap:10px;padding:4px 0;border-bottom:1px solid #eee}.when{color:#666;min-width:170px}.signin{max-width:320px;margin:15vh auto;display:grid;gap:8px}.error{color:#b23a3a}
