:root{--bg: #f5f7fa;--surface: #ffffff;--fg: #1d2433;--muted: #5b6475;--line: #dde1e8;--line-soft: #e8ebf0;--accent: #2f5bd3;--accent-fg: #ffffff;--brand: #13294b;--banner-bg: #1d4f91;--banner-fg: #ffffff;--banner-h: 56px;--logo-eye: #ffffff;--logo-accent: #0f8f80;--ok-bg: #d9f2e3;--ok-fg: #14532d;--warn-bg: #fdecc8;--warn-fg: #713f12;--ko-bg: #f8d7d4;--ko-fg: #7f1d1d;--error: #a3261b;--demo-bg: #e8eefc;--ok-bar: #3f9a64;--warn-bar: #d99a1e;--ko-bar: #d0493d;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #12161f;--surface: #1a2030;--fg: #e6e9ef;--muted: #9aa3b5;--line: #2d3547;--line-soft: #252c3c;--accent: #7ea1ff;--accent-fg: #0d1220;--brand: #ffffff;--logo-eye: #13294b;--logo-accent: #4fd1bf;--ok-bg: #173a27;--ok-fg: #b6ebc9;--warn-bg: #3f3212;--warn-fg: #f6dfa3;--ko-bg: #46201d;--ko-fg: #f6c4bf;--error: #ff9a8f;--demo-bg: #1f2a46;--ok-bar: #4fb57a;--warn-bar: #e2ad3b;--ko-bar: #e2675b;color-scheme:dark}}:root[data-theme=dark]{--bg: #12161f;--surface: #1a2030;--fg: #e6e9ef;--muted: #9aa3b5;--line: #2d3547;--line-soft: #252c3c;--accent: #7ea1ff;--accent-fg: #0d1220;--brand: #ffffff;--logo-eye: #13294b;--logo-accent: #4fd1bf;--ok-bg: #173a27;--ok-fg: #b6ebc9;--warn-bg: #3f3212;--warn-fg: #f6dfa3;--ko-bg: #46201d;--ko-fg: #f6c4bf;--error: #ff9a8f;--demo-bg: #1f2a46;--ok-bar: #4fb57a;--warn-bar: #e2ad3b;--ko-bar: #e2675b;color-scheme:dark}body{margin:0;background:var(--bg);color:var(--fg)}main{min-width:0;max-width:1440px;padding:20px 24px 40px}h1,h2,h3{text-wrap:balance}a{color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.muted{color:var(--muted)}.small{display:block;font-size:.85em}.error{color:var(--error)}.prewrap{white-space:pre-wrap}.nowrap{white-space:nowrap}.demo-banner{margin:0 0 8px;padding:8px 12px;border-radius:6px;background:var(--demo-bg);font-size:.9em}main>section,.sheet section{overflow-x:auto}.list{width:100%;border-collapse:collapse;background:var(--surface);font-variant-numeric:tabular-nums}.list th,.list td{padding:8px 12px;border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top}.matrix{border-collapse:collapse;font-variant-numeric:tabular-nums}.matrix th,.matrix td{padding:8px 12px;border:1px solid var(--line);text-align:center}.matrix td.ok{background:var(--ok-bg);color:var(--ok-fg)}.matrix td.ko{background:var(--ko-bg);color:var(--ko-fg)}.sheet section{background:var(--surface);border:1px solid var(--line-soft);border-radius:8px;padding:4px 16px 16px;margin-bottom:16px}.sheet h4{margin-bottom:4px}.columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.columns>*{min-width:0}.assessment{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:0}.assessment dt{color:var(--muted);font-size:.85em}.assessment dd{margin:4px 0 0;font-weight:600}.badge{display:inline-block;padding:2px 10px;border-radius:999px;white-space:nowrap;background:var(--line-soft)}.badge.ok{background:var(--ok-bg);color:var(--ok-fg)}.badge.warn{background:var(--warn-bg);color:var(--warn-fg)}.badge.ko{background:var(--ko-bg);color:var(--ko-fg)}.global-level{font-size:1.25em;font-weight:600}.subtabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.subtabs a{padding:6px 14px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--fg);background:var(--surface)}.subtabs a[aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.dashboard{display:grid;gap:16px}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.dashboard .tiles{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:600px){.dashboard .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.tile{display:grid;gap:4px;padding:14px 16px;background:var(--surface);border:1px solid var(--line-soft);border-radius:8px}.tile-label{color:var(--muted);font-size:.85em}.tile-value{font-size:1.8em;font-weight:700;font-variant-numeric:tabular-nums}.tile-value.ko{color:var(--ko-fg)}.panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.panel{min-width:0;background:var(--surface);border:1px solid var(--line-soft);border-radius:8px;padding:4px 16px 16px}.panel.wide{grid-column:1 / -1}.map-row{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,3fr) minmax(300px,2fr);gap:16px;align-items:start}.ranked-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:16px}.map-side{display:grid;gap:16px;min-width:0}@media(max-width:960px){.map-row{grid-template-columns:minmax(0,1fr)}}.panel h2{font-size:1.1em}.panel-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}.segmented button{border:none;background:var(--surface);color:var(--fg);padding:6px 14px;font:inherit;cursor:pointer}.segmented button[aria-pressed=true]{background:var(--accent);color:var(--accent-fg)}.heatmap-wrap{overflow-x:auto}.heatmap td{width:72px;height:52px;padding:0;border:2px solid var(--surface)}.heatmap td:not(.filled){opacity:.55}.heatmap .count{display:inline-grid;place-items:center;min-width:32px;height:32px;border-radius:999px;background:var(--surface);color:var(--fg);font-weight:700;text-decoration:none;box-shadow:0 0 0 2px var(--fg)}.heatmap .empty{color:var(--muted)}.legend,.stack-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:.85em;color:var(--muted);padding:0;list-style:none}.stack-legend li{display:inline-flex;align-items:center;gap:6px}.stack-legend strong{color:var(--fg)}.swatch{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:4px}.swatch.ok,.seg.ok{background:var(--ok-bar)}.swatch.warn,.seg.warn{background:var(--warn-bar)}.swatch.ko,.seg.ko{background:var(--ko-bar)}.stackbar{display:flex;gap:2px;height:14px;margin:12px 0 4px}.seg{border-radius:4px}.ranked{margin:0;padding-left:1.4em;display:grid;gap:10px}.ranked li>*{vertical-align:middle}.ranked li{padding-left:4px}.ranked li .badge{float:right;margin-left:8px}.ranked .small{display:block}.small-head{font-size:.95em;margin:16px 0 6px}.plain{margin:0;padding-left:1.2em}.scales{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 24px}.scales h4{margin-bottom:6px}.scale{list-style:none;margin:0;padding:0;display:grid;gap:4px}.scale-value{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:6px;border:1px solid var(--line);font-weight:700;font-variant-numeric:tabular-nums;margin-right:6px}.steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}.steps li{display:flex;gap:10px;align-items:baseline}.step-mark{flex:none;width:1.4em;text-align:center;color:var(--muted);font-weight:700}.steps li.done .step-mark{color:var(--ok-fg)}.legend>span{display:inline-flex;align-items:center}.step-detail{display:block}.settings{display:grid;gap:16px}.settings-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.settings-bar p{margin:0}.actions{display:flex;gap:8px}.actions button{font:inherit;padding:8px 16px;border-radius:6px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-fg);cursor:pointer}.actions button.secondary{background:var(--surface);color:var(--fg);border-color:var(--line)}.actions button:disabled{opacity:.5;cursor:not-allowed}.notice{margin:0;padding:10px 14px;border-radius:6px;background:var(--demo-bg)}.settings input,.settings select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 8px}.list.edit input{width:100%;min-width:120px;box-sizing:border-box}.inline-field{display:inline-flex;align-items:center;gap:8px;font-size:.9em;color:var(--muted)}.cell-input{width:4em;text-align:center;background:transparent!important;border-color:transparent!important;font-weight:700}.cell-input:focus{border-color:var(--accent)!important}.threshold{display:grid;gap:8px;max-width:420px}.threshold input[type=range]{padding:0;accent-color:var(--accent)}.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.chips li{padding:4px 10px;border:1px solid var(--line);border-radius:999px;font-size:.9em}.list.edit td:last-child{width:60%}@media(max-width:600px){.list.edit thead{display:none}.list.edit tr{display:grid;grid-template-columns:auto 1fr;gap:6px 10px;padding:8px 0;border-bottom:1px solid var(--line-soft)}.list.edit td{border:none;padding:0}.list.edit td:last-child{grid-column:1 / -1;width:auto}}.thresholds{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px 32px}.matrix td.warn{background:var(--warn-bg);color:var(--warn-fg)}.coverbar{display:flex;gap:2px;height:14px;margin:8px 0 4px;border-radius:4px;background:var(--line-soft);overflow:hidden}.coverbar .seg:empty{min-width:0}.swatch.none{background:var(--line-soft);border:1px solid var(--line);box-sizing:border-box}.cover-figure{margin:8px 0 0}.cover-figure strong{font-size:1.5em}.list.reqs{table-layout:fixed;min-width:640px}.list.reqs th:nth-child(1){width:42%}.list.reqs th:nth-child(2){width:33%}.deletion-notice{margin:0;padding:8px 16px;border-bottom:1px solid var(--error);color:var(--error);font-weight:600}.deletion-notice a{color:inherit}.subscription-notice{margin:0;padding:6px 16px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.9em}.subscription-notice.due{border-bottom-color:var(--warn-bar);background:var(--warn-bg);color:var(--warn-fg)}.app-banner{position:sticky;top:0;z-index:30;height:var(--banner-h);box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 12px 0 16px;background:var(--banner-bg);color:var(--banner-fg)}.banner-organization{display:flex;align-items:center;gap:12px;min-width:0}.banner-logo{flex-shrink:0;height:36px;max-width:140px;object-fit:contain;padding:3px 6px;border-radius:4px;background:#fff}.banner-name{font-size:1.05em;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banner-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.banner-menu{position:relative}.banner-button{display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid transparent;border-radius:6px;background:none;color:inherit;font:inherit;cursor:pointer}.banner-button:hover,.banner-button[aria-expanded=true]{background:#ffffff24}.banner-button:focus-visible,.banner-item:focus-visible{outline:2px solid var(--banner-fg);outline-offset:2px}.banner-button .icon{width:18px;height:18px}.banner-user-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banner-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:40;min-width:240px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--fg);box-shadow:0 8px 24px #0000002e}.banner-dropdown-note{margin:4px 10px 6px;color:var(--muted);font-size:.875em}.banner-item{display:block;width:100%;box-sizing:border-box;padding:8px 10px;border:0;border-radius:6px;background:none;color:inherit;font:inherit;text-align:left;text-decoration:none;cursor:pointer}.banner-item:hover{background:var(--line-soft)}.banner-item[aria-checked=true]{font-weight:700}@media(max-width:600px){.app-banner{padding-left:10px}.banner-user-name{display:none}.banner-logo{height:28px}}.shell{--sidebar-width: 248px;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:calc(100vh - var(--banner-h))}.shell.collapsed{--sidebar-width: 64px}.sidebar{position:sticky;top:var(--banner-h);height:calc(100vh - var(--banner-h));box-sizing:border-box;overflow-y:auto;background:var(--surface);border-right:1px solid var(--line);padding:12px 10px;display:flex;flex-direction:column;gap:8px}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:4px;padding:0 2px 8px}.brand{display:flex;align-items:center;gap:10px;color:var(--fg);text-decoration:none;font-weight:700;font-size:1.1em;min-width:0}.logo{display:flex;align-items:center;gap:8px;color:var(--brand);white-space:nowrap}.eye-mark,.radar-mark,.shield-mark,.riskarto-mark{flex:none}.logo-name{font-size:1.45em;font-weight:800;letter-spacing:-.01em}.logo-accent{color:var(--logo-accent);font-weight:500}.icon-button{flex:none;display:grid;place-items:center;width:36px;height:36px;border:none;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.icon-button:hover{background:var(--bg);color:var(--fg)}.sidebar nav{display:grid;gap:2px}.nav-group{display:grid;gap:2px;margin-top:14px}.nav-group-items{display:grid;gap:2px}.nav-group-label{display:flex;align-items:center;justify-content:space-between;width:100%;border:none;background:none;font:inherit;cursor:pointer;border-radius:6px;margin:0 0 4px;padding:4px 10px;font-size:.75em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.nav-link{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:8px;color:var(--fg);text-decoration:none;white-space:nowrap}.nav-link .icon{flex:none;color:var(--muted)}.nav-link:hover{background:var(--bg)}.nav-link[aria-current=page]{background:var(--demo-bg);font-weight:600}.nav-link[aria-current=page] .icon{color:var(--accent)}.shell.collapsed .nav-label,.shell.collapsed .brand{display:none}.shell.collapsed .sidebar-head{justify-content:center}.shell.collapsed .nav-group-label{width:auto;font-size:0;height:1px;margin:0 8px 6px;padding:0;background:var(--line)}.shell.collapsed .nav-link{justify-content:center;padding:8px}.topbar{display:flex;align-items:center;gap:12px;margin-bottom:12px}.topbar h1{margin:0;font-size:1.6em}.topbar .small{margin-top:2px}.menu-button,.drawer-close,.scrim{display:none}@media(max-width:760px){.shell,.shell.collapsed{--sidebar-width: 264px;grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;inset:var(--banner-h) auto 0 0;width:var(--sidebar-width);z-index:20;transform:translate(-100%);transition:transform .2s ease}.shell.drawer-open .sidebar{transform:none;box-shadow:0 0 24px #00000040}.shell.drawer-open .scrim{display:block;position:fixed;inset:0;z-index:10;background:#00000059}.shell.collapsed .nav-label,.shell.collapsed .brand{display:revert}.shell.collapsed .brand{display:flex}.shell.collapsed .nav-link{justify-content:flex-start;padding:8px 10px}.shell.collapsed .nav-group-label{width:100%;font-size:.75em;height:auto;margin:0 0 4px;padding:4px 10px;background:none}.collapse-button{display:none}.drawer-close,.menu-button{display:grid}main{padding:12px 16px 32px}.topbar h1{font-size:1.3em}}@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}.nav-group-label:hover{background:var(--bg);color:var(--fg)}.nav-group-label .icon{width:16px;height:16px;transition:transform .15s ease}.nav-group-label[aria-expanded=false] .icon{transform:rotate(-90deg)}.shell.collapsed .nav-group-label .icon{display:none}.shell.collapsed .nav-group-label{pointer-events:none}@media(max-width:760px){.shell.collapsed .nav-group-label .icon{display:block}.shell.collapsed .nav-group-label{pointer-events:auto}}.nav-group-items[hidden]{display:none}.sidebar .nav-bottom{margin-top:auto;padding-top:8px;border-top:1px solid var(--line-soft)}.badge-link{text-decoration:none}.list td.num{text-align:center;font-variant-numeric:tabular-nums}.button,.form-actions button{display:inline-flex;align-items:center;gap:6px;font:inherit;font-weight:600;padding:8px 16px;border-radius:6px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-fg);text-decoration:none;cursor:pointer}.button.secondary,.form-actions button.secondary{background:var(--surface);color:var(--fg);border-color:var(--line)}.form-actions button.danger{background:var(--error);border-color:var(--error);color:#fff}.form-actions button.danger:disabled{opacity:.55;cursor:not-allowed}.page-actions{display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 20px}.field{display:grid;gap:6px;font-size:.92em}.field>span:first-child{font-weight:600}.field.wide{grid-column:1 / -1}.form input,.form select,.form textarea,.stage-editor>.field select,.link-picker select,.register-tools input,.register-tools select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:8px 10px;width:100%;box-sizing:border-box}.form [aria-invalid=true]{border-color:var(--ko-bar)}.field-error{color:var(--error);font-size:.9em}.form-actions{justify-content:flex-end;margin-top:16px}.list thead th{vertical-align:bottom}.list th.group{text-align:center;padding-bottom:4px}.list th.num{text-align:center}.list.risks thead th{white-space:nowrap}.list tfoot th,.list tfoot td{border-top:2px solid var(--line);border-bottom:none}.list.harms th.num{text-align:center}.list.harms .short{display:none}@media(max-width:600px){.list.harms .long{display:none}.list.harms .short{display:inline}}.list td.text{min-width:8em}.list th,.list td{-webkit-hyphens:auto;hyphens:auto}.check{display:flex;gap:8px;align-items:baseline}.form .check input{width:auto;padding:0}.teams-toggle{margin-bottom:12px}.jira-synced{display:block}.jira-link-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-top:12px}.jira-link-form .field{margin:0}.teams-card{max-width:420px;padding:14px 16px;border:1px solid var(--line);border-left:4px solid #5b5fc7;border-radius:8px;background:var(--bg)}.teams-card p{margin:0 0 8px}.teams-card-title{font-weight:700;font-size:1.05em}.teams-card-facts{display:grid;gap:4px;margin:0 0 12px}.teams-card-facts div{display:flex;justify-content:space-between;gap:12px}.teams-card-facts dt{font-weight:600}.teams-card-facts dd{margin:0;font-variant-numeric:tabular-nums}.computed{margin-top:14px}.list td .context{margin-top:8px}.choice{display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:14px}.status-line+.status-line{margin-top:6px}.break{overflow-wrap:anywhere}main>section:has(>.sheet){overflow:visible}.sheet-banner{position:sticky;top:0;z-index:5;background:var(--bg);padding:10px 0 2px;margin-bottom:14px;border-bottom:1px solid var(--line)}.sheet-banner h2{margin:0 0 8px}.banner-facts{display:flex;flex-wrap:wrap;gap:8px 28px;margin:0 0 12px}.banner-facts dt{font-size:.8em;color:var(--muted)}.banner-facts dd{margin:2px 0 0}.banner-facts .dic{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.sheet-banner .subtabs{margin-bottom:10px}.plain-link{color:inherit;text-decoration:none}.plain-link:hover,.plain-link:focus-visible{text-decoration:underline}@media(max-width:600px){.sheet-banner h2{font-size:1.2em;margin-bottom:4px}.banner-facts{gap:4px 16px;margin-bottom:8px;font-size:.9em}.sheet-banner .subtabs{flex-wrap:nowrap;overflow-x:auto;margin-bottom:8px}.sheet-banner .subtabs a{flex:none;padding:4px 12px}}.section-head{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap}.section-head .button{padding:4px 12px;font-size:.92em}.inline-add{margin:4px 0 16px;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.inline-add .form-actions{margin-top:12px}.link-button{font:inherit;color:var(--accent);background:none;border:none;padding:0;text-decoration:underline;cursor:pointer}.list td.num .badge{min-width:2.6em;box-sizing:border-box;text-align:center}.reach-note{margin-top:.5rem;padding:.6rem .8rem;border-left:3px solid var(--ko-bar);border-radius:0 6px 6px 0;background:var(--bg)}.reach-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:12px}.reach-column{min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:8px}.reach-column h4{margin:0 0 8px}.reach-list{margin:0 0 8px;padding:0;list-style:none}.reach-list li{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:6px 0;border-bottom:1px solid var(--line-soft);overflow-wrap:anywhere}.link-button.danger{color:var(--error)}.link-button.remove{color:var(--muted);font-size:.875em;flex-shrink:0}.link-button.remove:hover{color:var(--ko-fg)}.reach-list li:last-child{border-bottom:0}.evaluation-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px 24px;margin-top:12px}.evaluation-fields>*{min-width:0}.evaluation-fields>.full-row{grid-column:1 / -1}.evaluation-fields h4{margin:0 0 8px}.evaluation-fields .computed{margin-top:8px}.targets{margin:12px 0 0;padding:0;border:0;min-width:0}.targets legend{padding:0;font-weight:600}.target-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 16px;margin-top:8px}.target-line{margin:4px 0 0}@media(max-width:600px){.plan,.users,.plan tbody,.users tbody{display:block}.plan thead,.users thead{display:none}.plan tr,.users tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:10px 0;border-bottom:1px solid var(--line)}.plan td,.users td{padding:0;border:0}.plan td:first-child,.users td:first-child{grid-column:1 / -1}.plan td[data-label]:before,.users td[data-label]:before{content:attr(data-label);display:block;font-size:.8em;color:var(--muted)}}@media(max-width:600px){.element-risks,.element-risks tbody{display:block}.element-risks thead{display:none}.element-risks tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:10px 0;border-bottom:1px solid var(--line)}.element-risks td,.element-risks td.num{grid-column:1 / -1;padding:0;border:0;text-align:left}.element-risks td.num{grid-column:auto}.element-risks td[data-label]:before{content:attr(data-label);display:block;font-size:.8em;color:var(--muted)}}.users tr.inactive td{color:var(--muted)}.row-actions{white-space:nowrap;text-align:right}.profiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:0}.profiles div{padding:12px;border:1px solid var(--line);border-radius:8px}.profiles dt{font-weight:600;margin-bottom:4px}.profiles dd{margin:0;color:var(--muted);font-size:.9em}@media(max-width:600px){.users td.break,.users td.row-actions{grid-column:1 / -1;text-align:left}}.history{list-style:none;margin:0;padding:0}.history>li{padding:10px 0;border-bottom:1px solid var(--line-soft)}.history>li:last-child{border-bottom:0}.history-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin:0}.history-changes{margin:6px 0 0;padding-left:18px;overflow-wrap:anywhere}.history-changes del{color:var(--muted)}.history-changes ins{text-decoration:none;font-weight:600}.register-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 12px}.register-tools .field{margin:0}.register-search{flex:1 1 220px;max-width:360px}.register-tools input,.register-tools select{width:100%;padding:6px 10px}.register-filter select{max-width:220px}.register-count{margin:0}.sort-button{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;text-align:inherit;cursor:pointer}.sort-button:hover{color:var(--accent)}.sort-mark{font-size:.75em;color:var(--muted)}th[aria-sort] .sort-mark{color:inherit}.ref{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}h2 .ref{font-weight:500}.register tr.inactive td,table.list tr.inactive td{color:var(--muted)}@media(max-width:600px){.register-search{flex:1 1 100%;max-width:none}.register-filter{flex:1 1 calc(50% - 6px);min-width:0}.register-filter select{width:100%;max-width:none}.list.register,.list.register tbody{display:block}.list.register thead{display:none}.list.register tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:10px 0;border-bottom:1px solid var(--line)}.list.register td,.list.register td.num{padding:0;border:0;text-align:left}.list.register td[data-label]:before{content:attr(data-label);display:block;font-size:.8em;color:var(--muted)}.list.register:not(.users) td:nth-child(-n+2){grid-column:1 / -1}.list.register:not(.users) td:nth-child(-n+2):before{content:none}.list.register.users td:first-child:before{content:none}.list.register td[colspan]{grid-column:1 / -1}}.tiles .tile-label{font-weight:700}a.todo-tile{color:inherit;text-decoration:none}.todo-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:16px 24px}.todo-group h3{display:flex;align-items:center;gap:8px;margin:8px 0 2px;font-size:1em}.todo-group>p{margin:0 0 8px}.todo-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.todo-list li{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line-soft)}.todo-list li:last-child{border-bottom:0;padding-bottom:0}.todo-list .badge{flex:none}.todo-detail{display:block}.inline-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-top:12px}.inline-form .field{margin:0}.inline-form .field.grow{flex:1 1 280px}.inline-form select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 10px;max-width:100%}.inline-form .field.grow select{width:100%}.inline-form .error{flex-basis:100%;margin:0}.inline-form.compact{margin-top:6px;align-items:center}.inline-form.compact select{flex:1 1 200px;min-width:0}.linked-control{margin-bottom:4px}.statement-table .theme-row th{background:var(--surface-2, var(--bg));font-size:.9em;padding-top:12px}.statement-table td:nth-child(1){min-width:180px}.statement-table td:nth-child(3){min-width:220px}@media(max-width:600px){.statement-table,.statement-table tbody{display:block}.statement-table thead{display:none}.statement-table tr{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;padding:10px 0;border-bottom:1px solid var(--line)}.statement-table td,.statement-table th{padding:0;border:0;min-width:0!important}.statement-table td:nth-child(1),.statement-table td:nth-child(3),.statement-table td:nth-child(4),.statement-table .theme-row th{grid-column:1 / -1}.statement-table td[data-label]:before{content:attr(data-label);display:block;font-size:.8em;color:var(--muted)}.statement-table td:nth-child(1):before{content:none}}@media print{:root{color-scheme:light}@page{size:A4 landscape;margin:12mm}body{background:#fff!important;color:#000!important}.sidebar,.topbar,.demo-banner,.page-actions,.register-tools,.no-print,.link-button,.inline-form{display:none!important}.shell{display:block}main{padding:0!important}.sheet,.panel,.list{background:none!important;border:0!important;box-shadow:none!important}main>section,.sheet section{overflow:visible}a{color:inherit;text-decoration:none}.list th,.list td{border-bottom:1px solid #ccc;padding:4px 6px;font-size:9pt}.list tr{break-inside:avoid}.list thead{display:table-header-group}.badge{border:1px solid #999;background:none!important;color:#000!important}}.register-export{margin-left:auto;padding:6px 12px;font-size:.9em}.inline-form .button{padding:6px 14px}.inline-form .button:disabled{opacity:.5;cursor:not-allowed}.harms-edit select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:4px 6px;max-width:100%}@media(max-width:600px){.harms-edit td,.harms-edit th{padding:6px 4px}.harms-edit select{width:100%;min-width:0}}.compliance{list-style:none;margin:0;padding:0;display:grid;gap:14px}.compliance li{display:grid;gap:6px}.compliance-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.tag-grid{display:grid;gap:4px;margin-top:4px}.tag-cells{display:grid;grid-template-columns:repeat(auto-fill,minmax(18px,1fr));gap:4px}.tag-cell{aspect-ratio:1;border-radius:4px;background:var(--line-soft)}.tag-cell.ok{background:var(--ok-bar)}.tag-cell.warn{background:var(--warn-bar)}.tag-cell.ko{background:var(--ko-bar)}.tag-cell.na{background:var(--muted);opacity:.45}.tag-cell.none{background:transparent;border:1px dashed var(--line)}.tag-cell:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.compliance-rate{flex:none;white-space:nowrap;font-size:1.4em;font-variant-numeric:tabular-nums}.review-summary{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.review-items{list-style:none;padding:0;display:grid;gap:8px}.review-items li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface)}.review-items label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.review-items input[type=checkbox]{margin-top:3px;width:18px;height:18px;flex:none}.reviews-page{display:grid;gap:16px}.list td.select,.list th.select{width:1%}.confirm-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:16px;background:#00000059}.confirm{width:min(100%,440px);padding:20px;background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 30px #0003}.confirm p{margin-top:0}.confirm .actions{display:flex;justify-content:flex-end;gap:8px}.review-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:8px}.review-stat{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:8px}.review-overview h3{font-size:1em}.swatch.na,.seg.na{background:var(--muted);opacity:.45}.badge.tag{margin-left:6px;font-size:.8em;background:var(--demo-bg);color:var(--fg)}.badge.none{background:transparent;border:1px dashed var(--line);color:var(--muted)}.warn-text{color:var(--warn-fg)}.filter-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 16px;margin:12px 0}.filter-row .field{margin:0}.filter-row select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 10px}.list.conformity th:nth-child(1){width:32%}.list.conformity th:nth-child(2){width:22%}.list.conformity th:nth-child(3){width:22%}.list.conformity .badge{white-space:normal}.edit-row td{background:var(--bg)}.assess-form .actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px}.family h3{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin:12px 0}.family-toggle{border:0;background:none;padding:0;font:inherit;font-weight:600;color:var(--fg);text-align:left;cursor:pointer}.family-toggle:hover{color:var(--accent)}.row-menu{position:relative;display:inline-block}.row-menu>summary{list-style:none;padding:4px 10px;font-size:.9em;cursor:pointer}.row-menu>summary::-webkit-details-marker{display:none}.row-menu-items{position:absolute;right:0;z-index:4;display:grid;gap:6px;min-width:180px;margin-top:4px;padding:10px 12px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 6px 18px #0000001f}.row-menu-items .link-button{text-align:left}.gap-plan{overflow-x:auto}.gap-plan .list td .small{display:block}.list.conformity th:nth-child(1){width:30%}.list.conformity th:nth-child(2),.list.conformity th:nth-child(3){width:20%}.list.conformity th:nth-child(5){width:96px}.list.conformity td:nth-child(4) .badge{white-space:nowrap}.family-counts{font-weight:400}.list.conformity td .link-button.plain-link{text-align:left;color:var(--fg)}a.tile,a.review-stat{color:inherit;text-decoration:none}a.tile:hover,a.review-stat:hover,a.tile:focus-visible,a.review-stat:focus-visible{border-color:var(--accent)}.dash-section{grid-column:1 / -1;margin:12px 0 -6px;font-size:.85em;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.bar{display:flex;gap:2px;min-height:24px;min-width:0}.bar-seg{display:grid;place-items:center;min-width:22px;border-radius:4px;font-size:.8em;font-weight:700;font-variant-numeric:tabular-nums;text-decoration:none;color:#fff}.bar-seg.ok{background:var(--ok-bar)}.bar-seg.ko{background:var(--ko-bar)}.bar-seg.warn{background:var(--warn-bar);color:#1d2433}.bar-seg.none{background:var(--line);color:var(--fg)}.bar-seg.na{background:color-mix(in srgb,var(--muted) 35%,transparent);color:var(--fg)}a.bar-seg:hover,a.bar-seg:focus-visible{outline:2px solid var(--fg);outline-offset:1px}.swatch.none{background:var(--line)}.zone-rows,.family-bars{display:grid;gap:10px;margin-top:12px}.zone-row{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:10px}.zone-row-label{display:grid}.family-bars .zone-row{grid-template-columns:minmax(110px,280px) minmax(0,1fr)}.family-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-wrap{overflow-x:auto}.calendar{min-width:640px;margin-top:8px}.calendar-row{display:grid;grid-template-columns:80px repeat(14,minmax(38px,1fr));align-items:center;min-height:38px;border-bottom:1px solid var(--line-soft)}.calendar-row>*{display:grid;place-items:center;height:100%}.calendar-row.head{min-height:0;font-size:.72em;color:var(--muted)}.calendar-row.head>*{padding:4px 0;text-align:center}.calendar .lane{justify-items:start;font-size:.85em}.calendar .late{background:var(--ko-bg)}.calendar .chip{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 4px;border-radius:999px;font-size:.8em;font-weight:700;text-decoration:none;box-sizing:border-box}.calendar .chip.due{background:var(--accent);color:var(--accent-fg)}.calendar .chip.ko{background:var(--ko-bar);color:#fff}.compliance-pick{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:16px 0 8px}.compliance-pick select{max-width:100%}.late-badge{margin-left:6px}.add-panel{margin-top:8px}.add-panel>summary{cursor:pointer;color:var(--accent);width:fit-content}.add-panel[open]>summary{margin-bottom:8px}.crumbs ol{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 8px;padding:0;list-style:none;font-size:.9em;color:var(--muted)}.crumbs li+li:before{content:"›";margin-right:4px}.crumbs [aria-current]{color:var(--fg)}.topbar-title{flex:1;min-width:0}.logo-field,.logo-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.logo-preview{display:flex;align-items:center;justify-content:center;width:160px;height:64px;padding:6px;border:1px dashed var(--border);border-radius:6px}.logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.search-button{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font:inherit;cursor:pointer}.search-button kbd{font:inherit;font-size:.75em;padding:1px 5px;border:1px solid var(--line);border-radius:4px}@media(max-width:760px){.search-button .search-label,.search-button kbd{display:none}}.search-dialog{width:min(640px,calc(100vw - 32px));margin-top:10vh;padding:12px 16px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--fg)}.search-dialog::backdrop{background:#00000059}.search-box{display:flex;gap:8px;align-items:center;margin-bottom:8px}.search-box input{flex:1;font-size:1.05em;padding:8px 10px}.search-results{list-style:none;margin:0;padding:0;max-height:60vh;overflow-y:auto}.search-results a{display:block;padding:8px 6px;border-radius:6px;text-decoration:none;color:var(--fg)}.search-results a:hover,.search-results a:focus-visible{background:var(--bg)}.depmap{display:grid;grid-template-columns:minmax(160px,260px) minmax(0,1fr);align-items:center;gap:0}.dep-node{display:grid;gap:2px;justify-items:start;padding:8px 12px;border:1px solid var(--line);border-left-width:6px;border-radius:8px;background:var(--surface);color:var(--fg);text-decoration:none}a.dep-node:hover,a.dep-node:focus-visible{border-color:var(--accent)}.dep-node.ok{border-left-color:var(--ok-bar)}.dep-node.warn{border-left-color:var(--warn-bar)}.dep-node.ko{border-left-color:var(--ko-bar)}.dep-node.none{border-left-color:var(--line)}.dep-assets{list-style:none;margin:0;padding:0 0 0 24px;display:grid;gap:8px;position:relative}.dep-assets li{position:relative}.dep-assets:before{content:"";position:absolute;left:0;top:24px;bottom:24px;border-left:2px solid var(--line)}.dep-assets li:before{content:"";position:absolute;left:-24px;top:50%;width:24px;border-top:2px solid var(--line)}.depmap .process{position:relative;margin-right:24px}.depmap .process:after{content:"";position:absolute;right:-26px;top:50%;width:24px;border-top:2px solid var(--line)}@media(max-width:600px){.depmap{grid-template-columns:minmax(0,1fr);gap:12px}.depmap .process{margin-right:0}.depmap .process:after{display:none}}.print-only{display:none}@media print{.sidebar,.scrim,.app-banner,.menu-button,.search-button,.demo-banner,.no-print,.segmented,.todo,.topbar{display:none!important}.shell{display:block!important}main{padding:0!important;max-width:none!important}.print-only{display:flex}.print-head{justify-content:space-between;margin-bottom:12px;font-size:1.1em}body{background:#fff}.panel,.tile{break-inside:avoid}.map-row,.map-side,.ranked-row{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.dash-section{break-after:avoid}@page{size:A4;margin:12mm}.bar-seg,.seg,.badge,.tag-cell,.calendar .late,.swatch,.chip,.heatmap td{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.file-button{position:relative;cursor:pointer}.file-button input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.import-preview{margin-top:.75rem}.import-preview ul{margin:.25rem 0 0}.manual-reqs input{width:100%;box-sizing:border-box}.manual-reqs td:nth-child(2){width:50%}.requirement-add{margin-top:.5rem}.stage-editor>.field{max-width:420px;margin-bottom:8px}.evaluation-edit .pair{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:4px 8px}.evaluation-edit .pair .computed{grid-column:1 / -1;margin:2px 0 0}.link-picker select{width:auto;max-width:100%}.scope-edit textarea{width:100%}.sheet.form .link-picker{max-width:28rem;margin-top:.75rem}.log-date{display:flex;align-items:center;gap:6px}.log-date input{width:auto}.log-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px}.activity-log td{vertical-align:top}.activity-log .history-changes{margin:4px 0 0}.import-step{display:grid;gap:8px}.import-step .actions{flex-wrap:wrap;align-items:center}.import-help ul{margin:6px 0;padding-left:20px}.plain-list{margin:0;padding-left:16px}.success{margin:0 0 12px;padding:10px 14px;border-radius:6px;background:var(--ok-bg);color:var(--ok-fg)}.success a{color:inherit;font-weight:600}.wizard-steps{list-style:none;display:flex;flex-wrap:wrap;gap:4px 16px;margin:0 0 16px;padding:0 0 12px;border-bottom:1px solid var(--line)}.wizard-steps .link-button{text-decoration:none;color:var(--muted)}.wizard-steps li.current .link-button{color:var(--fg);font-weight:600}.wizard-steps li.done .link-button{color:var(--ok-fg)}.step-number{display:inline-grid;place-items:center;width:1.6em;height:1.6em;border-radius:50%;border:1px solid currentColor;font-size:.85em;margin-right:4px}.wizard-steps li.current .step-number{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.summary-list{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:0}.summary-list dt{color:var(--muted)}.summary-list dd{margin:0}.import-recap+.import-recap{margin-top:16px}.import-recap h4{margin:0 0 4px}@media(max-width:600px){.summary-list{grid-template-columns:1fr}}.sign-in{min-height:100vh;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px;box-sizing:border-box}.sign-in-card{width:100%;max-width:480px;display:grid;gap:14px;padding:28px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.sign-in-card h1{margin:0;font-size:1.4rem}.sign-in-organization{display:grid;gap:8px}.sign-in-organization h2{margin:0;font-size:1rem}.sign-in-people{list-style:none;margin:0;padding:0;display:grid;gap:6px}.sign-in-people button{width:100%;display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--fg);font:inherit;text-align:left;cursor:pointer}.sign-in-people button:hover{border-color:var(--accent)}.legal-card{max-width:640px}.legal-document{max-height:240px;overflow-y:auto;padding:12px 14px;border:1px solid var(--line);border-radius:8px}.legal-document h2{margin:0 0 6px;font-size:1rem}.legal-document p{margin:6px 0}.legal-card .checkbox{display:flex;gap:8px;align-items:flex-start}.operator-console{max-width:1100px;margin:0 auto;padding:24px 16px 48px;display:grid;gap:16px}.operator-console h1{margin:0;font-size:1.4rem}.dev-outbox{list-style:none;margin:0;padding:0;display:grid;gap:6px}.risk-report .report-head h2{margin-top:4px}.risk-report section h3{padding-bottom:4px;border-bottom:1px solid var(--line)}.risk-report .report-facts{margin-top:12px}.risk-report .list{width:100%;margin-bottom:12px}@media print{.risk-report section{break-inside:avoid-page}.risk-report h3,.risk-report h4{break-after:avoid}.risk-report .badge.ok{background:var(--ok-bg)!important;color:var(--ok-fg)!important}.risk-report .badge.warn{background:var(--warn-bg)!important;color:var(--warn-fg)!important}.risk-report .badge.ko{background:var(--ko-bg)!important;color:var(--ko-fg)!important}.risk-report .badge{border:0}}
