.admin-page { min-height: 100vh; background: #f6f7f9; }
.admin-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.94); border-bottom: 1px solid var(--line); backdrop-filter: blur(14px); }
.admin-header-inner { min-height: 70px; display: flex; align-items: center; gap: 22px; }
.admin-title { display: flex; align-items: baseline; gap: 10px; padding-left: 22px; border-left: 1px solid var(--line); color: var(--navy); font-weight: 700; font-size: 13px; }
.admin-title small { color: #9aa3af; font-weight: 500; font-size: 11px; }
.admin-nav { margin-left: auto; display: flex; align-items: center; gap: 18px; color: #667589; font-size: 13px; }
.admin-main { padding: 54px 0 96px; }
.admin-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 36px; padding-bottom: 36px; border-bottom: 1px solid var(--line-strong); }
.admin-hero h1 { max-width: 850px; margin: 7px 0 12px; color: var(--navy); font-size: clamp(30px, 3.4vw, 46px); line-height: 1.18; letter-spacing: -.04em; }
.admin-hero p { max-width: 730px; margin: 0; color: var(--muted); line-height: 1.75; }
.admin-section { padding: 42px 0 8px; }
.section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.section-head > div { display: flex; align-items: center; gap: 12px; }
.section-no { color: var(--blue); font-size: 11px; font-weight: 750; letter-spacing: .08em; }
.section-head h2 { margin: 0; color: var(--navy); font-size: 22px; letter-spacing: -.02em; }
.section-head p { margin: 0; color: #8c96a4; font-size: 12px; }
.funnel-strip { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); border: 1px solid var(--line); border-radius: 16px; background: white; overflow: hidden; }
.funnel-step { min-height: 132px; padding: 21px 22px; border-right: 1px solid var(--line); }
.funnel-step:last-child { border-right: 0; }
.funnel-step span { display: block; color: #8894a4; font-size: 11px; }
.funnel-step strong { display: block; margin: 12px 0 5px; color: var(--navy); font-size: 30px; line-height: 1; letter-spacing: -.04em; }
.funnel-step small { color: #a0a8b3; font-size: 10px; }
.empty-state { grid-column: 1/-1; padding: 36px; color: #8994a3; text-align: center; }
.table-shell { overflow-x: auto; border: 1px solid var(--line); border-radius: 15px; background: white; }
table { width: 100%; border-collapse: collapse; min-width: 860px; }
th { padding: 13px 16px; background: #fafbfc; border-bottom: 1px solid var(--line); color: #8d97a5; text-align: left; font-size: 11px; font-weight: 650; }
td { padding: 15px 16px; border-bottom: 1px solid #edf0f4; color: #4d5d72; font-size: 12px; vertical-align: top; line-height: 1.6; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover td { background: #fbfcfe; }
.table-empty { padding: 30px; color: #99a2ae; text-align: center; }
.status-good { color: #18744c; }
.status-warn { color: #97671e; }
.status-bad { color: #b44343; }
.model-id { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; color: #334a68; font-size: 11px; }
.business-text { max-width: 420px; color: #34455b; }
@media (max-width: 900px) {
  .admin-title small { display: none; }
  .admin-hero { grid-template-columns: 1fr; align-items: stretch; }
  .admin-hero .btn { width: fit-content; }
  .funnel-strip { grid-template-columns: 1fr 1fr; }
  .funnel-step { border-bottom: 1px solid var(--line); }
}
@media (max-width: 620px) {
  .admin-title { display: none; }
  .admin-nav a { display: none; }
  .admin-main { padding-top: 34px; }
  .section-head { align-items: flex-start; flex-direction: column; gap: 6px; }
  .funnel-strip { grid-template-columns: 1fr; }
  .funnel-step { min-height: auto; border-right: 0; }
}
.knowledge-admin-summary{display:flex;align-items:baseline;gap:10px;margin:0 0 18px;color:#68778b}.knowledge-admin-summary strong{font-size:28px;color:#11243f;margin-left:12px}.knowledge-admin-summary strong:first-child{margin-left:0}.admin-link-row{margin-top:18px}.expert-knowledge-list{display:grid;gap:14px}.expert-source-card{background:#fff;border:1px solid #dfe6ef;border-radius:12px;padding:20px}.expert-source-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.expert-source-meta span{font-size:12px;color:#456080;background:#eef3f8;border-radius:999px;padding:5px 8px}.expert-source-card h3{margin:0 0 6px;font-size:17px;color:#11243f}.expert-source-card p{margin:0 0 16px;color:#6b788a}.expert-source-actions{display:grid;grid-template-columns:130px 140px minmax(220px,1fr) auto;gap:10px}.expert-source-actions select,.expert-source-actions input{border:1px solid #d6dee8;border-radius:9px;padding:10px 11px;background:white;color:#1d2f47}.review-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-legend>div{background:#fff;border:1px solid #dfe6ef;padding:18px;border-radius:12px}.review-legend strong{display:block;color:#11243f;margin-bottom:7px}.review-legend span{color:#6b788a;font-size:13px;line-height:1.6}@media(max-width:900px){.expert-source-actions{grid-template-columns:1fr}.review-legend{grid-template-columns:1fr}}
.data-disclosure{margin:10px 0 18px;padding:11px 14px;border-left:3px solid #8fa8c9;background:#f0f4f9;color:#68778b;font-size:11px;line-height:1.7}.validation-corpus{display:grid;gap:12px;margin-bottom:14px;padding:18px 20px;border:1px solid #dfe6ef;border-radius:14px;background:#f9fbfd}.corpus-main{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}.corpus-main strong{color:#102946;font-size:32px}.corpus-main span{color:#607086}.corpus-main b{padding:5px 8px;border-radius:999px;background:#eaf1fb;color:#3b5e89;font-size:10px}.corpus-categories{display:flex;flex-wrap:wrap;gap:7px}.corpus-categories span{padding:5px 8px;border:1px solid #dfe6ef;border-radius:7px;background:#fff;color:#6e7d90;font-size:10px}
.technical-test-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 26px;background:#fff;border:1px solid var(--line);border-radius:16px}.technical-test-intro h3{margin:0 0 7px;color:var(--navy);font-size:18px}.technical-test-intro p{margin:0;color:#7d8999;font-size:13px;line-height:1.7}.technical-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.technical-metrics article{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.technical-metrics span{display:block;color:#66758a;font-size:12px;font-weight:650}.technical-metrics strong{display:block;margin:10px 0 8px;color:var(--navy);font-size:32px;line-height:1}.technical-metrics small{display:block;color:#98a1ad;font-size:11px;line-height:1.6}.technical-details{margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.technical-details summary{cursor:pointer;padding:16px 18px;color:var(--navy);font-weight:700}.technical-details>div{padding:0 14px 14px}@media(max-width:900px){.technical-test-card{align-items:flex-start;flex-direction:column}.technical-metrics{grid-template-columns:1fr 1fr}}@media(max-width:620px){.technical-metrics{grid-template-columns:1fr}}
.technical-split-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.technical-split-summary article{padding:17px 18px;border:1px solid #dfe6ef;border-radius:13px;background:#fff}.technical-split-summary span{display:block;color:#66758a;font-size:11px}.technical-split-summary strong{display:block;margin:6px 0;color:#122d4d;font-size:20px}.technical-split-summary p{margin:0;color:#8793a2;font-size:10px;line-height:1.65}.technical-contribution{margin-top:16px;padding:20px;border:1px solid #d9e3ef;border-radius:14px;background:#fff}.technical-contribution>p{color:#748295;font-size:11px;line-height:1.7}.contribution-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.contribution-head span{color:#2b66cb;font-size:10px;font-weight:750}.contribution-head h3{margin:5px 0 0;color:#112c4b;font-size:18px}.contribution-head em{padding:6px 9px;border-radius:999px;background:#f3f5f8;font-size:10px;font-style:normal;white-space:nowrap}.technical-contribution table{min-width:720px}.score-factors{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.score-factors span{padding:4px 6px;border-radius:6px;background:#f1f5fa;color:#667991;font-size:9px}
.contribution-run-card{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:18px;padding:24px 26px;background:#f8fbff;border:1px solid #cfdff5;border-radius:16px}.contribution-run-card>div>span{color:#2c67ce;font-size:10px;font-weight:750}.contribution-run-card h3{margin:6px 0 7px;color:var(--navy);font-size:18px}.contribution-run-card p{margin:0;color:#738196;font-size:12px;line-height:1.7}.contribution-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.contribution-progress{height:7px;margin:14px 0 18px;border-radius:999px;background:#edf1f6;overflow:hidden}.contribution-progress i{display:block;height:100%;border-radius:inherit;background:#2f68db;transition:width .25s ease}.contribution-cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.contribution-cases article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 11px;border:1px solid #e0e7f0;border-radius:10px;background:#fbfcfe}.contribution-cases strong{color:#25496f;font-size:10px}.contribution-cases span{overflow:hidden;color:#5e6f83;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.contribution-cases em{font-size:9px;font-style:normal;white-space:nowrap}.contribution-cases .case-ok em{color:#267653}.contribution-cases .case-failed em{color:#b24d45}.contribution-cases .case-pending em{color:#8a744d}
@media(max-width:900px){.technical-split-summary{grid-template-columns:1fr}.knowledge-admin-summary{flex-wrap:wrap}.contribution-head,.contribution-run-card{align-items:flex-start;flex-direction:column}.contribution-cases{grid-template-columns:1fr}.contribution-actions{justify-content:flex-start}}

.trace-help{display:flex;gap:12px;align-items:baseline;padding:14px 4px 18px;color:#6d7b8e}.trace-help strong{color:var(--navy)}.trace-help span{font-size:12px;line-height:1.7}.case-trace{border-top:1px solid var(--line);background:#fff}.case-trace:first-of-type{border-top:0}.case-trace>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 10px;cursor:pointer;list-style:none}.case-trace>summary::-webkit-details-marker{display:none}.case-trace>summary>div{display:flex;flex-direction:column;gap:5px}.case-trace>summary strong{color:var(--navy);font-size:14px}.case-trace>summary span{color:#7c899a;font-size:11px}.case-trace>summary em{font-style:normal;font-size:10px;color:#2a62bf;background:#eef4ff;padding:5px 8px;border-radius:999px;white-space:nowrap}.case-trace[open]>summary{background:#fafcff}.case-trace-body{padding:6px 10px 24px}.trace-section{padding:20px 4px;border-top:1px solid #edf1f5}.trace-section h4{margin:0 0 14px;color:var(--navy);font-size:15px}.trace-section blockquote{margin:0;padding:16px 18px;background:#f8fafc;border-left:3px solid #2b67d8;color:#34485f;line-height:1.8;border-radius:0 10px 10px 0}.trace-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.trace-grid.two{grid-template-columns:1fr 1fr}.trace-grid>div{min-width:0}.trace-grid h5{margin:0 0 9px;color:#6a788c;font-size:11px}.trace-fact-list{display:grid;gap:7px}.trace-fact-list>div{padding:9px 10px;border:1px solid #e6ebf2;border-radius:9px;background:#fbfcfe}.trace-fact-list span{display:block;color:#8390a0;font-size:10px}.trace-fact-list strong{display:block;margin-top:3px;color:#20344e;font-size:12px;line-height:1.5;word-break:break-word}.trace-fact-list small{display:block;margin-top:4px;color:#a16b2d;font-size:10px}.trace-empty{margin:0;color:#a0a9b5;font-size:11px}.trace-subdetails{margin-top:14px;border:1px solid #e6ebf2;border-radius:10px;overflow:hidden}.trace-subdetails summary{padding:11px 13px;cursor:pointer;color:#52657d;font-size:11px;background:#fafbfc}.trace-subdetails>div{padding:12px}.question-trace-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.question-trace-list article{padding:15px;border:1px solid #dfe7f1;border-radius:12px;background:#fff}.trace-step-no{color:#2d67c9;font-size:10px;font-weight:700}.question-trace-list h5{margin:7px 0 8px;color:#152d4b;font-size:13px;line-height:1.55}.question-trace-list p{margin:0;color:#69788b;font-size:11px;line-height:1.7}.evidence-trace-list{display:grid;gap:12px}.evidence-trace-list>article{padding:14px 15px;border:1px solid #e1e7ef;border-radius:11px}.evidence-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.evidence-head strong{color:#17304f}.evidence-head span{font-size:10px;color:#436894;background:#eef4fb;border-radius:999px;padding:4px 7px}.evidence-trace-list>article>p{color:#768396;font-size:11px;line-height:1.6}.evidence-hit{padding:10px 0;border-top:1px dashed #e3e9f0}.evidence-hit b{display:block;color:#294560;font-size:12px}.evidence-hit small{display:block;margin-top:3px;color:#909aa7;font-size:10px}.evidence-hit p{margin:6px 0;color:#56677d;font-size:11px}.evidence-hit a{color:#2b65c5;font-size:10px}.evidence-no-hit{padding-top:10px;border-top:1px dashed #e3e9f0;color:#8b6e42;font-size:11px}.model-trace-row{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr;gap:8px 12px;align-items:center}.model-trace-row span{color:#8995a4;font-size:10px}.model-trace-row strong{color:#30465f;font-size:11px}.full-flow{margin-top:8px;padding:22px;border-radius:14px;background:#f7faff;border:1px solid #dbe7f7}.trace-section-title span{color:#2864dc;font-size:10px;font-weight:750}.trace-section-title h4{margin:5px 0 5px;color:#102b4c;font-size:17px}.trace-section-title p{margin:0;color:#738196;font-size:11px}.flow-timeline{margin-top:18px;display:grid;gap:16px}.flow-turn{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px}.flow-turn-num{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#173b67;color:white;font-size:11px;font-weight:700}.flow-turn-main{padding:14px 15px;background:white;border:1px solid #dfe7f1;border-radius:12px}.flow-turn-main h5{margin:0 0 8px;color:#163451;font-size:13px}.flow-reason{margin:0 0 10px;color:#68788c;font-size:11px;line-height:1.65}.flow-answer{padding:10px 12px;background:#f8fafc;border-radius:9px}.flow-answer span,.flow-changes>span{display:block;color:#8b96a4;font-size:10px}.flow-answer p{margin:4px 0 0;color:#334a64;font-size:12px;line-height:1.65}.flow-changes{margin-top:10px}.flow-changes ul{margin:5px 0 0;padding-left:18px;color:#40556e;font-size:11px;line-height:1.75}.flow-changes p{margin:5px 0 0;color:#8c96a3;font-size:11px}.flow-model-meta{margin-top:10px;color:#99a3ae;font-size:9px}.technical-details>div{padding:0 18px 18px}
.fact-state-strip{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:13px}.fact-state-strip span,.fact-state-strip b{padding:5px 8px;border-radius:7px;font-size:10px}.fact-state-strip span{background:#edf2f8;color:#65768b}.fact-state-strip b{font-weight:650}.state-confirmed{background:#e9f6ef;color:#26724e}.state-candidate{background:#fff4dc;color:#8a621c}.state-unknown{background:#eef1f5;color:#6d7887}.state-conflict{background:#fdecec;color:#a24444}
.gate-decision{display:grid;gap:4px;margin:10px 0;padding:9px 11px;border-left:3px solid #2d67c9;background:#f3f7fc}.gate-decision b{color:#284968;font-size:11px}.gate-decision small{color:#708095;font-size:10px;line-height:1.55}.gate-decision em{color:#8c6530;font-size:9px;font-style:normal}
.unit-boundary{display:block;margin:5px 0;color:#8a6a3d;font-size:9px;font-style:normal;line-height:1.55}
@media(max-width:1050px){.trace-grid{grid-template-columns:1fr 1fr}.question-trace-list{grid-template-columns:1fr}.model-trace-row{grid-template-columns:auto 1fr auto 1fr}}
@media(max-width:650px){.trace-grid,.trace-grid.two{grid-template-columns:1fr}.case-trace>summary{align-items:flex-start;flex-direction:column}.model-trace-row{grid-template-columns:auto 1fr}.full-flow{padding:16px}}
