:root{--black:#09131d;--teal:#1b8f89;--purple:#7B5CFF;--white:#FFFFFF;--lightGrey:#f4f5ef;--midGrey:#5f6b76;--darkGrey:#1d2b36;--sand:#ebe6d7;--ink:#10212d;--accent:#d26a43;--surface:#fbfaf5;--surfaceStrong:#f0ebdf;--line:#d8d2c3;--status-compliant:#2f8f63;--status-partial:#d49a27;--status-noncompliant:#c44c43;--status-notassessed:#6b7280;--status-compliant-soft:rgba(47,143,99,.13);--status-partial-soft:rgba(212,154,39,.16);--status-noncompliant-soft:rgba(196,76,67,.15);--status-notassessed-soft:rgba(107,114,128,.14);--font: "IBM Plex Sans", "Segoe UI", sans-serif;--displayFont: "Space Grotesk", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font);color:var(--black);background:radial-gradient(circle at top left,rgba(210,106,67,.12),transparent 28%),radial-gradient(circle at top right,rgba(27,143,137,.14),transparent 24%),linear-gradient(180deg,#f8f5ee,#f4efe4)}a{color:inherit}.container{max-width:1440px;margin:0 auto;padding:24px}.card{background:#ffffffd1;border:1px solid rgba(16,33,45,.12);border-radius:24px;padding:20px;box-shadow:0 14px 40px #10212d14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.muted{color:var(--midGrey)}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(16,33,45,.18);background:var(--white);padding:10px 14px;border-radius:999px;cursor:pointer;font-weight:600;font-family:var(--font)}.btnPrimary{border-color:transparent;background:linear-gradient(135deg,var(--accent),#ab4423);color:var(--white)}.btnAccent{border-color:transparent;background:var(--teal);color:var(--white)}.btn:disabled{opacity:.5;cursor:not-allowed}.input,.select{width:100%;padding:10px 12px;border-radius:14px;border:1px solid rgba(16,33,45,.14);font-family:var(--font);background:#ffffffeb}.nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;padding:16px 24px;border-bottom:1px solid rgba(16,33,45,.08);background:#fbfaf5c7;position:sticky;top:0;z-index:40;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav a{text-decoration:none;padding:10px 14px;border-radius:999px;color:var(--darkGrey);font-weight:600}.nav a.active{background:var(--ink);color:var(--white)}.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:12px;background:var(--lightGrey);color:var(--darkGrey)}.badge.teal{background:#1aa6a61f;color:var(--teal)}.badge.purple{background:#7b5cff1f;color:var(--purple)}h1,h2,h3,h4{font-family:var(--displayFont);letter-spacing:-.02em;color:var(--ink);margin:0}p{line-height:1.6}.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.compliancePage{display:grid;gap:20px;padding-top:28px;padding-bottom:40px}.heroPanel{display:grid;gap:24px;background:linear-gradient(140deg,#10212df5,#1e3948f0),linear-gradient(180deg,rgba(27,143,137,.22),transparent);color:var(--white);padding:28px}.heroPanel h1,.heroPanel .eyebrow,.heroPanel p,.heroPanel strong,.heroPanel span{color:inherit}.heroCopy{display:grid;gap:10px;max-width:760px}.heroCopy h1{font-size:clamp(2rem,3vw,3.6rem)}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;opacity:.75}.heroStats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}.heroStats article{padding:16px;border-radius:18px;background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.heroStats strong{display:block;font-size:1.8rem;margin-bottom:6px}.heroFooter{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.viewToggle{display:inline-flex;gap:8px;padding:6px;border-radius:999px;background:#ffffff14}.toggleButton{border:0;padding:12px 16px;border-radius:999px;font:inherit;cursor:pointer;color:var(--white);background:transparent}.toggleButton.isActive{background:#ffffff2e}.heroMeta{display:flex;gap:14px;flex-wrap:wrap;color:#ffffffb8}.filterCard{padding:18px}.filterGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.filterGrid label{display:grid;gap:8px;font-weight:600;color:var(--ink)}.filterSearch{grid-column:span 4}.legendRow{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.legendItem{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:16px;background:#ffffffad}.legendItem strong{margin-left:auto}.legendSwatch{width:14px;height:14px;border-radius:999px}.legendSwatch.compliant,.metricFill.compliant,.statusPill.compliant,.cell.compliant,.statusDot.compliant{background:var(--status-compliant-soft);color:var(--status-compliant)}.legendSwatch.partially-compliant,.metricFill.partially-compliant,.statusPill.partially-compliant,.cell.partially-compliant,.statusDot.partially-compliant{background:var(--status-partial-soft);color:var(--status-partial)}.legendSwatch.non-compliant,.metricFill.non-compliant,.statusPill.non-compliant,.cell.non-compliant,.statusDot.non-compliant{background:var(--status-noncompliant-soft);color:var(--status-noncompliant)}.legendSwatch.not-assessed,.metricFill.not-assessed,.statusPill.not-assessed,.cell.not-assessed,.statusDot.not-assessed{background:var(--status-notassessed-soft);color:var(--status-notassessed)}.legendSwatch.compliant{background:var(--status-compliant)}.legendSwatch.partially-compliant{background:var(--status-partial)}.legendSwatch.non-compliant{background:var(--status-noncompliant)}.legendSwatch.not-assessed{background:var(--status-notassessed)}.warningPanel ul{margin-bottom:0}.sectionPanel{display:grid;gap:18px}.sectionHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.sectionLead{max-width:520px;margin:0}.companySummaryGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.companySummaryCard{padding:18px;border-radius:22px;background:linear-gradient(180deg,#f4efe4e6,#fffffff2);border:1px solid rgba(16,33,45,.08);display:grid;gap:14px}.companySummaryHeader{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.companySummaryHeader p{margin:6px 0 0}.scoreRing{min-width:94px;min-height:94px;border-radius:999px;display:grid;place-items:center;text-align:center;background:radial-gradient(circle,#fffffff2 40%,#1b8f892e 41%,#1b8f8957);color:var(--ink)}.scoreRing strong{display:block;font-size:1.4rem}.scoreRing span{font-size:.78rem;color:var(--midGrey)}.metricStack{display:grid;gap:10px}.metricBar{display:grid;grid-template-columns:140px minmax(0,1fr) 44px;align-items:center;gap:10px}.metricBarLabel,.metricBarValue{font-size:.88rem}.metricTrack{height:12px;border-radius:999px;overflow:hidden;background:#10212d14}.metricFill{height:100%;border-radius:inherit}.riskRow{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.riskBadge{display:inline-flex;padding:8px 12px;border-radius:999px;background:#c44c431f;color:var(--status-noncompliant);font-weight:700}.dashboardGrid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.heatmapList{display:grid;gap:10px}.heatmapRow{border:1px solid rgba(16,33,45,.08);border-radius:18px;padding:14px 16px;background:#ffffffc7;display:flex;justify-content:space-between;gap:16px;align-items:center;cursor:pointer;font:inherit;text-align:left}.heatmapRow p{margin:6px 0 0}.heatmapStats{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.statusDot{display:inline-flex;padding:6px 10px;border-radius:999px;font-weight:700}.heatScore{font-weight:800;color:var(--ink)}.subsectionSummaryTable{display:grid;gap:8px}.subsectionSummaryHead,.subsectionSummaryBody{display:grid;grid-template-columns:1.3fr 1fr 90px 140px;gap:10px;align-items:center;padding:10px 12px;border-radius:16px}.subsectionSummaryHead{color:var(--midGrey);font-size:.84rem;text-transform:uppercase;letter-spacing:.08em}.subsectionSummaryBody{background:#ffffffbd}.matrixShell{overflow:auto;border-radius:22px;border:1px solid rgba(16,33,45,.08)}.matrixTable{width:100%;min-width:1180px;border-collapse:separate;border-spacing:0;background:#ffffffbd}.matrixTable th,.matrixTable td{border-bottom:1px solid rgba(16,33,45,.08);border-right:1px solid rgba(16,33,45,.05);padding:0;vertical-align:top}.matrixTable thead th{position:sticky;top:0;z-index:5;background:#f7f2e8}.stickyColumn{position:sticky;left:0;z-index:4;background:#fcfaf3}.rowHeaderCell{min-width:320px;text-align:left;padding:14px 16px}.companyHeading{padding:14px 16px;display:grid;gap:3px;text-align:left}.companyHeading span{color:var(--midGrey);font-size:.82rem}.departmentRow th,.subsectionRow th{border-right:1px solid rgba(16,33,45,.08)}.departmentCell{background:#e9e2d4}.subsectionCell{background:#f3ecdf}.departmentSummaryCell,.subsectionSummaryCell{text-align:center;vertical-align:middle;padding:18px 12px!important;font-weight:800;color:var(--ink)}.treeToggle{width:100%;border:0;background:transparent;padding:16px;display:flex;align-items:flex-start;gap:14px;text-align:left;font:inherit;cursor:pointer}.treeToggle span{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:#10212d14;font-size:1.1rem}.treeToggle small{display:block;margin-top:4px;color:var(--midGrey)}.treeToggle.nested{padding-left:28px}.itemCell{padding:16px 18px!important}.itemMeta{display:grid;gap:6px}.itemMeta p{margin:0;color:var(--midGrey);font-size:.92rem}.itemCode{display:inline-flex;width:fit-content;padding:4px 8px;border-radius:999px;background:#10212d14;color:var(--ink);font-size:.8rem;font-weight:700}.cell{min-width:170px}.cellButton{width:100%;min-height:132px;border:0;background:transparent;cursor:pointer;font:inherit;color:inherit;padding:14px;display:grid;align-content:flex-start;gap:10px;text-align:left}.cellButton span:last-of-type{line-height:1.45}.statusPill{display:inline-flex;width:fit-content;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:800}.cellLinkBadge{justify-self:end;font-weight:800}.emptyCell{padding:14px;background:#6b72800f}.highlightColumn{box-shadow:inset 0 0 0 2px #1b8f893d;background-clip:padding-box}.sectionActions{display:flex;gap:10px}.detailModalHeader{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#09131d8f;display:grid;place-items:center;padding:18px;z-index:90}.detailModal{width:min(720px,100%);max-height:min(88vh,820px);overflow:auto;background:#fffdf8;border-radius:24px;padding:24px;display:grid;gap:18px}.detailMeta{display:flex;gap:10px;flex-wrap:wrap;color:var(--midGrey);font-weight:600}.detailDescription{margin:0;color:var(--midGrey)}.detailSummary{background:#f4efe48c}.detailSummary h3{margin-bottom:10px}.detailSummary p{margin:0 0 10px}.emptyState,.errorPanel{text-align:center}@media (max-width: 1100px){.dashboardGrid{grid-template-columns:1fr}.filterGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.filterSearch{grid-column:span 2}}@media (max-width: 720px){.container{padding:16px}.heroPanel{padding:22px}.heroFooter,.sectionHeader,.companySummaryHeader,.riskRow{flex-direction:column;align-items:stretch}.filterGrid{grid-template-columns:1fr}.filterSearch{grid-column:span 1}.metricBar,.subsectionSummaryHead,.subsectionSummaryBody{grid-template-columns:1fr}.detailModal{padding:18px}}
