:root {
  color-scheme: light;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.5;
}
body { margin: 0; background: #f5f6f8; color: #20242a; }
a { color: #1859a9; }
.topbar { display: flex; justify-content: space-between; align-items: center; padding: 12px 24px; background: #17212b; color: white; }
.account { display: flex; gap: 16px; align-items: center; }
.account form { margin: 0; }
.container { max-width: 1440px; margin: 0 auto; padding: 24px; }
.login-card { max-width: 460px; margin: 48px auto; padding: 24px; background: white; border: 1px solid #dfe3e8; border-radius: 10px; }
label { display: block; margin: 10px 0; }
input[type="text"], input[type="password"], select, textarea { box-sizing: border-box; width: 100%; padding: 9px; border: 1px solid #b8c0ca; border-radius: 5px; background: white; }
textarea { min-height: 80px; }
button, .button { display: inline-block; border: 0; border-radius: 5px; padding: 9px 14px; background: #1859a9; color: white; text-decoration: none; cursor: pointer; }
button.secondary, .button.secondary { background: #5d6773; }
button.danger, .button.danger { background: #a82929; }
button[disabled] { background: #a7adb5; cursor: not-allowed; }
.filters { display: grid; grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) auto; gap: 12px; align-items: end; margin-bottom: 18px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; background: white; }
th, td { border: 1px solid #dfe3e8; padding: 9px; vertical-align: top; text-align: left; }
th { background: #eef1f4; }
.status { white-space: nowrap; }
.meta-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; margin: 16px 0; }
.meta-grid > div, .action-box, .paragraph-card, .evidence-card { background: white; border: 1px solid #dfe3e8; border-radius: 7px; padding: 14px; }
.review-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; }
.paragraph-card, .evidence-card { margin-bottom: 12px; }
.draft-text, .original-text { white-space: pre-wrap; overflow-wrap: anywhere; }
.paragraph-id { font-size: .85rem; color: #65707e; }
.evidence-tags span { display: inline-block; background: #eef1f4; border-radius: 12px; padding: 2px 8px; margin: 2px; font-size: .82rem; }
dl { display: grid; grid-template-columns: minmax(120px, max-content) 1fr; gap: 6px 14px; }
dt { font-weight: 700; }
dd { margin: 0; overflow-wrap: anywhere; }
.alert { padding: 10px 12px; border-radius: 5px; margin: 10px 0; border: 1px solid transparent; }
.alert.error { background: #fff0f0; border-color: #e5a5a5; }
.alert.warning { background: #fff8df; border-color: #dec06c; }
.alert.success { background: #edf8ee; border-color: #9fc9a3; }
.scope-note { background: #eef4fa; padding: 12px; border-left: 4px solid #4f82b6; }
.operations { margin-top: 28px; }
.action-box { margin: 12px 0; }
.confirm-list { background: white; padding: 16px; border: 1px solid #dfe3e8; }
code { overflow-wrap: anywhere; }
@media (max-width: 900px) {
  .review-grid { grid-template-columns: 1fr; }
  .filters { grid-template-columns: 1fr; }
  .topbar { align-items: flex-start; gap: 12px; flex-direction: column; }
}

.meta-grid > div { min-width: 0; overflow-wrap: anywhere; }

.asset-preview { max-width: 100%; max-height: 65vh; object-fit: contain; background: #fff; border: 1px solid #dfe3e8; }
.section-nav { display:flex; gap:20px; margin-bottom:20px; }
