:root{--bg-base:#1e2023;--bg-surface:#24272b;--bg-elevated:#2a2e33;--bg-input:#2a2e33;--bg-sidebar:oklch(22.1269% .006599 258.365);--border:#3a4047;--border-strong:#545c66;--text-primary:#eef0f2;--text-secondary:#c1c7ce;--text-muted:#929ba5;--text-inverse:#fff;--accent:#e07a55;--accent-subtle:#372b27;--selection:#7fa6c5;--selection-subtle:#2b343d;--status-done:#79a98f;--status-done-bg:#26352e;--status-active:var(--status-info);--status-active-bg:var(--status-info-bg);--status-todo:var(--status-muted);--status-todo-bg:var(--status-muted-bg);--status-alert:#d87676;--status-alert-bg:#3a292b;--status-warn:#d3a05b;--status-warn-bg:#3a3124;--status-info:#7ea7c9;--status-info-bg:#27333d;--status-neutral:#c1c7ce;--status-neutral-bg:#30353b;--status-muted:#929ba5;--status-muted-bg:#2a2e33;--progress-fill:#6fa0a8;--progress-track:#3a4047;--shadow:0 1px 3px oklch(0% 0 0/.35);--shadow-lg:0 4px 16px oklch(0% 0 0/.5);--overlay-dim:#00000026;--focus-ring-color:#7fa6c5;--focus-ring:0 0 0 2px var(--focus-ring-color);--space-2px:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-5:20px;--radius-none:0;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:var(--radius-lg);--radius-full:9999px;--control-height-sm:28px;--control-height-md:36px;--table-cell-padding-y:10px;--table-cell-padding-x:12px;--table-cell-padding-y-dense:8px;--table-cell-padding-x-dense:10px;--font-interface:Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-sans:var(--font-interface);--font-mono:"Fira Code", "SF Mono", "Cascadia Code", monospace;--type-page-size:22px;--type-page-line:28px;--type-page-weight:700;--type-entity-size:18px;--type-entity-line:24px;--type-entity-weight:700;--type-section-size:15px;--type-section-line:20px;--type-section-weight:700;--type-body-size:14px;--type-body-line:20px;--type-body-weight:400;--type-body-strong-size:14px;--type-body-strong-line:20px;--type-body-strong-weight:600;--type-data-size:13px;--type-data-line:18px;--type-data-weight:600;--type-label-size:12px;--type-label-line:16px;--type-label-weight:700;--type-caption-size:11px;--type-caption-line:15px;--type-caption-weight:600;--type-mono-size:12px;--type-mono-line:18px;--type-mono-weight:500;--bg-page:var(--bg-base);--bg-surface-alpha:var(--bg-surface);--bg-card:var(--bg-surface);--text-body:var(--text-primary);--accent-active:var(--accent);--accent-success:var(--status-done);--accent-warning:var(--status-warn);--accent-error:var(--status-alert);--accent-inactive:var(--border-strong);--shadow-card:none;--chip-bg-green:var(--status-done-bg);--chip-fg-green:var(--status-done);--chip-bg-cyan:var(--accent-subtle);--chip-fg-cyan:var(--accent);--chip-bg-orange:var(--status-warn-bg);--chip-fg-orange:var(--status-warn);--chip-bg-gray:var(--bg-elevated);--chip-fg-gray:var(--text-secondary);--chip-bg-red:var(--status-alert-bg);--chip-fg-red:var(--status-alert);--color-primary:var(--accent);--color-secondary:var(--text-secondary);--color-success:var(--status-done);--color-success-bg:var(--status-done-bg);--color-warning:var(--status-warn);--color-warning-bg:var(--status-warn-bg);--color-danger:var(--status-alert);--color-danger-bg:var(--status-alert-bg);--color-background:var(--bg-base);--color-surface:var(--bg-surface);--color-border:var(--border);--color-text:var(--text-primary);--color-muted:var(--text-muted);--color-selection:var(--selection);--color-selection-bg:var(--selection-subtle);--color-progress:var(--progress-fill);--color-focus:var(--focus-ring-color);--field-bg-contractor:#f0f7f2;--field-bg-sitevisit:#f0f7fa;--field-bg-snag:#fdf5f2;--field-accent-contractor:#2f855a;--field-accent-sitevisit:#0891b2;--field-accent-sitevisit-2:#06b6d4;--field-accent-snag:#ea580c;--field-accent-snag-subtle:#fff7ed;--field-text-heading:#111827;--field-text-body:#374151;--field-text-secondary:#6b7280;--field-text-muted:#6b7280;--field-text-label:#64748b;--field-border:#e5e7eb;--field-border-strong:#d1d5db;--field-bg-subtle:#f3f4f6;--field-bg-faint:#fafafa;--field-bg-card:#fff;--field-shadow:0 1px 3px #0000000a;--field-shadow-lg:0 1px 4px #0000000d;--field-text-on-accent:#fff;--field-success-bg:#dcfce7;--field-success-border:#86efac;--field-success-fg:#16a34a;--field-success-fg-dark:#166534;--field-warning-bg:#fef3c7;--field-warning-border:#fde68a;--field-warning-fg:#d97706;--field-warning-fg-dark:#92400e;--field-danger-bg:#fee2e2;--field-danger-border:#fca5a5;--field-danger-fg:#dc2626;--field-danger-fg-dark:#991b1b;--field-info-bg:#e0f2fe;--field-info-border:#7dd3fc;--field-info-fg:#0891b2;--field-info-fg-dark:#0c4a6e;--field-delayed-bg:#fce7f3;--field-delayed-border:#f9a8d4;--field-delayed-fg:#be185d;--field-neutral-bg:#f5f3ff;--field-neutral-fg:#7c3aed;--field-neutral-border:#ddd6fe;--field-neutral-bg-subtle:#faf8ff;--field-neutral-border-subtle:#ede9fe;--field-bg-faint-alt:#f9fafb;--field-warning-bg-subtle:#fefce8;--field-accent-slate:#475569;--field-accent-blue-bg:#dbeafe;--field-accent-blue-subtle:#eff6ff;--field-accent-blue-fg:#1e40af;--field-accent-blue-fg2:#2563eb;--field-accent-blue-border:#93c5fd;--field-accent-orange-bg:#fff7ed;--field-accent-orange-fg:#ea580c;--field-accent-orange-fg-dark:#c2410c;--field-accent-orange-border:#fed7aa;--color-on-fill-light:#fff;--color-on-fill-dark:#000;--print-brand:#1e3a5f;--print-text:#374151;--print-muted:#6b7280}[data-theme=light]{--bg-base:#f4f6f8;--bg-surface:#fff;--bg-elevated:#f8fafb;--bg-input:#fff;--bg-sidebar:oklch(95.6717% .005156 247.878);--border:#d8dee5;--border-strong:#b8c1cb;--text-primary:#20262d;--text-secondary:#4e5965;--text-muted:#5b6670;--text-inverse:#fff;--accent:#a84628;--accent-subtle:#f8eae5;--selection:#365f7e;--selection-subtle:#eaf0f5;--status-done:#3f765e;--status-done-bg:#eaf3ee;--status-active:var(--status-info);--status-active-bg:var(--status-info-bg);--status-todo:var(--status-muted);--status-todo-bg:var(--status-muted-bg);--status-alert:#a84747;--status-alert-bg:#f8e9e9;--status-warn:#94631e;--status-warn-bg:#f8f0e3;--status-info:#426a8a;--status-info-bg:#eaf1f7;--status-neutral:#4e5965;--status-neutral-bg:#eef1f4;--status-muted:#74808c;--status-muted-bg:#f2f4f6;--shadow:0 1px 3px oklch(0% 0 0/.1);--shadow-lg:0 4px 16px oklch(0% 0 0/.12);--overlay-dim:#20262d59;--focus-ring-color:#365f7e;--focus-ring:0 0 0 2px var(--focus-ring-color);--progress-fill:#3f7580;--progress-track:#e4e9ee}.chip{border-radius:var(--radius-full);white-space:nowrap;align-items:center;gap:5px;padding:.125rem .5rem;font-size:.75rem;font-weight:600;line-height:1.6;display:inline-flex}.chip--green{background:var(--chip-bg-green);color:var(--chip-fg-green)}.chip--cyan{background:var(--chip-bg-cyan);color:var(--chip-fg-cyan)}.chip--orange{background:var(--chip-bg-orange);color:var(--chip-fg-orange)}.chip--gray{background:var(--chip-bg-gray);color:var(--chip-fg-gray)}.chip--red{background:var(--chip-bg-red);color:var(--chip-fg-red)}.dot{border-radius:var(--radius-full);flex-shrink:0;width:.375rem;height:.375rem;display:inline-block}.dot--green{background:var(--status-done)}.dot--cyan{background:var(--accent)}.dot--orange{background:var(--status-warn)}.dot--red{background:var(--status-alert)}.dot--gray{background:var(--border-strong)}.status-badge{border-radius:var(--radius-full);white-space:nowrap;border:1px solid #0000;align-items:center;gap:4px;padding:2px 8px;font-size:.6875rem;font-weight:700;line-height:1.5;display:inline-flex}.status-badge--positive{background:var(--status-done-bg);color:var(--status-done)}.status-badge--caution{background:var(--status-warn-bg);color:var(--status-warn)}.status-badge--danger{background:var(--status-alert-bg);color:var(--status-alert)}.status-badge--info{background:var(--status-info-bg);color:var(--status-info)}.status-badge--neutral{background:var(--status-neutral-bg);color:var(--status-neutral);border-color:var(--border)}.status-badge--muted{background:var(--status-muted-bg);color:var(--status-muted);border-color:var(--border)}.progress-track{background:var(--progress-track);border-radius:var(--radius-sm);height:.375rem;overflow:hidden}.progress-fill{border-radius:var(--radius-sm);height:100%}.progress-fill--active{background:var(--progress-fill)}.progress-fill--done{background:var(--status-done)}.progress-fill--warning{background:var(--status-warn)}.progress-fill--error{background:var(--status-alert)}.progress-fill--gray{background:var(--border-strong)}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:none}.card--orange{border-color:var(--status-warn)}.card--red{border-color:var(--status-alert)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{height:var(--control-height-md);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;font-size:.875rem;font-weight:600;font-family:var(--font-sans);border:none;justify-content:center;align-items:center;gap:6px;padding:0 16px;transition:opacity .15s,background .15s,border-color .15s,color .15s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--text-inverse)}.btn-primary:hover:not(:disabled){opacity:.85}.btn-secondary{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-surface);border-color:var(--border-strong)}.btn-ghost{background:var(--border);color:var(--text-primary);border:none}.btn-ghost:hover:not(:disabled){background:var(--border-strong);color:var(--text-primary)}.btn-ghost-sm{height:var(--control-height-sm);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:.75rem;font-weight:500;font-family:var(--font-sans);background:0 0;justify-content:center;align-items:center;gap:5px;padding:0 .75rem;transition:border-color .15s,color .15s;display:inline-flex}.btn-ghost-sm:hover{border-color:var(--border-strong);color:var(--text-primary)}.btn-ghost-sm:disabled{opacity:.45;cursor:not-allowed}.btn-icon{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex}.btn-icon:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.btn-icon:disabled{opacity:.45;cursor:not-allowed}:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.btn-danger{background:var(--status-alert);color:#fff}.btn-danger:hover:not(:disabled){opacity:.85}.ds-data-surface{overscroll-behavior-inline:contain;min-width:0;max-width:100%;overflow-x:auto}.ds-table{border-collapse:collapse;width:100%;font-size:var(--type-data-size);line-height:var(--type-data-line);font-variant-numeric:tabular-nums}.ds-table thead th{padding:var(--table-cell-padding-y) var(--table-cell-padding-x);font-size:var(--type-caption-size);font-weight:var(--type-label-weight);line-height:var(--type-caption-line);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);text-align:left;background:0 0}.ds-table tbody td{padding:var(--table-cell-padding-y) var(--table-cell-padding-x);color:var(--text-primary);border-bottom:1px solid var(--border);font-size:var(--type-data-size);line-height:var(--type-data-line);vertical-align:middle}.ds-table tbody tr:hover{background:var(--bg-elevated)}.ds-table tbody tr.row--alert{background:var(--status-alert-bg)}.ds-table tbody tr.is-selected{background:var(--selection-subtle)}.ds-table tbody tr:focus-visible{box-shadow:inset var(--focus-ring);outline:none}.ds-table--dense thead th,.ds-table--dense tbody td{padding:var(--table-cell-padding-y-dense) var(--table-cell-padding-x-dense)}.ds-cell-primary{color:var(--text-primary);font-weight:700}.ds-cell-secondary{color:var(--text-muted);font-size:.75rem}.ds-cell-number{font-variant-numeric:tabular-nums;text-align:right!important}.ds-cell-nowrap,.ds-cell-status,.ds-cell-action{white-space:nowrap}.ds-table-empty{color:var(--text-muted)!important;text-align:center!important;padding-block:24px!important}.nav-item{color:var(--text-secondary);border-radius:var(--radius-md);padding:.625rem 1rem;font-size:.875rem;text-decoration:none;transition:background .12s,color .12s;display:block}.nav-item:hover{background:var(--accent-subtle);color:var(--text-primary)}.nav-item.active{background:var(--accent-subtle);color:var(--accent);font-weight:600}.ds-input,.ds-select,.ds-textarea{background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm);font-size:var(--type-body-size);font-family:var(--font-sans);outline:none;width:100%;transition:border-color .15s,box-shadow .15s}.ds-input,.ds-select{height:var(--control-height-md);padding:0 .75rem}.ds-textarea{min-height:var(--control-height-md);resize:vertical;padding:.5rem .75rem}.ds-input:focus,.ds-select:focus,.ds-textarea:focus{border-color:var(--focus-ring-color);box-shadow:var(--focus-ring)}.ds-input::placeholder,.ds-textarea::placeholder{color:var(--text-muted)}.collapsible-header{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.collapsible-toggle{color:var(--text-muted);font-size:12px;transition:transform .2s}.collapsible--open .collapsible-toggle{transform:rotate(180deg)}.collapsible-body{display:none}.collapsible--open .collapsible-body{display:block}.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:3rem;display:flex}.empty-state__icon{opacity:.35;margin-bottom:1rem;font-size:2.5rem}.empty-state__title{color:var(--text-secondary);margin-bottom:.375rem;font-size:.938rem;font-weight:600}.empty-state__text{font-size:.813rem;line-height:1.65}.ds-overlay{z-index:1000;background:#000000a6;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.ds-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;overflow:hidden auto}.ds-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.ds-modal-header h2{color:var(--text-primary);font-size:1rem;font-weight:600}.ds-modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.5rem;line-height:1;transition:color .15s}.ds-modal-close:hover,.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-body{color:var(--text-primary)}.text-success{color:var(--status-done)}.text-active{color:var(--accent)}.text-warning{color:var(--status-warn)}.text-error{color:var(--status-alert)}.label-uppercase{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:600}.theme-toggle{border-radius:var(--radius-md);border:1px solid var(--border);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;font-size:15px;transition:background .15s,color .15s,border-color .15s;display:flex}.theme-toggle:hover{background:var(--accent-subtle);color:var(--text-primary);border-color:var(--border-strong)}.ds-attention-surface{min-width:0;padding:var(--space-4);border:1px solid var(--status-alert);border-radius:var(--radius-md);background:var(--status-alert-bg)}.ds-attention-surface.tone-calm{border-color:var(--status-done);background:var(--status-done-bg)}.ds-attention-heading,.ds-section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-4);min-width:0;display:flex}.ds-attention-heading h2,.ds-attention-heading h3,.ds-section-heading h2,.ds-section-heading h3{color:var(--text-primary);margin:0;font-size:.875rem;font-weight:700;line-height:1.35}.ds-attention-heading p,.ds-section-heading p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:.75rem;line-height:1.45}.ds-attention-accessory,.ds-section-accessory{color:var(--text-muted);flex-shrink:0;font-size:.6875rem;font-weight:650}.ds-analytical-section{gap:var(--space-3);min-width:0;display:grid}.ds-analytical-section.is-ruled{border-top:1px solid var(--border);padding:14px 0}.ds-metadata-rows,.ds-evidence-ledger{min-width:0;margin:0}.ds-metadata-rows.is-grid{grid-template-columns:repeat(var(--metadata-columns), minmax(0, 1fr));gap:var(--space-3) var(--space-5);display:grid}.ds-metadata-rows.is-inline{gap:6px var(--space-4);flex-wrap:wrap;display:flex}.ds-metadata-row{min-width:0}.ds-metadata-row dt,.ds-evidence-entry dt{color:var(--text-muted);font-size:.6875rem;font-weight:650;line-height:1.4}.ds-metadata-row dd,.ds-evidence-entry dd{min-width:0;margin:var(--space-1) 0 0;color:var(--text-primary);font-size:.75rem;line-height:1.45}.ds-metadata-value,.ds-metadata-secondary,.ds-evidence-entry dd>span{display:block}.ds-metadata-secondary,.ds-evidence-entry dd>span,.ds-evidence-entry dd>time{color:var(--text-muted);margin-top:2px}.ds-evidence-entry dd>time{font-size:.6875rem;display:block}.ds-metadata-rows.is-inline .ds-metadata-row{display:contents}.ds-metadata-rows.is-inline dt{display:none}.ds-metadata-rows.is-inline dd{color:var(--text-muted);margin:0;font-size:.6875rem}.ds-evidence-ledger.is-grid{grid-template-columns:repeat(var(--evidence-columns), minmax(0, 1fr));gap:var(--space-3) var(--space-5);display:grid}.ds-evidence-ledger.is-rows{border-top:1px solid var(--border);display:grid}.ds-evidence-ledger.is-rows .ds-evidence-entry{gap:var(--space-4);border-bottom:1px solid var(--border);grid-template-columns:minmax(140px,.55fr) minmax(0,1fr);padding:9px 0;display:grid}.ds-evidence-ledger.is-rows .ds-evidence-entry dd{margin:0}.ds-evidence-ledger.is-contained{border:1px solid var(--border);gap:0;overflow:hidden}.ds-evidence-ledger.is-contained .ds-evidence-entry{border-left:1px solid var(--border);padding:10px 12px}.ds-evidence-ledger.is-contained .ds-evidence-entry:first-child{border-left:0}.ds-empty-state{justify-content:center;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-6);color:var(--text-muted);text-align:center;flex-direction:column;display:flex}.ds-empty-state.size-pane{min-height:240px;padding:var(--space-8)}.ds-empty-state-copy h3,.ds-empty-state-copy p{margin:0}.ds-empty-state-copy h3{color:var(--text-primary);font-size:.875rem}.ds-empty-state-copy p{max-width:52ch;margin-top:var(--space-1);font-size:.75rem;line-height:1.5}@media (width<=640px){.ds-attention-surface{padding:14px}.ds-attention-heading,.ds-section-heading{align-items:flex-start}.ds-metadata-rows.is-grid,.ds-evidence-ledger.is-grid{grid-template-columns:1fr}.ds-evidence-ledger.is-contained .ds-evidence-entry{border-top:1px solid var(--border);border-left:0}.ds-evidence-ledger.is-contained .ds-evidence-entry:first-child{border-top:0}.ds-evidence-ledger.is-rows .ds-evidence-entry{gap:var(--space-1);grid-template-columns:1fr}}*{box-sizing:border-box;font-family:var(--font-sans);margin:0;padding:0}body{background:var(--bg-page);color:var(--text-body);-webkit-font-smoothing:antialiased}.app-shell{background:var(--bg-page);align-items:stretch;block-size:100dvh;min-block-size:0;display:flex;overflow:hidden}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:208px;height:100%;padding:16px 10px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{align-items:center;gap:9px;padding:6px 6px 16px;display:flex}.sidebar-brand span{color:var(--text-primary);letter-spacing:0;font-size:.9375rem;font-weight:750}.sidebar h2{color:var(--text-primary);margin-bottom:40px;font-size:18px}.sidebar nav{flex-direction:column;gap:2px;display:flex}.sidebar a{min-height:var(--control-height-md);border-radius:var(--radius-md);color:var(--text-secondary);align-items:center;gap:10px;padding:0 10px;font-size:.8125rem;text-decoration:none;transition:background .12s,color .12s;display:flex}.sidebar a:hover{background:var(--bg-elevated);color:var(--text-primary)}.sidebar a.active{background:var(--accent-subtle);color:var(--accent);font-weight:600}.sidebar-nav-group{gap:2px;display:grid}.sidebar-nav-group-toggle{width:100%;min-height:var(--control-height-md);border-radius:var(--radius-md);color:var(--text-secondary);font:600 .8125rem/1.25 var(--font-sans);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:0 10px;transition:background .12s,color .12s;display:flex}.sidebar-nav-group-toggle:hover,.sidebar-nav-group-toggle:focus-visible,.sidebar-nav-group.active>.sidebar-nav-group-toggle{background:var(--bg-elevated);color:var(--text-primary)}.sidebar-nav-label{align-items:center;gap:10px;min-width:0;display:flex}.sidebar-nav-group-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .18s ease-out}.sidebar-nav-group-toggle[aria-expanded=true] .sidebar-nav-group-chevron{transform:rotate(180deg)}.sidebar-nav-children{gap:1px;padding-left:10px;display:grid}.sidebar-nav-children[hidden]{display:none}.sidebar-nav-children a{padding-left:18px}.main-content{padding:var(--space-6) var(--space-8);flex:1;align-self:stretch;min-width:0;min-height:0;overflow:auto}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.page-header h1{color:var(--text-primary);margin-bottom:4px;font-size:1.5rem;font-weight:700}.page-header p,.page-subtitle{color:var(--text-muted);margin-top:4px;font-size:.813rem}.split-workspace{gap:var(--space-6);grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;display:grid}.workspace{gap:16px;min-width:0;display:grid}.workspace>*,.inspector>*{min-width:0}.inspector{min-width:0;top:var(--space-6);gap:20px;display:grid;position:sticky}.inspector-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:10px;font-size:.6875rem;font-weight:700}.inspector-section+.inspector-section{border-top:1px solid var(--border);padding-top:20px}@media (width<=1080px){.split-workspace{grid-template-columns:1fr}.inspector{position:static}}.dashboard-toolbar{flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:20px;display:flex}.dashboard-filter-group{flex-direction:column;gap:6px;display:flex}.dashboard-filter-group label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:700}.dashboard-filter-group select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);width:240px;height:40px;color:var(--text-body);outline:none;padding:0 12px;font-size:.875rem;transition:border-color .15s}.dashboard-filter-group select:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.dashboard-metrics-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.metric-pill{border-radius:var(--radius-lg);background:var(--bg-surface-alpha);border:1px solid var(--border);color:var(--accent-warning);min-width:120px;box-shadow:var(--shadow-card);justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;font-size:.875rem;font-weight:600;display:inline-flex}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.dashboard-card{background:var(--bg-surface-alpha);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:20px;display:flex}.dashboard-card-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:4px;font-size:.75rem;font-weight:700;display:block}.dashboard-card strong{color:var(--text-primary);margin-top:4px;font-size:1.75rem;font-weight:800;line-height:1;display:block}.progress-bar-track{background:var(--border);border-radius:var(--radius-full);height:6px;overflow:hidden}.progress-bar-track.small{height:4px}.progress-bar-fill{border-radius:var(--radius-full);background:var(--accent-active);height:100%}.progress-bar-fill.done{background:var(--accent-success)}.progress-bar-fill.warning{background:var(--accent-warning)}.plan-capture-crosshair{border:2px solid var(--status-alert);pointer-events:none;background:linear-gradient(var(--status-alert),var(--status-alert)) center/2px 100% no-repeat, linear-gradient(90deg,var(--status-alert),var(--status-alert)) center/100% 2px no-repeat;border-radius:50%;width:34px;height:34px;position:absolute;transform:translate(-50%,-50%)}.plan-capture-confirm,.capture-review-bar{background:var(--bg-elevated);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:12px 16px;display:flex}.plan-capture-confirm p,.capture-review-bar span{color:var(--text-secondary)}.capture-review-bar>div{flex-direction:column;gap:3px;display:flex}.observation-list-row{position:relative}.observation-select{color:var(--text-secondary);align-items:center;gap:8px;margin:0 0 6px 4px;font-size:.8125rem;display:flex}.observation-select input{width:18px;height:18px}.observation-capture-card{background:var(--bg-elevated);border-radius:var(--radius-lg);margin-bottom:16px;padding:18px}.observation-capture-card>div{margin-bottom:14px}.observation-capture-card form{flex-direction:column;gap:12px;display:flex}.observation-capture-card>.btn{justify-content:center;width:100%;margin-top:4px}.trade-selection{color:var(--text-secondary);align-items:center;gap:8px;font-size:.8125rem;display:flex}.trade-selection span{background:var(--trade-color);border:1px solid var(--border-strong);border-radius:50%;width:14px;height:14px}.publication-badge{border-radius:var(--radius-full);align-items:center;min-height:28px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.publication-badge.is-captured{background:var(--accent-subtle);color:var(--accent)}.publication-badge.is-published{background:var(--accent-subtle);color:var(--status-done)}.publication-badge.is-archived{background:var(--bg-elevated);color:var(--text-muted)}.capture-setup{background:var(--bg-surface);border-radius:var(--radius-md);margin-bottom:14px}.capture-setup summary{cursor:pointer;padding:12px 14px;font-weight:700}.capture-setup-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 14px 14px;display:grid}.capture-setup form{flex-direction:column;gap:9px;display:flex}.capture-setup p{color:var(--text-muted);font-size:.8125rem}@media (width<=520px){.plan-capture-confirm,.capture-review-bar{flex-direction:column;align-items:stretch}.plan-capture-confirm .btn,.capture-review-bar .btn{width:100%;min-height:44px}.observation-capture-card{padding:14px}.capture-setup-grid{grid-template-columns:1fr}}.dashboard-chart-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.chart-pill{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--accent-warning);padding:8px 12px;font-size:.8125rem;font-weight:700}.dashboard-chart{gap:14px;display:grid}.chart-label{color:var(--text-secondary);justify-content:space-between;margin-bottom:5px;font-size:.8125rem;display:flex}.chart-bar{border-radius:var(--radius-full);background:var(--border);height:10px;overflow:hidden}.risk-row{border-bottom:1px solid var(--border);color:var(--text-body);justify-content:space-between;padding:11px 0;font-size:.875rem;display:flex}.info-stack{gap:12px;display:grid}.dashboard-summary-card{background:var(--bg-surface-alpha);border-radius:var(--radius-lg);margin-bottom:20px;padding:20px}.status-pill-row{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.status-pill{background:var(--chip-bg-orange);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--chip-fg-orange);align-items:center;gap:8px;padding:10px 16px;font-size:.875rem;font-weight:600;display:flex}.dashboard-kpi-cluster{min-width:0}.dashboard-kpi-cluster-title{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:.72rem;font-weight:800}.dashboard-kpi-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.dashboard-kpi-meta{color:var(--text-muted);flex-wrap:wrap;gap:8px;margin-top:12px;font-size:.75rem;display:flex}.dashboard-kpi-meta span{border-radius:var(--radius-full);background:var(--bg-elevated);padding:4px 8px}.dashboard-health-card{align-content:start;display:grid}.dashboard-donut-wrap{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;display:grid}.dashboard-donut-legend{gap:6px;min-width:0;display:grid}.dashboard-control-panel{border-radius:var(--radius-lg);background:var(--bg-surface-alpha);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:10px 12px;display:flex}.dashboard-search-field{min-width:min(240px,100%);position:relative}.dashboard-search-field span{color:var(--text-muted);pointer-events:none;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.status-matrix-card{overflow:hidden}.status-matrix-scroll{max-width:100%;overflow-x:auto}.status-matrix-table{table-layout:fixed;min-width:980px;margin-top:0}.status-matrix-table th,.status-matrix-table td{padding:var(--table-cell-padding-y) 8px;vertical-align:middle}.status-matrix-table th{font-size:.66rem;line-height:1.2}.status-matrix-table td{font-size:.78rem}.status-matrix-table th:first-child{width:140px}.status-matrix-table th:nth-child(2){width:110px}.status-matrix-table th:nth-child(3){width:108px}.status-matrix-table th:nth-child(4){width:80px}.status-matrix-table th:nth-child(5){width:78px}.status-matrix-table th:nth-child(6){width:50px}.status-matrix-table th:nth-child(7){width:56px}.status-matrix-table th:nth-child(8){width:50px}.status-matrix-table th:nth-child(9){width:92px}.status-matrix-table th:nth-child(10){width:56px}.status-matrix-table th:nth-child(11){width:82px}.status-matrix-table th:nth-child(12){width:78px}.status-matrix-table td:first-child,.status-matrix-table td:nth-child(2),.status-matrix-table td:nth-child(3){white-space:normal}.status-matrix-table td:nth-child(4),.status-matrix-table td:nth-child(5),.status-matrix-table td:nth-child(6),.status-matrix-table td:nth-child(7),.status-matrix-table td:nth-child(8),.status-matrix-table td:nth-child(9),.status-matrix-table td:nth-child(10),.status-matrix-table td:nth-child(11),.status-matrix-table td:nth-child(12){white-space:nowrap}.status-matrix-phase{color:var(--text-body);line-height:1.35}.status-progress-cell{grid-template-columns:minmax(42px,1fr) auto;align-items:center;gap:8px;display:grid}.status-progress-track{border-radius:var(--radius-full);background:var(--bg-elevated);height:5px;position:relative;overflow:hidden}.status-progress-fill{border-radius:inherit;background:var(--accent);height:100%}.status-progress-zero{border-radius:inherit;background:var(--border-strong);opacity:.75;height:1px;margin-top:2px}.status-progress-value{color:var(--text-primary);font-size:.78rem;font-weight:800}.dashboard-tabs{border-bottom:1px solid var(--border);gap:20px;margin:4px 0 16px;display:flex;overflow-x:auto}.dashboard-tab{color:var(--text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0 0 10px;font-size:.8125rem;font-weight:700;position:relative}.dashboard-tab:after{content:"";background:0 0;border-radius:2px;height:2px;position:absolute;bottom:-1px;left:0;right:0}.dashboard-tab.is-active{color:var(--text-primary)}.dashboard-tab.is-active:after{background:var(--accent)}@media (width<=1080px){.dashboard-donut-wrap{grid-template-columns:1fr}}.weekly-reports-surface{max-width:1640px;color:var(--text-primary);gap:18px;display:grid}.weekly-gantt-button{border:1px solid var(--border);min-height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:7px 13px;font-size:.8125rem;font-weight:750;transition:background .15s,border-color .15s,color .15s}.weekly-gantt-button:hover,.weekly-gantt-button:focus-visible{background:var(--bg-elevated);border-color:var(--border-strong);color:var(--text-primary);outline:none}.weekly-gantt-button.is-active{border-color:var(--status-done);background:var(--status-done-bg);color:var(--status-done)}.weekly-control-status{border-top:1px solid var(--border);color:var(--text-secondary);flex-basis:100%;padding-top:10px;font-size:.8125rem}.weekly-control-status strong{color:var(--text-primary)}.weekly-command-panel,.weekly-truth-console{background:var(--bg-surface-alpha);border-radius:var(--radius-lg);border:0;padding:22px;position:relative}.weekly-section-kicker{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:7px;font-size:.6875rem;font-weight:800}.weekly-template-alert{background:var(--status-warn-bg);border:1px solid var(--status-warn);border-radius:var(--radius-md);margin-bottom:16px;padding:12px 16px;font-size:.8125rem}.weekly-truth-console{padding:12px}.weekly-truth-scroll{width:100%}.weekly-truth-bar{grid-template-columns:minmax(270px,1.2fr) minmax(100px,.4fr) minmax(310px,1.25fr);gap:8px;min-width:700px;display:grid}.weekly-truth-group{gap:8px;min-width:0;display:grid}.weekly-truth-group-progress{grid-template-columns:repeat(3,minmax(84px,1fr))}.weekly-truth-group-validation{grid-template-columns:minmax(96px,1fr)}.weekly-truth-group-issues{grid-template-columns:repeat(5,minmax(54px,1fr))}.weekly-truth-cell{min-height:58px;padding:var(--table-cell-padding-y) var(--table-cell-padding-x);border-radius:var(--radius-md);background:var(--bg-elevated);border:0}.weekly-truth-group-progress .weekly-truth-cell{background:var(--bg-elevated);min-height:66px;padding:10px}.weekly-truth-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:7px;font-size:.625rem;font-weight:800}.weekly-truth-value{color:var(--text-primary);font-size:1rem;font-weight:850;line-height:1.1}.weekly-truth-group-progress .weekly-truth-value{font-size:1.125rem}.weekly-truth-sub{color:var(--text-muted);margin-top:5px;font-size:.6875rem}.weekly-truth-cell.tone-good .weekly-truth-value{color:var(--status-done)}.weekly-truth-cell.tone-warning .weekly-truth-value{color:var(--status-warn)}.weekly-truth-cell.tone-critical .weekly-truth-value{color:var(--status-alert)}.weekly-truth-cell.tone-accent .weekly-truth-value{color:var(--accent)}.weekly-truth-cell.tone-quiet .weekly-truth-value,.weekly-truth-cell.tone-quiet .weekly-truth-sub{color:var(--text-muted)}.weekly-overview-main{gap:16px;min-width:0;display:grid}.weekly-action-panel h2{color:var(--text-primary);margin:0 0 14px;font-size:1rem}.weekly-action-list{gap:8px;display:grid}.weekly-action-row{border-radius:var(--radius-md);background:var(--bg-elevated);border:0;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}.weekly-action-label{color:var(--text-primary);font-size:.8125rem;font-weight:750}.weekly-action-detail{color:var(--text-muted);margin-top:3px;font-size:.75rem;line-height:1.35}.weekly-action-value{color:var(--text-secondary);white-space:nowrap;font-size:.8125rem;font-weight:800}.weekly-action-row.tone-warning .weekly-action-value{color:var(--status-warn)}.weekly-action-row.tone-critical .weekly-action-value{color:var(--status-alert)}.weekly-action-clear{border-radius:var(--radius-md);background:var(--status-done-bg);color:var(--status-done);border:0;gap:5px;padding:14px;display:grid}.weekly-action-clear span{color:var(--text-secondary);font-size:.8125rem}.weekly-phase-board{background:var(--bg-surface-alpha);border:0;margin-bottom:0}.weekly-compact-trend{border:0;margin-bottom:0}.weekly-compact-trend.is-empty{color:var(--text-muted)}.weekly-trend-head,.weekly-phase-board-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.weekly-trend-head strong,.weekly-phase-board-head h2{color:var(--text-primary);margin:0;font-size:1rem}.weekly-trend-head span,.weekly-phase-board-head span{color:var(--text-muted);font-size:.75rem}.weekly-phase-table{border-top:1px solid var(--border);min-width:620px;display:grid}.weekly-phase-columns,.weekly-phase-row{grid-template-columns:minmax(220px,1fr) 84px 72px 116px;align-items:center;column-gap:12px;display:grid}.weekly-phase-columns{min-height:32px;padding:0 var(--table-cell-padding-x);color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.6875rem;font-weight:700}.weekly-phase-row{width:100%;min-height:44px;padding:var(--table-cell-padding-y) var(--table-cell-padding-x);border:0;border-bottom:1px solid var(--border);color:var(--text-secondary);text-align:left;font:inherit;background:0 0;border-radius:0;position:relative}button.weekly-phase-row{cursor:pointer}.weekly-phase-row.is-active{background:var(--accent-subtle);box-shadow:inset 2px 0 0 var(--accent)}.weekly-phase-marker{border-radius:var(--radius-full);background:var(--border-strong);width:3px;height:20px;position:absolute;left:0}.weekly-phase-marker.status-done{background:var(--status-done)}.weekly-phase-marker.status-current{background:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.weekly-phase-marker.status-upcoming,.weekly-phase-marker.status-out_of_scope{background:var(--border)}.weekly-phase-title{min-width:0}.weekly-phase-row strong{color:var(--text-primary);font-size:.8125rem;display:block}.weekly-phase-row small{color:var(--text-muted);margin-top:2px;font-size:.6875rem;display:block}.weekly-phase-pct,.weekly-phase-delta{color:var(--text-muted);font-size:.75rem}.weekly-phase-pct{font-weight:800}.weekly-phase-delta{margin-top:0}.weekly-phase-row .has-change{color:var(--status-done);font-weight:800}.weekly-phase-status{border-radius:var(--radius-full);background:var(--bg-elevated);text-transform:capitalize;justify-self:start;padding:2px 7px;font-size:.6875rem;font-weight:800}.weekly-phase-status.status-current{color:var(--accent)}.weekly-phase-status.status-done{color:var(--status-done)}.weekly-phase-status.status-upcoming,.weekly-phase-status.status-out_of_scope{color:var(--text-muted)}.weekly-phase-detail{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-base);margin-top:12px;padding:12px}.weekly-phase-detail>div:first-child{color:var(--text-secondary);justify-content:space-between;gap:12px;margin-bottom:12px;display:flex}.weekly-expandable-text{margin-bottom:14px}.weekly-expandable-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:7px;font-size:.6875rem;font-weight:800}.weekly-expandable-body{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--accent-subtle);max-height:4.6em;color:var(--text-primary);padding:12px 14px;font-size:.875rem;line-height:1.55;overflow:hidden}.weekly-expandable-body.is-expanded{max-height:none}.weekly-expandable-text button{color:var(--accent);cursor:pointer;background:0 0;border:0;margin-top:6px;padding:0;font-size:.75rem;font-weight:750}.weekly-why-panel{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.weekly-why-toggle{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);width:100%;min-height:38px;color:var(--text-secondary);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:8px 11px;font-size:.75rem;font-weight:800;display:flex}.weekly-why-toggle:hover,.weekly-why-toggle:focus-visible{border-color:var(--border-strong);color:var(--text-primary);outline:none}.weekly-report-truth-grid{grid-template-columns:minmax(360px,1.25fr) minmax(320px,.95fr);align-items:stretch;gap:16px;margin-bottom:0;display:grid}.weekly-kpi-strip,.weekly-progress-narrative{box-sizing:border-box;background:var(--bg-surface-alpha);border-radius:var(--radius-lg);border:0;height:100%;margin-bottom:0}.weekly-kpi-strip{padding:20px 22px}.weekly-kpi-primary{flex-wrap:wrap;align-items:flex-end;gap:18px 30px;margin-bottom:20px;display:flex}.weekly-kpi-item{min-width:124px;padding:8px 0}.weekly-kpi-secondary{border-top:1px solid var(--border);flex-wrap:wrap;gap:18px 28px;padding-top:16px;display:flex}.weekly-kpi-missing{appearance:none;text-align:left;cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;margin:0 -4px;padding:0 4px}.weekly-kpi-missing:disabled{cursor:default}.weekly-kpi-missing:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}.weekly-progress-stats{flex-wrap:wrap;align-items:flex-end;gap:18px 26px;display:flex}.weekly-progress-narrative{padding:20px 22px}.weekly-report-body{gap:18px;display:grid}.weekly-progress-chart-card{background:var(--bg-surface-alpha);border:0;margin-bottom:0}.weekly-chart-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.weekly-chart-head h2{color:var(--text-primary);margin:0;font-size:1rem}.weekly-chart-caption{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:14px;padding-top:8px;font-size:.75rem;display:flex}.weekly-section-header{justify-content:space-between;align-items:end;gap:16px;display:flex}.weekly-section-header h2{color:var(--text-primary);margin:0;font-size:1.125rem}.weekly-section-header p{color:var(--text-secondary);margin:4px 0 0;font-size:.8125rem}.weekly-comparison-section{background:var(--bg-surface-alpha);border-radius:var(--radius-lg);border:0;gap:16px;margin-bottom:0;padding:20px;display:grid}.weekly-comparison-list{background:var(--bg-elevated);border:0;margin-bottom:0}.weekly-comparison-empty{text-align:center;color:var(--text-secondary);background:var(--bg-elevated);border:0;margin-bottom:0;padding:40px 24px}.weekly-comparison-empty h3{color:var(--text-primary);margin:0 0 8px;font-size:1rem}.weekly-comparison-empty p{max-width:560px;margin:0 auto;line-height:1.55}.weekly-report-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.weekly-missing-modal{background:var(--bg-surface);z-index:1001;border-radius:var(--radius-lg);width:780px;max-width:96vw;max-height:85vh;box-shadow:var(--shadow-lg);border:1px solid var(--status-alert);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.weekly-report-empty,.weekly-report-error{color:var(--text-secondary);text-align:center;padding:32px 24px}.weekly-report-empty h2,.weekly-report-error h2{color:var(--text-primary);margin:0 0 8px;font-size:1rem}.weekly-report-empty p,.weekly-report-error p{max-width:560px;margin:0 auto;font-size:.875rem;line-height:1.55}.status-active{background:var(--chip-bg-green);color:var(--chip-fg-green);border-radius:var(--radius-full);padding:2px 8px;font-size:.75rem;font-weight:600}.status-closed{background:var(--chip-bg-gray);color:var(--chip-fg-gray);border-radius:var(--radius-full);padding:2px 8px;font-size:.75rem;font-weight:600}.primary-button{background:var(--accent);color:var(--text-inverse);border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 20px;font-size:.9375rem;font-weight:600;transition:opacity .15s}.primary-button:hover{opacity:.85}.secondary-button{background:var(--border);color:var(--text-body);border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 20px;font-size:.9375rem;transition:background .15s}.secondary-button:hover{background:var(--border-strong)}.text-button{color:var(--accent-active);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;padding:6px 8px;font-size:.875rem;font-weight:600;transition:background .15s}.text-button:hover{background:var(--accent-subtle)}.table-card{background:var(--bg-surface-alpha);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-card);overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:1300px}.data-table th,.data-table td{text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);padding:14px 16px;font-size:.8125rem}.data-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:0 0;font-size:.75rem;font-weight:700}.data-table td{color:var(--text-body)}.data-table tbody tr:hover{background:var(--bg-elevated)}.data-table tbody tr.row--alert{background:var(--status-alert-bg)}.modal-overlay{z-index:1000;background:#000000a6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{z-index:1001;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:1040px;max-width:92vw;max-height:90vh;box-shadow:var(--shadow-lg);position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.modal-header{border-bottom:1px solid var(--border);background:var(--overlay-dim);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.modal-header h2{color:var(--text-primary);font-size:.9375rem;font-weight:600}.close-button{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.25rem;line-height:1;transition:background .15s,color .15s;display:flex}.close-button:hover{background:var(--bg-elevated);color:var(--text-primary)}.project-form{grid-template-columns:repeat(4,1fr);gap:20px;padding:20px 24px 24px;display:grid}.form-field{flex-direction:column;gap:6px;margin-bottom:0;display:flex}.form-field label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:.75rem;font-weight:600}.form-field input,.form-field select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);height:40px;color:var(--text-primary);outline:none;padding:0 12px;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.form-field input:focus,.form-field select:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.form-field input::placeholder{color:var(--text-muted)}.form-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;padding-top:8px;display:flex}.form-field textarea{resize:vertical;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);min-height:100px;color:var(--text-primary);outline:none;padding:12px;font-size:.875rem;transition:border-color .15s}.form-field textarea:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.project-selector-card,.selected-project-card,.weekly-form-card{background:var(--bg-surface-alpha);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--border);max-width:100%;margin-bottom:20px;padding:20px}.project-selector-card label{color:var(--text-secondary);margin-bottom:8px;font-size:.875rem;font-weight:600;display:block}.project-selector-card select{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;height:44px;color:var(--text-primary);outline:none;padding:0 14px;font-size:.875rem;transition:border-color .15s}.project-selector-card select:focus{border-color:var(--accent-active)}.selected-project-card h2,.weekly-form-card h2{color:var(--text-primary);margin-bottom:16px;font-size:1rem;font-weight:600}.project-details-grid{color:var(--text-secondary);grid-template-columns:repeat(3,1fr);gap:12px;font-size:.875rem;display:grid}.weekly-form-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px;display:grid}.full-width{grid-column:1/-1}.auth-loading{background:var(--bg-page);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-loading-spinner{border:3px solid var(--border);border-top-color:var(--accent-active);border-radius:50%;width:34px;height:34px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page{background:var(--bg-page);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--bg-surface-alpha);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg);flex-direction:column;gap:20px;padding:36px 32px;display:flex}.login-header{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.login-logo{justify-content:center;align-items:center;display:flex}.login-title{color:var(--text-primary);font-size:1.125rem;font-weight:700;line-height:1.3}.login-subtitle{color:var(--text-muted);font-size:.8125rem}.login-form{flex-direction:column;gap:14px;display:flex}.login-error{background:var(--chip-bg-red);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--chip-fg-red);align-items:center;gap:8px;padding:10px 14px;font-size:.8125rem;display:flex}.login-field{flex-direction:column;gap:6px;display:flex}.login-field label{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.login-field input{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);height:42px;color:var(--text-primary);outline:none;padding:0 14px;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.login-field input:focus{border-color:var(--accent);box-shadow:var(--focus-ring)}.login-field input::placeholder{color:var(--text-muted)}.login-field input:disabled{opacity:.4;cursor:not-allowed}.login-row{justify-content:space-between;align-items:center;display:flex}.login-checkbox{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.8125rem;display:flex}.login-checkbox input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}.login-link{color:var(--accent);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:.8125rem;text-decoration:underline}.login-link:hover{opacity:.8}.login-btn{background:var(--accent);height:44px;color:var(--text-inverse);border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:10px;font-size:.9375rem;font-weight:700;transition:opacity .15s;display:flex}.login-btn:hover:not(:disabled){opacity:.85}.login-btn:disabled{opacity:.45;cursor:not-allowed}.login-spinner{border:2px solid #0003;border-top-color:var(--text-inverse);border-radius:50%;width:17px;height:17px;animation:.7s linear infinite spin}.login-hint{color:var(--text-muted);margin:0;font-size:.8125rem;line-height:1.5}.login-info{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;font-size:.8125rem;line-height:1.5}.login-footer{text-align:center;color:var(--text-muted);font-size:.6875rem}.unauth-page{background:var(--bg-page);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.unauth-card{text-align:center;max-width:360px}.unauth-icon{color:var(--border);letter-spacing:-2px;margin-bottom:16px;font-size:56px;font-weight:800}.unauth-title{color:var(--text-primary);margin-bottom:10px;font-size:1.25rem;font-weight:700}.unauth-text{color:var(--text-secondary);margin-bottom:28px;font-size:.875rem;line-height:1.65}.unauth-text strong{color:var(--text-body)}.unauth-actions{justify-content:center;gap:10px;display:flex}.contractor-select-page{background:var(--bg-page);flex-direction:column;min-height:100vh;display:flex}.contractor-header{background:var(--bg-surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;row-gap:8px;padding:14px 20px;display:flex}.contractor-header-brand{color:var(--text-primary);align-items:center;gap:10px;font-size:.9375rem;font-weight:600;display:flex}.contractor-header-user{align-items:center;gap:12px;min-width:0;display:flex}.contractor-role-badge{background:var(--chip-bg-red);color:var(--chip-fg-red);border-radius:var(--radius-full);padding:3px 10px;font-size:.75rem;font-weight:600}.contractor-user-name{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:.8125rem;overflow:hidden}.contractor-select-main{width:100%;max-width:920px;margin:0 auto;padding:44px 28px}.contractor-select-heading{margin-bottom:32px}.contractor-select-heading h1{color:var(--text-primary);margin-bottom:6px;font-size:1.5rem;font-weight:700}.contractor-select-heading p{color:var(--text-muted);font-size:.875rem}.contractor-no-projects{background:var(--bg-surface-alpha);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;color:var(--text-muted);padding:48px;font-size:.875rem;line-height:2}.contractor-admin-selector{background:var(--bg-surface-alpha);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:24px;padding:12px 16px;display:flex}.contractor-admin-selector label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:.75rem;font-weight:700}.contractor-admin-selector select{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);min-height:38px;color:var(--text-primary);flex:220px;max-width:320px;padding:6px 12px;font-size:.875rem}.contractor-admin-selector-hint{color:var(--text-muted);font-size:.75rem}.contractor-summary{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:24px;display:grid}.contractor-summary-tile{background:var(--bg-surface-alpha);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:left;cursor:pointer;padding:14px 16px;font-family:inherit;transition:border-color .15s,background .15s}.contractor-summary-tile:hover{border-color:var(--accent-active)}.contractor-summary-tile[aria-pressed=true]{border-color:var(--accent-active);background:var(--accent-subtle)}.contractor-summary-value{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.2}.contractor-summary-label{color:var(--text-secondary);margin-top:2px;font-size:.75rem}.contractor-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin:0 0 12px;font-size:.75rem;font-weight:700}.contractor-project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.contractor-project-grid+.contractor-section-label{margin-top:28px}.contractor-project-card{background:var(--bg-surface-alpha);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:20px;transition:border-color .15s;display:flex}.contractor-project-card:hover{border-color:var(--accent-active)}.contractor-project-code{color:var(--accent-active);letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem;font-weight:700}.contractor-project-name{color:var(--text-primary);font-size:1.0625rem;font-weight:600}.contractor-project-meta{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.8125rem;display:flex}.contractor-work-status{font-size:.8125rem;font-weight:600}.contractor-work-status-strong{font-size:.875rem;font-weight:700}.contractor-project-actions{flex-direction:column;gap:8px;margin-top:6px;display:flex}.contractor-project-btn{width:100%}.sidebar-user{border-bottom:1px solid var(--border);flex-direction:column;gap:5px;margin-bottom:24px;padding-bottom:18px;display:flex}.sidebar-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;overflow:hidden}.sidebar-role-badge{border-radius:var(--radius-full);width:fit-content;padding:2px 8px;font-size:.6875rem;font-weight:600;display:inline-block}.sidebar-logout-btn{border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text-secondary);cursor:pointer;font-size:.8125rem;font-family:var(--font-sans);background:0 0;padding:9px;transition:border-color .15s,color .15s}.sidebar-logout-btn:hover{border-color:var(--accent-error);color:var(--accent-error)}.sidebar-footer{gap:10px;margin-top:auto;padding-top:16px;display:grid}.sidebar-profile-card{border-radius:var(--radius-lg);background:var(--bg-base);grid-template-columns:34px minmax(0,1fr) 30px;align-items:center;gap:9px;padding:10px;display:grid}.sidebar-profile-avatar{background:var(--bg-elevated);width:34px;height:34px;color:var(--text-primary);border-radius:10px;place-items:center;font-size:.8125rem;font-weight:800;display:grid}.sidebar-profile-copy{gap:4px;min-width:0;display:grid}.sidebar-logout-icon{border-radius:var(--radius-md);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;place-items:center;transition:background .15s,color .15s;display:grid}.sidebar-logout-icon:hover,.sidebar-logout-icon:focus-visible{background:var(--status-alert-bg);color:var(--status-alert);outline:none}.sidebar-footer-controls{justify-content:flex-start;display:flex}.sidebar-credit{color:var(--text-muted);text-align:center;font-size:.6875rem}.admin-users-page{max-width:1400px}.admin-users-toolbar{justify-content:space-between;align-items:end;gap:16px;margin:20px 0 12px;display:flex}.admin-users-search{width:min(420px,100%);color:var(--text-muted);gap:5px;font-size:.75rem;font-weight:700;display:grid}.admin-users-count{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.admin-users-table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface-alpha);box-shadow:var(--shadow-card);overflow:auto}.admin-users-table{border-collapse:collapse;width:100%;min-width:1050px}.admin-users-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;background:var(--bg-elevated);border-bottom:1px solid var(--border);padding:10px 12px;font-size:.6875rem}.admin-users-table td{vertical-align:middle;border-bottom:1px solid var(--border);padding:8px 12px}.admin-users-table tbody tr:last-child td{border-bottom:none}.admin-user-row{transition:background .15s}.admin-user-row:hover{background:var(--bg-elevated)}.admin-user-row-dirty{box-shadow:inset 3px 0 0 var(--accent-active)}.admin-user-cell{align-items:center;gap:10px;min-width:220px;display:flex}.admin-user-avatar{background:var(--border);width:32px;height:32px;color:var(--text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8125rem;font-weight:700;display:flex}.admin-user-name-input{border:none;border-bottom:1px solid var(--border);width:min(240px,100%);color:var(--text-primary);font-size:.8125rem;font-weight:600;font-family:var(--font-sans);background:0 0;outline:none;padding:2px 0 4px;transition:border-color .15s}.admin-user-name-input:focus{border-color:var(--accent-active)}.admin-user-email{max-width:280px;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;display:block;overflow:hidden}.admin-user-role-select{min-width:140px;padding-block:7px}.admin-user-role-badge,.admin-user-access-badge{border-radius:var(--radius-full);background:var(--accent-subtle);width:max-content;color:var(--accent-active);white-space:nowrap;align-items:center;padding:4px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.admin-user-role-badge.is-empty{background:var(--bg-elevated);color:var(--text-muted)}.admin-user-access-badge{background:var(--bg-elevated);color:var(--text-body)}.admin-users-membership-note{color:var(--text-muted);font-size:.75rem}.admin-user-row-save{min-width:76px;padding:7px 12px}.admin-user-row-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.admin-user-row-actions .btn{min-height:32px;padding:6px 10px}.admin-user-remove{color:var(--status-alert)}.admin-user-saved{color:var(--status-done);font-size:.75rem;font-weight:700}.admin-user-projects-row td{background:var(--bg-elevated);padding:0 12px 12px}.admin-user-projects-panel{max-width:760px;padding:12px}.admin-user-projects-panel>strong{margin-bottom:8px;font-size:.8125rem;display:block}.admin-project-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;display:grid}.admin-project-row{cursor:pointer;border-radius:var(--radius-sm);background:0 0;align-items:center;gap:10px;padding:7px 10px;font-size:.8125rem;transition:background .15s;display:flex}.admin-project-row:hover{background:var(--bg-elevated)}.admin-project-row.is-readonly{cursor:default}.admin-project-row.is-readonly:hover{background:0 0}.admin-project-row input[type=checkbox]{accent-color:var(--accent-active);cursor:pointer;flex-shrink:0;width:14px;height:14px}.admin-project-code{color:var(--accent-active);letter-spacing:.06em;flex-shrink:0;font-size:.6875rem;font-weight:700}.admin-project-name{color:var(--text-body);flex:1}.admin-project-city{color:var(--text-muted);flex-shrink:0;font-size:.6875rem}.admin-no-projects{color:var(--text-muted);font-size:.8125rem}.admin-save-ok{background:var(--status-done)!important;color:var(--text-inverse)!important}.admin-users-empty{text-align:center;color:var(--text-muted);padding:28px!important}.admin-user-edit-modal{width:min(680px,92vw)}.admin-user-edit-modal .modal-header{align-items:flex-start}.admin-user-edit-modal .modal-header h2{margin:0 0 3px;font-size:1.1rem}.admin-user-edit-modal .modal-header p{color:var(--text-muted);margin:0;font-size:.8125rem}.admin-user-edit-body{gap:14px;max-height:65vh;padding:18px 20px;display:grid;overflow:auto}.admin-user-edit-body>label{color:var(--text-muted);gap:6px;font-size:.75rem;font-weight:700;display:grid}.admin-user-edit-body label small{color:var(--text-muted);font-weight:400}.admin-user-edit-projects{border:1px solid var(--border);border-radius:var(--radius-md);margin:2px 0 0;padding:14px}.admin-user-edit-projects legend{color:var(--text-body);padding:0 6px;font-size:.8125rem;font-weight:700}.admin-user-edit-footer{border-top:1px solid var(--border);background:var(--bg-elevated);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}@media (width<=720px){.admin-users-toolbar{flex-direction:column;align-items:stretch}.admin-project-list{grid-template-columns:1fr}.admin-user-edit-body{padding:14px}.admin-user-edit-footer{padding:12px 14px}}.contractor-link{color:var(--accent-active);font-weight:600;text-decoration:none}.contractor-link:hover{text-underline-offset:2px;text-decoration:underline}.option-list{gap:10px;margin-top:10px;margin-bottom:20px;display:grid}.option-list label{color:var(--text-body);align-items:center;gap:10px;font-size:.875rem;font-weight:500;display:flex}.option-list input{width:16px;height:16px;accent-color:var(--accent-active)}@media (width<=900px){.dashboard-grid{grid-template-columns:1fr}.sidebar{width:200px;padding:16px 12px}.main-content{padding:24px 20px}.weekly-report-truth-grid,.weekly-report-links,.weekly-overview-console{grid-template-columns:1fr}.weekly-action-panel{order:-1;max-height:none;position:static}.weekly-reports-toolbar{align-items:stretch}.weekly-reports-toolbar-fields{width:100%}.weekly-reports-toolbar .dashboard-filter-group{flex:220px}.weekly-reports-toolbar .dashboard-filter-group select{width:100%}}.mobile-nav-toggle,.mobile-nav-backdrop{display:none}@media (width<=640px){.mobile-nav-toggle{z-index:60;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);width:40px;min-width:44px;height:44px;color:var(--text-primary);cursor:pointer;justify-content:center;align-items:center;font-size:18px;line-height:1;display:flex;position:fixed;top:12px;left:12px}.mobile-nav-backdrop{z-index:50;background:#00000073;display:block;position:fixed;inset:0}.sidebar{z-index:55;width:260px;max-width:82vw;box-shadow:var(--shadow);visibility:hidden;pointer-events:none;transition:transform .18s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.sidebar.sidebar-open{visibility:visible;pointer-events:auto;transform:translate(0)}.main-content{padding:64px 16px 24px}.page-header{gap:12px;margin-bottom:22px}.page-header h1{font-size:1.5rem}.btn,.btn-ghost,.btn-ghost-sm,.theme-toggle,.sidebar a{min-height:44px}}.site-visit-select-row,.site-visit-select-header{grid-template-columns:2fr 1.5fr 1fr auto;gap:16px;display:grid}.site-visit-select-row{width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;align-items:center;padding:12px 18px}@media (width<=480px){.site-visit-select-header{display:none}.site-visit-select-row{grid-template-columns:1fr;gap:6px;padding:14px 16px}.site-visit-select-cta{justify-content:center;align-items:center;width:100%;min-height:44px;display:flex;padding:10px 18px!important}}.contractor-report-page{min-height:100vh;padding:var(--space-6) var(--space-5) 80px;background:var(--bg-base);color:var(--text-primary);--field-bg-contractor:var(--bg-base);--field-bg-card:var(--bg-surface);--field-bg-faint:var(--bg-base);--field-bg-subtle:var(--bg-elevated);--field-border:var(--border);--field-border-strong:var(--border-strong);--field-text-heading:var(--text-primary);--field-text-body:var(--text-primary);--field-text-secondary:var(--text-secondary);--field-text-muted:var(--text-muted);--field-text-label:var(--text-muted);--field-accent-contractor:var(--accent);--field-success-bg:var(--status-done-bg);--field-success-border:var(--border);--field-success-fg:var(--status-done);--field-warning-bg:var(--status-warn-bg);--field-warning-border:var(--border);--field-warning-fg:var(--status-warn);--field-danger-bg:var(--status-alert-bg);--field-danger-border:var(--border);--field-danger-fg:var(--status-alert)}.contractor-report-document{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);width:min(100%,900px);margin:0 auto;overflow:hidden}.contractor-report-header{gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border);background:var(--bg-surface);display:grid}.contractor-report-header-main,.contractor-report-history,.contractor-report-week-progress>div,.contractor-report-page .field-form-sticky-submit{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.contractor-report-header-main{align-items:flex-start}.contractor-report-eyebrow{margin-bottom:var(--space-1);color:var(--accent);font-size:.75rem;font-weight:700}.contractor-report-header h1{color:var(--text-primary);margin:0;font-size:1.25rem;line-height:1.3}.contractor-report-header-main p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:.8125rem}.contractor-report-continuity{min-width:190px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--status-done-bg);color:var(--status-done);gap:2px;font-size:.75rem;display:grid}.contractor-report-continuity span{color:var(--text-muted);font-size:.6875rem}.contractor-report-context{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.contractor-report-week-progress{gap:var(--space-2);color:var(--text-muted);font-size:.75rem;display:grid}.contractor-report-week-progress strong{color:var(--accent)}.contractor-report-week-progress .progress-track{height:5px}.contractor-report-week-progress .progress-fill{background:var(--accent)}.contractor-report-history{padding-top:var(--space-3);border-top:1px solid var(--border);color:var(--text-muted);flex-wrap:wrap;font-size:.75rem}.contractor-report-history>div{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.contractor-report-history strong{color:var(--text-primary)}.contractor-report-history .status-dot{border-radius:var(--radius-full);background:var(--status-done);width:7px;height:7px}.contractor-report-history .status-dot.is-warn{background:var(--status-warn)}.contractor-report-group{padding:0 var(--space-6)}.contractor-report-group+.contractor-report-group{border-top:6px solid var(--bg-base)}.contractor-report-group-heading{gap:var(--space-3);padding:var(--space-5) 0 var(--space-2);display:flex}.contractor-report-group-heading>span{border-radius:var(--radius-full);background:var(--accent-subtle);width:24px;height:24px;color:var(--accent);flex:0 0 24px;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.contractor-report-group-heading h2{color:var(--text-primary);margin:1px 0 0;font-size:.9375rem}.contractor-report-group-heading p{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:.75rem;line-height:1.45}.contractor-report-section{margin:0}.contractor-report-section-content{min-width:0}.contractor-report-inheritance-note,.contractor-report-boundary-note,.contractor-report-evidence-count{color:var(--text-muted);margin:0;font-size:.75rem;line-height:1.5}.contractor-report-inheritance-note,.contractor-report-boundary-note{margin-bottom:var(--space-4)}.contractor-report-field-label{margin-bottom:var(--space-2);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.6875rem;font-weight:700;display:block}.contractor-report-input-narrow{box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);width:min(100%,320px);min-height:44px;color:var(--text-primary);font:inherit;padding:10px 14px}.contractor-report-declaration{align-items:flex-start;gap:var(--space-3);min-height:44px;color:var(--text-primary);cursor:pointer;font-size:.8125rem;line-height:1.6;display:flex}.contractor-report-checkbox{border:2px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;flex:0 0 22px;justify-content:center;align-items:center;width:22px;height:22px;margin-top:1px;display:flex}.contractor-report-checkbox.is-checked{border-color:var(--accent);background:var(--accent);color:var(--bg-surface)}.contractor-report-checkbox:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.contractor-report-page .field-form-sticky-submit{padding:var(--space-3) var(--space-6);border-top:1px solid var(--border);background:var(--bg-surface)}.contractor-report-autosave-note{color:var(--text-muted);font-size:.75rem}.contractor-report-submit{width:auto;min-width:190px;min-height:44px}.master-list-empty{align-items:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;flex-direction:column;display:flex}.master-list-empty strong{color:var(--text-primary)}.master-list-empty span{color:var(--text-muted);font-size:.75rem;line-height:1.5}.master-list-empty .btn{margin-top:var(--space-2)}.field-form-page input,.field-form-page select,.field-form-page textarea{font-size:16px!important}.field-form-2col{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=640px){.field-form-2col{grid-template-columns:1fr}.weekly-project-header{align-items:flex-start}.weekly-kpi-primary,.weekly-kpi-secondary,.weekly-progress-stats{gap:14px}.weekly-kpi-item{min-width:calc(50% - 8px)}.weekly-command-panel,.weekly-comparison-section,.weekly-truth-console{padding:16px}.weekly-reports-toolbar{position:static}.weekly-toolbar-actions{width:100%}.weekly-missing-modal{width:calc(100vw - 20px);max-height:calc(100vh - 28px)}}.field-form-scroll-x{overflow-x:auto}@media (width<=640px){.contractor-report-page{padding:0 0 80px}.contractor-report-document{border-left:0;border-right:0;border-radius:0}.contractor-report-header{padding:var(--space-4)}.contractor-report-header-main{flex-direction:column}.contractor-report-continuity{box-sizing:border-box;width:100%}.contractor-report-context{grid-template-columns:repeat(2,minmax(0,1fr))}.contractor-report-group{padding:0 var(--space-3)}.contractor-report-group-heading{padding-top:var(--space-4)}.contractor-report-section.is-ruled{padding:var(--space-3) 0}.field-form-sticky-submit{z-index:20;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:#fff;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 10px #00000014}.contractor-report-page .field-form-sticky-submit{padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--bg-surface);flex-direction:column;align-items:stretch}.contractor-report-autosave-note{display:none}.contractor-report-submit{width:100%}.field-form-sticky-submit-spacer{height:84px}}@keyframes field-form-spin{to{transform:rotate(360deg)}}.field-form-error-summary{border:1px solid var(--field-danger-border);background:var(--field-danger-bg);color:var(--field-danger-fg-dark);border-radius:12px;margin-bottom:16px;padding:16px 20px;font-size:.875rem;line-height:1.5}.field-form-recovery{border:1px solid var(--field-info-border);background:var(--field-info-bg);color:var(--field-text-body);border-radius:12px;justify-content:space-between;gap:20px;margin-bottom:16px;padding:18px 20px;display:flex}.field-form-recovery h2{color:var(--field-text-heading);margin:0 0 8px;font-size:1rem}.field-form-recovery p{margin:0}.field-form-recovery dl{flex-wrap:wrap;gap:8px 20px;margin:0;display:flex}.field-form-recovery dl div{gap:6px;display:flex}.field-form-recovery dt{color:var(--field-text-label);font-weight:700}.field-form-recovery dd{margin:0}.field-form-recovery-actions{flex-direction:column;flex-shrink:0;justify-content:center;gap:8px;display:flex}@media (width<=560px){.field-form-recovery,.field-form-recovery-actions{flex-direction:column}.field-form-recovery-actions button{width:100%;min-height:44px}}.site-visit-page{background:var(--field-bg-sitevisit);min-height:100vh;color:var(--field-text-body);--bg-base:var(--field-bg-sitevisit);--bg-surface:var(--field-bg-card);--bg-elevated:var(--field-bg-faint);--border:var(--field-border);--border-strong:var(--field-border-strong);--text-primary:var(--field-text-heading);--text-secondary:var(--field-text-secondary);--text-muted:var(--field-text-muted);padding:24px 20px 80px}.site-visit-document{border:1px solid var(--field-border);background:var(--field-bg-card);border-radius:12px;flex-direction:column;width:min(100%,900px);margin:0 auto;display:flex;overflow:hidden}.site-visit-header{border-bottom:1px solid var(--field-border);gap:16px;padding:20px 24px;display:grid}.site-visit-header-main{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.site-visit-eyebrow{color:var(--field-accent-sitevisit);margin-bottom:4px;font-size:.75rem;font-weight:700}.site-visit-header h1{color:var(--field-text-heading);margin:0;font-size:1.25rem;line-height:1.3}.site-visit-header-main p{color:var(--field-text-muted);margin:4px 0 0;font-size:.8125rem}.site-visit-save-state{text-align:right;gap:3px;min-width:210px;display:grid}.site-visit-save-state strong{color:var(--field-accent-sitevisit);font-size:.75rem}.site-visit-save-state span{color:var(--field-text-muted);font-size:.6875rem}.site-visit-project-context{grid-template-columns:repeat(4,minmax(0,1fr))}.site-visit-submit-error,.site-visit-validation-summary,.site-visit-page .field-form-recovery{margin:12px 16px 0}.site-visit-validation-summary ul{margin:8px 0 0;padding-left:18px}.site-visit-context-section,.site-visit-declaration-section,.site-visit-legacy-scope{margin:0 24px}.site-visit-section{margin:0}.site-visit-section-content{min-width:0}.site-visit-field{color:var(--field-text-label);letter-spacing:.04em;text-transform:uppercase;gap:8px;font-size:.6875rem;font-weight:700;display:grid}.site-visit-field input,.site-visit-field select{box-sizing:border-box;border:1px solid var(--field-border-strong);background:var(--field-bg-card);width:100%;min-height:44px;color:var(--field-text-body);text-transform:none;border-radius:8px;padding:0 12px}.site-visit-no-report{border:1px solid var(--field-warning-border);background:var(--field-warning-bg);min-height:44px;color:var(--field-warning-fg-dark);text-transform:none;border-radius:8px;align-items:center;padding:0 12px;font-size:.8125rem;display:flex}.site-visit-loading,.site-visit-no-scope{text-align:center;color:var(--field-text-muted);margin:0 24px 20px;padding:32px}.site-visit-workspace{background:var(--field-bg-subtle);grid-template-columns:336px minmax(0,1fr);gap:8px;min-height:600px;margin:8px;display:grid}.site-visit-scope-pane,.site-visit-detail-pane{border:1px solid var(--field-border);background:var(--field-bg-card);min-width:0}.site-visit-scope-pane{flex-direction:column;display:flex}.site-visit-scope-heading{border-bottom:1px solid var(--field-border);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.site-visit-scope-heading h2,.site-visit-current-heading h2,.site-visit-review h2,.site-visit-filter-empty h2,.site-visit-legacy-heading h2{color:var(--field-text-heading);margin:0;font-size:.9375rem}.site-visit-scope-heading p,.site-visit-current-heading p,.site-visit-review p,.site-visit-filter-empty p,.site-visit-legacy-heading p{color:var(--field-text-muted);margin:4px 0 0;font-size:.75rem;line-height:1.45}.site-visit-scope-heading>span{color:var(--field-text-muted);white-space:nowrap;font-size:.6875rem}.site-visit-filters{border-bottom:1px solid var(--field-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:10px 12px;display:grid}.site-visit-filters button{border:1px solid var(--field-border-strong);background:var(--field-bg-card);min-height:44px;color:var(--field-text-body);text-transform:capitalize;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;padding:7px 9px;font-size:.75rem;display:flex}.site-visit-filters button span{color:var(--field-text-muted);font-size:.6875rem}.site-visit-filters button[aria-pressed=true]{border-color:var(--field-accent-sitevisit);background:var(--field-info-bg);color:var(--field-info-fg-dark);font-weight:700}.site-visit-task-list{min-height:0;overflow-y:auto}.site-visit-master-row{border:0;border-bottom:1px solid var(--field-border);background:var(--field-bg-card);width:100%;min-height:72px;color:var(--field-text-body);text-align:left;padding:11px 16px;display:grid}.site-visit-master-row strong{color:var(--field-text-heading);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;overflow:hidden}.site-visit-master-row span,.site-visit-master-row small{color:var(--field-text-muted);margin-top:3px;font-size:.6875rem}.site-visit-master-row small.is-complete{color:var(--field-success-fg-dark)}.site-visit-master-row.is-selected{background:var(--field-info-bg);box-shadow:inset 3px 0 0 var(--field-accent-sitevisit)}.site-visit-master-row:focus-visible,.site-visit-filters button:focus-visible,.site-visit-status-options button:focus-visible,.site-visit-progression button:focus-visible,.site-visit-checkbox:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.site-visit-detail-pane{flex-direction:column;display:flex}.site-visit-current-heading{border-bottom:1px solid var(--field-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 20px;display:flex}.site-visit-current-heading>div>span{color:var(--field-accent-sitevisit);font-size:.6875rem;font-weight:700}.site-visit-current-heading>strong{color:var(--field-text-muted);white-space:nowrap;font-size:.75rem}.site-visit-observation{gap:12px;min-width:0;padding:16px 20px 24px;display:grid}.site-visit-reported,.site-visit-observed{border:1px solid var(--field-border);border-radius:8px;padding:14px 16px}.site-visit-reported{background:var(--field-info-bg)}.site-visit-observed{background:var(--field-success-bg)}.site-visit-concept-label{color:var(--field-text-label);letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px;font-size:.6875rem;font-weight:700}.site-visit-reported h3,.site-visit-observed h3{color:var(--field-text-heading);text-transform:capitalize;margin:0;font-size:1rem}.site-visit-reported p{color:var(--field-text-secondary);margin:5px 0 0;font-size:.75rem}.site-visit-status-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.site-visit-status-options button{border:1px solid var(--field-border-strong);background:var(--field-bg-card);min-height:44px;color:var(--field-text-secondary);border-radius:7px;padding:8px 6px;font-size:.75rem;position:relative}.site-visit-status-options button[aria-pressed=true]{border-color:var(--field-accent-sitevisit);background:var(--field-info-bg);color:var(--field-info-fg-dark);font-weight:700}.site-visit-status-options button span{color:var(--field-text-muted);margin-top:2px;font-size:.5625rem;display:block}.site-visit-simple-list{border:1px solid var(--field-border);background:var(--field-bg-card);box-shadow:var(--field-shadow);border-radius:14px;margin:0 24px 24px;overflow:hidden}.site-visit-simple-list-heading{border-bottom:1px solid var(--field-border);background:var(--field-bg-faint);justify-content:space-between;gap:16px;padding:18px 22px;display:flex}.site-visit-simple-list-heading h2{color:var(--field-text-heading);margin:0 0 4px;font-size:1rem}.site-visit-simple-list-heading p{color:var(--field-text-secondary);margin:0;font-size:.8125rem}.site-visit-simple-group{padding:0 22px}.site-visit-simple-group+.site-visit-simple-group{border-top:1px solid var(--field-border)}.site-visit-simple-group>h3{color:var(--field-text-heading);letter-spacing:.04em;text-transform:uppercase;margin:0;padding:14px 0 8px;font-size:.75rem}.site-visit-simple-task{border-top:1px solid var(--field-bg-subtle);justify-content:space-between;align-items:center;gap:18px;padding:10px 0;display:flex}.site-visit-simple-task-name{flex:260px;min-width:190px}.site-visit-simple-task-name strong{color:var(--field-text-body);font-size:.8125rem;font-weight:600;display:block}.site-visit-simple-task-name span{color:var(--field-text-muted);text-transform:capitalize;margin-top:3px;font-size:.6875rem;display:block}.site-visit-simple-statuses{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;gap:4px;display:flex}.site-visit-simple-statuses button{border:1px solid var(--field-border);background:var(--field-bg-card);min-height:38px;color:var(--field-text-muted);cursor:pointer;border-radius:7px;padding:6px 9px;font-size:.6875rem;position:relative}.site-visit-simple-statuses button.is-contractor{border-color:var(--field-info-border);background:var(--field-info-bg);color:var(--field-info-fg-dark)}.site-visit-simple-statuses button.is-selected{border-color:var(--field-accent-sitevisit);background:var(--field-accent-sitevisit);color:var(--field-text-on-accent);font-weight:700}.site-visit-simple-statuses button span{text-transform:uppercase;margin-top:1px;font-size:.5rem;font-weight:700;display:block}.site-visit-progress-control{color:var(--field-text-secondary);grid-template-columns:auto minmax(100px,1fr) 42px;align-items:center;gap:10px;margin-top:12px;font-size:.75rem;display:grid}.site-visit-progress-control input{min-height:44px}.site-visit-progress-control strong{color:var(--field-text-heading);text-align:right}.site-visit-note-control{color:var(--field-text-label);gap:7px;margin-top:14px;font-size:.75rem;font-weight:700;display:grid}.site-visit-note-control small{color:var(--field-text-muted);font-weight:400}.site-visit-note-control textarea{box-sizing:border-box;border:1px solid var(--field-border-strong);background:var(--field-bg-card);width:100%;min-height:88px;color:var(--field-text-body);resize:vertical;border-radius:8px;padding:10px 12px;line-height:1.5}.site-visit-discrepancy-state{border:1px solid var(--field-border);border-radius:8px;gap:4px;padding:12px 14px;font-size:.75rem;display:grid}.site-visit-discrepancy-state strong{color:var(--field-text-heading)}.site-visit-discrepancy-state span{color:var(--field-text-secondary)}.site-visit-discrepancy-state.is-pending{background:var(--field-bg-faint)}.site-visit-discrepancy-state.is-aligned{border-color:var(--field-success-border);background:var(--field-success-bg)}.site-visit-filter-empty{text-align:center;place-items:center;min-height:420px;padding:32px;display:grid}.site-visit-filter-empty .btn{margin-top:8px}.site-visit-page .field-form-2col{grid-template-columns:1fr}.site-visit-supporting-sections{grid-template-columns:1fr;gap:0;padding:0 24px;display:grid}.site-visit-supporting-sections .ds-analytical-section{min-width:0}.site-visit-reported-assessment{color:var(--field-text-secondary);margin:0 0 12px;font-size:.75rem}.site-visit-assessment-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.site-visit-assessment-options button{border:1px solid var(--field-border-strong);background:var(--field-bg-card);min-height:44px;color:var(--field-text-secondary);border-radius:8px}.site-visit-assessment-options button[aria-pressed=true]{border-color:var(--field-accent-sitevisit);background:var(--field-info-bg);color:var(--field-info-fg-dark);font-weight:700}.site-visit-evidence .ds-evidence-ledger{margin-bottom:14px}.site-visit-photo-error{border:1px solid var(--field-danger-border);background:var(--field-danger-bg);color:var(--field-danger-fg-dark);border-radius:8px;margin-top:10px;padding:10px 12px;font-size:.8125rem}.site-visit-declaration{min-height:44px;color:var(--field-text-body);cursor:pointer;align-items:flex-start;gap:12px;font-size:.8125rem;line-height:1.55;display:flex}.site-visit-checkbox{border:2px solid var(--field-border-strong);background:var(--field-bg-card);border-radius:6px;flex:0 0 22px;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.site-visit-checkbox.is-checked{border-color:var(--field-accent-sitevisit);background:var(--field-accent-sitevisit);color:var(--field-text-on-accent)}.site-visit-review{border:1px solid var(--field-border);background:var(--field-bg-faint);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin:0 24px 16px;padding:14px 16px;display:flex}.site-visit-review>div:last-child,.site-visit-progression{gap:8px;display:flex}.site-visit-legacy-heading{padding:16px 0 12px}.site-visit-page .field-form-sticky-submit{border-top:1px solid var(--field-border);background:var(--field-bg-card);justify-content:flex-end;align-items:center;gap:10px;padding:12px 24px;display:flex}.site-visit-autosave-note{color:var(--field-text-muted);margin-right:auto;font-size:.75rem}.site-visit-progression button,.site-visit-submit{min-height:44px}.site-visit-submit{min-width:170px}@media (width<=760px){.site-visit-page{padding:0 0 92px}.site-visit-document{border-left:0;border-right:0;border-radius:0}.site-visit-header{padding:14px 16px}.site-visit-header-main{display:block}.site-visit-save-state{text-align:left;margin-top:8px}.site-visit-project-context{grid-template-columns:repeat(2,minmax(0,1fr))}.site-visit-context-section{order:2;margin:0 12px}.site-visit-workspace{order:1;grid-template-columns:minmax(0,1fr);min-height:0;margin:8px 0}.site-visit-scope-pane{border-left:0;border-right:0;order:1}.site-visit-scope-heading{padding:12px 14px}.site-visit-filters{scrollbar-width:none;padding:8px 10px;display:flex;overflow-x:auto}.site-visit-filters::-webkit-scrollbar{display:none}.site-visit-filters button{min-width:max-content}.site-visit-task-list{display:none}.site-visit-detail-pane{display:contents}.site-visit-current-heading{border-top:1px solid var(--field-border);background:var(--field-bg-card);order:0;padding:14px 16px}.site-visit-observation,.site-visit-filter-empty{background:var(--field-bg-card);order:2}.site-visit-observation{padding:12px}.site-visit-status-options{grid-template-columns:repeat(2,minmax(0,1fr))}.site-visit-status-options button:last-child{grid-column:span 2}.site-visit-simple-list{border-left:0;border-right:0;border-radius:0;margin:0 12px 16px}.site-visit-simple-list-heading,.site-visit-simple-group{padding-left:12px;padding-right:12px}.site-visit-simple-task{flex-direction:column;align-items:stretch;gap:8px}.site-visit-simple-task-name{flex-basis:auto;min-width:0}.site-visit-simple-statuses{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;display:grid}.site-visit-simple-statuses button:last-child{grid-column:span 2}.site-visit-supporting-sections{order:3;grid-template-columns:1fr;gap:0;padding:0 12px}.site-visit-declaration-section{order:4;margin:0 12px}.site-visit-review{flex-direction:column;order:5;align-items:stretch;margin:0 12px 12px}.site-visit-review>div:last-child{grid-template-columns:1fr 1fr;display:grid}.site-visit-legacy-scope{order:1;margin:0 12px}.site-visit-page .field-form-sticky-submit{padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:var(--field-bg-card);box-shadow:var(--field-shadow-lg);grid-template-columns:minmax(0,1fr) auto;display:grid}.site-visit-autosave-note{display:none}.site-visit-progression{min-width:0}.site-visit-progression button{flex:1;min-width:0;padding-left:10px;padding-right:10px}.site-visit-submit{min-width:112px}.site-visit-page .field-form-sticky-submit-spacer{order:6}}@supports (padding:max(0px)){.field-form-sticky-submit{padding-bottom:max(10px, env(safe-area-inset-bottom))}}.toast-stack{left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:2000;pointer-events:none;flex-direction:column-reverse;gap:8px;width:min(420px,100vw - 32px);display:flex;position:fixed;transform:translate(-50%)}.toast{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-lg);pointer-events:auto;align-items:center;gap:10px;padding:12px 14px;font-size:.8125rem;animation:.15s ease-out toast-in;display:flex}.toast span{flex:1}.toast-success{border-color:var(--status-done)}.toast-error{border-color:var(--status-alert)}.toast-dismiss{width:24px;height:24px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:inline-flex}.toast-dismiss:hover{background:var(--bg-input);color:var(--text-primary)}.toast-dismiss:focus-visible{box-shadow:var(--focus-ring);outline:none}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.benchmark-view-header{margin-bottom:16px}.benchmark-view-title{color:var(--text-primary);margin:0 0 4px;font-size:1.05rem;font-weight:800}.benchmark-view-subtitle{color:var(--text-secondary);margin:0;font-size:.85rem}.benchmark-view-note{color:var(--text-muted);margin:4px 0 0;font-size:.75rem}.benchmark-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.benchmark-card{border:1px solid var(--border);border-radius:var(--radius-md,12px);background:var(--bg-elevated);min-width:0;padding:16px}.benchmark-card--unavailable{color:var(--text-muted)}.benchmark-card-title{color:var(--text-primary);margin-bottom:10px;font-size:.85rem;font-weight:750}.benchmark-unavailable-heading{color:var(--text-secondary);margin-bottom:4px;font-size:.8125rem;font-weight:700}.benchmark-unavailable-text{color:var(--text-muted);font-size:.75rem;line-height:1.4}.benchmark-stat-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px;font-size:.6875rem;font-weight:700}.benchmark-stat-value{color:var(--text-primary);margin-bottom:10px;font-size:1.05rem;font-weight:800}.benchmark-stat-secondary{color:var(--text-secondary);margin-bottom:10px;font-size:.8125rem;font-weight:600}.benchmark-sample-size{color:var(--text-muted);margin-bottom:12px;font-size:.75rem}.benchmark-your-project{border-top:1px solid var(--border);margin-bottom:6px;padding-top:10px}.benchmark-your-project .benchmark-stat-label{color:var(--accent)}.benchmark-your-project .benchmark-stat-value{color:var(--text-primary);font-size:.9375rem;font-weight:700}.benchmark-comparison{color:var(--text-primary);font-size:.8125rem;font-weight:600}.benchmark-comparison-label{color:var(--text-muted);font-size:.75rem;font-weight:600}.benchmark-not-available-yet{color:var(--text-muted);font-size:.8125rem;font-style:italic}.benchmark-hint{color:var(--text-muted);margin-bottom:8px;font-size:.6875rem}.benchmark-disclosure-toggle{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:.75rem;font-weight:700}.benchmark-disclosure-toggle:focus-visible{box-shadow:var(--focus-ring);outline:none}.benchmark-disclosure-panel{border-top:1px dashed var(--border);margin-top:8px;padding-top:8px}.benchmark-criteria-row{color:var(--text-secondary);justify-content:space-between;gap:12px;padding:3px 0;font-size:.75rem;display:flex}.benchmark-criteria-row span:last-child{color:var(--text-primary);text-align:right;font-weight:600}@media (width<=720px){.benchmark-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=480px){.toast-stack{width:calc(100vw - 24px);bottom:calc(12px + env(safe-area-inset-bottom,0px))}}.portfolio-page{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.portfolio-page>.page-header{flex-shrink:0;margin-bottom:14px}.portfolio-page-actions{flex-wrap:wrap;gap:10px;display:flex}.portfolio-master-detail{background:var(--bg-surface)}.portfolio-master-header{padding-bottom:10px}.portfolio-filter-stack{gap:8px;display:grid}.portfolio-master-header .master-search .ds-input{width:100%;padding-left:10px}.portfolio-filter-primary{align-items:flex-start;gap:6px;min-width:0;display:flex}.portfolio-filter-disclosure{flex-shrink:0}.portfolio-filter-disclosure>summary{height:var(--control-height-sm);padding:0 8px;font-size:.6875rem;list-style:none}.portfolio-filter-disclosure>summary::-webkit-details-marker{display:none}.portfolio-filter-disclosure>summary.is-active{border-color:var(--border-strong);color:var(--accent)}.portfolio-secondary-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.portfolio-secondary-filters label{min-width:0}.portfolio-secondary-filters label>span{color:var(--text-muted);margin-bottom:3px;font-size:.625rem;font-weight:650;display:block}.portfolio-secondary-filters .ds-select{height:var(--control-height-sm);padding-inline:8px 22px;font-size:.6875rem}.portfolio-filter-summary{color:var(--text-muted);justify-content:space-between;align-items:center;gap:8px;font-size:.6875rem;display:flex}.portfolio-filter-summary .btn-ghost-sm{min-height:24px;padding-inline:6px;font-size:.625rem}.master-list-row.portfolio-master-row{min-height:72px;padding:8px 14px}.master-list-row.portfolio-master-row.is-selected{padding-left:17px}.portfolio-master-row .master-row-bottom{justify-content:flex-start}.portfolio-pagination{border-top:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;display:flex}.portfolio-pagination-summary{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.portfolio-pagination-controls{align-items:center;gap:4px;display:flex}.portfolio-page-button{border:1px solid var(--border);min-width:26px;height:26px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:6px;padding:0 6px;font-size:.75rem}.portfolio-page-button:hover{background:var(--bg-elevated)}.portfolio-page-button.is-active{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent);font-weight:700}.portfolio-page-button:focus-visible{box-shadow:var(--focus-ring);outline:none}.portfolio-detail-header{justify-content:space-between}.portfolio-detail-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.portfolio-detail-actions .btn{min-height:var(--control-height-sm);height:var(--control-height-sm);padding:0 10px;font-size:.6875rem}.portfolio-back-to-master{display:none}.portfolio-detail-tabpanel{min-width:0;min-height:100%;padding:16px}.project-detail-sheet{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);min-width:0;overflow:hidden}.project-detail-section{min-width:0;padding:16px 18px}.project-detail-section+.project-detail-section{border-top:1px solid var(--border)}.project-detail-section-heading{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}.project-detail-section-heading h2{color:var(--text-primary);margin:0;font-size:.875rem;font-weight:700}.project-detail-section-heading p{max-width:58ch;color:var(--text-muted);text-align:right;margin:0;font-size:.6875rem;line-height:1.4}.project-detail-kv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:0;display:grid}.project-detail-kv-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(112px,.7fr) minmax(0,1fr);gap:14px;min-width:0;padding:8px 0;display:grid}.project-detail-kv-row dt{color:var(--text-muted);font-size:.6875rem}.project-detail-kv-row dd{overflow-wrap:anywhere;min-width:0;color:var(--text-primary);margin:0;font-size:.75rem;font-weight:600}.project-detail-kv-row dd.is-empty{color:var(--text-muted);font-weight:500}.project-detail-value-note{margin-top:2px;font-size:.625rem;font-weight:500;display:block}.project-detail-link-actions{flex-wrap:wrap;gap:8px;display:flex}.project-detail-link-actions .btn{height:var(--control-height-sm);padding-inline:10px;font-size:.6875rem}.project-current-situation{gap:14px;min-width:0;display:grid}.project-situation-intro,.project-situation-group{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);min-width:0}.project-situation-intro{padding:18px}.project-situation-intro-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.project-situation-eyebrow{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.625rem;font-weight:800}.project-situation-intro-heading h2{color:var(--text-primary);margin:0;font-size:1.125rem;line-height:1.25}.project-situation-recommendation{border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-subtle);gap:5px;margin-top:14px;padding:13px 15px;display:grid}.project-situation-recommendation span{color:var(--accent);letter-spacing:.05em;text-transform:uppercase;font-size:.625rem;font-weight:800}.project-situation-recommendation strong{color:var(--text-primary);font-size:.8125rem}.project-situation-recommendation p,.project-situation-summary p,.project-situation-group header p,.project-situation-action p{color:var(--text-muted);margin:0;font-size:.6875rem;line-height:1.45}.project-situation-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.project-situation-summary{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);align-content:start;gap:7px;min-width:0;padding:11px 12px;display:grid}.project-situation-summary>span{color:var(--text-muted);text-transform:uppercase;font-size:.625rem;font-weight:700}.project-situation-summary>div{align-items:center;min-height:22px;display:flex}.project-situation-groups{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;min-width:0;display:grid}.project-situation-group{overflow:hidden}.project-situation-group:last-child:nth-child(odd){grid-column:1/-1}.project-situation-group>header{border-bottom:1px solid var(--border);background:var(--bg-elevated);justify-content:space-between;align-items:flex-start;gap:14px;padding:13px 15px;display:flex}.project-situation-group>header h3{color:var(--text-primary);margin:0 0 3px;font-size:.8125rem}.project-situation-group>header>span{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.625rem}.project-situation-action-list{display:grid}.project-situation-action{justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:10px 12px 10px 15px;display:flex}.project-situation-action+.project-situation-action{border-top:1px solid var(--border)}.project-situation-action-copy{gap:3px;min-width:0;display:grid}.project-situation-action-copy>div{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.project-situation-action-copy strong{color:var(--text-primary);font-size:.75rem}.project-situation-action .btn{flex-shrink:0;height:28px;min-height:28px;padding-inline:10px;font-size:.6875rem}.portfolio-detail-empty{place-items:center;min-height:260px;display:grid}.project-editor-modal{flex-direction:column;max-height:min(90vh,820px);display:flex}.project-editor-body{flex:1;min-height:0;padding:20px 24px;overflow-y:auto}.project-scope-entry{justify-content:space-between;align-items:center;gap:20px;display:flex}.project-scope-entry-summary{flex-direction:column;gap:4px;min-width:0;display:flex}.project-scope-entry-summary strong{color:var(--text-primary);font-size:.875rem}.project-scope-entry-summary span{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.project-scope-entry-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}@media (width<=1180px){.portfolio-detail-header{flex-wrap:wrap}.project-detail-kv-grid{grid-template-columns:1fr}.portfolio-detail-actions{width:100%;padding-left:0}.project-situation-groups{grid-template-columns:1fr}.project-situation-group:last-child:nth-child(odd){grid-column:auto}}@media (width<=900px){.portfolio-page{height:auto;overflow:visible}.portfolio-back-to-master{flex-shrink:0;display:inline-flex}.portfolio-page[data-mobile-view=detail] .portfolio-page-actions{display:none}}@media (width<=640px){.project-detail-kv-grid,.project-situation-summary-grid{grid-template-columns:1fr}.project-situation-action{align-items:flex-start}.project-detail-section-heading{display:block}.project-detail-section-heading p{text-align:left;margin-top:4px}.portfolio-detail-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.portfolio-detail-actions .btn-primary{grid-column:1/-1}.project-editor-modal{max-height:calc(100dvh - 20px);width:calc(100vw - 20px)!important}.project-editor-body{padding:16px}.project-scope-entry{flex-direction:column;align-items:stretch;gap:12px}.project-scope-entry-actions{flex-direction:column;align-items:stretch}.project-scope-entry-actions .btn{justify-content:center;width:100%}.project-scope-configurator-overlay{padding:10px}.project-scope-configurator{width:100%!important;max-height:calc(100dvh - 20px)!important}.project-scope-configurator-header,.project-scope-area-context{padding-left:16px!important;padding-right:16px!important}.project-scope-area-grid{grid-template-columns:1fr!important;gap:6px!important}.project-scope-configurator-footer{flex-direction:column;gap:10px;align-items:stretch!important;padding:12px 16px!important}.project-scope-configurator-actions{width:100%}.project-scope-configurator-actions button{flex:1}}.specialized-data-grid{font-variant-numeric:tabular-nums}.specialized-data-grid tr:focus-visible{box-shadow:inset var(--focus-ring);outline:none}.risk-register-table{min-width:820px}.risk-register-table tbody>tr:not(.is-selected){background:0 0}.master-detail{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);flex:1;grid-template-columns:clamp(320px,28vw,390px) minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.master-pane,.detail-pane{background:var(--bg-surface);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.master-pane-header,.detail-pane-header,.detail-pane-tabs{flex-shrink:0}.master-pane-list,.detail-pane-content{flex:1;min-width:0;min-height:0;overflow:auto}.dashboard-page{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.master-pane-header{border-bottom:1px solid var(--border);background:var(--bg-surface);padding:13px 14px 11px}.master-pane-title{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;margin:0 0 8px;font-size:.6875rem;font-weight:750}.master-search{display:block;position:relative}.master-search>svg{z-index:1;color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.master-search .ds-input{height:var(--control-height-sm);padding-left:32px;font-size:.75rem}.master-filter-row{align-items:center;gap:6px;min-width:0;margin-top:8px;display:flex}.master-filter-select-wrap{flex:none}.master-filter-select{width:82px;height:var(--control-height-sm);border-radius:var(--radius-sm);padding:0 22px 0 8px;font-size:.6875rem;font-weight:650}.master-quick-filters{scrollbar-width:thin;flex:1;gap:3px;min-width:0;display:flex;overflow-x:auto}.master-quick-filter{min-height:var(--control-height-sm);border-radius:var(--radius-sm);color:var(--text-secondary);font:600 .6875rem/1 var(--font-sans);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:0 7px;display:inline-flex}.master-quick-filter span{color:var(--text-muted);font-size:.625rem}.master-quick-filter:hover{background:var(--bg-elevated);color:var(--text-primary)}.master-quick-filter.is-active{border-color:var(--border);background:var(--accent-subtle);color:var(--accent)}.master-quick-filter:focus-visible,.master-list-row:focus-visible,.detail-tab:focus-visible{box-shadow:var(--focus-ring);outline:none}.master-list-label{border-bottom:1px solid var(--border);background:var(--bg-elevated);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;font-size:.625rem;font-weight:700;display:flex}.master-list-row{border:0;border-bottom:1px solid var(--border);width:100%;min-width:0;min-height:76px;color:var(--text-primary);font-family:var(--font-sans);text-align:left;cursor:pointer;background:0 0;border-radius:0;flex-direction:column;padding:10px 14px;transition:background .15s ease-out;display:flex;position:relative}.master-list-row:hover{background:var(--bg-elevated)}.master-list-row.is-selected{background:var(--accent-subtle);padding-left:17px}.master-list-row.is-selected:before{background:var(--accent);content:"";width:3px;position:absolute;inset:0 auto 0 0}.master-list-row--portfolio{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;min-height:58px}.master-row-main{gap:2px;min-width:0;display:grid}.master-row-main strong,.master-row-top strong,.master-row-name,.master-row-bottom>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.master-row-main strong{text-transform:uppercase;font-size:.75rem}.master-row-main span{color:var(--text-muted);font-size:.6875rem}.master-row-count{color:var(--text-secondary);font-size:.75rem;font-weight:700}.master-row-top,.master-row-bottom{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.master-row-top strong{min-width:0;color:var(--text-primary);font-size:.75rem;font-weight:750}.master-row-name{color:var(--text-primary);margin-top:3px;font-size:.75rem;font-weight:650}.master-row-bottom{color:var(--text-muted);margin-top:4px;font-size:.6875rem}.master-row-bottom>span:first-child{min-width:0}.master-health{color:var(--text-secondary);flex-shrink:0;font-weight:650}.master-health.is-positive{color:var(--status-done)}.master-health.is-warning{color:var(--status-warn)}.master-health.is-critical{color:var(--status-alert)}.master-list-empty{color:var(--text-muted);text-align:center;padding:28px 18px;font-size:.75rem;line-height:1.5}.detail-pane-header{border-bottom:1px solid var(--border);background:var(--bg-surface);align-items:center;gap:14px;min-width:0;padding:14px 18px;display:flex}.dashboard-back-to-master{display:none}.dashboard-detail-identity{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.dashboard-detail-identity>div{min-width:0}.dashboard-detail-title,.dashboard-detail-meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-detail-title{color:var(--text-primary);font-size:1rem;font-weight:750;line-height:1.25}.dashboard-detail-meta{color:var(--text-muted);margin-top:3px;font-size:.75rem}.dashboard-detail-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.dashboard-detail-actions .btn{min-height:var(--control-height-sm);height:var(--control-height-sm);padding:0 10px;font-size:.6875rem}.detail-pane-tabs{border-bottom:1px solid var(--border);background:var(--bg-surface);gap:20px;min-width:0;padding:0 18px;display:flex;overflow:auto hidden}.detail-tab{color:var(--text-muted);font:600 .75rem/1.2 var(--font-sans);cursor:pointer;background:0 0;border:0;flex-shrink:0;padding:10px 0 9px;position:relative}.detail-tab:hover{color:var(--text-primary)}.detail-tab.is-active:after{background:var(--accent);content:"";height:2px;position:absolute;bottom:-1px;left:0;right:0}.detail-pane-content{background:var(--bg-base)}.dashboard-project-overview,.dashboard-portfolio-overview{gap:12px;min-width:0;display:grid}.dashboard-project-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-detail-section{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);min-width:0;padding:14px 16px}.dashboard-detail-section>h3,.dashboard-section-heading h3{color:var(--text-primary);margin:0 0 12px;font-size:.8125rem;font-weight:750}.dashboard-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-section-heading h3{margin-bottom:2px}.dashboard-section-heading p,.dashboard-section-heading>span{color:var(--text-muted);font-size:.6875rem}.dashboard-attention-strip{flex-wrap:wrap;align-items:center;gap:8px 18px;padding:2px 0 4px;display:flex}.dashboard-attention-strip.is-clear{color:var(--text-muted);font-size:.75rem}.dashboard-attention-chip{color:var(--text-secondary);align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.dashboard-attention-list{display:grid}.dashboard-attention-row{border-top:1px solid var(--border);min-width:0;color:var(--text-secondary);grid-template-columns:92px minmax(72px,.6fr) minmax(100px,1fr) auto minmax(120px,1fr) 28px;align-items:center;gap:10px;padding:8px 0;font-size:.6875rem;display:grid}.dashboard-attention-row>*{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dashboard-attention-row strong{color:var(--text-primary)}.dashboard-attention-status{color:var(--status-warn);align-items:center;gap:5px;font-weight:700;display:inline-flex}.dashboard-attention-row.is-critical .dashboard-attention-status{color:var(--status-alert)}.dashboard-attention-row .btn-icon{width:28px;height:28px}.dashboard-portfolio-panel{border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;grid-template-columns:minmax(0,1.05fr) minmax(190px,.85fr) minmax(260px,1.15fr);grid-template-areas:"health scope reporting";min-width:0;min-height:172px;display:grid;overflow:hidden}.dashboard-portfolio-column{min-width:0;min-height:170px;padding:14px 16px}.dashboard-portfolio-column+.dashboard-portfolio-column{border-left:1px solid var(--border)}.dashboard-portfolio-health-column{grid-area:health}.dashboard-portfolio-scope-column{grid-area:scope}.dashboard-portfolio-reporting-column{grid-area:reporting}.dashboard-portfolio-column h2{color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px;font-size:.6875rem;font-weight:800;line-height:1.45}.dashboard-portfolio-health-compact{gap:8px;display:grid}.dashboard-portfolio-health-donut{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;display:grid}.dashboard-portfolio-status-bar{border-radius:var(--radius-full);background:var(--bg-elevated);width:100%;height:8px;display:flex;overflow:hidden}.dashboard-portfolio-status-bar>span{height:100%;display:block}.dashboard-portfolio-donut{flex-shrink:0}.dashboard-portfolio-status-legend{gap:2px;min-width:0;display:grid}.dashboard-portfolio-status-row,.dashboard-portfolio-status-label{align-items:center;display:flex}.dashboard-portfolio-status-row{min-height:15px;color:var(--text-secondary);justify-content:space-between;gap:12px;font-size:.6875rem}.dashboard-portfolio-status-label{gap:7px}.dashboard-portfolio-status-dot{border-radius:var(--radius-full);flex:0 0 7px;width:7px;height:7px}.dashboard-portfolio-empty{color:var(--text-muted);margin:0;font-size:.75rem}.dashboard-portfolio-total{align-items:baseline;gap:7px;margin-bottom:10px;display:flex}.dashboard-portfolio-total strong{color:var(--text-primary);font-size:1.5rem;line-height:1.1}.dashboard-portfolio-total span{color:var(--text-secondary);font-size:.75rem;font-weight:650}.dashboard-portfolio-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0;display:grid}.dashboard-portfolio-scope-grid dt,.dashboard-portfolio-reporting-grid span{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.5625rem;font-weight:750;line-height:1.4}.dashboard-portfolio-scope-grid dd{color:var(--text-primary);margin:1px 0 0;font-size:.875rem;font-weight:700}.dashboard-portfolio-reporting-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.dashboard-portfolio-reporting-grid>div{align-content:start;display:grid}.dashboard-portfolio-reporting-grid strong{color:var(--text-primary);margin-top:2px;font-size:1.25rem;line-height:1.2}.dashboard-portfolio-reporting-grid small{color:var(--text-muted);margin-top:2px;font-size:.625rem;line-height:1.4}.dashboard-portfolio-missing-callout{background:var(--status-warn-bg);color:var(--status-warn);border-radius:4px;margin:10px 0 0;padding:7px 10px;font-size:.625rem;font-weight:700;line-height:1.4}.dashboard-portfolio-monte-carlo-warning{border:1px solid var(--status-warn);background:var(--status-warn-bg);color:var(--status-warn);border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:.75rem;display:flex}.dashboard-portfolio-monte-carlo-warning strong{align-items:center;gap:6px;display:inline-flex}.dashboard-portfolio-tools{grid-template-columns:minmax(0,1fr) minmax(220px,.45fr);gap:20px;display:grid}.dashboard-portfolio-tools h3{color:var(--text-primary);margin:0 0 10px;font-size:.8125rem;font-weight:750;display:block}.dashboard-snapshot-disclosure{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);padding:10px 14px;font-size:.75rem}.dashboard-snapshot-disclosure>summary{color:var(--text-secondary);cursor:pointer;font-weight:650;list-style:none}.dashboard-snapshot-disclosure>summary::-webkit-details-marker{display:none}.dashboard-snapshot-disclosure[open]>summary{color:var(--text-primary);margin-bottom:10px}.dashboard-snapshot-control p{color:var(--text-muted);margin:-6px 0 8px;font-size:.6875rem;line-height:1.4}.dashboard-snapshot-control>div{align-items:center;gap:8px;display:flex}.dashboard-snapshot-control .ds-input{max-width:180px;height:var(--control-height-sm);font-size:.75rem}.dashboard-snapshot-banner{border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-subtle);color:var(--text-secondary);align-items:center;gap:10px;padding:9px 12px;font-size:.75rem;display:flex}.dashboard-snapshot-banner strong{color:var(--accent)}.dashboard-snapshot-banner .btn-icon{margin-left:auto}.dashboard-content-heading{color:var(--text-primary);margin-bottom:4px;font-size:.9375rem;font-weight:700}.dashboard-content-subtitle{color:var(--text-muted);margin-bottom:18px;font-size:.75rem}@media (width<=1180px){.dashboard-portfolio-panel{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"health scope""reporting reporting"}.dashboard-portfolio-reporting-column{border-top:1px solid var(--border);border-left:0}.dashboard-project-overview{grid-template-columns:1fr}.dashboard-detail-actions .btn-secondary{display:none}.dashboard-attention-row{grid-template-columns:82px minmax(70px,.6fr) minmax(100px,1fr) auto 28px}.dashboard-attention-row>span:nth-child(5){display:none}}@media (width<=900px){.dashboard-page{height:auto;min-height:0;overflow:visible}.master-detail{background:0 0;border:0;display:block;overflow:visible}.master-pane,.detail-pane{border:1px solid var(--border);border-radius:var(--radius-md);overflow:visible}.master-pane-list,.detail-pane-content{overflow:visible}.master-detail[data-mobile-view=master] .detail-pane,.master-detail[data-mobile-view=detail] .master-pane{display:none}.dashboard-back-to-master{flex-shrink:0;display:inline-flex}.detail-pane-header{flex-wrap:wrap}.dashboard-detail-identity{flex-basis:calc(100% - 110px)}.dashboard-detail-actions{width:100%;padding-left:98px}.dashboard-portfolio-tools{grid-template-columns:1fr}.dashboard-snapshot-control{border-top:1px solid var(--border);border-left:0;padding:16px 0 0}}@media (width<=640px){.dashboard-portfolio-panel{grid-template-columns:minmax(0,1fr);grid-template-areas:"health""reporting""scope"}.dashboard-portfolio-column+.dashboard-portfolio-column{border-top:1px solid var(--border);border-left:0}.dashboard-portfolio-health-donut{grid-template-columns:1fr}.dashboard-portfolio-monte-carlo-warning{flex-direction:column;align-items:flex-start}.master-pane-header{padding:12px}.master-list-row{min-height:80px;padding:11px 12px}.master-list-row.is-selected{padding-left:15px}.detail-pane-header{gap:10px;padding:12px}.dashboard-detail-identity{flex-basis:calc(100% - 94px)}.dashboard-detail-actions{padding-left:0}.dashboard-detail-actions .btn{flex:1}.detail-pane-tabs{gap:16px;padding:0 12px}.dashboard-detail-section{padding:12px}.dashboard-detail-grid{grid-template-columns:1fr;gap:10px}.dashboard-attention-row{grid-template-columns:78px minmax(68px,.7fr) minmax(90px,1fr) 28px}.dashboard-attention-row>span:nth-child(4),.dashboard-attention-row>span:nth-child(5){display:none}}.home-page{width:100%;max-width:1120px}.home-header-date{color:var(--text-secondary);align-self:center;font-size:.8125rem}.home-content-grid{gap:var(--space-4) var(--space-6);grid-template-columns:minmax(0,720px) minmax(300px,376px);grid-template-areas:"attention attention""snapshot snapshot""activity continue";display:grid}.home-attention-region{grid-area:attention;min-width:0}.home-attention-title-link{color:inherit;text-decoration:none}.home-attention-title-link:hover{text-decoration:underline}.home-priority-list{display:grid}.home-priority-row{gap:var(--space-1);border-bottom:1px solid var(--border);min-width:0;padding:10px 12px;display:grid}.home-priority-heading{align-items:center;gap:var(--space-2);min-width:0;display:flex}.home-priority-link{align-items:center;gap:var(--space-2);min-width:0;color:var(--text-primary);font-size:.8125rem;font-weight:700;text-decoration:none;display:flex}.home-priority-link:hover{text-decoration:underline}.home-priority-label{border-radius:var(--radius-sm);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0;padding:2px 7px;font-size:.625rem;font-weight:700}.home-priority-title{color:var(--text-primary);font-size:.8125rem;font-weight:700}.home-priority-toggle{min-width:28px;min-height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:4px}.home-priority-detail{color:var(--text-secondary);font-size:.75rem}.home-priority-action{color:var(--text-muted);font-size:.6875rem;font-style:italic}.home-priority-blockers{gap:var(--space-1);margin-top:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--border);font-size:.6875rem;display:grid}.home-blocker-critical{color:var(--status-alert)}.home-blocker-warning{color:var(--status-warn)}.home-snapshot{grid-area:snapshot}.home-snapshot .ds-metadata-rows.is-inline{gap:6px var(--space-3)}.home-snapshot .ds-metadata-value{display:inline}.home-snapshot .ds-metadata-row:not(:last-child) dd:after{margin-left:var(--space-3);color:var(--border-strong);content:"·"}.home-recent-activity{grid-area:activity}.home-recent-activity .ds-evidence-ledger.is-rows .ds-evidence-entry{grid-template-columns:minmax(120px,.4fr) minmax(0,1fr)}.home-continue-work{grid-area:continue}.home-quick-links{border-top:1px solid var(--border);display:grid}.home-quick-links a{border-bottom:1px solid var(--border);min-height:44px;color:var(--text-primary);align-items:center;padding:8px;font-size:.75rem;text-decoration:none;display:flex}.home-quick-links a:hover{background:var(--bg-hover)}@media (width<=640px){.home-header-date{display:none}.home-content-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr);grid-template-areas:"attention""continue""snapshot""activity"}.home-priority-heading{flex-wrap:wrap;align-items:flex-start}.home-priority-link{flex-basis:calc(100% - 36px);align-items:flex-start}.home-priority-toggle{min-width:44px;min-height:44px;margin-top:-8px}.home-snapshot .ds-metadata-rows.is-inline{display:flex}.home-recent-activity .ds-evidence-ledger.is-rows .ds-evidence-entry{grid-template-columns:1fr}.home-quick-links a{padding-right:var(--space-2);padding-left:var(--space-2)}}.dashboard-page .dashboard-master-header{gap:var(--space-2);flex-direction:column;display:flex}.dashboard-page .dashboard-master-title-row,.dashboard-page .dashboard-master-heading{align-items:center;display:flex}.dashboard-page .dashboard-master-title-row{justify-content:space-between;gap:var(--space-3)}.dashboard-page .dashboard-master-heading{gap:var(--space-2);min-width:0}.dashboard-page .master-pane-title{color:var(--text-primary);letter-spacing:0;text-transform:none;margin:0;font-size:1rem;font-weight:700;line-height:1.25}.dashboard-page .dashboard-master-heading>span{color:var(--text-muted);font-size:.6875rem;font-weight:600}.dashboard-page .master-filter-select{width:auto;min-width:88px}.dashboard-page .master-filter-row{margin:0}.dashboard-page .master-quick-filters{gap:var(--space-1)}.dashboard-page .master-list-row:not(.master-list-row--portfolio){column-gap:var(--space-2);padding-block:var(--space-1);grid-template-rows:repeat(3,minmax(0,auto));grid-template-columns:minmax(0,1fr) minmax(88px,.8fr);display:grid}.dashboard-page .master-row-top{grid-column:1/-1;min-height:20px}.dashboard-page .master-row-top strong{color:var(--text-muted);font-size:.6875rem;font-weight:600;line-height:1.4}.dashboard-page .master-row-name{margin-top:0;font-size:.875rem;font-weight:600;line-height:1.35}.dashboard-page .master-row-location{color:var(--text-secondary);text-align:right;text-overflow:ellipsis;white-space:nowrap;margin-top:0;font-size:.75rem;line-height:1.35;display:block;overflow:hidden}.dashboard-page .master-row-bottom{grid-column:1/-1;min-height:16px;margin-top:0;font-size:.6875rem;line-height:1.4}.dashboard-page .master-row-progress{color:var(--text-secondary);flex-shrink:0;font-size:.8125rem;font-weight:600}.dashboard-page .dashboard-detail-identity{align-items:flex-start}.dashboard-page .dashboard-detail-copy{gap:var(--space-2px);flex-direction:column;min-width:0;display:flex}.dashboard-page .dashboard-detail-code,.dashboard-page .dashboard-detail-context{color:var(--text-muted);font-size:.6875rem;font-weight:600;line-height:1.4}.dashboard-page .dashboard-detail-title{margin:0;font-size:1rem;font-weight:700;line-height:1.25}.dashboard-page .dashboard-health-reporting{gap:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);align-items:start;display:grid}.dashboard-page .dashboard-project-overview{grid-template-columns:minmax(0,1fr)}.dashboard-page .dashboard-detail-meta{color:var(--text-secondary);margin:0;font-size:.75rem;line-height:1.4}.dashboard-page .dashboard-detail-status-actions{align-items:flex-end;gap:var(--space-3);flex-direction:column;flex-shrink:0;display:flex}.dashboard-page .dashboard-detail-actions{gap:var(--space-3)}.dashboard-page .dashboard-detail-actions .btn{height:var(--control-height-md);min-height:var(--control-height-md);padding:0 var(--space-4);font-size:.8125rem}.dashboard-page .dashboard-detail-tabs-shell{min-width:0;position:relative}.dashboard-page .dashboard-needs-attention{position:relative}.dashboard-page .dashboard-needs-attention-list{flex-direction:column;display:flex}.dashboard-page .dashboard-needs-attention-item{justify-content:space-between;align-items:center;gap:var(--space-4);min-width:0;padding:var(--space-2) 0;display:flex}.dashboard-page .dashboard-needs-attention-item+.dashboard-needs-attention-item{border-top:1px solid color-mix(in srgb, var(--status-alert) 24%, transparent)}.dashboard-page .dashboard-needs-attention-copy{min-width:0}.dashboard-page .dashboard-needs-attention-copy h4,.dashboard-page .dashboard-needs-attention-copy p,.dashboard-page .dashboard-attention-empty{margin:0}.dashboard-page .dashboard-needs-attention-copy h4{color:var(--text-primary);font-size:.875rem;font-weight:600;line-height:1.5}.dashboard-page .dashboard-needs-attention-copy p{gap:var(--space-1);color:var(--text-muted);font-size:.75rem;line-height:1.45;display:flex}.dashboard-page .dashboard-needs-attention-copy p strong{color:var(--text-secondary);font-weight:600}.dashboard-page .dashboard-attention-empty{padding:var(--space-2) 0 0;text-align:left;align-items:flex-start}.dashboard-page .dashboard-workflow-handoffs{grid-template-columns:repeat(var(--workflow-columns), minmax(0, 1fr));border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);min-width:0;margin:0;padding:0;list-style:none;display:grid}.dashboard-page .dashboard-workflow-handoffs li{min-width:0}.dashboard-page .dashboard-workflow-handoffs li+li{border-left:1px solid var(--border)}.dashboard-page .dashboard-workflow-handoffs a,.dashboard-page .dashboard-workflow-boundary{justify-content:center;gap:var(--space-1);min-height:68px;padding:var(--space-3);flex-direction:column;display:flex}.dashboard-page .dashboard-workflow-handoffs a{color:var(--text-primary);text-decoration:none}.dashboard-page .dashboard-workflow-handoffs a:hover{background:var(--bg-hover)}.dashboard-page .dashboard-workflow-handoffs a:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:-2px}.dashboard-page .dashboard-workflow-handoffs strong{color:var(--selection);font-size:.875rem;line-height:1.4}.dashboard-page .dashboard-workflow-handoffs span{color:var(--text-muted);font-size:.6875rem;line-height:1.4}.dashboard-page .dashboard-workflow-boundary strong{color:var(--text-secondary)}.dashboard-page .dashboard-status-strip{gap:var(--space-5);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);grid-template-columns:1.15fr repeat(4,minmax(0,1fr));display:grid}.dashboard-page .dashboard-status-item{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.dashboard-page .dashboard-status-label,.dashboard-page .dashboard-status-detail{color:var(--text-muted);font-size:.6875rem;font-weight:600;line-height:1.4}.dashboard-page .dashboard-status-value{min-height:21px;color:var(--text-primary);font-size:.875rem;font-weight:600;line-height:1.5}.dashboard-page .dashboard-status-value .status-badge{vertical-align:middle}.dashboard-page .dashboard-progress-track{border-radius:var(--radius-full);height:4px;overflow:hidden}.dashboard-page .dashboard-progress-track>span{width:var(--dashboard-progress);border-radius:inherit;height:100%;display:block}.dashboard-page .dashboard-secondary-context{gap:var(--space-2)}.dashboard-page .dashboard-secondary-context .ds-section-heading h3{color:var(--text-muted);font-size:.75rem}@media (width<=1180px){.dashboard-page .dashboard-health-reporting{grid-template-columns:1fr}.dashboard-page .dashboard-status-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-page .dashboard-schedule-grid,.dashboard-page .dashboard-evidence-ledger{--metadata-columns:2;--evidence-columns:2}.dashboard-page .dashboard-context-list{--metadata-columns:3}.dashboard-page .dashboard-detail-actions .btn-secondary{display:inline-flex}}@media (width<=900px){.dashboard-page .dashboard-detail-header{align-items:flex-start;gap:var(--space-2);flex-direction:column}.dashboard-page .dashboard-detail-identity,.dashboard-page .dashboard-detail-status-actions,.dashboard-page .dashboard-detail-actions{width:100%}.dashboard-page .dashboard-detail-identity{flex-basis:auto}.dashboard-page .dashboard-detail-status-actions{align-items:flex-start}.dashboard-page .dashboard-detail-actions{flex-wrap:wrap;padding-left:0}}@media (width<=640px){.dashboard-page.is-mobile-master .dashboard-master-header{padding-top:56px}.dashboard-page .master-list-row:not(.master-list-row--portfolio){display:flex}.dashboard-page .master-row-location{margin-top:var(--space-1);text-align:left}.dashboard-page .dashboard-detail-actions .btn{flex:0 auto}.dashboard-page .dashboard-detail-tabs{overscroll-behavior-x:contain;scroll-behavior:smooth;padding-right:30px;overflow-x:auto}.dashboard-page .dashboard-tabs-overflow-cue{z-index:2;border-left:1px solid var(--border);background:var(--bg-surface);width:30px;height:36px;color:var(--text-secondary);pointer-events:none;place-items:center;font-size:1.25rem;font-weight:700;display:grid;position:absolute;top:0;right:0}.dashboard-page .dashboard-status-strip,.dashboard-page .dashboard-schedule-grid,.dashboard-page .dashboard-evidence-ledger,.dashboard-page .dashboard-context-list{grid-template-columns:1fr}.dashboard-page .dashboard-project-workflows .ds-section-heading{gap:var(--space-1);flex-direction:column}.dashboard-page .dashboard-workflow-handoffs{grid-template-columns:1fr}.dashboard-page .dashboard-workflow-handoffs li+li{border-top:1px solid var(--border);border-left:0}.dashboard-page .dashboard-workflow-handoffs a,.dashboard-page .dashboard-workflow-boundary{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);flex-direction:row}.dashboard-page .dashboard-workflow-handoffs span{text-align:right}.dashboard-page .dashboard-status-strip{padding:var(--space-3);gap:0}.dashboard-page .dashboard-status-item{gap:var(--space-1) var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--border);grid-template-columns:minmax(104px,1fr) minmax(0,1.5fr);align-items:center;display:grid}.dashboard-page .dashboard-status-item:first-child{border-top:0;padding-top:0}.dashboard-page .dashboard-status-value,.dashboard-page .dashboard-status-detail{text-align:right}.dashboard-page .dashboard-status-item .dashboard-progress-track{grid-area:2/1/auto/-1}.dashboard-page .dashboard-status-item.is-progress .dashboard-status-detail{grid-area:3/2}.dashboard-page .dashboard-needs-attention-item{align-items:flex-start;gap:var(--space-2);flex-direction:column}.dashboard-page .dashboard-needs-attention-copy p{font-size:.75rem;display:block}.dashboard-page .dashboard-needs-attention-copy p strong{margin-right:var(--space-1)}.dashboard-page .dashboard-schedule-grid,.dashboard-page .dashboard-evidence-ledger{gap:0}.dashboard-page .dashboard-schedule-grid .ds-metadata-row,.dashboard-page .dashboard-evidence-ledger .ds-evidence-entry{gap:var(--space-3);padding:var(--space-2) 0;grid-template-columns:minmax(112px,1fr) minmax(0,1.6fr);align-items:start;display:grid}.dashboard-page .dashboard-schedule-grid .ds-metadata-row dd,.dashboard-page .dashboard-evidence-ledger .ds-evidence-entry dd{text-align:right;margin:0}.dashboard-page .dashboard-context-list{gap:var(--space-1)}.dashboard-page .dashboard-context-list .ds-metadata-row{gap:var(--space-1);display:flex}.dashboard-page .dashboard-context-list .ds-metadata-row dt:after{content:":"}.dashboard-page .dashboard-context-list .ds-metadata-row dd{margin:0}}.weekly-reports-surface{flex-direction:column;gap:0;min-width:0;max-width:none;height:100%;min-height:0;display:flex;overflow:hidden}.weekly-master-project-select{width:92px}.weekly-master-row{min-height:84px}.weekly-master-context{align-items:flex-start}.weekly-master-attention{color:var(--status-warn);white-space:nowrap;flex-shrink:0;font-weight:700}.weekly-detail-header{align-items:flex-start}.weekly-back-to-master{display:none}.weekly-back-to-master svg{transform:rotate(180deg)}.weekly-detail-identity{flex:1;min-width:0}.weekly-detail-title-row{align-items:center;gap:8px;min-width:0;display:flex}.weekly-detail-title-row h2{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;font-weight:750;line-height:1.25;overflow:hidden}.weekly-detail-meta{min-width:0;color:var(--text-muted);flex-wrap:wrap;gap:6px 12px;margin-top:4px;font-size:.6875rem;display:flex}.weekly-detail-actions{flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.weekly-detail-actions .btn{min-height:var(--control-height-sm);height:var(--control-height-sm);white-space:nowrap;padding:0 10px;font-size:.6875rem}.weekly-detail-actions .btn-secondary.is-active{border-color:var(--status-done);background:var(--status-done-bg);color:var(--status-done)}.weekly-report-select-wrap{gap:3px;display:grid}.weekly-report-select-wrap>span{color:var(--text-muted);font-size:.625rem;font-weight:700}.weekly-report-select-wrap .ds-select{width:138px;height:var(--control-height-sm);font-size:.6875rem}.weekly-detail-tabpanel .weekly-truth-console{border:1px solid var(--border);background:var(--bg-surface);margin-bottom:16px;overflow:hidden}.weekly-overview-main{gap:0}.weekly-overview-main>*,.weekly-report-body>*,.weekly-comparison-section,.weekly-comparison-list{min-width:0}.weekly-support-section h2,.weekly-support-section h3,.weekly-comparison-list h3{color:var(--text-primary);margin:0;font-size:.875rem;line-height:1.35}.weekly-action-list{gap:0;margin-top:10px}.weekly-action-row{border-top:1px solid color-mix(in srgb, var(--status-alert) 22%, transparent);background:0 0;border-radius:0;padding:9px 0}.weekly-action-row.tone-critical{background:0 0}.weekly-overview-main>.weekly-progress-narrative,.weekly-overview-main>.weekly-phase-board{border:0;border-top:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;padding:14px 0}.weekly-overview-main>.weekly-phase-board{overflow:hidden}.weekly-overview-main>.weekly-action-panel+.weekly-overview-section{margin-top:14px}.ds-section-accessory .weekly-compact-trend{width:min(320px,40%)}.ds-section-accessory .weekly-compact-trend svg{display:none}.weekly-trend-head{justify-content:flex-end;margin:0}.weekly-trend-head .weekly-section-kicker{display:none}.weekly-truth-scroll{border-radius:var(--radius-md);background:var(--bg-elevated);margin-top:12px}.weekly-truth-bar{gap:0}.weekly-truth-group{border-right:1px solid var(--border);gap:0}.weekly-truth-group:last-child{border-right:0}.weekly-truth-cell,.weekly-truth-group-progress .weekly-truth-cell{background:0 0;border-radius:0;min-height:64px;padding:10px 12px}.weekly-truth-cell.tone-critical{background:0 0}.weekly-progress-narrative{height:auto;margin:0;padding-inline:0}.weekly-progress-narrative>.weekly-section-kicker{color:var(--text-primary);letter-spacing:0;text-transform:none;margin-bottom:12px;font-size:.875rem}.weekly-report-links{gap:24px;margin:12px 0 0}.weekly-support-section{min-width:0;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.weekly-support-section h2,.weekly-support-section h3{margin-bottom:10px}.weekly-evidence-ledger strong{color:var(--text-secondary);font-weight:650}.weekly-comparison-section{background:0 0;border-radius:0;gap:14px;padding:0}.weekly-verification-ledger{border-radius:var(--radius-md);background:var(--bg-elevated);flex-wrap:wrap;gap:0;display:flex}.weekly-verification-ledger>div{border-right:1px solid var(--border);color:var(--text-muted);align-items:baseline;gap:6px;padding:10px 14px;font-size:.6875rem;display:flex}.weekly-verification-ledger strong{color:var(--text-primary);font-size:.75rem}.weekly-verification-ledger .is-critical{color:var(--status-alert)}.weekly-verification-ledger .is-warning{color:var(--status-warn)}.weekly-comparison-list{border-top:1px solid var(--border);padding-top:14px}.weekly-comparison-list>p{color:var(--text-muted);margin:3px 0 12px;font-size:.75rem}.weekly-comparison-list>div>div{border-radius:var(--radius-md)!important}.weekly-report-body{gap:0}.weekly-report-body>*{border:0;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;padding-block:14px;margin:0!important}.weekly-overview-main>.dashboard-summary-card,.weekly-report-body>.dashboard-summary-card,.weekly-report-body>.weekly-kpi-strip,.weekly-report-body>.weekly-progress-chart-card{border:0;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0}.weekly-kpi-strip,.weekly-progress-chart-card,.weekly-phase-board{background:0 0;height:auto;padding-inline:0}.weekly-additional-works.has-entries>h2{color:var(--status-warn)}.weekly-template-alert-wrap{margin-bottom:14px}.weekly-template-alert ul{margin:6px 0 0;padding-left:20px}.weekly-template-alert li{color:var(--status-warn);margin-top:3px}.weekly-detail-gantt{margin-bottom:16px}@media (width<=1180px){.weekly-detail-header{flex-wrap:wrap}.weekly-detail-actions{width:100%}}@media (width<=900px){.weekly-reports-surface{height:auto;overflow:visible}.weekly-back-to-master{flex-shrink:0;display:inline-flex}.weekly-detail-identity{flex-basis:calc(100% - 90px)}.weekly-detail-actions{padding-left:76px}}@media (width<=640px){.weekly-detail-identity{flex-basis:calc(100% - 82px)}.weekly-detail-actions{padding-left:0;overflow-x:auto}.weekly-detail-actions .btn{flex:none}.weekly-report-select-wrap .ds-select{width:128px}.weekly-reports-master-detail .detail-pane-tabs,.weekly-reports-master-detail .detail-tab{height:44px;min-height:44px}.weekly-overview-main .ds-section-heading{align-items:flex-start}.weekly-overview-main .ds-section-accessory .weekly-compact-trend{width:auto;min-width:108px}.weekly-truth-bar{grid-template-columns:1fr;min-width:0}.weekly-truth-group{border-right:0;border-bottom:1px solid var(--border)}.weekly-truth-group:last-child{border-bottom:0}.weekly-truth-group-issues{grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-report-links{grid-template-columns:1fr}.weekly-evidence-ledger .ds-evidence-entry{grid-template-columns:112px minmax(0,1fr);gap:12px}.weekly-verification-ledger>div{flex:50%}}.risk-dashboard-page{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.risk-master-detail{flex:1;min-height:0}.risk-master-header{gap:8px;display:grid}.risk-master-filters{margin-top:0}.risk-master-list-tools{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;padding:8px 12px}.risk-forecast-control{align-items:center;gap:4px;display:flex}.risk-forecast-control>span{color:var(--text-muted);margin-right:3px;font-size:.625rem;font-weight:700}.risk-forecast-control button{border-radius:var(--radius-sm);min-height:26px;color:var(--text-secondary);font:600 .6875rem/1 var(--font-sans);cursor:pointer;background:0 0;border:1px solid #0000;padding:0 8px}.risk-forecast-control button:hover{background:var(--bg-elevated)}.risk-forecast-control button[aria-pressed=true]{border-color:var(--border);background:var(--accent-subtle);color:var(--accent)}.risk-forecast-control button:focus-visible{box-shadow:var(--focus-ring);outline:none}.risk-master-row{min-height:96px}.risk-portfolio-row{background:var(--bg-elevated);min-height:88px}.risk-detail-header{align-items:flex-start}.risk-back-to-master{display:none}.risk-back-to-master svg{transform:rotate(180deg)}.risk-detail-identity{flex:1;min-width:0}.risk-detail-title-row{align-items:center;gap:8px;min-width:0;display:flex}.risk-detail-title-row h2{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;font-weight:750;line-height:1.25;overflow:hidden}.risk-detail-meta{color:var(--text-muted);flex-wrap:wrap;gap:5px 12px;margin-top:4px;font-size:.6875rem;display:flex}.risk-detail-actions{flex-shrink:0;align-items:center;display:flex}.risk-detail-actions .btn{min-height:var(--control-height-sm);height:var(--control-height-sm);white-space:nowrap;padding:0 10px;font-size:.6875rem}.risk-portfolio-overview,.risk-portfolio-stack,.risk-selected-overview,.risk-selected-drivers{gap:0;min-width:0;display:grid}.risk-portfolio-summary{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);gap:0;display:grid}.risk-portfolio-summary>div{padding:14px 16px}.risk-portfolio-summary>div+div{border-left:1px solid var(--border)}.risk-portfolio-summary h3{color:var(--text-primary);margin:0 0 12px;font-size:.8125rem;font-weight:750}.risk-kpi-strip{border:1px solid var(--border);grid-template-columns:repeat(5,minmax(62px,1fr));display:grid}.risk-kpi-strip-supporting{grid-template-columns:repeat(3,minmax(62px,1fr))}.risk-kpi-item{border-left:1px solid var(--risk-kpi-border,var(--border));background:var(--risk-kpi-bg,transparent);text-align:center;min-width:0;padding:10px 8px}.risk-kpi-item:first-child{border-left:0}.risk-kpi-value{color:var(--risk-kpi-color,var(--text-primary));font-size:1.25rem;font-weight:800;line-height:1}.risk-kpi-label{color:var(--risk-kpi-color,var(--text-muted));letter-spacing:.07em;text-transform:uppercase;margin-top:4px;font-size:.5625rem;font-weight:700}.risk-critical-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.risk-attention-list{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.risk-attention-list li{color:var(--text-secondary);justify-content:space-between;gap:16px;font-size:.75rem;display:flex}.risk-attention-list span{color:var(--status-alert);font-weight:700}.risk-conclusion-copy{gap:3px;margin-top:10px;display:grid}.risk-conclusion-copy strong{color:var(--text-primary);font-size:.8125rem}.risk-conclusion-copy span,.risk-section-note{color:var(--text-muted);margin:0;font-size:.6875rem;line-height:1.45}.risk-explanation-list{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.risk-explanation-list li{border-left:1px solid var(--border);gap:3px;min-width:0;padding:0 14px;display:grid}.risk-explanation-list li:first-child{border-left:0;padding-left:0}.risk-explanation-list strong,.risk-explanation-list span,.risk-explanation-list small{text-overflow:ellipsis;overflow:hidden}.risk-explanation-list strong{color:var(--text-primary);font-size:.75rem}.risk-explanation-list span{color:var(--text-secondary);font-size:.75rem}.risk-explanation-list small{color:var(--text-muted);font-size:.6875rem}.risk-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0;display:grid}.risk-operational-strip{border:1px solid var(--border);gap:0}.risk-operational-strip .ds-metadata-row{border-left:1px solid var(--border);padding:10px 12px}.risk-operational-strip .ds-metadata-row:first-child{border-left:0}.risk-operational-strip .ds-metadata-row dt{color:var(--text-muted);font-size:.625rem;font-weight:650}.risk-operational-strip .ds-metadata-row dd{color:var(--text-primary);text-overflow:ellipsis;margin:3px 0 0;font-size:.75rem;font-weight:650;overflow:hidden}.risk-reason-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.risk-reason-list li,.risk-driver-row{border-top:1px solid var(--border);color:var(--text-secondary);justify-content:space-between;gap:14px;padding:7px 0;font-size:.75rem;display:flex}.risk-reason-list li:first-child,.risk-driver-row:first-child{border-top:0;padding-top:0}.risk-reason-list strong,.risk-driver-row strong{color:var(--text-primary);flex-shrink:0}.risk-driver-list{display:grid}.risk-driver-row>span{gap:2px;min-width:0;display:grid}.risk-driver-row>span>strong{color:var(--text-primary);font-size:.75rem}.risk-driver-row>span>small{color:var(--text-muted);text-overflow:ellipsis;font-size:.6875rem;overflow:hidden}.risk-dimension-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.risk-dimension-grid>div{min-width:0;color:var(--text-secondary);justify-content:space-between;align-items:center;gap:8px;padding:5px 0;font-size:.6875rem;display:flex}.risk-dimension-grid>div>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.risk-action-list{gap:8px;margin-top:12px;display:grid}.risk-action-list>div{border-top:1px solid var(--border);gap:2px;padding:8px 0;display:grid}.risk-action-list strong{color:var(--text-primary);font-size:.75rem}.risk-action-list span{color:var(--text-muted);margin:0;font-size:.6875rem;line-height:1.5}.risk-next-action{border-top:1px solid var(--border);gap:4px;padding:8px 0;display:grid}.risk-next-action strong{color:var(--text-primary);font-size:.75rem}.risk-next-action span{color:var(--text-muted);font-size:.6875rem}.risk-next-action small{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.625rem;font-weight:700}.risk-next-action p{color:var(--text-secondary);margin:4px 0 0;font-size:.6875rem;line-height:1.45}.risk-secondary-context{padding:10px 0}.risk-critical-warnings{border:1px solid var(--status-alert);background:var(--status-alert-bg);padding:14px 16px}.risk-critical-heading{color:var(--status-alert);justify-content:flex-start;font-size:.8125rem}.risk-critical-heading span{display:inline-flex}.risk-critical-list{margin-top:10px;display:grid}.risk-critical-row{border-top:1px solid color-mix(in srgb, var(--status-alert) 24%, transparent);color:var(--text-secondary);grid-template-columns:minmax(180px,1.5fr) repeat(4,minmax(110px,1fr));gap:12px;padding:9px 0;font-size:.75rem;display:grid}.risk-critical-row>strong,.risk-critical-row b,.risk-critical-row .is-alert{color:var(--status-alert)}.risk-critical-row .is-warning{color:var(--status-warn)}.risk-critical-row span{align-items:center;gap:4px;display:inline-flex}.risk-detail-tabpanel .dashboard-summary-card{min-width:0;max-width:100%;box-shadow:none;background:0 0;border:0;border-radius:0}@media (width<=1180px){.risk-portfolio-summary{grid-template-columns:1fr}.risk-portfolio-summary>div+div{border-top:1px solid var(--border);border-left:0;padding:14px 0 0}}@media (width<=900px){.risk-dashboard-page{height:100%;overflow:hidden}.risk-master-detail{background:0 0;border:0;height:100%;display:block;overflow:hidden}.risk-master-detail .master-pane,.risk-master-detail .detail-pane{border:0;height:100%;overflow:hidden}.risk-master-detail .master-pane-list,.risk-master-detail .detail-pane-content{overflow-y:auto}.risk-master-detail[data-mobile-view=master] .detail-pane,.risk-master-detail[data-mobile-view=detail] .master-pane{display:none}.risk-back-to-master{flex-shrink:0;min-height:44px;display:inline-flex}.risk-forecast-control button{min-height:44px;padding:0 12px}}@media (width<=640px){.risk-detail-header{flex-wrap:wrap}.risk-detail-identity{flex-basis:calc(100% - 82px)}.risk-detail-actions{width:100%;padding-left:72px}.risk-detail-grid,.risk-dimension-grid,.risk-operational-strip,.risk-critical-row,.risk-explanation-list{grid-template-columns:1fr}.risk-explanation-list li,.risk-explanation-list li:first-child{border-top:1px solid var(--border);border-left:0;padding:10px 0}.risk-explanation-list li:first-child{border-top:0;padding-top:0}.risk-operational-strip .ds-metadata-row{border-top:1px solid var(--border);border-left:0}.risk-operational-strip .ds-metadata-row:first-child{border-top:0}.risk-kpi-strip{grid-template-columns:repeat(3,minmax(62px,1fr))}.risk-attention-list li,.risk-critical-row{align-items:flex-start}}.sidebar{width:224px;padding:var(--space-3) var(--space-2)}.sidebar-brand{padding:var(--space-1) var(--space-1) var(--space-3)}.sidebar nav{gap:var(--space-2px)}.sidebar a,.sidebar-nav-group-toggle{border-radius:var(--radius-sm);min-height:36px;font-size:var(--type-data-size);line-height:var(--type-data-line);padding-inline:10px}.sidebar a.active{background:var(--selection-subtle);color:var(--selection)}.sidebar-profile-card{gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);grid-template-columns:32px minmax(0,1fr) 28px}.sidebar-profile-avatar{border-radius:var(--radius-full);width:32px;height:32px}.sidebar-user-name{line-height:var(--type-caption-line);overflow-wrap:anywhere;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (width>=901px){.main-content:has(>:is(.dashboard-page,.portfolio-page,.weekly-reports-surface,.risk-dashboard-page,.site-snag-page)){padding-left:0}}.page-header{min-height:56px;margin-bottom:var(--space-4);gap:var(--space-4);border-radius:var(--radius-none);box-shadow:none;background:0 0;border:0;padding:0}.page-header h1{color:var(--text-primary);font-size:var(--type-page-size);font-weight:var(--type-page-weight);line-height:var(--type-page-line);margin:0}.page-header p,.page-subtitle{margin-top:var(--space-1);color:var(--text-muted);font-size:var(--type-data-size);line-height:var(--type-data-line)}.master-detail{gap:var(--space-2);border-radius:var(--radius-none);background:0 0;border:0;grid-template-columns:clamp(312px,23.333vw,360px) minmax(0,1fr);overflow:hidden}.master-pane,.detail-pane{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:none;overflow:hidden}.master-pane{border-right:1px solid var(--border)}.master-pane-header{height:132px;min-height:132px;padding:var(--space-3) var(--space-4);background:var(--bg-surface)}.detail-pane-header{height:96px;min-height:96px;padding:var(--space-3) var(--space-4);background:var(--bg-surface)}.detail-pane-tabs{align-items:stretch;gap:var(--space-6);height:36px;min-height:36px;padding-inline:var(--space-4);border-bottom:1px solid var(--border);scrollbar-width:thin;overflow:auto hidden}.detail-tab{min-height:36px;color:var(--text-secondary);font:var(--type-label-weight) var(--type-label-size) / var(--type-label-line) var(--font-interface);padding:0}.detail-tab.is-active{color:var(--selection)}.detail-tab.is-active:after{background:var(--selection);height:2px}.master-quick-filter.is-active,.master-list-row.is-selected{background:var(--selection-subtle);color:var(--selection)}.master-quick-filter.is-active{border-color:#0000}.master-list-row.is-selected:before{background:var(--selection)}.master-list-row{min-height:68px;padding:var(--space-2) var(--space-3)}.master-pane-list,.detail-pane-content{overscroll-behavior:contain}.dashboard-summary-card,.metric-pill{border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:none}.status-progress-track,.dashboard-progress-track{background:var(--progress-track)}.status-progress-track>span,.dashboard-progress-track>span{background:var(--progress-fill)}.ds-data-surface{overscroll-behavior-inline:contain;overflow-x:auto}.ds-data-surface>.ds-table{min-width:640px}.ds-cell-action{text-align:right}.canonical-detail-content{min-width:0;min-height:100%;padding:var(--space-4)}.canonical-detail-flow{gap:0;min-width:0;display:grid}.canonical-detail-flow.is-spaced{gap:var(--space-4)}.canonical-detail-flow>*{min-width:0}@media (width<=900px){.sidebar{width:224px}.master-detail{display:block;overflow:visible}.master-pane,.detail-pane{overflow:visible}.master-pane-header,.detail-pane-header{height:auto;min-height:0}.master-pane-list,.detail-pane-content{overscroll-behavior:auto;overflow:visible}}@media (width<=640px){.sidebar{width:260px;max-width:82vw;padding:var(--space-4) var(--space-3)}.sidebar a,.sidebar-nav-group-toggle{min-height:44px}.page-header{min-height:0;margin-bottom:var(--space-4)}.master-list-row{min-height:72px}.detail-pane-tabs{gap:var(--space-4);padding-inline:var(--space-3)}.canonical-detail-flow.is-spaced{gap:var(--space-3)}.canonical-detail-content{padding:var(--space-3)}}@media print{:root{--bg-base:#fff;--bg-surface:#f5f5f5;--bg-elevated:#ebebeb;--bg-input:#fff;--border:#e5e5e5;--border-strong:#d4d4d4;--text-primary:#0a0a0a;--text-secondary:#525252;--text-muted:#a3a3a3;--text-inverse:#f5f5f5;--accent:#0a0a0a;--accent-subtle:#0000000a;--status-done:#0a0a0a;--status-done-bg:#0000000f;--status-active:#525252;--status-active-bg:#52525214;--status-todo:#d4d4d4;--status-todo-bg:transparent;--status-alert:#dc2626;--status-alert-bg:#dc26260f;--status-warn:#ea580c;--status-warn-bg:#ea580c0f}.sidebar,nav,header,.no-print,button,[role=navigation]{display:none!important}@page{size:A4 portrait;margin:16mm 12mm}body{color:#000;background:#fff;font-size:11pt}.main-content{width:100%!important;margin:0!important;padding:0!important}.page-break{page-break-before:always}.no-break{page-break-inside:avoid}table{border-collapse:collapse;width:100%}th,td{border:1px solid #d1d5db;padding:6px 8px;font-size:10pt}.badge-red{color:#991b1b!important;background:#fee2e2!important}.badge-amber{color:#92400e!important;background:#fef3c7!important}.badge-green{color:#065f46!important;background:#d1fae5!important}*{box-shadow:none!important;text-shadow:none!important}}.print-only{display:none}@media print{.print-only{display:block!important}}.snag-page{max-width:1180px;color:var(--text-primary);margin:0 auto;padding:4px 0 48px}.snag-page h1{letter-spacing:-.025em;text-wrap:balance;margin:6px 0;font-size:1.75rem}.snag-page h2{font-size:1rem}.snag-page p{color:var(--text-muted)}.snag-page-header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px;display:flex}.snag-back{color:var(--text-muted);margin-bottom:6px;display:block}.snag-primary-action{align-items:center;min-height:44px;display:inline-flex}.snag-quick-views{gap:8px;padding-bottom:10px;display:flex;overflow:auto}.snag-quick-views button{border:1px solid var(--border);border-radius:var(--radius-full);background:var(--bg-elevated);min-height:40px;color:var(--text-secondary);white-space:nowrap;cursor:pointer;padding:8px 14px}.snag-quick-views button:focus-visible{box-shadow:var(--focus-ring);outline:none}.snag-filters{border-bottom:1px solid var(--border);grid-template-columns:2fr repeat(3,1fr) auto;align-items:end;gap:12px;padding:16px 0 20px;display:grid}.snag-filters label,.snag-form label,.snag-inline-form label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;display:flex}.snag-number{font-family:var(--font-mono);color:var(--text-muted);font-size:.75rem;font-weight:700}.snag-detail-data{gap:8px;margin:14px 0;display:grid}.snag-detail-data div{grid-template-columns:80px 1fr;gap:8px;display:grid}.snag-detail-data dt{color:var(--text-muted);font-size:.75rem}.snag-detail-data dd{overflow-wrap:anywhere;margin:0;font-size:.8125rem}.snag-status,.snag-priority{border-radius:var(--radius-full);align-items:center;min-height:28px;padding:4px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.snag-status-success{background:var(--status-done-bg);color:var(--status-done)}.snag-status-danger{background:var(--status-alert-bg);color:var(--status-alert)}.snag-status-warning,.snag-priority-high{background:var(--status-warn-bg);color:var(--status-warn)}.snag-status-info,.snag-status-review{background:var(--accent-subtle);color:var(--accent)}.snag-status-neutral{background:var(--bg-input);color:var(--text-secondary)}.snag-priority-critical{background:var(--status-alert-bg);color:var(--status-alert)}.snag-priority-low,.snag-priority-medium{background:var(--bg-input);color:var(--text-secondary)}.snag-form-page{max-width:760px}.snag-form{flex-direction:column;gap:18px;margin-top:22px;display:flex}.snag-form-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.snag-form fieldset{border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:12px;padding:16px;display:flex}.snag-form legend{padding:0 6px;font-weight:700}.snag-sticky-actions{background:var(--bg-base);justify-content:flex-end;gap:10px;padding:14px 0;display:flex;position:sticky;bottom:0}.snag-error{border:1px solid var(--status-alert);border-radius:var(--radius-md);background:var(--status-alert-bg);color:var(--text-primary);padding:14px}.snag-error p{color:inherit}.snag-skeleton-list,.snag-muted{color:var(--text-muted)}.snag-publish-notice{border:1px solid var(--status-warn);border-radius:var(--radius-md);background:var(--status-warn-bg);color:var(--text-primary);margin:10px 0 0;padding:10px 12px;font-size:.8125rem}.snag-detail-state{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.snag-detail>*{width:100%;max-width:960px;margin-left:auto;margin-right:auto}.snag-operational-summary{flex-direction:column;gap:16px;margin-bottom:4px;display:flex}.snag-operational-summary .ds-attention-surface{margin:0}.snag-operational-summary .ds-analytical-section{padding-bottom:4px}.snag-operational-summary .ds-metadata-row{min-width:0}.snag-detail .observation-capture-card{border-top:1px solid var(--border);background:0 0;border-radius:0;margin-bottom:16px;padding:16px 0 0}.snag-detail-section{border-bottom:1px solid var(--border);padding:18px 0}.snag-inline-form{flex-direction:column;gap:10px;max-width:580px;margin-top:14px;display:flex}.snag-help{font-size:.75rem}.snag-evidence-list,.snag-timeline{padding:0;list-style:none}.snag-evidence-list li{border-bottom:1px solid var(--border);padding:10px 0}.snag-evidence-list p{margin:4px 0}.snag-evidence-list time,.snag-timeline time{color:var(--text-muted);font-size:.72rem}.snag-timeline{flex-direction:column;gap:0;display:flex}.snag-timeline li{border-left:1px solid var(--border);padding:0 0 18px 24px;position:relative}.snag-timeline li:before{content:"";background:var(--accent);border-radius:50%;width:9px;height:9px;position:absolute;top:3px;left:-5px}.snag-timeline li>div{justify-content:space-between;gap:12px;display:flex}.snag-timeline p,.snag-timeline blockquote{margin:5px 0;font-size:.8125rem}.snag-timeline blockquote{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:8px 10px}.snag-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.snag-section-heading h2,.snag-section-heading p{margin-top:0}.snag-section-heading>span{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.snag-evidence-list{flex-direction:column;display:flex}.snag-evidence-item>div:first-child{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.snag-evidence-item>div:first-child span{overflow-wrap:anywhere}.snag-evidence-item time{margin-left:auto}.snag-evidence-upload{background:var(--bg-elevated);border-radius:var(--radius-lg);flex-direction:column;align-items:flex-start;gap:10px;margin-top:18px;padding:16px;display:flex}.snag-evidence-upload h3,.snag-evidence-upload p{margin:0}.snag-evidence-draft{flex-direction:column;gap:10px;width:min(100%,580px);display:flex}.snag-evidence-draft>img,.snag-evidence-preview img{object-fit:contain;background:var(--bg-input);border-radius:var(--radius-md);width:100%;max-height:360px;display:block}.snag-evidence-draft label{flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;display:flex}.snag-evidence-draft progress{width:100%}.snag-evidence-actions{flex-wrap:wrap;gap:8px;display:flex}.snag-evidence-preview{flex-direction:column;align-items:flex-start;gap:8px;margin:10px 0;display:flex}.snag-evidence-preview figcaption{color:var(--text-muted);font-size:.75rem}@media (width<=760px){.snag-page{padding:48px 0 84px}.snag-detail{padding-top:0}.snag-page-header{align-items:flex-start}.snag-filters{grid-template-columns:1fr 1fr}.snag-filters label:first-child{grid-column:1/-1}.snag-sticky-actions{padding:12px 0 calc(12px + env(safe-area-inset-bottom))}.snag-sticky-actions .btn{min-height:44px}.snag-detail-data div{grid-template-columns:92px 1fr}}@media (width<=390px){.snag-page-header{flex-direction:column}.snag-primary-action{justify-content:center;width:100%}.snag-filters{grid-template-columns:1fr}.snag-filters label:first-child{grid-column:auto}.snag-evidence-item>div:first-child{flex-direction:column;align-items:flex-start}.snag-evidence-item time{margin-left:0}.snag-timeline li>div{flex-direction:column;gap:3px}.snag-evidence-upload{padding:14px}.snag-evidence-actions,.snag-evidence-actions .btn{width:100%}}@media (prefers-reduced-motion:reduce){.snag-page *{scroll-behavior:auto!important;transition-duration:.01ms!important}}.site-snag-page{max-width:1280px}.site-snag-header{align-items:center}.site-snag-header p{margin:4px 0 0}.site-snag-mode-tabs{margin-bottom:18px}.site-snag-section-state{min-height:240px;color:var(--text-muted);place-items:center;display:grid}.site-snag-breakdowns{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:8px;display:grid}.site-snag-breakdown h3{margin:0 0 10px;font-size:.8125rem}.site-snag-breakdown>p{color:var(--text-muted)}.site-snag-breakdown ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.site-snag-breakdown li>div{justify-content:space-between;gap:16px;margin-bottom:6px;font-size:.8125rem;display:flex}.site-snag-breakdown-track{border-radius:var(--radius-full);background:var(--border);height:5px;display:block;overflow:hidden}.site-snag-breakdown-track>span{border-radius:inherit;background:var(--accent);height:100%;display:block}.site-snag-section-intro{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.site-snag-section-intro h2{margin:0 0 5px}.site-snag-section-intro p{margin:0}.site-snag-section-intro>span{color:var(--text-muted);white-space:nowrap;font-size:.8125rem}.site-snag-plan-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:22px;display:grid}.site-snag-plan-layout.has-preview{grid-template-columns:minmax(0,1fr) 340px}.site-snag-plan-main{min-width:0}.site-snag-plan-controls{margin-bottom:12px}.site-snag-plan-controls label{flex:260px}.site-snag-plan-stage{border-radius:var(--radius-md);min-height:520px}.site-snag-pin-preview{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);max-height:calc(100vh - 36px);position:sticky;top:18px;overflow:auto}.site-snag-pin-preview-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.site-snag-pin-preview-header h2{margin:0}.site-snag-pin-preview-body{flex-direction:column;align-items:flex-start;gap:14px;padding:16px;display:flex}.site-snag-pin-preview-body h3,.site-snag-pin-preview-body p{margin:0}.site-snag-pin-preview-body .snag-detail-data{width:100%;margin:0}.site-snag-preview-evidence{border-top:1px solid var(--border);width:100%;padding-top:14px}.site-snag-preview-evidence h3{margin-bottom:8px}.site-snag-preview-evidence .snag-evidence-list{margin:0}.site-snag-preview-evidence .snag-evidence-item{padding:10px 0}.site-snag-preview-evidence .snag-evidence-preview img{max-height:240px}@media (width<=980px){.site-snag-plan-layout.has-preview{grid-template-columns:1fr}.site-snag-pin-preview{max-height:none;position:static}}@media (width<=640px){.site-snag-header{align-items:flex-start}.site-snag-breakdowns{grid-template-columns:1fr;gap:16px}.site-snag-section-intro{flex-direction:column}.site-snag-plan-controls{flex-wrap:nowrap;overflow-x:auto}.site-snag-plan-controls>*{flex:none}.site-snag-plan-controls label{width:230px}.site-snag-plan-stage{min-height:360px}}@media (width<=900px){.site-snag-page[data-mobile-view=detail] .site-snag-header,.site-snag-page[data-mobile-view=detail] .site-snag-mode-tabs{display:none}}.site-snag-master-detail .master-pane-header{padding-bottom:12px}.site-snag-master-row{min-height:118px}.site-snag-master-row .publication-badge{min-height:22px;padding:2px 7px;font-size:.625rem}.site-snag-master-responsibility{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;display:block;overflow:hidden}.site-snag-master-state{align-items:center;display:inline-flex}.site-snag-master-state .snag-status{min-height:22px;padding:2px 7px;font-size:.625rem}.site-snag-master-row .master-row-bottom{align-items:center}.site-snag-master-row .master-row-bottom>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.site-snag-master-row .master-row-bottom>span:last-child{display:none}.snag-disclosure{flex-shrink:0}.snag-disclosure>summary{height:var(--control-height-sm);padding:0 8px;font-size:.6875rem;list-style:none}.snag-disclosure>summary::-webkit-details-marker{display:none}.site-snag-master-header .snag-filters{border-bottom:0;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px;padding:10px 0 0}.site-snag-detail-empty{place-items:center;min-height:260px;display:grid}.snag-capture-actions{gap:10px;margin-top:14px;display:flex}.snag-view-on-plan{color:var(--accent);margin-left:auto;font-size:.75rem;font-weight:600;text-decoration:none}.snag-view-on-plan:hover{text-decoration:underline}.plan-page{max-width:1040px}.plan-upload{border-bottom:1px solid var(--border);grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:12px;padding:18px 0 24px;display:grid}.plan-upload h2,.plan-upload>p{grid-column:1/-1;margin:0}.plan-upload label{flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;display:flex}.plan-upload progress{width:160px;margin-right:10px}.plan-version-list{border-top:1px solid var(--border);margin-top:22px}.plan-version-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:16px 2px;display:flex}.plan-version-title,.plan-version-actions,.plan-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.plan-version-row p{margin:5px 0 0;font-size:.8rem}.plan-badge{border-radius:var(--radius-full);background:var(--bg-input);padding:4px 8px;font-size:.72rem;font-weight:700}.plan-viewer-page{min-width:0}.plan-viewer-header{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.plan-viewer-header h1{margin:4px 0;font-size:1.35rem}.plan-viewer-header h1 span{color:var(--text-muted);font-weight:400}.plan-viewer-header p{color:var(--text-muted);margin:0}.plan-controls .btn{min-height:44px}.plan-placement-banner,.plan-placement-summary{border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-subtle);color:var(--text-primary);margin:10px 0;padding:10px 12px}.plan-stage-scroll{overscroll-behavior:contain;background:var(--bg-input);max-width:100%;min-height:420px;padding:16px;overflow:auto}.plan-surface{touch-action:pan-x pan-y;background:#fff;width:max-content;margin:0 auto;line-height:0;position:relative}.plan-surface.is-placing{cursor:crosshair;touch-action:none;outline:2px solid var(--accent);outline-offset:3px}.plan-surface canvas{max-width:none;display:block}.plan-pin{background:var(--status-alert);color:#fff;border:2px solid #fff;border-radius:50% 50% 50% 0;place-items:center;width:38px;height:38px;text-decoration:none;display:grid;position:absolute;transform:translate(-50%,-100%)rotate(-45deg)}.plan-pin span{font-size:.7rem;font-weight:800;rotate:45deg}.plan-pin:focus-visible{outline:3px solid var(--accent);outline-offset:3px;z-index:2}.plan-pin-list{padding:18px 0}.plan-pin-list ul{flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.plan-pin-list a{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);padding:10px 12px;display:block}.plan-loading{min-height:360px;color:var(--text-muted);place-items:center;display:grid}@media (width<=760px){.plan-upload{grid-template-columns:1fr}.plan-upload h2,.plan-upload>p{grid-column:auto}.plan-version-row,.plan-viewer-header{flex-direction:column;align-items:flex-start}.plan-version-actions{width:100%}.plan-version-actions .btn{flex:1;justify-content:center}.plan-controls{flex-wrap:nowrap;width:100%;padding-bottom:4px;overflow:auto}.plan-controls .btn,.plan-controls span{flex:none}.plan-stage-scroll{min-height:320px;padding:8px}.plan-pin{width:44px;height:44px}}@media (prefers-reduced-motion:reduce){.plan-viewer-page *{scroll-behavior:auto!important;transition:none!important}}.plan-pin{font-family:var(--font-sans);cursor:pointer;padding:0}.plan-pin:hover,.plan-pin.is-selected{background:var(--accent);z-index:2}.plan-pin-list button{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;cursor:pointer;background:0 0;padding:10px 12px;display:block}.plan-pin-list button:hover{border-color:var(--border-strong);background:var(--accent-subtle)}.snag-field-shell{--bg-base:var(--field-bg-snag);--bg-surface:var(--field-bg-card);--bg-elevated:var(--field-bg-card);--bg-input:var(--field-bg-subtle);--border:var(--field-border);--border-strong:var(--field-border-strong);--text-primary:var(--field-text-heading);--text-secondary:var(--field-text-body);--text-muted:var(--field-text-muted);--accent:var(--field-accent-snag);--accent-subtle:var(--field-accent-snag-subtle);--status-alert:var(--field-danger-fg);--status-alert-bg:var(--field-danger-bg);--status-done:var(--field-success-fg);--status-done-bg:var(--field-success-bg);--status-warn:var(--field-warning-fg);--status-warn-bg:var(--field-warning-bg);background:var(--bg-base);min-height:100vh;color:var(--text-primary);padding:20px 20px calc(72px + env(safe-area-inset-bottom));flex-direction:column;display:flex}.snag-field-back-link{color:var(--text-secondary);margin-bottom:12px;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-block}.snag-field-back-link:hover{color:var(--accent)}.snag-field-back-link,.snag-field-header,.snag-field-body{width:100%;max-width:680px;margin-left:auto;margin-right:auto}.snag-field-header{padding:0 0 14px}.snag-field-header-context{border-bottom:1px solid var(--field-border);padding:4px 0 14px}.snag-field-header h1{color:var(--field-text-heading);margin:0;font-size:1.75rem;font-weight:800;line-height:1.1}.snag-field-header p{color:var(--field-text-secondary);margin:4px 0 0;font-size:.875rem}.snag-field-body{flex:1;min-width:0;padding-top:16px}.snag-field-tabbar{z-index:30;padding:6px 10px calc(6px + env(safe-area-inset-bottom));background:var(--bg-surface,var(--bg-elevated));border-top:1px solid var(--border);justify-content:space-around;align-items:stretch;gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 10px #00000014}.snag-field-tab{min-height:48px;color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.72rem;font-weight:600;display:flex}.snag-field-tab span[aria-hidden]{font-size:1.15rem;line-height:1}.snag-field-tab.is-active{color:var(--accent);background:var(--accent-subtle)}.snag-field-tab:focus-visible{box-shadow:var(--focus-ring);outline:none}.snag-field-tab.is-add span[aria-hidden]{background:var(--accent);width:34px;height:34px;color:var(--field-text-on-accent,#fff);border-radius:50%;place-items:center;margin-bottom:1px;font-size:1.3rem;display:grid}.snag-field-tab.is-add.is-active span[aria-hidden]{background:var(--accent)}.snag-field-plan{flex-direction:column;gap:10px;display:flex;position:relative}.snag-field-plan-controls{padding-bottom:4px}.snag-field-plan-controls .ds-select{flex:160px;min-height:44px}.snag-field-plan-name{align-items:baseline;gap:6px;font-weight:700;display:flex}.snag-field-plan-name small{color:var(--text-muted);font-weight:400}.snag-field-plan-stage{min-height:60vh}.snag-field-plan-loading{min-height:50vh;color:var(--text-muted);place-items:center;display:grid}.snag-field-plan-empty{margin-top:12px}.snag-field-plan-empty-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.snag-field-plan-empty-actions .btn{flex:auto;justify-content:center;min-height:44px}.snag-field-fab{right:16px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:25;background:var(--accent);width:56px;height:56px;color:var(--field-text-on-accent,#fff);cursor:pointer;border:none;border-radius:50%;font-size:1.75rem;line-height:1;position:fixed;box-shadow:0 4px 14px #00000047}.snag-field-fab:focus-visible{box-shadow:var(--focus-ring), 0 4px 14px #00000047;outline:none}.snag-field-capture-confirm{left:0;right:0;bottom:calc(64px + env(safe-area-inset-bottom));z-index:26;background:var(--bg-surface,var(--bg-elevated));border-top:1px solid var(--border);padding:10px 16px;position:fixed;box-shadow:0 -2px 10px #00000026}.snag-field-capture-confirm .btn{min-height:44px}.snag-field-list{flex-direction:column;gap:12px;display:flex}.snag-field-list-toolbar{align-items:center;gap:8px;display:flex}.snag-field-list-toolbar .snag-quick-views{flex:1;margin:0;padding:0}.snag-field-filter-trigger{white-space:nowrap;flex:none;min-height:44px}.snag-field-capture-bar{flex-direction:column;align-items:stretch;gap:10px}.snag-field-capture-bar .btn{min-height:44px}.snag-field-cards{flex-direction:column;gap:12px;display:flex}.snag-field-card-row{flex-direction:column;gap:6px;display:flex}.snag-field-select{min-height:32px;color:var(--text-secondary);align-items:center;gap:8px;font-size:.78rem;display:flex}.snag-field-select input{width:20px;height:20px}.snag-field-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);color:inherit;min-height:44px;padding:14px 16px;text-decoration:none;display:block}.snag-field-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.snag-field-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.snag-field-card h2{margin:8px 0 4px;font-size:1rem}.snag-field-card-stakeholder{color:var(--text-secondary);margin:0 0 8px;font-size:.8125rem}.snag-field-card-stakeholder span{color:var(--text-muted);text-transform:uppercase;margin-right:8px;font-size:.6875rem;font-weight:700}.snag-field-card-foot{border-top:1px solid var(--border);color:var(--text-muted);justify-content:space-between;align-items:center;gap:8px;padding-top:8px;font-size:.75rem;display:flex}.snag-field-card-state{text-align:right;justify-content:flex-end;align-items:center;gap:5px;display:inline-flex}.snag-field-card-state .snag-status{min-height:22px;padding:2px 7px}.snag-field-card-visibility{color:var(--text-muted);margin:8px 0 0;font-size:.6875rem}@media (width<=390px){.snag-field-shell{padding:12px 12px calc(72px + env(safe-area-inset-bottom))}.snag-field-card-foot{flex-direction:column;align-items:flex-start}.snag-field-card-state{text-align:left;justify-content:flex-start}}.snag-field-sheet-overlay{z-index:1000;background:#00000080;position:fixed;inset:0}.snag-field-sheet{z-index:1001;background:var(--bg-surface,var(--bg-elevated));border:1px solid var(--border);max-height:85vh;padding:16px 16px calc(16px + env(safe-area-inset-bottom));border-bottom:none;border-radius:16px 16px 0 0;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -8px 30px #00000059}.snag-field-sheet-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.snag-field-sheet-header h2{margin:0;font-size:1.05rem}.snag-field-sheet .snag-filters{border-bottom:none;flex-direction:column;gap:14px;padding:0;display:flex}.snag-mobile-review-nav{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated);color:var(--text-muted);justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;padding:8px 4px;font-size:.8125rem;display:flex}.snag-mobile-review-nav .btn{flex:none;min-height:44px}@media (prefers-reduced-motion:reduce){.snag-field-shell *{scroll-behavior:auto!important;transition-duration:.01ms!important}}.import-page{max-width:1100px;padding:var(--space-5,20px);flex-direction:column;gap:20px;margin:0 auto;display:flex}.import-back{color:var(--text-muted);margin-bottom:6px;display:block}.import-header h1{margin:0 0 4px;font-size:1.5rem}.import-header p{color:var(--text-muted);margin:0;font-size:.9rem}.import-steps{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.import-step{color:var(--text-muted);border-radius:var(--radius-full,999px);background:var(--bg-input);align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:600;display:flex}.import-step-index{background:var(--border);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;display:inline-flex}.import-step--active{color:var(--accent);background:var(--accent-subtle)}.import-step--active .import-step-index{background:var(--accent);color:var(--text-inverse)}.import-step--done .import-step-index{background:var(--status-done);color:var(--text-inverse)}.import-dropzone{border:2px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-elevated);min-height:200px;color:var(--text-muted);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex}.import-dropzone:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.import-dropzone--dragover{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent)}.import-file-summary{color:var(--text-secondary);flex-wrap:wrap;gap:16px;font-size:.85rem;display:flex}.import-file-summary strong{color:var(--text-primary)}.import-alert{border-radius:var(--radius-md);align-items:flex-start;gap:10px;padding:12px 14px;font-size:.875rem;display:flex}.import-alert--danger{background:var(--status-alert-bg);color:var(--status-alert)}.import-alert--warning{background:var(--status-warn-bg);color:var(--status-warn)}.import-alert--info{background:var(--accent-subtle);color:var(--accent)}.import-mapping-grid{grid-template-columns:1fr 1fr auto;align-items:center;gap:10px 16px;display:grid}.import-mapping-header{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:700}.import-mapping-source{color:var(--text-primary);word-break:break-word;font-size:.875rem}.import-mapping-tag{border-radius:var(--radius-full,999px);white-space:nowrap;padding:2px 8px;font-size:.68rem;font-weight:700}.import-mapping-tag--suggested{background:var(--accent-subtle);color:var(--accent)}.import-mapping-tag--manual{background:var(--status-warn-bg);color:var(--status-warn)}.import-mapping-tag--ignored{background:var(--bg-input);color:var(--text-muted)}@media (width<=640px){.import-mapping-grid{grid-template-columns:1fr}.import-mapping-header:nth-child(3){display:none}}.import-summary-cards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.import-summary-card{padding:14px 16px}.import-summary-card .value{font-size:1.5rem;font-weight:700;display:block}.import-summary-card .label{color:var(--text-muted);font-size:.75rem}.import-summary-card--success .value{color:var(--status-done)}.import-summary-card--neutral .value{color:var(--text-secondary)}.import-summary-card--danger .value{color:var(--status-alert)}.import-summary-card--warning .value{color:var(--status-warn)}.import-filter-row{flex-wrap:wrap;gap:8px;display:flex}.import-filter-chip{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);border-radius:var(--radius-full,999px);cursor:pointer;padding:6px 14px;font-size:.8rem;font-weight:600}.import-filter-chip[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.import-status-col{background:var(--bg-surface);white-space:nowrap;z-index:1;position:sticky;left:0}.import-row-status{border-radius:var(--radius-full,999px);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.import-row-status--success{background:var(--status-done-bg);color:var(--status-done)}.import-row-status--neutral{background:var(--bg-input);color:var(--text-secondary)}.import-row-status--danger{background:var(--status-alert-bg);color:var(--status-alert)}.import-row-status--warning{background:var(--status-warn-bg);color:var(--status-warn)}.import-preview-cards{flex-direction:column;gap:10px;display:flex}.import-preview-card{flex-direction:column;gap:6px;padding:12px 14px;display:flex}.import-preview-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.import-preview-card-code{font-weight:700}.import-preview-card-meta{color:var(--text-secondary);flex-wrap:wrap;gap:4px 12px;font-size:.8rem;display:flex}.import-row-detail{margin-top:8px;font-size:.82rem}.import-row-detail ul{margin:4px 0 0;padding-left:18px}.import-row-detail li{margin-bottom:2px}.import-result-hero{text-align:center;padding:28px 16px}.import-result-hero h2{margin:8px 0 4px}.import-result-counts{flex-wrap:wrap;justify-content:center;gap:20px;margin-top:12px;display:flex}.import-result-counts .value{font-size:1.4rem;font-weight:700;display:block}.import-result-counts .label{color:var(--text-muted);font-size:.75rem}@media (width<=480px){.import-page{padding:12px}.import-result-counts{gap:12px}}.boq-sticky-overview{z-index:20;background:var(--bg-base);border-bottom:1px solid var(--border);gap:10px;margin:-8px -8px 0;padding:8px;display:grid;position:sticky;top:0}.boq-total-strip{border:1px solid var(--accent);gap:9px;padding:11px 16px;display:grid}.boq-total-strip-overall{justify-content:space-between;align-items:center;gap:18px;display:flex}.boq-total-strip-overall>div:first-child{align-items:baseline;gap:14px;display:flex}.boq-total-strip-overall>div:first-child span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700}.boq-total-strip-overall>div:first-child strong{font-variant-numeric:tabular-nums;font-size:1.25rem}.boq-total-strip-meta{gap:8px;display:flex}.boq-total-strip-meta span{background:var(--bg-elevated);color:var(--text-muted);border-radius:999px;padding:4px 8px;font-size:.7rem}.boq-discipline-totals{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px;display:grid}.boq-discipline-total-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:5px 2px;font-size:.72rem;display:flex}.boq-discipline-total-row span{min-width:0;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;gap:8px;display:flex;overflow:hidden}.boq-discipline-total-row b{min-width:48px;color:var(--accent)}.boq-discipline-total-row>strong{white-space:nowrap;font-variant-numeric:tabular-nums}@media (width<=900px){.boq-sticky-overview{position:static}.boq-total-strip-overall{flex-direction:column;align-items:flex-start}.boq-total-strip-overall>div:first-child{flex-direction:column;align-items:flex-start;gap:3px}.boq-discipline-totals{grid-template-columns:1fr}}.boq-page{flex-direction:column;gap:16px;max-width:1500px;margin:0 auto;padding:24px 20px 80px;display:flex}.boq-page-header{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.boq-page-header a{color:var(--text-muted);font-size:.85rem}.boq-page-header span{color:var(--accent);margin-top:12px;font-size:.78rem;font-weight:700;display:block}.boq-page-header h1{margin:2px 0 4px;font-size:1.65rem}.boq-page-header p{color:var(--text-muted);margin:0}.boq-header-meta{gap:8px;display:flex}.boq-header-meta span,.boq-history button{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);border-radius:999px;padding:7px 12px}.boq-history{align-items:center;gap:8px;padding:4px 0;display:flex;overflow:auto}.boq-history strong{color:var(--text-muted);margin-right:4px;font-size:.8rem}.boq-history button{cursor:pointer;gap:6px;display:flex}.boq-history button span{color:var(--text-muted);font-size:.65rem}.boq-history button.is-active{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.boq-toolbar,.boq-section-title,.boq-savebar{justify-content:space-between;align-items:center;gap:16px;display:flex}.boq-toolbar{padding:14px 16px}.boq-toolbar>div:first-child{flex-direction:column;gap:3px;display:flex}.boq-toolbar span,.boq-savebar span{color:var(--text-muted);font-size:.78rem}.boq-toolbar-actions,.boq-add-row{gap:8px;display:flex}.boq-add-panel{padding:16px}.boq-section-title h2{margin:0 0 3px;font-size:1rem}.boq-section-title p{color:var(--text-muted);margin:0;font-size:.82rem}.boq-add-row{margin-top:14px}.boq-add-row select{flex:1}.boq-custom-grid{grid-template-columns:1.2fr 2fr .6fr .7fr .8fr auto;gap:8px;margin-top:14px;display:grid}.boq-alert{border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;display:flex}.boq-alert ul{margin:5px 0;padding-left:20px}.boq-alert-danger{background:var(--status-alert-bg);color:var(--status-alert)}.boq-alert-info{background:var(--accent-subtle);color:var(--accent)}.boq-table-wrap{overflow:auto}.boq-table{border-collapse:collapse;width:100%;min-width:1200px}.boq-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);text-align:left;background:var(--bg-elevated);padding:10px;font-size:.7rem;position:sticky;top:0}.boq-table td{border-top:1px solid var(--border);vertical-align:top;padding:9px 10px}.boq-table td:first-child strong,.boq-table td:first-child span{white-space:nowrap;display:block}.boq-table td:first-child span{color:var(--text-muted);margin-top:3px;font-size:.72rem}.boq-kind{border-radius:999px;padding:4px 7px;font-size:.63rem;font-weight:800;display:inline-flex}.boq-kind-standard{color:var(--accent);background:var(--accent-subtle)}.boq-kind-custom{color:var(--status-warn);background:var(--status-warn-bg)}.boq-unit{min-width:70px}.boq-number{min-width:100px}.boq-total{white-space:nowrap;font-variant-numeric:tabular-nums}.boq-total span{color:var(--text-muted);font-size:.72rem}.boq-notes{gap:5px;min-width:180px;display:grid}.boq-remove{color:var(--status-alert)}.boq-empty,.boq-state{text-align:center;color:var(--text-muted);padding:48px}.boq-state-error{color:var(--status-alert)}.boq-savebar{background:var(--bg-surface);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);border-radius:12px;padding:12px 14px;position:sticky;bottom:10px}.boq-savebar>div:first-child{flex-direction:column;flex:1;gap:5px;display:flex}.boq-savebar label{align-items:center;gap:10px;font-size:.8rem;font-weight:700;display:flex}.boq-savebar input{max-width:500px}@media (width<=900px){.boq-page-header,.boq-section-title,.boq-savebar{flex-direction:column;align-items:stretch}.boq-custom-grid{grid-template-columns:1fr 1fr}.boq-savebar{bottom:0}.boq-toolbar{flex-direction:column;align-items:stretch}.boq-toolbar-actions button{flex:1}}@media (width<=560px){.boq-page{padding:16px 12px 70px}.boq-custom-grid{grid-template-columns:1fr}.boq-add-row{flex-direction:column}.boq-header-meta{display:none}}.tender-page{max-width:1480px;margin:0 auto;padding:28px}.tender-form{gap:16px;display:grid}.tender-section{padding:20px}.tender-section-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.tender-section-heading h2{margin:0 0 4px}.tender-section-heading p{color:var(--text-muted);margin:0}.tender-status{color:var(--status-warn);font-weight:700}.tender-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-bottom:14px;display:grid}.tender-grid label,.tender-section>label,.tender-invitation-field label{gap:6px;font-size:12px;font-weight:700;display:grid}.tender-rules{resize:vertical;min-height:110px}.tender-invitation-field{margin-top:14px}.tender-invitation-message{resize:vertical;min-height:130px}.tender-invitation-field>div{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:12px;margin-top:8px;font-size:11px;display:flex}.tender-participants{gap:8px;display:grid}.tender-participants>div{grid-template-columns:28px minmax(180px,1fr) minmax(220px,1fr) auto auto auto auto;align-items:center;gap:8px;display:grid}.tender-access-status{letter-spacing:.04em;background:var(--bg-base);color:var(--text-muted);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.tender-access-status.is-active,.tender-access-status.is-opened{background:var(--status-done-bg);color:var(--status-done)}.tender-access-status.is-invited,.tender-access-status.is-sent{background:var(--status-warn-bg);color:var(--status-warn)}.tender-savebar{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;justify-content:flex-end;align-items:center;gap:18px;padding:14px 18px;display:flex;position:sticky;bottom:0}.tender-prerequisite{padding:28px}.tender-prerequisite h2{margin-top:0}.tender-invitation-preview{width:min(720px,100vw - 32px);padding:0}.tender-invitation-preview .modal-header{border-bottom:1px solid var(--border);padding:18px 22px}.tender-email-kicker{letter-spacing:.08em;color:var(--text-muted);font-size:10px;font-weight:800}.tender-email-preview{white-space:normal;padding:28px 34px}.tender-email-brand{color:var(--accent);margin-bottom:28px;font-size:22px;font-weight:900}.tender-email-message{white-space:pre-wrap;line-height:1.55}.tender-email-preview dl{border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr 1fr;gap:0;margin:24px 0;display:grid;overflow:hidden}.tender-email-preview dl>div{border-bottom:1px solid var(--border);padding:12px 14px}.tender-email-preview dt{text-transform:uppercase;color:var(--text-muted);font-size:10px}.tender-email-preview dd{margin:4px 0 0;font-weight:700}.tender-email-preview .btn{margin-bottom:18px}.tender-email-preview>small{color:var(--text-muted);display:block}.bidder-tender-page{background:var(--bg-base);min-height:100vh;color:var(--text-primary)}.bidder-tender-header{border-bottom:1px solid var(--border);background:var(--bg-elevated);justify-content:space-between;align-items:center;padding:18px 28px;display:flex}.bidder-tender-main{max-width:1280px;margin:0 auto;padding:28px}.bidder-tender-list{gap:12px;margin-top:20px;display:grid}.bidder-tender-card{text-align:left;cursor:pointer;color:var(--text-primary);grid-template-columns:1fr auto;gap:16px;padding:18px;display:grid}.bidder-tender-card h2{color:inherit;margin:4px 0}.bidder-tender-card p{color:var(--text-muted);margin:0}.bidder-workspace-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:18px 0;display:grid}.bidder-workspace-summary>div{padding:14px}.bidder-workspace-summary span{color:var(--text-muted);text-transform:uppercase;font-size:11px;display:block}.bidder-rules{white-space:pre-wrap;padding:18px}.bidder-boq-table{border-collapse:collapse;width:100%}.bidder-boq-table th,.bidder-boq-table td{border-bottom:1px solid var(--border);text-align:left;padding:10px}.bidder-readonly-note{background:var(--status-warn-bg);color:var(--status-warn);border-radius:9px;margin:14px 0;padding:12px 16px}@media (width<=900px){.tender-participants>div{grid-template-columns:28px 1fr 1fr}.tender-participants .btn,.tender-access-status{grid-column:auto}}@media (width<=720px){.tender-page,.bidder-tender-main{padding:14px}.tender-participants>div{grid-template-columns:24px 1fr}.tender-participants .btn,.tender-access-status{grid-column:2}.tender-section-heading{flex-direction:column}.bidder-tender-header{padding:14px}.bidder-tender-card{grid-template-columns:1fr}.bidder-boq-table{min-width:700px}.bidder-boq-table-wrap{overflow:auto}}.tender-access-status.is-open{background:var(--status-warn-bg);color:var(--status-warn)}.tender-access-status.is-closed{background:var(--bg-base);color:var(--text-muted)}.tender-round-list{gap:8px;display:grid}.tender-round-list>div{border-top:1px solid var(--border);grid-template-columns:120px auto 1fr;align-items:center;gap:10px;padding:10px 0;display:grid}.tender-round-list small{text-align:right;color:var(--text-muted)}.bid-round-editor{margin-top:20px}.bid-round-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;padding:16px;display:flex}.bid-round-summary{gap:18px;display:flex}.bid-round-summary span{color:var(--text-muted);font-size:11px;display:grid}.bid-round-summary strong{color:var(--text-primary);font-size:16px}.bid-rate-input{max-width:112px}.bid-quantity-input{width:78px;max-width:78px}.bid-quantity-input.is-readonly{background:var(--bg-base);color:var(--text-muted);cursor:not-allowed}.bid-rate-change{color:var(--text-muted);font-size:11px}.bid-rate-change.is-changed{color:var(--status-warn);font-weight:700}.bid-round-actions{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;justify-content:flex-end;gap:10px;padding:14px;display:flex;position:sticky;bottom:0}.bid-submitted-banner{background:var(--status-done-bg);color:var(--status-done);border-radius:10px;margin:14px 0;padding:16px}.tender-bid-review{overflow:hidden}.tender-review-summary{grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px;margin-bottom:16px;display:grid}.tender-review-summary>div{background:var(--bg-base);border-radius:9px;padding:12px}.tender-review-summary span{color:var(--text-muted);text-transform:uppercase;font-size:11px;display:block}.tender-review-summary strong{font-size:18px}.tender-review-layout{grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:16px;display:grid}.tender-review-participants{align-content:start;gap:8px;display:grid}.tender-review-participants>button{text-align:left;background:var(--bg-base);border:1px solid var(--border);color:inherit;cursor:pointer;border-radius:9px;justify-content:space-between;gap:8px;padding:12px;display:flex}.tender-review-participants>button.is-selected{border-color:var(--accent);background:var(--accent-subtle)}.tender-review-participants>button:disabled{cursor:default;opacity:.65}.tender-review-participants span:first-child{gap:3px;display:grid}.tender-review-participants small{color:var(--text-muted)}.tender-review-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.tender-review-heading h3,.tender-review-heading p{margin:0}.tender-review-heading p{color:var(--text-muted);margin-top:4px}.tender-review-actions{gap:8px;display:flex}.tender-review-table{min-width:980px;font-size:12px}.tender-review-table .tender-review-group td{background:var(--bg-base);font-weight:800}.tender-review-table tr.is-unpriced td{background:var(--status-warn-bg)}.tender-access-status.is-reviewed{background:var(--status-done-bg);color:var(--status-done)}.tender-access-status.is-in-review{background:var(--status-warn-bg);color:var(--status-warn)}@media (width<=900px){.tender-review-summary{grid-template-columns:repeat(2,1fr)}.tender-review-layout{grid-template-columns:1fr}.tender-review-heading{flex-direction:column}}.tender-clarification-register{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.tender-clarification-counts{gap:8px;display:flex}.tender-clarification-counts span{background:var(--bg-base);border-radius:999px;padding:5px 8px;font-size:11px}.tender-clarification-compose{grid-template-columns:minmax(180px,1fr) 170px minmax(240px,2fr) auto auto;align-items:start;gap:8px;margin-bottom:14px;display:grid}.tender-clarification-compose textarea{resize:vertical;min-height:72px}.tender-clarification-list{gap:10px;display:grid}.tender-clarification-list article{border:1px solid var(--border);border-left:2px solid var(--status-warn);background:var(--bg-elevated);border-radius:9px;padding:14px}.tender-clarification-list article.is-resolved,.tender-clarification-list article.is-closed{border-left-color:var(--status-done)}.tender-clarification-list article.is-draft{border-left-color:var(--text-muted)}.tender-clarification-list p{margin:8px 0}.tender-clarification-meta{justify-content:space-between;gap:12px;display:flex}.tender-clarification-meta span{color:var(--text-muted);font-size:11px}.tender-clarification-resolution{grid-template-columns:minmax(220px,1fr) auto auto auto;gap:8px;margin-top:10px;display:grid}.bidder-clarifications{margin-top:20px;padding:20px}.bidder-clarification-response{grid-template-columns:1fr auto;align-items:end;gap:10px;display:grid}.bidder-clarification-response textarea{resize:vertical;min-height:82px}@media (width<=900px){.tender-clarification-compose,.tender-clarification-resolution,.bidder-clarification-response{grid-template-columns:1fr}}.tender-comparison-levels{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.tender-comparison-table{min-width:940px}.tender-comparison-table td small{color:var(--text-muted);margin-top:4px;display:block}.tender-comparison-table .is-lowest,.tender-comparison-legend .is-lowest{background:var(--status-done-bg);color:var(--status-done)}.tender-comparison-table .is-highest,.tender-comparison-legend .is-highest{background:var(--status-warn-bg);color:var(--status-warn)}.tender-comparison-table .is-anomaly,.tender-comparison-legend .is-anomaly{background:var(--status-alert-bg);color:var(--status-alert)}.tender-comparison-table .is-missing,.tender-comparison-legend .is-missing{background:var(--bg-base);color:var(--text-muted)}.tender-comparison-matrix th:not(:first-child),.tender-comparison-matrix td:not(:first-child){text-align:right}.tender-comparison-legend{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.tender-comparison-legend span{border-radius:6px;padding:5px 8px;font-size:11px}.tender-award-candidates{gap:8px;margin-bottom:16px;display:grid}.tender-award-candidates label{border:1px solid var(--border);border-radius:9px;grid-template-columns:auto minmax(200px,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.tender-award-candidates label.is-selected{border-color:var(--accent);background:var(--accent-subtle)}.tender-award-candidates label:has(input:disabled){opacity:.7}.tender-award-candidates label>span:nth-child(2){display:grid}.tender-award-candidates small{color:var(--text-muted)}.tender-award-note{gap:6px;font-size:12px;font-weight:700;display:grid}.tender-award-note textarea{resize:vertical;min-height:90px}.tender-award-actions{justify-content:flex-end;align-items:center;gap:16px;margin-top:14px;display:flex}.tender-award-decision{background:var(--bg-base);border-radius:9px;padding:12px}.tender-awarded-groups{gap:8px;display:grid}.tender-awarded-groups>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;padding:10px 0;display:flex}.tender-awarded-groups span{display:grid}.tender-awarded-groups small{color:var(--text-muted)}@media (width<=720px){.tender-award-candidates label{grid-template-columns:auto 1fr}.tender-award-candidates .tender-access-status{grid-column:2}.tender-award-actions{flex-direction:column;align-items:stretch}}.bidder-tender-card{cursor:default;grid-template-columns:minmax(0,1fr) auto}.bidder-tender-card>footer{border-top:1px solid var(--border);grid-column:1/-1;justify-content:flex-end;gap:8px;padding-top:12px;display:flex}.tender-access-status.is-accepted{background:var(--status-done-bg);color:var(--status-done)}.tender-access-status.is-declined,.tender-access-status.is-no_response{background:var(--status-error-bg);color:var(--status-error)}.tender-tabs{z-index:6;border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;gap:4px;padding:6px;display:flex;position:sticky;top:0;overflow-x:auto}.tender-tabs button{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:9px 13px;font-weight:700}.tender-tabs button.is-active{background:var(--accent-subtle);color:var(--accent)}.tender-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.tender-overview-grid article{padding:18px}.tender-overview-grid article>span{color:var(--text-muted);text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:800;display:block}.tender-overview-grid ul{margin:0;padding-left:18px}.tender-overview-grid strong{line-height:1.45}@media (width<=800px){.tender-overview-grid{grid-template-columns:1fr}.tender-tabs{position:static}}.budget-page{max-width:1440px;margin:0 auto;padding:24px}.budget-workspace{gap:14px;display:grid}.budget-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px 16px;display:grid}.budget-summary div{gap:3px;display:grid}.budget-summary span{color:var(--text-secondary)}.budget-summary strong{font-size:1.25rem}.budget-submission-badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.budget-submission-badges>span{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:.76rem;font-weight:700;display:inline-flex}.budget-submission-badges .not-submitted{color:var(--status-warn);background:var(--status-warn-bg)}.budget-submission-badges .submitted{color:var(--status-done);background:var(--status-done-bg)}.budget-submission-badges strong{font-size:inherit}.budget-create{gap:16px;max-width:620px;padding:24px;display:grid}.budget-create label{gap:6px;display:grid}.budget-table{overflow-x:auto}.budget-table-head,.budget-contribution{grid-template-columns:minmax(260px,1.7fr) minmax(130px,.55fr) minmax(135px,.55fr) minmax(200px,1fr);align-items:center;gap:8px;min-width:820px;display:grid}.budget-table-head{background:var(--bg-subtle);border-bottom:1px solid var(--border-color);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;padding:7px 12px;font-size:.76rem;font-weight:700}.budget-contribution{border-bottom:1px solid var(--border-color);padding:6px 12px}.budget-contribution .ds-input,.budget-contribution .ds-select{min-height:34px;padding:6px 8px}.budget-work-group{align-items:baseline;gap:8px;min-width:0;display:flex}.budget-work-group strong{flex:none}.budget-work-group span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.budget-discipline-footer{background:var(--bg-subtle);justify-content:flex-end;align-items:center;gap:12px;padding:8px 12px;display:flex}.budget-discipline-footer span{color:var(--text-secondary);font-size:.82rem}.budget-discipline-footer .btn{min-width:126px}.budget-inbox-list{gap:12px;display:grid}.budget-inbox-list button{text-align:left;justify-content:space-between;align-items:center;width:100%;padding:18px;display:flex}.budget-inbox-list button span{gap:5px;display:grid}.budget-inbox-list b{background:var(--accent-subtle);color:var(--accent);border-radius:999px;padding:5px 9px}.budget-round-control{gap:14px;padding:20px;display:grid}.budget-round-control>header,.budget-approval>header,.budget-report>header{justify-content:space-between;align-items:center;display:flex}.budget-round-control h2,.budget-approval h2,.budget-report h2{margin:3px 0}.budget-round-state,.budget-approval>header>strong,.budget-report>header>strong{border-radius:999px;padding:6px 10px}.budget-round-state.draft,.budget-approval.pending>header>strong,.budget-report .is-blocked{background:var(--status-warn-bg);color:var(--status-warn)}.budget-round-state.issued{background:var(--accent-subtle);color:var(--accent)}.budget-round-action{align-items:center;gap:12px;display:flex}.budget-round-action label{flex:1;gap:5px;display:grid}.budget-round-action textarea{min-height:70px}.budget-round-history{border-top:1px solid var(--border-color);gap:8px;padding-top:14px;display:grid}.budget-round-history h3{margin:0}.budget-round-history article{background:var(--bg-subtle);border-radius:8px;justify-content:space-between;gap:16px;padding:12px;display:flex}.budget-round-history article div{gap:4px;display:grid}.budget-round-history article div:last-child{text-align:right}.budget-round-history small{color:var(--text-secondary)}.budget-approval{box-shadow:inset 4px 0 var(--status-warn);gap:14px;padding:20px;display:grid}.budget-approval.approved{box-shadow:inset 4px 0 var(--status-done)}.budget-approval.approved>header>strong,.budget-report .is-ready{background:var(--status-done-bg);color:var(--status-done)}.budget-approval.revision_required{box-shadow:inset 4px 0 var(--status-danger)}.budget-approval.revision_required>header>strong{background:var(--status-danger-bg);color:var(--status-danger)}.budget-baseline-total{font-size:1.8rem;font-weight:700}.budget-review-form{grid-template-columns:minmax(180px,.5fr) minmax(300px,1fr) auto;align-items:end;gap:12px;display:grid}.budget-review-form label{gap:5px;display:grid}.budget-review-form textarea{min-height:78px}.budget-report{gap:16px;padding:20px;display:grid}.budget-report-kpis{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.budget-report-kpis div{background:var(--bg-subtle);border-radius:8px;gap:4px;padding:12px;display:grid}.budget-report blockquote{background:var(--accent-subtle);border-radius:8px;margin:0;padding:12px}.budget-report-changes{gap:12px;display:grid}.budget-variance-row{border:1px solid var(--border-color);border-radius:8px;padding:14px}.budget-variance-row>header{justify-content:space-between;display:flex}.budget-variance-row header div{gap:3px;display:grid}.budget-variance-row .is-increase{color:var(--status-danger)}.budget-variance-row .is-decrease{color:var(--status-done)}.budget-variance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.budget-variance-grid label{gap:5px;display:grid}.budget-variance-grid button{align-self:end}@media (width<=900px){.budget-summary,.budget-report-kpis{grid-template-columns:repeat(2,1fr)}.budget-review-form,.budget-variance-grid{grid-template-columns:1fr}.budget-round-action{flex-direction:column;align-items:stretch}.budget-page{padding:12px}}.variation-page{max-width:1200px;margin:0 auto;padding:24px}.variation-page-header{justify-content:space-between;gap:24px;margin-bottom:24px;display:flex}.variation-page-header h1{margin:6px 0}.variation-workspace{gap:18px;display:grid}.variation-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.variation-summary>div,.variation-card,.variation-form,.variation-empty{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px}.variation-summary span{color:var(--text-muted);font-size:12px;display:block}.variation-summary strong{font-size:20px}.variation-form{gap:12px;display:grid}.variation-form label,.variation-review label{gap:6px;display:grid}.variation-form input,.variation-form select,.variation-form textarea,.variation-review input,.variation-review select,.variation-review textarea,.variation-upload input{box-sizing:border-box;width:100%}.variation-form small{color:var(--status-danger)}.variation-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.variation-list{gap:14px;display:grid}.variation-card header{justify-content:space-between;gap:18px;display:flex}.variation-card header h2{margin:4px 0}.variation-card header p{color:var(--text-muted);margin:0}.variation-card header strong{background:var(--bg-elevated);border-radius:999px;height:max-content;padding:5px 9px}.variation-card header strong[data-status=APPROVED]{color:var(--status-done)}.variation-card header strong[data-status=REJECTED]{color:var(--status-danger)}.variation-card header strong[data-status=UNDER_REVIEW],.variation-card header strong[data-status=REVISION_REQUIRED]{color:var(--status-warn)}.variation-money{gap:24px;margin:14px 0;font-weight:600;display:flex}.variation-card dl{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.variation-card dl div{background:var(--bg-elevated);border-radius:8px;padding:8px}.variation-card dt{color:var(--text-muted);font-size:11px}.variation-card dd{margin:3px 0 0}.variation-evidence{margin-top:12px}.variation-evidence p{color:var(--text-muted)}.variation-upload{grid-template-columns:2fr 2fr auto;gap:8px;display:grid}.variation-actions,.variation-review{flex-wrap:wrap;align-items:end;gap:8px;margin-top:12px;display:flex}.variation-review{background:var(--bg-elevated);border-radius:8px;width:100%;padding:12px}.variation-decision{background:var(--bg-elevated);border-radius:8px;padding:10px}.link-button{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0}@media (width<=760px){.variation-summary,.variation-grid,.variation-card dl{grid-template-columns:1fr 1fr}.variation-upload{grid-template-columns:1fr}.variation-page-header{display:block}}@media (width<=520px){.variation-summary,.variation-grid,.variation-card dl{grid-template-columns:1fr}.variation-money{gap:6px;display:grid}}.commercial-flow-page{max-width:1100px}.commercial-page-header{align-items:flex-start}.commercial-page-header>div{gap:4px;display:grid}.commercial-page-header>strong,.payment-header-total{border:1px solid var(--border);background:var(--bg-card);border-radius:10px;padding:12px 16px}.commercial-flow{gap:18px;display:grid}.variation-workspace-toolbar{justify-content:space-between;align-items:center;gap:18px;padding:14px 0;display:flex}.variation-workspace-toolbar h2{margin:0 0 4px}.variation-workspace-toolbar p{color:var(--text-muted);margin:0}.variation-work-group{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;overflow:hidden}.variation-work-group>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:14px 16px;display:flex}.variation-work-group>header h2{margin:3px 0;font-size:17px}.variation-work-group>header small,.variation-work-group>header span{color:var(--text-muted)}.variation-group-totals{text-align:right;gap:22px;display:flex}.variation-group-totals span{gap:3px;display:grid}.variation-group-totals strong{color:var(--text-primary)}.variation-table-wrap,.payment-table-wrap{overflow-x:auto}.variation-table,.payment-table{border-collapse:collapse;width:100%}.variation-table th,.variation-table td,.payment-table th,.payment-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 12px}.variation-table th,.payment-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--bg-elevated);font-size:11px}.variation-table td:first-child{min-width:180px}.variation-table td:first-child span{margin-top:3px;display:block}.variation-table td:nth-child(2){min-width:280px;color:var(--text-muted)}.variation-table td strong[data-status]{white-space:nowrap}.variation-item-action-list{padding:4px 14px 10px;display:grid}.variation-item-details{border-bottom:1px solid var(--border)}.variation-item-details:last-child{border-bottom:0}.variation-item-details>summary{cursor:pointer;color:var(--text-muted);padding:10px 0}.variation-item-details>dl{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px;display:grid}.variation-item-details>dl div{background:var(--bg-elevated);border-radius:8px;padding:8px}.variation-item-details dt{color:var(--text-muted);font-size:11px}.variation-item-details dd{margin:3px 0 0}.variation-form-actions,.closeout-actions,.payment-schedule-actions{flex-wrap:wrap;gap:8px;display:flex}.closeout-overview{margin-bottom:14px;padding:16px}.closeout-overview>div{gap:4px;display:grid}.closeout-overview span{color:var(--text-muted);text-transform:uppercase;font-size:12px}.closeout-overview p{color:var(--text-muted);margin:8px 0 0}.closeout-flow,.payment-flow{gap:10px;display:grid}.closeout-stage,.payment-step{border:1px solid var(--border);background:var(--bg-card);border-radius:12px;overflow:hidden}.closeout-stage>summary,.payment-step>summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 16px;list-style:none;display:grid}.closeout-stage>summary::-webkit-details-marker{display:none}.payment-step>summary::-webkit-details-marker{display:none}.closeout-stage>summary:after,.payment-step>summary:after{content:"+";color:var(--text-muted);grid-column:4;font-size:20px}.closeout-stage[open]>summary:after,.payment-step[open]>summary:after{content:"−"}.closeout-stage>summary>div,.payment-step>summary>div{gap:3px;display:grid}.closeout-stage>summary small,.payment-step>summary small{color:var(--text-muted)}.closeout-stage-number,.payment-step-number{background:var(--bg-elevated);width:34px;height:34px;color:var(--accent);border-radius:9px;place-items:center;font-weight:700;display:grid}.closeout-stage-status,.payment-step-badge{background:var(--bg-elevated);white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:700}.closeout-stage-status[data-status=CONFIRMED],.closeout-stage-status[data-status=SEALED]{color:var(--status-done)}.closeout-stage-body,.payment-step-body{border-top:1px solid var(--border);background:var(--bg-page);padding:16px}.closeout-stage-body>.variation-workspace,.payment-step-body>.variation-workspace{gap:12px}.closeout-stage-body>.variation-workspace>h2,.payment-step-body>.variation-workspace>h2{font-size:16px}.closeout-form{gap:12px;display:grid}.closeout-form label{gap:6px;display:grid}.closeout-form input,.closeout-form textarea{width:100%}.payment-commitment-selector{margin-bottom:14px;padding:14px 16px}.payment-commitment-selector label{grid-template-columns:220px 1fr;align-items:center;gap:12px;display:grid}.payment-header-total{gap:3px;display:grid}.payment-header-total span{color:var(--text-muted);font-size:12px}.payment-schedule-editor{gap:14px;display:grid}.payment-schedule-toolbar{justify-content:space-between;align-items:end;gap:16px;display:flex}.payment-schedule-toolbar label{gap:6px;display:grid}.payment-schedule-toolbar>div{text-align:right;display:grid}.payment-schedule-toolbar span{color:var(--text-muted);font-size:12px}.payment-table input,.payment-table textarea{width:100%;min-width:110px}.payment-table textarea{resize:vertical;min-width:220px}.payment-table .payment-number-input{width:82px;min-width:72px}.payment-table td:last-child{white-space:nowrap;width:1%}.payment-flow .variation-workspace{gap:12px}.payment-flow .variation-card{border-radius:9px}.payment-flow .variation-card label{gap:6px;display:grid}@media (width<=760px){.variation-workspace-toolbar,.variation-work-group>header,.payment-schedule-toolbar{flex-direction:column;align-items:stretch}.variation-group-totals{text-align:left;justify-content:space-between}.closeout-stage>summary,.payment-step>summary{grid-template-columns:auto minmax(0,1fr)}.closeout-stage-status,.payment-step-badge{grid-column:2}.closeout-stage>summary:after,.payment-step>summary:after{grid-area:1/3}.payment-commitment-selector label,.variation-item-details>dl{grid-template-columns:1fr}.commercial-page-header>strong,.payment-header-total{margin-top:12px}}.commercial-page-header a{color:var(--accent);font-weight:650}.commercial-page-header a:hover{color:var(--accent-hover)}.payment-editor-table{table-layout:fixed}.payment-editor-table th:first-child,.payment-editor-table th:nth-child(2){width:17%}.payment-editor-table th:nth-child(3){width:13%}.payment-editor-table th:nth-child(4){width:17%}.payment-editor-table th:nth-child(5){width:26%}.payment-editor-table th:nth-child(6){width:10%}.payment-editor-table input,.payment-editor-table textarea,.payment-editor-table textarea{min-width:0}.payment-editor-table .btn{width:100%;padding-left:8px;padding-right:8px}.cost-package-financials{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;gap:14px;margin-bottom:24px;padding:18px;display:grid}.cost-package-financials>header{justify-content:space-between;gap:16px;display:flex}.cost-package-financials h2{margin:4px 0}.cost-package-financials p{color:var(--text-muted);margin:0}.financial-warning{background:var(--status-warn-bg);color:var(--status-warn);border-radius:8px;padding:10px 12px}.financial-table-wrap{overflow-x:auto}.financial-table{border-collapse:collapse;width:100%;min-width:1080px;font-size:12px}.financial-table th,.financial-table td{border-bottom:1px solid var(--border);text-align:right;vertical-align:top;padding:9px 8px}.financial-table th:first-child,.financial-table td:first-child,.financial-table th:nth-child(2),.financial-table td:nth-child(2),.financial-table th:nth-child(9),.financial-table td:nth-child(9){text-align:left}.financial-table td span,.financial-table td small{display:block}.financial-table td small{color:var(--text-muted);margin-top:3px}.financial-table tfoot th{border-bottom:0;padding-top:12px}.financial-actions{gap:6px;display:grid}.financial-actions .btn{white-space:nowrap;padding:6px 8px;font-size:11px}.commercial-review{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;gap:12px;margin-bottom:18px;padding:16px;display:grid}.commercial-review header{justify-content:space-between;gap:16px;display:flex}.commercial-review header h2{margin:4px 0}.commercial-review label{gap:6px;display:grid}.commercial-review textarea{box-sizing:border-box;width:100%}.commercial-review-buckets{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.commercial-review-buckets div{background:var(--bg-elevated);text-align:center;border-radius:8px;padding:9px}.commercial-review-buckets span{color:var(--text-muted);font-size:10px;display:block}@media (width<=760px){.commercial-review-buckets{grid-template-columns:repeat(2,1fr)}}.variation-exposure{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;gap:14px;margin-bottom:18px;padding:16px;display:grid}.variation-exposure header{justify-content:space-between;gap:16px;display:flex}.variation-exposure header h2{margin:4px 0}.variation-exposure-flow{grid-template-columns:repeat(5,minmax(125px,1fr) auto) minmax(150px,1.2fr);align-items:stretch;gap:8px;display:grid;overflow-x:auto}.variation-exposure-flow>div{background:var(--bg-elevated);border-radius:8px;align-content:center;gap:7px;min-height:64px;padding:12px;display:grid}.variation-exposure-flow>b{align-self:center}.variation-exposure-flow [data-kind=committed]{border:1px solid var(--field-success-fg)}.variation-exposure-flow [data-kind=pending]{border:1px dashed var(--field-warning-fg)}.variation-exposure-flow [data-kind=potential]{border:1px solid var(--field-warning-fg)}.variation-exposure-flow span,.variation-exposure-rule{color:var(--text-muted);font-size:12px}.variation-exposure-alert{background:var(--field-warning-bg);color:var(--field-warning-fg);border-radius:8px;padding:10px}.variation-exposure-breakdown{gap:6px;margin-top:10px;display:grid}.variation-exposure-breakdown>div{background:var(--bg-elevated);border-radius:6px;justify-content:space-between;gap:14px;padding:8px;display:flex}@media (width<=900px){.variation-exposure-flow{grid-template-columns:1fr}.variation-exposure-flow>b{display:none}.variation-exposure-breakdown>div{display:grid}}.commercial-health-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:8px;display:grid}.commercial-health-grid>div{background:var(--bg-elevated);border-radius:8px;gap:6px;padding:10px;display:grid}.commercial-health-grid span{color:var(--text-muted);font-size:12px}.commercial-health [data-signal=WITHIN_BUDGET]{color:var(--field-success-fg)}.commercial-health [data-signal=ATTENTION],.commercial-health [data-signal=AT_RISK]{color:var(--field-warning-fg)}.commercial-health [data-signal=SIGNIFICANT_VARIANCE]{color:var(--field-danger-fg)}.commercial-foundation-page{max-width:1180px;margin:0 auto;padding:20px}.commercial-foundation-workspace{gap:14px;display:grid}.commercial-foundation-list,.commercial-foundation-editor{padding:18px}.commercial-foundation-list>header,.commercial-foundation-editor>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.commercial-foundation-list h2,.commercial-foundation-editor h2{margin:2px 0 4px}.commercial-foundation-list p,.commercial-foundation-editor p{color:var(--text-muted);margin:0}.commercial-foundation-table-wrap{margin-top:14px;overflow:auto}.commercial-foundation-table-wrap table{border-collapse:collapse;width:100%}.commercial-foundation-table-wrap th,.commercial-foundation-table-wrap td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:9px 10px}.commercial-foundation-table-wrap td strong,.commercial-foundation-table-wrap td span{display:block}.commercial-foundation-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.commercial-foundation-form-grid label{gap:5px;display:grid}.commercial-foundation-wide{grid-column:1/-1}.commercial-foundation-wide textarea{min-height:72px}.commercial-foundation-scope{margin-top:16px}.commercial-foundation-scope details{border-top:1px solid var(--border);padding:8px 0}.commercial-foundation-scope summary{cursor:pointer;font-weight:650}.commercial-foundation-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;padding:8px 0;display:grid}.commercial-foundation-check-grid label,.commercial-foundation-notify{align-items:flex-start;gap:8px;display:flex}.commercial-foundation-editor footer{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.commercial-foundation-validation{color:var(--status-warn)!important;margin-top:12px!important}.commercial-foundation-empty{padding:16px 0}.status-badge{display:inline-block!important}@media (width<=720px){.commercial-foundation-form-grid,.commercial-foundation-check-grid{grid-template-columns:1fr}.commercial-foundation-list>header,.commercial-foundation-editor>header{flex-direction:column;align-items:stretch}}.commercial-foundation-member-picker{max-width:560px;margin-top:16px}.commercial-foundation-member-picker label{gap:5px;display:grid}.commercial-foundation-team-note{border-top:1px solid var(--border);padding-top:12px;margin-top:12px!important}.project-team-page{max-width:1180px}.project-team-list{padding:0;overflow:hidden}.project-team-list>header{border-bottom:1px solid var(--border);align-items:center;padding:18px 20px}.project-team-list>header>div>span{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:700}.project-team-table-wrap{margin:0}.project-team-table{min-width:940px}.project-team-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--bg-elevated);font-size:11px}.project-team-table th,.project-team-table td{padding:10px 14px}.project-team-person{align-items:center;gap:10px;display:flex!important}.project-team-avatar{background:var(--accent-subtle);width:30px;height:30px;color:var(--accent);border-radius:50%;flex:0 0 30px;justify-content:center;align-items:center;font-size:11px;font-weight:750;display:inline-flex!important}.project-team-role,.project-team-access,.project-team-department-badge{background:var(--bg-elevated);width:max-content;color:var(--text-body);border-radius:999px;align-items:center;padding:3px 8px;font-size:12px;font-weight:650;display:inline-flex!important}.project-team-department-badge{background:var(--accent-subtle);color:var(--accent)}.project-team-access{background:var(--status-done-bg);color:var(--status-done)}.project-team-actions{justify-content:flex-end;gap:6px;display:flex;text-align:right!important}.project-team-list>.commercial-foundation-empty,.project-team-list>.commercial-foundation-team-note{padding:28px 20px;margin:0!important}.project-team-list>.commercial-foundation-team-note{padding:12px 20px}.project-team-modal{width:min(680px,92vw)}.project-team-modal .modal-header{align-items:flex-start}.project-team-modal .modal-header h2{margin:0 0 3px;font-size:18px}.project-team-modal .modal-header p{color:var(--text-muted);margin:0;font-size:13px}.project-team-modal-body{gap:14px;padding:18px 20px;display:grid}.project-team-search,.project-team-department{color:var(--text-muted);gap:6px;font-size:12px;font-weight:650;display:grid}.project-team-department small{font-weight:400;line-height:1.4}.project-team-candidates{gap:6px;max-height:330px;display:grid;overflow:auto}.project-team-candidate{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.project-team-candidate:hover{background:var(--bg-elevated)}.project-team-candidate.is-selected{border-color:var(--accent);background:var(--accent-subtle)}.project-team-candidate-person{gap:1px;display:grid}.project-team-candidate-person small{color:var(--text-muted)}.project-team-selected-colleague{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.project-team-selected-colleague>span:nth-child(2){gap:2px;display:grid}.project-team-selected-colleague small{color:var(--text-muted)}.project-team-modal-footer{border-top:1px solid var(--border);background:var(--bg-elevated);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}@media (width<=720px){.project-team-list>header{align-items:stretch}.project-team-candidate{grid-template-columns:auto auto minmax(0,1fr)}.project-team-candidate>.project-team-role{grid-column:3}.project-team-modal-body{padding:14px}.project-team-modal-footer{padding:12px 14px}}.procurement-strategy{padding:0;overflow:hidden}.procurement-strategy>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:24px;padding:20px 22px;display:flex}.procurement-strategy>header>div:first-child>span{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:11px;font-weight:750}.procurement-strategy h2{margin:3px 0 4px}.procurement-strategy header p{max-width:720px;color:var(--text-muted);margin:0}.procurement-strategy-summary{white-space:nowrap;justify-items:end;display:grid}.procurement-strategy-summary strong{font-size:22px}.procurement-strategy-summary span{color:var(--text-muted);font-size:12px}.procurement-strategy-columns,.procurement-strategy-main{grid-template-columns:minmax(320px,1.3fr) minmax(260px,.8fr) minmax(180px,.7fr);align-items:center;gap:18px;display:grid}.procurement-strategy-columns{background:var(--bg-elevated);border-bottom:1px solid var(--border);letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted);padding:8px 22px;font-size:10px;font-weight:750}.procurement-strategy-row{border-bottom:1px solid var(--border)}.procurement-strategy-main{padding:10px 22px}.procurement-strategy-toggle{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.procurement-strategy-toggle>span:last-child{gap:2px;display:grid}.procurement-strategy-toggle strong{font-size:14px}.procurement-strategy-toggle small{color:var(--text-muted)}.procurement-strategy-chevron{color:var(--text-muted);font-size:24px;line-height:1;transition:transform .15s}.procurement-strategy-row.is-expanded .procurement-strategy-chevron{transform:rotate(90deg)}.procurement-strategy-route{gap:4px;display:grid}.procurement-strategy-route>span{display:none}.procurement-strategy-route .ds-input{height:36px;padding:5px 9px}.procurement-strategy-status{background:var(--status-done-bg);width:max-content;max-width:100%;color:var(--status-done);border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.procurement-strategy-status.is-pending{background:var(--bg-elevated);color:var(--text-muted)}.procurement-strategy-scope{background:var(--bg-elevated);padding:4px 22px 16px 54px}.procurement-strategy-scope>p{color:var(--text-muted);margin:0 0 10px;font-size:12px}.procurement-strategy-scope>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.procurement-strategy-scope section{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);overflow:hidden}.procurement-strategy-scope section>header{border-bottom:1px solid var(--border);grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.procurement-strategy-scope section>header small{color:var(--text-muted)}.procurement-strategy-scope ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:5px 10px 8px;list-style:none;display:grid}.procurement-strategy-scope li{color:var(--text-muted);grid-template-columns:72px minmax(0,1fr);gap:6px;padding:4px 0;font-size:11px;display:grid}.procurement-strategy-scope li strong{color:var(--text-body)}.procurement-strategy>footer{background:var(--bg-elevated);justify-content:space-between;align-items:center;gap:16px;padding:14px 22px;display:flex}.procurement-strategy>footer>div{gap:2px;display:grid}.procurement-strategy>footer span{color:var(--text-muted);font-size:12px}@media (width<=1100px){.procurement-strategy-columns{display:none}.procurement-strategy-main{grid-template-columns:1fr}.procurement-strategy-route>span{color:var(--text-muted);font-size:11px;display:block}.procurement-strategy-scope{padding-left:22px}.procurement-strategy-scope>div{grid-template-columns:1fr}.procurement-strategy-scope li span{overflow-wrap:anywhere;min-width:0}.procurement-strategy>footer,.procurement-strategy>header{flex-direction:column;align-items:stretch}.procurement-strategy-summary{justify-items:start}}@media (width<=640px){.procurement-strategy-scope ul{grid-template-columns:1fr}}.consultant-boq-page,.consultant-boq-inbox{max-width:1180px;margin:0 auto;padding:24px}.consultant-boq-workspace{gap:14px;margin-top:14px;display:grid}.consultant-boq-sticky{z-index:5;border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;justify-content:space-between;align-items:center;gap:24px;padding:16px 18px;display:flex;position:sticky;top:0}.consultant-boq-sticky h1,.consultant-boq-inbox h1{margin:2px 0}.consultant-boq-sticky p{color:var(--text-muted);margin:0}.consultant-boq-statuses{flex-wrap:wrap;gap:8px;display:flex}.consultant-boq-statuses span{background:var(--bg-base);border:1px solid var(--border);border-radius:999px;padding:5px 9px;font-size:12px}.consultant-boq-message{background:var(--status-warn-bg);color:var(--status-warn);border-radius:8px;padding:10px 12px}.consultant-boq-error{background:var(--status-error-bg);color:var(--status-error)}.consultant-boq-discipline{border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;overflow:hidden}.consultant-boq-discipline>summary{cursor:pointer;grid-template-columns:80px 1fr auto;align-items:center;gap:10px;padding:14px 16px;display:grid}.consultant-boq-discipline>summary small{color:var(--text-muted)}.consultant-boq-group{padding:0 16px 14px}.consultant-boq-group-heading{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:11px 0 7px;display:flex}.consultant-boq-group-heading div{gap:12px;display:flex}.consultant-boq-table-scroll{overflow-x:auto}.consultant-boq-table-scroll table{border-collapse:collapse;table-layout:fixed;width:100%}.consultant-boq-table-scroll th,.consultant-boq-table-scroll td{border-top:1px solid var(--border);text-align:left;padding:6px 8px}.consultant-boq-table-scroll th:nth-child(2),.consultant-boq-unit{width:110px}.consultant-boq-table-scroll th:nth-child(3),.consultant-boq-quantity{width:155px}.consultant-boq-table-scroll th:nth-child(4),.consultant-boq-line-action{width:100px}.consultant-boq-table-scroll input{box-sizing:border-box;width:100%;min-height:34px}.consultant-boq-custom{background:var(--accent-subtle)}.consultant-boq-actions{z-index:5;border:1px solid var(--border);background:var(--bg-elevated);border-radius:10px;justify-content:space-between;align-items:end;gap:16px;padding:12px 16px;display:flex;position:sticky;bottom:0}.consultant-boq-actions label{gap:4px;min-width:280px;display:grid}.consultant-boq-actions>div{flex-wrap:wrap;gap:8px;display:flex}.consultant-boq-assignment-list{gap:10px;margin-top:20px;display:grid}.consultant-boq-assignment{border:1px solid var(--border);background:var(--bg-elevated);color:inherit;border-radius:10px;justify-content:space-between;gap:16px;padding:16px;text-decoration:none;display:flex}.consultant-boq-assignment div{gap:5px;display:grid}.consultant-boq-assignment span,.consultant-boq-assignment small{color:var(--text-muted)}@media (width<=720px){.consultant-boq-sticky,.consultant-boq-actions{flex-direction:column;align-items:stretch;position:static}.consultant-boq-discipline>summary{grid-template-columns:70px 1fr}.consultant-boq-discipline>summary small{display:none}.consultant-boq-actions label{min-width:0}}
