:root{
  --primary:#0D67EF;--primary-dark:#084FBF;--primary-soft:#D0EAFF;--surface:#F6F9FF;
  --ink:#172033;--muted:#6F7890;--line:#E3EAF4;--card:#FFFFFF;--sidebar:#0B1731;
  --green:#12A875;--green-soft:#E5F7F0;--orange:#F18A38;--orange-soft:#FFF0E3;
  --red:#E24E5E;--red-soft:#FDE9EC;--cyan:#18A9C0;--cyan-soft:#E3F7FA;
  --shadow:0 8px 24px rgba(18,39,77,.07);--sidebar-width:232px;--topbar-height:64px;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--surface);font-size:13px;overflow:hidden}
button,input,select,textarea{font:inherit}button{color:inherit}
.admin-app{display:grid;grid-template-columns:var(--sidebar-width) 1fr;height:100%}
.sidebar{background:var(--sidebar);color:#D8E1F3;height:100%;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid rgba(255,255,255,.05)}
.brand{height:66px;display:flex;align-items:center;gap:11px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-mark{width:34px;height:34px;background:var(--primary);color:white;display:grid;place-items:center;font-size:16px;font-weight:900}
.brand strong{display:block;font-size:14px;color:white}.brand small{display:block;color:#7F91B4;font-size:9px;margin-top:2px;letter-spacing:.06em}
.tenant-wrap{position:relative;z-index:20}.tenant-switch{width:calc(100% - 24px);margin:12px 12px 6px;background:rgba(255,255,255,.055);color:inherit;border:1px solid rgba(255,255,255,.07);padding:10px 11px;display:flex;align-items:center;gap:9px;cursor:pointer;text-align:left}.tenant-switch:hover,.tenant-switch[aria-expanded="true"]{background:rgba(255,255,255,.09);border-color:rgba(121,176,255,.35)}
.tenant-switch .tenant-logo{width:29px;height:29px;background:#143A70;color:#79B0FF;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.tenant-switch>span:nth-child(2){min-width:0;flex:1}.tenant-switch strong{display:block;color:#F2F6FF;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tenant-switch small{display:block;color:#7E90B0;font-size:8px;margin-top:2px}.tenant-switch svg{width:14px;height:14px;fill:none;stroke:#8191AD;stroke-width:2;transition:.16s}.tenant-switch[aria-expanded="true"]>svg{transform:rotate(180deg)}
.tenant-dropdown{position:absolute;left:12px;right:12px;top:64px;background:#102344;border:1px solid #29436F;box-shadow:0 16px 35px rgba(0,0,0,.28);padding:6px;z-index:30}.tenant-dropdown-title{padding:7px 8px;color:#7185A7;font-size:8px;letter-spacing:.08em}.tenant-option{width:100%;border:0;background:transparent;color:#AEBBD1;display:grid;grid-template-columns:26px 1fr 14px;align-items:center;gap:8px;padding:8px;text-align:left;cursor:pointer}.tenant-option:hover{background:rgba(255,255,255,.06);color:white}.tenant-option.active{background:rgba(13,103,239,.2);color:white}.tenant-option-mark{width:26px;height:26px;background:#17345F;color:#79B0FF;display:grid;place-items:center;font-size:8px;font-weight:800}.tenant-option strong{display:block;font-size:9px}.tenant-option small{display:block;color:#7185A7;font-size:7px;margin-top:2px}.tenant-option svg{width:13px;height:13px;fill:none;stroke:#55A3FF;stroke-width:2}
.nav-scroll{flex:1;overflow:auto;padding:7px 0 18px;scrollbar-width:none}.nav-scroll::-webkit-scrollbar{display:none}.nav-group{margin-top:13px}.nav-group-label{width:100%;height:25px;padding:0 16px 6px;border:0;background:transparent;color:#607292;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.08em;text-align:left;cursor:pointer}.nav-group-label:hover{color:#9DB0CF}.nav-group-label svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2;transition:.16s}.nav-group-label[aria-expanded="false"] svg{transform:rotate(-90deg)}.nav-item{width:100%;height:38px;border:0;background:transparent;color:#98A8C4;padding:0 15px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;border-left:3px solid transparent;transition:.16s}.nav-item:hover{background:rgba(255,255,255,.045);color:#E9F0FF}.nav-item.active{background:linear-gradient(90deg,rgba(13,103,239,.25),rgba(13,103,239,.05));color:white;border-left-color:#4EA0FF}.nav-item svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.nav-item span:nth-child(2){flex:1;font-size:11px}.nav-item .nav-badge{font-size:8px;min-width:18px;height:17px;padding:0 5px;display:grid;place-items:center;background:#E14C5B;color:white}
.sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.07)}.system-status{display:flex;align-items:center;gap:8px;padding:8px 7px;color:#8FA1C0;font-size:9px}.status-dot{width:7px;height:7px;background:#27D192;border-radius:50%;box-shadow:0 0 0 4px rgba(39,209,146,.08)}
.workspace{min-width:0;height:100%;display:grid;grid-template-rows:var(--topbar-height) 1fr}.topbar{height:var(--topbar-height);background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 22px;z-index:5}.topbar-left{display:flex;align-items:center;gap:17px}.breadcrumb{display:flex;align-items:center;gap:8px}.breadcrumb span{font-size:10px;color:var(--muted)}.breadcrumb svg{width:12px;height:12px;fill:none;stroke:#9BA4B5;stroke-width:2}.breadcrumb strong{font-size:12px}.global-search{display:flex;align-items:center;gap:8px;width:280px;height:36px;background:var(--surface);border:1px solid var(--line);padding:0 11px}.global-search svg{width:16px;height:16px;fill:none;stroke:#96A1B5;stroke-width:2}.global-search input{border:0;outline:0;background:transparent;width:100%;font-size:10px}.shortcut{font-size:8px;color:#9DA7B8;border:1px solid #DDE4EE;padding:2px 4px;background:white}
.topbar-right{display:flex;align-items:center;gap:9px}.env-badge{font-size:8px;color:var(--green);background:var(--green-soft);padding:6px 8px}.top-icon{width:35px;height:35px;border:1px solid var(--line);background:white;display:grid;place-items:center;cursor:pointer;position:relative}.top-icon svg{width:17px;height:17px;fill:none;stroke:var(--ink);stroke-width:1.7}.top-icon i{position:absolute;right:5px;top:5px;width:6px;height:6px;background:var(--red);border:2px solid white;border-radius:50%}
.role-select-wrap{display:flex;align-items:center;gap:8px;border-left:1px solid var(--line);padding-left:12px;margin-left:3px}.role-avatar{width:34px;height:34px;background:var(--primary);color:white;display:grid;place-items:center;font-size:11px;font-weight:800}.role-meta strong{display:block;font-size:10px}.role-meta small{display:block;font-size:8px;color:var(--muted);margin-top:2px}.role-select{border:0;background:transparent;outline:0;width:16px;color:transparent;cursor:pointer}.role-select option{color:var(--ink)}
.content{overflow:auto;padding:20px 22px 35px;scrollbar-color:#C8D3E3 transparent}.page-title-row{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:15px}.page-title-row h1{font-size:20px;margin:0 0 4px;letter-spacing:-.02em}.page-title-row p{font-size:10px;color:var(--muted);margin:0}.page-actions{display:flex;gap:8px;align-items:center}
.btn{height:34px;border:1px solid var(--line);background:white;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:10px;font-weight:650;cursor:pointer}.btn:hover{border-color:#B4C7E5}.btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}.btn.primary{background:var(--primary);border-color:var(--primary);color:white}.btn.soft{background:var(--primary-soft);border-color:var(--primary-soft);color:var(--primary-dark)}.btn.danger{background:var(--red);border-color:var(--red);color:white}.btn.text{border:0;background:transparent;color:var(--primary);padding:0;height:auto}.btn.small{height:27px;padding:0 8px;font-size:9px}.btn:disabled{opacity:.45;cursor:not-allowed}
.role-banner{display:flex;align-items:center;gap:12px;padding:11px 13px;background:#EAF3FF;border-left:3px solid var(--primary);margin-bottom:15px}.role-banner-icon{width:31px;height:31px;background:#D0EAFF;color:var(--primary);display:grid;place-items:center}.role-banner-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}.role-banner div:nth-child(2){flex:1}.role-banner strong{font-size:11px}.role-banner p{font-size:9px;color:#5F6E85;margin:3px 0 0}.role-permissions{display:flex;gap:5px;flex-wrap:wrap}.permission-chip{font-size:8px;color:#45627F;background:white;border:1px solid #CFE0F5;padding:4px 6px}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:12px;margin-bottom:12px}.metric-card{background:white;border:1px solid var(--line);padding:15px;min-height:112px;position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;right:-27px;top:-34px;width:88px;height:88px;background:#F0F6FF;transform:rotate(30deg)}.metric-top{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.metric-label{font-size:10px;color:var(--muted)}.metric-icon{width:28px;height:28px;display:grid;place-items:center}.metric-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.metric-value{font-size:25px;font-weight:760;margin:10px 0 4px;letter-spacing:-.03em;position:relative;z-index:1}.metric-foot{font-size:8px;color:var(--muted);position:relative;z-index:1}.trend-up{color:var(--green);font-weight:700}.trend-down{color:var(--red);font-weight:700}.blue-soft{background:#D0EAFF;color:#0D67EF}.green-soft{background:var(--green-soft);color:var(--green)}.orange-soft{background:var(--orange-soft);color:var(--orange)}.red-soft{background:var(--red-soft);color:var(--red)}.cyan-soft{background:var(--cyan-soft);color:var(--cyan)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr);gap:12px}.panel{background:white;border:1px solid var(--line);min-width:0}.panel-head{min-height:48px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.panel-head h2{font-size:12px;margin:0}.panel-head p{font-size:8px;color:var(--muted);margin:2px 0 0}.panel-body{padding:14px}.panel-tabs{display:flex;gap:2px}.panel-tab{border:0;background:transparent;padding:7px 9px;font-size:9px;color:var(--muted);cursor:pointer}.panel-tab.active{color:var(--primary);background:var(--primary-soft)}
.chart-wrap{height:242px;position:relative}.chart-legend{display:flex;gap:14px;font-size:8px;color:var(--muted);margin-bottom:10px}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:8px;height:3px;background:var(--primary)}.chart-legend .alt i{background:var(--cyan)}.line-chart{width:100%;height:195px;overflow:visible}.line-chart .grid-line{stroke:#E9EEF5;stroke-width:1}.line-chart .main-line{fill:none;stroke:var(--primary);stroke-width:3;stroke-linecap:square;stroke-linejoin:round}.line-chart .alt-line{fill:none;stroke:var(--cyan);stroke-width:2;stroke-dasharray:5 4}.line-chart .area{fill:url(#areaFill);opacity:.35}.line-chart text{font-size:8px;fill:#8A94A7}.chart-tooltip{position:absolute;top:49px;left:48%;background:#12213E;color:white;padding:7px 9px;font-size:8px;box-shadow:var(--shadow)}.chart-tooltip strong{display:block;font-size:10px;margin-bottom:2px}
.todo-list{display:grid}.todo-item{display:grid;grid-template-columns:33px 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.todo-item:last-child{border:0}.todo-icon{width:33px;height:33px;display:grid;place-items:center}.todo-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}.todo-item strong{display:block;font-size:10px}.todo-item small{display:block;font-size:8px;color:var(--muted);margin-top:3px}.todo-count{font-size:13px;font-weight:750}.quick-links{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.quick-link{border:1px solid var(--line);background:white;padding:12px;text-align:left;cursor:pointer}.quick-link:hover{border-color:#B4CCEF;background:#FAFCFF}.quick-link svg{width:17px;height:17px;fill:none;stroke:var(--primary);stroke-width:1.8}.quick-link strong{display:block;font-size:9px;margin-top:8px}.quick-link small{display:block;font-size:7px;color:var(--muted);margin-top:2px}
.toolbar{background:white;border:1px solid var(--line);padding:10px 11px;display:flex;align-items:center;gap:8px;margin-bottom:10px}.toolbar .search-field{min-width:230px;flex:1;max-width:360px}.search-field,.select-field,.date-field{height:33px;border:1px solid var(--line);background:white;display:flex;align-items:center;gap:7px;padding:0 9px}.search-field svg{width:14px;height:14px;fill:none;stroke:#8D98AA;stroke-width:2}.search-field input{border:0;outline:0;width:100%;font-size:9px}.select-field select,.date-field input{border:0;outline:0;background:transparent;font-size:9px;color:var(--ink)}.toolbar-spacer{flex:1}
.table-panel{background:white;border:1px solid var(--line);overflow:hidden}.data-table{width:100%;border-collapse:collapse;table-layout:fixed}.data-table th{height:38px;background:#F8FAFE;border-bottom:1px solid var(--line);font-size:8px;color:#728098;font-weight:700;text-align:left;padding:0 11px}.data-table td{height:49px;border-bottom:1px solid #EDF1F6;padding:7px 11px;font-size:9px;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#FAFCFF}.data-table .cell-main{display:flex;align-items:center;gap:9px;min-width:0}.table-avatar{width:28px;height:28px;background:#D0EAFF;color:var(--primary);display:grid;place-items:center;font-weight:750;flex:0 0 auto}.cell-copy{min-width:0}.cell-copy strong{font-size:9px;display:block;overflow:hidden;text-overflow:ellipsis}.cell-copy small{font-size:7px;color:var(--muted);display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis}.status{display:inline-flex;align-items:center;gap:5px;padding:4px 6px;font-size:8px}.status:before{content:"";width:5px;height:5px;background:currentColor;border-radius:50%}.status.success{background:var(--green-soft);color:var(--green)}.status.warning{background:var(--orange-soft);color:var(--orange)}.status.danger{background:var(--red-soft);color:var(--red)}.status.info{background:var(--primary-soft);color:var(--primary)}.risk-tag{display:inline-block;padding:3px 6px;font-size:8px;background:#F1F4F8;color:#66748B}.risk-tag.high{background:var(--red-soft);color:var(--red)}.risk-tag.medium{background:var(--orange-soft);color:var(--orange)}.row-actions{display:flex;gap:5px}.icon-action{width:27px;height:27px;border:1px solid var(--line);background:white;display:grid;place-items:center;cursor:pointer}.icon-action:hover{border-color:#AFC7EA;color:var(--primary)}.icon-action svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2}.pagination{height:45px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:8px;color:var(--muted)}.page-buttons{display:flex;gap:4px}.page-btn{width:26px;height:26px;border:1px solid var(--line);background:white;font-size:8px;cursor:pointer}.page-btn.active{background:var(--primary);border-color:var(--primary);color:white}
.split-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:12px}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(200px,1fr));gap:10px}.review-card{background:white;border:1px solid var(--line);cursor:pointer}.review-image{height:132px;background:linear-gradient(145deg,#32538A,#E0B799);position:relative;overflow:hidden}.review-card:nth-child(2) .review-image{background:linear-gradient(145deg,#A44F5F,#252533)}.review-card:nth-child(3) .review-image{background:linear-gradient(145deg,#7EA665,#D7B36C)}.review-image:after{content:"AI生成图像";position:absolute;left:8px;bottom:8px;color:white;background:rgba(14,20,34,.65);padding:4px 6px;font-size:7px}.review-meta{padding:10px}.review-meta-top{display:flex;justify-content:space-between;align-items:center}.review-meta strong{font-size:10px}.review-meta p{font-size:8px;color:var(--muted);line-height:1.5;margin:7px 0}.confidence{font-size:8px;color:var(--red)}.review-actions{display:flex;gap:6px}.review-actions .btn{flex:1}
.model-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px;margin-bottom:12px}.model-card{background:white;border:1px solid var(--line);padding:13px}.model-head{display:flex;align-items:center;justify-content:space-between}.model-type{width:30px;height:30px;display:grid;place-items:center}.model-type svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}.model-card h3{font-size:11px;margin:11px 0 3px}.model-card p{font-size:8px;color:var(--muted);margin:0}.model-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.model-stats small{font-size:7px;color:var(--muted);display:block}.model-stats strong{font-size:10px;display:block;margin-top:2px}.switch{width:34px;height:18px;border:0;background:#C9D1DE;padding:2px;cursor:pointer}.switch i{display:block;width:14px;height:14px;background:white;transition:.15s}.switch.on{background:var(--primary)}.switch.on i{transform:translateX(16px)}
.progress-card{background:white;border:1px solid var(--line);padding:13px;margin-bottom:9px}.progress-head{display:flex;justify-content:space-between;align-items:center}.progress-head strong{font-size:10px}.progress-head span{font-size:9px;color:var(--primary);font-weight:700}.progress-track{height:6px;background:#E8EEF6;margin:10px 0 7px}.progress-track i{display:block;height:100%;background:var(--primary)}.progress-meta{display:flex;justify-content:space-between;font-size:8px;color:var(--muted)}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(300px,1fr));gap:10px}.setting-card{background:white;border:1px solid var(--line);padding:14px}.setting-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.setting-card-head h3{font-size:11px;margin:0}.setting-card-head svg{width:17px;height:17px;fill:none;stroke:var(--primary);stroke-width:1.8}.setting-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.setting-row:first-of-type{border-top:0}.setting-row div:first-child{flex:1}.setting-row strong{display:block;font-size:9px}.setting-row small{display:block;font-size:7px;color:var(--muted);margin-top:3px}.secret{font-family:monospace;color:#677389;font-size:8px;background:#F3F6FA;padding:4px 6px}
.donut-row{display:flex;align-items:center;gap:20px}.donut{width:130px;height:130px;border-radius:50%;background:conic-gradient(var(--primary) 0 64%,var(--cyan) 64% 83%,var(--orange) 83% 94%,#DFE7F2 94%);position:relative;flex:0 0 auto}.donut:after{content:"在线率\A 96.8%";white-space:pre;position:absolute;inset:24px;background:white;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:10px;font-weight:750;line-height:1.5}.donut-legend{display:grid;gap:9px;flex:1}.donut-legend div{display:flex;align-items:center;font-size:8px;color:var(--muted)}.donut-legend i{width:8px;height:8px;margin-right:7px}.donut-legend strong{margin-left:auto;color:var(--ink);font-size:9px}
.audit-stream{display:grid}.audit-item{display:grid;grid-template-columns:110px 30px 1fr auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.audit-item:last-child{border:0}.audit-time{font-size:8px;color:var(--muted)}.audit-icon{width:29px;height:29px;display:grid;place-items:center}.audit-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.audit-copy strong{font-size:9px;display:block}.audit-copy small{font-size:7px;color:var(--muted);display:block;margin-top:2px}.audit-ip{font-size:8px;color:var(--muted)}
.drawer-backdrop,.modal-backdrop{position:fixed;inset:0;background:rgba(7,18,38,.28);z-index:40}.drawer{position:absolute;right:0;top:0;bottom:0;width:min(560px,90vw);background:white;box-shadow:-18px 0 50px rgba(14,31,60,.15);display:flex;flex-direction:column}.drawer-head{height:62px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 18px}.drawer-head h2{font-size:15px;margin:0}.close-btn{width:32px;height:32px;border:1px solid var(--line);background:white;display:grid;place-items:center;cursor:pointer}.close-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}.drawer-body{flex:1;overflow:auto;padding:17px}.drawer-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:14px}.drawer-tab{border:0;background:transparent;padding:9px 13px;font-size:9px;color:var(--muted);border-bottom:2px solid transparent;cursor:pointer}.drawer-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.profile-summary{display:flex;align-items:center;gap:12px;padding:14px;background:var(--surface);margin-bottom:13px}.profile-summary .table-avatar{width:45px;height:45px;font-size:14px}.profile-summary div:nth-child(2){flex:1}.profile-summary h3{font-size:12px;margin:0 0 3px}.profile-summary p{font-size:8px;color:var(--muted);margin:0}.definition-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:14px}.definition-item{min-height:55px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px}.definition-item small{display:block;font-size:7px;color:var(--muted)}.definition-item strong{display:block;font-size:9px;margin-top:5px}.timeline{position:relative;padding-left:20px}.timeline:before{content:"";position:absolute;left:5px;top:5px;bottom:5px;width:1px;background:var(--line)}.timeline-item{position:relative;padding:0 0 15px}.timeline-item:before{content:"";position:absolute;left:-18px;top:4px;width:7px;height:7px;background:var(--primary);border:2px solid white;box-shadow:0 0 0 1px #BFD5F6}.timeline-item strong{font-size:9px}.timeline-item p{font-size:8px;color:var(--muted);margin:3px 0 0}.drawer-footer{border-top:1px solid var(--line);padding:11px 17px;display:flex;justify-content:flex-end;gap:8px}
.modal-backdrop{display:grid;place-items:center}.modal{width:min(460px,90vw);background:white;box-shadow:0 20px 60px rgba(9,24,52,.24)}.modal-head{height:55px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 16px}.modal-head h2{font-size:13px;margin:0}.modal-body{padding:17px}.modal-footer{padding:11px 16px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.warning-box{display:flex;gap:10px;background:var(--orange-soft);border-left:3px solid var(--orange);padding:11px;margin-bottom:14px}.warning-box svg{width:18px;height:18px;fill:none;stroke:var(--orange);stroke-width:1.8;flex:0 0 auto}.warning-box strong{font-size:9px}.warning-box p{font-size:8px;color:#7A654E;line-height:1.5;margin:3px 0 0}.form-grid{display:grid;gap:11px}.form-field label{display:block;font-size:8px;color:var(--muted);margin-bottom:5px}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid var(--line);background:white;min-height:35px;padding:8px 9px;outline:0;font-size:9px}.form-field textarea{min-height:75px;resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--primary)}
.toast{position:fixed;z-index:80;left:50%;bottom:24px;transform:translate(-50%,15px);background:#11213D;color:white;min-width:220px;max-width:420px;padding:11px 15px;font-size:9px;text-align:center;opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
.empty-state{padding:55px 20px;text-align:center}.empty-icon{width:54px;height:54px;margin:0 auto 14px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}.empty-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7}.empty-state h3{font-size:13px;margin:0 0 5px}.empty-state p{font-size:9px;color:var(--muted);line-height:1.6;margin:0}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}
@media(max-width:1100px){:root{--sidebar-width:205px}.metric-grid{grid-template-columns:repeat(2,1fr)}.model-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.split-grid{grid-template-columns:1fr}.review-grid{grid-template-columns:repeat(2,1fr)}.global-search{width:220px}}
@media(max-width:780px){body{overflow:auto}.admin-app{grid-template-columns:1fr}.sidebar{display:none}.workspace{height:100vh}.topbar{padding:0 12px}.global-search{display:none}.content{padding:14px}.metric-grid{grid-template-columns:1fr}.settings-grid,.review-grid,.model-grid{grid-template-columns:1fr}.role-banner{align-items:flex-start;flex-wrap:wrap}.data-table{min-width:850px}.table-panel{overflow:auto}}
