:root { color-scheme: light; --ink:#20211f; --muted:#6d6e69; --paper:#f3f2ed; --white:#fbfbf8; --line:#d6d5ce; --deep:#171816; --accent:#77766e; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
html { background:var(--paper); }
body { margin:0; color:var(--ink); font-family:"PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif; background:radial-gradient(circle at 85% -10%,#fff 0,transparent 28%),var(--paper); min-height:100vh; }
button,input,select { font:inherit; }
.admin-header { position:sticky; top:0; z-index:10; min-height:72px; padding:12px clamp(18px,4vw,56px); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid #33342f; color:#f7f7f2; background:rgba(23,24,22,.97); backdrop-filter:blur(12px); }
.admin-brand { display:flex; align-items:center; gap:12px; color:inherit; text-decoration:none; }
.admin-brand>span { width:42px; height:42px; display:grid; place-items:center; border:1px solid #77786f; border-radius:50%; font-family:serif; font-size:21px; }
.admin-brand div { display:grid; gap:3px; }.admin-brand strong { font-size:16px; letter-spacing:.08em; }.admin-brand small { color:#aaa9a2; font-size:11px; }
.admin-account { position:relative; color:#c8c8c1; font-size:13px; }
.admin-account summary { display:flex; align-items:center; gap:9px; min-height:40px; padding:8px 11px; border:1px solid #44453f; border-radius:3px; cursor:pointer; list-style:none; }
.admin-account summary::-webkit-details-marker { display:none; }
.admin-account summary b { color:#fff; font-size:12px; }
.account-dot { width:7px; height:7px; border-radius:50%; background:#aab6a6; box-shadow:0 0 0 3px rgba(170,182,166,.12); }
.account-menu { position:absolute; top:calc(100% + 10px); right:0; width:260px; padding:10px; border:1px solid #3b3c37; border-radius:4px; color:var(--ink); background:#fbfbf8; box-shadow:0 18px 45px rgba(0,0,0,.24); }
.account-menu p { margin:2px 6px 10px; color:var(--muted); font-size:11px; font-weight:800; letter-spacing:.12em; }
.account-menu div { display:grid; gap:3px; padding:10px 8px; border-top:1px solid var(--line); }
.account-menu small { color:var(--muted); }.account-menu strong { font-size:14px; }
.account-menu a { display:block; padding:10px 8px; border-top:1px solid var(--line); color:var(--ink); text-decoration:none; }
.account-menu a:hover { background:#efeee8; }
main { width:min(1500px,100%); margin:auto; padding:clamp(20px,4vw,48px); }
.signin,.loading { min-height:65vh; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.signin p,.admin-intro p { margin:0 0 8px; color:var(--muted); font-size:12px; font-weight:800; letter-spacing:.18em; }.signin h1 { margin:0 0 16px; font-family:serif; font-size:clamp(32px,6vw,58px); }.signin>span { max-width:620px; color:var(--muted); line-height:1.8; }
.primary-button { margin-top:28px; padding:14px 24px; border-radius:4px; color:#fff; background:var(--deep); text-decoration:none; font-weight:700; }.quiet-link { margin-top:16px; color:var(--muted); }
.password-form { width:min(420px,100%); display:grid; gap:10px; margin-top:25px; text-align:left; }.password-form label { display:flex; justify-content:space-between; color:var(--muted); font-size:12px; }.password-form label strong { color:var(--ink); font-size:15px; }.password-form input { width:100%; min-height:48px; padding:10px 13px; border:1px solid #aaa9a2; border-radius:3px; background:#fff; font-size:18px; }.password-form .primary-button { width:100%; margin-top:7px; border:0; cursor:pointer; }.password-form .primary-button:disabled { opacity:.55; cursor:wait; }.form-message { min-height:20px; margin:2px 0 0; color:#8a4d45; font-size:12px; text-align:center; }
.loading { gap:14px; color:var(--muted); }.loader { width:30px;height:30px;border:2px solid #d0cfc8;border-top-color:#333;border-radius:50%;animation:spin .8s linear infinite; }@keyframes spin{to{transform:rotate(360deg)}}
.admin-intro { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:24px; }.admin-intro h1 { margin:0; font-family:serif; font-size:clamp(30px,4vw,50px); }.admin-intro>div>span { display:block; margin-top:9px; color:var(--muted); }.admin-intro button,#refresh-button { border:1px solid var(--deep); padding:10px 18px; color:var(--deep); background:transparent; border-radius:3px; cursor:pointer; }
.model-console { margin-bottom:20px; padding:clamp(18px,2.5vw,28px); border:1px solid #31322e; color:#ecece6; background:#1d1e1b; }
.model-console-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:18px; }
.model-console-head p { margin:0 0 5px; color:#aaa9a2; font-size:11px; font-weight:800; letter-spacing:.16em; }
.model-console-head h2 { margin:0; font-family:serif; font-size:28px; }
.model-console-head span { display:block; margin-top:7px; color:#b9b9b2; font-size:13px; }
.model-console button { min-height:44px; border:1px solid #77786f; border-radius:3px; padding:8px 13px; color:#f5f5ef; background:transparent; cursor:pointer; }
.model-console button:hover { border-color:#d8d8cf; background:#2a2b27; }.model-console button:disabled { opacity:.42; cursor:not-allowed; }
.model-profile-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:10px; }
.model-profile { min-width:0; padding:16px; border:1px solid #474842; background:#242521; }
.model-profile.active { border-color:#c3c5b8; box-shadow:inset 0 0 0 1px #c3c5b8; background:#292a25; }
.model-profile-top { display:flex; align-items:center; justify-content:space-between; gap:10px; color:#aeadA5; font-size:11px; }
.model-ready { display:inline-flex; align-items:center; gap:6px; color:#c6c7c0; font-size:11px; }.model-ready:before { content:""; width:7px; height:7px; border-radius:50%; background:#8b675d; }.model-ready.ready:before { background:#8fa389; }
.model-profile h3 { margin:15px 0 7px; font-size:17px; }.model-profile>p { min-height:20px; margin:0; overflow:hidden; color:#aeadA5; font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace; text-overflow:ellipsis; white-space:nowrap; }
.model-profile-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:16px; }.model-profile-actions button { min-height:44px; padding:6px 10px; font-size:12px; }.model-profile-actions strong { margin-right:auto; color:#d6d8cc; font-size:12px; }
.model-message { min-height:22px; margin:12px 0 0; color:#d1c9a7; font-size:12px; }.model-message[data-tone="success"] { color:#b8ccb2; }.model-message[data-tone="error"] { color:#e0aaa0; }
.model-usage{margin-top:14px;padding-top:16px;border-top:1px solid #474842}.model-usage>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:14px}.model-usage>div:first-child strong{font-size:14px}.model-usage>div:first-child span{color:#aaa9a2;font-size:11px}.model-usage-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.model-usage-stats article{padding:11px;border:1px solid #474842;background:#242521}.model-usage-stats span{display:block;color:#aaa9a2;font-size:10px}.model-usage-stats b{display:block;margin-top:4px;font:700 19px/1.2 Georgia,serif}.model-usage-table-wrap{max-width:100%;margin-top:10px;overflow-x:auto}.model-usage table{width:100%;min-width:780px;border-collapse:collapse}.model-usage th,.model-usage td{padding:8px;border-bottom:1px solid #3e3f3a;text-align:left;font-size:10px}.model-usage th{color:#bfc0b8}.model-usage td{color:#e7e7df}.model-usage-empty{color:#aaa9a2!important;text-align:center!important}
.model-editor { margin-top:14px; border-top:1px solid #474842; }.model-editor summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0 8px; cursor:pointer; }.model-editor summary span { color:#aaa9a2; font-size:12px; }
.model-editor form { padding-top:10px; }.form-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }.form-grid label { display:grid; gap:6px; color:#b7b7af; font-size:11px; }.form-grid input,.form-grid select { width:100%; min-height:44px; padding:9px 11px; border:1px solid #55564f; border-radius:3px; color:#f5f5ef; background:#171816; }.form-grid input::placeholder { color:#777870; }
.credential-note { margin:13px 0 0; color:#aaa9a2; font-size:12px; line-height:1.7; }.model-form-actions { display:flex; align-items:center; gap:10px; margin-top:14px; }.model-form-actions .primary-button { margin:0; border-color:#e3e3da; color:#171816; background:#e3e3da; }
.model-evaluation-console { margin-bottom:20px; padding:clamp(18px,2.5vw,28px); border:1px solid var(--line); background:var(--white); }
.evaluation-head { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:18px; }.evaluation-head p{margin:0 0 5px;color:#81382f;font-size:11px;font-weight:800;letter-spacing:.16em}.evaluation-head h2{margin:0;font-family:serif;font-size:28px}.evaluation-head span{display:block;margin-top:7px;color:var(--muted);font-size:13px}.evaluation-head>a{min-height:44px;display:inline-flex;align-items:center;padding:8px 14px;border:1px solid var(--deep);border-radius:3px;color:var(--deep);text-decoration:none;font-size:12px;font-weight:750}
.evaluation-table-wrap { max-width:100%; overflow-x:auto; border:1px solid var(--line); }.evaluation-table{width:100%;min-width:1080px;border-collapse:collapse;background:#fff}.evaluation-table th,.evaluation-table td{padding:12px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:11px;vertical-align:middle}.evaluation-table th{color:#efefe9;background:#252622;white-space:nowrap}.evaluation-table td:nth-child(2){min-width:190px}.evaluation-table td:nth-child(2) strong,.evaluation-table td:nth-child(2) small{display:block}.evaluation-table td:nth-child(2) small{margin-top:3px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.evaluation-score{font:700 18px/1 Georgia,serif}.evaluation-empty{margin:15px 0 0;color:var(--muted);font-size:12px}
.evaluation-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.evaluation-detail-grid>section{min-width:0;padding:15px;border:1px solid var(--line);background:#f5f4ef}.evaluation-detail-grid h3{margin:0 0 10px;font-size:15px}.evaluation-run,.evaluation-comparison{padding:11px 0;border-top:1px solid var(--line)}.evaluation-run:first-child,.evaluation-comparison:first-child{border-top:0}.evaluation-run header{display:flex;justify-content:space-between;gap:10px;font-size:11px}.evaluation-run header b{color:#81382f}.evaluation-run p,.evaluation-comparison p{margin:6px 0 0;color:#4f504c;font-size:12px;line-height:1.55}.evaluation-run small,.evaluation-comparison small{display:block;margin-top:5px;color:var(--muted);font-size:10px}.evaluation-rubric{margin-top:14px;border-top:1px solid var(--line)}.evaluation-rubric summary{padding:14px 0 4px;cursor:pointer;font-size:12px;font-weight:800}.evaluation-rubric>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:10px}.evaluation-rubric article{padding:12px;border:1px solid var(--line);background:#fff}.evaluation-rubric article b{font-size:13px}.evaluation-rubric article span{float:right;color:#81382f;font-size:11px}.evaluation-rubric article p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.55}
.stats { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin-bottom:20px; border:1px solid var(--line); background:var(--line); }.stats article { padding:18px; background:var(--white); }.stats span { display:block; color:var(--muted); font-size:12px; }.stats strong { display:block; margin-top:4px; font-family:serif; font-size:28px; }
.admin-grid { display:grid; grid-template-columns:minmax(330px,430px) minmax(0,1fr); min-height:720px; border:1px solid var(--line); background:var(--white); }
.archive-pane { border-right:1px solid var(--line); background:#ecebe5; }.filters { display:grid; grid-template-columns:1fr 115px; gap:10px; padding:14px; border-bottom:1px solid var(--line); }.filters label { display:grid; gap:5px; color:var(--muted); font-size:11px; }.filters input,.filters select { width:100%; min-height:40px; padding:8px 10px; border:1px solid #c8c7c0; border-radius:3px; color:var(--ink); background:#fff; }
.record-list { max-height:770px; overflow:auto; }.record-button { width:100%; padding:17px 16px; border:0; border-bottom:1px solid var(--line); text-align:left; color:inherit; background:transparent; cursor:pointer; }.record-button:hover,.record-button[data-active="true"] { background:#fff; }.record-meta { display:flex; justify-content:space-between; gap:10px; color:var(--muted); font-size:11px; }.record-button h2 { margin:8px 0 5px; font-size:15px; line-height:1.55; }.record-button p { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }.status { display:inline-flex; align-items:center; gap:5px; }.status:before { content:""; width:6px;height:6px;border-radius:50%;background:#777; }.status.completed:before{background:#61705f}.status.partial:before{background:#9a844f}.status.failed:before{background:#8a5d55}.status.processing:before{background:#777}.empty-state { padding:30px; text-align:center; color:var(--muted); }
.detail-pane { min-width:0; padding:clamp(20px,3vw,38px); overflow:auto; }.detail-placeholder { min-height:540px; display:grid; align-content:center; justify-items:center; text-align:center; color:var(--muted); }.detail-placeholder b { color:var(--ink); font-family:serif; font-size:28px; }.detail-placeholder span { max-width:500px; margin-top:12px; line-height:1.8; }
.detail-top { padding-bottom:24px; border-bottom:1px solid var(--line); }.detail-top .meta { display:flex; flex-wrap:wrap; gap:8px; color:var(--muted); font-size:12px; }.detail-top .meta span { padding:5px 8px; border:1px solid var(--line); border-radius:2px; }.detail-top h1 { margin:16px 0 10px; font-family:serif; font-size:clamp(25px,3vw,38px); line-height:1.45; }.detail-top .judgment { margin:0; font-size:17px; line-height:1.8; }
.detail-section { padding:24px 0; border-bottom:1px solid var(--line); }.detail-section>h2 { margin:0 0 14px; font-size:18px; }.detail-section>p { line-height:1.8; }.card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }.info-card { padding:14px; border:1px solid var(--line); background:#f7f6f1; }.info-card h3 { margin:0 0 8px; font-size:14px; }.info-card p { margin:0; color:#50514d; line-height:1.7; white-space:pre-wrap; }.source-list,.plain-list { margin:0; padding-left:20px; }.source-list li,.plain-list li { margin:9px 0; line-height:1.65; }.source-list a { color:#313b49; word-break:break-all; }.raw-details { margin-top:18px; }.raw-details summary { cursor:pointer; font-weight:700; }.raw-details pre { max-height:460px; overflow:auto; padding:16px; color:#d9ddd5; background:#1d1e1b; font-size:11px; line-height:1.6; white-space:pre-wrap; word-break:break-word; }
@media(max-width:900px){ main{padding:18px 12px}.admin-header{padding:10px 14px}.admin-account summary>span:not(.account-dot){display:none}.stats{grid-template-columns:repeat(2,1fr)}.admin-grid{display:block}.archive-pane{border-right:0;border-bottom:1px solid var(--line)}.record-list{max-height:390px}.detail-pane{padding:20px 15px}.card-grid{grid-template-columns:1fr}.admin-intro,.model-console-head,.evaluation-head,.model-usage>div:first-child{align-items:flex-start;flex-direction:column}.model-usage-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.evaluation-detail-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 105px}}
.research-audit { border-left: 3px solid #282824; padding-left: 18px; }
.research-audit-head { display:flex; justify-content:space-between; gap:16px; margin:12px 0 16px; }
.research-audit-head div { display:grid; gap:6px; }
.research-audit-head span { color:var(--muted); font-size:11px; }
.research-audit-head strong { font-family:Georgia,"Songti SC",serif; font-size:17px; line-height:1.55; }
.research-audit-head>b { white-space:nowrap; font-size:11px; }
@media(max-width:700px){.research-audit-head{display:grid}.research-audit-head>b{white-space:normal}}
@media(max-width:480px){.admin-brand strong{font-size:14px}.admin-brand>span{width:36px;height:36px}.stats article{padding:13px}.stats strong{font-size:23px}.detail-top h1{font-size:24px}.record-list{max-height:340px}.form-grid{grid-template-columns:1fr}.model-form-actions{align-items:stretch;flex-direction:column}.model-form-actions button{width:100%}.model-console-head>button,.evaluation-head>a{width:100%;justify-content:center}.evaluation-rubric>div{grid-template-columns:1fr}}
