:root {
  color-scheme: light;
  --navy: #173f64;
  --blue: #2e74b5;
  --blue-soft: #eaf3fa;
  --ink: #263238;
  --muted: #667085;
  --line: #d8dee6;
  --surface: #ffffff;
  --canvas: #f5f7fa;
  --danger: #b42318;
  font-family: "Malgun Gothic", "Noto Sans KR", system-ui, sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--canvas); color: var(--ink); }
.topbar { height: 86px; padding: 16px 32px; background: var(--surface); border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; }
.topbar h1 { margin: 2px 0 0; color: var(--navy); font-size: 22px; }
.eyebrow { margin: 0; color: var(--blue); font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.environment { background: #eef2f6; color: #475467; border-radius: 999px; padding: 8px 12px; font-size: 12px; font-weight: 700; }
.topbar-account { display: flex; align-items: center; gap: 10px; }
.account-identity { display: grid; gap: 2px; color: var(--navy); text-align: right; }
.account-identity strong { font-size: 13px; }
.account-identity span { color: var(--muted); font-size: 10px; }
.topbar-account .account-action { padding: 7px 9px; border: 1px solid var(--line); border-radius: 7px; background: white; color: #475467; font-size: 10px; text-decoration: none; }
.topbar-account form { margin: 0; }
.topbar-account button { padding: 7px 9px; border: 1px solid var(--line); border-radius: 7px; background: white; color: #475467; font-size: 10px; cursor: pointer; }
.layout { display: grid; grid-template-columns: 230px 1fr; min-height: calc(100vh - 86px); }
nav { padding: 24px 16px; background: var(--navy); }
nav a { display: block; margin-bottom: 5px; padding: 12px 14px; color: #d9e8f5; border-radius: 8px; text-decoration: none; font-size: 14px; }
nav a:hover, nav a.active { background: rgba(255,255,255,.13); color: white; }
main { padding: 34px; max-width: 1500px; width: 100%; }
.global-scroll-controls { position: fixed; right: 24px; bottom: 24px; z-index: 100; display: grid; gap: 8px; padding: 0; background: transparent; }
.global-scroll-button { display: flex; align-items: center; gap: 7px; min-width: 92px; min-height: 42px; padding: 8px 12px; border: 1px solid rgba(23,63,100,.22); border-radius: 999px; background: rgba(255,255,255,.96); color: var(--navy); box-shadow: 0 5px 18px rgba(23,63,100,.2); font: inherit; cursor: pointer; backdrop-filter: blur(6px); }
.global-scroll-button[hidden] { display: none; }
.global-scroll-button:hover { border-color: var(--blue); background: var(--blue); color: white; transform: translateY(-1px); }
.global-scroll-button:focus-visible { outline: 3px solid rgba(46,116,181,.28); outline-offset: 2px; }
.global-scroll-button span { display: grid; place-items: center; width: 21px; height: 21px; border-radius: 50%; background: var(--blue-soft); color: var(--blue); font-size: 16px; font-weight: 900; line-height: 1; }
.global-scroll-button:hover span { background: rgba(255,255,255,.2); color: white; }
.global-scroll-button strong { font-size: 11px; white-space: nowrap; }
.intro { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 24px; }
.intro h2 { margin: 7px 0 8px; color: var(--navy); font-size: 28px; }
.intro p:last-child { margin: 0; color: var(--muted); }
.intro.compact { align-items: center; }
.status { border: 1px solid #8bc5aa; background: #eaf7ef; color: #27784b; border-radius: 999px; padding: 8px 13px; font-size: 12px; font-weight: 800; }
.metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 12px; margin-bottom: 20px; }
.metrics article { min-height: 108px; padding: 18px; background: var(--surface); border: 1px solid var(--line); border-radius: 12px; }
.metrics article.attention { border-top: 3px solid #e09c3a; }
.metrics span { display: block; color: var(--muted); font-size: 13px; }
.metrics strong { display: block; margin-top: 12px; color: var(--navy); font-size: 30px; }
.action-center { margin-bottom: 22px; }
.action-center-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
.action-center-heading h3 { margin: 5px 0; color: var(--navy); font-size: 21px; }
.action-center-heading p:last-child { margin: 0; color: var(--muted); font-size: 13px; }
.action-summary { display: grid; grid-template-columns: repeat(4, minmax(150px, 1fr)); gap: 10px; margin-bottom: 12px; }
.action-summary div { padding: 14px 16px; border: 1px solid var(--line); border-left: 4px solid #98a2b3; border-radius: 9px; background: white; }
.action-summary div.risk { border-left-color: var(--danger); background: #fffafa; }
.action-summary div.attention { border-left-color: #e09c3a; background: #fffdf8; }
.action-summary span, .action-summary small { display: block; color: var(--muted); font-size: 11px; }
.action-summary strong { display: block; margin: 5px 0 3px; color: var(--navy); font-size: 24px; }
.action-alert-panel { border-top: 3px solid var(--navy); }
.action-alert-table { min-width: 1040px; }
.action-alert-table td { vertical-align: middle; }
.badge.alert-critical { background: #fdecec; color: var(--danger); }
.badge.alert-high { background: #fff4d6; color: #8a5200; }
.badge.alert-medium { background: var(--blue-soft); color: var(--blue); }
.compact-button { min-height: 32px; padding: 6px 11px; font-size: 11px; }
.grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 20px; }
.panel { background: var(--surface); border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.panel-title { padding: 18px 20px; display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); }
.panel-title h3 { margin: 0; color: var(--navy); font-size: 17px; }
.panel-title span, .panel-title a { color: var(--muted); font-size: 13px; }
.panel-title a { color: var(--blue); font-weight: 700; text-decoration: none; }
.panel-title p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 13px 18px; text-align: left; border-bottom: 1px solid #edf0f3; font-size: 13px; }
th { background: #f8fafc; color: #475467; font-size: 12px; }
td small { display: block; margin-top: 4px; color: var(--muted); }
.issue-list { list-style: none; padding: 4px 20px; margin: 0; }
.issue-list li { display: flex; gap: 12px; padding: 14px 0; border-bottom: 1px solid #edf0f3; }
.issue-list small { display: block; margin-top: 5px; color: var(--muted); }
.badge { align-self: flex-start; min-width: 62px; padding: 5px 7px; border-radius: 6px; background: #eef2f6; color: #475467; text-align: center; font-size: 10px; font-weight: 900; }
.badge.critical, .badge.high { background: #fdecec; color: var(--danger); }
.empty { padding: 28px 18px !important; color: var(--muted); text-align: center; }
.page-panel { overflow: visible; }
.table-scroll { overflow-x: auto; border-radius: 12px; }
.data-table { min-width: 850px; }
.data-table td { vertical-align: top; }
.code { color: var(--navy); white-space: nowrap; }
.count-pill { padding: 10px 14px; border: 1px solid var(--line); border-radius: 999px; background: white; color: var(--navy); font-size: 13px; font-weight: 800; }
.status-chip { display: inline-block; padding: 5px 8px; border-radius: 999px; background: #eef2f6; color: #475467; font-size: 10px; font-weight: 900; }
.status-chip.agreed { background: var(--blue-soft); color: var(--blue); }
.status-chip.open { background: #fff4d6; color: #9b5b00; }
.button { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 9px 15px; border: 1px solid transparent; border-radius: 8px; font: inherit; font-size: 13px; font-weight: 800; text-decoration: none; cursor: pointer; }
.button.primary { background: var(--blue); color: white; }
.button.primary:hover { background: #245f96; }
.button.secondary { border-color: var(--line); background: white; color: #475467; }
.button.danger { border-color: #f3b7b2; background: #fff2f0; color: var(--danger); }
.button.danger:hover { background: #fde2df; }
.notice { margin-bottom: 16px; padding: 13px 16px; border-radius: 8px; font-size: 13px; }
.notice.success { border: 1px solid #a6d8b8; background: #eaf7ef; color: #27784b; }
.notice.warning { border: 1px solid #e8c27b; background: #fff4d6; color: #7a4a00; }
.institution-registration-lock-warning { position: sticky; top: 12px; z-index: 40; border-width: 2px; border-left: 7px solid #d97706; box-shadow: 0 10px 28px rgba(122, 74, 0, .2); }
.institution-registration-lock-warning strong { font-size: 15px; }
.summary-strip { display: grid; grid-template-columns: repeat(3, minmax(140px, 1fr)); gap: 12px; margin-bottom: 18px; }
.summary-strip.four-columns { grid-template-columns: repeat(4, minmax(140px, 1fr)); }
.summary-strip.five-columns { grid-template-columns: repeat(5, minmax(128px, 1fr)); }
.summary-strip div { padding: 15px 18px; border: 1px solid var(--line); border-radius: 10px; background: white; }
.summary-strip span { color: var(--muted); font-size: 12px; }
.summary-strip strong { float: right; color: var(--navy); font-size: 20px; }
.form-card { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; padding: 24px; border: 1px solid var(--line); border-radius: 12px; background: white; }
.form-note { grid-column: 1 / -1; display: flex; gap: 12px; align-items: center; padding: 12px 14px; border-radius: 8px; background: var(--blue-soft); color: var(--navy); font-size: 13px; }
.form-note span { color: #475467; }
.field { display: grid; gap: 7px; color: #344054; font-size: 13px; font-weight: 700; }
.field.full { grid-column: 1 / -1; }
.field em { color: var(--danger); font-style: normal; font-size: 11px; }
.field input, .field select, .field textarea { width: 100%; border: 1px solid #cfd6df; border-radius: 8px; background: white; padding: 11px 12px; color: var(--ink); font: inherit; outline: none; }
.field textarea { resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(46,116,181,.12); }
.form-actions { grid-column: 1 / -1; display: flex; justify-content: flex-end; gap: 8px; padding-top: 4px; }
.task-table { min-width: 1220px; }
.filter-form { display: grid; grid-template-columns: minmax(260px, 2fr) minmax(180px, 1fr) auto; gap: 14px; align-items: end; margin: 0 0 18px; padding: 18px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); }
.filter-form .form-actions { margin: 0; }
.pre-line { white-space: pre-line; }
.milestone-chip { display: inline-block; margin-left: 7px; padding: 3px 6px; border-radius: 5px; background: #f0edff; color: #5b3da6; font-size: 9px; font-weight: 900; vertical-align: 1px; }
.task-tabs { display: flex; gap: 6px; overflow-x: auto; margin: -8px 0 18px; padding: 0; background: transparent; }
.task-tabs a { min-width: 140px; margin: 0; padding: 10px 14px; border: 1px solid var(--line); border-radius: 8px; background: white; color: #475467; text-align: center; font-size: 13px; font-weight: 800; }
.task-tabs a:hover, .task-tabs a.active { border-color: var(--blue); background: var(--blue); color: white; }
.gate-roadmap { display: grid; grid-template-columns: repeat(5, minmax(190px, 1fr)); gap: 10px; }
.gate-card { display: flex; flex-direction: column; min-height: 360px; padding: 16px; border: 1px solid var(--line); border-top: 4px solid #98a2b3; border-radius: 10px; background: white; }
.gate-card.gate-ready { border-top-color: var(--blue); }
.gate-card.gate-under_review { border-top-color: #e09c3a; }
.gate-card.gate-approved { border-top-color: #48a071; }
.gate-card.gate-rejected { border-top-color: var(--danger); }
.gate-card-head { display: flex; align-items: center; justify-content: space-between; }
.gate-card-head > span:first-child { color: var(--navy); font-size: 20px; font-weight: 900; }
.gate-card h3 { margin: 12px 0 5px; color: var(--navy); font-size: 15px; }
.gate-card > p { min-height: 34px; margin: 0 0 12px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.gate-progress { display: flex; justify-content: space-between; margin-bottom: 6px; color: var(--muted); font-size: 11px; }
.progress-track.wide { width: 100%; }
.gate-card dl { margin: 12px 0 8px; }
.gate-card dl div { display: grid; grid-template-columns: 70px 1fr; padding: 6px 0; border-bottom: 1px solid #edf0f3; font-size: 10px; }
.gate-card dt { color: var(--muted); }
.gate-card dd { margin: 0; color: #344054; }
.gate-card ul { flex: 1; margin: 5px 0 12px; padding-left: 17px; color: #8a5200; font-size: 10px; line-height: 1.5; }
.gate-card .button { margin-top: auto; }
.gate-ready-note { flex: 1; color: #27784b !important; font-weight: 800; }
.status-chip.gate-ready { background: var(--blue-soft); color: var(--blue); }
.status-chip.gate-planned { background: #eef2f6; color: #475467; }
.status-chip.gate-under_review { background: #fff4d6; color: #8a5200; }
.status-chip.gate-approved { background: #eaf7ef; color: #27784b; }
.status-chip.gate-rejected { background: #fdecec; color: var(--danger); }
.gate-overview .detail-card { min-height: 0; }
.gate-check-section { margin-bottom: 18px; }
.baseline-meta { display: grid; grid-template-columns: 1fr .7fr 1.8fr; gap: 10px; margin-bottom: 14px; }
.baseline-meta div { min-width: 0; padding: 14px 16px; border: 1px solid var(--line); border-radius: 9px; background: white; }
.baseline-meta span, .baseline-meta strong { display: block; }
.baseline-meta span { color: var(--muted); font-size: 11px; }
.baseline-meta strong { overflow: hidden; margin-top: 6px; color: var(--navy); font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.phase-roadmap { display: grid; grid-template-columns: repeat(5, 1fr); gap: 9px; margin-bottom: 18px; }
.phase-roadmap article { padding: 15px; border: 1px solid var(--line); border-top: 4px solid var(--blue); border-radius: 9px; background: white; }
.phase-roadmap article > div { display: flex; justify-content: space-between; color: var(--blue); font-size: 10px; font-weight: 900; }
.phase-roadmap h3 { margin: 9px 0 5px; color: var(--navy); font-size: 14px; }
.phase-roadmap p { margin: 0 0 8px; color: #475467; font-size: 11px; font-weight: 800; }
.phase-roadmap small { color: var(--muted); font-size: 10px; line-height: 1.5; }
.baseline-section { margin-bottom: 16px; }
.baseline-table { min-width: 1320px; }
.baseline-table td:nth-child(2) { max-width: 430px; }
.baseline-table td small { line-height: 1.45; white-space: pre-line; }
.baseline-deliverable-table { min-width: 1150px; }
.status-chip.baseline-missing { background: #fff4d6; color: #8a5200; }
.status-chip.baseline-exists { background: #eaf7ef; color: #27784b; }
.status-chip.baseline-conflict { background: #fdecec; color: var(--danger); }
.baseline-apply { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 18px; border: 1px solid #a6c7e5; border-radius: 10px; background: var(--blue-soft); }
.baseline-apply label { display: flex; align-items: flex-start; gap: 9px; color: #344054; font-size: 13px; line-height: 1.5; }
.baseline-apply input { width: 18px; height: 18px; margin-top: 1px; }
.button:disabled { cursor: not-allowed; opacity: .5; }
.linked-code { display: inline-block; color: var(--blue); font-size: 12px; font-weight: 900; }
.muted { color: var(--muted); }
.date-range { white-space: nowrap; line-height: 1.6; }
.progress-label { margin-bottom: 5px; text-align: right; color: var(--navy); font-size: 11px; }
.progress-track { width: 90px; height: 6px; overflow: hidden; border-radius: 999px; background: #e8edf3; }
.progress-track span { display: block; height: 100%; border-radius: inherit; background: var(--blue); }
.status-chip.in_progress { background: var(--blue-soft); color: var(--blue); }
.status-chip.blocked { background: #fdecec; color: var(--danger); }
.status-chip.completed { background: #eaf7ef; color: #27784b; }
.text-link { color: var(--blue); font-weight: 800; text-decoration: none; white-space: nowrap; }
.change-table { min-width: 1050px; }
.tag-list { display: flex; flex-wrap: wrap; gap: 5px; }
.tag-list span { padding: 4px 7px; border-radius: 999px; background: var(--blue-soft); color: var(--blue); font-size: 10px; font-weight: 800; }
.impact-heading { padding-top: 4px; border-top: 1px solid var(--line); }
.impact-heading small { color: var(--muted); font-weight: 400; }
.intro-actions { display: flex; align-items: center; gap: 8px; }
.status-chip.large { padding: 8px 11px; font-size: 11px; }
.my-work-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 18px; padding: 24px 26px; border-radius: 14px; background: linear-gradient(120deg, var(--navy), #285f8d); color: white; }
.my-work-hero .eyebrow { color: #b8dcf7; }
.my-work-hero h2 { margin: 7px 0; font-size: 27px; }
.my-work-hero p:last-child { margin: 0; color: #d9e8f5; font-size: 12px; }
.my-work-action-count { min-width: 150px; padding: 14px 18px; border: 1px solid rgba(255,255,255,.25); border-radius: 10px; background: rgba(255,255,255,.1); }
.my-work-action-count span, .my-work-action-count small { display: block; color: #d9e8f5; font-size: 10px; }
.my-work-action-count strong { display: block; margin: 4px 0; font-size: 29px; }
.my-work-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 22px; }
.my-work-metrics article { padding: 15px 17px; border: 1px solid var(--line); border-left: 4px solid #98a2b3; border-radius: 9px; background: white; }
.my-work-metrics article.attention { border-left-color: #e09c3a; background: #fffdf8; }
.my-work-metrics span, .my-work-metrics small { display: block; color: var(--muted); font-size: 10px; }
.my-work-metrics strong { display: block; margin: 5px 0; color: var(--navy); font-size: 24px; }
.my-work-section { margin-bottom: 22px; }
.my-work-section.action-section { padding: 20px; border: 1px solid var(--line); border-top: 4px solid var(--navy); border-radius: 12px; background: white; }
.personal-approval-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 12px; }
.personal-approval-grid article { display: flex; flex-direction: column; min-height: 280px; padding: 17px; border: 1px solid var(--line); border-radius: 10px; background: #fbfcfd; }
.personal-approval-grid article > div { display: flex; align-items: center; justify-content: space-between; }
.personal-approval-grid article > p:first-of-type { margin: 15px 0 3px; color: var(--blue); font-size: 10px; font-weight: 800; }
.personal-approval-grid h4 { margin: 0 0 5px; color: var(--navy); }
.personal-approval-grid article > strong { font-size: 12px; }
.personal-approval-grid article > small { margin-top: 5px; color: var(--muted); font-size: 10px; }
.personal-approval-grid .request-note { flex: 1; margin: 14px 0; padding: 10px; border-radius: 7px; background: white; color: #475467; font-size: 10px; line-height: 1.6; }
.empty-state { grid-column: 1 / -1; display: grid; gap: 5px; padding: 32px; border: 1px dashed #cbd3dc; border-radius: 10px; color: var(--muted); text-align: center; }
.empty-state strong { color: var(--navy); }
.panel-title.standalone { border: 1px solid var(--line); border-radius: 9px 9px 0 0; background: white; }
.my-work-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px; }
.compact-data-table { min-width: 600px; }
.my-assigned-work { margin-bottom: 20px; }
.overdue-row { background: #fffafa; }
.danger-text { color: var(--danger) !important; font-weight: 800; }
.status-chip.decision-waiting { background: #eef2f6; color: #475467; }
.status-chip.requested, .status-chip.hold, .status-chip.under_review { background: #fff4d6; color: #9b5b00; }
.status-chip.approved { background: #eaf7ef; color: #27784b; }
.status-chip.rejected { background: #fdecec; color: var(--danger); }
.system-standard-table { min-width: 1180px; }
.system-standard-target-count { color: var(--blue) !important; font-weight: 900; }
.system-standard-profile { grid-template-columns: .72fr 1.28fr; }
.system-standard-policy-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding: 18px; }
.system-standard-policy-grid article { padding: 17px; border: 1px solid var(--line); border-top: 4px solid var(--blue); border-radius: 10px; background: white; }
.system-standard-policy-grid article.out-of-scope { border-top-color: #98a2b3; background: #fbfcfd; }
.system-standard-policy-grid strong, .system-standard-policy-grid span { display: block; }
.system-standard-policy-grid strong { color: var(--navy); font-size: 14px; }
.system-standard-policy-grid span { margin-top: 7px; color: var(--blue); font-size: 11px; font-weight: 900; }
.system-standard-policy-grid p { margin: 10px 0 0; color: var(--muted); font-size: 11px; line-height: 1.6; }
.standard-release-card.system-standard-counts { grid-template-columns: repeat(7, minmax(110px, 1fr)); }
.system-registration-rejected-dashboard { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: -4px 0 16px; padding: 12px 14px; border: 1px solid #f0c8c8; border-radius: 10px; background: #fff8f8; }
.my-rejected-summary { border-top-color: #b42318 !important; background: #fff8f8 !important; }
.my-rejected-summary strong { color: #b42318 !important; }
.my-rejected-summary small { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; }
.my-rejected-release-links { display: flex; flex-wrap: wrap; gap: 5px 8px; margin-top: 8px; padding: 7px 8px; border: 1px solid #edb8b8; border-radius: 7px; background: #fff8f8; }
.my-rejected-release-links strong { flex-basis: 100%; color: #9f2424; font-size: 10px; }
.my-rejected-release-links a { color: #b42318; font-size: 10px; font-weight: 800; }
.system-registration-rejected-dashboard > div { display: grid; gap: 3px; }
.system-registration-rejected-dashboard > div strong { color: #9f2424; font-size: 13px; }
.system-registration-rejected-dashboard > div span { color: var(--muted); font-size: 11px; }
.system-registration-rejected-dashboard > div a { color: #9f2424; font-size: 10px; font-weight: 800; }
.system-registration-rejected-dashboard nav { display: flex; gap: 7px; }
.system-registration-rejected-dashboard nav a { display: flex; align-items: center; gap: 10px; min-width: 112px; padding: 8px 10px; border: 1px solid #e4b3b3; border-radius: 8px; background: white; color: #7a2929; text-decoration: none; }
.system-registration-rejected-dashboard nav a:hover,
.system-registration-rejected-dashboard nav a.active { border-color: #c64b4b; background: #fdecec; box-shadow: inset 3px 0 0 #b42318; }
.system-registration-rejected-dashboard nav a span { font-size: 11px; font-weight: 800; }
.system-registration-rejected-dashboard nav a strong { margin-left: auto; color: #b42318; font-size: 17px; }
.institution-registration-reject-control { border-color: #edb8b8; background: #fff8f8; }
.institution-registration-reject-control summary { color: #a52727; }
.institution-registration-reject-control form { display: grid; gap: 8px; }
.institution-registration-reject-control textarea { width: 100%; }
.institution-code-registration-cell { min-width: 172px; }
.institution-code-registration-cell > .status-chip { margin-bottom: 6px; }
.institution-code-registration-cell .institution-registration-reject-control { margin-top: 4px; padding-top: 4px; border-top: 0; }
.institution-code-registration-cell .institution-registration-reject-control summary.button.danger { display: inline-flex; border-color: #8f1f17; background: #b42318; color: #fff !important; font-size: 11px; box-shadow: 0 1px 2px rgba(122, 29, 24, .22); }
.institution-code-registration-cell .institution-registration-reject-control summary.button.danger:hover { border-color: #741b15; background: #8f1f17; color: #fff !important; }
.institution-code-registration-cell .institution-registration-reject-control summary.button.danger:focus-visible { outline: 3px solid rgba(180, 35, 24, .28); outline-offset: 2px; }
.institution-code-registration-decision { border-color: #edb8b8; background: linear-gradient(135deg, #fff, #fff7f7); }
.institution-code-registration-decision .registration-reject-confirm { display: flex; grid-column: 1 / -1; gap: 8px; align-items: flex-start; }
.institution-code-registration-decision .registration-reject-confirm input { margin-top: 3px; }
.registration-owner-filter-notice { align-items: center; display: flex; flex-wrap: wrap; gap: 8px 14px; }
.registration-owner-filter-notice a { margin-left: auto; }
.registration-requester { margin-top: 5px; color: #9f2424 !important; font-weight: 800; }
.institution-rejection-reason {
  display: block;
  margin-top: 6px;
  padding: 7px 8px;
  border-left: 3px solid #b42318;
  border-radius: 4px;
  background: #fff1f1;
  color: #701515 !important;
  font-size: 11px !important;
  font-weight: 900;
  line-height: 1.5;
}
@media (max-width: 720px) {
  .system-registration-rejected-dashboard { align-items: stretch; flex-direction: column; }
  .system-registration-rejected-dashboard nav { width: 100%; }
  .system-registration-rejected-dashboard nav a { flex: 1; }
}
.system-standard-term-table { min-width: 1540px; }
.system-standard-term-table th:nth-child(1) { width: 230px; }
.system-standard-term-table th:nth-child(2) { width: 260px; }
.system-standard-term-table th:nth-child(3) { width: 120px; }
.system-standard-term-table th:nth-child(4) { width: 170px; }
.system-standard-term-table th:nth-child(5) { width: 120px; }
.system-standard-term-table th:nth-child(6) { width: 190px; }
.system-term-source-link { display: grid; gap: 4px; }
.system-term-source-link small { color: var(--muted); }
.system-domain-term-link { display: grid; gap: 4px; }
.system-domain-term-link small { color: var(--muted); }
.system-word-usage-cell { min-width: 150px; }
.system-word-usage-link { display: grid; gap: 2px; padding: 5px 7px; border: 1px solid var(--line); border-radius: 7px; background: #f8fafc; }
.system-word-usage-link + .system-word-usage-link { margin-top: 6px; }
.system-word-usage-link:hover { border-color: var(--blue); background: var(--blue-soft); }
.system-word-usage-link strong { color: var(--blue); font-size: 14px; }
.system-word-usage-link small { color: var(--muted); }
.domain-recommendation-link { margin-top: 8px; white-space: nowrap; }
.system-standard-word-table { min-width: 1720px; }
.system-standard-word-table th:nth-child(1) { width: 230px; }
.system-standard-word-table th:nth-child(2) { width: 360px; }
.system-standard-word-table th:nth-child(3) { width: 230px; }
.system-standard-word-table th:nth-child(4) { width: 190px; }
.system-standard-word-table th:nth-child(5) { width: 120px; }
.upper-standard-status-cell { min-width: 190px; }
.upper-standard-status-cell > strong,
.upper-standard-status-cell > small,
.upper-standard-status-cell > a { display: block; margin-top: 5px; }
.upper-standard-status-cell .institution-registration-link { margin-top: 10px; width: fit-content; }
.institution-registration-overview .wide { grid-template-columns: 85px 1fr; }
.institution-registration-overview dd { line-height: 1.55; overflow-wrap: anywhere; }
.institution-term-description { margin: 0; padding: 4px 20px 22px; color: #344054; font-size: 14px; line-height: 1.75; }
.system-standard-domain-table { min-width: 1100px; }
.system-standard-code-table { min-width: 1240px; }
.system-standard-code-table th:nth-child(1) { width: 260px; }
.system-standard-code-table th:nth-child(2) { width: 230px; }
.system-standard-code-table th:nth-child(4) { width: 220px; }
.system-standard-code-value-table { min-width: 1080px; }
.system-standard-code-value-table th:nth-child(4) { width: 240px; }
.system-standard-code-value-table th:nth-child(5) { width: 280px; }
.standard-release-card.institution-code-impact-card { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.standard-release-card.institution-domain-impact-card { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.institution-standard-code-value-table { min-width: 1320px; }
.institution-standard-code-value-table th:nth-child(7) { min-width: 260px; }
.institution-standard-code-value-table th:nth-child(8) { width: 150px; }
.institution-code-value-edit summary { display: inline-flex; list-style: none; cursor: pointer; }
.institution-code-value-edit summary::-webkit-details-marker { display: none; }
.institution-code-value-edit[open] { min-width: 760px; }
.institution-code-value-edit[open] > summary { margin-bottom: 12px; }
.institution-code-value-edit .embedded-form { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1050px) { .standard-release-card.institution-domain-impact-card { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 720px) { .standard-release-card.institution-code-impact-card, .standard-release-card.institution-domain-impact-card { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.system-table-summary { grid-template-columns: repeat(5, 1fr); }
.system-table-overview-table { min-width: 1120px; }
.system-table-filter { flex-wrap: wrap; }
.system-table-filter label { flex: 1 1 300px; }
.system-table-filter select { min-width: 150px; }
.legacy-table-list { min-width: 1560px; }
.legacy-table-list th:nth-child(2) { width: 270px; }
.legacy-table-list th:nth-child(5) { width: 190px; }
.legacy-table-list th:nth-child(7) { width: 260px; }
.legacy-table-list .legacy-table-action {
  position: sticky;
  right: 0;
  z-index: 2;
  width: 152px;
  min-width: 152px;
  padding-right: 14px;
  padding-left: 14px;
  background: white;
  box-shadow: -8px 0 12px -12px rgba(20, 43, 70, .7);
  white-space: nowrap;
}
.legacy-table-list thead .legacy-table-action { z-index: 3; background: #f8fafc; }
.legacy-table-list .legacy-table-action .button { min-width: 124px; white-space: nowrap; }
.system-table-profile { grid-template-columns: repeat(4, 1fr); }
.legacy-analysis-grid { grid-template-columns: repeat(4, 1fr); }
.legacy-column-table { min-width: 1320px; }
.legacy-column-table th:nth-child(4), .legacy-column-table th:nth-child(5) { width: 210px; }
.legacy-column-table th:nth-child(8) { width: 220px; }
.status-chip.legacy-normal, .status-chip.scope-include { background: #eaf7ef; color: #27784b; }
.status-chip.legacy-backup, .status-chip.scope-exclude { background: #fdecec; color: var(--danger); }
.status-chip.legacy-unused_candidate, .status-chip.legacy-temp_migration, .status-chip.scope-review { background: #fff4d6; color: #9b5b00; }
.status-chip.change-added { background: #eaf7ef; color: #27784b; }
.status-chip.change-changed { background: #fff4d6; color: #9b5b00; }
.status-chip.change-removed { background: #fdecec; color: var(--danger); }
.status-chip.change-baseline, .status-chip.change-unchanged { background: #eef2f6; color: #475467; }
@media (max-width: 1200px) {
  .system-table-summary { grid-template-columns: repeat(3, minmax(140px, 1fr)); }
  .legacy-analysis-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 720px) {
  .system-table-summary, .system-table-profile, .legacy-analysis-grid { grid-template-columns: 1fr; }
  .system-table-filter select { width: 100%; }
}
.system-code-profile { grid-template-columns: 1.3fr 1fr .55fr 1.2fr; }
.code-review-panel .embedded-form { margin: 0; border: 0; border-radius: 0; box-shadow: none; }
.standard-action-column { position: sticky; right: 0; z-index: 2; width: 390px; min-width: 390px; background: white; box-shadow: -7px 0 10px -10px rgba(20, 43, 70, .55); }
.data-table thead .standard-action-column { z-index: 4; background: #f6f8fb; }
.inline-standard-form { display: grid; grid-template-columns: minmax(110px, .62fr) minmax(150px, 1fr); gap: 7px; align-items: center; min-width: 0; }
.inline-standard-form select, .inline-standard-form input, .inline-standard-form textarea { min-height: 34px; border: 1px solid #cfd6df; border-radius: 7px; background: white; padding: 7px 9px; font: inherit; font-size: 11px; }
.inline-standard-form .standard-name-input { grid-column: 1 / -1; }
.inline-standard-form .standard-reason-input { grid-column: 1 / -1; }
.word-standard-form .standard-name-input { grid-column: auto; }
.word-standard-form .standard-abbreviation-input { font-weight: 700; letter-spacing: .02em; }
.word-standard-form .standard-full-name-input, .word-standard-form .standard-description-input { grid-column: 1 / -1; }
.word-standard-form .standard-description-input { min-height: 82px; resize: vertical; line-height: 1.45; }
.word-compare-button { width: 100%; margin-bottom: 8px; }
.word-comparison-summary small { max-width: 260px; overflow-wrap: anywhere; }
.word-reference-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.word-reference-grid .page-panel { min-width: 0; margin: 0; }
.word-reference-grid .compact-table { min-width: 660px; }
.word-comparison-table { min-width: 1420px; }
.word-comparison-table th:nth-child(1) { width: 72px; text-align: center; }
.word-comparison-table td:first-child { text-align: center; }
.word-comparison-table input[type="radio"] { width: 18px; height: 18px; accent-color: var(--blue); }
.word-comparison-table .selected-word-row td { background: #f2f8fc; }
.word-comparison-definition { min-width: 300px; max-width: 460px; white-space: normal; }
.word-promotion-form { display: grid; gap: 16px; }
.word-promotion-actions { display: grid; grid-template-columns: minmax(360px, 1fr) minmax(300px, .55fr); gap: 16px; align-items: stretch; }
.word-promotion-actions label, .word-promotion-actions > div { display: grid; gap: 7px; padding: 15px; border: 1px solid var(--line); border-radius: 10px; background: #f8fafc; }
.word-promotion-actions label > span { color: #344054; font-size: 12px; font-weight: 800; }
.word-promotion-actions textarea { width: 100%; resize: vertical; }
.word-promotion-actions > div { align-content: start; }
.word-promotion-actions > div small { color: var(--muted); line-height: 1.5; }
.word-promotion-actions > div .button { margin-top: auto; }
.word-replacement-panel { display: grid; gap: 16px; }
.word-replacement-flow { display: grid; grid-template-columns: 1fr 32px 1fr 32px 1fr; gap: 10px; align-items: center; padding: 14px; border: 1px solid #cfe1ee; border-radius: 12px; background: linear-gradient(135deg, #f5fbff, #f8fafc); }
.word-replacement-flow > div { min-height: 94px; display: grid; align-content: center; gap: 5px; padding: 14px; border: 1px solid #dbe5ec; border-radius: 10px; background: #fff; }
.word-replacement-flow > div strong { color: #31556d; font-size: 12px; }
.word-replacement-flow > div span { color: #142c3f; font-size: 17px; font-weight: 800; }
.word-replacement-flow > div small { color: var(--muted); }
.word-replacement-flow > i { color: var(--blue); font-size: 24px; font-style: normal; font-weight: 900; text-align: center; }
.word-replacement-impact { border: 1px solid var(--line); border-radius: 10px; background: #fff; overflow: hidden; }
.word-replacement-impact summary { padding: 13px 15px; cursor: pointer; color: #294b61; font-weight: 800; background: #f7fafc; }
.word-replacement-impact .table-scroll { max-height: 330px; border-top: 1px solid var(--line); }
.word-replacement-impact table { min-width: 900px; }
.word-replacement-search { display: flex; gap: 10px; align-items: end; padding: 14px; border: 1px solid var(--line); border-radius: 10px; background: #f8fafc; }
.word-replacement-search label { flex: 1; display: grid; gap: 6px; }
.word-replacement-search label span { color: #344054; font-size: 12px; font-weight: 800; }
.word-replacement-search input { width: 100%; min-height: 40px; }
.term-replacement-search label:first-child { flex: 0 0 190px; }
.term-replacement-search select { width: 100%; min-height: 40px; }
.word-replacement-form { display: grid; gap: 14px; }
.word-replacement-table { min-width: 1120px; }
.word-replacement-table th:first-child, .word-replacement-table td:first-child { width: 68px; text-align: center; }
.word-replacement-table input[type="radio"] { width: 18px; height: 18px; accent-color: var(--blue); }
.word-replacement-table .word-merge-candidate td { background: #f2f8fc; }
.word-replacement-actions { display: grid; grid-template-columns: minmax(360px, 1fr) minmax(330px, .65fr); gap: 14px; }
.word-replacement-actions > label, .word-replacement-actions > div { display: grid; gap: 9px; padding: 15px; border: 1px solid var(--line); border-radius: 10px; background: #f8fafc; }
.word-replacement-actions > label > span { color: #344054; font-size: 12px; font-weight: 800; }
.word-replacement-actions textarea { width: 100%; resize: vertical; }
.word-replacement-actions > div { align-content: space-between; }
.word-replacement-confirm { display: grid; grid-template-columns: 20px 1fr; gap: 8px; align-items: start; color: #475467; line-height: 1.5; }
.word-replacement-confirm input { margin-top: 3px; }
.term-comparison-actions { display: grid; gap: 6px; margin-top: 8px; }
.term-comparison-actions .button { width: 100%; }
.term-replacement-table { min-width: 1320px; }
.term-replacement-table th:first-child, .term-replacement-table td:first-child { width: 68px; text-align: center; }
.term-replacement-table input[type="radio"] { width: 18px; height: 18px; accent-color: var(--blue); }
.term-replacement-table th:nth-child(2) { width: 180px; }
.term-replacement-table th:nth-child(3) { width: 230px; }
.term-replacement-table th:nth-child(4) { width: 210px; }
.term-replacement-table .term-merge-candidate td { background: #f2f8fc; }
.term-comparison-table { min-width: 1180px; }
.word-reference-copy-panel { display: grid; gap: 16px; }
.word-reference-copy-table { min-width: 1280px; }
.word-reference-copy-table th:last-child, .word-reference-copy-table td:last-child { width: 110px; text-align: center; }
.term-delete-blocked, .term-delete-control { margin-top: 9px; padding-top: 9px; border-top: 1px dashed #d8dee6; }
.term-delete-blocked strong { color: #8a5a00; font-size: 11px; }
.term-delete-control summary { color: var(--danger); cursor: pointer; font-size: 11px; font-weight: 800; }
.term-delete-control form { display: grid; gap: 8px; margin-top: 8px; }
.term-delete-control label { display: grid; grid-template-columns: 18px 1fr; gap: 6px; align-items: start; color: #667085; font-size: 10px; line-height: 1.45; }
.term-delete-control input { margin-top: 2px; }
.word-definition { min-width: 300px; margin: 0; color: #344054; font-size: 11px; line-height: 1.65; }
.word-usage-evidence { margin-top: 7px; }
.word-usage-evidence summary { cursor: pointer; color: var(--blue); font-size: 10px; font-weight: 900; }
.word-usage-evidence ul { max-height: 190px; overflow-y: auto; margin: 7px 0 0; padding-left: 17px; }
.word-usage-evidence li { margin-bottom: 5px; color: #344054; font-size: 10px; }
.domain-usage-evidence ul { min-width: 150px; }
.domain-usage-evidence li small { display: block; color: var(--blue); }
.inline-standard-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.domain-standard-form { grid-template-columns: 1fr 1fr; }
.domain-spec-field { display: grid; gap: 3px; min-width: 0; }
.domain-spec-field > span { color: #596780; font-size: 10px; font-weight: 800; }
.domain-spec-field > input { width: 100%; min-width: 0; }
.domain-filter-bar { flex-wrap: wrap; }
.domain-filter-bar label { flex: 1 1 280px; }
.domain-filter-bar select { width: 155px; }
.domain-merge-summary { margin-top: 4px; }
.domain-merge-table { min-width: 980px; }
.domain-auto-merge-action { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 18px; border-top: 1px solid var(--line); background: #f7fbff; }
.domain-auto-merge-action strong, .domain-auto-merge-action span { display: block; }
.domain-auto-merge-action span { margin-top: 4px; color: var(--muted); font-size: 12px; }
.domain-review-groups { display: grid; gap: 16px; padding: 16px; }
.domain-review-card { overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: white; }
.domain-review-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; background: #f7f9fc; }
.domain-review-heading strong, .domain-review-heading span { display: block; }
.domain-review-heading > span { color: var(--muted); font-size: 12px; }
.domain-review-table { min-width: 1050px; }
.domain-review-table input[type="radio"], .domain-review-table input[type="checkbox"] { width: 18px; height: 18px; }
.domain-review-card > .field { margin: 16px; }
.domain-review-card > .form-actions { padding: 0 16px 16px; }
.manual-domain-filter { padding: 16px; border-top: 1px solid var(--line); }
.manual-domain-filter label { flex: 1 1 190px; }
.manual-domain-notice { margin: 0 16px; }
.manual-domain-conflict { background: #fff7f7; }
.manual-domain-conflict input:disabled { cursor: not-allowed; opacity: .45; }
.domain-bulk-reopen-action { border-bottom: 1px solid var(--line); background: #fff9f3; }
.domain-bulk-reopen-action label { display: flex; align-items: center; gap: 8px; margin-top: 10px; }
.domain-bulk-reopen-action label span { margin: 0; color: var(--text); }
.manual-conflict-label { color: var(--danger) !important; font-weight: 800; }
.domain-term-samples { min-width: 260px; max-height: 220px; overflow-y: auto; margin: 8px 0 0; padding-left: 18px; }
.domain-term-samples li { margin-bottom: 5px; color: #344054; font-size: 11px; }
.domain-term-samples small { display: inline; margin-left: 4px; }
.split-input { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.word-token-list { display: flex; flex-wrap: wrap; gap: 5px; }
.word-token-list > span { padding: 5px 7px; border: 1px solid #cfdcec; border-radius: 6px; background: #f6f9fc; color: var(--navy); font-size: 10px; font-weight: 800; }
.word-token-list > span small { display: block; margin-top: 2px; color: var(--blue); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 9px; }
.word-token-list > span.unregistered-word-token { border-color: #e26d63; background: #fff1f0; color: #8f1d18; box-shadow: inset 0 0 0 1px rgba(180, 35, 24, .08); }
.word-token-list > span.unregistered-word-token small { color: #b42318; }
.word-token-list > span.unregistered-word-token b { display: block; margin-top: 4px; color: #b42318; font-size: 9px; font-weight: 900; }
.logical-proposal-button { margin-top: 8px; }
.proposal-review-note { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; padding: 10px 14px; border-left: 3px solid #e09c3a; border-radius: 0 8px 8px 0; background: #fffaf0; color: #6f4a0c; font-size: 12px; }
.proposal-review-note strong { flex: 0 0 auto; padding-right: 10px; border-right: 1px solid #ead5aa; }
.recommended-term-panel { margin-bottom: 18px; border-color: #b9d4e9; box-shadow: 0 12px 32px rgba(31, 77, 115, .08); }
.recommendation-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 22px; border-bottom: 1px solid #d7e5f0; background: linear-gradient(120deg, #f8fbfe, #eef6fc); }
.recommendation-header h3 { margin: 3px 0 4px; color: var(--navy); font-size: 21px; }
.recommendation-header p { margin: 0; color: #5d6d7e; font-size: 12px; }
.recommendation-kicker { color: var(--blue); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.recommendation-confidence { display: grid; min-width: 92px; gap: 2px; padding: 9px 13px; border: 1px solid #9fcbb2; border-radius: 9px; background: #f2fbf6; text-align: center; }
.recommendation-confidence small { color: #527060; font-size: 9px; }
.recommendation-confidence strong { color: #27784b; font-size: 14px; }
.recommendation-confidence.medium { border-color: #a9c9e3; background: #f1f7fc; }
.recommendation-confidence.medium strong { color: var(--blue); }
.recommendation-confidence.required { border-color: #e5bf77; background: #fff8e9; }
.recommendation-confidence.required strong { color: #8a5b08; }
.recommendation-summary { display: grid; grid-template-columns: minmax(0, 1fr) 40px minmax(0, 1.15fr); align-items: stretch; gap: 12px; padding: 20px 22px 14px; }
.recommendation-name { display: grid; align-content: center; min-width: 0; gap: 5px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 10px; background: #f8fafc; }
.recommendation-name > span { color: var(--muted); font-size: 10px; font-weight: 800; }
.recommendation-name strong { overflow-wrap: anywhere; color: #475467; font-size: 18px; }
.recommendation-name small { overflow-wrap: anywhere; color: #687789; font-size: 11px; }
.recommendation-name.target { border: 2px solid #63a0cf; background: #f2f8fd; }
.recommendation-name.target > span { color: var(--blue); }
.recommendation-name.target strong { color: var(--navy); font-size: 23px; }
.recommendation-name.target small { color: var(--blue); font-size: 13px; font-weight: 800; }
.recommendation-arrow { display: grid; place-items: center; color: #4e8aba; font-size: 25px; font-weight: 900; }
.recommendation-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 14px; padding: 0 22px 20px; }
.recommendation-composition { min-width: 0; padding: 15px; border: 1px solid var(--line); border-radius: 10px; }
.recommendation-section-title { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.recommendation-section-title strong { color: var(--navy); font-size: 12px; }
.recommendation-section-title span { color: var(--muted); font-size: 10px; }
.recommended-word-equation { display: flex; align-items: stretch; flex-wrap: wrap; gap: 8px; }
.word-equation-plus { display: grid; place-items: center; color: #98a2b3; font-size: 18px; font-weight: 900; }
.recommended-word-token { position: relative; display: grid; flex: 1 1 145px; min-width: 140px; max-width: 230px; gap: 5px; padding: 11px 12px; border: 1px solid #bdd4e6; border-radius: 8px; background: #f7fbfe; }
.recommended-word-token > div { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.recommended-word-token > div strong { color: var(--navy); font-size: 15px; }
.recommended-word-token > div small { color: var(--blue); font-size: 10px; font-weight: 800; }
.recommended-word-token > span { color: #667085; font-size: 9px; }
.recommended-word-token > b { color: #27784b; font-size: 9px; }
.recommended-word-token > p { margin: 2px 0 0; padding-top: 6px; border-top: 1px dashed #d4dee7; color: #5d6d7e; font-size: 9px; line-height: 1.45; }
.recommended-word-token.terminal { border-color: #8bc5aa; background: #f2fbf6; }
.recommended-word-token.unresolved { border-color: #e5bf77; background: #fffaf0; }
.recommendation-domain-card { display: grid; align-content: start; gap: 7px; padding: 15px; border: 1px solid #e8d19e; border-radius: 10px; background: #fffcf5; }
.recommendation-domain-card > span { color: #a06c12; font-size: 8px; font-weight: 900; letter-spacing: .12em; }
.recommendation-domain-card > strong { color: var(--navy); font-size: 12px; }
.recommendation-domain-card p { margin: 0; color: #665538; font-size: 10px; line-height: 1.6; }
.recommendation-domain-card > div { display: flex; align-items: center; justify-content: space-between; margin-top: 3px; padding-top: 9px; border-top: 1px solid #ead8b2; }
.recommendation-domain-card > div small { color: #8a734d; font-size: 9px; }
.recommendation-domain-card > div b { color: #27784b; font-size: 13px; }
.recommendation-action { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 15px 22px; border-top: 1px solid #cfe0ed; background: #eef6fc; }
.recommendation-action > div { display: grid; gap: 3px; }
.recommendation-action > div small { color: var(--blue); font-size: 9px; font-weight: 900; }
.recommendation-action > div strong { color: var(--navy); font-size: 13px; }
.recommendation-action > div strong .code { margin-left: 8px; color: var(--blue); }
.recommendation-action.incomplete { background: #fff8e9; }
.recommendation-action.incomplete > div small { color: #9a690f; }
.composition-compare-panel { margin-bottom: 18px; }
.composition-compare-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; }
.composition-compare-grid > article { min-width: 0; padding: 18px 20px 20px; }
.composition-compare-grid > article + article { border-left: 1px solid var(--line); }
.composition-compare-grid article > header { display: flex; align-items: center; gap: 9px; margin-bottom: 14px; }
.composition-compare-grid article > header > span { padding: 4px 7px; border-radius: 999px; background: #eef2f6; color: #667085; font-size: 9px; font-weight: 900; }
.composition-compare-grid article.proposed > header > span { background: var(--blue-soft); color: var(--blue); }
.composition-compare-grid article > header > div { display: grid; flex: 1; gap: 2px; }
.composition-compare-grid article > header strong { color: var(--navy); font-size: 12px; }
.composition-compare-grid article > header small { color: var(--muted); font-size: 9px; }
.composition-compare-grid article > header > b { color: var(--muted); font-size: 10px; }
.composition-token-track { display: flex; flex-wrap: wrap; gap: 6px; }
.composition-token-track > span { position: relative; display: grid; min-width: 88px; gap: 3px; padding: 9px 10px 9px 27px; border: 1px solid #d6dee7; border-radius: 7px; background: #f8fafc; }
.composition-token-track > span > small { position: absolute; top: 9px; left: 9px; display: grid; place-items: center; width: 13px; height: 13px; border-radius: 50%; background: #e7edf3; color: #667085; font-size: 7px; font-weight: 900; }
.composition-token-track > span > strong { color: var(--navy); font-size: 11px; }
.composition-token-track > span > b { color: #667085; font-size: 9px; }
.composition-token-track.proposed > span { border-color: #bdd4e6; background: #f3f8fc; }
.composition-token-track.proposed > span.source-new { border-color: #e5bf77; background: #fffaf0; }
.composition-token-track.proposed > span.source-institution { border-color: #9fcbb2; background: #f2fbf6; }
.logical-proposal-review-list { display: grid; gap: 8px; padding: 14px 18px 18px; }
.logical-proposal-review { overflow: hidden; border: 1px solid var(--line); border-left: 4px solid #98a2b3; border-radius: 9px; background: white; }
.logical-proposal-review.source-system { border-left-color: var(--blue); }
.logical-proposal-review.source-institution { border-left-color: #27784b; }
.logical-proposal-review.source-common { border-left-color: #6d28d9; }
.logical-proposal-review.source-new { border-color: #e5bf77; border-left: 4px solid #e09c3a; background: #fffdf8; }
.logical-proposal-review > summary { display: grid; grid-template-columns: 30px minmax(140px, 1fr) 100px 92px; align-items: center; gap: 10px; padding: 12px 14px; cursor: pointer; list-style: none; }
.logical-proposal-review > summary::-webkit-details-marker { display: none; }
.logical-proposal-review > summary:hover { background: #f8fafc; }
.logical-proposal-review[open] > summary { border-bottom: 1px solid var(--line); background: #f8fafc; }
.logical-proposal-sequence { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--blue-soft); color: var(--blue); font-size: 12px; font-weight: 900; }
.logical-proposal-summary-name { display: flex; align-items: baseline; min-width: 0; gap: 10px; }
.logical-proposal-summary-name strong { color: var(--navy); font-size: 14px; }
.logical-proposal-summary-name small { color: var(--blue); font-size: 10px; }
.logical-proposal-source { justify-self: start; padding: 4px 7px; border-radius: 999px; background: #eef2f6; color: #667085; font-size: 9px; font-weight: 800; }
.source-system .logical-proposal-source { background: var(--blue-soft); color: var(--blue); }
.source-institution .logical-proposal-source { background: #eaf7ef; color: #27784b; }
.source-common .logical-proposal-source { background: #ede9fe; color: #6d28d9; }
.source-new .logical-proposal-source { background: #fff0cc; color: #8a5b08; }
.logical-proposal-expand { display: flex; align-items: center; justify-content: flex-end; gap: 7px; color: var(--muted); font-size: 9px; }
.logical-proposal-expand b { font-size: 15px; transition: transform .2s; }
.logical-proposal-review[open] .logical-proposal-expand b { transform: rotate(180deg); }
.logical-proposal-review-body { padding: 15px 18px 18px 52px; }
.logical-proposal-meta { display: grid; gap: 8px; margin: 0 0 14px; }
.logical-proposal-meta div { display: grid; grid-template-columns: 86px minmax(0, 1fr); gap: 8px; }
.logical-proposal-meta dt { color: var(--muted); font-size: 11px; font-weight: 800; }
.logical-proposal-meta dd { min-width: 0; margin: 0; overflow-wrap: anywhere; font-size: 12px; }
.logical-proposal-new-word { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.logical-proposal-new-word label { display: grid; gap: 5px; color: var(--navy); font-size: 11px; font-weight: 800; }
.logical-proposal-new-word label span em { color: var(--danger); font-style: normal; }
.logical-proposal-new-word input, .logical-proposal-new-word select, .logical-proposal-new-word textarea { width: 100%; padding: 9px; border: 1px solid var(--line); border-radius: 7px; background: white; font: inherit; }
.logical-proposal-wide { grid-column: 1 / -1; }
.logical-proposal-actions { display: flex; justify-content: flex-end; }
.proposal-apply-guide { display: flex; gap: 10px; margin-top: 16px; padding: 12px 15px; border: 1px solid var(--line); border-radius: 8px; background: #f8fafc; color: #5d6d7e; font-size: 11px; line-height: 1.6; }
.proposal-apply-guide strong { flex: 0 0 auto; color: var(--navy); }
@media (max-width: 980px) {
  .recommendation-detail-grid { grid-template-columns: 1fr; }
  .recommendation-domain-card { grid-template-columns: auto 1fr; align-items: center; }
  .recommendation-domain-card > span { grid-column: 1 / -1; }
  .recommendation-domain-card p { grid-column: 2; }
  .recommendation-domain-card > div { grid-column: 1 / -1; }
}
@media (max-width: 720px) {
  .proposal-review-note, .proposal-apply-guide { align-items: flex-start; flex-direction: column; }
  .proposal-review-note strong { padding: 0; border: 0; }
  .recommendation-header, .recommendation-action { align-items: stretch; flex-direction: column; }
  .recommendation-confidence { align-self: flex-start; }
  .recommendation-summary { grid-template-columns: 1fr; }
  .recommendation-arrow { transform: rotate(90deg); }
  .recommendation-detail-grid, .recommendation-summary { padding-right: 14px; padding-left: 14px; }
  .recommendation-name.target strong { font-size: 20px; }
  .recommended-word-token { max-width: none; }
  .word-equation-plus { display: none; }
  .composition-compare-grid { grid-template-columns: 1fr; }
  .composition-compare-grid > article + article { border-top: 1px solid var(--line); border-left: 0; }
  .logical-proposal-review > summary { grid-template-columns: 30px 1fr auto; }
  .logical-proposal-source { grid-column: 2; }
  .logical-proposal-expand { grid-column: 3; grid-row: 1 / span 2; }
  .logical-proposal-expand span { display: none; }
  .logical-proposal-review-body { padding-left: 16px; }
  .logical-proposal-new-word { grid-template-columns: 1fr; }
  .logical-proposal-wide { grid-column: auto; }
}
.status-chip.policy-institution_direct, .status-chip.class-institution { background: #eaf7ef; color: #27784b; }
.status-chip.class-common { background: #ede9fe; color: #6d28d9; }
.status-chip.policy-db_standard_mixed, .status-chip.class-db_standard { background: var(--blue-soft); color: var(--blue); }
.status-chip.policy-out_of_scope { background: #eef2f6; color: #667085; }
.status-chip.class-exception { background: #fff4d6; color: #8a5200; }
@media (max-width: 1050px) {
  .system-standard-policy-grid { grid-template-columns: 1fr; }
  .standard-release-card.system-standard-counts { grid-template-columns: repeat(2, 1fr); }
  .standard-action-column { width: 330px; min-width: 330px; }
  .inline-standard-form { grid-template-columns: 1fr; }
  .inline-standard-form > * { grid-column: 1 / -1; }
}
.detail-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 18px; margin-bottom: 18px; }
.detail-card { min-height: 190px; }
.detail-card > p { margin: 0; padding: 20px; line-height: 1.7; }
.preserve-lines { white-space: pre-wrap; }
.impact-list { margin: 0; padding: 8px 20px 18px; }
.impact-list div { display: grid; grid-template-columns: 90px 1fr; gap: 14px; padding: 12px 0; border-bottom: 1px solid #edf0f3; }
.impact-list dt { color: var(--navy); font-size: 12px; font-weight: 900; }
.impact-list dd { margin: 0; line-height: 1.55; font-size: 13px; white-space: pre-wrap; }
.approval-ledger { margin-bottom: 18px; }
.decision-form { margin-bottom: 30px; }
.control-tabs { display: flex; gap: 6px; overflow-x: auto; margin: -8px 0 18px; padding: 0; background: transparent; }
.control-tabs a { min-width: 150px; margin: 0; padding: 10px 14px; border: 1px solid var(--line); border-radius: 8px; background: white; color: #475467; text-align: center; font-size: 13px; font-weight: 800; }
.control-tabs a:hover, .control-tabs a.active { border-color: var(--blue); background: var(--blue); color: white; }
.approval-filter label { flex: 0 0 210px; }
.approval-filter select { width: 100%; }
.approval-table { min-width: 1500px; }
.status-chip.pending, .status-chip.decision-pending { background: #fff4d6; color: #8a5200; }
.status-chip.decision-approved { background: #eaf7ef; color: #27784b; }
.status-chip.decision-rejected { background: #fdecec; color: var(--danger); }
.status-chip.decision-hold { background: #f0edff; color: #5b3da6; }
.deliverable-table { min-width: 1120px; }
.status-chip.submitted { background: var(--blue-soft); color: var(--blue); }
.status-chip.supplement_required { background: #fff4d6; color: #9b5b00; }
.status-chip.accepted { background: #eaf7ef; color: #27784b; }
.status-chip.rejected { background: #fdecec; color: var(--danger); }
.status-chip.planned { background: #eef2f6; color: #475467; }
.deliverable-overview .detail-card { min-height: 0; }
.overview-list { margin: 0; padding: 8px 20px 18px; }
.overview-list div { display: grid; grid-template-columns: 85px 1fr; gap: 12px; padding: 11px 0; border-bottom: 1px solid #edf0f3; }
.overview-list dt { color: var(--muted); font-size: 12px; font-weight: 800; }
.overview-list dd { margin: 0; font-size: 13px; }
.ledger-section { margin-bottom: 18px; }
.compact-form { margin-bottom: 18px; }
.hash-value { color: #475467; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 11px; }
.submit-band { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; padding: 16px 18px; border: 1px solid #a6c7e5; border-radius: 10px; background: var(--blue-soft); }
.submit-band strong, .submit-band span { display: block; }
.submit-band strong { color: var(--navy); }
.submit-band span { margin-top: 4px; color: #475467; font-size: 12px; }
.metadata-table { min-width: 1160px; }
.standard-release-card { display: grid; grid-template-columns: 1.4fr 1fr repeat(4, minmax(110px, .7fr)); gap: 10px; margin-bottom: 16px; }
.standard-release-card div { min-width: 0; padding: 14px 16px; border: 1px solid var(--line); border-radius: 10px; background: white; }
.standard-release-card span, .standard-release-card strong { display: block; }
.standard-release-card span { color: var(--muted); font-size: 11px; }
.standard-release-card strong { overflow: hidden; margin-top: 7px; color: var(--navy); font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.catalog-tabs { display: flex; gap: 6px; overflow-x: auto; margin: 0 0 14px; padding: 0; background: transparent; }
.catalog-tabs a { margin: 0; padding: 9px 14px; border: 1px solid var(--line); background: white; color: #475467; font-size: 13px; font-weight: 800; white-space: nowrap; }
.catalog-tabs a:hover, .catalog-tabs a.active { border-color: var(--blue); background: var(--blue); color: white; }
.catalog-search { display: flex; gap: 8px; margin-bottom: 16px; }
.catalog-search label { flex: 1; }
.catalog-search input { width: 100%; height: 40px; padding: 9px 12px; border: 1px solid #cfd6df; border-radius: 8px; font: inherit; }
.catalog-search select { min-width: 170px; height: 40px; padding: 8px 10px; border: 1px solid #cfd6df; border-radius: 8px; background: white; font: inherit; }
.standard-table { min-width: 1050px; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 16px; }
.pagination span { color: var(--muted); font-size: 13px; font-weight: 800; }
.pagination-jump { display: inline-flex; align-items: center; gap: 7px; margin-left: 6px; padding-left: 14px; border-left: 1px solid var(--line); }
.pagination-jump label { display: inline-flex; align-items: center; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 800; white-space: nowrap; }
.pagination-jump input[type="number"] { width: 72px; height: 38px; padding: 7px 9px; border: 1px solid #cfd6df; border-radius: 8px; background: white; color: var(--ink); font: inherit; text-align: center; }
.pagination-jump input[type="number"]:focus { border-color: var(--blue); outline: 3px solid rgba(46,116,181,.12); }
.pagination-jump small { color: var(--muted); font-size: 11px; }
.button.disabled { pointer-events: none; opacity: .45; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
@media (max-width: 720px) { .pagination { flex-wrap: wrap; gap: 8px; } .pagination-jump { width: 100%; justify-content: center; margin: 4px 0 0; padding: 10px 0 0; border-top: 1px solid var(--line); border-left: 0; } }
.diagnosis-snapshot-table { min-width: 1050px; }
.diagnosis-import-form { max-width: 980px; }
.diagnosis-import-form .field small { color: var(--muted); font-size: 11px; font-weight: 400; }
.validation-result { grid-column: 1 / -1; padding: 16px; border: 1px solid var(--line); border-radius: 10px; background: #f8fafc; }
.validation-result .notice { margin-bottom: 10px; }
.validation-result > div:not(.notice) { margin-top: 10px; color: #344054; font-size: 12px; }
.validation-summary { padding: 10px 12px; border-radius: 7px; background: white; color: var(--navy) !important; font-weight: 800; }
.validation-result ul { margin: 7px 0 0; padding-left: 19px; line-height: 1.6; }
.validation-files { display: grid; gap: 5px; padding-top: 10px; border-top: 1px solid var(--line); }
.validation-files div { padding: 6px 9px; border-radius: 6px; background: white; }
.comparison-selector { display: flex; align-items: flex-end; gap: 10px; margin-bottom: 16px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 10px; background: white; }
.comparison-selector label { display: grid; flex: 1; gap: 6px; color: #344054; font-size: 12px; font-weight: 800; }
.comparison-selector select { width: 100%; padding: 10px 12px; border: 1px solid #cfd6df; border-radius: 8px; background: white; color: var(--ink); }
.comparison-rate, .comparison-cards { display: grid; gap: 10px; margin-bottom: 14px; }
.comparison-rate { grid-template-columns: repeat(3, 1fr); }
.comparison-cards { grid-template-columns: repeat(4, 1fr); }
.comparison-rate article, .comparison-cards article { padding: 17px 18px; border: 1px solid var(--line); border-top: 3px solid var(--navy); border-radius: 10px; background: white; }
.comparison-rate span, .comparison-rate small, .comparison-cards span, .comparison-cards small { display: block; color: var(--muted); font-size: 11px; }
.comparison-rate strong, .comparison-cards strong { display: block; margin: 7px 0 4px; color: var(--navy); font-size: 25px; }
.comparison-rate article.positive { border-top-color: #48a071; }
.comparison-rate article.positive strong, .delta-positive { color: #27784b; }
.comparison-rate article.negative, .comparison-cards .change-regressed { border-top-color: var(--danger); }
.comparison-rate article.negative strong, .delta-negative { color: var(--danger); }
.comparison-cards .change-improved { border-top-color: #48a071; }
.comparison-cards .change-new_noncompliant { border-top-color: #e09c3a; }
.comparison-cards .change-persisting { border-top-color: #9b5b00; }
.comparison-section { margin-bottom: 16px; }
.comparison-table { min-width: 1100px; }
.comparison-column-table { min-width: 1450px; }
.comparison-column-table td small { max-width: 320px; line-height: 1.45; white-space: normal; }
.status-chip.change-improved { background: #eaf7ef; color: #27784b; }
.status-chip.change-regressed { background: #fdecec; color: var(--danger); }
.status-chip.change-new_noncompliant, .status-chip.change-persisting { background: #fff4d6; color: #8a5200; }
.rate-text { color: var(--blue); }
.diagnosis-hero { display: grid; grid-template-columns: .65fr 1.35fr; gap: 16px; margin-bottom: 14px; }
.diagnosis-hero > div { padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: white; }
.diagnosis-hero > div:first-child span, .diagnosis-hero > div:first-child strong, .diagnosis-hero > div:first-child small { display: block; }
.diagnosis-hero > div:first-child span { color: var(--muted); font-size: 12px; }
.diagnosis-hero > div:first-child strong { margin: 8px 0; color: var(--blue); font-size: 40px; }
.diagnosis-hero > div:first-child small { color: #475467; line-height: 1.45; }
.diagnosis-hero-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.diagnosis-hero-metrics p { margin: 0; padding: 10px 14px; border-left: 1px solid var(--line); }
.diagnosis-hero-metrics span, .diagnosis-hero-metrics strong { display: block; }
.diagnosis-hero-metrics span { color: var(--muted); font-size: 11px; }
.diagnosis-hero-metrics strong { margin-top: 8px; color: var(--navy); font-size: 22px; }
.diagnostic-standard-selector { align-items: end; }
.diagnostic-standard-selector label { display: grid; min-width: 360px; gap: 6px; color: #475467; font-size: 12px; font-weight: 800; }
.diagnosis-basis-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 14px; }
.diagnosis-basis-card { padding: 20px 22px; border: 1px solid var(--line); border-top: 4px solid var(--navy); border-radius: 12px; background: white; }
.diagnosis-basis-card.system { border-top-color: #6d51aa; }
.diagnosis-basis-card span, .diagnosis-basis-card strong, .diagnosis-basis-card small { display: block; }
.diagnosis-basis-card span { color: var(--muted); font-size: 12px; font-weight: 800; }
.diagnosis-basis-card strong { margin: 8px 0; color: var(--blue); font-size: 36px; }
.diagnosis-basis-card.system strong { color: #6d51aa; }
.diagnosis-basis-card small { color: #475467; font-size: 11px; }
.diagnostic-breakdown-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 16px; }
.diagnostic-breakdown-comparison > div { min-width: 0; padding: 15px; border: 1px solid var(--line); border-radius: 10px; background: #fbfcfd; }
.diagnostic-breakdown-comparison h3 { margin: 0 0 12px; color: var(--navy); font-size: 14px; }
.diagnostic-breakdown-comparison .diagnostic-breakdown { grid-template-columns: repeat(4, minmax(90px, 1fr)); margin-bottom: 0; }
.diagnostic-basis-switch { display: flex; align-items: end; justify-content: space-between; gap: 14px; margin-bottom: 14px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 10px; background: white; }
.diagnostic-basis-switch > div { display: flex; align-items: center; gap: 8px; }
.diagnostic-basis-switch > div > span { margin-right: 4px; color: var(--muted); font-size: 11px; font-weight: 800; }
.diagnostic-basis-switch form label { display: grid; min-width: 260px; gap: 5px; color: var(--muted); font-size: 10px; font-weight: 800; }
.diagnostic-basis-switch select { min-height: 40px; }
.diagnostic-breakdown { display: grid; grid-template-columns: repeat(7, minmax(100px, 1fr)); gap: 8px; margin-bottom: 16px; }
.diagnostic-breakdown div { padding: 12px 14px; border: 1px solid var(--line); border-top: 3px solid #d0d5dd; border-radius: 8px; background: white; }
.diagnostic-breakdown div.compliant { border-top-color: #48a071; }
.diagnostic-breakdown div.non_standard_term { border-top-color: var(--danger); }
.diagnostic-breakdown span, .diagnostic-breakdown strong { display: block; }
.diagnostic-breakdown span { min-height: 28px; color: var(--muted); font-size: 10px; }
.diagnostic-breakdown strong { color: var(--navy); font-size: 19px; }
.subject-section { margin-bottom: 16px; }
.inline-rate { display: inline-block; width: 70px; height: 6px; margin-right: 7px; overflow: hidden; border-radius: 999px; background: #e8edf3; vertical-align: middle; }
.inline-rate span { display: block; height: 100%; border-radius: inherit; background: var(--blue); }
.filter-bar { display: flex; gap: 8px; margin-bottom: 14px; }
.filter-bar label { flex: 1; }
.filter-bar input, .filter-bar select { width: 100%; height: 40px; padding: 9px 12px; border: 1px solid #cfd6df; border-radius: 8px; background: white; font: inherit; }
.filter-bar select { width: 190px; }
.diagnosis-table { min-width: 1100px; }
.diagnosis-table.dual-standard { min-width: 1360px; }
.inline-rate.system-rate span { background: #6d51aa; }
.status-chip.partial, .status-chip.type_mismatch, .status-chip.length_mismatch, .status-chip.scale_mismatch, .status-chip.physical_name_mismatch, .status-chip.logical_name_mismatch { background: #fff4d6; color: #8a5200; }
.status-chip.non_compliant, .status-chip.non_standard_term { background: #fdecec; color: var(--danger); }
.status-chip.compliant { background: #eaf7ef; color: #27784b; }
.compact-breakdown { grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); }
.column-diagnosis-table { min-width: 1200px; }
.column-diagnosis-table td { vertical-align: top; }
.column-diagnosis-table .exception-row { background: #fffdf8; }
.diagnostic-detail { max-width: 260px; line-height: 1.45; }
.quality-sync-panel { margin-bottom: 16px; }
.quality-sync-list { padding: 0 20px; }
.quality-sync-row { display: grid; grid-template-columns: minmax(260px, 1.4fr) 100px 150px 150px auto; gap: 12px; align-items: end; padding: 16px 0; border-bottom: 1px solid #edf0f3; }
.quality-sync-row > div:first-child strong, .quality-sync-row > div:first-child small { display: block; }
.quality-sync-row small { margin-top: 5px; color: var(--muted); }
.quality-sync-row > div:nth-child(2) span, .quality-sync-row > div:nth-child(2) strong { display: block; }
.quality-sync-row > div:nth-child(2) span, .quality-sync-row label span { margin-bottom: 5px; color: var(--muted); font-size: 11px; }
.quality-sync-row > div:nth-child(2) strong { color: var(--navy); font-size: 18px; }
.quality-sync-row label { display: grid; }
.quality-sync-row input { min-width: 0; height: 40px; padding: 8px 10px; border: 1px solid #cfd6df; border-radius: 8px; font: inherit; }
.quality-filter select { width: 165px; }
.quality-filter select[name="diagnostic"] { width: 190px; }
.quality-table { min-width: 1240px; }
.quality-column-table { min-width: 1050px; }
.quality-overview .detail-card { min-height: 0; }
.badge.medium { background: #fff4d6; color: #8a5200; }
.badge.low { background: #eef2f6; color: #475467; }
.status-chip.ready_for_verify { background: #f0edff; color: #5b3da6; }
.status-chip.deferred { background: #eef2f6; color: #475467; }
.status-chip.verify-not_verified { background: #eef2f6; color: #475467; }
.status-chip.verify-pass { background: #eaf7ef; color: #27784b; }
.status-chip.verify-fail { background: #fdecec; color: var(--danger); }
.quality-tabs { display: flex; gap: 6px; overflow-x: auto; margin: -8px 0 18px; padding: 0; background: transparent; }
.quality-tabs a { min-width: 150px; margin: 0; padding: 10px 14px; border: 1px solid var(--line); border-radius: 8px; background: white; color: #475467; text-align: center; font-size: 13px; font-weight: 800; }
.quality-tabs a:hover, .quality-tabs a.active { border-color: var(--blue); background: var(--blue); color: white; }
.data-quality-filter select { width: 170px; }
.data-quality-table { min-width: 1280px; }
.code-input { font-family: ui-monospace, SFMono-Regular, Consolas, monospace !important; }
.checkbox-field { display: flex; grid-column: 1 / -1; flex-direction: row; align-items: center; gap: 9px; padding: 12px 14px; border-radius: 8px; background: #f8fafc; }
.checkbox-field input { width: 18px; height: 18px; margin: 0; padding: 0; }
.rule-expression-card { margin-bottom: 18px; }
.rule-expression-card pre { overflow-x: auto; margin: 0; padding: 18px 20px; background: #172b3d; color: #e9f2f9; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 13px; line-height: 1.6; white-space: pre-wrap; }
.rule-expression-card > p, .evidence-note > p { margin: 0; padding: 16px 20px; line-height: 1.6; }
.quality-rule-overview .detail-card { min-height: 0; }
.measurement-form small { color: var(--muted); font-weight: 400; }
.measurement-table { min-width: 1050px; }
.status-chip.rule-draft, .status-chip.result-no_data { background: #fff4d6; color: #8a5200; }
.status-chip.rule-approved, .status-chip.result-pass { background: #eaf7ef; color: #27784b; }
.status-chip.rule-under_review { background: #f0edff; color: #5b3da6; }
.status-chip.rule-rejected { background: #fdecec; color: var(--danger); }
.status-chip.rule-retired { background: #eef2f6; color: #475467; }
.status-chip.result-fail { background: #fdecec; color: var(--danger); }
.evidence-note { margin-bottom: 18px; }
.standard-release-overview .detail-card { min-height: 0; }
.report-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.report-heading h2 { margin: 6px 0; color: var(--navy); font-size: 25px; }
.report-heading p:last-child { margin: 0; color: var(--muted); font-size: 13px; }
.report-meta { display: grid; grid-template-columns: 90px 1fr 90px 1fr 90px 1fr 90px 150px 90px 100px; margin-bottom: 18px; border: 1px solid var(--line); background: white; }
.report-meta span, .report-meta strong { padding: 11px 13px; border-right: 1px solid var(--line); font-size: 12px; }
.report-meta span { background: #f8fafc; color: var(--muted); }
.report-table { background: white; border: 1px solid var(--line); }
.report-table th, .report-table td { padding: 10px; border: 1px solid var(--line); font-size: 11px; line-height: 1.5; vertical-align: top; }
.report-sign { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 22px; border: 1px solid var(--line); background: white; }
.report-sign div { display: grid; grid-template-columns: 70px 1fr; min-height: 58px; border-right: 1px solid var(--line); }
.report-sign span, .report-sign strong { display: flex; align-items: center; justify-content: center; padding: 12px; }
.report-sign span { background: #f8fafc; color: var(--muted); font-size: 12px; }
.weekly-toolbar { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 20px; }
.weekly-toolbar h2 { margin: 6px 0; color: var(--navy); font-size: 27px; }
.weekly-toolbar p:last-child { margin: 0; color: var(--muted); font-size: 13px; }
.weekly-toolbar form { display: flex; align-items: center; gap: 8px; }
.weekly-toolbar label { color: #475467; font-size: 12px; font-weight: 800; }
.weekly-toolbar input { min-height: 40px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 8px; background: white; font: inherit; }
.weekly-report { padding: 28px; border: 1px solid var(--line); border-radius: 12px; background: white; }
.weekly-heading { padding-bottom: 18px; border-bottom: 3px solid var(--navy); }
.weekly-heading > strong { padding: 9px 14px; border-radius: 7px; background: var(--navy); color: white; font-size: 14px; }
.weekly-meta { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 22px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.weekly-meta div { display: grid; grid-template-columns: 82px 1fr; min-height: 42px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.weekly-meta span, .weekly-meta strong { display: flex; align-items: center; padding: 9px 11px; font-size: 11px; }
.weekly-meta span { justify-content: center; background: #f8fafc; color: var(--muted); }
.weekly-section { margin-top: 24px; }
.weekly-section-title { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; }
.weekly-section-title span { display: inline-flex; align-items: center; justify-content: center; width: 23px; height: 23px; border-radius: 5px; background: var(--navy); color: white; font-size: 11px; font-weight: 900; }
.weekly-section-title h3 { margin: 0; color: var(--navy); font-size: 16px; }
.weekly-kpis { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.weekly-kpis div { padding: 14px 16px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.weekly-kpis span, .weekly-kpis small { display: block; color: var(--muted); font-size: 10px; }
.weekly-kpis strong { display: block; margin: 6px 0 4px; color: var(--navy); font-size: 22px; }
.weekly-summary { display: grid; grid-template-columns: 90px 1fr; border: 1px solid var(--line); border-top: 0; }
.weekly-summary > strong { display: flex; align-items: center; justify-content: center; background: #f8fafc; color: #475467; font-size: 11px; }
.weekly-summary ul { margin: 0; padding: 11px 16px 11px 32px; font-size: 11px; line-height: 1.65; }
.weekly-phase-table td:first-child { width: 230px; }
.weekly-phase-table td:last-child { min-width: 260px; }
.report-progress { width: 100px; height: 5px; margin-top: 6px; overflow: hidden; border-radius: 999px; background: #e7ebf0; }
.report-progress span { display: block; height: 100%; background: var(--blue); }
.compact-list { margin: 0; padding-left: 16px; }
.weekly-work-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.weekly-work-grid article { min-height: 145px; padding: 14px 16px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.weekly-work-grid h4, .weekly-risk-grid h4 { margin: 0 0 4px; color: var(--navy); font-size: 13px; }
.weekly-work-grid p { margin: 0 0 10px; color: var(--muted); font-size: 10px; }
.weekly-work-grid ul { margin: 0; padding-left: 17px; font-size: 11px; line-height: 1.55; }
.weekly-work-grid li { margin-bottom: 5px; }
.weekly-work-grid li small { display: block; color: var(--muted); }
.weekly-work-grid .muted { color: var(--muted); }
.weekly-deliverable-table td:nth-child(2) { min-width: 280px; }
.status-chip.deliverable-accepted { background: #eaf7ef; color: #27784b; }
.status-chip.deliverable-submitted { background: var(--blue-soft); color: var(--blue); }
.status-chip.deliverable-supplement_required, .status-chip.deliverable-rejected { background: #fdecec; color: var(--danger); }
.weekly-risk-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.weekly-risk-grid article > h4 { padding: 10px 12px; border: 1px solid var(--line); border-bottom: 0; background: #f8fafc; }
.weekly-report-footer > p { margin: 20px 0 0; color: var(--muted); text-align: right; font-size: 10px; }
.weekly-finalize-form { margin-top: 20px; }
.weekly-finalize-form textarea { white-space: pre-wrap; }
.snapshot-actions { display: flex; gap: 8px; }
.snapshot-confirmation { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 20px; border: 1px solid var(--line); background: #f8fafc; }
.snapshot-confirmation div { display: grid; grid-template-columns: 85px 1fr; border-right: 1px solid var(--line); }
.snapshot-confirmation span, .snapshot-confirmation strong { padding: 10px 12px; font-size: 11px; }
.snapshot-confirmation span { color: var(--muted); }
.snapshot-confirmation strong { background: white; color: var(--navy); }
.snapshot-comments { border: 1px solid var(--line); border-top: 0; }
.snapshot-comments > div { display: grid; grid-template-columns: 120px 1fr; border-bottom: 1px solid var(--line); }
.snapshot-comments > div:last-child { border-bottom: 0; }
.snapshot-comments strong { display: flex; align-items: center; justify-content: center; padding: 12px; background: #f8fafc; color: #475467; font-size: 11px; }
.snapshot-comments p { min-height: 42px; margin: 0; padding: 12px 14px; font-size: 11px; line-height: 1.65; white-space: pre-wrap; }
.report-history-table { min-width: 900px; }
.login-body { min-height: 100vh; background: linear-gradient(135deg, #123653 0%, #1f5d8d 58%, #eaf3fa 58%, #f5f7fa 100%); }
.login-shell { display: grid; grid-template-columns: 1.1fr 430px; align-items: center; gap: 70px; min-height: 100vh; max-width: 1180px; margin: 0 auto; padding: 50px; }
.login-brand { color: white; }
.login-brand .eyebrow { color: #aed6f4; }
.login-brand h1 { max-width: 560px; margin: 14px 0; font-size: 38px; line-height: 1.25; }
.login-brand > p:last-of-type { max-width: 520px; color: #d9e8f5; line-height: 1.7; }
.login-brand ul { margin-top: 30px; padding-left: 20px; color: #e9f3fa; line-height: 2; }
.login-card { display: grid; gap: 18px; padding: 36px; border: 1px solid rgba(255,255,255,.5); border-radius: 18px; background: rgba(255,255,255,.97); box-shadow: 0 22px 60px rgba(16,42,67,.22); }
.login-card h2 { margin: 6px 0; color: var(--navy); font-size: 28px; }
.login-card > div > p:last-child { margin: 0; color: var(--muted); font-size: 13px; }
.login-card > small { color: var(--muted); text-align: center; line-height: 1.5; }
.role-guide { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-bottom: 18px; }
.role-guide div { padding: 14px; border: 1px solid var(--line); border-top: 3px solid var(--blue); border-radius: 9px; background: white; }
.role-guide strong, .role-guide span { display: block; }
.role-guide strong { margin-bottom: 5px; color: var(--navy); font-size: 12px; }
.role-guide span { color: var(--muted); font-size: 10px; line-height: 1.5; }
.user-create-form { margin-bottom: 20px; }
.user-card-list { display: grid; gap: 10px; padding: 14px; }
.user-admin-card { display: grid; grid-template-columns: 180px repeat(5, minmax(130px, 1fr)) 120px; align-items: end; gap: 10px; padding: 14px; border: 1px solid var(--line); border-radius: 9px; background: #fbfcfd; }
.user-admin-card .field span { font-size: 10px; }
.user-admin-identity { align-self: center; }
.user-admin-identity strong, .user-admin-identity span, .user-admin-identity small { display: block; }
.user-admin-identity strong { color: var(--navy); }
.user-admin-identity span, .user-admin-identity small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.checkbox-field.compact { grid-column: auto; padding: 9px; }
.report-approval-panel { margin-bottom: 20px; padding: 20px; border: 1px solid var(--line); border-top: 4px solid var(--navy); border-radius: 12px; background: white; }
.approval-stage-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 14px; }
.approval-stage { display: grid; grid-template-columns: 60px 1fr auto; gap: 5px 12px; padding: 14px; border: 1px solid var(--line); border-radius: 9px; }
.approval-stage.current { border-color: var(--blue); background: var(--blue-soft); }
.approval-stage > span { grid-row: 1 / 4; align-self: center; color: var(--blue); font-size: 12px; font-weight: 900; }
.approval-stage h4, .approval-stage strong, .approval-stage small, .approval-stage p { margin: 0; }
.approval-stage h4 { color: var(--navy); font-size: 13px; }
.approval-stage small { color: var(--muted); }
.approval-stage p { grid-column: 2 / -1; color: var(--muted); font-size: 10px; }
.report-submit-form, .assigned-decision-form { margin-top: 12px; }
.status-chip.report-approved { background: #eaf7ef; color: #27784b; }
.common-standard-release-card { margin-bottom: 14px; }
.common-standard-search select { min-width: 150px; }
.common-standard-table { min-width: max-content; }
.common-standard-table th { max-width: 220px; white-space: nowrap; }
.common-standard-table td { max-width: 360px; min-width: 110px; vertical-align: top; }
.common-standard-table td:nth-child(1) { min-width: 72px; }
.common-standard-table .common-standard-value { line-height: 1.55; white-space: normal; }
.common-standard-table tr.retired-row { background: #fff8f7; }
.common-standard-detail { max-width: 1100px; }
.common-standard-detail .overview-list div { grid-template-columns: 260px 1fr; }
.common-coverage-panel { margin-bottom: 18px; border: 1px solid var(--line); border-top: 4px solid var(--blue); border-radius: 12px; background: white; overflow: hidden; }
.common-coverage-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; padding: 16px 18px 12px; }
.institution-coverage-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.common-coverage-grid article { padding: 14px; border: 1px solid var(--line); border-radius: 9px; background: #fbfcfd; }
.common-coverage-grid article.overall { border-color: #8bb8dc; background: var(--blue-soft); }
.common-coverage-grid article > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.common-coverage-grid span { color: var(--muted); font-size: 11px; font-weight: 800; }
.common-coverage-grid strong { color: var(--navy); font-size: 22px; }
.coverage-track { height: 7px; margin: 11px 0; border-radius: 999px; background: #e4e9ef; overflow: hidden; }
.coverage-track i { display: block; height: 100%; border-radius: inherit; background: var(--blue); }
.common-coverage-grid p, .common-coverage-grid small { display: block; margin: 0; color: #475467; font-size: 10px; }
.common-coverage-grid small { margin-top: 5px; color: var(--muted); }
.term-worker-progress-panel { margin: 18px 0; border: 1px solid var(--line); border-radius: 12px; background: #fff; overflow: hidden; }
.term-worker-progress-panel > summary { align-items: center; cursor: pointer; list-style: none; border-bottom: 0; user-select: none; }
.term-worker-progress-panel > summary::-webkit-details-marker { display: none; }
.term-worker-progress-panel[open] > summary { border-bottom: 1px solid var(--line); }
.term-worker-toggle { display: flex; align-items: center; gap: 12px; white-space: nowrap; }
.term-worker-toggle b { color: var(--navy); font-size: 14px; }
.term-worker-toggle i::after { content: "펼쳐보기 ▾"; color: var(--blue); font-style: normal; font-size: 12px; font-weight: 800; }
.term-worker-progress-panel[open] .term-worker-toggle i::after { content: "접기 ▴"; }
.term-worker-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; padding: 14px 18px; background: #f8fafc; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.term-worker-summary-grid article { padding: 12px 14px; border: 1px solid #dce3eb; border-radius: 9px; background: #fff; }
.term-worker-summary-grid span, .term-worker-summary-grid small { display: block; color: var(--muted); font-size: 11px; font-weight: 700; }
.term-worker-summary-grid strong { display: block; margin: 4px 0 2px; color: var(--navy); font-size: 23px; }
.term-worker-summary-grid article.completed { border-color: #9cccb3; background: #f2fbf6; }
.term-worker-summary-grid article.unassigned { border-color: #e8c991; background: #fffaf0; }
.term-worker-progress-panel .table-scroll { margin: 0 18px; }
.term-worker-progress-table th:nth-child(n+2), .term-worker-progress-table td:nth-child(n+2) { text-align: right; white-space: nowrap; }
.term-worker-progress-table td:first-child small { display: block; margin-top: 3px; color: var(--muted); }
.term-worker-progress-table tr.unattributed { background: #fffaf0; }
.worker-rate { display: grid; grid-template-columns: minmax(110px, 1fr) 48px; align-items: center; gap: 8px; min-width: 180px; }
.worker-rate .coverage-track { margin: 0; }
.worker-rate strong { color: var(--navy); font-size: 12px; }
.coverage-rule { margin: 0; padding: 0 18px 16px; color: var(--muted); font-size: 10px; line-height: 1.6; }
.common-mapping-cell { min-width: 190px; }
.common-mapping-link { text-decoration: none; }
.common-mapping-note { display: block; max-width: 250px; margin-top: 6px; color: var(--muted); line-height: 1.45; }
.standard-usage-cell { min-width: 265px; }
.standard-usage-detail-link { display: inline-grid; gap: 3px; }
.standard-usage-detail-link small { color: var(--muted); }
.standard-usage-breakdown { display: flex; flex-wrap: wrap; gap: 3px; margin-top: 5px; }
.standard-usage-breakdown a { display: inline-flex; align-items: center; gap: 3px; padding: 2px 4px; border: 1px solid transparent; border-radius: 5px; font-size: 8px; line-height: 1.2; text-decoration: none; }
.standard-usage-breakdown a b { min-width: 15px; padding: 1px 4px; border-radius: 999px; text-align: center; }
.standard-usage-breakdown a.usage-positive { border-color: #1f6fa8; background: #1f6fa8; color: white; font-weight: 900; }
.standard-usage-breakdown a.usage-positive b { background: white; color: #155783; }
.standard-usage-breakdown a.usage-positive:hover { border-color: #155783; background: #155783; color: white; }
.standard-usage-breakdown a.usage-zero { padding-right: 2px; padding-left: 2px; background: transparent; color: #98a2b3; font-weight: 600; }
.standard-usage-breakdown a.usage-zero b { min-width: auto; padding: 0; background: transparent; color: #b0b8c2; }
.standard-usage-breakdown a.usage-zero:hover { background: #f2f4f7; color: #667085; }
.standard-usage-cell.has-system-usage { border-left: 0; background: #eef7fd; box-shadow: inset 3px 0 #1f6fa8; }
.standard-usage-cell.has-system-usage .standard-usage-detail-link > strong { color: var(--blue); font-size: 15px; }
.standard-usage-cell.no-system-usage { background: white; }
.standard-usage-cell.no-system-usage .standard-usage-detail-link { color: #98a2b3; }
.standard-usage-summary { display: grid; grid-template-columns: repeat(6, minmax(130px, 1fr)); gap: 10px; margin-bottom: 16px; }
.standard-usage-summary article { min-width: 0; padding: 14px 16px; border: 1px solid var(--line); border-radius: 10px; background: white; }
.standard-usage-summary article.overall { border-color: #8bb8dc; background: var(--blue-soft); }
.standard-usage-summary span, .standard-usage-summary strong, .standard-usage-summary small { display: block; }
.standard-usage-summary span { color: var(--muted); font-size: 10px; font-weight: 800; }
.standard-usage-summary strong { margin-top: 5px; color: var(--navy); font-size: 20px; }
.standard-usage-summary small { overflow: hidden; margin-top: 5px; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.standard-usage-filter label { flex: 1; }
.usage-count-strong { border-color: #5796c5; background: var(--blue); color: white; }
.emphasized-system-summary { grid-template-columns: repeat(6, minmax(90px, 1fr)); gap: 5px; margin-bottom: 10px; }
.emphasized-system-summary article { padding: 7px 9px; border-radius: 7px; }
.emphasized-system-summary article span { overflow: hidden; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.emphasized-system-summary article strong { margin-top: 2px; font-size: 15px; }
.emphasized-system-summary article small { display: none; }
.emphasized-system-summary article.used { border-color: #1f6fa8; background: #e3f2fc; box-shadow: inset 3px 0 #1f6fa8; }
.emphasized-system-summary article.used span { color: #285f8d; }
.emphasized-system-summary article.used strong { color: #155783; font-size: 18px; font-weight: 900; }
.emphasized-system-summary article.unused { border-color: #edf0f3; background: white; opacity: 1; }
.emphasized-system-summary article.unused span, .emphasized-system-summary article.unused strong { color: #98a2b3; }
.usage-context-strip { display: flex; align-items: stretch; gap: 6px; margin-bottom: 10px; }
.usage-context-strip > div { display: grid; min-width: 130px; gap: 2px; padding: 7px 9px; border: 1px solid var(--line); border-radius: 7px; background: white; }
.usage-context-strip > div span { color: var(--muted); font-size: 9px; font-weight: 800; }
.usage-context-strip > div strong { color: var(--navy); font-size: 14px; }
.usage-context-strip > p { flex: 1; margin: 0; padding: 8px 10px; border-radius: 7px; background: #f8fafc; color: #5d6d7e; font-size: 9px; line-height: 1.5; }
.institution-system-usage-table { min-width: 1200px; }
.institution-system-usage-table th:nth-child(2), .institution-system-usage-table th:nth-child(3) { min-width: 210px; }
.domain-term-summary { grid-template-columns: repeat(5, minmax(140px, 1fr)); }
.domain-term-status { font-size: 15px !important; }
.domain-term-guide { line-height: 1.7; }
.domain-term-guide strong { margin-right: 8px; }
.system-domain-term-table { min-width: 980px; }
.system-domain-term-table th:nth-child(1) { min-width: 180px; }
.system-domain-term-table th:nth-child(2) { min-width: 230px; }
.system-domain-term-table th:nth-child(3) { min-width: 180px; }
.system-domain-term-table th:nth-child(6) { min-width: 190px; }
.system-domain-source-cell { min-width: 255px; }
.domain-source-preview { margin-top: 8px; }
.domain-source-preview summary { color: var(--blue); font-size: 10px; font-weight: 800; cursor: pointer; }
.domain-source-preview ul { display: grid; gap: 5px; margin: 7px 0 0; padding: 0; list-style: none; }
.domain-source-preview li { padding: 7px 8px; border: 1px solid var(--line); border-radius: 7px; background: #f8fafc; }
.domain-source-preview li a { display: grid; gap: 2px; color: inherit; text-decoration: none; }
.domain-source-preview li a:hover strong { color: var(--blue); }
.domain-source-preview li strong { font-size: 10px; }
.domain-source-preview li small { display: block; overflow: hidden; max-width: 230px; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.domain-source-all-link { display: inline-block; margin-top: 7px; font-size: 10px; font-weight: 800; }
.system-word-usage-summary { grid-template-columns: repeat(5, minmax(140px, 1fr)); }
.system-word-usage-tabs { margin-bottom: 12px; }
.system-word-term-table { min-width: 1120px; }
.system-word-term-table th:nth-child(1), .system-word-term-table th:nth-child(2) { min-width: 210px; }
.system-word-column-table { min-width: 1460px; }
.system-word-column-table th:nth-child(1) { min-width: 190px; }
.system-word-column-table th:nth-child(3), .system-word-column-table th:nth-child(4) { min-width: 240px; }
.system-word-column-table td:last-child { min-width: 125px; }
.system-word-column-table td:last-child .text-link { display: block; margin-bottom: 7px; }
.institution-code-registration-summary { grid-template-columns: repeat(4, minmax(150px, 1fr)); }
.code-registration-value-table { min-width: 920px; }
.code-registration-value-table th:nth-child(2), .code-registration-value-table th:nth-child(3), .code-registration-value-table th:nth-child(4) { min-width: 210px; }
.domain-term-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.term-domain-change-link { margin-top: 8px; }
.term-domain-spec-mismatch { background: #fff7f5; }
.term-domain-mismatch-detail { display: grid; gap: 5px; margin-top: 8px; padding: 9px; border: 1px solid #f5c2bd; border-radius: 8px; background: #fff; }
.term-domain-mismatch-detail form { margin-top: 3px; }
.manual-code-registration { margin-bottom: 20px; padding: 18px; border: 1px solid var(--line); border-radius: 12px; background: #f8fbff; }
.manual-code-registration .panel-title { margin-bottom: 12px; }
.manual-code-registration h4 { margin: 0 0 4px; font-size: 18px; }
.manual-code-registration p { margin: 0; color: var(--muted); }
.code-value-registration { margin-top: 20px; }
.institution-word-impact-card { margin-bottom: 20px; }
.institution-word-edit-form { max-width: 980px; }
.institution-term-inline-form { margin-bottom: 9px; }
.institution-term-inline-form input[type="hidden"] { display: none; }
.institution-term-inline-form button { grid-column: 1 / -1; }
.institution-term-inline-form { grid-template-columns: 1fr; }
.institution-term-inline-form > * { grid-column: 1 / -1; }
.institution-term-existing-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 8px; }
.term-catalog-table .institution-term-name-cell { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 165px; max-width: 220px; }
.term-catalog-table .institution-term-name-cell > strong { color: #101828; font-size: 13px; }
.term-catalog-table .institution-term-name-cell > .code { color: #667085; white-space: nowrap; }
.term-catalog-table .common-mapping-cell { min-width: 150px; max-width: 180px; }
.term-catalog-table .standard-usage-cell { min-width: 210px; }
.term-catalog-table .standard-action-column { width: 310px; min-width: 310px; }
.institution-workflow-summary { display: grid; grid-template-columns: repeat(5, minmax(128px, 1fr)); gap: 7px; margin: 0 0 18px; overflow-x: auto; scrollbar-width: thin; }
.institution-workflow-summary a { display: flex; align-items: center; justify-content: space-between; min-width: 0; gap: 7px; padding: 10px 11px; border: 1px solid var(--line); border-radius: 9px; background: white; color: #475467; text-decoration: none; }
.institution-workflow-summary a:hover, .institution-workflow-summary a.active { border-color: #7ba7d1; background: #f4f9fd; color: var(--navy); }
.institution-workflow-summary span { overflow: hidden; font-size: 11px; font-weight: 800; white-space: nowrap; text-overflow: ellipsis; }
.institution-workflow-summary strong { flex: 0 0 auto; color: var(--blue); font-size: 17px; }
.institution-workflow-summary a.system-registration-request { border-color: #d9c5f0; background: #fbf7ff; }
.institution-workflow-summary a.system-registration-request strong { color: #6d51aa; }
.institution-workflow-summary a.system-registration-request:hover,
.institution-workflow-summary a.system-registration-request.active { border-color: #8b6bb8; background: #f1eafa; color: #4c3570; box-shadow: inset 3px 0 0 #6d51aa; }
.system-registration-filter-notice { margin-top: -8px; margin-bottom: 18px; }
.institution-workflow-column { min-width: 185px; }
.institution-workflow-cell { display: grid; gap: 7px; }
.institution-workflow-cell form { display: flex; flex-wrap: wrap; gap: 5px; }
.status-chip.workflow-editing { background: #eef2f6; color: #475467; }
.status-chip.workflow-edit_completed { background: #eaf2ff; color: #175cd3; }
.status-chip.workflow-review_confirmed { background: #fff4d6; color: #8a5b08; }
.status-chip.workflow-standard_confirmed { background: #eaf7ef; color: #27784b; }
@media (max-width: 680px) { .institution-workflow-summary { grid-template-columns: repeat(5, minmax(128px, 1fr)); } }
.term-detail-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.term-detail-summary article { display: grid; gap: 5px; padding: 16px; border: 1px solid var(--line); border-radius: 11px; background: white; }
.term-detail-summary span, .term-detail-composition-grid article > span, .term-detail-link-grid article > span { color: var(--muted); font-size: 10px; font-weight: 800; }
.term-detail-summary strong { color: var(--navy); font-size: 19px; }
.term-detail-summary small { color: var(--muted); }
.term-detail-summary .detail-ok { color: #27784b; }
.term-detail-summary .detail-warning { color: #b42318; }
.term-detail-overview .term-detail-wide { grid-column: 1 / -1; }
.term-detail-composition-grid, .term-detail-link-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.term-detail-link-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.term-detail-composition-grid article, .term-detail-link-grid article { display: grid; align-content: start; gap: 8px; padding: 16px; border: 1px solid var(--line); border-radius: 10px; background: #fbfcfe; }
.term-detail-link-grid article p { margin: 0; color: #475467; white-space: pre-line; }
.term-detail-system-table { min-width: 1600px; }
.term-detail-column-table { min-width: 1400px; }
.term-detail-system-table tr.review-row, .term-detail-column-table tr.review-row { background: #fff9ef; }
.mapping-reason-cell { min-width: 260px; max-width: 420px; color: #344054; white-space: normal; }
@media (max-width: 1180px) { .term-detail-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } .term-detail-composition-grid, .term-detail-link-grid { grid-template-columns: 1fr; } }
.term-domain-current-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 16px; }
.term-domain-current-grid article { display: flex; flex-direction: column; gap: 6px; padding: 18px; }
.term-domain-current-grid article > span { color: var(--muted); font-size: 12px; font-weight: 700; }
.term-domain-current-grid article > strong { color: #101828; font-size: 20px; }
.term-domain-current-grid article > b { color: #344054; font-size: 12px; }
.term-domain-current-grid article > small { color: var(--muted); }
.term-domain-change-rule { background: #f8faff; border-color: #c7d7fe; }
.term-domain-sync-notice { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.term-domain-sync-notice strong, .term-domain-sync-notice span { display: block; }
.term-domain-sync-notice span { margin-top: 4px; }
.term-domain-search { margin-bottom: 16px; }
.term-domain-change-form { display: grid; gap: 16px; }
.term-domain-candidate-table { min-width: 1020px; }
.term-domain-candidate-table th:first-child { width: 70px; }
.institution-term-domain-candidate-table { table-layout: fixed; }
.institution-term-domain-candidate-table .domain-selection-col { width: 12%; }
.institution-term-domain-candidate-table .domain-name-col { width: 20%; }
.institution-term-domain-candidate-table .domain-group-col { width: 23%; }
.institution-term-domain-candidate-table .domain-spec-col { width: 17%; }
.institution-term-domain-candidate-table .domain-description-col { width: 28%; }
.institution-term-domain-candidate-table th:first-child,
.institution-term-domain-candidate-table td:first-child { width: 12%; min-width: 120px; white-space: nowrap; }
.institution-term-domain-candidate-table .domain-description-cell { line-height: 1.55; overflow-wrap: anywhere; white-space: normal; }
.term-domain-candidate-table .domain-exact-row { background: #f2f7ff; }
.domain-radio { display: inline-flex; align-items: center; gap: 6px; color: #175cd3; font-weight: 700; cursor: pointer; }
.institution-term-domain-candidate-table .domain-radio { flex-wrap: nowrap; white-space: nowrap; }
.domain-radio input { width: 18px; height: 18px; accent-color: #175cd3; }
.term-domain-reason { margin: 0; }
@media (max-width: 980px) { .term-domain-current-grid { grid-template-columns: 1fr; } .term-domain-sync-notice { align-items: stretch; flex-direction: column; } }
.common-standard-copy-panel { margin-bottom: 18px; border-color: #b9ccf7; background: linear-gradient(180deg, #f8faff 0, #fff 150px); }
.common-standard-copy-search { margin: 14px 0; }
.common-standard-copy-table { min-width: 960px; }
.common-standard-copy-table th:first-child { min-width: 180px; }
.common-standard-copy-table th:nth-child(3) { min-width: 260px; }
.common-standard-copy-table td:last-child { min-width: 150px; }
.domain-recommendation-policy { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; padding: 12px 16px; border: 1px solid #cbdbea; border-radius: 10px; background: #f6faff; color: #475467; font-size: 11px; }
.domain-recommendation-policy > strong { margin-right: 5px; color: var(--navy); }
.domain-recommendation-policy > span { display: inline-flex; align-items: center; gap: 5px; font-weight: 800; }
.domain-recommendation-policy > span b { display: grid; place-items: center; width: 19px; height: 19px; border-radius: 50%; background: var(--blue); color: white; font-size: 9px; }
.domain-recommendation-policy > i { color: #98a2b3; font-style: normal; }
.domain-recommendation-policy > small { flex: 1 1 100%; margin-top: 2px; color: var(--muted); }
.domain-recommendation-hero { margin-bottom: 16px; border-color: #a9c9e3; box-shadow: 0 10px 28px rgba(31, 77, 115, .08); }
.domain-recommendation-hero > header { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 22px; border-bottom: 1px solid #d9e7f2; background: linear-gradient(120deg, #f8fbfe, #edf6fc); }
.domain-recommendation-hero > header > div > span { color: var(--blue); font-size: 8px; font-weight: 900; letter-spacing: .12em; }
.domain-recommendation-hero > header h3 { margin: 4px 0; color: var(--navy); font-size: 20px; }
.domain-recommendation-hero > header p { margin: 0; color: #5d6d7e; font-size: 11px; }
.domain-recommendation-confidence { display: grid; min-width: 100px; gap: 2px; padding: 9px 12px; border: 1px solid #9fcbb2; border-radius: 9px; background: #f2fbf6; text-align: center; }
.domain-recommendation-confidence small { color: #527060; font-size: 9px; }
.domain-recommendation-confidence strong { color: #27784b; font-size: 14px; }
.domain-recommendation-confidence.medium { border-color: #a9c9e3; background: #f1f7fc; }
.domain-recommendation-confidence.medium strong { color: var(--blue); }
.domain-recommendation-confidence.review { border-color: #e5bf77; background: #fff8e9; }
.domain-recommendation-confidence.review strong { color: #8a5b08; }
.domain-recommendation-comparison { display: grid; grid-template-columns: minmax(0, 1fr) 40px minmax(0, 1.15fr); align-items: stretch; gap: 12px; padding: 20px 22px 14px; }
.domain-recommendation-comparison article { display: grid; align-content: center; min-width: 0; gap: 5px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 10px; background: #f8fafc; }
.domain-recommendation-comparison article > span { color: var(--muted); font-size: 10px; font-weight: 800; }
.domain-recommendation-comparison article > strong { overflow-wrap: anywhere; color: #475467; font-size: 18px; }
.domain-recommendation-comparison article > small { color: #667085; font-size: 10px; }
.domain-recommendation-comparison article > b { color: #526476; font-size: 11px; }
.domain-recommendation-comparison > i { display: grid; place-items: center; color: var(--blue); font-size: 25px; font-style: normal; font-weight: 900; }
.domain-recommendation-comparison article.recommended { border: 2px solid #63a0cf; background: #f2f8fd; }
.domain-recommendation-comparison article.recommended > span, .domain-recommendation-comparison article.recommended > b { color: var(--blue); }
.domain-recommendation-comparison article.recommended > strong { color: var(--navy); font-size: 22px; }
.domain-recommendation-comparison article.source-common { border-color: #7c65c9; background: #f7f5ff; }
.domain-recommendation-comparison article.source-common > span, .domain-recommendation-comparison article.source-common > b { color: #6d28d9; }
.domain-recommendation-comparison article.source-institution { border-color: #75b792; background: #f3fbf6; }
.domain-recommendation-comparison article.source-institution > span, .domain-recommendation-comparison article.source-institution > b { color: #27784b; }
.domain-recommendation-reasons { display: flex; align-items: flex-start; gap: 12px; margin: 0 22px 20px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 9px; background: white; }
.domain-recommendation-reasons > strong { flex: 0 0 auto; color: var(--navy); font-size: 11px; }
.domain-recommendation-reasons > div { display: flex; flex: 1; flex-wrap: wrap; gap: 5px; }
.domain-recommendation-reasons > div span { padding: 3px 7px; border-radius: 999px; background: #edf4fa; color: #41637f; font-size: 9px; font-weight: 800; }
.domain-recommendation-reasons > p { flex: 1 1 100%; margin: 0; color: var(--muted); font-size: 10px; }
.domain-recommendation-hero > footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 22px; border-top: 1px solid #d9e7f2; background: #f8fbfe; }
.domain-recommendation-hero > footer > div { display: grid; gap: 3px; }
.domain-recommendation-hero > footer strong { color: var(--navy); font-size: 12px; }
.domain-recommendation-hero > footer span { color: var(--muted); font-size: 10px; }
.domain-recommendation-candidate-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.domain-candidate-list { display: grid; gap: 8px; max-height: 760px; overflow-y: auto; padding: 14px; }
.domain-candidate-list > article { display: grid; gap: 8px; padding: 13px 14px; border: 1px solid var(--line); border-radius: 9px; background: white; }
.domain-candidate-list > article.selected { border: 2px solid #63a0cf; background: #f5faff; box-shadow: 0 4px 12px rgba(46, 116, 181, .08); }
.domain-candidate-list article > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.domain-candidate-list article > header > div { display: grid; min-width: 0; gap: 3px; }
.domain-candidate-list article > header strong { overflow-wrap: anywhere; color: var(--navy); font-size: 13px; }
.domain-candidate-list article > header small { color: var(--muted); font-size: 9px; }
.domain-candidate-list article > p { margin: 0; color: var(--blue); font-size: 10px; }
.domain-candidate-list article > div { display: flex; flex-wrap: wrap; gap: 4px; }
.domain-candidate-list article > div span { padding: 3px 6px; border-radius: 999px; background: #eef2f6; color: #52606d; font-size: 8px; }
.domain-candidate-list article > small { color: var(--muted); font-size: 9px; line-height: 1.5; }
.domain-candidate-list article > a { justify-self: start; font-size: 10px; }
.domain-candidate-score { flex: 0 0 auto; padding: 4px 7px; border-radius: 999px; background: #eef2f6; color: #667085; font-size: 9px; font-weight: 900; }
.domain-candidate-score.high { background: #eaf7ef; color: #27784b; }
.domain-candidate-score.medium { background: var(--blue-soft); color: var(--blue); }
.domain-candidate-score.review { background: #fff4d6; color: #8a5b08; }
@media (max-width: 980px) { .domain-recommendation-candidate-grid { grid-template-columns: 1fr; } }
@media (max-width: 720px) {
  .domain-recommendation-hero > header, .domain-recommendation-hero > footer { align-items: stretch; flex-direction: column; }
  .domain-recommendation-confidence { align-self: flex-start; }
  .domain-recommendation-comparison { grid-template-columns: 1fr; padding-right: 14px; padding-left: 14px; }
  .domain-recommendation-comparison > i { transform: rotate(90deg); }
  .domain-recommendation-reasons { align-items: stretch; flex-direction: column; margin-right: 14px; margin-left: 14px; }
}
.standard-usage-table { min-width: 1260px; }
.standard-usage-table th:nth-child(3), .standard-usage-table th:nth-child(4) { min-width: 230px; }
.system-term-source-table { min-width: 1540px; }
.system-term-source-table th:nth-child(2), .system-term-source-table th:nth-child(3) { min-width: 250px; }
.source-term-status { font-size: 15px !important; overflow-wrap: anywhere; }
@media (max-width: 1050px) { .standard-usage-summary { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 720px) { .standard-usage-summary { grid-template-columns: 1fr; } .standard-usage-summary.emphasized-system-summary { grid-template-columns: repeat(2, 1fr); } .standard-usage-cell { min-width: 230px; } .usage-context-strip { flex-direction: column; } }
.status-chip.report-under_review, .status-chip.report-reviewed { background: #fff4d6; color: #8a5200; }
.status-chip.report-rejected { background: #fdecec; color: var(--danger); }
.status-chip.large { padding: 8px 11px; font-size: 11px; }
.calendar-intro { margin-bottom: 18px; }
.calendar-toolbar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 18px; margin-bottom: 14px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: white; }
.calendar-toolbar h3 { margin: 0; color: var(--navy); font-size: 20px; text-align: center; }
.calendar-move { display: flex; align-items: center; gap: 7px; }
.calendar-nav-button, .calendar-today, .calendar-view-switch a { display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--line); background: white; color: #475467; text-decoration: none; font-weight: 800; }
.calendar-nav-button { width: 36px; height: 36px; border-radius: 8px; font-size: 24px; }
.calendar-today { min-height: 36px; padding: 0 13px; border-radius: 8px; font-size: 12px; }
.calendar-view-switch { display: flex; justify-content: flex-end; }
.calendar-view-switch a { min-width: 46px; min-height: 36px; margin-left: -1px; font-size: 12px; }
.calendar-view-switch a:first-child { margin-left: 0; border-radius: 8px 0 0 8px; }
.calendar-view-switch a:last-child { border-radius: 0 8px 8px 0; }
.calendar-view-switch a.active { border-color: var(--blue); background: var(--blue); color: white; }
.calendar-summary .summary-danger { border-color: #f0b4af; background: #fffafa; }
.calendar-summary .summary-danger strong { color: var(--danger); }
.milestone-board { display: grid; grid-template-columns: 180px 1fr; margin-bottom: 14px; overflow: hidden; border: 1px solid #d7c8f2; border-radius: 12px; background: white; }
.milestone-board-title { display: flex; flex-direction: column; justify-content: center; padding: 18px; background: linear-gradient(135deg, #5b3da6, #7b5dbb); color: white; }
.milestone-board-title span { font-weight: 900; }
.milestone-board-title small { margin-top: 6px; color: #eee8fb; font-size: 10px; line-height: 1.5; }
.milestone-board-items { display: flex; gap: 8px; overflow-x: auto; padding: 12px; }
.milestone-board-items a { display: grid; min-width: 230px; padding: 11px 13px; border: 1px solid #e7dff5; border-radius: 9px; background: #fbf9ff; color: var(--ink); text-decoration: none; }
.milestone-board-items span, .milestone-board-items small { color: #6d51aa; font-size: 10px; }
.milestone-board-items strong { margin: 4px 0; color: #3f2c72; font-size: 12px; }
.calendar-shell { margin-bottom: 12px; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: white; }
.calendar-weekdays, .calendar-month-grid { display: grid; grid-template-columns: repeat(7, minmax(120px, 1fr)); }
.calendar-weekdays span { padding: 10px; border-right: 1px solid var(--line); background: #f8fafc; color: #475467; text-align: center; font-size: 11px; font-weight: 900; }
.calendar-weekdays span:nth-child(6) { color: var(--blue); }
.calendar-weekdays span:nth-child(7) { color: var(--danger); }
.calendar-day { min-height: 145px; padding: 8px; border-top: 1px solid var(--line); border-right: 1px solid var(--line); background: white; }
.calendar-day:nth-child(7n) { border-right: 0; }
.calendar-day.outside-month { background: #fafbfc; }
.calendar-day.outside-month .day-number { color: #b5bec8; }
.calendar-day.today { background: #f3f8fc; box-shadow: inset 0 0 0 2px var(--blue); }
.calendar-day-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.day-number { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; color: #344054; text-decoration: none; font-size: 12px; font-weight: 900; }
.calendar-day.today .day-number { background: var(--blue); color: white; }
.day-add { color: #98a2b3; text-decoration: none; font-size: 16px; font-weight: 800; }
.day-add:hover { color: var(--blue); }
.calendar-events { display: grid; gap: 4px; }
.calendar-event { display: flex; align-items: center; gap: 4px; min-width: 0; padding: 5px 6px; border-left: 3px solid #98a2b3; border-radius: 4px; background: #f2f4f7; color: #475467; text-decoration: none; font-size: 9px; }
.calendar-event strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.calendar-event time { flex: none; color: inherit; font-size: 8px; font-weight: 900; }
.calendar-event.status-in_progress, .calendar-week-event.status-in_progress { border-left-color: var(--blue); background: var(--blue-soft); color: #245f96; }
.calendar-event.status-completed, .calendar-week-event.status-completed { border-left-color: #48a071; background: #eaf7ef; color: #27784b; }
.calendar-event.status-blocked, .calendar-week-event.status-blocked { border-left-color: var(--danger); background: #fdecec; color: var(--danger); }
.calendar-event.milestone, .calendar-week-event.milestone { border-left-color: #6d51aa; background: #f0edff; color: #4b3284; }
.calendar-more { padding: 3px 5px; color: var(--blue); text-decoration: none; font-size: 9px; font-weight: 800; }
.calendar-week-grid { display: grid; grid-template-columns: repeat(7, minmax(150px, 1fr)); min-width: 1050px; }
.calendar-week-day { min-height: 500px; border-right: 1px solid var(--line); }
.calendar-week-day:last-child { border-right: 0; }
.calendar-week-day.today { background: #f7fbfe; }
.calendar-week-head { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2px; padding: 13px 10px; border-bottom: 1px solid var(--line); text-align: center; }
.calendar-week-head > span { grid-column: 1 / -1; color: var(--muted); font-size: 10px; }
.calendar-week-head > a:nth-of-type(1) { color: var(--navy); text-decoration: none; font-size: 15px; font-weight: 900; }
.calendar-week-events { display: grid; gap: 7px; padding: 8px; }
.calendar-week-event { display: grid; padding: 9px; border-left: 4px solid #98a2b3; border-radius: 6px; background: #f5f7fa; color: #344054; text-decoration: none; }
.calendar-week-event span, .calendar-week-event small { color: inherit; font-size: 9px; }
.calendar-week-event strong { margin: 4px 0; font-size: 11px; line-height: 1.4; }
.calendar-empty-day { padding: 24px 6px; color: #98a2b3; text-align: center; text-decoration: none; font-size: 10px; line-height: 1.7; }
.calendar-empty-day strong { color: var(--blue); }
.day-calendar { padding: 0; }
.day-calendar-heading { display: flex; align-items: center; justify-content: space-between; padding: 18px 20px; border-bottom: 1px solid var(--line); background: #f8fafc; }
.day-calendar-heading div { display: flex; align-items: baseline; gap: 10px; }
.day-calendar-heading span { color: var(--muted); font-size: 12px; }
.day-calendar-heading strong { color: var(--navy); font-size: 18px; }
.day-event-list { padding: 12px 20px 20px; }
.day-event-card { display: grid; grid-template-columns: 72px 1fr auto; gap: 16px; padding: 16px 4px; border-bottom: 1px solid #edf0f3; }
.day-event-card.milestone { margin: 8px 0; padding: 16px; border: 1px solid #d7c8f2; border-radius: 9px; background: #fbf9ff; }
.day-event-marker { padding-top: 3px; color: var(--blue); font-size: 11px; font-weight: 900; }
.day-event-meta { display: flex; align-items: center; gap: 5px; }
.day-event-card > div:nth-child(2) > a { display: block; margin: 7px 0 4px; color: var(--navy); text-decoration: none; }
.day-event-card p { max-width: 850px; margin: 0 0 6px; color: #475467; font-size: 11px; line-height: 1.55; }
.day-event-card small { color: var(--muted); font-size: 10px; }
.calendar-empty { display: grid; justify-items: center; gap: 14px; padding: 70px 20px; color: var(--muted); }
.calendar-legend { display: flex; flex-wrap: wrap; gap: 14px; margin: 8px 0 16px; color: var(--muted); font-size: 10px; }
.calendar-legend span { display: inline-flex; align-items: center; gap: 5px; }
.calendar-legend i { width: 10px; height: 10px; border-radius: 3px; background: #98a2b3; }
.calendar-legend .legend-milestone { background: #6d51aa; }
.calendar-legend .legend-progress { background: var(--blue); }
.calendar-legend .legend-completed { background: #48a071; }
.calendar-legend .legend-blocked { background: var(--danger); }
.calendar-export-note { border: 1px solid #c9dceb; background: #f3f8fc; color: #475467; }
@media (max-width: 1200px) { .quality-sync-row { grid-template-columns: 1fr 100px 140px 140px; } .quality-sync-row .button { grid-column: 4; } }
@media (max-width: 1050px) { .metrics { grid-template-columns: repeat(3, 1fr); } .action-summary { grid-template-columns: repeat(2, 1fr); } .phase-roadmap { grid-template-columns: repeat(3, 1fr); } .gate-roadmap { grid-template-columns: repeat(2, 1fr); } .grid, .detail-grid, .diagnosis-hero, .my-work-grid { grid-template-columns: 1fr; } .standard-release-card { grid-template-columns: repeat(3, 1fr); } .diagnostic-breakdown { grid-template-columns: repeat(4, 1fr); } .quality-sync-row { grid-template-columns: 1fr 1fr; } .quality-sync-row .button { grid-column: auto; } .month-calendar, .week-calendar { overflow-x: auto; } .calendar-weekdays, .calendar-month-grid { min-width: 980px; } }
@media (max-width: 1050px) { .diagnostic-breakdown-comparison { grid-template-columns: 1fr; } }
@media (max-width: 1050px) { .word-reference-grid, .word-promotion-actions, .word-replacement-actions { grid-template-columns: 1fr; } .word-replacement-flow { grid-template-columns: 1fr; } .word-replacement-flow > i { transform: rotate(90deg); } .word-replacement-search { align-items: stretch; flex-direction: column; } }
@media (max-width: 1050px) { .common-coverage-grid, .institution-coverage-grid, .term-worker-summary-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 720px) { .layout { grid-template-columns: 1fr; } nav { display: flex; overflow-x: auto; padding: 10px; } nav a { white-space: nowrap; margin: 0 4px 0 0; } main { padding: 22px 16px; } .metrics { grid-template-columns: repeat(2, 1fr); } .action-center-heading { align-items: flex-start; flex-direction: column; } .action-summary, .baseline-meta, .phase-roadmap, .gate-roadmap, .my-work-metrics { grid-template-columns: 1fr; } .baseline-apply { align-items: stretch; flex-direction: column; } .environment { display: none; } .intro.compact { align-items: flex-start; gap: 16px; } .intro-actions { align-items: flex-end; flex-direction: column; } .form-card { grid-template-columns: 1fr; } .field { grid-column: 1 / -1; } .summary-strip, .summary-strip.four-columns { grid-template-columns: 1fr; } .submit-band { align-items: stretch; flex-direction: column; } .standard-release-card { grid-template-columns: 1fr 1fr; } .catalog-search, .filter-bar { flex-wrap: wrap; } .catalog-search label, .filter-bar label { flex-basis: 100%; } .filter-bar select, .quality-filter select, .quality-filter select[name="diagnostic"] { width: 100%; } .diagnosis-hero-metrics { grid-template-columns: 1fr 1fr; } .diagnostic-breakdown { grid-template-columns: 1fr 1fr; } .quality-sync-row { grid-template-columns: 1fr; } .weekly-toolbar, .weekly-toolbar form, .snapshot-actions, .my-work-hero { align-items: stretch; flex-direction: column; } .weekly-report { padding: 18px; } .weekly-meta, .weekly-kpis, .weekly-work-grid, .weekly-risk-grid, .snapshot-confirmation, .approval-stage-grid, .role-guide { grid-template-columns: 1fr; } .snapshot-comments > div { grid-template-columns: 1fr; } .login-shell { grid-template-columns: 1fr; padding: 22px; } .login-brand { display: none; } .user-admin-card { grid-template-columns: 1fr; } .account-identity span { display: none; } .calendar-toolbar { grid-template-columns: 1fr auto; } .calendar-toolbar h3 { grid-column: 1 / -1; grid-row: 1; } .calendar-move { grid-row: 2; } .calendar-view-switch { grid-row: 2; } .milestone-board { grid-template-columns: 1fr; } .milestone-board-title { padding: 12px 16px; } .day-event-card { grid-template-columns: 52px 1fr; } .day-event-card > .text-link { grid-column: 2; } }
@media (max-width: 720px) { .common-coverage-grid, .institution-coverage-grid, .term-worker-summary-grid { grid-template-columns: 1fr; } .catalog-search select { width: 100%; } }
@media (max-width: 720px) { .comparison-rate, .comparison-cards { grid-template-columns: 1fr; } .comparison-selector { align-items: stretch; flex-direction: column; } }
@media (max-width: 720px) { .diagnosis-basis-grid { grid-template-columns: 1fr; } .diagnostic-basis-switch { align-items: stretch; flex-direction: column; } .diagnostic-basis-switch > div { align-items: stretch; flex-direction: column; } .diagnostic-basis-switch form label, .diagnostic-standard-selector label { min-width: 0; width: 100%; } }
@media print {
  @page { size: A4 landscape; margin: 12mm; }
  body { background: white; color: #111; }
  .topbar, .layout > nav, .no-print { display: none !important; }
  .layout { display: block; min-height: 0; }
  main { max-width: none; padding: 0; }
  .report-heading { margin-bottom: 10mm; }
  .report-heading h2 { color: #111; }
  .report-meta, .report-table, .report-sign { break-inside: avoid; }
  .report-table thead { display: table-header-group; }
  .report-table tr { break-inside: avoid; }
  .weekly-report { padding: 0; border: 0; }
  .weekly-section { break-inside: avoid; margin-top: 7mm; }
  .weekly-section.print-page-break { break-before: page; }
  .weekly-work-grid article { min-height: 0; }
  .weekly-report-footer { break-inside: avoid; }
  .snapshot-confirmation, .snapshot-comments { break-inside: avoid; }
}
.value-policy strong { font-size: 13px; }
.agent-list { display: flex; flex-wrap: wrap; gap: 10px; }
.agent-list article { display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; min-width: 260px; padding: 14px; border: 1px solid var(--line); border-radius: 8px; }
.agent-list small { grid-column: 1 / -1; color: var(--muted); }
.value-filter { align-items: end; }
.value-filter label { display: grid; gap: 7px; color: #475467; font-size: 13px; font-weight: 800; }
.value-filter input { min-width: 300px; }
.value-filter input, .value-filter select { font-size: 14px; }
.value-browser { display: grid; grid-template-columns: 310px minmax(0, 1fr); height: clamp(520px, calc(100vh - 250px), 900px); margin-top: 16px; border: 1px solid var(--line); border-radius: 9px; overflow: hidden; }
.value-browser aside { min-height: 0; height: 100%; overflow: auto; overscroll-behavior: contain; border-right: 1px solid var(--line); background: #f8fafc; scrollbar-gutter: stable; }
.value-browser aside h4 { position: sticky; top: 0; z-index: 1; margin: 0; padding: 14px; border-bottom: 1px solid var(--line); background: #f8fafc; }
.value-browser aside h4 small { float: right; color: var(--muted); }
.value-browser aside a { display: grid; gap: 4px; padding: 11px 14px; border-bottom: 1px solid #edf0f3; color: var(--navy); text-decoration: none; }
.value-browser aside a span { color: var(--muted); font-size: 9px; }
.value-browser aside a.selected { border-left: 4px solid var(--blue); background: white; }
.value-columns { display: grid; grid-template-rows: auto minmax(0, 1fr); min-width: 0; min-height: 0; height: 100%; }
.value-columns > header { padding: 16px 18px; border-bottom: 1px solid var(--line); }
.value-columns > header h4, .value-columns > header p { margin: 0; }
.value-columns > header p { margin-top: 5px; color: var(--muted); font-size: 10px; }
.value-columns code { color: #245f96; font-size: 10px; }
.column-constraint { display: inline-flex; min-width: 30px; justify-content: center; padding: 4px 7px; border-radius: 6px; background: #eef2f6; color: #475467; font-size: 11px; font-weight: 900; }
.column-constraint.primary-key { background: #e8f2ff; color: #245f96; }
.column-constraint.not-null { background: #fff4d6; color: #8a5200; }
.value-columns > .table-wrap { min-height: 0; height: 100%; overflow: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.value-columns > .table-wrap thead th { position: sticky; top: 0; z-index: 2; background: #f2f6f9; box-shadow: 0 1px 0 var(--line); }
.value-columns > .empty-state { align-self: stretch; }
.validation-dialog { width: min(780px, 92vw); padding: 0; border: 0; border-radius: 12px; box-shadow: 0 24px 80px #0b223950; }
.validation-dialog::backdrop { background: #0b223980; }
.validation-dialog header, .validation-dialog footer { display: flex; align-items: center; justify-content: space-between; padding: 18px 22px; border-bottom: 1px solid var(--line); }
.validation-dialog footer { justify-content: flex-end; gap: 8px; border-top: 1px solid var(--line); border-bottom: 0; }
.validation-dialog .form-card, .validation-dialog .notice-box { margin: 18px 22px; }
.dialog-close { border: 0; background: none; color: var(--muted); font-size: 28px; cursor: pointer; }
.waiting-card { display: flex; align-items: center; gap: 20px; padding: 24px; }
.spinner { width: 30px; height: 30px; border: 4px solid #d7e7f2; border-top-color: var(--blue); border-radius: 50%; animation: spin 1s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.value-result-sections { display: grid; gap: 22px; }
.result-grid-section { display: grid; gap: 9px; }
.result-grid-section h4, .result-subheading h4 { margin: 0; color: var(--navy); font-size: 13px; }
.result-subheading { display: flex; align-items: center; justify-content: space-between; margin-top: 22px; }
.value-grid-wrap { max-width: 100%; overflow: auto; border: 1px solid var(--line); border-radius: 8px; background: white; }
.value-grid-wrap .value-grid-wrap { border: 0; border-radius: 0; }
.value-result-grid { width: 100%; min-width: 520px; border-collapse: separate; border-spacing: 0; font-size: 11px; }
.value-result-grid th { position: sticky; top: 0; z-index: 1; padding: 10px 12px; border-right: 1px solid #dce3ea; border-bottom: 1px solid #cbd5df; background: #edf3f7; color: #344054; text-align: left; white-space: nowrap; }
.value-result-grid th:last-child, .value-result-grid td:last-child { border-right: 0; }
.value-result-grid td { padding: 9px 12px; border-right: 1px solid #edf0f3; border-bottom: 1px solid #edf0f3; color: #344054; vertical-align: top; }
.value-result-grid tbody tr:last-child td { border-bottom: 0; }
.value-result-grid tbody tr:nth-child(even) td { background: #fafbfd; }
.value-result-grid tbody tr:hover td { background: #f0f7fc; }
.value-result-grid .grid-label { width: 220px; background: #f8fafc; color: var(--muted); font-weight: 800; }
.value-result-grid .grid-value { color: var(--navy); font-weight: 800; }
.value-result-grid .grid-number { width: 90px; text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.value-result-grid .grid-raw-value { min-width: 260px; max-width: 720px; overflow-wrap: anywhere; white-space: pre-wrap; }
#preview-result .value-grid-wrap { max-height: 420px; }
.value-result-grid .grid-action { width: 90px; text-align: center; white-space: nowrap; }
.issue-filter { align-items: end; }
.issue-filter label { display: grid; gap: 5px; color: var(--muted); font-size: 9px; font-weight: 800; }
.issue-filter input[name="q"] { min-width: 240px; }
.issue-title-link { display: grid; gap: 4px; color: var(--navy); text-decoration: none; }
.issue-title-link small { color: var(--muted); font-weight: 500; }
.source-link-card { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-color: #b9d6e9; background: #f4f9fc; }
.source-link-card h3, .source-link-card p { margin: 0; }
.source-link-card p:last-child { margin-top: 5px; color: var(--muted); }
.issue-raw-value { max-width: 360px; overflow-wrap: anywhere; white-space: pre-wrap; }
.issue-evidence-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 12px; margin-bottom: 18px; }
.issue-evidence-gallery:empty { display: none; }
.issue-evidence-gallery a { display: grid; grid-template-rows: 150px auto; overflow: hidden; border: 1px solid var(--line); border-radius: 9px; background: white; color: var(--navy); text-decoration: none; }
.issue-evidence-gallery img { width: 100%; height: 150px; object-fit: cover; background: #edf1f5; }
.issue-evidence-gallery span { padding: 9px 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; font-weight: 800; }
.summary-strip.six-columns { grid-template-columns: repeat(6, minmax(120px, 1fr)); }
.distribution-version-bar { display: flex; align-items: end; justify-content: space-between; gap: 18px; }
.distribution-version-bar h3, .distribution-version-bar p { margin: 0; }
.distribution-version-bar > div p:last-child { margin-top: 5px; color: var(--muted); }
.distribution-version-bar label { display: grid; min-width: 330px; gap: 6px; color: var(--muted); font-size: 10px; font-weight: 800; }
.distribution-version-bar select { min-width: 330px; }
.distribution-history-table .issue-raw-value { min-width: 280px; }
.distribution-grid-scroll { max-height: 720px; }
.delta-up { color: #b42318; font-weight: 800; }
.delta-down { color: #067647; font-weight: 800; }
.distribution-evidence-link { display: block; min-width: 170px; margin-bottom: 8px; }
.distribution-evidence-link small { color: var(--muted); }
@media (max-width: 1200px) { .summary-strip.six-columns { grid-template-columns: repeat(3, minmax(140px, 1fr)); } }
@media (max-width: 900px) { .value-browser { grid-template-columns: 1fr; height: auto; min-height: 520px; } .value-browser aside { height: 260px; max-height: 260px; border-right: 0; border-bottom: 1px solid var(--line); } .value-columns { display: block; height: auto; } .value-columns > .table-wrap { max-height: 540px; } }
@media (max-width: 720px) { .summary-strip.six-columns { grid-template-columns: 1fr; } .distribution-version-bar { align-items: stretch; flex-direction: column; } .distribution-version-bar label, .distribution-version-bar select { min-width: 0; width: 100%; } }

.diagnosis-system-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); gap: 16px; margin: 16px 0; }
.diagnosis-system-card { padding: 20px; }
.diagnosis-system-card > header { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.diagnosis-system-card h3 { margin: 2px 0; }
.diagnosis-system-card header p:last-child { margin: 4px 0 0; color: var(--muted); }
.diagnosis-metrics { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 16px; }
.diagnosis-metrics > div { background: #f8fafc; border: 1px solid var(--line); border-radius: 12px; padding: 13px; }
.diagnosis-metrics span, .diagnosis-metrics small { display: block; color: var(--muted); }
.diagnosis-metrics strong { display: block; margin-top: 3px; font-size: 21px; }
.criterion-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.criterion-grid article { border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.criterion-grid article > header { display: flex; justify-content: space-between; padding: 14px 16px; background: #f8fafc; }
.criterion-grid article > div { padding: 13px 16px; border-top: 1px solid var(--line); }
.criterion-grid article p { margin: 4px 0 7px; color: var(--muted); font-size: 12px; }
.criterion-grid article small { display: inline-flex; border-radius: 999px; padding: 3px 9px; font-weight: 700; }
.criterion-grid article small.auto { color: #166534; background: #dcfce7; }
.criterion-grid article small.source { color: #92400e; background: #fef3c7; }
.value-diagnosis-guide { margin: 16px 0; }
.value-diagnosis-filter { grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(140px, .8fr)) auto auto; }
.value-diagnosis-filter label > span { display: block; margin-bottom: 4px; color: var(--muted); font-size: 11px; }
.value-diagnosis-table th:nth-child(1) { min-width: 190px; }
.value-diagnosis-table th:nth-child(2) { min-width: 185px; }
.value-diagnosis-table th:nth-child(5) { min-width: 240px; }
.value-diagnosis-table th:nth-child(6) { min-width: 220px; }
.mapping-chip-list { display: flex; flex-wrap: wrap; gap: 6px; }
.mapping-chip { display: inline-flex; flex-direction: column; padding: 6px 9px; border: 1px solid var(--line); border-radius: 9px; text-decoration: none; background: #f8fafc; color: inherit; }
.mapping-chip:hover { border-color: var(--blue); }
.mapping-chip small { color: var(--muted); }
.mapping-chip.result-error { border-color: #dc2626; background: #fee2e2; box-shadow: inset 4px 0 0 #dc2626; }
.mapping-chip.result-error:hover { border-color: #991b1b; background: #fecaca; }
.mapping-chip.result-error span { color: #991b1b; font-weight: 900; }
.mapping-chip.result-error small { color: #b42318; font-weight: 800; }
.inline-mapping-form { display: flex; gap: 6px; align-items: center; }
.inline-mapping-form select { min-width: 140px; }
.value-diagnosis-form { margin: 16px 0; }
.status-chip.result-error { background: #fee2e2; color: #991b1b; }
.status-chip.result-review { background: #fef3c7; color: #92400e; }
.status-chip.result-not_ready { background: #e2e8f0; color: #475569; }
.status-chip.result-no_data { background: #e0f2fe; color: #075985; }
.status-chip.result-pass { background: #dcfce7; color: #166534; }
.code-mapping-filter { grid-template-columns: minmax(280px, 1fr) minmax(180px, 240px) auto auto; }
.code-mapping-filter label > span { display: block; margin-bottom: 4px; color: var(--muted); font-size: 11px; }
.code-mapping-table th:nth-child(1) { min-width: 190px; }
.code-mapping-table th:nth-child(2) { min-width: 190px; }
.code-mapping-table th:nth-child(3) { min-width: 210px; }
.code-mapping-table th:nth-child(4) { min-width: 180px; }
.code-mapping-table th:nth-child(5) { min-width: 430px; }
.code-value-samples { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 6px; }
.code-value-samples > span { max-width: 190px; overflow: hidden; padding: 4px 7px; border-radius: 6px; background: #eef4f8; text-overflow: ellipsis; white-space: nowrap; }
.code-value-samples > span small { display: inline; margin-left: 4px; color: var(--muted); }
.code-recommendation-form { display: grid; grid-template-columns: minmax(270px, 1fr) auto; gap: 7px; align-items: center; }
.code-recommendation-form select { min-width: 0; width: 100%; }
.code-recommendation-evidence { display: flex; align-items: center; gap: 7px; margin: 8px 0 5px; }
.code-recommendation-evidence small { color: var(--muted); }
.recommendation-score { flex: 0 0 auto; padding: 3px 7px; border-radius: 999px; font-size: 10px; font-weight: 800; }
.recommendation-score.high { background: #dcfce7; color: #166534; }
.recommendation-score.medium { background: #fef3c7; color: #92400e; }
.recommendation-score.low { background: #e2e8f0; color: #475569; }

@media (max-width: 1050px) { .criterion-grid { grid-template-columns: 1fr; } .value-diagnosis-filter, .code-mapping-filter { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .diagnosis-system-grid, .diagnosis-metrics { grid-template-columns: 1fr; } .value-diagnosis-filter, .code-mapping-filter, .code-recommendation-form { grid-template-columns: 1fr; } }

/* Reverse-engineered database relationship viewer */
.erd-panel { overflow: visible; }
.erd-toolbar { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--line); background: #f8fafc; }
.erd-toolbar label { display: grid; gap: 5px; color: var(--muted); font-size: 11px; font-weight: 800; }
.erd-toolbar input, .erd-toolbar select { min-height: 40px; border: 1px solid #cfd6df; border-radius: 8px; background: white; padding: 8px 11px; color: var(--ink); font: inherit; }
.erd-toolbar input:focus, .erd-toolbar select:focus { border-color: var(--blue); outline: 3px solid rgba(46,116,181,.12); }
.erd-search { flex: 1 1 280px; }
.erd-search input { width: 100%; }
.erd-status-line { display: flex; justify-content: space-between; gap: 14px; padding: 10px 16px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.erd-legend { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.erd-legend i { display: inline-block; width: 28px; height: 2px; background: #8796a5; }
.erd-workspace { display: grid; grid-template-columns: minmax(0, 1fr) 360px; min-height: 680px; }
.erd-canvas-wrap { position: relative; min-width: 0; background-color: #f9fbfd; background-image: radial-gradient(#d8e2eb 1px, transparent 1px); background-size: 18px 18px; }
#erd-canvas { width: 100%; height: 680px; }
.erd-empty { position: absolute; inset: 0; display: grid; place-items: center; padding: 30px; color: var(--muted); text-align: center; }
.erd-empty[hidden] { display: none; }
.erd-detail { min-width: 0; border-left: 1px solid var(--line); background: white; }
.erd-detail header { padding: 18px; border-bottom: 1px solid var(--line); }
.erd-detail header p { margin: 0 0 5px; color: var(--blue); font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.erd-detail header h3 { overflow-wrap: anywhere; margin: 0 0 5px; color: var(--navy); font-size: 17px; }
.erd-detail header span { color: var(--muted); font-size: 11px; }
.erd-detail-placeholder { display: grid; place-items: center; align-content: center; min-height: 300px; padding: 30px; color: var(--muted); text-align: center; }
.erd-detail-placeholder strong { color: var(--navy); }
.erd-detail-placeholder p { max-width: 250px; font-size: 12px; line-height: 1.55; }
.erd-facts { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; padding: 12px 18px; border-bottom: 1px solid var(--line); }
.erd-facts div { min-width: 0; }
.erd-facts dt { color: var(--muted); font-size: 9px; }
.erd-facts dd { overflow: hidden; margin: 4px 0 0; color: var(--navy); font-size: 11px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.erd-detail-actions { display: flex; gap: 7px; padding: 12px 18px; }
.erd-column-scroll { max-height: 490px; border-top: 1px solid var(--line); }
.erd-column-table { min-width: 100%; }
.erd-column-table th, .erd-column-table td { padding: 9px 10px; font-size: 10px; }
.erd-column-table th:first-child, .erd-column-table td:first-child { width: 40px; text-align: center; }
.erd-column-table td small { max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.erd-relationship-table th:first-child, .erd-relationship-table td:first-child { width: auto; text-align: left; }
.erd-relationship-table th:nth-child(2), .erd-relationship-table td:nth-child(2) { width: 32px; text-align: center; }
.erd-key { display: inline-block; padding: 2px 4px; border-radius: 4px; background: #fff4d6; color: #8a5200; font-size: 8px; font-weight: 900; }
@media (max-width: 1050px) { .erd-workspace { grid-template-columns: 1fr; } .erd-detail { border-top: 1px solid var(--line); border-left: 0; } #erd-canvas { height: 560px; } }
@media (max-width: 720px) { .erd-intro { align-items: stretch; flex-direction: column; gap: 14px; } .erd-intro .intro-actions { flex-wrap: wrap; } .erd-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } .erd-toolbar > * { flex: 1 1 120px; } .erd-toolbar .erd-search { flex-basis: 100%; } .erd-status-line { align-items: flex-start; flex-direction: column; } #erd-canvas { height: 480px; } }

/* Enterprise model explorer: KOSEA > system > subject area > table > column */
.model-explorer-intro { gap: 18px; }
.model-hierarchy { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin: -8px 0 18px; padding: 13px 16px; border: 1px solid #b9d6e9; border-radius: 10px; background: #f4f9fc; }
.model-hierarchy span { padding: 6px 10px; border-radius: 999px; background: white; color: var(--navy); font-size: 12px; font-weight: 800; }
.model-hierarchy b { color: var(--blue); font-size: 13px; }
.model-tool-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 18px; }
.model-tool-card { display: flex; flex-direction: column; min-height: 295px; padding: 22px; }
.model-tool-card h3 { margin: 13px 0 7px; color: var(--navy); font-size: 22px; }
.model-tool-card p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.7; }
.model-tool-card ol { flex: 1; margin: 18px 0; padding: 13px 16px 13px 36px; border-radius: 8px; background: #f8fafc; color: #475467; font-size: 12px; line-height: 1.8; }
.model-tool-note { flex: 1; margin: 18px 0 !important; padding: 14px 16px; border-radius: 8px; background: #f8fafc; }
.model-tool-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.model-system-list { display: grid; gap: 14px; }
.model-system-card { overflow: hidden; }
.model-system-card > header { display: flex; justify-content: space-between; gap: 18px; padding: 20px 22px 16px; border-bottom: 1px solid var(--line); }
.model-system-card h3 { margin: 5px 0; color: var(--navy); font-size: 19px; }
.model-system-card header span { color: var(--muted); font-size: 11px; }
.model-system-count { display: grid; grid-template-columns: auto auto; align-content: center; gap: 2px 8px; min-width: 150px; padding-left: 18px; border-left: 1px solid var(--line); }
.model-system-count strong { color: var(--navy); font-size: 20px; text-align: right; }
.model-system-count span { align-self: center; }
.model-subject-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 8px; padding: 14px 22px; }
.model-subject-list > div { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 5px 9px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 8px; background: #f8fafc; }
.model-subject-list strong { color: var(--navy); font-size: 13px; }
.model-subject-list small { grid-column: 2; color: var(--muted); font-size: 10px; }
.model-relationship-count { margin: 0; padding: 0 22px 14px; color: var(--muted); font-size: 11px; }
.model-system-card > footer { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; padding: 14px 22px; border-top: 1px solid var(--line); background: #fbfcfd; }
.model-system-card > footer .text-link { margin-left: auto; }
@media (max-width: 900px) { .model-tool-grid { grid-template-columns: 1fr; } }
@media (max-width: 720px) { .model-explorer-intro { align-items: stretch; flex-direction: column; } .model-explorer-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } .model-system-card > header { flex-direction: column; } .model-system-count { grid-template-columns: auto 1fr; border-top: 1px solid var(--line); border-left: 0; padding: 12px 0 0; } .model-system-count strong { text-align: left; } .model-system-card > footer .text-link { width: 100%; margin: 6px 0 0; } }
@media (max-width: 720px) { .global-scroll-controls { right: 12px; bottom: 12px; } .global-scroll-button { min-width: 42px; width: 42px; height: 42px; padding: 8px; justify-content: center; } .global-scroll-button strong { position: absolute; overflow: hidden; width: 1px; height: 1px; clip: rect(0 0 0 0); white-space: nowrap; } }

/* Institution standard term batch change */
.term-batch-entry { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 14px 0; padding: 15px 18px; border: 1px solid #b9d6e9; border-radius: 10px; background: #f4f9fc; }
.term-batch-entry strong, .term-batch-entry small { display: block; }
.term-batch-entry small { margin-top: 4px; color: var(--muted); }
.batch-condition-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0 0 16px; }
.batch-condition-grid article { min-width: 0; padding: 14px 16px; border: 1px solid var(--line); border-radius: 10px; background: white; }
.batch-condition-grid span, .batch-condition-grid small { display: block; color: var(--muted); font-size: 10px; }
.batch-condition-grid strong { display: block; overflow: hidden; margin: 5px 0 2px; color: var(--navy); font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.batch-domain-search-panel .catalog-search { margin: 0; }
.batch-domain-search-panel .catalog-search label { flex: 1 1 300px; }
.batch-domain-search-panel .catalog-search input { width: 100%; }
.batch-change-form { display: grid; gap: 16px; margin-top: 16px; }
.batch-enable { display: inline-flex; align-items: center; gap: 7px; padding: 8px 11px; border-radius: 8px; background: #eaf3f9; color: var(--navy); font-size: 11px; font-weight: 800; white-space: nowrap; }
.batch-domain-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 9px; max-height: 480px; overflow: auto; padding: 2px; }
.batch-domain-grid > label { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: flex-start; padding: 13px 14px; border: 1px solid var(--line); border-radius: 9px; background: #fbfcfd; cursor: pointer; }
.batch-domain-grid > label:has(input:checked) { border-color: var(--blue); background: #eef6fb; box-shadow: inset 3px 0 0 var(--blue); }
.batch-domain-grid input { margin-top: 3px; }
.batch-domain-grid strong, .batch-domain-grid small, .batch-domain-grid i { display: block; }
.batch-domain-grid strong { color: var(--navy); font-size: 13px; }
.batch-domain-grid small { margin-top: 4px; color: var(--muted); }
.batch-domain-grid i { overflow: hidden; margin-top: 6px; color: #667085; font-size: 10px; font-style: normal; text-overflow: ellipsis; white-space: nowrap; }
.batch-workflow-select .field { display: grid; max-width: 420px; gap: 6px; }
.batch-workflow-select .field > span { color: var(--muted); font-size: 10px; font-weight: 800; }
.batch-submit-band { display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.batch-submit-band label { display: flex; align-items: center; gap: 7px; margin: 7px 0 5px; }
.batch-submit-band small { display: block; color: var(--muted); }
.batch-term-sample-table td:first-child strong, .batch-term-sample-table td:first-child small { display: block; }
.batch-term-sample-table td:first-child small { margin-top: 3px; }
@media (max-width: 1050px) { .batch-condition-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) { .term-batch-entry, .batch-submit-band { align-items: stretch; flex-direction: column; } .batch-condition-grid, .batch-domain-grid { grid-template-columns: 1fr; } .batch-submit-band .button { width: 100%; } }

/* Institution word > linked institution terms */
.institution-term-usage-link { display: grid; gap: 3px; margin-top: 8px; padding: 8px 10px; border: 1px solid #b9d6e9; border-radius: 8px; background: #f4f9fc; color: var(--navy); text-decoration: none; }
.institution-term-usage-link:hover { border-color: var(--blue); background: #eaf4fa; }
.institution-term-usage-link span { font-size: 10px; }
.institution-term-usage-link strong { color: var(--blue); font-size: 10px; }
.impact-count-link { display: block; color: var(--navy); text-decoration: none; }
.impact-count-link strong, .impact-count-link small { display: block; }
.impact-count-link small { margin-top: 3px; color: var(--blue); font-size: 10px; }
.institution-word-term-table th:nth-child(1) { min-width: 230px; }
.institution-word-term-table th:nth-child(2) { min-width: 110px; }
.institution-word-term-table th:nth-child(3) { min-width: 210px; }
.institution-word-term-table th:nth-child(4) { min-width: 125px; }
.institution-word-term-table td:first-child strong, .institution-word-term-table td:first-child small { display: block; }
.institution-word-term-table td:first-child small { margin-top: 3px; }
.word-position-chips { display: flex; flex-wrap: wrap; gap: 4px; }
.word-position-chips span { padding: 3px 7px; border-radius: 999px; background: #eaf3f9; color: var(--navy); font-size: 9px; font-weight: 800; }
/* Standard lineage and TO-BE column metadata */
.lineage-flow {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) auto minmax(150px, 1fr) auto minmax(150px, 1fr) auto minmax(150px, 1fr);
  gap: 14px;
  align-items: stretch;
}
.lineage-flow article {
  border: 1px solid #d8e3ea;
  border-radius: 14px;
  padding: 18px;
  background: linear-gradient(145deg, #fff, #f4f8fa);
}
.lineage-flow article span {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  margin-bottom: 12px;
  border-radius: 50%;
  background: #126c72;
  color: #fff;
  font-weight: 800;
}
.lineage-flow article strong,
.lineage-flow article small { display: block; }
.lineage-flow article small { margin-top: 6px; color: #62737d; }
.lineage-flow > i { align-self: center; color: #16838a; font-size: 24px; font-style: normal; }
.lineage-comparison-scroll { max-height: 68vh; }
.lineage-comparison-table { min-width: 1680px; }
.lineage-comparison-table th { position: sticky; top: 0; z-index: 2; }
.lineage-comparison-table td { min-width: 190px; vertical-align: top; }
.lineage-comparison-table td:first-child { min-width: 230px; }
.lineage-comparison-table strong,
.lineage-comparison-table b,
.lineage-comparison-table small { display: block; margin-bottom: 4px; }
.lineage-summary-card { grid-template-columns: repeat(5, minmax(150px, 1fr)); }
.lineage-item-entry { display: grid; grid-template-columns: repeat(2, minmax(280px, 1fr)); gap: 16px; padding: 18px 20px; }
.lineage-item-entry article { border: 1px solid var(--line); border-radius: 12px; padding: 18px; background: #f8fafc; }
.lineage-item-entry article > strong,
.lineage-item-entry article > span { display: block; }
.lineage-item-entry article > span { margin: 6px 0 14px; color: var(--muted); font-size: 12px; }
.lineage-item-entry article div { display: flex; flex-wrap: wrap; gap: 7px; }
.lineage-item-comparison-table { min-width: 1100px; }
.lineage-item-comparison-table td:nth-child(2),
.lineage-item-comparison-table td:nth-child(3) { min-width: 280px; }
@media (max-width: 1100px) {
  .lineage-flow { grid-template-columns: 1fr; }
  .lineage-flow > i { transform: rotate(90deg); justify-self: center; }
  .lineage-summary-card { grid-template-columns: repeat(2, minmax(150px, 1fr)); }
}

/* Standardization performance dashboard */
.performance-intro { padding: 20px 22px; border: 1px solid #d8e3ea; border-radius: 14px; background: linear-gradient(125deg, #fff 0%, #f1f8fa 72%, #e6f2f4 100%); }
.performance-kpis { display: grid; grid-template-columns: repeat(6, minmax(145px, 1fr)); gap: 11px; margin-bottom: 18px; }
.performance-kpis article { min-width: 0; padding: 16px 17px; border: 1px solid var(--line); border-top: 3px solid #91a4b2; border-radius: 11px; background: white; }
.performance-kpis article.accent { border-top-color: var(--blue); background: #f8fbfe; }
.performance-kpis article.success { border-top-color: #16836f; background: #f5fbf9; }
.performance-kpis span, .performance-kpis small { display: block; color: var(--muted); font-size: 10px; }
.performance-kpis strong { display: block; overflow: hidden; margin: 8px 0 5px; color: var(--navy); font-size: 25px; text-overflow: ellipsis; white-space: nowrap; }
.performance-section { margin-bottom: 18px; }
.institution-performance-grid { display: grid; grid-template-columns: repeat(4, minmax(180px, 1fr)); gap: 12px; padding: 18px 20px 20px; }
.institution-performance-grid article { padding: 16px; border: 1px solid var(--line); border-radius: 10px; background: #fbfcfd; }
.performance-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.performance-card-heading span { color: #475467; font-size: 12px; font-weight: 800; }
.performance-card-heading strong, .performance-rate { color: #126c72; font-size: 20px; }
.performance-track, .mini-track { overflow: hidden; border-radius: 999px; background: #e7edf1; }
.performance-track { height: 8px; margin: 11px 0 14px; }
.mini-track { width: 130px; max-width: 100%; height: 6px; margin: 7px 0; }
.performance-track i, .mini-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--blue), #16836f); }
.institution-performance-grid dl { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 0 0 10px; }
.institution-performance-grid dl div { min-width: 0; padding: 8px; border-radius: 7px; background: white; text-align: center; }
.institution-performance-grid dt { color: var(--muted); font-size: 9px; }
.institution-performance-grid dd { margin: 4px 0 0; color: var(--navy); font-size: 14px; font-weight: 800; }
.institution-performance-grid article > small { color: var(--muted); font-size: 10px; }
.performance-standard-table { min-width: 1280px; }
.performance-standard-table td { vertical-align: middle; }
.performance-standard-table td:first-child { min-width: 180px; }
.performance-standard-table td:nth-child(2) { min-width: 170px; }
.performance-standard-table td:last-child { min-width: 210px; }
.performance-standard-table td > span, .performance-standard-table td > a { display: block; margin-top: 4px; }
.structure-overview { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(190px, .65fr) minmax(220px, 1fr); gap: 14px; align-items: stretch; padding: 18px 20px; }
.structure-overview article { padding: 18px 20px; border: 1px solid #d9e2e8; border-left: 5px solid #758b9b; border-radius: 11px; background: #f8fafc; }
.structure-overview article.tobe { border-left-color: #16836f; background: #f3faf8; }
.structure-overview article span, .structure-overview article strong, .structure-overview article small { display: block; }
.structure-overview article span { color: var(--muted); font-size: 11px; }
.structure-overview article strong { margin: 8px 0 5px; color: var(--navy); font-size: 21px; }
.structure-overview article small { color: #596b77; }
.structure-arrow { display: grid; place-items: center; align-content: center; text-align: center; }
.structure-arrow span, .structure-arrow small { color: var(--muted); font-size: 10px; }
.structure-arrow strong { color: #16836f; font-size: 38px; line-height: 1; }
.performance-structure-table { min-width: 1380px; }
.performance-structure-table td { vertical-align: middle; }
.performance-structure-table td:first-child { min-width: 180px; }
.negative-delta { color: #126c72 !important; }
.positive-delta { color: #b54708 !important; }
@media (max-width: 1280px) { .performance-kpis { grid-template-columns: repeat(3, minmax(145px, 1fr)); } .institution-performance-grid { grid-template-columns: repeat(2, minmax(180px, 1fr)); } }
@media (max-width: 760px) { .performance-kpis, .institution-performance-grid, .structure-overview { grid-template-columns: 1fr; } .performance-intro { align-items: stretch; } .structure-arrow strong { transform: rotate(90deg); } }
