.compliance{display:grid;gap:20px;min-width:0}.compliance .modal-backdrop{position:fixed;inset:0;z-index:50;background:#24162999;display:grid;place-items:center;padding:16px;overflow:auto}.compliance-controls,.compliance-tabs{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-bottom:18px}.compliance input,.compliance select,.compliance textarea{max-width:100%;padding:10px;border:1px solid #d6cdd9;border-radius:8px;background:white;color:#302536;font:inherit}.compliance label{display:grid;gap:7px;margin-bottom:12px;font-weight:600}.compliance textarea{min-height:90px;resize:vertical}.compliance-table{overflow:auto;max-height:600px;margin:18px 0}.compliance table{width:100%;border-collapse:collapse;font-size:14px}.compliance th{background:#f1eaf3;text-align:left;position:sticky;top:0;z-index:1}.compliance td,.compliance th{padding:12px;border-bottom:1px solid #ddd3e1;vertical-align:top}.compliance td small,.compliance td strong{display:block;margin-top:5px}.compliance td button{font-size:12px;padding:8px;margin-bottom:5px}.compliance-alert{font-weight:700;color:#a3263a}.compliance-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.compliance .compliance-check{display:flex;align-items:center;gap:10px;font-weight:400}.compliance .compliance-check input{width:auto;flex:0 0 auto}.compliance .compliance-modal{width:min(860px,95vw);max-height:90vh;overflow:auto;display:block}.compliance .compliance-letter-modal{width:min(920px,95vw);max-height:94vh;overflow:auto;display:block}.compliance-letter{background:#fff;color:#151515;padding:38px;font:15px/1.6 Georgia,serif}.compliance-letter p{white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0;color:inherit}.compliance-letter h2{color:#9b2837;border:2px solid;padding:12px}.compliance-letter h3{font-size:17px}.compliance-letter th{position:static}.compliance-letter table{font:12px/1.4 Arial,sans-serif}.compliance-right{text-align:right}.compliance-ack,.compliance-signature{page-break-inside:avoid;break-inside:avoid}.compliance-signature{margin-top:30px}.compliance-no-print{padding-bottom:20px}@media(max-width:600px){.compliance-letter{padding:14px}.compliance-tabs button{flex:1 1}.compliance-table{max-height:70vh}}@media print{@page{size:A4;margin:16mm}body:has(.compliance) .compliance-controls,body:has(.compliance) .compliance-no-print,body:has(.compliance) .compliance-tabs,body:has(.compliance) .error-banner,body:has(.compliance) .sidebar,body:has(.compliance) .topbar{display:none!important}body:has(.compliance) .app-shell,body:has(.compliance) .compliance,body:has(.compliance) .workspace{display:block!important;padding:0!important;margin:0!important;width:100%!important}.compliance .panel{border:0;box-shadow:none;padding:0}.compliance-table{max-height:none;overflow:visible}.compliance table{font-size:10px}.compliance th{position:static}.compliance tr{page-break-inside:avoid;break-inside:avoid}.compliance table:has(th:nth-child(6)) td:last-child,.compliance table:has(th:nth-child(6)) th:last-child{display:none}body:has(.compliance-letter-overlay) .compliance>:not(.compliance-letter-overlay){display:none!important}.compliance-letter-overlay{position:static!important;display:block!important;background:none!important;padding:0!important}.compliance .compliance-letter-modal{max-height:none;overflow:visible;width:100%;padding:0;box-shadow:none;border:0}.compliance-letter{padding:0;font-size:11pt}.compliance-letter td:last-child,.compliance-letter th:last-child{display:table-cell}}.contract-consultation{display:grid;gap:22px;min-width:0;color:#303030}.contract-consultation .panel{padding:24px;min-width:0}.contract-search,.contract-selector{display:grid;gap:8px;font-weight:600;max-width:850px}.contract-search input,.contract-selector select{width:100%;min-width:0;background:#fff;color:#303030;border:1px solid #ccc;border-radius:5px;padding:12px;font:inherit}.contract-consultation h3{margin:0 0 12px}.contract-consultation h4{margin:0;font-size:17px}.contract-muted{color:#737373;font-size:13px}.contract-workspace{display:grid;grid-template-columns:minmax(220px,290px) minmax(0,1fr);gap:22px;align-items:start}.contract-results{position:sticky;top:20px}.contract-result-list{display:grid;gap:8px;max-height:70vh;overflow:auto;padding:2px}.contract-consultation .contract-result{display:grid;gap:5px;width:100%;text-align:left;background:#fafafa;border:1px solid #ddd;color:#333;padding:14px;border-radius:5px;white-space:normal;overflow-wrap:anywhere}.contract-consultation .contract-result.selected{border-color:#333;background:#eee;box-shadow:inset 4px 0 #333}.contract-result small{font-weight:400;color:#666}.contract-detail{display:grid;gap:20px;min-width:0}.contract-placeholder{min-height:230px;display:grid;align-content:center}.contract-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin:24px 0 12px}.contract-facts div{min-width:0}.contract-facts dt{font-size:12px;color:#737373;margin-bottom:6px}.contract-facts dd{margin:0;font-weight:600}.contract-facts dd,.contract-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.contract-note{border-left:3px solid #ccc;background:#fafafa;padding:12px 16px}.contract-note p{margin-bottom:0}.contract-section-head{display:flex;gap:16px;align-items:start;justify-content:space-between;flex-wrap:wrap}.contract-toggle{display:flex;align-items:center;gap:8px;font-size:13px}.contract-toggle input{width:auto}.contract-table{overflow:auto;max-height:550px;margin-top:18px}.contract-table table{width:100%;border-collapse:collapse;font-size:13px;min-width:650px}.contract-table td,.contract-table th{padding:13px 10px;text-align:left;vertical-align:top;border-bottom:1px solid #ddd;overflow-wrap:anywhere}.contract-table th{background:#f4f4f4;position:sticky;top:0;z-index:1}.contract-table small,.contract-table td span{display:block;margin-top:6px}.contract-table small{color:#737373}.contract-selected-row{background:#f6f6f6}.contract-table button{font-size:12px;padding:8px 12px}.contract-contact-list{display:grid;gap:14px}.contract-contact{border:1px solid #ddd;border-radius:5px;padding:18px}.contract-contact .contract-section-head>span{font-size:12px;color:#666}.contract-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.contract-consultation button:focus-visible,.contract-consultation input:focus-visible,.contract-consultation select:focus-visible{outline:2px solid #444;outline-offset:3px}@media(max-width:1000px){.contract-workspace{grid-template-columns:1fr}.contract-results{position:static}.contract-result-list{max-height:260px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.contract-consultation .panel{padding:18px}}