/* cs-select：自绘下拉组件，替代系统级 select 弹出层
   按钮面继承原生控件的计算样式以融入各主题，弹出面板统一风格 */
.cs-select{position:relative;display:inline-block;vertical-align:middle;}
.cs-select.cs-block{display:block;}
.cs-select .cs-native{position:absolute!important;left:0;top:0;width:1px;height:1px;opacity:0;pointer-events:none;border:0;padding:0;margin:0;}
.cs-select-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;box-sizing:border-box;cursor:pointer;text-align:left;background:#fff;border:1px solid #ccc;border-radius:4px;color:#555;font-size:14px;padding:6px 12px;transition:border-color .15s ease,box-shadow .15s ease;}
.cs-select-btn:hover{border-color:#a9b2bd;}
.cs-select-btn:focus{outline:none;border-color:var(--cs-accent,#337ab7);box-shadow:0 0 0 3px var(--cs-soft,rgba(51,122,183,.12));}
.cs-open .cs-select-btn{border-color:var(--cs-accent,#337ab7);box-shadow:0 0 0 3px var(--cs-soft,rgba(51,122,183,.12));}
.cs-select-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cs-select-label.cs-placeholder{color:#999;}
.cs-select-caret{flex:none;transition:transform .15s ease;color:#8a94a3;font-size:14px;}
.cs-open .cs-select-caret{transform:rotate(180deg);}
.cs-select.cs-disabled .cs-select-btn{background:#eee!important;cursor:not-allowed;box-shadow:none!important;}
.cs-select.cs-disabled .cs-select-label{color:#999;}
.cs-panel{position:fixed;z-index:2147483000;min-width:96px;max-width:340px;max-height:264px;overflow-x:hidden;overflow-y:auto;background:#fff;border:1px solid #e3e6eb;border-radius:8px;box-shadow:0 6px 20px rgba(31,45,61,.14);padding:4px;margin:0;list-style:none;box-sizing:border-box;opacity:0;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease;}
.cs-panel.cs-show{opacity:1;transform:translateY(0);}
.cs-panel li{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;font-size:14px;color:#333;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cs-panel li.cs-group{padding:5px 10px 3px;font-size:12px;color:#9aa3b0;cursor:default;}
.cs-panel li.cs-active{background:#f4f6f9;}
.cs-panel li.cs-selected{color:var(--cs-accent,#337ab7);font-weight:600;background:var(--cs-soft,rgba(51,122,183,.12));}
.cs-panel li.cs-selected .fa{margin-left:auto;font-size:12px;}
.cs-panel li.cs-disabled{color:#c0c4cc;cursor:not-allowed;}
.cs-panel::-webkit-scrollbar{width:6px;}
.cs-panel::-webkit-scrollbar-thumb{background:#d8dce3;border-radius:3px;}
.cs-panel::-webkit-scrollbar-track{background:transparent;}
