/* KARL Folder design system */
:root {
  color-scheme: light;
  --ink-950:#0b1220;--ink-900:#111b2e;--ink-800:#1d2a40;--ink-700:#33435d;
  --ink-600:#4d5f79;--ink-500:#687891;--ink-300:#b8c3d2;--ink-200:#d5dde8;
  --ink-100:#e9eef5;--ink-50:#f5f7fa;--surface:#fff;--surface-raised:#fff;
  --surface-subtle:#f8fafc;--canvas:#edf1f6;--brand-700:#244ea2;--brand-600:#2d5fbd;
  --brand-500:#3d72d1;--brand-100:#dce9ff;--brand-50:#f0f6ff;--cyan-500:#14a3ba;
  --success-700:#196b48;--success-100:#d8f3e6;--warning-700:#8a4d0f;--warning-100:#ffedc7;
  --danger-700:#a62a35;--danger-100:#ffe0e3;--radius-sm:.45rem;--radius-md:.75rem;
  --radius-lg:1rem;--radius-xl:1.35rem;--shadow-sm:0 1px 2px rgba(11,18,32,.05),0 1px 4px rgba(11,18,32,.04);
  --shadow-md:0 12px 32px rgba(11,18,32,.09);--sidebar-width:16.5rem;--content-max:88rem;
  --space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--ease:180ms ease;
}
@media (prefers-color-scheme:dark){:root{color-scheme:dark;--ink-950:#f3f7fd;--ink-900:#e5edf8;--ink-800:#d5e0ee;--ink-700:#b7c5d8;--ink-600:#91a2b9;--ink-500:#7c8da5;--ink-300:#52627a;--ink-200:#34445b;--ink-100:#27364c;--ink-50:#1d2a3e;--surface:#111b2a;--surface-raised:#172337;--surface-subtle:#142033;--canvas:#0c1421;--brand-700:#91b7ff;--brand-600:#78a7ff;--brand-500:#6194f2;--brand-100:#213c67;--brand-50:#172c4c;--success-700:#73d7a9;--success-100:#183d31;--warning-700:#ffc66d;--warning-100:#493719;--danger-700:#ff929d;--danger-100:#4e222a;--shadow-sm:0 1px 2px rgba(0,0,0,.2);--shadow-md:0 16px 42px rgba(0,0,0,.28)}}
*,*::before,*::after{box-sizing:border-box}html{min-width:20rem;scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--canvas);color:var(--ink-900);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--brand-700);text-underline-offset:.18em}a:hover{color:var(--brand-600)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:.2rem solid color-mix(in srgb,var(--brand-500) 55%,transparent);outline-offset:.15rem}
.skip-link{position:fixed;z-index:3000;top:.5rem;left:.5rem;transform:translateY(-180%);padding:.65rem 1rem;border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md);font-weight:700}.skip-link:focus{transform:translateY(0)}
.app-shell{min-height:100vh;padding-left:var(--sidebar-width)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:100;width:var(--sidebar-width);display:flex;flex-direction:column;padding:var(--space-5);overflow-y:auto;color:#eaf1ff;background:radial-gradient(circle at 10% 4%,rgba(61,114,209,.35),transparent 32%),linear-gradient(165deg,#101d33 0%,#0b1425 68%,#101b2d 100%);border-right:1px solid rgba(255,255,255,.08)}
.brand{display:flex;align-items:center;gap:.8rem;color:#fff;text-decoration:none;font-weight:780;letter-spacing:-.02em;font-size:1.12rem}.brand:hover{color:#fff}.brand-mark{width:2.35rem;height:2.35rem;display:grid;place-items:center;border-radius:.75rem;color:#fff;background:linear-gradient(145deg,var(--brand-500),var(--cyan-500));box-shadow:0 .5rem 1.4rem rgba(20,163,186,.2);font-weight:850}.brand-text small{display:block;color:#9fb0c8;font-size:.72rem;font-weight:550;letter-spacing:.04em}
.primary-nav{margin-top:2.25rem}.primary-nav ul{margin:0;padding:0;list-style:none}.nav-label{margin:0 0 .55rem .7rem;color:#7f91aa;font-size:.72rem;font-weight:750;letter-spacing:.11em;text-transform:uppercase}.primary-nav a{display:flex;align-items:center;gap:.75rem;min-height:2.75rem;margin:.2rem 0;padding:.65rem .8rem;border-radius:var(--radius-md);color:#c7d3e5;text-decoration:none;font-weight:630;transition:color var(--ease),background var(--ease),transform var(--ease)}.primary-nav a:hover{color:#fff;background:rgba(255,255,255,.08);transform:translateX(.12rem)}.primary-nav a[aria-current=page]{color:#fff;background:rgba(61,114,209,.24);box-shadow:inset 0 0 0 1px rgba(121,164,255,.18)}.nav-icon{width:1.25rem;height:1.25rem;flex:0 0 auto}.sidebar-foot{margin-top:auto;padding:var(--space-4);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);background:rgba(255,255,255,.045)}.sidebar-foot strong{display:block;color:#fff;font-size:.82rem}.sidebar-foot p{margin:.25rem 0 0;color:#91a2ba;font-size:.78rem}.system-dot{display:inline-block;width:.48rem;height:.48rem;margin-right:.35rem;border-radius:50%;background:#56d69e;box-shadow:0 0 0 .2rem rgba(86,214,158,.12)}
.workspace{min-width:0}.topbar{position:sticky;top:0;z-index:80;min-height:4.3rem;display:flex;align-items:center;gap:var(--space-4);padding:.7rem clamp(1rem,3vw,2.25rem);border-bottom:1px solid var(--ink-200);background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(14px)}.topbar-eyebrow{display:block;color:var(--ink-500);font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.topbar-title{display:block;color:var(--ink-900);font-size:.95rem;font-weight:700}.actor-form{margin:0 0 0 auto!important;padding:0!important;max-width:none!important;display:flex!important;flex-direction:row!important;align-items:center;gap:var(--space-2);border:0!important;background:transparent!important;box-shadow:none!important}.actor-form label{position:relative;margin:0}.actor-form label>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.actor-form input{width:min(26vw,18rem);min-height:2.45rem;padding-left:2.25rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem}.actor-form label::before{content:"●";position:absolute;z-index:1;left:.85rem;top:.62rem;color:var(--success-700);font-size:.75rem}
main{width:100%;max-width:none;margin:0 auto;padding:clamp(1.25rem,3vw,2.5rem)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-8)}.page-heading{min-width:0}.eyebrow{margin:0 0 .35rem;color:var(--brand-700);font-size:.76rem;font-weight:780;letter-spacing:.1em;text-transform:uppercase}h1,h2,h3{color:var(--ink-950);line-height:1.18;letter-spacing:-.025em}h1{margin:0;font-size:clamp(1.75rem,3.6vw,2.55rem);font-weight:790}h2{margin:2.2rem 0 .9rem;font-size:clamp(1.2rem,2vw,1.45rem)}h3{margin:0;font-size:1rem}.lede{max-width:46rem;margin:.65rem 0 0;color:var(--ink-600);font-size:1.02rem}.breadcrumb{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .85rem;color:var(--ink-500);font-size:.82rem}.breadcrumb a{color:inherit;text-decoration:none}.breadcrumb a:hover{color:var(--brand-700);text-decoration:underline}.breadcrumb span[aria-hidden=true]{color:var(--ink-300)}
.actions{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem}.button,button{min-height:2.65rem;width:fit-content;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1rem;border:1px solid transparent;border-radius:var(--radius-md);background:var(--brand-600);color:#fff;box-shadow:0 .25rem .65rem rgba(45,95,189,.16);cursor:pointer;font:inherit;font-weight:690;line-height:1.1;text-decoration:none;transition:transform var(--ease),background var(--ease),box-shadow var(--ease)}.button:hover,button:hover{color:#fff;background:var(--brand-700);box-shadow:0 .45rem 1rem rgba(45,95,189,.2);transform:translateY(-1px)}.button-secondary{border-color:var(--ink-200);background:var(--surface);color:var(--ink-800);box-shadow:var(--shadow-sm)}.button-secondary:hover{border-color:var(--ink-300);background:var(--ink-50);color:var(--ink-950)}.button-tertiary{padding-inline:.55rem;background:transparent;color:var(--brand-700);box-shadow:none}.button-tertiary:hover{background:var(--brand-50);color:var(--brand-700);box-shadow:none}.button-danger,.danger-button{border-color:color-mix(in srgb,var(--danger-700) 24%,transparent);background:var(--danger-100);color:var(--danger-700);box-shadow:none}.button-danger:hover,.danger-button:hover{background:var(--danger-700);color:#fff}.button-sm{min-height:2.2rem;padding:.45rem .7rem;font-size:.84rem}
.panel,form:not(.actor-form):not(.inline-form):not(.filter-bar){max-width:44rem;margin:1rem 0;padding:clamp(1.15rem,2.6vw,1.7rem);border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}form:not(.actor-form):not(.inline-form):not(.filter-bar){display:flex;flex-direction:column;gap:1rem}.form-header{margin-bottom:.25rem}.form-header p{margin:.35rem 0 0;color:var(--ink-600)}.form-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.35rem}button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}label{display:flex;flex-direction:column;gap:.38rem;color:var(--ink-800);font-size:.9rem;font-weight:670}.field-help{color:var(--ink-500);font-size:.78rem;font-weight:450}input,select,textarea{width:100%;min-height:2.75rem;padding:.65rem .75rem;border:1px solid var(--ink-300);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--ink-900);font:inherit;font-weight:480;transition:border-color var(--ease),box-shadow var(--ease)}input:hover,select:hover,textarea:hover{border-color:var(--ink-500)}input:focus,select:focus,textarea:focus{border-color:var(--brand-500);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--brand-500) 14%,transparent)}textarea{min-height:8rem;resize:vertical}input[type=file]{min-height:4.5rem;padding:1rem;border-style:dashed;background:var(--brand-50);cursor:pointer}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin:0 0 var(--space-6)}.stat-card{min-width:0;padding:var(--space-5);border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.stat-label{display:block;color:var(--ink-500);font-size:.78rem;font-weight:720;letter-spacing:.04em;text-transform:uppercase}.stat-value{display:block;margin-top:.35rem;color:var(--ink-950);font-size:1.55rem;font-weight:790;letter-spacing:-.04em}.stat-note{display:block;margin-top:.2rem;overflow:hidden;color:var(--ink-500);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.split-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,.38fr);gap:var(--space-6);align-items:start}.stack{display:grid;gap:var(--space-4)}
.stat-value-text{font-size:1rem;margin-top:.7rem}.inline-form{display:inline;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.table-panel{margin:1rem 0;overflow:hidden;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.table-scroll{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;background:var(--surface)}caption{padding:1rem;color:var(--ink-600);text-align:left}th,td{padding:.88rem 1rem;border-bottom:1px solid var(--ink-100);text-align:left;vertical-align:middle}th{color:var(--ink-500);background:var(--surface-subtle);font-size:.74rem;font-weight:780;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}tbody tr{transition:background var(--ease)}tbody tr:hover{background:var(--brand-50)}tbody tr:last-child td{border-bottom:0}td a{font-weight:680}.cell-primary{min-width:14rem}.cell-id{max-width:17rem;overflow:hidden;color:var(--ink-500);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}
.badge{display:inline-flex;align-items:center;min-height:1.65rem;padding:.2rem .55rem;border:1px solid var(--ink-200);border-radius:999px;background:var(--ink-50);color:var(--ink-700);font-size:.75rem;font-weight:740;line-height:1.1;white-space:nowrap}.badge[data-state=approved],.badge[data-state=allowed],.badge[data-state=covered]{border-color:transparent;background:var(--success-100);color:var(--success-700)}.badge[data-state=challenged],.badge[data-state=partial],.badge[data-state=inconclusive],.badge[data-state=ready_for_review]{border-color:transparent;background:var(--warning-100);color:var(--warning-700)}.badge[data-state=rejected],.badge[data-state=denied],.badge[data-state=contradicted],.badge[data-state=uncovered]{border-color:transparent;background:var(--danger-100);color:var(--danger-700)}.badge[data-state=restricted],.badge[data-state=source_protected],.badge[data-state=legal_privileged]{border-color:transparent;background:var(--brand-100);color:var(--brand-700)}
.empty-state{padding:clamp(2rem,6vw,4.5rem) 1.5rem;border:1px dashed var(--ink-300);border-radius:var(--radius-lg);background:var(--surface-subtle);text-align:center}.empty-icon{width:3rem;height:3rem;display:grid;place-items:center;margin:0 auto .9rem;border-radius:.9rem;background:var(--brand-100);color:var(--brand-700);font-size:1.3rem;font-weight:800}.empty-state h2,.empty-state h3{margin:0}.empty-state p{max-width:32rem;margin:.55rem auto 1.1rem;color:var(--ink-600)}.callout{padding:1rem 1.1rem;border:1px solid var(--ink-200);border-left:.24rem solid var(--brand-500);border-radius:var(--radius-md);background:var(--brand-50)}.callout strong{display:block;margin-bottom:.2rem}.callout p{margin:0;color:var(--ink-700);font-size:.88rem}.callout-warning{border-left-color:var(--warning-700);background:var(--warning-100)}
.error,.notice{max-width:var(--content-max);margin:1rem auto 0;padding:.85rem 1rem;border-radius:var(--radius-md);font-weight:600}.error{border:1px solid color-mix(in srgb,var(--danger-700) 25%,transparent);background:var(--danger-100);color:var(--danger-700)}.notice{border:1px solid color-mix(in srgb,var(--success-700) 25%,transparent);background:var(--success-100);color:var(--success-700)}
.subnav{display:flex;gap:.3rem;margin:0 0 var(--space-6);padding:.35rem;overflow-x:auto;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.subnav a{min-height:2.45rem;display:inline-flex;align-items:center;padding:.55rem .8rem;border-radius:var(--radius-md);color:var(--ink-600);font-size:.86rem;font-weight:680;text-decoration:none;white-space:nowrap}.subnav a:hover{background:var(--ink-50);color:var(--ink-900)}.subnav a[aria-current=page]{background:var(--brand-100);color:var(--brand-700)}.claim-card{margin:1rem 0;padding:var(--space-6);border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.claim-text{margin:.65rem 0;color:var(--ink-950);font-size:1.12rem;line-height:1.65}.meta-row{display:flex;flex-wrap:wrap;gap:.5rem 1rem;color:var(--ink-500);font-size:.8rem}.mono,code{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.8em}code{padding:.18rem .4rem;border-radius:.35rem;background:var(--ink-100);color:var(--ink-800)}
.help-widget{position:fixed;right:1.3rem;bottom:1.3rem;z-index:1000}.help-widget details{position:relative}.help-badge{width:3rem;height:3rem;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:var(--ink-900);color:var(--surface);box-shadow:var(--shadow-md);cursor:pointer;font-size:1.15rem;font-weight:800;list-style:none;transition:transform var(--ease),background var(--ease)}.help-badge:hover{background:var(--brand-600);transform:translateY(-2px)}.help-badge::marker,.help-badge::-webkit-details-marker{display:none}.help-content{position:absolute;right:0;bottom:3.65rem;width:min(22rem,calc(100vw - 2rem));padding:1.1rem;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);color:var(--ink-800);box-shadow:var(--shadow-md);font-size:.86rem;line-height:1.55}.help-content p{margin:0 0 .55rem}.help-content p:last-child{margin-bottom:0}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin:2.4rem 0 1rem}.section-heading h2{margin:0}.section-heading p:not(.eyebrow){margin:.4rem 0 0;color:var(--ink-600)}.metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem}.metric-grid-primary{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card{min-width:0;padding:1.15rem;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.metric-card-accent{color:#fff;background:linear-gradient(145deg,#244ea2,#173b80);border-color:transparent}.metric-card-accent .metric-label,.metric-card-accent .metric-caption{color:#c9dcff}.metric-label,.metric-caption{display:block;color:var(--ink-500);font-size:.76rem}.metric-label{font-weight:750;letter-spacing:.04em;text-transform:uppercase}.metric-value{display:block;margin:.45rem 0 .2rem;color:var(--ink-950);font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.1;letter-spacing:-.04em}.metric-card-accent .metric-value{color:#fff}.metric-value-sm{font-size:1.7rem}.metric-scope{margin-top:1rem}.storage-chart{display:grid;gap:.9rem;margin:1rem 0 1.5rem;padding:1.2rem;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface)}.chart-row{display:grid;grid-template-columns:minmax(11rem,.36fr) 1fr;gap:1rem;align-items:center}.chart-label{display:flex;justify-content:space-between;gap:.75rem}.chart-label span{color:var(--ink-500);font-size:.78rem;white-space:nowrap}progress{width:100%;height:.75rem;border:0;border-radius:999px;overflow:hidden;background:var(--ink-100)}progress::-webkit-progress-bar{background:var(--ink-100);border-radius:999px}progress::-webkit-progress-value{background:linear-gradient(90deg,var(--brand-600),var(--cyan-500));border-radius:999px}progress::-moz-progress-bar{background:linear-gradient(90deg,var(--brand-600),var(--cyan-500));border-radius:999px}.organization-metrics{display:grid;gap:.75rem}.organization-disclosure{border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.organization-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;cursor:pointer;list-style:none}.organization-disclosure>summary::-webkit-details-marker{display:none}.organization-disclosure>summary:hover{background:var(--brand-50)}.organization-disclosure>summary::after{content:"+";width:1.8rem;height:1.8rem;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--ink-100);color:var(--ink-700);font-weight:800}.organization-disclosure[open]>summary::after{content:"−"}.org-summary-main{display:flex;align-items:center;gap:.8rem;min-width:12rem}.org-summary-main>span:last-child{display:flex;flex-direction:column}.org-summary-main small{color:var(--ink-500)}.org-avatar{width:2.5rem;height:2.5rem;display:grid;place-items:center;flex:0 0 auto;border-radius:.75rem;background:var(--brand-100);color:var(--brand-700);font-weight:800}.org-summary-metrics{display:grid;grid-template-columns:repeat(3,minmax(6.5rem,1fr));gap:1.5rem}.org-summary-metrics>span{display:flex;flex-direction:column}.org-summary-metrics small{color:var(--ink-500);font-size:.7rem;text-transform:uppercase}.org-summary-metrics strong{font-size:.9rem}.org-details{padding:1rem 1.2rem 1.2rem;border-top:1px solid var(--ink-100);background:var(--surface-subtle)}.org-kpis{display:flex;flex-wrap:wrap;gap:.65rem 1.5rem;color:var(--ink-600);font-size:.84rem}.org-kpis strong{color:var(--ink-950)}.org-details .table-panel{margin-bottom:0}.empty-state.compact{padding:1.25rem;margin-top:1rem}.empty-state.compact p{margin:0}
.danger-zone{margin-top:2.5rem;padding:1.25rem;border:1px solid color-mix(in srgb,var(--danger-700) 28%,transparent);border-radius:var(--radius-lg);background:var(--danger-100)}.danger-zone h2{margin-top:0;color:var(--danger-700)}.danger-zone p{color:var(--ink-700)}
.docs-layout{display:grid;grid-template-columns:15rem minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start}.docs-toc{position:sticky;top:6rem;display:flex;flex-direction:column;padding:1rem;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.docs-toc strong{padding:.35rem .55rem .7rem;color:var(--ink-950);font-size:.82rem}.docs-toc a{padding:.48rem .55rem;border-radius:var(--radius-sm);color:var(--ink-600);font-size:.82rem;font-weight:600;text-decoration:none}.docs-toc a:hover{background:var(--brand-50);color:var(--brand-700)}.docs-content{min-width:0;max-width:58rem}.docs-section{padding:0 0 3.5rem;scroll-margin-top:6rem}.docs-section+.docs-section{padding-top:2.5rem;border-top:1px solid var(--ink-200)}.docs-section>h2{margin-top:0;font-size:clamp(1.5rem,2.5vw,2rem)}.docs-section>p{color:var(--ink-700)}.benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;margin:1.4rem 0}.benefit-card{padding:1.15rem;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface)}.benefit-card h3{margin:.75rem 0 .35rem}.benefit-card p{margin:0;color:var(--ink-600);font-size:.88rem}.benefit-index{color:var(--brand-700);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.74rem;font-weight:800}.concept-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1.2fr;gap:.5rem;align-items:center;margin:1.4rem 0;padding:1rem;border-radius:var(--radius-lg);background:var(--ink-900);color:var(--surface)}.concept-flow>div{min-width:0}.concept-flow strong,.concept-flow span{display:block}.concept-flow div>span{margin-top:.2rem;color:var(--ink-300);font-size:.72rem}.definition-list,.glossary-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1.2rem 0}.definition-list>div,.glossary-grid>div{padding:1rem;border:1px solid var(--ink-200);border-radius:var(--radius-md);background:var(--surface)}dt{color:var(--ink-950);font-weight:750}dd{margin:.3rem 0 0;color:var(--ink-600);font-size:.88rem}.steps-list{margin:1.4rem 0;padding:0;list-style:none;counter-reset:steps}.steps-list li{display:grid;grid-template-columns:2.6rem 1fr;gap:1rem;padding:0 0 1.5rem;position:relative}.steps-list li:not(:last-child)::before{content:"";position:absolute;left:1.27rem;top:2.6rem;bottom:0;width:1px;background:var(--ink-200)}.steps-list li>span{z-index:1;width:2.6rem;height:2.6rem;display:grid;place-items:center;border-radius:50%;background:var(--brand-100);color:var(--brand-700);font-weight:800}.steps-list h3{margin:.25rem 0}.steps-list p{margin:.35rem 0 0;color:var(--ink-600)}.example-scenario{margin:1.3rem 0;border:1px solid var(--ink-200);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm)}.example-context{padding:1.2rem;background:var(--brand-50)}.example-context p{margin:.65rem 0 0}.example-row{display:grid;grid-template-columns:9rem 1fr;gap:1rem;padding:1rem 1.2rem;border-top:1px solid var(--ink-100)}.example-row p{margin:0;color:var(--ink-700)}.comparison-grid,.relation-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin:1.2rem 0 1.8rem}.comparison-card,.relation-grid>div{padding:1.1rem;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface)}.comparison-card p{color:var(--ink-950);font-size:1rem;font-weight:650}.comparison-card small{color:var(--ink-500)}.comparison-card.is-good{border-top:.2rem solid var(--success-700)}.comparison-card.is-bad{border-top:.2rem solid var(--danger-700)}.relation-grid p{margin:.55rem 0 0;color:var(--ink-600);font-size:.86rem}.docs-disclosure{margin:.65rem 0;border:1px solid var(--ink-200);border-radius:var(--radius-md);background:var(--surface)}.docs-disclosure summary{padding:1rem;cursor:pointer;color:var(--ink-950);font-weight:700}.docs-disclosure p{margin:0;padding:0 1rem 1rem;color:var(--ink-600)}
@media(max-width:68rem){:root{--sidebar-width:5rem}.sidebar{padding-inline:.8rem;align-items:center}.brand-text,.nav-label,.primary-nav a span,.sidebar-foot{display:none}.primary-nav{width:100%}.primary-nav a{justify-content:center;padding-inline:.5rem}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-layout{grid-template-columns:1fr}.docs-layout{grid-template-columns:1fr}.docs-toc{position:static;display:grid;grid-template-columns:repeat(2,1fr)}.docs-toc strong{grid-column:1/-1}.benefit-grid{grid-template-columns:1fr}.metric-grid,.metric-grid-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.organization-disclosure>summary{align-items:flex-start}.org-summary-metrics{grid-template-columns:1fr;gap:.35rem}}
@media(max-width:46rem){:root{--sidebar-width:0rem}.app-shell{padding-left:0;padding-bottom:4.35rem}.sidebar{inset:auto 0 0 0;width:100%;height:4.15rem;padding:.4rem .45rem;overflow:visible;border-top:1px solid rgba(255,255,255,.1);border-right:0}.brand,.sidebar-foot,.nav-label{display:none}.primary-nav{width:100%;margin:0}.primary-nav ul{display:grid;grid-template-columns:repeat(4,1fr);gap:.2rem;margin:0}.primary-nav a{min-height:3.25rem;margin:0;flex-direction:column;gap:.1rem;padding:.3rem .1rem;font-size:.66rem}.primary-nav a span{display:block}.nav-icon{width:1.15rem;height:1.15rem}.topbar{min-height:3.7rem;padding:.55rem 1rem}.topbar-context{display:none}.actor-form{width:100%}.actor-form label{flex:1}.actor-form input{width:100%}.actor-form button{min-height:2.4rem;padding-inline:.7rem}main{padding:1.25rem 1rem 2rem}.page-header{flex-direction:column;gap:1rem;margin-bottom:1.5rem}.page-header .actions,.page-header .button{width:100%}.stats-grid{grid-template-columns:1fr 1fr;gap:.65rem}.stat-card{padding:.9rem}.stat-value{font-size:1.3rem}.subnav{margin-inline:-1rem;padding-inline:1rem;border-inline:0;border-radius:0}.table-panel{border-radius:var(--radius-md)}table.responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}table.responsive-table,table.responsive-table tbody,table.responsive-table tr,table.responsive-table td{display:block;width:100%}table.responsive-table tr{padding:.8rem;border-bottom:1px solid var(--ink-100)}table.responsive-table tr:last-child{border-bottom:0}table.responsive-table td{display:grid;grid-template-columns:minmax(6.5rem,.42fr) 1fr;gap:.7rem;padding:.38rem;border:0}table.responsive-table td::before{content:attr(data-label);color:var(--ink-500);font-size:.72rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.cell-id{max-width:none}.help-widget{right:.9rem;bottom:4.9rem}.docs-toc{grid-template-columns:1fr}.definition-list,.glossary-grid,.comparison-grid,.relation-grid{grid-template-columns:1fr}.concept-flow{grid-template-columns:1fr}.concept-flow>span{transform:rotate(90deg);text-align:center}.example-row{grid-template-columns:1fr;gap:.3rem}.metric-grid,.metric-grid-primary{grid-template-columns:1fr 1fr}.metric-card{padding:.9rem}.section-heading{align-items:flex-start}.section-heading>.badge{display:none}.chart-row{grid-template-columns:1fr}.organization-disclosure>summary{flex-wrap:wrap}.org-summary-metrics{width:calc(100% - 2.5rem);margin-left:3.3rem}.org-summary-metrics>span{display:grid;grid-template-columns:1fr auto;gap:.5rem}.organization-disclosure>summary::after{position:absolute;right:1rem}.organization-disclosure>summary{position:relative;padding-right:3.25rem}}
@media(max-width:27rem){.stats-grid{grid-template-columns:1fr}.actor-form input{font-size:.72rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.sidebar,.topbar,.help-widget,.actions,.subnav{display:none!important}.app-shell{padding:0}body{background:#fff}main{max-width:none;padding:0}.panel,.table-panel,.claim-card{box-shadow:none}}
.metric-grid{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr))}
.table-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.inline-form.delete-action{display:inline-flex;flex:0 0 auto;max-width:100%}.inline-form.delete-action .button,.danger-zone-action .button{margin:0;max-width:100%}.danger-zone-action{display:block;max-width:100%}.danger-zone-action .button{width:auto}
.language-control{margin-left:auto;display:flex;align-items:center;gap:.45rem;color:var(--ink-600);font-size:.76rem}.language-control select{width:auto;min-height:2.45rem;padding:.45rem 1.9rem .45rem .65rem;border-color:var(--ink-200);background-color:var(--surface);font-weight:760;cursor:pointer}.language-control+ .actor-form{margin-left:0!important}
@media(max-width:46rem){.table-actions{align-items:flex-start}.danger-zone-action .button{width:100%}}
@media(max-width:46rem){.language-control{margin-left:0}.language-control>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.language-control select{min-height:2.4rem}.language-control+ .actor-form{width:auto;flex:1;min-width:0}.language-control+ .actor-form label{min-width:0}}
@media(max-width:68rem){table.workspace-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}table.workspace-table,table.workspace-table tbody,table.workspace-table tr,table.workspace-table td{display:block;width:100%}table.workspace-table tr{padding:.8rem;border-bottom:1px solid var(--ink-100)}table.workspace-table tr:last-child{border-bottom:0}table.workspace-table td{display:grid;grid-template-columns:minmax(7rem,.42fr) 1fr;gap:.7rem;padding:.38rem;border:0}table.workspace-table td::before{content:attr(data-label);color:var(--ink-500);font-size:.72rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}}
@media(max-width:68rem){table.investigations-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}table.investigations-table,table.investigations-table tbody,table.investigations-table tr,table.investigations-table td{display:block;width:100%}table.investigations-table tr{padding:.8rem;border-bottom:1px solid var(--ink-100)}table.investigations-table tr:last-child{border-bottom:0}table.investigations-table td{display:grid;grid-template-columns:minmax(7rem,.42fr) minmax(0,1fr);gap:.7rem;padding:.38rem;border:0}table.investigations-table td::before{content:attr(data-label);color:var(--ink-500);font-size:.72rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}table.investigations-table .cell-primary{min-width:0}table.investigations-table .cell-id{max-width:none}}
.user-menu{position:relative;margin-left:var(--space-2)}.user-menu-summary{display:flex;align-items:center;gap:.5rem;padding:.32rem .7rem .32rem .4rem;border:1px solid var(--ink-200);border-radius:999px;background:var(--surface);color:var(--ink-800);cursor:pointer;list-style:none;font-size:.84rem;font-weight:700;transition:border-color var(--ease),box-shadow var(--ease)}.user-menu-summary:hover{border-color:var(--brand-500);box-shadow:var(--shadow-sm)}.user-menu-summary::marker,.user-menu-summary::-webkit-details-marker{display:none}.user-avatar{width:1.75rem;height:1.75rem;display:grid;place-items:center;border-radius:50%;background:var(--brand-600);color:#fff;font-size:.78rem;font-weight:800}.user-menu-content{position:absolute;right:0;top:calc(100% + .45rem);min-width:12rem;padding:.45rem;border:1px solid var(--ink-200);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md);display:flex;flex-direction:column;z-index:120}.user-menu-content a,.user-menu-content .button-link{display:block;width:100%;padding:.55rem .7rem;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-800);font:inherit;font-size:.86rem;font-weight:600;text-align:left;text-decoration:none;cursor:pointer}.user-menu-content a:hover,.user-menu-content .button-link:hover{background:var(--brand-50);color:var(--brand-700)}.user-menu-content form{margin:0}.auth-links{display:flex;align-items:center;gap:.5rem;margin-left:var(--space-2)}
@media(max-width:46rem){.user-menu-summary .user-name{display:none}.auth-links .button{padding-inline:.6rem;font-size:.76rem}}

/* Badge d'aide inline dans les formulaires */
.help-inline{display:inline-block;position:relative;margin-left:.5rem;vertical-align:middle}
.help-inline .help-badge{width:1.6rem;height:1.6rem;font-size:.8rem;box-shadow:none;border:1px solid var(--ink-300);background:var(--ink-100);color:var(--ink-700)}
.help-inline .help-badge:hover{background:var(--brand-600);color:var(--surface)}
.help-inline .help-content{position:absolute;left:2rem;top:-.5rem;width:min(24rem,calc(100vw - 3rem));z-index:100}
.help-inline details{position:relative}
.help-inline summary{list-style:none}
.help-inline summary::marker,.help-inline summary::-webkit-details-marker{display:none}

/* Guide : exemple pas à pas */
.example-step{display:flex;gap:1rem;margin:1.5rem 0;padding:1rem;border:1px solid var(--ink-200);border-radius:var(--radius-lg)}
.step-number{width:2rem;height:2rem;display:grid;place-items:center;background:var(--brand-600);color:var(--surface);border-radius:50%;font-weight:700;flex-shrink:0}
.example-step h3{margin:0 0 .5rem;font-size:1rem}
.example-step p{margin:0 0 .5rem;color:var(--ink-700)}
.example-code{background:var(--ink-50);padding:.75rem;border-radius:var(--radius-md);font-family:ui-monospace,monospace;font-size:.85rem;white-space:pre-line;color:var(--ink-800)}
.example-code+.example-code{margin-top:.5rem}
.evidence-preview{width:100%;min-height:70vh;margin:1rem 0;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}
img.evidence-preview{min-height:0;max-height:80vh;object-fit:contain}

/* Recherche globale (A005), filtres (A004), pagination (A012), citations (A030) */
.search-form{margin-left:auto;display:flex;align-items:center}
.search-form input{min-height:2.45rem;width:min(18rem,30vw);padding:.45rem .8rem;border:1px solid var(--ink-200);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-900);font-size:.86rem}
.search-form ~ .language-form .language-control{margin-left:.5rem}
.filter-bar{display:flex;flex-wrap:nowrap;align-items:flex-end;gap:.8rem;margin:1rem 0;padding:.9rem 1rem;border:1px solid var(--ink-200);border-radius:var(--radius-lg);background:var(--surface);overflow-x:auto}
.filter-bar label{display:flex;flex-direction:row;align-items:center;gap:.5rem;color:var(--ink-600);font-size:.76rem;font-weight:700;white-space:nowrap}
.filter-bar select,.filter-bar input{min-height:2.45rem;padding:.45rem .65rem;border:1px solid var(--ink-200);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-900)}
.filter-bar .button{margin:0}
.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1rem 0}
.pagination-status{color:var(--ink-600);font-size:.84rem;font-weight:600}
.citation-excerpt{margin:.4rem 0;padding:.45rem .8rem;border-left:3px solid var(--brand-500);background:var(--brand-50);color:var(--ink-700);font-size:.84rem}
@media(max-width:46rem){.search-form{display:none}.filter-bar{flex-wrap:wrap;align-items:flex-end;overflow-x:visible}}

/* Historique comparé des révisions d'affirmation (A022) */
.diff-block h3{margin:1.6rem 0 .6rem;font-size:1.05rem}
.diff-table{width:100%;border-collapse:collapse;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82rem}
.diff-table td{padding:.3rem .6rem;border-bottom:1px solid var(--ink-100);vertical-align:top}
.diff-marker{width:1.5rem;text-align:center;color:var(--ink-500);user-select:none}
.diff-text{white-space:pre-wrap;overflow-wrap:anywhere}
.diff-line-added{background:var(--success-100)}
.diff-line-added .diff-marker{color:var(--success-700);font-weight:800}
.diff-line-removed{background:var(--danger-100)}
.diff-line-removed .diff-marker{color:var(--danger-700);font-weight:800}
