/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-ink:#292524;--color-ink-soft:#57534e;--color-ink-faint:#8c8781;--color-line:#dcd8d0;--color-line-soft:#f1efea;--color-bg:#ebeae6;--color-panel:#fff;--color-accent:#3949ab;--color-accent-ink:#fff;--color-accent-soft:#eef2ff;--color-gold:#7a5f18;--color-gold-soft:#f3ecd7;--color-danger:#b21f1f;--color-danger-soft:#fbe9e7;--color-ok:#15803d;--color-ok-soft:#e6f5ec;--color-warn:#a45c09;--color-warn-soft:#f8efdb;--color-bordeaux:#74303e;--color-bordeaux-soft:#ecccd2;--color-slate:#3f5468;--color-slate-soft:#d7dfe6;--color-forest:#3d5a3d;--color-forest-soft:#dce1dc;--color-terracotta:#9a4a24;--color-terracotta-soft:#e3ccc2}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-terracotta-soft:color-mix(in srgb, var(--color-terracotta) 28%, white)}}:root,:host{--color-orange:#c2410c;--color-orange-soft:#fdece1;--color-yellow:#8a6d00;--color-yellow-soft:#fbeea8;--radius-card:.75rem}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);margin:0;line-height:1.55}h1,h2,h3{color:var(--color-gold)}h1{letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.5rem;font-weight:700}h2{margin:0 0 .75rem;font-size:1.05rem;font-weight:600}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}main label{color:var(--color-gold);margin-bottom:.2rem;font-size:.85rem;font-weight:600;display:inline-block}main input[type=text],main input[type=email],main input[type=password],main input[type=number],main input[type=date],main input[type=url],main select,main textarea{border:1px solid var(--color-line);background:var(--color-panel);width:100%;max-width:26rem;font:inherit;color:var(--color-ink);border-radius:.5rem;padding:.5rem .65rem}main textarea{min-height:5rem}main input:focus,main select:focus,main textarea:focus{outline:2px solid #3949ab73}@supports (color:color-mix(in lab, red, red)){main input:focus,main select:focus,main textarea:focus{outline:2px solid color-mix(in srgb, var(--color-accent) 45%, transparent)}}main input:focus,main select:focus,main textarea:focus{outline-offset:1px;border-color:var(--color-accent)}main .filters select,main .filters input[type=text]{max-width:14rem}main .helptext,main .muted-note{color:var(--color-ink-soft);font-size:.85rem}ul.errorlist{color:var(--color-danger);margin:.25rem 0;padding-left:1rem;font-size:.85rem}}@layer components{.app-container,.app-container.is-wide{max-width:none;margin:0;padding:1.75rem 2rem}.demo-banner{background:var(--color-warn-soft);color:var(--color-warn);border-bottom:1px solid var(--color-warn);letter-spacing:.04em;text-align:center;padding:.3rem 1rem;font-size:.8rem;font-weight:700}.is-demo .brand:after{content:"DEMO";background:var(--color-warn);color:#fff;letter-spacing:.08em;vertical-align:middle;border-radius:9999px;margin-left:.6rem;padding:.05rem .45rem;font-size:.65rem;font-weight:700}.app-shell{--topbar-h:3.25rem;flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:30;min-height:var(--topbar-h);background:#f7f5f1;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem 1.5rem;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in srgb, var(--color-gold) 6%, var(--color-panel))}}.topbar{border-bottom:1px solid #c8c0ab}@supports (color:color-mix(in lab, red, red)){.topbar{border-bottom:1px solid color-mix(in srgb, var(--color-gold) 20%, var(--color-line))}}.topbar{box-shadow:0 1px 3px #2925240d}.brand{letter-spacing:.02em;color:var(--color-ink);align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;display:inline-flex}.brand:hover{text-decoration:none}.brand-logo{width:auto;height:2rem;display:block}.brand span{color:var(--color-gold)}.topbar-actions{flex-wrap:nowrap;align-items:center;gap:.15rem;margin-left:auto;display:flex}.topbar-actions a{color:var(--color-ink-soft);border-radius:.5rem;padding:.4rem .75rem;font-size:.9rem;font-weight:500}.topbar-actions a:hover{background:#7a5f181a}@supports (color:color-mix(in lab, red, red)){.topbar-actions a:hover{background:color-mix(in srgb, var(--color-gold) 10%, transparent)}}.topbar-actions a:hover{color:var(--color-ink);text-decoration:none}.topbar-actions a.is-active{background:var(--color-gold-soft);color:var(--color-gold);font-weight:700}.topbar-actions .nav-external{color:var(--color-ink-faint)}.topbar-profile{align-items:center;gap:.4rem;display:inline-flex}.avatar{object-fit:cover;background:var(--color-line);color:#fff;vertical-align:middle;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex;overflow:hidden}.avatar-initials{text-transform:uppercase;letter-spacing:.02em}.avatar-sm{width:1.65rem;height:1.65rem;font-size:.68rem}.avatar-lg{width:4.5rem;height:4.5rem;font-size:1.5rem}.profile-photo{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.1rem;display:flex}.topbar-actions .nav-logout{border-left:1px solid var(--color-line);margin:0 0 0 .5rem;padding-left:.65rem;display:inline-flex}.topbar-actions .nav-logout button:hover{border-color:var(--color-danger);color:var(--color-danger)}.app-cols{flex:1;align-items:flex-start;display:flex}.sidebar{width:16rem;top:var(--topbar-h);height:calc(100vh - var(--topbar-h));background:#f7f5f1;flex:none;padding:1.15rem 1rem 1.5rem 1.5rem;position:sticky;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.sidebar{background:color-mix(in srgb, var(--color-gold) 6%, var(--color-panel))}}.sidebar{border-right:1px solid #c8c0ab}@supports (color:color-mix(in lab, red, red)){.sidebar{border-right:1px solid color-mix(in srgb, var(--color-gold) 20%, var(--color-line))}}.app-body{flex-direction:column;flex:1;min-width:0;display:flex}.app-container section[id]{scroll-margin-top:4.5rem}.side-tools{border-bottom:1px solid #cdc6b4;justify-content:flex-end;margin-bottom:.4rem;padding:0 .15rem .55rem;display:flex}@supports (color:color-mix(in lab, red, red)){.side-tools{border-bottom:1px solid color-mix(in srgb, var(--color-gold) 15%, var(--color-line))}}.side-toggle-all{border:1px solid var(--color-line);color:var(--color-ink-soft);background:0 0;border-radius:.4rem;padding:.2rem .55rem;font-size:.75rem;font-weight:600}.side-toggle-all:hover{filter:none;border-color:var(--color-gold);color:var(--color-gold)}.side-nav{flex-direction:column;gap:.1rem;display:flex}.side-foot{border-top:1px solid #cdc6b4;flex-direction:column;gap:.1rem;margin-top:.9rem;padding-top:.75rem;display:flex}@supports (color:color-mix(in lab, red, red)){.side-foot{border-top:1px solid color-mix(in srgb, var(--color-gold) 15%, var(--color-line))}}.side-foot a{color:var(--color-gold);text-align:left;border-radius:.5rem;padding:.5rem .7rem;font-size:.88rem;font-weight:600;display:block}.side-foot a:hover{background:#7a5f181a}@supports (color:color-mix(in lab, red, red)){.side-foot a:hover{background:color-mix(in srgb, var(--color-gold) 10%, transparent)}}.side-foot a:hover{text-decoration:none}.side-nav>a,.nav-section-head{color:var(--color-ink-soft);border-radius:.5rem;padding:.45rem .7rem;font-size:.9rem;font-weight:500;display:block}.side-nav a:hover,.nav-section-head:hover{background:#7a5f181a}@supports (color:color-mix(in lab, red, red)){.side-nav a:hover,.nav-section-head:hover{background:color-mix(in srgb, var(--color-gold) 10%, transparent)}}.side-nav a:hover,.nav-section-head:hover{color:var(--color-ink);text-decoration:none}.side-nav a.is-active{background:var(--color-gold-soft);color:var(--color-gold);box-shadow:inset 2px 0 0 var(--color-gold);font-weight:700}.nav-section-head{cursor:pointer;color:var(--color-gold);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.4rem;font-size:.8rem;font-weight:700;list-style:none;display:flex}.nav-section-head:hover{color:var(--color-gold)}.nav-section-head::-webkit-details-marker{display:none}.nav-section-head:before{content:"▸";color:var(--color-ink-faint);font-size:.7rem}.nav-section[open]>.nav-section-head:before{content:"▾"}.nav-section-head.is-current{color:var(--color-gold)}.nav-sublist{flex-direction:column;gap:.1rem;padding:.15rem 0 .4rem .9rem;display:flex}.nav-sublist a{color:var(--color-ink-soft);border-radius:.5rem;padding:.35rem .6rem;font-size:.86rem;display:block}.nav-sublist .nav-section-head{padding:.35rem .6rem;font-size:.74rem}@media (max-width:60rem){.app-cols{flex-direction:column}.sidebar{border-bottom:1px solid #c8c0ab;border-right:none;width:auto;height:auto;position:static;overflow:visible}@supports (color:color-mix(in lab, red, red)){.sidebar{border-bottom:1px solid color-mix(in srgb, var(--color-gold) 20%, var(--color-line))}}}.site-footer{border-top:1px solid var(--color-line);color:var(--color-ink-faint);margin:2rem 0 0;padding:1.25rem 2rem 2rem;font-size:.82rem}.panel{background:var(--color-panel);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:1.25rem 1.5rem;box-shadow:0 1px 2px #0f172a0a}.panel+.panel{margin-top:1.25rem}.panel>h2:first-child,.panel>h3:first-child{margin-top:0}.space-heading{text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;font-weight:700}details.panel>summary{cursor:pointer;color:var(--color-gold);font-weight:600}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1rem;display:grid}.stat-card{background:var(--color-panel);border:1px solid var(--color-line);border-radius:var(--radius-card);flex-direction:column;gap:.15rem;padding:1.1rem 1.25rem;display:flex;box-shadow:0 1px 2px #0f172a0a}.stat-card .stat{letter-spacing:-.02em;font-size:1.85rem;font-weight:700}.stat-card .label{color:var(--color-ink-soft);font-size:.85rem}.stat-card.is-alert{border-width:2px 2px 2px 4px;border-color:#a8433f}.stat-card.is-alert .stat{color:#a8433f}.stat-card.is-alert .label,.stat-card.is-alert .label a{color:#a8433f;font-weight:700}.dashboard .stat-card:not(.is-alert) .stat{color:var(--color-gold)}.dashboard .stat-card:not(.is-alert) .label,.dashboard .stat-card:not(.is-alert) .label a,.dashboard .data-table tbody a{color:#000}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:1.25rem;display:grid}.chart-card{background:var(--color-panel);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:1.1rem 1.25rem 1.25rem;box-shadow:0 1px 2px #0f172a0a}.chart-card--wide{grid-column:span 2}.chart-card h3{color:var(--color-gold);margin:0 0 .85rem;font-size:.9rem;font-weight:700}.chart-card canvas{max-height:15rem}.chart-frame{width:100%;position:relative}.chart-frame>canvas{max-height:none}.lib-intro-row{flex-wrap:wrap;align-items:start;gap:1.25rem;display:flex}.lib-intro-row>.chart-solo{flex:3 26rem;max-width:40rem}.lib-intro-row>#new-regulation{flex:2 20rem}.chart-solo .chart-frame{height:300px}.table-wrap{background:var(--color-panel);border:1px solid var(--color-line);border-radius:var(--radius-card);overflow-x:auto;box-shadow:0 1px 2px #0f172a0a}table.data-table{border-collapse:collapse;width:100%;font-size:.9rem}table.data-table th,table.data-table td{text-align:left;border-bottom:1px solid var(--color-line);vertical-align:top;padding:.65rem .9rem}table.data-table thead th{background:var(--color-line-soft);text-transform:uppercase;letter-spacing:.05em;color:var(--color-gold);white-space:nowrap;font-size:.72rem;font-weight:700}table.data-table tbody tr:last-child td{border-bottom:none}table.data-table tbody tr:hover td{background:var(--color-line-soft)}table.data-table tr.is-overdue td{background:var(--color-danger-soft)}table.data-table tr.is-overdue:hover td{background:#f6e4e4}@supports (color:color-mix(in lab, red, red)){table.data-table tr.is-overdue:hover td{background:color-mix(in srgb, var(--color-danger) 12%, var(--color-panel))}}table.data-table tr.is-muted td{color:var(--color-ink-faint)}.findings-table{min-width:62rem}.findings-table th,.findings-table td{white-space:nowrap}.findings-table td:nth-child(2){white-space:normal;min-width:15rem}.findings-table td:nth-child(3){white-space:normal;min-width:9rem}.findings-table td.actions-cell{white-space:normal}.actions-table{min-width:58rem}.actions-table th,.actions-table td{white-space:nowrap;vertical-align:top}.actions-table td.act-desc{white-space:normal;min-width:16rem;max-width:26rem}.actions-table td.act-status{white-space:normal;min-width:17rem}.actions-table .act-status-row{flex-wrap:wrap;align-items:center;gap:.5rem .65rem;display:flex}.actions-table .act-status-row>form{display:contents}.actions-table .act-status-row .badge{display:inline-flex}.actions-table .act-status-row select{min-width:8rem}dl.kv{grid-template-columns:max-content 1fr;gap:.5rem 1.5rem;margin:0;display:grid}dl.kv dt{text-transform:uppercase;letter-spacing:.04em;color:var(--color-gold);font-size:.8rem;font-weight:700}dl.kv dd{margin:0;font-size:.92rem}.badge{white-space:nowrap;background:var(--color-line-soft);color:var(--color-ink-soft);border:1px solid;border-radius:9999px;align-items:center;gap:.35rem;padding:.15rem .6rem;font-size:.72rem;font-weight:600;line-height:1.5;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.badge{border:1px solid color-mix(in srgb, currentColor 22%, transparent)}}.badge:before{content:"";background:currentColor;border-radius:9999px;width:.4rem;height:.4rem}.badge.no-dot:before{display:none}.badge.sev-high{background:var(--color-danger-soft);color:var(--color-danger)}.badge.sev-medium{background:var(--color-orange-soft);color:var(--color-orange)}.badge.sev-low{background:var(--color-ok-soft);color:var(--color-ok)}.badge.st-not_started{background:var(--color-danger-soft);color:var(--color-danger)}.badge.st-in_progress{background:var(--color-orange-soft);color:var(--color-orange)}.badge.st-pending_verification{background:var(--color-yellow-soft);color:var(--color-yellow)}.badge.st-completed{background:var(--color-ok-soft);color:var(--color-ok)}.badge.st-draft{background:var(--color-line-soft);color:var(--color-ink-soft)}.badge.st-pending_approval{background:var(--color-warn-soft);color:var(--color-warn)}.badge.st-active{background:var(--color-ok-soft);color:var(--color-ok)}.badge.b-approval{background:var(--color-accent-soft);color:var(--color-accent)}.badge.b-stale{background:var(--color-warn-soft);color:var(--color-warn)}.badge.is-overdue{background:var(--color-danger-soft);color:var(--color-danger)}.badge.cs-compliant{background:var(--color-ok-soft);color:var(--color-ok)}.badge.cs-partially_compliant{background:var(--color-warn-soft);color:var(--color-warn)}.badge.cs-non_compliant{background:var(--color-danger-soft);color:var(--color-danger)}.badge.cs-not_applicable{background:var(--color-line-soft);color:var(--color-ink-faint)}.badge.cs-not_assessed{color:var(--color-ink-faint);background:0 0;border-style:dashed}.badge.st-open{background:var(--color-warn-soft);color:var(--color-warn)}.badge.st-resolved{background:var(--color-ok-soft);color:var(--color-ok)}.badge.lt-regulation,.badge.lt-law,.badge.lt-rts,.badge.lt-its,.badge.lt-guideline,.badge.lt-directive{font-weight:700}.badge.lt-regulation{background:var(--color-forest-soft);color:var(--color-forest);border-color:#a8b5a8}@supports (color:color-mix(in lab, red, red)){.badge.lt-regulation{border-color:color-mix(in srgb, var(--color-forest) 45%, white)}}.badge.lt-law{background:var(--color-terracotta-soft);color:var(--color-terracotta);border-color:#d2ae9c}@supports (color:color-mix(in lab, red, red)){.badge.lt-law{border-color:color-mix(in srgb, var(--color-terracotta) 45%, white)}}.badge.lt-rts{color:var(--color-gold);background:#e9dcb4;border-color:#b89b53}.badge.lt-its{background:var(--color-bordeaux-soft);color:var(--color-bordeaux);border-color:#b5828c}.badge.lt-guideline{color:var(--color-ink);background:#dedbd5;border-color:#9a958d}.badge.lt-directive{background:var(--color-slate-soft);color:var(--color-slate);border-color:#7f93a4}.overview-table{table-layout:fixed;width:100%;min-width:58rem}.overview-table th,.overview-table td{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.overview-table .ov-code,.overview-table .ov-reg{width:7%}.overview-table .ov-name{width:12%}.overview-table .ov-status{width:14%;overflow:visible}.overview-table .ov-rec{width:17%}.overview-table .ov-act{width:15%}.overview-table .ov-owner{width:11%}.overview-table .ov-date{width:7%}.overview-table .ov-astatus{width:10%}.overview-table .ov-status .badge{white-space:nowrap;max-width:none}.matrix-table th,.matrix-table td{text-align:center;vertical-align:middle;padding:.4rem .45rem}.matrix-table th.req-col,.matrix-table td.req-col{text-align:left;white-space:normal;min-width:17rem}.matrix-table th.axis-col,.matrix-table td.axis-col{text-align:left;white-space:nowrap;color:var(--color-ink-soft);font-size:.8rem}.matrix-table td.client-col{min-width:8.5rem}.cell-chip{border-radius:.4rem;padding:.35rem .5rem;font-size:.74rem;font-weight:600;line-height:1.3;display:block}.cell-chip:hover{outline:2px solid #7a5f1873;text-decoration:none}@supports (color:color-mix(in lab, red, red)){.cell-chip:hover{outline:2px solid color-mix(in srgb, var(--color-gold) 45%, transparent)}}.cell-chip.cs-compliant{background:var(--color-ok-soft);color:var(--color-ok)}.cell-chip.cs-partially_compliant{background:var(--color-warn-soft);color:var(--color-warn)}.cell-chip.cs-non_compliant{background:var(--color-danger-soft);color:var(--color-danger)}.cell-chip.cs-not_applicable{background:var(--color-line-soft);color:var(--color-ink-faint)}.cell-chip.cs-not_assessed{color:var(--color-ink-faint);border:1px dashed var(--color-line);background:0 0}.cell-flag{color:var(--color-ink-faint);margin-top:.2rem;font-size:.68rem;font-weight:700;display:inline-block}.cell-flag.is-alert{color:var(--color-danger)}.actions-cell{min-width:9rem;max-width:13rem}.progress{flex-direction:column;gap:.3rem;display:flex}.progress-track{background:var(--color-line);border-radius:9999px;height:.4rem;overflow:hidden}.progress-track.is-dashed{border:1px dashed var(--color-ink-faint);background:0 0}.progress-fill{border-radius:inherit;background:var(--color-accent);height:100%}.progress-fill.is-complete{background:var(--color-ok)}.progress-label{color:var(--color-ink-soft);align-items:baseline;gap:.4rem;font-size:.76rem;font-weight:600;line-height:1.3;display:inline-flex}.progress-label:before{content:"";background:var(--color-accent);border-radius:9999px;flex:none;align-self:center;width:.45rem;height:.45rem}.progress-label.is-complete{color:var(--color-ok)}.progress-label.is-complete:before{background:var(--color-ok)}.progress-label.is-none{color:var(--color-ink-faint);font-weight:500}.progress-label.is-none:before{border:1.5px dashed var(--color-ink-faint);background:0 0}.overdue{color:var(--color-danger);font-weight:600}.filters{background:var(--color-panel);border:1px solid var(--color-line);border-radius:var(--radius-card);flex-wrap:wrap;align-items:end;gap:.75rem 1rem;padding:1rem 1.25rem;display:flex;box-shadow:0 1px 2px #0f172a0a}.filters>div{flex-direction:column;display:flex}.filters label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-gold);margin-bottom:.15rem;font-size:.72rem;font-weight:700}.analytics-filters{box-shadow:none;background:0 0;border:0;padding:0}.ms-dd{position:relative}.ms-dd-toggle{cursor:pointer;border:1px solid var(--color-line);background:var(--color-panel);width:14rem;max-width:100%;color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;border-radius:.5rem;padding:.5rem 1.6rem .5rem .65rem;font-size:.9rem;list-style:none;overflow:hidden}.ms-dd-toggle::-webkit-details-marker{display:none}.ms-dd-toggle:after{content:"▾";color:var(--color-ink-faint);font-size:.7rem;position:absolute;right:.6rem}.ms-dd[open] .ms-dd-toggle:after{content:"▴"}.ms-dd-panel{z-index:20;background:var(--color-panel);border:1px solid var(--color-line);border-radius:.5rem;width:18rem;max-width:80vw;margin-top:.25rem;padding:.6rem;position:absolute;box-shadow:0 6px 20px #0f172a1f}.ms-dd-search{width:100%;max-width:none;margin-bottom:.45rem;padding:.35rem .5rem;font-size:.86rem}.ms-dd-list{max-height:15rem;overflow-y:auto}.ms-dd-list ul{margin:0;padding:0;list-style:none}.ms-dd-list li{margin:0}.ms-dd-list label{text-transform:none;letter-spacing:0;color:var(--color-ink);cursor:pointer;align-items:center;gap:.4rem;margin:0;padding:.25rem .3rem;font-size:.88rem;font-weight:400;display:flex}.ms-dd-list label:hover{background:var(--color-line-soft);border-radius:.35rem}.ms-dd-list input[type=checkbox]{width:auto;margin:0}.ms-dd.is-narrow .ms-dd-toggle{width:10rem}.ms-dd.is-narrow .ms-dd-panel{width:12rem}.ms-dd.is-narrow .ms-dd-list{max-height:none;overflow-y:visible}.btn,button,input[type=submit]{background:var(--color-accent);color:var(--color-accent-ink);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:.5rem;justify-content:center;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.88rem;font-weight:600;line-height:1.2;display:inline-flex}.btn:hover,button:hover,input[type=submit]:hover{filter:brightness(1.06);text-decoration:none}.btn:disabled,.btn[disabled],.btn[aria-disabled=true],button:disabled,button[disabled],input[type=submit]:disabled{opacity:.45;filter:grayscale(.4);cursor:not-allowed;box-shadow:none}.btn:disabled:hover,.btn[disabled]:hover,button:disabled:hover,button[disabled]:hover,input[type=submit]:disabled:hover{filter:grayscale(.4)}.btn-ghost{background:var(--color-panel);border-color:var(--color-line);color:var(--color-ink-soft);font-weight:500}.btn-ghost:hover{filter:none;border-color:var(--color-accent);color:var(--color-accent)}.btn-danger{background:var(--color-danger)}.btn-gold{background:var(--color-gold);color:var(--color-accent-ink)}.btn-sm{padding:.3rem .65rem;font-size:.8rem}.btn-nowrap,.col-nowrap{white-space:nowrap}.alert-actions{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.alert-comment>summary{list-style:none}.alert-comment>summary::-webkit-details-marker{display:none}.alert-comment form{flex-direction:column;align-items:flex-start;gap:.4rem;margin:.4rem 0 0;display:flex}.alert-comment textarea{width:16rem;max-width:100%;min-height:4rem}.review-note{vertical-align:middle;color:var(--color-accent);cursor:help;margin-left:.4rem;display:inline-flex}.review-note svg{width:1.05rem;height:1.05rem}.review-note:focus-visible{outline:2px solid #3949ab73}@supports (color:color-mix(in lab, red, red)){.review-note:focus-visible{outline:2px solid color-mix(in srgb, var(--color-accent) 45%, transparent)}}.review-note:focus-visible{outline-offset:2px;border-radius:.25rem}.alerts-table tr[id^=alert-]{scroll-margin-top:5rem}.alerts-table td{overflow-wrap:anywhere}.review-edit{vertical-align:top;white-space:normal;display:inline-block}.review-edit>summary{cursor:pointer;list-style:none}.review-edit>summary::-webkit-details-marker{display:none}.review-edit form{flex-direction:column;align-items:flex-start;gap:.4rem;margin:.4rem 0 0;display:flex}.review-edit textarea{width:15rem;max-width:100%;min-height:4rem}.af-group{white-space:normal;border:0;flex-wrap:wrap;gap:.2rem .8rem;max-width:16rem;margin:0;padding:0;display:flex}.af-group legend{margin-bottom:.2rem;padding:0;font-size:.8rem;font-weight:600}main .af-check{color:var(--color-ink);cursor:pointer;align-items:center;gap:.3rem;margin:0;font-size:.85rem;font-weight:400;display:inline-flex}.af-check input{width:auto;margin:0}.af-locked{margin:0}.review-edit.is-needed{margin-top:.35rem;display:block}.comment-needed{cursor:pointer;color:var(--color-warn);border:1px dashed;border-radius:999px;padding:.05rem .45rem;font-size:.75rem;font-weight:600;display:inline-block}.alert-meta{white-space:normal;flex-wrap:wrap;gap:.25rem;max-width:14rem;margin-top:.35rem;display:flex}.cat-chip{background:#3949ab1a;border-radius:999px;padding:.05rem .45rem;font-size:.72rem;display:inline-block}@supports (color:color-mix(in lab, red, red)){.cat-chip{background:color-mix(in srgb, var(--color-accent) 10%, transparent)}}.cat-chip{color:var(--color-accent)}.messages{flex-direction:column;gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.messages .msg{border:1px solid var(--color-line);background:var(--color-panel);border-left-width:3px;border-radius:.5rem;padding:.7rem 1rem;font-size:.9rem}.messages .success{border-left-color:var(--color-gold);background:var(--color-gold-soft);color:var(--color-gold)}.messages .warning{border-left-color:var(--color-warn);background:var(--color-warn-soft);color:var(--color-warn)}.messages .error{border-left-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger)}.messages .info{border-left-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent)}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.page-head{margin-bottom:1.25rem}.lede{color:var(--color-ink-soft);margin:.25rem 0 0}.muted-note{color:var(--color-ink-soft);font-size:.85rem}.inline-form{margin:0;display:inline}.btn-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.stack{flex-direction:column;gap:1.25rem;display:flex}.activity{margin:0;padding:0;list-style:none}.activity li{border-bottom:1px solid var(--color-line);padding:.5rem 0;font-size:.88rem}.activity li:last-child{border-bottom:none}.form-card>form:not(.btn-row){grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));align-items:start;gap:.15rem 1.75rem;display:grid}.form-card>form:not(.btn-row)>p{min-width:0;margin:.6rem 0}.form-card>form:not(.btn-row)>p:has(textarea),.form-card>form:not(.btn-row)>p:has(ul),.form-card>form:not(.btn-row)>ul.errorlist,.form-card>form:not(.btn-row)>.btn-row,.form-card>form:not(.btn-row)>button,.form-card>form:not(.btn-row)>input[type=submit]{grid-column:1/-1}.form-card>form:not(.btn-row)>p:has(textarea) textarea{max-width:none}.form-card>form:not(.btn-row)>button,.form-card>form:not(.btn-row)>input[type=submit],.form-card>form:not(.btn-row)>.btn-row{justify-self:start;margin-top:.6rem}.sub-nav{border-bottom:1px solid var(--color-line);flex-wrap:wrap;gap:.15rem;margin:0 0 1.5rem;display:flex}.sub-nav a{color:var(--color-ink-soft);border-bottom:2px solid #0000;margin-bottom:-1px;padding:.5rem .9rem;font-size:.88rem;font-weight:600}.sub-nav a:hover{color:var(--color-ink);background:var(--color-line-soft);text-decoration:none}.sub-nav a.is-active{color:var(--color-gold);border-bottom-color:var(--color-gold)}.gap-flag{border-radius:.35rem;padding:.1rem .5rem;font-size:.75rem;font-weight:700;display:inline-block}.gap-flag.gap-yes{background:var(--color-danger-soft);color:var(--color-danger)}.gap-flag.gap-no{background:var(--color-ok-soft);color:var(--color-ok)}.gap-flag.gap-none{color:var(--color-ink-faint);border:1px dashed var(--color-line);background:0 0}.ws-tools{margin-bottom:.5rem}.worksheet{min-width:94rem}.ws-scroll{max-height:75vh;overflow-y:auto}.ws-head,.ws-cells{grid-template-columns:4rem 5.5rem minmax(8rem,1fr) minmax(12rem,1.7fr) minmax(11rem,1.6fr) 4.5rem minmax(10rem,1.4fr) minmax(9rem,1.2fr) 6.5rem 7.5rem 4rem;align-items:start;gap:.9rem;display:grid}.ws-head{z-index:2;background:var(--color-line-soft);text-transform:uppercase;letter-spacing:.05em;color:var(--color-gold);padding:.6rem 1rem;font-size:.72rem;font-weight:700;position:sticky;top:0}details.ws-row{border-top:1px solid var(--color-line);background:var(--color-panel)}details.ws-row:first-of-type{border-top:none}details.ws-row>summary{cursor:pointer;padding:.7rem 1rem;font-size:.86rem;list-style:none}details.ws-row>summary::-webkit-details-marker{display:none}details.ws-row>summary:hover{background:var(--color-line-soft)}details.ws-row[open]>summary{background:var(--color-accent-soft)}.ws-cells .ws-title{color:var(--color-ink);font-weight:600}.ws-cells .ws-name,.ws-cells .ws-narrative,.ws-cells .ws-desc,.ws-cells .ws-comment,.ws-cells .ws-action-desc{color:var(--color-ink-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.82rem;display:-webkit-box;overflow:hidden}.ws-cells .ws-action{flex-direction:column;align-items:flex-start;gap:.25rem;font-size:.82rem;display:flex}.ws-cells .ws-action .badge{font-size:.66rem}.ws-toggle{border:1px solid var(--color-line);color:var(--color-accent);border-radius:.4rem;padding:.2rem .55rem;font-size:.76rem;font-weight:600;display:inline-block}details.ws-row[open] .ws-toggle{background:var(--color-panel)}.ws-editor{border-top:1px dashed var(--color-line);background:#f9fafc;padding:1rem 1.25rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.ws-editor{background:color-mix(in srgb, var(--color-accent) 3%, var(--color-panel))}}.ws-editor{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:start;gap:.9rem 1.25rem;display:grid}.ws-editor .ws-field-wide,.ws-editor .ws-save{grid-column:1/-1}.ws-editor label{display:block}.ws-editor .req-star{color:var(--color-danger);font-weight:700}.ws-editor [data-ws-freeze].is-frozen{opacity:.5}.ws-editor [data-ws-freeze].is-frozen :is(input,select,textarea){background:var(--color-line-soft);cursor:not-allowed}.ws-editor select,.ws-editor input[type=date],.ws-editor textarea{width:100%;max-width:none}.lib-archived-divider{color:var(--color-ink-faint);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.9rem;margin:.4rem 0 -.35rem;font-size:.74rem;font-weight:700;display:flex}.lib-archived-divider:before,.lib-archived-divider:after{content:"";border-top:1px solid var(--color-line);flex:1}details.lib-reg>summary{align-items:center;gap:.75rem;display:flex}details.lib-reg>summary::-webkit-details-marker{display:none}.lib-reg-title{flex:auto;min-width:0}.lib-reg-menu{border:1px solid var(--color-line);background:var(--color-panel);min-width:1.9rem;height:1.9rem;color:var(--color-ink-soft);cursor:pointer;border-radius:.4rem;flex:none;justify-content:center;align-items:center;padding:0 .55rem;font-size:1.05rem;font-weight:700;line-height:1;display:inline-flex}.lib-reg-menu.is-text{font-size:.8rem}.lib-reg-menu:hover{filter:none;border-color:var(--color-gold);color:var(--color-gold);text-decoration:none}details.lib-reg.is-archived>summary .lib-reg-title{opacity:.7}.lib-pending{border:1px solid #c6a680;margin:.85rem 0 0;padding:.85rem 1rem}@supports (color:color-mix(in lab, red, red)){.lib-pending{border:1px solid color-mix(in srgb, var(--color-warn) 40%, var(--color-line))}}.lib-pending{background:var(--color-warn-soft);border-left-width:3px;border-radius:.5rem}.lib-pending p{margin:0 0 .4rem;font-size:.9rem}.lib-pending p:last-of-type{margin-bottom:.6rem}.lib-pending input[type=text]{padding:.35rem .55rem}.lib-reg-admin{border-top:1px dashed var(--color-line);margin-top:1rem;padding-top:.85rem}.lib-reg-wrap{flex-direction:column;display:flex}.lib-subcount{white-space:nowrap}.lib-children{border-left:2px solid #bfb499;margin:.5rem 0 0 1.5rem;padding-left:1rem}@supports (color:color-mix(in lab, red, red)){.lib-children{border-left:2px solid color-mix(in srgb, var(--color-gold) 30%, var(--color-line))}}.lib-children-list{flex-direction:column;gap:.6rem;margin-top:.5rem;display:flex}.lib-children-head{text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.7rem}details.lib-children>summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;list-style:none;display:flex}details.lib-children>summary::-webkit-details-marker{display:none}details.lib-children>summary:before{content:"−";border:1px solid;border-radius:.2rem;justify-content:center;align-items:center;width:.95rem;height:.95rem;font-weight:700;line-height:1;display:inline-flex}details.lib-children:not([open])>summary:before{content:"+"}details.lib-children>summary:hover{color:var(--color-gold)}details.lib-reg--child{background:#faf9f6}@supports (color:color-mix(in lab, red, red)){details.lib-reg--child{background:color-mix(in srgb, var(--color-gold) 4%, var(--color-panel))}}.lib-tree{border-left:2px solid var(--color-line);margin:.6rem 0 0 1.25rem;padding-left:1rem}.lib-tree-list,.lib-tree-flat{flex-direction:column;gap:.6rem;margin-top:.5rem;display:flex}.lib-tree-head{text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.7rem}details.lib-tree>summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;list-style:none;display:flex}details.lib-tree>summary::-webkit-details-marker{display:none}details.lib-tree>summary:before{content:"−";border:1px solid;border-radius:.2rem;justify-content:center;align-items:center;width:.95rem;height:.95rem;font-weight:700;line-height:1;display:inline-flex}details.lib-tree:not([open])>summary:before{content:"+"}details.lib-tree>summary:hover{color:var(--color-ink-soft)}.lib-reqs{border-top:1px solid var(--color-line);margin-top:.85rem}.lib-reqs[hidden]{display:none}.lib-reqs-tools{margin:.85rem 0 .15rem}details.lib-req{border-bottom:1px solid var(--color-line)}details.lib-req>summary{cursor:pointer;grid-template-columns:8rem 7rem 11rem 1fr auto;align-items:start;gap:.9rem;padding:.6rem .25rem;font-size:.86rem;list-style:none;display:grid}details.lib-req>summary::-webkit-details-marker{display:none}details.lib-req>summary:hover{background:var(--color-line-soft)}details.lib-req[open]>summary{background:var(--color-accent-soft)}.lib-req-code{font-weight:700}.lib-req-para{color:var(--color-ink-soft)}.lib-req-name{color:var(--color-ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.lib-req-desc{color:var(--color-ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}details.lib-req.is-archived>summary{opacity:.6}.lib-req-edit{border:1px solid var(--color-line);color:var(--color-accent);cursor:pointer;background:0 0;border-radius:.4rem;width:auto;padding:.15rem .5rem;font-size:.74rem;font-weight:600}.lib-req-actions{white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.lib-req-actions form{margin:0;display:inline-flex}.lib-req-actionbtn{border:1px solid var(--color-line);color:var(--color-ink-soft);cursor:pointer;background:0 0;border-radius:.4rem;width:auto;padding:.15rem .5rem;font-size:.74rem;font-weight:600}.lib-req-actionbtn:hover{color:var(--color-danger);border-color:var(--color-danger)}.lib-req-body{border-top:1px dashed var(--color-line);background:#f9fafc;padding:.9rem .25rem 1.1rem}@supports (color:color-mix(in lab, red, red)){.lib-req-body{background:color-mix(in srgb, var(--color-accent) 3%, var(--color-panel))}}.lib-req-fulltext{white-space:normal;margin:0}.lib-req-viewmeta{margin:.5rem 0 0}.lib-req-editform[hidden]{display:none}.lib-add{border-top:1px solid var(--color-line);margin-top:1rem;padding-top:1rem}.lib-add-title{color:var(--color-gold);margin:0 0 .5rem}.lib-edit-grid{grid-template-columns:9rem 10rem 1fr;align-items:start;gap:.5rem 1.25rem;display:grid}.lib-add-grid{grid-template-columns:minmax(14rem,22rem);align-items:start;gap:.5rem 1.25rem;display:grid}.lib-edit-grid .lib-add-desc,.lib-add-grid .lib-add-desc,.lib-edit-actions{grid-column:1/-1}.lib-edit-grid input,.lib-edit-grid textarea,.lib-add-grid input,.lib-add-grid textarea{width:100%;max-width:none}@media (max-width:55rem){details.lib-req>summary{grid-template-columns:1fr auto}.lib-req-para,.lib-req-name,.lib-req-desc{grid-column:1/-1}.lib-edit-grid,.lib-add-grid{grid-template-columns:1fr}}.lib-add-tools{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1rem;display:flex}.lib-source-docs{border-top:1px solid var(--color-line);margin-top:1.1rem;padding-top:.9rem}.lib-source-docs--top{border-top:0;border-bottom:1px solid var(--color-line);margin-top:.4rem;margin-bottom:.4rem;padding-top:0;padding-bottom:.9rem}dialog.lib-imp-modal{border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-panel);width:min(680px,92vw);max-height:85vh;color:var(--color-ink);padding:1.5rem 1.6rem 1.6rem;overflow:auto}dialog.lib-imp-modal::backdrop{background:#29252473}.lib-imp-modal h2{margin:0 2rem .75rem 0}.lib-imp-x{color:var(--color-ink-faint);background:0 0;border:0;padding:.1rem .5rem;font-size:1.25rem;line-height:1;position:absolute;top:.7rem;right:.8rem}.lib-imp-x:hover{filter:none;color:var(--color-ink)}.lib-imp-eyebrow{text-transform:uppercase;letter-spacing:.05em;color:var(--color-gold);margin:.9rem 0 .3rem;font-size:.72rem;font-weight:700}.lib-imp-rules{color:var(--color-ink-soft);margin:.6rem 0 .9rem;padding-left:1.1rem;font-size:.86rem}.lib-imp-rules li{margin:.2rem 0}.lib-imp-modal hr{border:0;border-top:1px solid var(--color-line);margin:1rem 0}.lib-imp-msg{border-left:3px solid var(--color-line);background:var(--color-line-soft);border-radius:.5rem;margin:0 0 .5rem;padding:.55rem .8rem;font-size:.86rem}.lib-imp-msg.is-note{color:var(--color-ink-soft)}.lib-imp-msg.is-warn{border-left-color:var(--color-warn);background:var(--color-warn-soft);color:var(--color-warn)}.lib-imp-msg.is-error{border-left-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger)}.lib-imp-result h3{color:var(--color-gold);margin:.4rem 0 .6rem;font-size:.95rem}.lib-imp-result .data-table{font-size:.82rem}dialog.cat-modal{border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-panel);width:min(600px,92vw);max-height:85vh;color:var(--color-ink);padding:1.5rem 1.6rem 1.6rem;overflow:auto}dialog.cat-modal::backdrop{background:#29252473}.cat-modal h2{margin:0 2rem .4rem 0}.cat-modal-x{color:var(--color-ink-faint);background:0 0;border:0;padding:.1rem .5rem;font-size:1.25rem;line-height:1;position:absolute;top:.7rem;right:.8rem}.cat-modal-x:hover{filter:none;color:var(--color-ink)}.cat-list{border-top:1px solid var(--color-line);margin:.9rem 0 0;padding:0;list-style:none}.cat-row{border-bottom:1px solid var(--color-line);padding:.6rem 0}.cat-row-main{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.cat-row .cat-name{overflow-wrap:anywhere;flex:0 auto;min-width:0;font-weight:600}.cat-row .cat-count{white-space:nowrap;flex-shrink:0;margin-right:auto}.cat-row [data-cat-rename],.cat-row [data-cat-delete]{flex-shrink:0}.cat-row input[type=text]{flex:12rem}.cat-danger{color:var(--color-danger)}.cat-danger:hover{filter:none;border-color:var(--color-danger)}.cat-confirm{border-left:3px solid var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger);border-radius:.5rem;margin-top:.55rem;padding:.6rem .8rem;font-size:.86rem}.cat-confirm .btn-row{margin-top:.5rem}.cat-msg{color:var(--color-danger);margin:.5rem 0 0;font-size:.84rem}.cat-msg.is-ok{color:var(--color-ok)}.board-status{border-left:3px solid var(--color-ok);background:var(--color-ok-soft);color:var(--color-ok);border-radius:.5rem;margin:0 0 .8rem;padding:.55rem .8rem;font-size:.86rem}.board-status:empty{display:none}@media (max-width:60rem){.app-body:has(>.app-container.has-board){align-self:stretch}}.board-status.is-error{border-left-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger)}.board{align-items:flex-start;gap:.9rem;padding-bottom:1rem;display:flex;overflow-x:auto}.board-col{border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-line-soft);flex:0 0 17.5rem;padding:.6rem}.board-col.is-done{background:#eaf3eb}@supports (color:color-mix(in lab, red, red)){.board-col.is-done{background:color-mix(in srgb, var(--color-ok-soft) 60%, var(--color-line-soft))}}.board-col.is-cancelled{background:#dfdcd7}@supports (color:color-mix(in lab, red, red)){.board-col.is-cancelled{background:color-mix(in srgb, var(--color-ink-faint) 18%, var(--color-line-soft))}}.board-col.is-cancelled{border-color:#c0bcb4}@supports (color:color-mix(in lab, red, red)){.board-col.is-cancelled{border-color:color-mix(in srgb, var(--color-ink-faint) 35%, var(--color-line))}}.board-col.is-cancelled .board-col-head h2{color:var(--color-ink-faint)}.board-col.is-inactive{opacity:.8;border-style:dashed}.board-col-head{justify-content:space-between;align-items:center;gap:.5rem;padding:.1rem .3rem .55rem;display:flex}.board-col-head h2{letter-spacing:.01em;color:var(--color-ink-soft);margin:0;font-size:.82rem;font-weight:700}.board-count{background:var(--color-panel);border:1px solid var(--color-line);text-align:center;min-width:1.5rem;color:var(--color-ink-soft);border-radius:9999px;padding:.05rem .5rem;font-size:.74rem;font-weight:600}.board-list{border-radius:.5rem;flex-direction:column;gap:.55rem;min-height:4.5rem;margin:0;padding:0;list-style:none;display:flex}.board-list:not(:has(.task-card)){border:1px dashed var(--color-line)}.task-card{border:1px solid var(--color-line);background:var(--color-panel);cursor:grab;border-radius:.6rem;padding:.65rem .7rem;box-shadow:0 1px 2px #0f172a0d}.task-card[data-locked]{cursor:default}.task-card.is-overdue{border-left:3px solid var(--color-danger)}.task-card.sortable-ghost{opacity:.4}.task-card.sortable-chosen{box-shadow:0 6px 18px #0f172a2e}.task-card.is-saving{opacity:.6}.task-card-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.task-ref{letter-spacing:.02em;color:var(--color-ink-faint);font-size:.72rem;font-weight:600}.task-title{color:var(--color-ink);overflow-wrap:anywhere;margin:.3rem 0 0;font-size:.9rem;font-weight:600;line-height:1.35}.task-meta,.task-people,.task-chips{color:var(--color-ink-soft);flex-wrap:wrap;gap:.25rem .6rem;margin:.4rem 0 0;font-size:.76rem;display:flex}.task-reviewer{color:var(--color-ink-faint)}.task-chip{background:var(--color-line-soft);border:1px solid var(--color-line);color:var(--color-ink-soft);border-radius:9999px;padding:.05rem .5rem;font-size:.7rem}.task-chip.is-category{background:var(--color-gold-soft);color:var(--color-gold);border-color:#0000;font-weight:600}.badge.pr-medium{background:var(--color-accent-soft);color:var(--color-accent)}.badge.pr-high{background:var(--color-orange-soft);color:var(--color-orange)}.badge.pr-urgent{background:var(--color-danger-soft);color:var(--color-danger)}.card-move{margin-top:.5rem;font-size:.76rem}.card-move>summary{cursor:pointer;color:var(--color-ink-faint)}.card-move-form{gap:.4rem;margin:.4rem 0 0;display:flex}.card-move-form select{flex:auto;min-width:0;font-size:.78rem}.quick-create{border:1px solid var(--color-line);border-radius:var(--radius-card);background:var(--color-panel);flex-wrap:wrap;align-items:flex-end;gap:.75rem;padding:.85rem 1rem;display:flex}.quick-create label{color:var(--color-ink-soft);margin-bottom:.2rem;font-size:.74rem;font-weight:600;display:block}.quick-create .qc-title{flex:2 16rem}.quick-create .qc-project{flex:13rem}.quick-create .qc-title input,.quick-create .qc-project select{width:100%}.task-table .task-ref-cell{white-space:nowrap;color:var(--color-ink-faint);font-size:.78rem;font-weight:600}.task-row-title{font-weight:600}.task-chips-inline{vertical-align:middle;flex-wrap:wrap;gap:.25rem;margin-left:.4rem;display:inline-flex}.task-space{display:block}.task-due.is-late{color:var(--color-danger);font-weight:600}.pager{gap:.5rem;margin-top:.75rem;display:flex}#subtasks .quick-create{margin-top:.9rem}.task-title a,a.task-row-title{color:inherit;text-decoration:none}.task-title a:hover,a.task-row-title:hover{text-decoration:underline}.task-ref-title{letter-spacing:.03em;color:var(--color-ink-faint);margin-right:.4rem;font-size:.6em;font-weight:600}.task-head-badges{flex-wrap:wrap;align-items:center;gap:.4rem;margin:.5rem 0 0;display:flex}.task-detail{grid-template-columns:minmax(0,2fr) minmax(17rem,1fr);align-items:start;gap:1.25rem;display:grid}.task-main,.task-side{flex-direction:column;gap:1.25rem;min-width:0;display:flex}@media (max-width:60rem){.task-detail{grid-template-columns:minmax(0,1fr)}}.detail-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem;display:grid}.detail-form .is-wide{grid-column:1/-1}.field{flex-direction:column;gap:.25rem;min-width:0;display:flex}.field label{color:var(--color-ink-soft);font-size:.74rem;font-weight:600}.field.is-check{flex-direction:row;align-items:center;gap:.5rem}.field input[type=text],.field input[type=number],.field select,.field textarea{width:100%}.field .help{color:var(--color-ink-faint);font-size:.74rem}.field-error{color:var(--color-danger);font-size:.8rem;font-weight:600}.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--color-danger)}.form-errors{border-left:3px solid var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger);border-radius:.5rem;grid-column:1/-1;padding:.5rem .75rem;font-size:.86rem}.form-errors ul{margin:0;padding-left:1rem}.stack-form{flex-direction:column;gap:.75rem;margin-top:.9rem;display:flex}.detail-list{grid-template-columns:max-content minmax(0,1fr);gap:.4rem 1.25rem;margin:.5rem 0 0;display:grid}.detail-list dt{color:var(--color-ink-soft);font-size:.78rem;font-weight:600}.detail-list dd{overflow-wrap:anywhere;margin:0}.comment{border-bottom:1px solid var(--color-line);padding:.7rem 0}.comment:last-of-type{border-bottom:none}.comment header{align-items:baseline;gap:.6rem;display:flex}.comment-body{overflow-wrap:anywhere;margin-top:.25rem}.attachment-row{flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;margin:.35rem 0;display:flex}.inline-status{gap:.4rem;margin:.6rem 0 0;display:flex}.inline-status select{flex:auto;min-width:0}.status-history{flex-direction:column;gap:.5rem;margin:.5rem 0 0;padding:0;font-size:.86rem;list-style:none;display:flex}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:1rem;display:grid}.kpi{background:var(--color-panel);border:1px solid var(--color-line);border-radius:var(--radius-card);color:var(--color-ink);flex-direction:column;gap:.15rem;padding:.9rem 1.1rem;text-decoration:none;display:flex;box-shadow:0 1px 2px #0f172a0a}a.kpi:hover{border-color:var(--color-gold)}.kpi-value{font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:700;line-height:1.1}.kpi-label{color:var(--color-ink-soft);font-size:.78rem;font-weight:600}.kpi.is-alarm .kpi-value{color:var(--color-danger)}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr))}.cal-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;margin-bottom:.6rem;display:flex}.cal-nav{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.cal-month{margin:0 0 0 .6rem;font-size:1.05rem}.cal-filters{flex-wrap:wrap;align-items:center;gap:.5rem .9rem;display:flex}.cal-filters label{color:var(--color-ink-soft);align-items:center;gap:.4rem;margin:0;font-size:.8rem;display:flex}.cal-filters select{width:auto;padding:.3rem .5rem;font-size:.85rem}.cal-filters input[type=checkbox]{accent-color:#c28824;width:auto}.cal-scroll{overflow-x:auto}.cal-grid{border:1px solid var(--color-line);background:var(--color-line);border-radius:.5rem;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;min-width:44rem;display:grid;overflow:hidden}.cal-dow{background:var(--color-line-soft);letter-spacing:.06em;text-transform:uppercase;color:var(--color-gold);padding:.35rem .5rem;font-size:.72rem;font-weight:700}.cal-day{background:var(--color-panel);flex-direction:column;gap:.2rem;min-width:0;min-height:6.6rem;padding:.3rem .35rem .4rem;display:flex}.cal-day.is-other{background:#faf9f6}.cal-day.is-other .cal-date{color:#b9b4aa}.cal-date{color:var(--color-ink-soft);border-radius:999px;align-self:flex-start;padding:.05rem .4rem;font-size:.78rem;font-weight:600}.cal-day.is-today{background:#fdf8ea;box-shadow:inset 0 0 0 2px #c28824}.cal-day.is-today .cal-date{color:#fff;background:#c28824}.cal-chip{white-space:nowrap;text-overflow:ellipsis;color:#292524;border-radius:.3rem;padding:.14rem .4rem;font-size:.74rem;line-height:1.25;text-decoration:none;display:block;overflow:hidden}.cal-chip:hover{filter:brightness(.94);text-decoration:none}.cal-chip b{font-weight:700}.cal-chip.is-overdue{background:var(--color-danger);color:#fff}.cal-chip.is-soon{background:#c28824}.cal-chip.is-later{background:#d9b66a}.cal-chip.is-done{color:#57534e;background:#c9c9c9;text-decoration:line-through}.cal-more{color:var(--color-gold);padding-left:.2rem;font-size:.74rem;font-weight:600;text-decoration:underline}.cal-legend{color:var(--color-ink-soft);flex-wrap:wrap;align-items:center;gap:.4rem 1.1rem;margin:.65rem 0 0;font-size:.78rem;display:flex}.cal-key{vertical-align:-1px;border-radius:.2rem;width:.8rem;height:.8rem;margin-right:.35rem;display:inline-block}.cal-key.is-overdue{background:var(--color-danger)}.cal-key.is-soon{background:#c28824}.cal-key.is-later{background:#d9b66a}.cal-key.is-done{background:#c9c9c9}.cpd-card{background:var(--color-panel);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:1rem 1.2rem 1.1rem;box-shadow:0 1px 2px #0f172a0a}.cpd-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.cpd-title{color:var(--color-ink);margin:0;font-size:1.05rem}.cpd-title .muted-note{font-weight:400}.cpd-meta{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.6rem 1.2rem;margin:.85rem 0 .2rem;font-size:.86rem;display:grid}.cpd-meta dt{letter-spacing:.05em;text-transform:uppercase;color:var(--color-gold);font-size:.68rem;font-weight:700}.cpd-meta dd{margin:0}.cpd-late{color:var(--color-danger);font-weight:600}.cpd-progress{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.9rem;margin-top:.7rem;display:grid}.cpd-progress.is-compact{grid-template-columns:minmax(4rem,1fr) auto;gap:.6rem;margin-top:0}.cpd-num{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--color-ink-soft);font-size:.86rem}.cpd-bar{background:#ece8df;border-radius:999px;height:.7rem;overflow:hidden}.cpd-bar>span{border-radius:999px;height:100%;display:block}.cpd-bar.is-met>span,.cpd-pill.is-met{background:var(--color-ok)}.cpd-bar.is-on_track>span,.cpd-pill.is-on_track{background:#d9b66a}.cpd-bar.is-at_risk>span,.cpd-pill.is-at_risk{background:#c28824}.cpd-bar.is-overdue>span,.cpd-pill.is-overdue{background:var(--color-danger)}.cpd-pill{white-space:nowrap;color:#292524;border-radius:999px;padding:.12rem .55rem;font-size:.72rem;font-weight:700;display:inline-block}.cpd-pill.is-met,.cpd-pill.is-overdue{color:#fff}.cpd-pill.is-fee-paid{background:var(--color-ok);color:#fff}.cpd-pill.is-fee-unpaid{background:#c9c9c9}.cpd-pill.is-fee-unpaid.is-late{background:var(--color-danger);color:#fff}.cpd-pill.is-fee-none{box-shadow:inset 0 0 0 1px var(--color-line);color:var(--color-ink-soft);background:0 0;font-weight:600}.cpd-fee{flex-wrap:wrap;align-items:center;gap:.3rem .5rem;display:flex}.kpi-sub{color:var(--color-ink-soft);margin-top:.15rem;font-size:.78rem;display:block}.cpd-subhead{margin:1.1rem 0 .4rem;font-size:.9rem}.cpd-add{margin:.7rem 0 0}.cpd-previous{border-top:1px solid var(--color-line-soft);margin-top:1rem;padding-top:.8rem;font-size:.9rem}.cpd-previous>summary{cursor:pointer;color:var(--color-ink-soft);font-weight:600}.cpd-earlier{border:1px solid var(--color-line-soft);border-radius:.5rem;margin-top:.9rem;padding:.8rem .9rem}.cpd-earlier-head{align-items:center;gap:.6rem;margin:0;display:flex}.cpd-delete,a.cpd-delete{color:var(--color-danger);font-weight:700}.btn-ghost.cpd-delete:hover{border-color:var(--color-danger);color:var(--color-danger)}dialog.cpd-dialog{border:1px solid var(--color-line);border-top:4px solid var(--color-danger);border-radius:var(--radius-card);background:var(--color-panel);width:min(30rem,100vw - 2rem);color:var(--color-ink);margin:auto;padding:1.3rem 1.5rem 1.4rem;box-shadow:0 18px 50px #29252447}dialog.cpd-dialog::backdrop{background:#29252473}.cpd-dialog h2{color:var(--color-danger);margin:0 0 .7rem;font-size:1.1rem}.cpd-dialog p{margin:0 0 .7rem}.cpd-dialog .btn-row{margin-top:1.1rem}.cpd-dialog-what{font-weight:700}.cpd-warning{border-top:4px solid var(--color-danger)}.cpd-cancel,button.cpd-cancel,a.btn.cpd-cancel{color:#292524;background:#e7e5e4;border-color:#d6d3d1}.cpd-col-progress{width:22%}.chart-table{margin-top:.75rem;font-size:.82rem}.chart-table>summary{cursor:pointer;color:var(--color-ink-soft)}.data-table th.num,.data-table td.num{text-align:right;font-variant-numeric:tabular-nums}}@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start-30{inset-inline-start:calc(var(--spacing) * 30)}.end-20{inset-inline-end:calc(var(--spacing) * 20)}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.select-all{-webkit-user-select:all;user-select:all}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}