:root{font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:#263449;background:#f3f5f9;font-size:13px;--nav:#15233b;--blue:#3d67ee;--border:#e8edf4;--muted:#8793a6}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}[hidden]{display:none!important}aside{position:fixed;inset:0 auto 0 0;width:230px;background:var(--nav);color:#9eacc3;z-index:10;display:flex;flex-direction:column}.brand{height:95px;display:flex;align-items:center;gap:12px;padding:0 24px;color:white;font-size:25px;font-weight:750;letter-spacing:1px}.brandmark{background:#4367e8;border-radius:12px;width:42px;height:42px;text-align:center;line-height:42px;font-size:26px;box-shadow:0 6px 20px #0c153a}.brand span{display:block;font-size:10px;font-weight:400;color:#8d9eb9;letter-spacing:2px;margin-top:4px}nav{padding:0 14px;overflow-y:auto;flex:1;scrollbar-width:thin}.nav-section{font-size:10px;color:#617591;padding:20px 14px 8px;letter-spacing:2px}.nav-item{display:flex;gap:13px;align-items:center;text-decoration:none;padding:11px 15px;border-radius:7px;color:#a3b3ce;margin-bottom:3px;transition:.15s}.nav-item svg{width:17px;height:17px;opacity:.8;flex-shrink:0}.nav-item:hover{background:#21334f;color:white}.nav-item.active{background:#3d63dc;color:white;box-shadow:0 4px 14px #0c18352e}.nav-item.active:after{content:"";width:5px;height:5px;border-radius:50%;background:white;margin-left:auto}.sidebar-footer{display:flex;align-items:center;gap:10px;margin:15px;padding:17px 10px;border-top:1px solid #29354c;font-size:11px}.sidebar-footer small{display:block;font-size:10px;color:#697f9e;margin-top:5px}.dot{width:7px;height:7px;border-radius:50%;background:#39bf99;box-shadow:0 0 0 3px #39bf9919}.version{margin-left:auto;font-size:9px;border:1px solid #3a4962;color:#a2b6d4;border-radius:4px;padding:3px 5px}.shell{margin-left:230px}.topbar{height:67px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:8}.breadcrumb{color:#929db0;font-size:12px}.breadcrumb span{padding:0 13px;color:#c3cad6}.breadcrumb strong{color:#4d5b73;font-weight:500}.top-right{display:flex;align-items:center;gap:10px;font-size:12px;color:#6a7890}.connection{font-size:11px;padding-right:17px}.connection:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#32b58e;margin-right:7px}.avatar{background:#eff3ff;color:#5571d2;border-radius:50%;width:30px;height:30px;line-height:30px;text-align:center;font-weight:600}main{padding:30px 32px 22px;min-height:calc(100vh - 105px);max-width:1900px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;margin:3px 0 24px;gap:20px}.eyebrow{font-size:9px;font-weight:700;color:#91a0b6;letter-spacing:2px;margin:0 0 8px}h1{font-size:24px;letter-spacing:-.5px;margin:0 0 9px;font-weight:650}h2{font-size:16px;font-weight:650;margin:0}p{color:#8793a7;line-height:1.8;margin:0}.page-heading p{font-size:12px}.heading-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn{border:0;border-radius:6px;padding:9px 14px;display:inline-flex;gap:7px;align-items:center;justify-content:center;font-weight:500;font-size:12px;white-space:nowrap;transition:.15s}.btn:hover{filter:brightness(.95);transform:translateY(-1px)}.primary{background:#4269ea;color:white;box-shadow:0 3px 8px #4269ea22}.neutral{background:white;border:1px solid #dfe6f0;color:#62728a}.purple{background:#f0ebff;color:#7856cd}.green{background:#e9f8f0;color:#249c6d}.orange{background:#fff2df;color:#cf8a21}.red{background:#ffeded;color:#da5c60}.sky{background:#eaf3ff;color:#438bd4}.btn.small{padding:6px 9px;font-size:11px;border-radius:5px}.panel{border:1px solid var(--border);border-radius:10px;background:white;overflow:hidden;box-shadow:0 3px 12px #26374b03;margin-bottom:20px}.panel-header{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--border)}.panel-header h2{font-size:14px}.panel-header p{font-size:11px;margin-top:4px}.toolbar{padding:16px 22px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.search{display:flex;align-items:center;position:relative;width:250px}.search input{padding-left:33px}.search:before{content:"⌕";position:absolute;left:12px;color:#9caac0;font-size:20px}.toolbar input,.toolbar select{margin:0}.toolbar select{width:140px}.toolbar .count{margin-left:auto;color:#91a0b3;font-size:11px}.table-wrap{overflow:auto;max-height:650px;scrollbar-width:thin;scrollbar-color:#d5dde9 transparent}.data-table{border-collapse:separate;border-spacing:0;width:100%;min-width:850px;white-space:nowrap;font-size:12px}.data-table th{background:#f8faff;color:#8996ab;text-align:left;font-weight:500;padding:13px 20px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:2;font-size:11px}.data-table td{padding:16px 20px;border-bottom:1px solid #eff2f7;color:#64728a;background:white}.data-table tr:last-child td{border-bottom:0}.data-table tr:hover td{background:#fafbff}.data-table th:first-child,.data-table td:first-child{position:sticky;left:0;z-index:3;min-width:170px}.data-table th:first-child{z-index:5;background:#f8faff}.data-table .actions{position:sticky;right:0;background:white;z-index:4;box-shadow:-6px 0 10px #18264904;min-width:250px;text-align:right}.data-table th.actions{background:#f8faff;z-index:5}.row-buttons{display:flex;gap:6px;justify-content:flex-end}.name-cell{color:#34445d;font-weight:600;font-size:12px;display:flex;align-items:center;gap:9px}.name-cell:before{content:"";height:25px;width:3px;background:#9cb0ec;border-radius:3px}.subtext{display:block;color:#a0aabc;font-size:10px;font-weight:400;margin:6px 0 0 12px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:5px;padding:5px 8px;font-size:10px;font-weight:500;line-height:1.1;white-space:nowrap}.badge:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor}.badge.normal,.badge.completed,.badge.online,.badge.已接通{background:#e7f7ef;color:#299969}.badge.locked,.badge.锁定,.badge.queued{background:#fff3e1;color:#cb902d}.badge.debt,.badge.欠费,.badge.failed,.badge.未接通{background:#ffebec;color:#d15b65}.badge.running{background:#eaf0ff;color:#5477d9}.badge.draft,.badge.offline,.badge.cancelled,.badge.interrupted{background:#eef1f6;color:#8a95a9}.badge.example{background:#f1edff;color:#8a6fce}.badge.codec{background:#eff4fa;color:#6882a4}.notice-band{display:flex;align-items:flex-start;gap:10px;padding:12px 17px;margin-bottom:18px;background:#edf3ff;border:1px solid #e3ebfd;border-radius:7px;color:#7890b5;font-size:11px;line-height:1.8}.notice-band strong{color:#5271a5;font-weight:600}.notice-band.warn{background:#fff8ec;border-color:#f9eacb;color:#b89458}.panel-footer{padding:14px 22px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;color:#a0abbd;font-size:11px}.pagination{display:flex;gap:5px}.page-number{border:1px solid #e5eaf1;background:white;border-radius:4px;padding:5px 9px;color:#8795aa;cursor:pointer}.page-number.active{color:#567aea;background:#eef3ff;border-color:#d7e3ff}.empty{padding:60px 24px;text-align:center;color:#a1adc0}.empty-symbol{font-size:28px;margin-bottom:13px;opacity:.5}.empty strong{display:block;color:#63738c;margin-bottom:8px;font-weight:500}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.stat-card{background:white;border:1px solid var(--border);border-radius:10px;padding:23px;position:relative}.stat-label{font-size:11px;color:#8d99ad}.stat-value{font-size:28px;font-weight:650;color:#34445f;margin:12px 0 8px;letter-spacing:-1px}.stat-note{font-size:10px;color:#a4afbe}.stat-icon{position:absolute;right:21px;top:21px;width:33px;height:33px;border-radius:9px;display:grid;place-items:center;font-size:17px}.stat-icon.blue{background:#edf2ff;color:#5d7de4}.stat-icon.teal{background:#e9f7f4;color:#55b6a0}.stat-icon.amber{background:#fff3e2;color:#d6a451}.stat-icon.violet{background:#f3efff;color:#9577cd}.dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:20px}.resource-list{padding:4px 22px 22px}.resource{margin-top:23px}.resource-line{display:flex;justify-content:space-between;font-size:11px;color:#8998ad;margin-bottom:10px}.resource-line strong{color:#576982;font-weight:500}.bar{height:5px;background:#f0f3f9;border-radius:3px;overflow:hidden}.bar-fill{height:100%;background:#6c8be9;border-radius:3px}.resource:nth-child(2) .bar-fill{background:#64bba9}.resource:nth-child(3) .bar-fill{background:#b397db}.quicklinks{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:20px}.quicklink{border:1px solid var(--border);border-radius:8px;background:#fbfcff;padding:16px 8px;text-align:center;color:#7487a6;cursor:pointer;font-size:11px}.quicklink span{display:block;font-size:20px;color:#6b87c9;margin-bottom:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 22px;padding:22px;max-height:62vh;overflow:auto}label{font-size:11px;color:#7b8a9f;display:block}input,select,textarea{width:100%;border:1px solid #dfe6f1;border-radius:6px;background:white;padding:10px 12px;margin-top:7px;color:#52627a;font-size:12px;outline:none}input:focus,select:focus,textarea:focus{border-color:#7f9aee;box-shadow:0 0 0 3px #7f9aee11}textarea{min-height:80px;resize:vertical}input[type=checkbox]{width:auto;margin:0 8px 0 0}.field-hint{display:block;font-size:10px;color:#a5afbd;margin-top:6px;line-height:1.6}.full-width{grid-column:1/-1}dialog{border:1px solid #e6ebf3;border-radius:13px;padding:0;width:min(760px,calc(100vw - 40px));max-height:90vh;box-shadow:0 20px 90px #1a2c5940;color:#34455e}dialog::backdrop{background:#10233a66;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:22px;border-bottom:1px solid var(--border)}.icon-button{background:#f3f5f9;color:#99a5b8;border:0;border-radius:6px;width:29px;height:29px;font-size:22px}.modal-hint{margin:16px 22px 0;padding:10px 13px;background:#f6f8fc;border-radius:5px;color:#95a1b3;font-size:11px;line-height:1.8}.modal-footer{padding:16px 22px;border-top:1px solid var(--border);display:flex;gap:9px;align-items:center;justify-content:flex-end;background:#fafbfe}.modal-footer span{margin-right:auto;font-size:11px;color:#92a0b4}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:15px 22px}.detail-item{padding:14px 0;border-bottom:1px solid #edf1f6;min-width:0}.detail-item label{font-size:10px;color:#99a7ba;margin-bottom:8px}.detail-item div{font-size:12px;overflow-wrap:anywhere}.login-card{background:white;max-width:430px;border:1px solid var(--border);border-radius:12px;margin:9vh auto;padding:36px}.login-mark{font-size:14px;color:#5678dc;font-weight:750;margin-bottom:25px;letter-spacing:3px}.login-card h1{font-size:25px}.login-card p{font-size:12px;margin-bottom:25px}.login-card button{width:100%;margin:19px 0}.login-card small{font-size:10px;color:#a5afbe}.toast{position:fixed;bottom:28px;right:30px;z-index:50;background:#20344d;color:white;border-radius:8px;padding:15px 22px;box-shadow:0 10px 25px #1c2c4a22;font-size:12px;max-width:500px}.chat-area{padding:22px}.chat-message{background:#f5f8fe;padding:17px;border-radius:8px;white-space:pre-wrap;line-height:1.9;color:#667996;margin-bottom:20px;min-height:85px}.chat-controls{display:flex;gap:12px;align-items:flex-end}.chat-controls label{flex:1}.chat-controls select{width:160px}.mode-pills{display:flex;gap:10px;margin-bottom:20px}footer{padding:12px 32px 20px;color:#acb6c7;font-size:10px;display:flex;justify-content:space-between}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:20px}.metric-grid .stat-card{padding:20px}.status-legend{display:flex;gap:12px;align-items:center;font-size:10px;color:#9da8ba}.filter-label{font-size:11px;color:#91a0b5}.panel .description{padding:16px 22px;font-size:11px;color:#96a3b6;line-height:1.8}@media(min-width:1550px){main{padding:36px 42px}.topbar{padding:0 42px}}@media(max-width:1000px){aside{width:190px}.shell{margin-left:190px}main{padding:22px}.topbar{padding:0 22px}.stats{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.heading-actions{flex-wrap:wrap}.page-heading{align-items:flex-start}}@media(max-width:680px){aside{position:static;width:100%;height:auto}.brand{height:65px}nav{display:flex;overflow-x:auto;padding:5px 12px}.nav-section,.sidebar-footer{display:none}.nav-item{flex-shrink:0;padding:9px 12px}.shell{margin:0}.topbar{height:53px}.top-right>span:last-child{display:none}.page-heading{display:block}.heading-actions{margin-top:15px}.form-grid{grid-template-columns:1fr}.full-width{grid-column:auto}.stats{gap:10px}.stat-card{padding:18px}.stat-value{font-size:24px}.stat-icon{display:none}.metric-grid{grid-template-columns:1fr}.chat-controls{flex-direction:column;align-items:stretch}.chat-controls select{width:100%}.details-grid{grid-template-columns:1fr}footer{padding:15px 22px}}

.readonly-field{background:#edf0f5!important;color:#64748b!important;cursor:not-allowed;}

input:focus::placeholder,textarea:focus::placeholder{color:transparent;}
.header-clock{text-align:right;line-height:1.5;min-width:155px;color:#52647d;font-variant-numeric:tabular-nums}.header-clock small{display:block;font-size:9px;color:#9aa9bb}.topbar{height:auto;min-height:70px;padding-top:10px;padding-bottom:10px;gap:12px}.top-right{flex-wrap:wrap;justify-content:flex-end}.top-right .connection{padding-right:0}#loginIdentity{color:#455c7e;font-weight:600}.phone-body{padding:22px}.phone-body small{display:block;font-size:10px;line-height:1.7;color:#8b9ab0;margin-top:12px}#softphone{position:fixed;inset:80px 24px auto auto;width:min(360px,calc(100vw - 24px));max-height:calc(100dvh - 104px);margin:0;z-index:40;overflow:auto}#softphone .modal-head{padding:18px}.phone-register{display:flex;align-items:center;justify-content:space-between;margin:14px 0;gap:8px;font-size:11px;color:#7385a0}#phoneNumber{font-size:22px;text-align:center;letter-spacing:2px}.dial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0}.dial-key{border:1px solid #e2e9f4;background:#f7f9fd;border-radius:9px;padding:12px;font-size:22px;color:#3d567d}.dial-key:hover{background:#edf2ff}.phone-actions{display:flex;gap:8px;margin-top:10px}.phone-actions .btn{flex:1}#phoneAudio{width:100%;height:30px;margin-top:15px}.login-card label+label{margin-top:12px}@media(max-width:680px){.topbar{align-items:flex-start}.top-right{gap:7px}.header-clock{min-width:140px}#softphone{inset:80px 12px auto auto;width:calc(100vw - 24px);max-height:calc(100dvh - 92px)}}

.required-star{color:#dc3545;font-weight:700;margin-left:3px}.conversion-title{display:block;margin-bottom:10px;font-size:11px;color:#7f8fa7}.conversion-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:10px}.conversion-row label{flex:1;min-width:0;font-size:10px}.conversion-row input{margin-top:6px;width:100%}.conversion-arrow{color:#627ad0;font-size:20px;padding-bottom:9px;flex:none}.conversion-remove{height:37px;width:30px;padding:0;flex:none}.conversion-field>.btn{margin-top:8px}

#editor .modal-head{padding:16px 20px}#editor .modal-head h2{font-size:18px}#editor .modal-hint{margin:12px 20px 0;font-size:10px;padding:8px 10px}#editor .form-grid{grid-template-columns:1fr;gap:0;padding:12px 20px}#editor .form-grid>label,#editor .conversion-field{display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:10px 0;border-bottom:1px solid #edf1f6;align-items:start}#editor .form-grid>label[hidden]{display:none}#editor .field-caption{font-size:11px;line-height:34px;color:#52647d}#editor .form-grid>label>input,#editor .form-grid>label>select{min-height:34px;padding:7px 10px;font-size:12px;margin:0}#editor .form-grid>label>textarea{grid-column:2;width:100%;margin:0}#editor .form-grid .field-hint{grid-column:2;font-size:9px;line-height:1.6;margin-top:1px;color:#8a98ac}#editor .conversion-title{grid-column:1;font-size:11px;line-height:34px;margin:0;color:#52647d}#editor .conversion-rows{grid-column:2;grid-row:1}#editor .conversion-field>.btn{grid-column:2;justify-self:start;margin-top:2px}#editor .conversion-row{margin-bottom:6px}#editor .conversion-row input{font-size:12px;padding:7px 10px;min-height:34px}#editor .conversion-row label{font-size:9px}#editor .conversion-arrow{font-size:18px;padding-bottom:7px}@media(max-width:680px){#editor .form-grid>label,#editor .conversion-field{grid-template-columns:110px minmax(0,1fr);column-gap:10px}#editor .form-grid{padding:10px 14px}#editor .field-caption{line-height:1.5;padding-top:9px}}

.reference-picker{position:relative;min-width:0}.reference-picker>input{width:100%;font-size:12px;padding:7px 10px;min-height:34px}.reference-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;max-height:190px;overflow:auto;background:#fff;border:0;border-radius:7px;box-shadow:0 8px 22px #20344d20;padding:4px}.reference-results[hidden]{display:none}.reference-option{border:0;border-radius:0;box-shadow:none;display:block;width:100%;text-align:left;background:white;font-size:11px;padding:9px 10px;color:#52647d}.reference-option:hover,.reference-option.active{background:#edf2ff;color:#4268cd}.reference-empty{font-size:10px;color:#8998ad;padding:10px}

#editor .length-field{display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:16px;padding:10px 0;border-bottom:1px solid #edf1f6;align-items:center}.length-controls{display:flex;align-items:center;gap:12px;min-width:0;overflow-x:auto}.length-controls>select{width:110px;flex:none;min-height:34px;padding:7px 10px;font-size:12px}.length-bounds{display:flex;align-items:center;gap:8px}.length-bounds[hidden]{display:none}.length-bounds label{display:flex;align-items:center;gap:6px;font-size:10px;white-space:nowrap;margin:0}.length-bounds input{width:80px;min-height:34px;font-size:12px;padding:7px 8px;margin:0}.length-bounds>span{font-size:11px;color:#96a3b6}@media(max-width:680px){#editor .length-field{grid-template-columns:110px minmax(0,1fr);column-gap:10px}.length-controls>select{width:85px}.length-bounds input{width:55px}}

.credential-controls{display:flex;align-items:center;gap:6px;min-width:0}.credential-controls input{flex:1;min-width:100px}.credential-controls .btn{white-space:nowrap}.choice-options{display:flex;flex-wrap:wrap;gap:8px;padding:7px 0}.choice-options .choice-option{display:flex!important;align-items:center;gap:5px;font-size:12px!important;grid-template-columns:none!important;margin:0!important}.choice-option input[type=checkbox]{width:15px;height:15px;padding:0;margin:0}

.choice-options .choice-option[hidden]{display:none!important}

/* Flat, full-width workspace and centered list columns. */
main{max-width:none;margin:0;padding:24px 24px 20px}
#pageContent>.panel,#pageContent>.dashboard-grid>.panel{border-radius:0;box-shadow:none;border-left:0;border-right:0}
.dashboard-grid{grid-template-columns:1fr}
.table-wrap{max-height:none}
.data-table th,.data-table td,.data-table .actions{text-align:center;vertical-align:middle}
.row-buttons{justify-content:center}
.name-cell{justify-content:center}
.name-cell:before{display:none}
.subtext{margin-left:0;text-align:center}
.data-table td .copy-value,.data-table td .codecs{justify-content:center}
@media(min-width:1550px){main{padding:28px 28px 20px}}
@media(max-width:680px){main{padding:18px 14px}}
.call-reason{display:block;width:280px;white-space:normal;overflow-wrap:anywhere;line-height:1.7;text-align:center}
.report-filters{display:grid;grid-template-columns:minmax(165px,1.3fr) repeat(2,minmax(140px,1fr)) repeat(2,minmax(130px,1fr)) minmax(120px,.8fr) auto;gap:14px;align-items:end;padding:18px 0 4px}.report-filters label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:var(--muted,#64748b)}.report-filters input,.report-filters select{width:100%;min-width:0}.report-query{padding-bottom:1px}@media(max-width:1200px){.report-filters{grid-template-columns:repeat(3,minmax(140px,1fr))}}
.report-controls .toolbar{padding:16px 20px;border-bottom:1px solid #edf0f6}.report-controls .report-filters{padding:16px 20px 20px}.report-note{font-size:12px;line-height:1.6;color:#64748b;margin:10px 2px}.report-controls label select{min-width:135px}
/* Content-sized controls; retain room for long values without stretching every row. */
.toolbar .search{width:220px;max-width:100%;flex:0 1 220px}.toolbar input:not([type=checkbox]):not([type=radio]),.toolbar select{max-width:100%}.toolbar>label{display:inline-flex;align-items:center;gap:8px;flex:none}.toolbar input[type=date]{width:146px}.toolbar input[type=datetime-local]{width:200px}.toolbar input[type=text]{width:220px}.toolbar .search input{width:100%}.toolbar select{width:160px}
#editor .form-grid>label>input,#editor .form-grid>label>select{width:240px;max-width:100%;justify-self:start}#editor .form-grid>label>input.control-short{width:120px}#editor .form-grid>label>select.control-short{width:150px}#editor .form-grid>label>input.control-long{width:340px}#editor .form-grid>label>select.control-medium{width:220px}#editor .reference-picker{width:260px;max-width:100%}#editor .credential-controls{flex-wrap:wrap;justify-content:flex-start}#editor .credential-controls input{flex:0 1 160px;width:160px;max-width:100%;min-width:120px}#editor .credential-controls input[name=password]{flex-basis:180px;width:180px}#editor .conversion-rows{max-width:400px}#editor .conversion-row input{width:100%;min-width:0}#editor .form-grid>label>textarea{width:420px;max-width:100%}#editor input[type=number]{width:120px;max-width:100%}
.report-controls .report-filters{display:flex;flex-wrap:wrap;gap:12px 16px}.report-filters label{flex:none;width:auto}.report-filters select{width:170px;max-width:100%}.report-filters select[aria-label="对账时区"]{width:200px}.report-filters select[aria-label="报表对应名称"]{width:210px}.report-filters input[type=date]{width:146px}.report-filters input[aria-label="国码"]{width:115px}.report-query{align-self:flex-end}.toolbar select[aria-label*="时区"]{width:200px}.toolbar select[aria-label*="代理商"],.toolbar select[aria-label*="直属账号"]{width:210px}.toolbar select[aria-label*="查看角色"]{width:170px}
@media(max-width:680px){#editor .reference-picker{width:100%}#editor .credential-controls{gap:5px}.toolbar>label{flex-wrap:wrap}.report-filters label{max-width:100%}.report-filters input,.report-filters select{max-width:100%}}
.report-controls .report-filters{gap:12px 10px}.report-filters select[aria-label="对账时区"]{width:170px}.report-filters select[aria-label="统计维度"]{width:115px;min-width:115px}.report-filters select[aria-label="报表对应名称"]{width:160px}.report-filters input[type=date]{width:132px}.report-filters input[aria-label="国码"]{width:90px}
.timezone-picker{position:relative;text-align:left}.timezone-picker>input{width:230px;max-width:28vw;min-height:25px;padding:3px 7px;margin:2px 0 0;font-size:10px;border:1px solid #e2e8f0;border-radius:4px;color:#64748b;background:#f8faff}.timezone-options{position:absolute;right:0;top:100%;z-index:30;width:300px;max-width:80vw;max-height:270px;overflow:auto;padding:4px;background:white;border:1px solid #dce4ef;border-radius:6px;box-shadow:0 8px 24px #1c30452a}.timezone-option{display:block;text-align:left;background:white;width:100%;font-size:11px;padding:8px 10px;color:#52647d}.timezone-option:hover{background:#edf2ff;color:#4269ea}

/* Accordion menu groups share the menu font size. */
.nav-section,.nav-expand-all{font-size:13px;font-family:inherit;letter-spacing:0;width:100%;border:0;background:transparent;text-align:left;color:#a3b3ce;display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border-radius:7px;cursor:pointer}.nav-section{font-weight:600;margin-top:5px}.nav-section:hover,.nav-expand-all:hover{background:#21334f;color:white}.nav-expand-all{color:#ced9ec;border-bottom:1px solid #29354c;border-radius:0;margin-bottom:8px}.nav-chevron{font-size:17px;line-height:1}.nav-item{font-size:13px}@media(max-width:680px){nav{display:block}.nav-section{display:flex}.nav-expand-all{display:flex}.nav-group{width:100%}}
/* Server monitoring wall */
.monitor-board{background:radial-gradient(ellipse at 50% 0,#142e47 0,#0b192b 60%);border:1px solid #203b54;border-radius:14px;padding:24px;color:#dcecf8;box-shadow:0 14px 35px #0b192b20}.monitor-board:fullscreen{overflow:auto;border-radius:0;padding:32px}.monitor-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.monitor-kicker{font-size:10px;letter-spacing:3px;color:#57c4df}.monitor-head h2{font-size:23px;color:#edf7ff;letter-spacing:2px;margin-top:7px}.monitor-live{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}.monitor-live>span{color:#50dda7;font-size:12px}.monitor-live small{color:#7f9ab3;font-size:11px}.monitor-fullscreen{background:#1d3b55;color:#addbec;border:1px solid #305a75}.monitor-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.monitor-metric{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #24425b;background:linear-gradient(135deg,#18334d99,#11263c);border-radius:10px;padding:20px 16px;min-width:0}.monitor-label{font-size:12px;color:#93b1c9;display:block}.monitor-value{font-size:29px;line-height:1.4;font-weight:650;color:#eef8ff;display:block;margin:8px 0}.monitor-metric small{font-size:10px;color:#7896af;display:block;line-height:1.7}.monitor-gauge{width:62px;height:62px;flex-shrink:0;border-radius:50%;background:conic-gradient(var(--accent) var(--gauge),#24415a 0);display:grid;place-items:center;position:relative}.monitor-gauge:before{content:'';position:absolute;inset:5px;border-radius:50%;background:#142b42}.monitor-gauge span{position:relative;font-size:13px;color:#cbe6f5}.monitor-db{display:block}.monitor-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:16px}.monitor-panel{border:1px solid #233e55;background:#102238bb;border-radius:10px;padding:18px;min-width:0}.monitor-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.monitor-panel-head h2{font-size:14px;color:#d4e9f7;font-weight:600}.monitor-panel-head>span{font-size:10px;color:#7190a9}.monitor-panel svg{display:block;width:100%;height:150px;margin-top:16px;overflow:visible}.monitor-legend{display:flex;gap:20px;font-size:12px}.cyan{color:#35d4ed!important}.violet{color:#a28bff!important}.green-text{color:#50dda7!important}.red-text{color:#ff778b!important}.monitor-chart-foot{display:flex;justify-content:space-between;color:#63829b;font-size:10px;margin-top:10px}.monitor-apps{max-height:310px;overflow:auto;scrollbar-width:thin;scrollbar-color:#34536d transparent}.monitor-app-row{display:grid;grid-template-columns:22px minmax(100px,1.4fr) minmax(30px,1fr) 75px 44px;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #20374c;font-size:11px}.monitor-rank{color:#46748f}.monitor-app-name strong{display:block;font-weight:500;color:#c1d9ea;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monitor-app-name small{display:block;font-size:9px;color:#617f98;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monitor-app-bar{height:5px;background:#20394e;border-radius:5px;overflow:hidden}.monitor-app-bar i{display:block;height:100%;background:linear-gradient(90deg,#337fc5,#39d1dc);border-radius:5px}.monitor-app-size{text-align:right;color:#a5c6db}.monitor-muted{color:#6e8ba2;text-align:right}.monitor-network{padding:13px 0;border-bottom:1px solid #20374c}.monitor-network>strong{font-size:12px;color:#c8e2f0}.monitor-network>div{display:flex;justify-content:space-between;gap:8px;margin:9px 0;font-size:14px}.monitor-network small{color:#6988a2;font-size:10px}.monitor-panel:last-child{grid-column:1/-1}.monitor-errors{max-height:220px;overflow:auto;scrollbar-width:thin}.monitor-error{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #20374c}.monitor-error strong{font-size:12px;color:#c5dbe9;font-weight:500}.monitor-error p{font-size:11px;color:#88a5bc;overflow-wrap:anywhere}.monitor-error small{font-size:10px;color:#65829a}.monitor-severe,.monitor-warning{height:24px;border-radius:4px;padding:4px 9px;font-size:10px;flex-shrink:0}.monitor-severe{background:#663347;color:#ffacb8}.monitor-warning{background:#58482c;color:#f6ce7d}.monitor-empty{min-height:80px;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;color:#84a3ba;font-size:12px}.monitor-empty small{color:#607f98;font-size:11px}.monitor-check{color:#50dda7;font-size:22px}@media(max-width:1200px){.monitor-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.monitor-gauge{width:56px;height:56px}}@media(max-width:800px){.monitor-board{padding:16px}.monitor-head{align-items:flex-start}.monitor-head h2{font-size:19px}.monitor-grid{grid-template-columns:1fr}.monitor-panel:last-child{grid-column:auto}.monitor-live{max-width:170px}.monitor-value{font-size:25px}}@media(max-width:480px){.monitor-metrics{grid-template-columns:1fr}.monitor-app-row{grid-template-columns:20px minmax(90px,1fr) 65px 40px}.monitor-app-bar{display:none}}
.monitor-board>.monitor-panel{margin-bottom:18px}.monitor-gpus{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.monitor-gpu{border:1px solid #24425b;border-radius:8px;background:#132a4199;padding:16px}.monitor-gpu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.monitor-gpu h3{font-size:13px;font-weight:500;color:#c9deec;margin:6px 0 0}.monitor-temperature{font-size:26px;font-weight:600;color:#ffcf86;white-space:nowrap}.monitor-gpu-meters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.monitor-gpu-meters .monitor-metric{padding:12px;border:0;background:#0e213480}.monitor-gpu-meters .monitor-value{font-size:24px}.monitor-gpu-meters .monitor-gauge{width:48px;height:48px}.monitor-gpu-meters .monitor-gauge span{font-size:11px}@media(max-width:1100px){.monitor-gpus{grid-template-columns:1fr}}@media(max-width:480px){.monitor-gpu-meters{grid-template-columns:1fr}}

.phone-registration{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600}.phone-registration::before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor}.phone-registration.online{color:#16864b}.phone-registration.offline{color:#dc3545}.phone-message{font-size:12px;color:#64748b;min-height:18px}
.robot-toolbar{padding:16px 22px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:11px;color:#748399}.robot-audio{display:block;width:100%;max-width:480px;margin:14px 20px}.robot-preview{padding:16px 0;border-bottom:1px solid #edf1f6}.robot-preview-actions{display:flex;gap:8px;flex-wrap:wrap}.robot-preview .robot-audio{margin:12px 0}.robot-preview-status{font-size:11px;color:#748399}.robot-preview-actions [hidden]{display:none!important}
.robot-audio[hidden]{display:none!important}

.robot-model-help{margin:4px 22px 12px;color:var(--muted,#64748b);font-size:12px;line-height:1.7}

.phone-endpoint{font-size:12px;line-height:1.6;color:#667085;overflow-wrap:anywhere;margin:8px 0 12px}

.monitor-fs-summary{display:flex;flex-wrap:wrap;gap:12px 24px;padding:0 18px 14px}.monitor-fs-summary small{flex-basis:100%;overflow-wrap:anywhere}.monitor-fs-profiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 18px 14px}.monitor-fs-profile{display:flex;flex-wrap:wrap;gap:8px 16px;padding:12px;background:rgba(53,212,237,.05);border-radius:8px}.monitor-fs-profile small{flex-basis:100%;overflow-wrap:anywhere}.monitor-fs-modules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 18px 14px}.monitor-fs-module{padding:12px;border:1px solid rgba(150,174,211,.18);border-radius:8px}.monitor-fs-module>div{display:flex;justify-content:space-between;gap:8px}.monitor-fs-module code,.monitor-fs-module small{display:block;margin-top:8px;overflow-wrap:anywhere}.monitor-fs-module small{color:#8d9bb3;line-height:1.5}.monitor-panel>p.monitor-muted{padding:0 18px 12px;font-size:12px}@media(max-width:1100px){.monitor-fs-modules{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.monitor-fs-modules,.monitor-fs-profiles{grid-template-columns:1fr}}

.log-detail{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7;max-height:65vh;overflow:auto;margin:0;padding:16px;background:#f4f6fa;border-radius:8px;color:#27374b}

.ledger-view .data-table{min-width:0;white-space:normal}.ledger-view .data-table th,.ledger-view .data-table td{padding:12px 8px}.ledger-view .data-table th:first-child,.ledger-view .data-table td:first-child{min-width:130px}.ledger-reference{display:block;max-width:120px;overflow-wrap:anywhere;font-size:10px}

.reference-field{display:grid;gap:5px;align-content:start}.reference-picker>input[role=combobox]{cursor:pointer;padding-right:26px;background:#fff}.reference-picker:after{content:"▾";position:absolute;right:10px;top:9px;pointer-events:none;color:#718096}.reference-results>input{display:block;width:100%;min-height:32px;font-size:11px;padding:8px 10px;margin:0 0 6px;border:1px solid #dce4f0;border-radius:5px;background:#fff;box-shadow:none;outline:none;color:#52647d}.reference-results>input:focus{border-color:#4269ea;background:#fff;box-shadow:0 0 0 2px #4269ea15;outline:none}.reference-results>input::placeholder{color:#8998ad}.reference-results{max-height:none;overflow:visible}.reference-list{max-height:190px;overflow:auto}.reference-option[aria-selected=true]{color:#4268cd}

.phone-number-row{display:flex;gap:8px;align-items:center}.phone-number-row input{min-width:0;flex:1}.phone-number-row .btn{white-space:nowrap;padding:10px}.phone-personal{margin-top:18px;border-top:1px solid #e2e9f4;padding-top:12px}.phone-tabs{display:flex;gap:18px;margin-bottom:12px}.phone-tabs button{background:none;border:0;color:#7385a0;padding:8px 0;font-size:13px;cursor:pointer}.phone-tabs button.active{color:#2b65d9;border-bottom:2px solid #2b65d9}.phone-record{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #f0f3f8}.phone-record-number{flex:1;min-width:0;text-align:left;background:none;border:0;color:#455c7e;cursor:pointer;padding:0}.phone-record-number strong{display:block;overflow-wrap:anywhere;font-size:13px}.phone-record-number small{margin-top:3px!important;font-size:10px}.phone-record-action{background:none;border:0;padding:4px 0;font-size:11px;color:#7385a0;cursor:pointer}.phone-record-action:hover{color:#2b65d9}.phone-empty{font-size:12px;color:#8b9ab0;text-align:center;padding:12px}#phoneRecentList,#phoneContactsList{max-height:220px;overflow:auto}#phoneContactForm{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}#phoneContactForm input{flex:1;min-width:90px;width:100px;font-size:12px}#phoneContactForm .btn{padding:8px 10px}#phoneContactSearch{margin-bottom:6px;font-size:12px}

.recording-details audio{width:100%;margin:8px 0 16px}.recording-conversation{display:flex;flex-direction:column;gap:16px;max-height:55vh;overflow:auto;background:#f7f9fc;padding:18px;border-radius:12px}.recording-message{max-width:82%;align-self:flex-start}.recording-message.caller{align-self:flex-end}.recording-label{font-size:11px;color:#8190a6;margin-bottom:5px}.recording-message.caller .recording-label{text-align:right}.recording-bubble{padding:12px 15px;border-radius:12px;background:white;color:#405573;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.recording-message.caller .recording-bubble{background:#e6efff;color:#28599a}

.recording-switch{display:inline-flex;align-items:center;gap:7px;background:#eef1f5;color:#58677d;border:0;border-radius:16px;padding:5px 10px;white-space:nowrap}.recording-switch::before{content:"";width:12px;height:12px;border-radius:50%;background:#98a3b3}.recording-switch.enabled{background:#e7f7ef;color:#157b4b}.recording-switch.enabled::before{background:#23a76c}.recording-switch:disabled{opacity:.5;cursor:wait}

/* Personal phone tools slide out to the left of the dialler. */
#softphone{overflow:hidden;transition:width .2s ease}#softphone.personal-open{width:min(680px,calc(100vw - 24px))}.phone-layout{position:relative;overflow:hidden}.phone-body{box-sizing:border-box;width:360px;max-width:100%;max-height:calc(100dvh - 190px);overflow:auto;transition:margin-left .2s ease}#softphone.personal-open .phone-body{margin-left:320px}.phone-tools{display:flex;justify-content:flex-end;margin:-4px 0 8px}.phone-personal-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:7px;background:transparent;color:#607799;cursor:pointer}.phone-personal-toggle:hover,.phone-personal-toggle[aria-expanded="true"]{background:#edf2ff;color:#2b65d9}.phone-personal-toggle:focus-visible{outline:2px solid #2b65d9;outline-offset:2px}.phone-personal{box-sizing:border-box;position:absolute;inset:0 auto 0 0;width:320px;margin:0;padding:18px 20px;border:0;border-right:1px solid #e8edf5;background:#fff;overflow:auto;transform:translateX(-100%);visibility:hidden;transition:transform .2s ease,visibility .2s;z-index:1}#softphone.personal-open .phone-personal{transform:translateX(0);visibility:visible}#phoneRecentList,#phoneContactsList{max-height:none}.phone-tabs{gap:22px;white-space:nowrap}
@media(max-width:720px){#softphone.personal-open{width:min(360px,calc(100vw - 24px))}#softphone.personal-open .phone-body{margin-left:0}.phone-body{width:100%}.phone-personal{top:var(--phone-drawer-mobile-top,180px);width:100%;border-right:0;border-top:1px solid #e8edf5;box-shadow:0 -3px 12px #14254408}}
@media(prefers-reduced-motion:reduce){#softphone,.phone-body,.phone-personal{transition:none}}

.phone-message{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.phone-message #phoneStatus{min-width:0;overflow-wrap:anywhere}#phoneBalance{margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums;color:#475569}

.seat-summary{display:flex;align-items:center;gap:40px;padding:24px;background:#fff;border:1px solid #e4eaf3;border-radius:12px;margin-bottom:20px}.seat-summary h2{margin:6px 0}.seat-summary p{margin:6px 0;color:#64748b}.seat-stat{display:flex;flex-direction:column;gap:8px;color:#64748b;font-size:13px}.seat-stat strong{font-size:28px;color:#26364d}.seat-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 410px;gap:20px;align-items:start}.seat-history-card,.seat-phone-card{background:#fff;border:1px solid #e4eaf3;border-radius:12px;padding:20px;min-width:0}.seat-phone-card h3,.seat-history-card h3{margin:0 0 16px}#softphone.seat-embedded{position:relative;inset:auto;display:block;width:100%;max-width:none;margin:0;padding:0;border:0;box-shadow:none;overflow:visible}#softphone.seat-embedded>.modal-head{display:none}#softphone.seat-embedded .phone-layout{padding:0}#softphone.seat-embedded.personal-open{width:100%}#softphone.seat-embedded .phone-body{width:100%;min-width:0}@media(max-width:1050px){.seat-workspace-grid{grid-template-columns:1fr}.seat-phone-card{max-width:460px;grid-row:1}.seat-summary{gap:20px;flex-wrap:wrap}}
#softphone.seat-embedded .phone-body{max-height:none}#softphone.seat-embedded.personal-open .phone-body{margin-left:0}#softphone.seat-embedded .phone-personal{width:100%;top:var(--phone-drawer-mobile-top,150px);z-index:3;border-right:0}

/* Align searchable selections with the editor's existing label/control columns. */
#editor .reference-field{grid-template-columns:150px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:10px 0;border-bottom:1px solid #edf1f6;align-items:start}
#editor .reference-field>.field-caption{grid-column:1;grid-row:1}
#editor .reference-field>.reference-picker{grid-column:2;grid-row:1}
#editor .reference-field>.field-hint{grid-column:2}
#editor .reference-picker>input[role=combobox]{margin-top:0}
#editor .reference-results{position:relative;top:auto;left:auto;right:auto;margin-top:5px;width:100%}
#editor.agent-editor[open]{display:flex;flex-direction:column;min-height:min(600px,90vh)}
#editor.agent-editor #editorForm{flex:1;display:flex;flex-direction:column;min-height:0}
#editor.agent-editor #editorFields{flex:1;max-height:calc(90vh - 200px);align-content:start;min-height:0}
#editor.agent-editor .modal-footer{flex:none}
@media(max-width:680px){#editor .reference-field{grid-template-columns:110px minmax(0,1fr);column-gap:10px}}
#editor.agent-editor .form-grid>label>input{width:260px;max-width:100%}

.header-clock{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.header-clock .timezone-picker{text-align:center}.header-clock .timezone-picker>input{text-align:center}.account-balance{color:#455c7e;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.top-right .account-balance[hidden]{display:none}
