.violations-page{max-width:1300px;margin:auto;padding:0 20px 30px;line-height:1.5}.violations-page h1{margin-top:30px}.violations-page h2{margin-top:1.8em}.intro{font-size:1.15em}.snapshot{border-left:5px solid #28658b;padding:12px 18px;background:#f0f6fa}.data-counts{display:flex;gap:16px;flex-wrap:wrap}.data-counts p{flex:1;min-width:200px;border:1px solid #b9ccd9;background:#f7fafc;padding:18px;margin:0}.data-counts strong{display:block;font-size:1.8em;color:#17496b}.data-counts span{display:block}.page-links{padding:14px 0;border-bottom:1px solid #ccd5db}.filters{display:flex;flex-wrap:wrap;gap:14px;padding:16px;background:#f0f4f7}.filters label{display:flex;flex-direction:column;gap:5px;font-weight:bold}.filters input,.filters select,.pager button{font:inherit;padding:7px;border:1px solid #7790a1;border-radius:3px;background:white;color:#142f42}.filters .check{flex-direction:row;align-items:center;font-weight:normal;width:100%}.table-scroll{overflow-x:auto}.violations-page table{border-collapse:collapse;width:100%;font-size:.94em}.violations-page th,.violations-page td{border-bottom:1px solid #c7d3db;padding:10px 12px;vertical-align:top;text-align:left}.violations-page thead th{background:#e6eef4;color:#173e5a}.violations-page tbody tr:nth-child(even){background:#f6f9fb}.violations-page td small{display:block;color:#465767}.violations-page .money{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}.pager{display:flex;gap:16px;align-items:center;justify-content:center;margin:18px 0}.pager button{cursor:pointer}.pager button:disabled{opacity:.5;cursor:default}.violations-page details{margin:10px 0;border:1px solid #ccd5db;padding:12px}.violations-page summary{font-weight:bold;cursor:pointer}.violations-page details table{max-width:800px}.violations-page :focus-visible{outline:3px solid #c86b12;outline-offset:3px}@media(max-width:600px){.violations-page{padding:0 10px 25px}.data-counts{gap:8px}.data-counts p{min-width:100%;box-sizing:border-box}.filters label{width:100%}.filters input,.filters select{min-width:0;box-sizing:border-box;width:100%}.filters .check input{width:auto}.violations-page h1{font-size:1.65em}#records{min-width:960px}}@media print{.filters,.pager,.page-links,#main-nav{display:none}.table-scroll{overflow:visible}.data-counts p{break-inside:avoid}}
.graph{border:1px solid #c7d3db;background:#fafcfd;padding:12px;margin:15px 0 28px;overflow-x:auto}.graph svg{display:block;width:100%;min-width:690px;font:14px Arial,sans-serif;color:#243e50}.graph svg text{fill:currentColor}.dashboard-filters{align-items:end}.dashboard-filters button{font:inherit;padding:8px 14px;border:1px solid #7790a1;background:white;cursor:pointer}#annual-summary td,#scope-summary td{text-align:right;font-variant-numeric:tabular-nums}#individual-records{margin:30px 0;padding:16px;border:1px solid #c7d3db}#individual-records>summary{font-size:1.1em;font-weight:bold;cursor:pointer}#summary-cards{margin:20px 0}#scope-summary,#annual-summary{min-width:760px}
.graph svg text[fill="#a55816"]{fill:#a55816}.graph svg text[fill="#485765"]{fill:#485765}
/* Keep the dashboard independent of legacy label and fixed line-height rules. */
.violations-page .data-counts p{display:flex;flex-direction:column;gap:8px;line-height:1.4;height:auto;box-sizing:border-box}
.violations-page .data-counts strong{font-family:inherit;font-size:1.8em;line-height:1.2;margin:0;padding:0}
.violations-page .data-counts span{font-family:inherit;font-size:1em;line-height:1.4;margin:0;padding:0}
.violations-page label{font-family:inherit;font-size:1rem;font-weight:600;line-height:1.4;color:#142f42;height:auto}
.violations-page input,.violations-page select,.violations-page button{font-family:inherit;font-size:1rem;font-weight:400;line-height:1.4;color:#142f42}
.violations-page .filters label{margin:0;gap:6px;color:#142f42}
.violations-page .dashboard-filters button{color:#142f42;line-height:1.4}
/* Legacy site form rules specify a serif family; use the same sans-serif as the page. */
.violations-page label,.violations-page input,.violations-page select,.violations-page button{font-family:Arial,Helvetica,sans-serif}
.violations-page .classification-controls{display:flex;align-items:end;flex-wrap:wrap;gap:18px;margin:16px 0}
.violations-page .classification-controls label{display:flex;flex-direction:column;gap:6px;margin:0}
.violations-page .classification-controls select,.violations-page #rate-industry{padding:7px;border:1px solid #7790a1;border-radius:3px;background:#fff;color:#142f42}
.violations-page [hidden]{display:none!important}

.violations-page .graph,.violations-page [role="status"]{color:#243e50;font-family:Arial,Helvetica,sans-serif;line-height:1.4}

/* Disclosure titles must remain visible against the inherited ILPI theme. */
.violations-page details>summary{display:block;position:static;color:#142f42;background:#edf3f7;font-family:Arial,Helvetica,sans-serif;font-size:1rem;font-weight:600;line-height:1.5;margin:0;padding:10px 12px;height:auto;white-space:normal;cursor:pointer;list-style:none;visibility:visible;opacity:1}
.violations-page details>summary::-webkit-details-marker{display:none}
.violations-page details>summary::before{content:"+";display:inline-block;width:1.25em;color:#17496b;font-family:Arial,Helvetica,sans-serif;font-weight:bold}
.violations-page details[open]>summary::before{content:"−"}
.violations-page details[open]>summary{margin-bottom:12px}

.violations-page .page-links,.violations-page .page-links a{font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.5}

/* External sites are marked without treating absolute ILPI URLs as external. */
.violations-page a.external-link::after{content:"\2197" / "";display:inline-block;margin-left:.2em;font-family:Arial,Helvetica,sans-serif;font-size:.82em;font-weight:normal;line-height:1;vertical-align:super;text-decoration:none}
