*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f5f7fb;color:#111827}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}aside{background:#111827;color:white;padding:24px;display:flex;flex-direction:column;gap:24px}aside h2{font-size:20px}nav{display:flex;flex-direction:column;gap:8px}nav a{color:#d1d5db;text-decoration:none;padding:10px;border-radius:8px}nav a:hover{background:#1f2937;color:#fff}main{padding:32px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{background:white;border:1px solid #e5e7eb;border-radius:14px;padding:20px;margin:16px 0;box-shadow:0 4px 16px rgba(0,0,0,.04)}.card strong{font-size:32px}.muted{color:#6b7280}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}input,select,button{padding:11px 12px;border-radius:8px;border:1px solid #d1d5db}button{background:#111827;color:white;cursor:pointer}.ghost{background:transparent;border-color:#4b5563;width:100%}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px;border-bottom:1px solid #e5e7eb}.badge{background:#eef2ff;padding:5px 8px;border-radius:999px;font-size:12px}.login{display:grid;place-items:center;min-height:100vh}.login-card{width:min(420px,92vw);display:flex;flex-direction:column;gap:10px}.alert{background:#fee2e2;padding:10px;border-radius:8px}@media(max-width:900px){.shell{grid-template-columns:1fr}aside{display:none}.grid,.form-grid{grid-template-columns:1fr}main{padding:18px}}
.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-head h1{margin-bottom:4px}.badge.success{background:#dcfce7;color:#166534}.badge.danger{background:#fee2e2;color:#991b1b}.success-alert{background:#dcfce7;color:#166534}.provider-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}.provider-form label input,.provider-form label select{font-weight:400}.form-actions{display:flex;gap:8px;align-items:end}.secondary{background:#fff;color:#111827}.danger-btn{background:#991b1b}.mini{padding:7px 9px;font-size:12px}.actions{display:flex;gap:6px;flex-wrap:wrap;min-width:230px}.actions form{margin:0}.small-strong{font-size:14px!important}.tiny{font-size:11px;color:#6b7280;max-width:260px;margin-top:5px}.table-wrap{overflow-x:auto}.routing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.route-item{border:1px solid #e5e7eb;border-radius:10px;padding:12px;display:flex;justify-content:space-between;gap:12px}.route-item strong{text-transform:capitalize;font-size:14px}.route-item span{font-size:13px;color:#4b5563}@media(max-width:900px){.routing-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}}
.book-create label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}.book-create label input,.book-create label select{font-weight:400}.link-btn{display:inline-block;background:#111827;color:#fff;text-decoration:none;padding:8px 10px;border-radius:8px;font-size:12px}.project-stats .card{display:flex;flex-direction:column;gap:8px}.project-stats .card strong{font-size:28px}.project-stats .status-big{font-size:20px}.actions-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.actions-bar form{margin:0}button:disabled{opacity:.45;cursor:not-allowed}.pipeline-row{display:flex;gap:8px;flex-wrap:wrap}.step{padding:8px 10px;border-radius:999px;background:#f3f4f6;color:#6b7280;font-size:12px;font-weight:700}.step.done{background:#dcfce7;color:#166534}.json-view{white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e5e7eb;padding:14px;border-radius:10px;max-height:440px;overflow:auto;font-size:12px}.chapter-list li{margin:12px 0}.metadata-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}.event-list{display:flex;flex-direction:column;gap:10px}.event{display:grid;grid-template-columns:80px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #e5e7eb}@media(max-width:900px){.metadata-grid{grid-template-columns:1fr}.event{grid-template-columns:1fr}}
.asset-grid{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:24px;align-items:start}.cover-preview{width:100%;max-height:420px;object-fit:contain;border-radius:10px;border:1px solid #e5e7eb;background:#f8fafc}@media(max-width:900px){.asset-grid{grid-template-columns:1fr}}
.research-selected{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border:1px solid #dcfce7;background:#f0fdf4;border-radius:12px;padding:16px;margin-bottom:16px}.research-selected h3{margin:4px 0 6px}.interior-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.interior-card{margin:0;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;background:#f8fafc}.interior-card img{width:100%;height:240px;object-fit:contain;background:white}.interior-card figcaption{padding:12px;display:flex;flex-direction:column;gap:5px}@media(max-width:900px){.research-selected{flex-direction:column}.interior-grid{grid-template-columns:1fr}}
.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.settings-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}.settings-grid input,.settings-grid select{font-weight:400}.form-end{display:flex;align-items:end}.human-checks{display:flex;flex-direction:column;gap:12px}.human-check-row{display:grid;grid-template-columns:2fr 1fr;gap:14px;align-items:center;border:1px solid #e5e7eb;border-radius:10px;padding:12px}.check-label{display:flex;gap:10px;align-items:flex-start}.check-label input{margin-top:3px}.check-label small{color:#6b7280;line-height:1.35}.check-summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.button-link{display:inline-block;background:#166534;color:#fff;text-decoration:none;padding:11px 13px;border-radius:8px;font-weight:700}@media(max-width:900px){.settings-grid,.human-check-row{grid-template-columns:1fr}}

/* v2.9 human/precheck separation */
.advisory-box{margin:14px 0;padding:12px 14px;border:1px solid #d9dee8;border-radius:10px;background:#fafbfc}
.human-check-with-precheck{align-items:start}
.precheck-inline{margin:10px 0 0 28px;padding:10px 12px;border-left:3px solid #d9dee8;background:#f8fafc;border-radius:6px}
.precheck-inline .badge{margin-right:8px}
.precheck-inline details{margin-top:6px}
