/* Functional desktop workflow; reuses the approved DUOVIA components. */
.compliance-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.compliance-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.compliance-card h2,.compliance-card p{margin:0}
.compliance-card .button{margin-top:auto}
.compliance-status{font-weight:600;color:#395e50}
.compliance-link{border:0;background:none;color:#135777;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;padding:4px}
.compliance-question{max-width:850px;margin-inline:auto!important;scroll-margin-top:150px}
.compliance-question fieldset{border:0;padding:0;margin:22px 0;min-width:0}
.compliance-question legend{font-size:1.5rem;font-weight:650;color:#17394d;line-height:1.4;margin-bottom:12px}
.compliance-options{display:grid;gap:10px;margin-top:20px}
.compliance-option{display:flex;align-items:center;gap:14px;border:1px solid #c8d4db;padding:16px;border-radius:6px;background:#fff;cursor:pointer}
.compliance-option:has(input:checked){border-color:#967335;background:#faf5e9;box-shadow:inset 3px 0 #967335}
.compliance-page .compliance-option input[type=radio]{width:18px;height:18px;flex:0 0 18px;margin:0;padding:0;accent-color:#967335}
.compliance-question progress{width:100%;height:9px;accent-color:#967335}
.compliance-progress-text{font-size:.85rem;color:#5d6d77}
.compliance-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:20px}
.compliance-report{scroll-margin-top:150px}
.compliance-summary{border-top:3px solid #967335!important}
.compliance-level{font-size:1.15rem;font-weight:700;color:#17394d}
.compliance-finding{border-top:1px solid #e0e5e8;padding:18px 0}
.compliance-finding:first-of-type{border-top:0}
.compliance-finding h4{font-size:1rem;margin:0 0 8px}
.compliance-finding p{margin:6px 0}
.compliance-finding--specific{border-left:4px solid #ae6a21;padding-left:18px}
.compliance-evidence{font-size:.83rem;color:#546575}
.compliance-ref{font-size:.8rem}
.compliance-report details{margin-block:16px}
.compliance-report summary{cursor:pointer;font-weight:600}
.compliance-report dt{font-weight:600;margin-top:14px}
.compliance-report dd{margin-left:0}
.compliance-disclaimer{border-top:1px solid #d7e0e7;padding-top:20px;font-size:.82rem;color:#526675}
@media print{
 @page{margin:16mm}
 body.compliance-page{background:#fff!important;color:#111!important;font-size:10pt}
 .compliance-page :is(header,footer,.skip-link,.hero-primary,.enterprise-toolbar,[data-no-print],script){display:none!important}
 .compliance-page :is(.section,.site-shell,.enterprise-workspace){padding:0!important;margin:0!important;max-width:none!important;width:auto!important}
 .compliance-page .enterprise-record{box-shadow:none!important;border:0!important;padding:0!important;margin:0 0 20px!important}
 .compliance-report h2,.compliance-report h3,.compliance-report h4{break-after:avoid}
 .compliance-finding{break-inside:avoid}
 .compliance-report a{color:#111!important;text-decoration:none}
 .compliance-report .compliance-ref a::after{content:' (' attr(href) ')';font-size:8pt;overflow-wrap:anywhere}
 .compliance-report .enterprise-state{background:transparent!important;color:#111!important}
}
