/* ══════════════════════════════════════
   theme.css — 主题变量、全局重置、暗色覆盖
   智能反馈工单系统 V7.0
══════════════════════════════════════ */

/* ── CSS 变量 ── */
:root{--bg:#0c0e14;--bg2:#12141c;--card:#161923;--card-hover:#1c1f2e;--primary:#7c7fff;--primary-light:rgba(124,127,255,.12);--primary-glow:rgba(124,127,255,.25);--accent:#2dd9f4;--text:#e2e8f0;--text2:#94a3b8;--text3:#64748b;--border:rgba(255,255,255,.06);--border-l:rgba(255,255,255,.1);--green:#10b981;--orange:#f59e0b;--red:#ef4444;--blue:#3b82f6;--purple:#8b5cf6;--teal:#14b8a6;--font-mono:'JetBrains Mono','SF Mono','Roboto Mono',Menlo,Consolas,monospace;--radius:14px;--radius-s:8px;--hd-h:56px;--tr:.25s cubic-bezier(.4,0,.2,1)}

/* ── 全局重置 ── */
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden}
::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.2)}

/* ── 全局动画关键帧 ── */
@keyframes pageIn{0%{opacity:0;transform:translateY(12px)}100%{opacity:1;transform:translateY(0)}}
@keyframes pageSlideIn{0%{opacity:0;transform:translateY(16px)}100%{opacity:1;transform:translateY(0)}}
@keyframes panelIn{0%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:translateY(0)}}
@keyframes dlgPop{0%{opacity:0;transform:scale(.92) translateY(-8px)}100%{opacity:1;transform:scale(1) translateY(0)}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
@keyframes badgePulse{0%,100%{opacity:1}50%{opacity:.7}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes barPulse{0%,100%{opacity:1}50%{opacity:.7}}
@keyframes iconGlow{0%{filter:drop-shadow(0 0 4px rgba(124,127,255,.4))}100%{filter:drop-shadow(0 0 8px rgba(124,127,255,.7))}}
@keyframes floatIcon{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes dotPulse{0%,100%{box-shadow:0 0 12px rgba(124,127,255,.3)}50%{box-shadow:0 0 24px rgba(124,127,255,.6)}}

/* ── 全局微交互 ── */
.page-enter{animation:pageSlideIn .4s cubic-bezier(.16,1,.3,1) both}
.pulse{animation:pulse 2s infinite}
.skeleton{background:linear-gradient(90deg,rgba(255,255,255,.03) 25%,rgba(255,255,255,.07) 50%,rgba(255,255,255,.03) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-s)}

/* V11.2 技术数据等宽字体（工单号/Tokens/耗时/IP/chatId）*/
.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}

/* 弹窗弹性缩放 */
.el-dialog{animation:dlgPop .3s cubic-bezier(.34,1.56,.64,1) both!important}

/* 按钮波纹点击反馈 */
.el-button{position:relative;overflow:hidden}
.el-button::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.08);opacity:0;transition:opacity .2s}
.el-button:active::after{opacity:1}

/* 表格行悬停左侧高亮条 */
.el-table__row td:first-child{border-left:2px solid transparent!important;transition:border-color .2s!important}
.el-table__row:hover td:first-child{border-left-color:var(--primary)!important}

/* 操作按钮滑出 */
.action-btns{display:flex;gap:4px;opacity:0;transform:translateX(6px);transition:all .2s}
.el-table__row:hover .action-btns{opacity:1;transform:translateX(0)}

/* ── ElementPlus Dark Theme Overrides ── */
.el-table{--el-table-bg-color:transparent!important;--el-table-tr-bg-color:transparent!important;--el-table-header-bg-color:transparent!important;--el-table-row-hover-bg-color:rgba(124,127,255,.06)!important;--el-table-border-color:var(--border)!important;--el-table-text-color:var(--text)!important;--el-table-header-text-color:var(--text2)!important;--el-fill-color-lighter:rgba(255,255,255,.02)!important;--el-fill-color:rgba(255,255,255,.02)!important;--el-fill-color-light:rgba(255,255,255,.02)!important;font-size:13px!important}
.el-table th.el-table__cell{background:rgba(255,255,255,.025)!important;font-weight:600!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.5px!important}
.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:rgba(255,255,255,.015)!important}
.el-table .el-table__empty-block{background:transparent!important}

/* 分页按钮暗色覆盖 */
.el-pagination .btn-prev,.el-pagination .btn-next{background:rgba(255,255,255,.04)!important;color:var(--text2)!important;border:1px solid var(--border-l)!important;border-radius:6px!important}
.el-pagination .btn-prev:hover,.el-pagination .btn-next:hover{background:var(--primary-light)!important;color:var(--primary)!important;border-color:rgba(124,127,255,.3)!important}
.el-pagination .btn-prev:disabled,.el-pagination .btn-next:disabled{background:rgba(255,255,255,.02)!important;color:var(--text3)!important;opacity:.5}

.el-dialog{--el-dialog-bg-color:var(--card)!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;box-shadow:0 8px 40px rgba(0,0,0,.4)!important}
.el-dialog__header{border-bottom:1px solid var(--border)!important;padding:16px 22px!important}
.el-dialog__title{color:var(--text)!important;font-weight:700!important;font-size:15px!important}
.el-dialog__body{color:var(--text)!important;padding:20px 22px!important}
.el-dialog__footer{border-top:1px solid var(--border)!important;padding:14px 22px!important}

/* V11.0 Drawer 深色主题覆盖（默认 ElementPlus 为亮色） */
.el-drawer{--el-drawer-bg-color:var(--bg)!important;--el-bg-color:var(--bg)!important;background:var(--bg)!important;color:var(--text)!important;border-left:1px solid var(--border)!important;box-shadow:-8px 0 40px rgba(0,0,0,.5)!important}
.el-drawer__header{color:var(--text)!important;margin-bottom:0!important;padding:16px 20px!important;border-bottom:1px solid var(--border)!important}
.el-drawer__body{background:var(--bg)!important;color:var(--text)!important;padding:0!important}
.el-drawer__close-btn{color:var(--text2)!important}
.el-drawer__close-btn:hover{color:var(--text)!important}
.el-overlay{backdrop-filter:blur(4px)!important}
.el-form-item__label{color:var(--text2)!important}
.el-input__wrapper{background:rgba(255,255,255,.04)!important;border:1px solid var(--border-l)!important;box-shadow:none!important;border-radius:var(--radius-s)!important;transition:all .25s!important}
.el-input__wrapper:hover{border-color:rgba(124,127,255,.3)!important}
.el-input__wrapper.is-focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--primary-glow)!important}
.el-input__inner{color:var(--text)!important}
.el-input__inner::placeholder{color:var(--text3)!important}

/* V11.1 Select 深色主题覆盖 */
.el-select{--el-fill-color-blank:transparent!important}
.el-select__wrapper{background:rgba(255,255,255,.04)!important;border:1px solid var(--border-l)!important;box-shadow:none!important;border-radius:var(--radius-s)!important;transition:all .25s!important}
.el-select__wrapper:hover{border-color:rgba(124,127,255,.3)!important}
.el-select__wrapper.is-focused{border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--primary-glow)!important}
.el-select__placeholder{color:var(--text)!important}
.el-select__placeholder.is-transparent{color:var(--text3)!important}
.el-select__caret{color:var(--text3)!important}
.el-select__input{color:var(--text)!important;background:transparent!important}
.el-select-dropdown{background:var(--card)!important;border:1px solid var(--border)!important;border-radius:var(--radius-s)!important}
.el-select-dropdown__item{color:var(--text2)!important;background:transparent!important}
.el-select-dropdown__item:hover,.el-select-dropdown__item.hover{background:var(--primary-light)!important;color:var(--primary)!important}
.el-select-dropdown__item.is-selected{color:var(--primary)!important;font-weight:700!important;background:rgba(124,127,255,.1)!important}
.el-select-dropdown__item.is-selected:hover{background:var(--primary-light)!important}
.el-popper.is-light{background:var(--card)!important;border:1px solid var(--border)!important}
.el-popper.is-light .el-popper__arrow::before{background:var(--card)!important;border-color:var(--border)!important}
.el-textarea__inner{background:rgba(255,255,255,.04)!important;border:1px solid var(--border-l)!important;color:var(--text)!important;border-radius:var(--radius-s)!important;box-shadow:none!important}
.el-textarea__inner:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--primary-glow)!important}
.el-radio-button__inner{background:rgba(255,255,255,.04)!important;border-color:var(--border-l)!important;color:var(--text2)!important;transition:all .25s!important}
.el-radio-button__original-radio:checked+.el-radio-button__inner{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important;box-shadow:0 2px 8px rgba(124,127,255,.3)!important}
.el-button{transition:all .2s!important;border-radius:var(--radius-s)!important}
.el-button:active{transform:scale(.97)!important}
.el-button--primary{background:var(--primary)!important;border-color:var(--primary)!important}
.el-button--primary:hover{background:#818cf8!important;border-color:#818cf8!important}
.el-button--default{background:rgba(255,255,255,.04)!important;border-color:var(--border-l)!important;color:var(--text2)!important}
.el-button--default:hover{border-color:var(--primary)!important;color:var(--primary)!important;background:var(--primary-light)!important}
.el-pagination{--el-pagination-bg-color:transparent!important;--el-pagination-button-bg-color:rgba(255,255,255,.04)!important;--el-pagination-hover-color:var(--primary)!important;--el-pagination-text-color:var(--text2)!important;--el-pagination-button-color:var(--text2)!important}
.el-pager li{background:rgba(255,255,255,.04)!important;color:var(--text2)!important;border-radius:6px!important}
.el-pager li.is-active{background:var(--primary)!important;color:#fff!important}
.el-dropdown-menu{background:var(--card)!important;border:1px solid var(--border)!important;border-radius:var(--radius-s)!important}
.el-dropdown-menu__item{color:var(--text2)!important}
.el-dropdown-menu__item:hover{background:var(--primary-light)!important;color:var(--primary)!important}
.el-popover{background:var(--card)!important;border:1px solid var(--border)!important;color:var(--text2)!important}
.el-message-box{--el-messagebox-title-color:var(--text)!important;--el-messagebox-content-color:var(--text2)!important;background:var(--card)!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important}
.el-loading-mask{background:rgba(12,14,20,.6)!important}
