.table-wrap table{min-width:1260px}
.table-wrap td{padding:14px;vertical-align:top;color:#415b63;font-size:12px}
.table-wrap td strong,.table-wrap td small{display:block}
.table-wrap td strong{color:#1d3942}
.table-wrap td small{color:#8da1a6;margin-top:5px;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.table-wrap code,.blocked-item code{font-family:ui-monospace,SFMono-Regular,monospace;color:#607c83;font-size:11px}
.location-tag{display:inline-block;white-space:nowrap;padding:6px 8px;background:#f1f7f5;border-radius:5px;color:#286b5b;font-weight:700}
.review-badge{display:inline-block;white-space:nowrap;padding:6px 8px;border-radius:20px;background:#fff4df;color:#8d6929;font-size:10px;font-weight:800}
.detail-link{white-space:nowrap;color:#2f7768;font-weight:800;text-decoration:none}
.detail-link:hover{text-decoration:underline}
.blocked{margin-top:34px}.blocked-list{background:#fff;border:1px solid #e3e9eb;border-radius:9px;max-height:340px;overflow:auto}
.blocked-item{display:grid;grid-template-columns:110px 80px minmax(200px,1fr) 120px;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #edf1f2;font-size:11px;color:#81949a}
.blocked-item:last-child{border:0}.blocked-item strong{color:#586f77;font-size:12px}.blocked-item small{color:#a6793d;text-align:right}
.clear-message{padding:22px;color:#5c806f}.detail-drawer{position:fixed;right:0;top:0;bottom:0;width:min(460px,100vw);overflow:auto;background:#fff;box-shadow:-12px 0 40px #102c3840;z-index:10;padding:32px 30px}
.detail-drawer h2{font-size:24px;margin:12px 0 24px}.drawer-close{float:right;text-decoration:none;color:#617d84;font-size:12px;font-weight:800}
.detail-drawer dl{margin:0}.detail-drawer dt{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#82999d;font-weight:800;margin:18px 0 6px}.detail-drawer dd{margin:0;color:#23434b;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.detail-drawer .source-text{white-space:pre-wrap;background:#f5f8f8;border:1px solid #e5eded;border-radius:8px;padding:13px;max-height:210px;overflow:auto}
@media(max-width:800px){.blocked-item{grid-template-columns:1fr 1fr}.blocked-item strong{grid-column:1/-1}.blocked-item small{text-align:left}.detail-drawer{top:auto;max-height:85vh;width:100%;box-shadow:0 -12px 40px #102c3840}}
.review-detail{margin-top:28px;padding:24px;background:#fff;border:1px solid #e3e9eb;border-radius:10px}
.review-detail .source-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;overflow:auto;background:#f5f8f8;padding:14px;font-size:12px;line-height:1.6}
.review-detail details{margin:12px 0}.review-detail summary{cursor:pointer;font-weight:700;color:#286b5b}
.action-form{display:flex;flex-direction:column;gap:14px;padding:22px;margin:20px 0;border:1px solid #dce8e3;border-radius:8px;max-width:760px}
.action-form label{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px}
.action-form input:not([type=checkbox]),.action-form select,.action-form textarea{padding:10px;border:1px solid #b7cbc5;border-radius:5px;max-width:100%;font:inherit}
.action-form textarea{width:100%;min-height:65px}.action-form .primary{align-self:flex-start;padding:12px 20px}
[role=status]{padding:14px;background:#e8f5ec;color:#245a3b;border-radius:8px}
.generation{background:#fff;border:1px solid #e4ebed;border-radius:9px;padding:18px 20px;margin-bottom:20px;display:grid;gap:12px}
.generation-form{display:flex;flex-wrap:wrap;align-items:center;gap:14px;color:#5d747b;font-size:12px}
.generation-steps{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}
.generation-steps li{padding:6px 10px;border-radius:20px;font-size:11px;font-weight:700;background:#f1f4f5;color:#8a9ba0}
.generation-steps li.done{background:#e8f5ec;color:#2f6b4c}.generation-steps li.current{background:#2b6c5f;color:#fff}
.generation-error,.generation-warning{padding:12px 14px;border-radius:8px;background:#fdecea;color:#8a2c1f;margin:0}
.generation-warning{background:#fff6e0;color:#7a5a12}
.generation-counts{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin:0}
.generation-counts div{border:1px solid #edf1f2;border-radius:7px;padding:8px 10px}.generation-counts dt{font-size:10px;color:#73888f;font-weight:700}
.generation-counts dd{margin:4px 0 0;font-weight:700;color:#263f4b;word-break:break-word}
.generation-links{display:flex;flex-wrap:wrap;gap:12px}.generation details ul{margin:6px 0 0;padding-left:18px;font-size:12px}
