:root { color-scheme: light; --ink:#12343a; --muted:#6c7d80; --line:#dfe8e6; --surface:#fff; --wash:#f4f8f7; --teal:#2b948c; --lime:#cde66d; --danger:#b74a4a; }
* { box-sizing:border-box; }
body { margin:0; background:var(--wash); color:#18282b; font-family:Arial,"Microsoft YaHei",sans-serif; }
button,input { font:inherit; }
.admin-shell { max-width:1500px; margin:0 auto; padding:36px 38px 60px; }
.admin-header { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; margin-bottom:24px; }
.eyebrow { margin:0 0 9px; color:var(--teal); font-size:11px; font-weight:700; letter-spacing:1.5px; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:8px; color:var(--ink); font-size:31px; }
h2 { margin-bottom:5px; color:var(--ink); font-size:18px; }
h3 { margin-bottom:4px; color:var(--ink); font-size:15px; }
.muted { color:var(--muted); font-size:12px; line-height:1.6; }
.header-actions { display:flex; align-items:center; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.identity { color:var(--ink); font-size:12px; font-weight:700; }
.button { border:1px solid var(--line); border-radius:5px; padding:9px 14px; cursor:pointer; font-size:12px; font-weight:700; }
.button { text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
.button.secondary { background:var(--surface); color:var(--ink); }
.button.secondary:hover { border-color:var(--teal); color:var(--teal); }
.button.dark { border-color:var(--ink); background:var(--ink); color:#fff; }
.message { margin-bottom:18px; padding:11px 14px; border:1px solid var(--line); border-radius:5px; background:#fff; font-size:12px; }
.message.info { color:var(--ink); }.message.success { border-color:#b9ddc6; background:#f0fbf3; color:#2d7047; }.message.error { border-color:#e6bcbc; background:#fff4f4; color:var(--danger); }
.admin-grid { display:grid; grid-template-columns:minmax(460px, .9fr) minmax(560px, 1.4fr); gap:18px; align-items:start; }
.panel { min-width:0; border:1px solid var(--line); border-radius:7px; background:var(--surface); box-shadow:0 8px 24px rgba(18,52,58,.045); }
.panel-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; padding:21px 22px 16px; border-bottom:1px solid var(--line); }
.search { width:180px; min-width:0; padding:9px 10px; border:1px solid var(--line); border-radius:4px; color:var(--ink); outline:0; }
.search:focus { border-color:var(--teal); }
.table-wrap { overflow:auto; }
table { width:100%; border-collapse:collapse; font-size:11px; }
th,td { padding:13px 15px; border-bottom:1px solid #edf2f1; text-align:left; white-space:nowrap; }
th { color:var(--muted); font-size:10px; font-weight:700; }
.account-row { cursor:pointer; }.account-row:hover,.account-row.selected { background:#f1f8f6; }.account-row.selected td:first-child { box-shadow:inset 3px 0 var(--teal); }
.account-row strong { color:var(--ink); }.admin-badge { display:inline-block; margin-left:7px; padding:3px 5px; border-radius:3px; background:#eaf5c8; color:#536c28; font-size:9px; }
.empty { padding:30px 15px; color:var(--muted); text-align:center; }
.detail-content { padding:20px 22px 24px; }
.account-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding-bottom:20px; }
.account-meta > div { display:grid; gap:5px; }.label { color:var(--muted); font-size:10px; }.account-meta strong { color:var(--ink); font-size:12px; overflow-wrap:anywhere; }
.security-note { display:flex; align-items:center; gap:12px; padding:12px; border:1px solid #e8eddf; background:#fbfdf4; border-radius:5px; margin-bottom:23px; }.security-note strong { color:var(--ink); font-size:11px; }.security-note span { color:var(--muted); font-size:10px; flex:1; line-height:1.5; }
.data-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:10px; }.data-heading p { margin-bottom:0; }
.json-view { max-height:620px; overflow:auto; margin:0; padding:15px; border:1px solid var(--line); border-radius:4px; background:#f8fbfa; color:#29474a; font:11px/1.6 Consolas,Monaco,monospace; white-space:pre-wrap; overflow-wrap:anywhere; }
.blocked { max-width:600px; margin:18vh auto; padding:40px; background:#fff; text-align:center; }.blocked h1 { font-size:26px; }.blocked a { color:var(--teal); }
.ai-config-panel { margin-top:18px; }
.ai-config-form { display:grid; grid-template-columns:minmax(220px,1.4fr) minmax(160px,.8fr) minmax(220px,1.2fr) auto; gap:12px; align-items:end; padding:20px 22px 7px; }
.ai-config-form label { display:grid; gap:6px; min-width:0; }
.ai-config-form label span { color:var(--muted); font-size:10px; font-weight:700; }
.ai-config-form input { width:100%; min-width:0; padding:9px 10px; border:1px solid var(--line); border-radius:4px; color:var(--ink); outline:0; }
.ai-config-form input:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(43,148,140,.1); }
.ai-config-form .button { min-height:37px; white-space:nowrap; }
.ai-local-note { grid-column:1/-1; padding:9px 11px; border-left:3px solid var(--teal); background:#f0f8f6; color:#3d5f5b; font-size:11px; line-height:1.6; }
.ai-config-status { margin:0; padding:0 22px 18px; }
@media (max-width:1000px) { .admin-grid { grid-template-columns:1fr; } }
@media (max-width:1000px) { .ai-config-form { grid-template-columns:1fr 1fr; } .ai-config-form .button { grid-column:1/-1; justify-self:start; } }
@media (max-width:620px) { .admin-shell { padding:22px 14px 40px; } .admin-header { display:block; } .header-actions { justify-content:flex-start; margin-top:18px; } .panel-heading { display:block; } .search { width:100%; margin-top:12px; } .account-meta { grid-template-columns:1fr; } .security-note { align-items:flex-start; flex-wrap:wrap; } .security-note span { flex-basis:100%; order:3; } .data-heading { display:block; } .data-heading .button { margin-top:9px; } .ai-config-form { grid-template-columns:1fr; padding:18px 15px 7px; } .ai-config-form .button { grid-column:auto; width:100%; } .ai-config-status { padding:0 15px 16px; } }
