.ai-admin { --ai-line:var(--border, rgba(148,163,184,.24)); min-width:0; }
.ai-admin [hidden] { display:none !important; }
.ai-admin-message { padding:14px 18px; border:1px solid var(--ai-line); border-radius:14px; background:rgba(59,130,246,.09); overflow-wrap:anywhere; }
.ai-admin-message[data-tone="danger"] { color:#ffb6be; border-color:rgba(244,63,94,.5); background:rgba(244,63,94,.1); }
.ai-admin-message[data-tone="warning"] { color:#f8d480; border-color:rgba(245,158,11,.45); }
.ai-admin-message[data-tone="success"] { color:#a0e9c6; border-color:rgba(34,197,94,.4); }
.ai-admin-layout { display:grid; gap:20px; }
.ai-admin-panel { min-width:0; }
.ai-admin-panel h2 { margin-top:6px; }
.ai-admin-help { font-size:.85rem; line-height:1.65; color:var(--text-muted,#aeb9c9); margin:8px 0; overflow-wrap:anywhere; }
.ai-admin-state,.ai-admin-test-buttons,.ai-admin-test-heading { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.ai-admin-state small { overflow-wrap:anywhere; }
.ai-admin-state .secondary-button { margin-inline-start:auto; }
.ai-admin-metrics { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:14px; margin:18px 0; }
.ai-admin-metrics > div { padding:16px; border:1px solid var(--ai-line); border-radius:16px; background:rgba(127,155,194,.07); min-width:0; }
.ai-admin-metrics dt { color:var(--text-muted,#aeb9c9); font-size:.8rem; }
.ai-admin-metrics dd { margin:9px 0 0; font-size:clamp(.95rem,1.8vw,1.4rem); font-weight:750; overflow-wrap:anywhere; }
.ai-admin-form-grid,.ai-admin-test-selectors { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:start; }
.ai-admin .field { min-width:0; }
.ai-admin input,.ai-admin select { width:100%; min-height:46px; box-sizing:border-box; }
.ai-admin input[type="checkbox"] { width:18px; min-width:18px; height:18px; min-height:0; accent-color:#4d8fff; }
.ai-admin .check-line { display:flex; gap:10px; align-items:center; min-height:36px; font-size:.88rem; }
.ai-admin .check-line input { flex:0 0 18px; }
.ai-admin-expiry .field { margin-top:8px; }
.ai-admin-models { border-top:1px solid var(--ai-line); padding-top:22px; }
.ai-admin-model-list { display:grid; gap:12px; margin-top:18px; }
.ai-admin-model-picker { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; margin-top:18px; }
.ai-admin-model-picker label { grid-column:1 / -1; }
.ai-admin-budget-editor { display:grid; grid-template-columns:minmax(100px,220px) auto; gap:12px; align-items:center; margin-top:22px; border-top:1px solid var(--ai-line); padding-top:18px; }
.ai-admin-budget-editor > label,.ai-admin-budget-editor > p,.ai-admin-budget-confirm { grid-column:1 / -1; }
.ai-admin-budget-confirm { padding:16px; border-radius:14px; border:1px solid var(--ai-line); background:rgba(59,130,246,.08); }
.ai-admin-budget-confirm button { margin:8px 12px 0 0; }
.ai-admin-model { border:1px solid var(--ai-line); border-radius:16px; background:rgba(111,143,188,.05); }
.ai-admin-model summary { padding:16px; cursor:pointer; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.ai-admin-model summary::before { content:'›'; font-size:1.25rem; color:var(--accent,#86bfff); }
.ai-admin-model[open] summary::before { transform:rotate(90deg); }
.ai-admin-model summary strong { overflow-wrap:anywhere; }
.ai-admin-model summary .status-pill { margin-inline-start:auto; }
.ai-admin-model-content { padding:0 18px 18px; border-top:1px solid var(--ai-line); }
.ai-admin-model-content > .check-line:first-child { margin-top:12px; }
.ai-admin-model-content .ai-admin-form-grid { margin-top:16px; }
.ai-admin-test-buttons { margin:16px 0; }
.ai-admin-test-buttons button { flex:1 1 190px; }
.ai-admin-test-history { margin-top:24px; }
.ai-admin-batch-head { display:flex; align-items:center; flex-wrap:wrap; gap:18px; margin:18px 0; }
.ai-admin-batch-head button { min-width:190px; min-height:48px; }
.ai-admin [data-ai-test-progress] { display:block; width:100%; height:12px; border:0; border-radius:12px; overflow:hidden; accent-color:#59cba0; background:rgba(148,163,184,.16); }
.ai-admin [data-ai-test-progress]::-webkit-progress-bar { background:rgba(148,163,184,.16); border-radius:12px; }
.ai-admin [data-ai-test-progress]::-webkit-progress-value { background:#59cba0; border-radius:12px; transition:width .2s; }
.ai-admin-test-details { margin-top:18px; border-top:1px solid var(--ai-line); padding-top:16px; }
.ai-admin-test-details > summary { cursor:pointer; font-weight:650; color:var(--accent,#86bfff); padding:6px 0; }
.ai-admin-check-list { margin-top:12px; }
.ai-admin-check-row { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:10px 0; border-bottom:1px solid var(--ai-line); }
.ai-admin-check-row > span:first-child { min-width:0; overflow-wrap:anywhere; font-size:.85rem; }
.ai-admin-check-row .status-pill { flex:0 0 auto; }
.ai-admin-required-tests { margin:18px 0 24px; padding:18px; border:1px solid var(--ai-line); border-radius:16px; background:rgba(59,130,246,.07); }
.ai-admin-required-test { display:flex; gap:20px; align-items:center; justify-content:space-between; border-top:1px solid var(--ai-line); padding:14px 0; }
.ai-admin-required-test > div { min-width:0; }
.ai-admin-required-test button { flex:0 0 auto; min-height:44px; }
.ai-admin-required-test:last-child { padding-bottom:0; }
.ai-admin-pdf-test { border:1px solid var(--ai-line); border-radius:16px; padding:18px; margin-top:20px; background:rgba(59,130,246,.05); }
.ai-admin-test-record { border-top:1px solid var(--ai-line); padding:16px 0; }
.ai-admin-test-heading { justify-content:space-between; }
.ai-admin-test-record p { margin:5px 0; }
.ai-admin .status-pill { white-space:normal; }
.ai-admin button:disabled,.ai-admin input:disabled { opacity:.55; cursor:not-allowed; }
.ai-admin :focus-visible { outline:3px solid #8bbfff; outline-offset:3px; }
.ai-admin-panel > button { margin:12px 12px 0 0; }
@media (max-width:1000px) { .ai-admin-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:620px) { .ai-admin-required-test { align-items:stretch; flex-direction:column; gap:8px; } }
@media (max-width:620px) { .ai-admin-form-grid,.ai-admin-test-selectors,.ai-admin-model-picker,.ai-admin-budget-editor { grid-template-columns:1fr; } .ai-admin-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .ai-admin-state .secondary-button { margin-inline-start:0; width:100%; } .ai-admin-test-buttons button { flex-basis:100%; } .ai-admin-model-content { padding:0 12px 12px; } .ai-admin-model summary { padding:12px; } }
