/* A calm, task-focused report workspace; the shared agency theme stays intact. */
.report-workspace{max-width:1320px;margin:auto}
.report-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}
.report-layout-review{display:block;max-width:860px;margin:auto}
.report-main,.report-layout .right-rail{min-width:0}
.report-steps{gap:4px;flex-wrap:wrap;padding:6px;margin-bottom:24px;background:var(--surface);border:1px solid var(--line);border-radius:16px}
.report-steps button{display:flex;align-items:center;gap:8px;flex:1;justify-content:center;padding:12px 10px;border:0;border-radius:10px;font-size:13px;white-space:nowrap}
.report-steps button.active{background:var(--action);color:#fff;box-shadow:none}
.step-number{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;border:1px solid currentColor;border-radius:50%;font-size:11px;opacity:.7}
.report-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0;padding:16px 0;border-top:1px solid var(--line)}
.report-footer .actions{flex-wrap:wrap;justify-content:flex-end}
.report-save-status{font-size:12px;color:var(--muted)}
.case-tools{position:relative}
.case-tools>summary{cursor:pointer;font-size:13px;font-weight:600;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.case-tools-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:20;width:230px;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 35px #0002;display:grid;gap:4px}
.case-tools-menu button{text-align:left;white-space:normal;box-shadow:none;border:0;background:transparent}
.case-tools-menu button:hover{background:var(--surface-soft)}
#report-readiness .panel-head{padding:18px;gap:8px}
#report-readiness h2{font-size:15px}
#report-readiness .panel-body{padding:18px}
#report-readiness .eyebrow{margin:0 0 6px}
#report-readiness .checks{margin:0 0 16px;padding:0;list-style:none}
#report-readiness .checks li{font-size:14px;line-height:1.6;padding:0;overflow-wrap:anywhere}
#report-readiness .checks li:before{display:none}
#report-readiness .stack{margin-top:18px}
.remaining-requirements{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.remaining-requirements summary,.requirement-group summary,.reused-case-details>summary,.section-options>summary,.nibrs-report-options>summary,.nibrs-choice-options>summary,.intake-response-times>summary{cursor:pointer;font-size:13px;color:var(--muted);line-height:1.6}
.requirement-group{margin:14px 0}.requirement-group summary span{float:right}
.requirement-group ul{list-style:none;padding:0;margin:8px 0}
.requirement-group li{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.6}
.requirement-group button{justify-self:start;font-size:12px}
.report-review-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0}
.report-review-facts dt{font-size:12px;color:var(--muted);margin-bottom:6px}
.report-review-facts dd{margin:0;font-size:14px;overflow-wrap:anywhere}
.reused-case-details{margin:0 0 20px}.reused-case-details .family-case-summary{margin-top:12px}
details.report-section-group{padding:0 0 16px;margin:0 0 16px}
details.report-section-group>summary{cursor:pointer;font-size:15px;font-weight:600;padding:4px 0 12px}
details.report-section-group .section-fields{padding-top:8px}
[data-next-group]{margin-top:18px}
.section-options{margin-top:12px}.section-options button{margin-top:8px}
.nibrs-workflow .panel-head h2{font-size:15px}
.nibrs-requirement-guide{border:0;padding:0;margin:0 0 14px;color:var(--muted)}
.nibrs-requirement-guide>summary{font-size:13px;cursor:pointer}
.nibrs-report-options{margin:10px 0 16px}
.nibrs-recorded-toggle{font-size:12px;color:var(--muted);display:flex;gap:8px;align-items:center;margin-top:14px}
.nibrs-choice-options>summary{color:var(--ink);padding:6px 0;overflow-wrap:anywhere}
.nibrs-choices{max-height:none;overflow:visible}
.nibrs-choice-options[open]{max-height:240px;overflow:auto}
.intake-response-times{margin:18px 0}.intake-response-times .form-grid{margin-top:12px}
#incident-picker [hidden]{display:none!important}
.report-workspace button:focus-visible,.report-workspace summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:1150px){.report-layout{grid-template-columns:minmax(0,1fr) 250px;gap:16px}.report-steps button{flex:1 1 28%}}
@media(max-width:850px){.report-layout{display:flex;flex-direction:column}.report-main,.report-layout .right-rail{width:100%}.report-layout-review{display:block}.report-steps button{font-size:12px}.report-footer{flex-wrap:wrap}.report-footer>.actions{margin-left:auto}.report-save-status{flex-basis:100%;text-align:right}.report-review-facts{grid-template-columns:1fr}.case-tools-menu{width:220px}.report-workspace .page-head h1{font-size:24px}.step-number{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){.report-workspace *{scroll-behavior:auto!important}}

.case-assignee{font-size:12px;color:var(--muted);margin:6px 10px 10px;line-height:1.5}

.property-collection{border:0;border-top:1px solid var(--border);padding:16px 0 0;margin:16px 0 0}.property-collection legend{font-weight:600;padding:0 8px 0 0}.property-collection[hidden]{display:none}
/* Corrections appear after an attempted advance, beside the actual input. */
.report-workspace,.report-feedback{--feedback-ink:#b42318;--feedback-line:#d44538;--feedback-bg:#fff4f2}
[data-theme=dark] .report-workspace,[data-theme=dark] .report-feedback{--feedback-ink:#ffb4a8;--feedback-line:#ec8d81;--feedback-bg:#342324}
.report-feedback{border:1px solid var(--feedback-line);border-radius:12px;background:var(--feedback-bg);padding:16px 18px;margin:0 0 18px;color:var(--ink);scroll-margin-top:20px}
.report-feedback h3{font-size:15px;margin:0 0 7px;color:var(--feedback-ink)}.report-feedback p{font-size:13px;line-height:1.5;margin:0 0 8px}.report-feedback ul{margin:0;padding-left:18px}.report-feedback li{font-size:13px;line-height:1.5}.report-feedback li button{text-align:left;white-space:normal;padding:4px 0;color:var(--feedback-ink)}.report-feedback>details{margin-top:6px}.report-feedback>details>summary{font-size:13px;cursor:pointer}.report-continue-draft{margin-top:12px;text-align:left;white-space:normal}
.report-field-invalid{border-left:3px solid var(--feedback-line,#d44538)!important;padding-left:10px!important;scroll-margin-top:24px}.report-field-invalid input[aria-invalid=true]:not([type=checkbox]):not([type=hidden]),.report-field-invalid select[aria-invalid=true],.report-field-invalid textarea[aria-invalid=true]{border-color:var(--feedback-line,#d44538)!important;box-shadow:0 0 0 1px var(--feedback-line,#d44538)}
.report-field-error{color:var(--feedback-ink,#b42318)!important;font-size:12px!important;line-height:1.5!important;white-space:normal;margin:7px 0 0!important;font-weight:500}.report-feedback button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
[data-theme=dark] #modal{--feedback-ink:#ffb4a8;--feedback-line:#ec8d81}
@media(max-width:600px){.report-feedback{padding:14px}.report-feedback li button{min-height:36px}}

.evidence-measurements .measurement-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:end;margin-bottom:16px}
.evidence-measurements [hidden]{display:none!important}
.evidence-measurements input,.evidence-measurements select{min-width:0;width:100%}
.evidence-measurements [data-add-weight]{margin:0 0 12px}

/* One disclosure per person. Their questions stay flat inside that card. */
.report-party{padding:0;border-bottom:1px solid var(--line);min-width:0}
.report-party:last-child{border-bottom:0}
.report-party>summary{display:flex;align-items:center;gap:14px;cursor:pointer;list-style:none;padding:20px;min-height:88px}
.report-party>summary::-webkit-details-marker{display:none}
.report-party>summary:hover{background:var(--surface-soft)}
.report-party>summary:focus-visible{outline:2px solid var(--accent);outline-offset:-3px;border-radius:10px}
.report-party-heading{display:grid;gap:6px;flex:1;min-width:0}
.report-party-heading strong{font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.report-party-heading small{color:var(--muted);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.report-party-meta{display:grid;gap:8px;justify-items:end}
.report-party-status{font-size:11px;color:var(--muted);line-height:1.5}
.report-party-status[data-pending=true]{color:var(--accent)}
.report-party-chevron{font-size:24px;color:var(--muted);flex:none;transition:transform .15s}
.report-party[open]>summary .report-party-chevron{transform:rotate(90deg)}
.report-party[open]>summary{border-bottom:1px solid var(--line)}
.report-party-body{padding:20px;min-width:0}
.report-party-body>.actions{margin:16px 0}
.report-party-body>.person-secondary-actions{border-top:1px solid var(--line);padding-top:16px;margin-bottom:0}
.report-party-body .nibrs-inline-card{border:0;border-top:1px solid var(--line);border-radius:0;padding:20px 0 0;margin:20px 0}
.report-party-body .nibrs-inline-card:last-child{margin-bottom:0}
.report-party-body .nibrs-inline-card .nibrs-record-heading h4{font-size:14px}
.report-party-body .nibrs-inline-card>.actions{margin:8px 0 16px}
.person-case-facts{margin:20px 0}
.person-charge-list{list-style:none;padding:0;margin:12px 0}
.person-charge-list li{display:grid;gap:4px;margin:10px 0;font-size:13px;line-height:1.5}
.person-charge-list small{color:var(--muted);font-size:11px}
.person-shared-link{padding:12px 0;border-top:1px solid var(--line)}
.person-shared-link button{padding:4px 0;color:var(--accent);text-align:left}
@media(max-width:600px){
 .report-party>summary{padding:16px;gap:10px;flex-wrap:wrap}
 .report-party-heading{flex-basis:calc(100% - 42px)}
 .report-party-chevron{order:1}
 .report-party-meta,.report-party>summary>.report-party-status{order:2;flex-basis:100%;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
 .report-party-body{padding:16px}
 .report-party-body .actions button{white-space:normal;text-align:left}
}
.report-party-chevron{display:block;font-size:0;width:8px;height:8px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(-45deg);margin-right:3px}
.report-party[open]>summary .report-party-chevron{transform:rotate(45deg)}
.report-party-body .nibrs-fields>.check-label{grid-column:1/-1;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:6px 10px}
.report-party-body .nibrs-fields>.check-label>.nibrs-field-note{grid-column:2;margin-top:0}
.person-relationships{padding-top:20px;margin-top:20px;border-top:1px solid var(--line)}
.person-relationships button{text-align:left}
