@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/inter-latin-300-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-400-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-latin-500-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-latin-600-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-latin-700-normal.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/inter-latin-800-normal.woff2)format("woff2")}:root{--snapper-nav:#1b3a34;--snapper-nav-hover:#254d45;--snapper-nav-mid:#2a5a50;--snapper-teal:#2a7c6f;--snapper-teal-mid:#3d9688;--snapper-teal-hover:var(--snapper-teal-mid);--snapper-teal-light:#e8f5f3;--snapper-teal-border:#2a7c6f40;--snapper-bg:#f5f6f5;--snapper-surface:#fff;--snapper-surface-2:#f0f2f1;--snapper-bg-subtle:var(--snapper-surface-2);--snapper-border:#e2e6e4;--snapper-border-mid:#cdd4d1;--snapper-text:#1a2622;--snapper-text-soft:#4a5e58;--snapper-text-subtle:#5d726c;--snapper-text-muted:#8fa49e;--surface-hover:#fafbfa;--surface-hover-warm:#f8fbfa;--surface-hover-cool:#fafcfb;--surface-sunken:#f8faf9;--surface-panel:#f4f7f6;--surface-panel-hover:#ecf0ee;--surface-option-hover:#f4f6f5;--surface-selected:#eef6f4;--surface-selected-hover:#d4ede9;--surface-selected-alt:#f0f7f5;--surface-row-alt:#eef2f0;--page-body-bg:#f2f5f4;--border-soft:#dde3e1;--border-block:#dde5e2;--border-dept:#e4eceb;--border-item:#e8eeec;--border-row:#e8edeb;--border-inner:#edf1ef;--border-divider:#f0f4f2;--border-kpi:#e4eae8;--border-open:#c8d8d4;--border-open-goal:#c4d4cf;--border-open-dept:#cfdbd8;--border-dashed-add:#b8d0cb;--neutral-mid:#b0bfbb;--neutral-teal-mid:#b0c4be;--text-dim:#6b8278;--prio-kritisk-accent:#e53e3e;--prio-hoy-accent:#dd6b20;--prio-medium-accent:#3182ce;--prio-lav-accent:#38a169;--prio-kritisk-solid:#dc2626;--prio-hoy-solid:#d97706;--prio-medium-solid:#2563eb;--prio-lav-solid:#16a34a;--prio-kritisk-dot:var(--prio-kritisk-solid);--prio-hoy-dot:#f59e0b;--prio-medium-dot:#3b82f6;--prio-lav-dot:#22c55e;--prio-kritisk-chip-bg:#fef2f2;--prio-kritisk-chip-border:#fca5a5;--prio-hoy-chip-bg:#fffbeb;--prio-hoy-chip-border:#fcd34d;--prio-medium-chip-bg:#eff6ff;--prio-medium-chip-border:#93c5fd;--prio-lav-chip-bg:#f0fdf4;--prio-lav-chip-border:#86efac;--prio-kritisk-tint:#fbb;--prio-hoy-tint:#fcd;--prio-medium-tint:#bee3f8;--prio-lav-tint:#c6f6d5;--priority-kritisk:var(--prio-kritisk-accent);--priority-hoy:var(--prio-hoy-accent);--priority-medium:var(--prio-medium-accent);--priority-lav:var(--prio-lav-accent);--priority-none:#a0aec0;--criticality-kritisk:var(--priority-kritisk);--criticality-hoy:var(--priority-hoy);--criticality-medium:var(--priority-medium);--criticality-lav:var(--priority-lav);--status-danger:#d94040;--status-danger-bg:#fdf0f0;--status-warn:#d97706;--status-warn-bg:#fffbeb;--status-ok:var(--snapper-teal);--status-ok-bg:var(--snapper-teal-light);--danger:var(--status-danger);--status-danger-fg:#8c2020;--deliver-pdf-accent:var(--status-danger);--status-danger-strong:#c23636;--deliver-pdf-fg:var(--status-danger-strong);--deliver-pdf-bg:var(--status-danger-bg);--deliver-pdf-tint:#fdf7f7;--deliver-docx-accent:#2b579a;--deliver-docx-bg:#e9f0f9;--deliver-docx-tint:#f6f8fc;--status-warn-fg:#8a4b12;--status-ok-fg:#1f6b45;--status-info-bg:#e6f0fa;--status-info-fg:#1f4e79;--status-success-bg:var(--status-ok-bg);--status-success-fg:var(--status-ok-fg);--status-warning-bg:var(--status-warn-bg);--status-warning-fg:var(--status-warn-fg);--impact-red:var(--prio-kritisk-solid);--impact-amber:#b45309;--impact-green:var(--snapper-teal);--kpi-amber:var(--prio-hoy-dot);--kpi-red:var(--prio-kritisk-accent);--kpi-teal:var(--snapper-teal);--kpi-blue:var(--prio-medium-dot);--kpi-amber-badge-fg:#b45309;--kpi-red-badge-bg:#fff5f5;--kpi-red-badge-fg:#c53030;--skill-tag-bg:var(--surface-selected);--skill-tag-border:#d4e4e0;--skill-tag-fg:#2a6b5e;--skill-tag-remove-bg:#fee2e2;--gen-chip-border:#c4ddd8;--gen-chip-fg:#1b6b5e;--gen-row-processing-border:#2a7c6f80;--info-box-fg:#92400e;--info-box-blue-bg:#eef4f8;--info-box-blue-border:#c8dce8;--info-check:#4fd1b8;--info-panel-bg:#f0faf8;--info-panel-border:#b8e4de;--file-badge-bg:#fde8e8;--file-badge-fg:var(--status-danger-strong);--avatar-amber-bg:#fef3c7;--badge-blue-border:#bfdbfe;--dept-name-text:#2a4a43;--gap-bar-ok:#6ee7b7;--risk-band-kritisk:var(--prio-kritisk-solid);--risk-band-hoy:var(--risk-band-kritisk);--risk-band-medium:var(--prio-hoy-dot);--risk-band-lav:var(--prio-lav-dot);--risk-ink-kritisk:var(--snapper-surface);--risk-ink-hoy:var(--risk-ink-kritisk);--risk-ink-medium:var(--bubble-text);--risk-ink-lav:var(--bubble-text);--quadrant-cream:#fbf5e6;--quadrant-pink:#f8e9ec;--quadrant-mint:#edf4ee;--quadrant-line:#dcd6cc;--bubble-ring:var(--snapper-surface);--field-line:color-mix(in srgb, var(--snapper-surface) 35%, transparent);--field-axis-text:color-mix(in srgb, var(--snapper-text) 55%, transparent);--ring-track:#f3f4f6;--ring-track-warm:#f5f0e8;--progress-track:#dce6e3;--progress-teal:#3db89e;--heat-yellow:#fef08a;--bubble-text:#000000bf;--nav-icon:#ffffffb3;--nav-link-text:#fffc;--nav-user-text:#ffffffd9;--nav-search-bg:#ffffff1a;--nav-search-border:#ffffff26;--nav-search-placeholder:#ffffff73;--hero-text:#ffffffb3;--hero-stat-label:#ffffff80;--hero-tile-label:#fff9;--hero-chip-bg:#ffffff1f;--glow-teal:var(--snapper-teal);--login-shell:#e5e8e6;--login-panel-from:#f0f4ea;--login-panel-mid:#e4f0eb;--login-panel-to:#d5eae3;--login-hero-ground:#071410;--login-divider:#c4d8d2;--login-subtitle-text:#6b8078;--login-footer-text:#9ab0aa;--login-icon-stroke:#9ab8b2;--login-avatar-warm:#c8a882;--login-avatar-deep:#b08060;--brand-button-bg:#fff;--brand-button-bg-hover:#f2f2f2;--brand-button-border:#747775;--brand-button-text:#1f1f1f;--brand-microsoft-red:#f25022;--brand-microsoft-green:#7fba00;--brand-microsoft-blue:#00a4ef;--brand-microsoft-yellow:#ffb900;--brand-google-red:#ea4335;--brand-google-blue:#4285f4;--brand-google-yellow:#fbbc05;--brand-google-green:#34a853;--pulse-red-strong:#dc262666;--pulse-red-soft:#dc262640;--pulse-red-clear:#dc262600;--pulse-orange-strong:#ea580c4d;--pulse-orange-soft:#ea580c26;--pulse-orange-clear:#ea580c00;--duration-hover:.1s;--duration-control:.12s;--duration-modal:.15s;--duration-lift:.18s;--duration-chevron:.2s;--duration-row:.3s;--duration-progress:.4s;--duration-bar:.5s;--duration-spin:.9s;--grad-login-panel:linear-gradient(160deg, var(--login-panel-from) 0%, var(--login-panel-mid) 55%, var(--login-panel-to) 100%);--grad-login-scrim:linear-gradient(150deg, #06120c2e 0%, #08161073 55%, #040c08cc 100%);--grad-login-overlay:linear-gradient(160deg, #1b3a34a6 0%, #0e201ce0 100%);--grad-hero:linear-gradient(135deg, var(--snapper-nav) 0%, var(--snapper-nav-mid) 100%);--grad-hero-sheen:radial-gradient(circle at 80% 50%, white 0%, transparent 60%);--grad-orb:linear-gradient(135deg, var(--snapper-nav), var(--snapper-teal));--grad-progress:linear-gradient(90deg, var(--snapper-teal), var(--progress-teal));--grad-heat:linear-gradient(to right, var(--prio-lav-dot) 0%, var(--prio-lav-chip-border) 15%, var(--heat-yellow) 40%, var(--prio-kritisk-chip-border) 60%, var(--prio-kritisk-solid) 85%);--grad-heat-depth:linear-gradient(to bottom, #0000002e 0%, #0000 50%, #ffffff38 100%);--grad-heat-muted:linear-gradient(to right, #22c55e2e, #fef08a59, #dc262638);--grad-scanline:linear-gradient(90deg, transparent, #2a7c6f0f, transparent);--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 4px #00000012, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014, 0 2px 4px #0000000a;--shadow-lg:0 16px 48px #0000001a, 0 4px 12px #0000000f;--shadow-card-open:0 2px 12px #00000012;--shadow-block-open:0 4px 20px #00000017;--shadow-menu:0 8px 24px #0000001f;--shadow-kpi-hover:0 6px 24px #1b3a3414;--shadow-float:0 8px 30px #00000040;--shadow-login-btn:0 3px 12px #0003;--ring-focus:0 0 0 2px var(--snapper-teal-border);--ring-open:0 0 0 3px #2a7c6f1f;--ring-processing:0 0 0 3px #2a7c6f14;--overlay:#00000059;--nav-height:52px;--radius:8px;--radius-sm:5px;--radius-lg:12px;--radius-xl:18px;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--background:var(--snapper-bg);--foreground:var(--snapper-text);--card:var(--snapper-surface);--card-foreground:var(--snapper-text);--primary:var(--snapper-teal);--primary-foreground:var(--snapper-surface);--secondary:var(--snapper-teal-light);--secondary-foreground:var(--snapper-teal);--border:var(--snapper-border);--input:var(--snapper-border-mid);--ring:var(--snapper-teal);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{font-family:var(--font-sans);color:var(--snapper-text);background:var(--snapper-bg);margin:0;font-size:14px;line-height:1.5}#root{flex-direction:column;min-height:100dvh;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation:none!important}.spinner{animation:spinner-spin var(--duration-spin) linear infinite!important}}.snapper-nav{height:var(--nav-height);background:var(--snapper-nav);align-items:center;gap:0;padding:0 20px;display:flex}.snapper-nav__logo{color:var(--primary-foreground);font-size:17px;font-weight:var(--font-weight-bold);letter-spacing:-.3px;cursor:pointer;margin-right:32px;text-decoration:none}.snapper-nav__links{flex:1;align-items:center;gap:2px;display:flex}.snapper-nav__item{border-radius:var(--radius-sm);color:var(--nav-link-text);font-size:13.5px;font-weight:var(--font-weight-medium);white-space:nowrap;padding:6px 12px;text-decoration:none}.snapper-nav__item--active{color:var(--primary-foreground);font-weight:var(--font-weight-semibold)}.snapper-nav__link{cursor:pointer;transition:background var(--duration-control) ease, color var(--duration-control) ease}.snapper-nav__link:hover{background:var(--snapper-nav-hover);color:var(--primary-foreground)}.snapper-nav__admin-link{border-radius:var(--radius-sm);color:var(--nav-link-text);font-size:13.5px;font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;transition:background var(--duration-control) ease, color var(--duration-control) ease;padding:6px 12px;text-decoration:none}.snapper-nav__admin-link:hover{background:var(--snapper-nav-hover);color:var(--primary-foreground)}.snapper-nav__right{align-items:center;gap:8px;margin-left:auto;display:flex}.snapper-nav__account{align-items:center;gap:8px;text-decoration:none;display:flex}.snapper-nav__avatar{background:var(--snapper-teal);width:30px;height:30px;color:var(--primary-foreground);font-size:12px;font-weight:var(--font-weight-semibold);letter-spacing:-.3px;border-radius:50%;justify-content:center;align-items:center;display:flex}.snapper-nav__user-name{color:var(--nav-user-text);font-size:13px;font-weight:var(--font-weight-medium);white-space:nowrap;margin-left:2px;text-decoration:none}.customer-badge{background:var(--snapper-teal-light);height:22px;color:var(--snapper-nav-mid);font-size:11.5px;font-weight:var(--font-weight-semibold);white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;display:inline-flex}.customer-badge__contact{color:inherit;text-decoration:underline}.snapper-nav__signout{border:1px solid var(--nav-search-border);border-radius:var(--radius-sm);background:var(--nav-search-bg);color:var(--primary-foreground);font-family:var(--font-sans);font-size:13px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--duration-control) ease;padding:6px 14px}.snapper-nav__signout:hover{background:var(--snapper-nav-hover)}[data-inert=true]{cursor:default;-webkit-user-select:none;user-select:none}.wizard-stepper{z-index:90;background:var(--snapper-surface);border-bottom:1px solid var(--snapper-border);position:sticky;top:0}.wizard-stepper__track{align-items:center;max-width:860px;height:52px;margin:0 auto;padding:0 2rem;display:flex}.wizard-stepper__steps{align-items:center;min-width:0;display:flex}.wizard-stepper__back{border:1px solid var(--snapper-border);width:32px;height:32px;color:var(--snapper-text-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-right:8px;font-size:16px;text-decoration:none;display:inline-flex}.wizard-stepper__back:hover{border-color:var(--snapper-teal-border);background:var(--snapper-teal-light);color:var(--snapper-teal)}.wizard-stepper__arrow{color:var(--snapper-border-mid);flex:none;align-items:center;margin:0 4px;display:inline-flex}.wizard-stepper__step{min-width:0;height:52px;color:var(--snapper-text-subtle);font-size:13px;font-weight:var(--font-weight-medium);white-space:nowrap;border-bottom:2.5px solid #0000;align-items:center;gap:.5rem;padding:0 12px;text-decoration:none;display:flex}.wizard-stepper__step[data-status=completed]{color:var(--snapper-text-soft)}.wizard-stepper__step[data-status=active]{border-bottom-color:var(--snapper-teal);color:var(--snapper-teal)}.wizard-stepper__badge{width:18px;height:18px;color:inherit;font-size:10px;font-weight:var(--font-weight-semibold);background:0 0;border:1.5px solid;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.wizard-stepper__step[data-status=completed] .wizard-stepper__badge{background:var(--snapper-teal);border-color:var(--snapper-teal);color:var(--primary-foreground)}.wizard-stepper__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.goal-hero{border-radius:var(--radius-lg);background:var(--grad-hero);color:var(--primary-foreground);flex-direction:column;gap:.75rem;padding:1.5rem 1.75rem;display:flex}.goal-hero__badge{background:var(--hero-chip-bg);font-size:11px;font-weight:var(--font-weight-semibold);letter-spacing:.04em;color:var(--nav-user-text);border-radius:20px;align-self:flex-start;align-items:center;gap:6px;padding:4px 12px;display:inline-flex}.goal-hero__title{font-size:18px;font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;margin:0}.goal-hero__intro{max-width:460px;color:var(--hero-text);margin:0;font-size:13px;line-height:1.6}.goal-hero__impact{flex-direction:column;gap:3px;display:flex}.goal-hero__impact-row{align-items:center;gap:8px;display:flex}.goal-hero__impact-meter{flex-direction:column;gap:2px;display:flex}.goal-hero__impact-label{font-size:10px;font-weight:var(--font-weight-bold);letter-spacing:.07em;text-transform:uppercase;color:var(--hero-stat-label)}.goal-hero__impact-value{letter-spacing:-.5px;font-size:22px;font-weight:900;line-height:1}.goal-hero__impact-bar{background:var(--nav-search-border);border-radius:99px;width:110px;height:5px;overflow:hidden}.goal-hero__impact-fill{background:var(--grad-progress);height:100%;transition:width var(--duration-bar) ease;border-radius:99px;display:block}.goal-hero__impact-detail{color:var(--hero-stat-label);font-size:10px}.banner-stats{flex-wrap:wrap;align-items:center;gap:20px;margin-top:6px;display:flex}.banner-stats__item{align-items:center;gap:7px;display:flex}.banner-stats__icon{background:var(--hero-chip-bg);width:28px;height:28px;color:var(--primary-foreground);border-radius:8px;justify-content:center;align-items:center;display:flex}.banner-stats__text{flex-direction:column;display:flex}.banner-stats__value{font-size:15px;font-weight:var(--font-weight-extrabold);line-height:1.2}.banner-stats__label{color:var(--hero-tile-label);font-size:10px}.banner-stats__divider{background:var(--nav-search-border);width:1px;height:32px;margin:0 4px}.goal-hero__cta{border:1px solid var(--nav-user-text);border-radius:var(--radius-sm);background:var(--snapper-surface);height:36px;color:var(--snapper-nav);font-family:var(--font-sans);font-size:13px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:opacity var(--duration-control);align-items:center;gap:6px;padding:0 16px;display:inline-flex;position:absolute;top:24px;right:28px}.goal-hero__cta:hover:not(:disabled,[aria-disabled=true]){opacity:.9}.goal-hero__cta:disabled,.goal-hero__cta[aria-disabled=true]{opacity:.6;cursor:not-allowed}.goal-list__toolbar{justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem 0;display:flex}.goal-list__heading{color:var(--snapper-nav);margin:0;font-size:1.25rem}.goal-list__note{color:var(--snapper-text-soft);margin:-.75rem 0 1rem;font-size:.875rem}.goal-list__toolbar-actions,.goal-list__add-actions{gap:.5rem;display:flex}.goal-list__primary,.goal-list__secondary{border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:.875rem;font-weight:var(--font-weight-semibold);cursor:pointer;padding:.5rem 1rem}.goal-list__primary{background:var(--snapper-teal);color:var(--primary-foreground);border:none}.goal-list__secondary{border:1px solid var(--snapper-border-mid);background:var(--snapper-surface);color:var(--snapper-text-soft)}.goal-list__add{border:1px dashed var(--border-dashed-add);border-radius:var(--radius);background:var(--surface-sunken);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding:1rem 1.25rem;display:flex}.goal-list__add-label{font-size:.875rem;font-weight:var(--font-weight-semibold);color:var(--snapper-teal)}.goal-card{background:var(--snapper-surface);border:1px solid var(--snapper-border);border-left:3px solid var(--priority-none);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-lift) ease, border-color var(--duration-lift) ease;flex-direction:column;gap:1rem;padding:1.25rem;display:flex;position:relative}.goal-card--prio-kritisk{border-left-color:var(--prio-kritisk-accent)}.goal-card--prio-hoy{border-left-color:var(--prio-hoy-accent)}.goal-card--prio-medium{border-left-color:var(--prio-medium-accent)}.goal-card--prio-lav{border-left-color:var(--prio-lav-accent)}.goal-card--prio-none{border-left-color:var(--snapper-teal)}.goal-card__number{background:var(--snapper-nav);width:24px;height:24px;color:var(--primary-foreground);font-size:11px;font-weight:var(--font-weight-bold);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.goal-card--prio-kritisk .goal-card__number,.goal-block--prio-kritisk .goal-card__number{background:var(--prio-kritisk-accent)}.goal-card--prio-hoy .goal-card__number,.goal-block--prio-hoy .goal-card__number{background:var(--prio-hoy-accent)}.goal-card--prio-medium .goal-card__number,.goal-block--prio-medium .goal-card__number{background:var(--prio-medium-accent)}.goal-card--prio-lav .goal-card__number,.goal-block--prio-lav .goal-card__number{background:var(--prio-lav-accent)}.card__actions{flex:none;gap:2px;display:flex}.card__icon-button{cursor:pointer;width:28px;height:28px;color:var(--snapper-text-muted);transition:background var(--duration-control) ease, color var(--duration-control) ease;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;display:flex}.card__icon-button:hover{background:var(--surface-selected);color:var(--snapper-teal)}.card__chevron{transition:transform var(--duration-control) ease}.card__chevron--open{transform:rotate(180deg)}.overflow-menu__list{border:1px solid var(--snapper-border);border-radius:var(--radius);background:var(--snapper-surface);min-width:10rem;box-shadow:var(--shadow-md);z-index:600;padding:.375rem}.overflow-menu__item{border-radius:var(--radius-sm);width:100%;color:var(--snapper-text-soft);font-family:var(--font-sans);font-size:.8125rem;font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:background var(--duration-control) ease, color var(--duration-control) ease;background:0 0;border:none;align-items:center;padding:.4375rem .625rem;display:flex}.overflow-menu__item:hover:not(:disabled,[aria-disabled=true]){background:var(--snapper-bg);color:var(--snapper-text)}.overflow-menu__item:disabled,.overflow-menu__item[aria-disabled=true]{color:var(--snapper-text-muted);cursor:not-allowed}.relevanse-label{font-size:.65625rem;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--snapper-text-subtle);align-items:center;gap:.5rem;display:flex}.relevanse-label:after{content:"";background:var(--border-divider);flex:1;height:1px}.add-dept-btn{border:1px dashed var(--border-dashed-add);height:1.625rem;color:var(--snapper-teal);font-family:var(--font-sans);font-size:.75rem;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--duration-control) ease;background:0 0;border-radius:999px;padding:0 .625rem}.add-dept-btn:hover:not([aria-disabled=true]){background:var(--surface-selected)}.goal-card__header{align-items:flex-start;gap:.75rem;display:flex}.goal-card__title-row{flex-wrap:wrap;flex:1;align-items:flex-start;gap:.5rem;min-width:0;display:flex}.goal-card--collapsed .goal-card__title-row{flex-wrap:nowrap}.goal-card__title{color:var(--snapper-nav);font-size:1rem;font-weight:var(--font-weight-semibold)}.card-toggle{width:100%;min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:flex-start;gap:.5rem;padding:0;display:flex}.goal-card__toggle{gap:.75rem}.card-title{overflow-wrap:anywhere;flex:6rem;min-width:0}.card-title--clamped{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.goal-card__ai-badge{background:var(--status-info-bg);color:var(--status-info-fg);font-size:.75rem;font-weight:var(--font-weight-medium);white-space:nowrap;border-radius:999px;flex:none;padding:.125rem .5rem}.goal-card--left-out{background:var(--surface-sunken);border-top-style:dashed;border-bottom-style:dashed;border-right-style:dashed}.goal-card__left-out-badge{border:1px solid var(--snapper-border-mid);background:var(--snapper-surface-2);color:var(--snapper-text-soft);font-size:.75rem;font-weight:var(--font-weight-medium);white-space:nowrap;border-radius:999px;flex:none;padding:.125rem .5rem}.goal-card__later{border-top:1px dashed var(--snapper-border-mid);color:var(--snapper-text-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.75rem;font-size:.8125rem;display:flex}.goal-card__body{flex-direction:column;gap:.75rem;display:flex}.card__description{field-sizing:content;border-radius:var(--radius-sm);width:100%;min-height:4rem;color:var(--snapper-text-soft);font-family:var(--font-sans);resize:vertical;transition:border-color var(--duration-control) ease, background var(--duration-control) ease;background:0 0;border:1px solid #0000;padding:.375rem .5rem;font-size:13px;line-height:1.7}.card__description:hover,.card__description:focus{border-color:var(--snapper-border-mid);background:var(--snapper-bg-subtle);outline:none}.goal-card__departments{flex-wrap:wrap;gap:.375rem;display:flex}.goal-card__body>.reasoned{align-self:flex-start}.goal-citations{border-top:1px solid var(--border-divider);padding-top:.625rem}.goal-citations__toggle{color:var(--snapper-text-subtle);font-family:var(--font-sans);font-size:.75rem;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:color var(--duration-hover) ease;background:0 0;border:none;align-items:center;gap:.375rem;padding:0;display:flex}.goal-citations__toggle:hover{color:var(--snapper-teal)}.goal-citations__caret{font-size:.625rem}.goal-citations__list{flex-direction:column;gap:.625rem;margin:.625rem 0 0;padding:0;list-style:none;display:flex}.goal-citations__item{flex-direction:column;gap:.25rem;display:flex}.goal-citations__source{align-items:center;gap:.5rem;display:flex}.goal-citations__filename{color:var(--snapper-nav);font-size:.8125rem;font-weight:var(--font-weight-semibold)}.goal-citations__page{color:var(--snapper-text-soft);font-size:.8125rem}.goal-citations__remove{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);color:var(--snapper-text-soft);font-family:var(--font-sans);cursor:pointer;transition:background var(--duration-control) ease, color var(--duration-control) ease;padding:.125rem .5rem;font-size:.75rem}.goal-citations__remove:hover{background:var(--surface-selected);color:var(--snapper-teal)}.goal-citations__quote{border-left:2px solid var(--snapper-teal);background:var(--snapper-bg-subtle);color:var(--snapper-text-soft);margin:0;padding:.375rem .625rem;font-size:.8125rem;font-style:italic;line-height:1.5}.impact-score-badge{width:44px;height:44px;color:var(--primary-foreground);font-size:15px;font-weight:var(--font-weight-extrabold);text-align:center;border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}.impact-wrap{border-top:1px solid var(--snapper-border);align-items:center;gap:12px;padding-top:12px;display:flex}.goal-block__impact{align-items:center;gap:8px;display:inline-flex}.goal-block__impact .impact-score-badge{border-radius:8px;width:32px;height:32px;font-size:13px}.impact-wrap__details{flex-direction:column;gap:2px;display:flex}.impact-wrap__label{font-size:10.5px;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--snapper-text-subtle)}.impact-wrap__row{color:var(--snapper-text-subtle);align-items:center;gap:5px;font-size:12px;display:flex}.impact-wrap__row strong{color:var(--snapper-text-soft)}.impact-bar-mini{background:var(--snapper-border);border-radius:99px;width:60px;height:4px;margin-left:auto;overflow:hidden}.impact-bar-mini__fill{height:100%;transition:width var(--duration-bar) ease;border-radius:99px;display:block}.impact-bar-mini__fill--red{background:var(--impact-red)}.impact-bar-mini__fill--amber{background:var(--impact-amber)}.impact-bar-mini__fill--green{background:var(--impact-green)}.impact-score-badge--red{background:var(--impact-red)}.impact-score-badge--amber{background:var(--impact-amber)}.impact-score-badge--green{background:var(--impact-green)}.suggestion-field{outline:1.5px dashed var(--snapper-teal);outline-offset:3px;border-radius:var(--radius-sm)}.suggestion-badge{text-transform:none;letter-spacing:0;margin-left:.5rem;display:inline-block;position:relative}.suggestion-badge__tag{background-color:var(--snapper-teal);color:var(--primary-foreground);cursor:help;border-radius:4px;padding:1px 6px;font-size:.6875rem;font-weight:700}.suggestion-badge__explanation{z-index:10;border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background-color:var(--snapper-surface);width:max-content;max-width:18rem;color:var(--snapper-text);white-space:normal;margin-top:.25rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:400;line-height:1.4;display:none;position:absolute;top:100%;left:0}.suggestion-badge:hover .suggestion-badge__explanation,.suggestion-badge:focus-within .suggestion-badge__explanation{display:block}.suggestion-badge__tag:focus-visible{outline:2px solid var(--snapper-nav);outline-offset:2px}.priority-dropdown{align-self:flex-start}.priority-dropdown__trigger,.priority-dropdown__option{border:1.5px solid var(--border-soft);background:var(--snapper-surface);width:100%;color:var(--snapper-text);font-family:var(--font-sans);font-size:12.5px;font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:0 10px;display:flex}.priority-dropdown__trigger{min-width:150px;box-shadow:var(--shadow-xs);transition:border-color var(--duration-control)}.priority-dropdown__trigger:hover{border-color:var(--neutral-mid)}.priority-dropdown__trigger[data-state=open]{border-color:var(--snapper-teal);box-shadow:var(--ring-open)}.priority-dropdown__caret{color:var(--snapper-text-muted);flex-shrink:0;margin-left:auto}.priority-dropdown__option{border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);text-align:left;transition:background var(--duration-hover) ease;border:none;outline:none;padding:7px 10px}.priority-dropdown__option[data-highlighted]{background:var(--surface-option-hover)}.priority-dropdown__dot{border-radius:50%;flex:none;width:.625rem;height:.625rem}.priority-dropdown__menu{z-index:1000;min-width:var(--radix-select-trigger-width);max-height:var(--radix-select-content-available-height);border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);box-shadow:var(--shadow-md);padding:.25rem 0;overflow-y:auto}.dept-chip{height:26px;font-family:var(--font-sans);font-size:12.5px;font-weight:var(--font-weight-medium);border:1.5px solid var(--snapper-border-mid);background:var(--snapper-surface-2);color:var(--snapper-text-soft);cursor:pointer;white-space:nowrap;transition:all var(--duration-hover);border-radius:100px;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.dept-chip:hover{border-color:var(--snapper-teal)}.dept-chip__dot{background:var(--snapper-border-mid);border-radius:50%;flex-shrink:0;width:7px;height:7px}.dept-chip__caret{color:inherit;opacity:.5;margin-left:1px;font-size:9px}.dept-chip--kritisk{background:var(--prio-kritisk-chip-bg);border-color:var(--prio-kritisk-chip-border);color:var(--prio-kritisk-solid)}.dept-chip--kritisk .dept-chip__dot{background:var(--prio-kritisk-dot)}.dept-chip--hoy{background:var(--prio-hoy-chip-bg);border-color:var(--prio-hoy-chip-border);color:var(--prio-hoy-solid)}.dept-chip--hoy .dept-chip__dot{background:var(--prio-hoy-dot)}.dept-chip--medium{background:var(--prio-medium-chip-bg);border-color:var(--prio-medium-chip-border);color:var(--prio-medium-solid)}.dept-chip--medium .dept-chip__dot{background:var(--prio-medium-dot)}.dept-chip--lav{background:var(--prio-lav-chip-bg);border-color:var(--prio-lav-chip-border);color:var(--prio-lav-solid)}.dept-chip--lav .dept-chip__dot{background:var(--prio-lav-dot)}.dept-chip__popover{z-index:30;border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);min-width:11rem;box-shadow:var(--shadow-md);padding:.25rem 0}.dept-chip__options{margin:0;padding:0;list-style:none}.dept-chip__option,.dept-chip__remove{border-radius:var(--radius-sm);width:100%;color:var(--snapper-text-soft);font-family:var(--font-sans);font-size:12.5px;font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:background var(--duration-hover) ease;background:0 0;border:none;align-items:center;gap:8px;padding:6px 10px;display:flex}.dept-chip__option:hover{background:var(--snapper-bg)}.dept-chip__option-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dept-chip__remove{border-top:1px solid var(--snapper-border);border-radius:0 0 var(--radius-sm) var(--radius-sm);color:var(--status-danger);margin-top:4px;font-size:12px}.dept-chip__remove:hover{background:var(--status-danger-bg)}.modal{z-index:900;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal__overlay{background:var(--overlay);cursor:default;border:none;padding:0;position:absolute;inset:0}.modal__dialog{border-radius:var(--radius-lg);background:var(--snapper-surface);width:min(32rem,100% - 2rem);max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:relative;overflow:hidden}.modal__dialog--skills{width:min(56rem,100% - 2rem);height:min(39rem,92vh);max-height:92vh}.modal:has(>.modal__dialog--side){justify-content:flex-end}.modal__dialog--side{border-radius:0;width:min(28rem,100%);height:100vh;max-height:100vh}.improve-panel__aims{flex-wrap:wrap;gap:.375rem;margin-bottom:.5rem;display:flex}.improve-panel__propose{align-self:flex-start}.improve-panel__compare{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.improve-panel__version{border:1px solid var(--snapper-border);border-radius:var(--radius-sm);padding:.75rem}.improve-panel__version:last-child{border-color:var(--snapper-teal-border);background:var(--status-ok-bg)}.improve-panel__title{font-weight:var(--font-weight-semibold);color:var(--snapper-text);margin:.25rem 0}.improve-panel__description{color:var(--snapper-text-soft);margin:0;font-size:.875rem;line-height:1.5}.card__improve{background:var(--status-ok-bg);height:28px;color:var(--status-ok-fg);font-family:var(--font-sans);font-size:12.5px;font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer;border:none;border-radius:7px;padding:0 10px}.card__improve:hover:not(:disabled){background:var(--snapper-teal);color:var(--primary-foreground)}.card__improve:disabled{opacity:.55;cursor:not-allowed}.modal__header{border-bottom:1px solid var(--snapper-border);justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem .75rem;display:flex}.modal__title{font-size:1.125rem;font-weight:var(--font-weight-extrabold);color:var(--snapper-nav);margin:0}.modal__close{border:1px solid var(--snapper-border);background:var(--snapper-surface);width:2rem;height:2rem;color:var(--snapper-text-soft);cursor:pointer;border-radius:50%;flex:none;font-size:.875rem}.modal__body{flex-direction:column;gap:.5rem;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.modal__lead{color:var(--snapper-text-soft);margin:0 0 .5rem;font-size:.875rem;line-height:1.55}.modal__list{color:var(--snapper-text-soft);flex-direction:column;gap:.375rem;margin:0;padding-left:1.125rem;font-size:.875rem;line-height:1.5;display:flex}.modal__label{font-size:.6875rem;font-weight:var(--font-weight-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--snapper-text-subtle)}.modal__input,.modal__textarea{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);width:100%;color:var(--snapper-text);font-family:var(--font-sans);padding:.5rem .75rem;font-size:.875rem}.modal__textarea{resize:vertical;min-height:5rem;line-height:1.5}.modal__error{border-radius:var(--radius-sm);background:var(--status-danger-bg);color:var(--status-danger-fg);margin:0;padding:.5rem .75rem;font-size:.8125rem}.modal__footer{border-top:1px solid var(--snapper-border);justify-content:flex-end;gap:.5rem;padding:.75rem 1.5rem;display:flex}.modal__button{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);height:2.25rem;color:var(--snapper-text-soft);font-family:var(--font-sans);font-size:.8125rem;font-weight:var(--font-weight-semibold);cursor:pointer;padding:0 1rem}.modal__button--primary{background:var(--snapper-teal);color:var(--primary-foreground);border-color:#0000}.modal__button--danger{background:var(--status-danger-strong);color:var(--primary-foreground);border-color:#0000}.modal__button:disabled{background:var(--snapper-text-muted);cursor:not-allowed}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.gate{width:min(40rem,100% - 2rem)}.gate__summary{color:var(--snapper-text-soft);flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.78rem;display:flex}.gate__list{border:1px solid var(--snapper-border);border-radius:var(--radius);margin:0;padding:0;list-style:none}.gate-row{border-top:1px solid var(--border-divider);flex-direction:column;gap:.375rem;padding:.625rem .75rem;display:flex}.gate-row:first-child{border-top:none}.gate-row__line{align-items:center;gap:.75rem;display:flex}.gate-row__main{cursor:pointer;flex:1;align-items:center;gap:.625rem;min-width:0;display:flex}.gate-row__title{font-weight:var(--font-weight-semibold);color:var(--snapper-nav)}.gate-row--off .gate-row__title{font-weight:var(--font-weight-medium);color:var(--snapper-text-subtle)}.gate-row--error{background:var(--status-danger-bg);box-shadow:inset 3px 0 0 var(--status-danger)}.gate-row__fix{flex-wrap:wrap;align-items:center;gap:.5rem;padding-left:1.75rem;display:flex}.gate-row__error{color:var(--status-danger-fg);margin:0;font-size:.78rem}.gate-row__priority{border:1px solid var(--status-danger);border-radius:var(--radius-sm);background:var(--snapper-surface);height:2rem;color:var(--snapper-text);font-family:var(--font-sans);padding:0 .5rem;font-size:.8125rem}.gate__threshold{border-top:1px solid var(--border-divider);background:var(--surface-sunken);font-size:.65rem;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--snapper-text-subtle);align-items:center;gap:.5rem;padding:.25rem .75rem;display:flex}.gate__threshold:before,.gate__threshold:after{content:"";border-top:1px dashed var(--snapper-border-mid);flex:1}.gate-score{flex:none;align-items:center;gap:.5rem;display:inline-flex}.gate-score__bar{background:var(--snapper-surface-2);border-radius:999px;width:5.5rem;height:.375rem;position:relative}.gate-score__fill{background:var(--snapper-teal);border-radius:999px;height:100%;display:block}.gate-score__fill--low{background:var(--neutral-mid)}.gate-score__tick{background:var(--snapper-nav);width:2px;position:absolute;top:-.1875rem;bottom:-.1875rem}.gate-score__value{font-variant-numeric:tabular-nums;min-width:2.25rem;font-size:.78rem;font-weight:var(--font-weight-semibold);color:var(--snapper-text-soft);text-align:right}.gate--wide{width:min(52rem,100% - 2rem)}.gate__list--groups{border:none;flex-direction:column;gap:1rem;display:flex}.gate-group{flex-direction:column;gap:.5rem;display:flex}.gate-group__goal{font-size:.95rem;font-weight:var(--font-weight-bold);color:var(--snapper-nav);margin:0}.gate-group__department{flex-direction:column;gap:.25rem;display:flex}.gate-group__title{font-size:.7rem;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--snapper-text-soft);margin:0}.gate__rows{border:1px solid var(--snapper-border);border-radius:var(--radius);margin:0;padding:0;list-style:none}.gate-row__tag,.focus-card__tag{background:var(--status-info-bg);color:var(--status-info-fg);font-size:.6875rem;font-weight:var(--font-weight-bold);border-radius:999px;flex:none;padding:.0625rem .4375rem}.gate-row__caption{color:var(--snapper-text-soft);font-size:.75rem}.gate-row__level{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);height:2rem;color:var(--snapper-text);font-family:var(--font-sans);padding:0 .5rem;font-size:.8125rem}.gate-row__level--invalid{border-color:var(--status-danger)}.gate-row__open{border:1px solid var(--status-danger);border-radius:var(--radius-sm);background:var(--snapper-surface);height:2rem;color:var(--status-danger-fg);font-family:var(--font-sans);font-size:.8125rem;font-weight:var(--font-weight-semibold);cursor:pointer;padding:0 .75rem}.focus-card__score{font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:var(--font-weight-semibold);color:var(--snapper-text-soft);flex:none}.focus-card--highlighted{outline:3px solid var(--snapper-teal);outline-offset:2px}@media (width<=30rem){.gate-row__line{flex-wrap:wrap}.gate-score__bar{width:4rem}}.doc-table-scroll{overflow-x:auto}.doc-table{border-collapse:collapse;width:100%;font-size:.875rem}.doc-table th{border-bottom:1px solid var(--snapper-border);color:var(--snapper-text-subtle);font-size:.6875rem;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:.5rem .75rem}.doc-table td{border-bottom:1px solid var(--border-row);vertical-align:middle;padding:.625rem .75rem}.doc-table .doc-table__col--center{text-align:center}.doc-table__col--center>.admin-panel__actions{justify-content:center}.doc-table__file{align-items:center;gap:.625rem;min-width:11rem;display:flex}.doc-table__badge{border-radius:var(--radius-sm);background:var(--file-badge-bg);color:var(--file-badge-fg);font-size:.5625rem;font-weight:var(--font-weight-bold);letter-spacing:.04em;flex-shrink:0;padding:.25rem .375rem}.doc-table__filename{-webkit-line-clamp:2;line-clamp:2;color:var(--snapper-nav);font-weight:var(--font-weight-medium);word-break:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.doc-table__row--excluded .doc-table__filename{color:var(--snapper-text-subtle);text-decoration:line-through}.doc-table__excluded-note{color:var(--snapper-text-subtle);font-size:.75rem;text-decoration:none;display:block}.doc-table__upload-error{color:var(--status-danger);font-size:.75rem;display:block}.doc-table__status{font-size:13px;font-weight:var(--font-weight-medium);white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.completed-banner{border:1px solid var(--info-panel-border);border-radius:var(--radius);background:var(--status-info-bg);max-width:64rem;color:var(--status-info-fg);align-items:flex-start;gap:.75rem;margin:0 auto 1.25rem;padding:.875rem 1rem;font-size:.875rem;display:flex}.completed-banner__icon{flex:none;margin-top:2px}.completed-banner p{margin:0}.completed-banner strong{margin-bottom:2px;display:block}.dropzone-off{border:2px dashed var(--snapper-border-mid);border-radius:var(--radius-lg);background:var(--snapper-surface-2);min-width:0;color:var(--snapper-text-subtle);text-align:center;cursor:not-allowed;margin:0;padding:36px 24px;display:block}.dropzone-off strong{color:var(--snapper-text-soft);margin-bottom:4px;display:block}.doc-table__remove{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);height:30px;font-family:var(--font-sans);font-size:12.5px;font-weight:var(--font-weight-medium);color:var(--snapper-text-soft);cursor:pointer;width:80px;padding:0 10px}.doc-table__remove:hover:not(:disabled){border-color:var(--status-danger);color:var(--status-danger)}.doc-table__remove:disabled{cursor:not-allowed;opacity:.55}.doc-type-chip{border:1px solid var(--snapper-border-mid);background:var(--snapper-surface-2);color:var(--snapper-text);font-family:var(--font-sans);font-size:.75rem;font-weight:var(--font-weight-semibold);cursor:pointer;border-radius:999px;align-items:center;gap:.375rem;padding:.25rem .625rem;display:inline-flex}.doc-type-chip:disabled{cursor:progress;opacity:.6}.doc-type-chip__caret{font-size:.625rem}.doc-type-chip--strategidokument{border-color:var(--prio-medium-chip-border);background:var(--prio-medium-chip-bg);color:var(--status-info-fg)}.doc-type-chip--styrepresentasjon{border-color:var(--prio-hoy-chip-border);background:var(--prio-hoy-chip-bg);color:var(--status-warn-fg)}.doc-type-chip--budsjett{border-color:var(--prio-lav-chip-border);background:var(--prio-lav-chip-bg);color:var(--status-ok-fg)}.doc-type-chip--ikke_relevant{border-color:var(--prio-kritisk-chip-border);background:var(--prio-kritisk-chip-bg);color:var(--status-danger-fg)}.doc-type-chip--annet{border-color:var(--snapper-teal-border);background:var(--snapper-teal-light);color:var(--snapper-teal)}.doc-type-chip__popover{z-index:30;border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);min-width:12rem;box-shadow:var(--shadow-md);padding:.25rem 0}.doc-type-chip__options{flex-direction:column;display:flex}.doc-type-chip__option{width:100%;color:var(--snapper-text);font-family:var(--font-sans);text-align:left;cursor:pointer;transition:background var(--duration-hover) ease;background:0 0;border:none;padding:.375rem .75rem;font-size:.8125rem;display:block}.doc-type-chip__option:hover{background:var(--snapper-teal-light)}.doc-type-chip__option[aria-current=true]{background:var(--surface-selected);font-weight:var(--font-weight-semibold)}.doc-type-chip__free-text{flex-direction:column;gap:.375rem;padding:.625rem .75rem;display:flex}.doc-type-chip__free-text label{color:var(--snapper-text-soft);font-size:.75rem}.doc-type-chip__free-text input{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);font-family:var(--font-sans);padding:.375rem .5rem;font-size:.8125rem}.doc-type-chip__save{border-radius:var(--radius-sm);background:var(--snapper-teal);color:var(--primary-foreground);font-family:var(--font-sans);font-size:.8125rem;font-weight:var(--font-weight-semibold);cursor:pointer;border:none;align-self:flex-start;padding:.3125rem .75rem}.gen-screen{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 0;display:flex}.gen-screen__title{font-size:1.375rem;font-weight:var(--font-weight-bold);color:var(--snapper-nav);margin:0}.gen-screen__subtitle{color:var(--snapper-text-soft);margin:0 0 .75rem;font-size:.9375rem}.gen-screen__waiting{color:var(--snapper-text-soft);margin:0;font-size:.9375rem}.analysis-orb{justify-content:center;align-items:center;width:88px;height:88px;display:flex;position:relative}.analysis-orb__core{background:var(--grad-orb);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;animation:2.5s ease-in-out infinite orb-pulse;display:flex;position:relative}.analysis-orb__star{color:var(--primary-foreground);font-size:24px;line-height:1}.analysis-orb__ring{border:1.5px solid var(--snapper-teal-border);border-radius:50%;position:absolute;inset:0}.analysis-orb__ring--outer{animation:2.5s ease-out infinite orb-ring-outer}.analysis-orb__ring--inner{animation:2.5s ease-out .4s infinite orb-ring-inner;inset:12px}.analysis-orb__dot{background:var(--snapper-teal-mid);transform-origin:4px 34px;border-radius:50%;width:8px;height:8px;margin-left:-4px;animation:3s linear infinite orb-dot;position:absolute;top:-6px;left:50%}.analysis-orb--resting .analysis-orb__core,.analysis-orb--resting .analysis-orb__ring,.analysis-orb--resting .analysis-orb__dot{animation:none}@keyframes orb-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes orb-ring-outer{0%{opacity:.9;transform:scale(.7)}to{opacity:0;transform:scale(1.15)}}@keyframes orb-ring-inner{0%{opacity:.7;transform:scale(.8)}to{opacity:0;transform:scale(1.3)}}@keyframes orb-dot{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--snapper-teal-light);border-top-color:var(--snapper-teal);width:1.25rem;height:1.25rem;animation:spinner-spin var(--duration-spin) linear infinite;border-radius:50%;flex:none}@keyframes spinner-spin{to{transform:rotate(360deg)}}.gen-screen__rows{text-align:left;flex-direction:column;gap:.5rem;width:100%;max-width:55rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.gen-row{background:var(--snapper-surface);border:1.5px solid var(--snapper-border);border-radius:var(--radius-lg);transition:border-color var(--duration-row) ease, box-shadow var(--duration-row) ease;animation:.4s both gen-row-in;position:relative;overflow:hidden}.gen-row--analyserer{border-color:var(--gen-row-processing-border);box-shadow:var(--ring-processing)}.gen-row--analyserer:after{content:"";pointer-events:none;background:var(--grad-scanline);animation:1.8s linear infinite scan-line;position:absolute;inset:0}.gen-row--ferdig{border-color:var(--snapper-teal-border)}.gen-row--feilet{border-color:var(--status-danger)}.gen-row__header{width:100%;font-family:var(--font-sans);color:var(--snapper-text);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.75rem;padding:.875rem 1rem;font-size:.9375rem;display:flex}.gen-row__header:disabled{cursor:default;color:var(--snapper-text-soft)}.gen-row__label{font-weight:var(--font-weight-medium);flex:1}.gen-row__state{font-size:.75rem;font-weight:var(--font-weight-semibold);background:var(--snapper-border);color:var(--snapper-text-soft);border-radius:999px;flex:none;align-items:center;gap:.375rem;padding:.125rem .625rem;display:inline-flex}.gen-row--analyserer .gen-row__state{color:var(--snapper-teal);font-variant-numeric:tabular-nums;background:0 0}.gen-row--ferdig .gen-row__state{color:var(--snapper-teal);font-weight:var(--font-weight-semibold);background:0 0}.gen-row--feilet .gen-row__state{color:var(--status-danger);font-weight:var(--font-weight-semibold);background:0 0}.gen-row__icon{flex:none}.gen-row__icon.spinner{width:1rem;height:1rem}.gen-row__chevron{color:var(--snapper-text-soft);transition:transform var(--duration-row) ease;flex:none}.gen-row__header[aria-expanded=true] .gen-row__chevron{transform:rotate(180deg)}.gen-row__header:disabled .gen-row__chevron{visibility:hidden}.gen-row__body{padding:0 1rem 1rem;animation:.4s both gen-done}.gen-row__results-label{font-size:.8125rem;font-weight:var(--font-weight-semibold);color:var(--snapper-text-soft);margin:0 0 .5rem}.gen-row__detail{color:var(--status-danger-fg);margin:0 0 .5rem;font-size:.8125rem}.gen-row__group{margin-bottom:.75rem}.gen-row__group-name{font-size:.75rem;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--dept-name-text);margin:0 0 .375rem}.gen-row__chips{flex-wrap:wrap;gap:.375rem;margin:0;padding:0;list-style:none;display:flex}.gen-chip{background:var(--surface-selected);border:1px solid var(--gen-chip-border);height:26px;color:var(--gen-chip-fg);border-radius:999px;align-items:center;padding:0 .625rem;font-size:.8125rem;animation:.35s both chip-pop;display:inline-flex}.gen-screen__failed{border-top:1px solid var(--snapper-border)}.gen-screen__done,.gen-screen__failed{flex-direction:column;align-items:center;gap:.5rem;width:100%;margin-top:1rem;padding-top:1.25rem;display:flex}.gen-screen__medallion{background:var(--snapper-nav);width:3.5rem;height:3.5rem;color:var(--primary-foreground);border-radius:50%;justify-content:center;align-items:center;animation:.4s both gen-done;display:inline-flex}.gen-screen__done-title{font-size:1.125rem;font-weight:var(--font-weight-bold);color:var(--snapper-nav);margin:0}.gen-screen__done-message{color:var(--snapper-text-soft);margin:0;font-size:.9375rem}.gen-screen__failed-title{font-size:.9375rem;font-weight:var(--font-weight-semibold);color:var(--status-danger-fg);margin:0}.gen-screen__failed-reason{color:var(--snapper-text-soft);margin:0;font-size:.8125rem}.gen-screen__continue,.gen-screen__retry{border-radius:var(--radius-sm);background:var(--snapper-teal);color:var(--primary-foreground);font-family:var(--font-sans);font-size:.9375rem;font-weight:var(--font-weight-semibold);cursor:pointer;border:none;margin-top:.5rem;padding:.625rem 1.5rem}.gen-screen__retry{background:var(--status-danger)}.gen-screen__skip{font-family:var(--font-sans);color:var(--snapper-text-soft);cursor:pointer;background:0 0;border:none;margin-top:1rem;padding:.25rem .5rem;font-size:.875rem;text-decoration:underline}.gen-screen__skip:disabled{cursor:not-allowed;text-decoration:none}.gen-screen__skip-reason{color:var(--snapper-text-soft);font-size:.8125rem}@keyframes gen-row-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes gen-done{0%{opacity:0}to{opacity:1}}@keyframes chip-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scan-line{0%{transform:translate(-100%)}to{transform:translate(100%)}}.login-shell{background:var(--login-shell);flex:1;justify-content:center;align-items:center;padding:1rem;display:flex}.login-card{border-radius:var(--radius-xl);width:min(75rem,100%);min-height:min(45rem,90vh);box-shadow:var(--shadow-lg);grid-template-columns:minmax(20rem,30rem) 1fr;display:grid;overflow:hidden}.login-panel{background:var(--grad-login-panel);flex-direction:column;min-width:0;padding:4rem 3.5rem 2.5rem;display:flex}.login-logo{font-size:1.375rem;font-weight:var(--font-weight-extrabold);letter-spacing:-.01em;color:var(--snapper-nav);margin:0 0 3rem}.login-title{font-size:2.25rem;font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;color:var(--snapper-text);margin:0 0 .625rem;line-height:1.2}.login-subtitle{color:var(--snapper-text-soft);margin:0 0 2.5rem;font-size:.9375rem}.login-error,.login-notice{border-radius:var(--radius);margin:0 0 1rem;padding:.75rem 1rem;font-size:.875rem}.login-error{background:var(--status-danger-bg);color:var(--status-danger-fg)}.login-notice{background:var(--status-warning-bg);color:var(--status-warning-fg)}.login-submit{border-radius:var(--radius-lg);background:var(--snapper-teal);width:100%;height:3.25rem;color:var(--primary-foreground);font-family:var(--font-sans);font-size:1rem;font-weight:var(--font-weight-bold);cursor:pointer;border:none;justify-content:center;align-items:center;padding:0 1.25rem;display:flex}.login-submit:hover{background:var(--snapper-teal-mid)}.login-providers{flex-direction:column;gap:.75rem;display:flex}.login-provider{border:1px solid var(--brand-button-border);border-radius:var(--radius-lg);background:var(--brand-button-bg);width:100%;height:3.25rem;color:var(--brand-button-text);font-family:var(--font-sans);font-size:1rem;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--duration-control) ease;justify-content:center;align-items:center;gap:.75rem;padding:0 1.25rem;display:flex}.login-provider:hover,.login-google:hover .login-provider{background:var(--brand-button-bg-hover)}.login-provider--microsoft:focus-visible,.login-google:focus-within .login-provider{outline:2px solid var(--snapper-teal);outline-offset:2px}.login-provider__logo{flex:none;width:1.3125rem;height:1.3125rem}.brand-microsoft-red{fill:var(--brand-microsoft-red)}.brand-microsoft-green{fill:var(--brand-microsoft-green)}.brand-microsoft-blue{fill:var(--brand-microsoft-blue)}.brand-microsoft-yellow{fill:var(--brand-microsoft-yellow)}.brand-google-red{fill:var(--brand-google-red)}.brand-google-blue{fill:var(--brand-google-blue)}.brand-google-yellow{fill:var(--brand-google-yellow)}.brand-google-green{fill:var(--brand-google-green)}.login-google{position:relative}.login-google__gis{opacity:.01;position:absolute;inset:0;overflow:hidden}.login-google__gis-button{transform-origin:0 0;width:400px;height:40px}.login-password{flex-direction:column;gap:.875rem;margin-top:.75rem;display:flex}.login-dev{border:1px dashed var(--snapper-teal);border-radius:var(--radius-lg);width:100%;height:3rem;color:var(--snapper-teal);font-family:var(--font-sans);font-size:.9375rem;font-weight:var(--font-weight-bold);cursor:pointer;background:0 0;margin-top:.75rem}.login-dev:disabled,.login-submit:disabled{opacity:.55;cursor:not-allowed}.login-help{color:var(--snapper-text-soft);border-top:1px solid var(--login-divider);margin:1.25rem 0 0;padding-top:1.25rem;font-size:.8125rem;line-height:1.6}.login-legal{text-align:center;color:var(--snapper-text-soft);margin:auto 0 0;padding-top:2rem;font-size:.6875rem}.login-hero{background:var(--login-hero-ground);align-items:flex-end;padding:3rem;display:flex;position:relative;overflow:hidden}.login-hero:before,.login-hero:after{content:"";position:absolute;inset:0}.login-hero:before{opacity:.52;filter:brightness(.65)saturate(.22);background-image:url(/images/login-hero.jpg);background-position:top;background-size:cover}.login-hero:after{background:var(--grad-login-scrim)}.login-hero__body{z-index:1;max-width:30rem;position:relative}.login-hero__title{font-size:2.375rem;font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;color:var(--primary-foreground);margin:0 0 1rem;line-height:1.15}.login-hero__text{color:var(--snapper-teal-light);margin:0;font-size:1.0625rem;line-height:1.7}.login-hero__stats{gap:1rem;margin:2rem 0 0;display:flex}.login-stat{border-radius:var(--radius-lg);background:var(--snapper-surface);box-shadow:var(--shadow-md);flex:1;padding:.875rem 1.125rem}.login-stat__label{font-size:.75rem;font-weight:var(--font-weight-bold);color:var(--snapper-text)}.login-stat__value{font-size:1.75rem;font-weight:var(--font-weight-extrabold);letter-spacing:-.03em;color:var(--snapper-nav);margin:.25rem 0 0;line-height:1.1}.login-stat__value--risk{color:var(--priority-kritisk)}.card{background:var(--snapper-surface);border:1px solid var(--snapper-border);border-radius:var(--radius)}.card--p{padding:24px}.section-title{font-size:11px;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--snapper-text-subtle)}.btn{border-radius:var(--radius-sm);height:36px;font-family:var(--font-sans);font-size:13.5px;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--duration-control);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:0 16px;text-decoration:none;display:inline-flex}.btn--primary{background:var(--snapper-teal);color:var(--primary-foreground)}.btn--primary:hover{background:var(--snapper-nav)}.btn--primary:disabled{opacity:.7;cursor:not-allowed}.btn--secondary{background:var(--snapper-surface);border-color:var(--snapper-border-mid);color:var(--snapper-text-soft)}.btn--secondary:hover{border-color:var(--snapper-teal);color:var(--snapper-teal)}.btn--nav{background:var(--snapper-nav);color:var(--primary-foreground)}.btn--nav:hover{background:var(--snapper-nav-hover)}.btn--lg{border-radius:var(--radius);height:42px;padding:0 20px;font-size:14px}.form-field{flex-direction:column;display:flex}.form-field--spaced{margin-bottom:14px}.form-label-row{align-items:baseline;gap:3px;margin-bottom:5px;display:flex}.form-label{font-size:12.5px;font-weight:var(--font-weight-semibold);color:var(--snapper-text-soft)}.form-required{color:var(--status-ok);font-weight:var(--font-weight-bold)}.form-required-note{color:var(--snapper-text-subtle);text-align:right;margin:0 0 8px;font-size:12px}.setup-card-title{margin-bottom:16px;display:block}.form-input,.form-select{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);height:36px;font-family:var(--font-sans);color:var(--snapper-text);transition:border-color var(--duration-control), box-shadow var(--duration-control);outline:none;width:100%;padding:0 10px;font-size:13.5px}.form-select{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;display:flex}.form-select[data-placeholder]{color:var(--snapper-text-subtle)}.form-input:focus,.form-select:focus{border-color:var(--snapper-teal);box-shadow:var(--ring-focus)}.form-input[aria-invalid=true],.form-select[aria-invalid=true]{border-color:var(--danger)}.select-menu{width:var(--radix-select-trigger-width);max-height:var(--radix-select-content-available-height);background:var(--snapper-surface);border:1px solid var(--snapper-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-menu);font-family:var(--font-sans);color:var(--snapper-text);z-index:1000;padding:4px;font-size:13.5px;overflow-y:auto}.select-menu__item{border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:7px 10px}.select-menu__item[data-highlighted]{background:var(--surface-option-hover)}.select-menu__item[data-state=checked]{font-weight:var(--font-weight-semibold);color:var(--snapper-teal)}.form-input::placeholder{color:var(--snapper-text-subtle)}.form-error{color:var(--danger);margin:.25rem 0 0;font-size:.8125rem}.setup-head{text-align:center;margin-bottom:28px}.setup-head h1{font-size:24px;font-weight:var(--font-weight-bold);color:var(--snapper-text);margin:0 0 6px}.setup-head p{color:var(--snapper-text-soft);margin:0;font-size:14px}.setup-fieldset{border:0;min-width:0;margin:0;padding:0}.setup-grid{grid-template-columns:1fr 1fr;align-items:stretch;gap:16px;margin-bottom:16px;display:grid}.setup-details__fields>.form-field--spaced:last-child{margin-bottom:0}.setup-grid__col{flex-direction:column;gap:16px;display:flex}.market-grid{grid-template-columns:1fr 1fr;gap:14px 12px;display:grid}.market-grid .form-field--spaced{margin-bottom:0}.market-grid__last{grid-column:1/-1}.setup-info-bar{background:var(--snapper-surface);border:1px solid var(--snapper-border);border-radius:var(--radius);flex-direction:column;align-items:stretch;gap:12px;padding:14px 20px;display:flex}.setup-missing-fields{margin:0 0 12px}.setup-info-bar__note{color:var(--snapper-text-soft);align-items:center;gap:8px;font-size:13px;display:flex}.setup-info-bar__dot{background:var(--status-warn);border-radius:2px;flex-shrink:0;width:10px;height:10px;display:inline-block}.setup-info-bar__actions{flex-wrap:wrap;gap:8px;display:flex}.setup-info-bar__actions>:last-child{margin-left:auto}.dept-card__title{font-size:15px;font-weight:var(--font-weight-bold);color:var(--snapper-text);margin:0 0 14px}.dept-selected{border:none;border-top:1px solid var(--snapper-border);min-width:0;margin:14px 0 0;padding:14px 0 0}.dept-selected__title{font-size:13px;font-weight:var(--font-weight-bold);color:var(--snapper-text);margin:0 0 8px;padding:0}.dept-group-tab{height:32px;font-family:var(--font-sans);font-size:12.5px;font-weight:var(--font-weight-medium);cursor:pointer;border:1px solid var(--snapper-border-mid);background:var(--snapper-surface);color:var(--snapper-text-soft);transition:all var(--duration-control);border-radius:100px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.dept-group-tab:hover:not(:disabled,[aria-selected=true]){border-color:var(--snapper-teal);color:var(--snapper-teal)}.dept-group-tab:disabled,.dept-toggle-chip:disabled,.goal-list__primary:disabled,.goal-list__primary[aria-disabled=true],.goal-list__secondary:disabled,.goal-list__secondary[aria-disabled=true],.add-dept-btn[aria-disabled=true]{cursor:not-allowed;opacity:.5}.dept-group-tab[aria-selected=true]{background:var(--snapper-teal);border-color:var(--snapper-teal);color:var(--primary-foreground)}.dept-tabs{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.dept-tabs__list{flex-wrap:wrap;gap:8px;display:flex}.dept-toggle-chip{border:1px solid var(--snapper-border-mid);background:var(--snapper-surface);height:28px;font-family:var(--font-sans);font-size:12.5px;font-weight:var(--font-weight-medium);color:var(--snapper-text-soft);cursor:pointer;transition:all var(--duration-control);border-radius:100px;align-items:center;padding:0 10px;display:inline-flex}.dept-toggle-chip:hover:not(:disabled){border-color:var(--snapper-teal);color:var(--snapper-teal)}.dept-toggle-chip[aria-pressed=true]{background:var(--snapper-teal-light);border-color:var(--snapper-teal-border);color:var(--snapper-teal)}.dept-card{flex:1}.custom-dept__name{font-weight:var(--font-weight-semibold);color:var(--snapper-text);margin:0 0 10px}.custom-dept__note,.custom-dept__description{color:var(--snapper-text-subtle);margin:0 0 12px;font-size:12.5px}.custom-dept__note--warn{border-radius:var(--radius-sm);background:var(--status-warning-bg);color:var(--status-warning-fg);padding:8px 10px}.dept-limit-note{color:var(--snapper-text-subtle);margin:8px 0 0;font-size:12.5px}.dept-chips-row{flex-wrap:wrap;gap:7px;min-height:28px;display:flex}.dept-sub-chip{border:1px solid var(--snapper-border-mid);background:var(--snapper-surface);max-width:100%;min-height:28px;font-size:12.5px;font-weight:var(--font-weight-medium);color:var(--snapper-text-soft);border-radius:16px;flex-wrap:wrap;align-items:center;gap:5px;padding:3px 10px;animation:.2s both chip-pop;display:inline-flex}.dept-sub-chip svg{color:var(--snapper-teal);flex-shrink:0}.dept-chip-remove{color:inherit;opacity:.5;cursor:pointer;transition:opacity var(--duration-control);background:0 0;border:none;padding:0 0 0 2px;font-size:13px;line-height:1}.dept-chip-remove:hover{opacity:1}.secondary-depts{border:none;min-width:0;margin:12px 0;padding:0}.secondary-depts__group{border:none;min-width:0;margin:8px 0 0;padding:0}.dept-chips-empty{color:var(--snapper-text-subtle);align-self:center;font-size:12.5px}.dept-add-trigger{padding:0 10px}.dept-add-menu{background:var(--snapper-surface);border:1px solid var(--snapper-border);border-radius:var(--radius);box-shadow:var(--shadow-md);min-width:220px;max-height:var(--radix-popover-content-available-height);z-index:100;padding:8px;overflow-y:auto}.dept-add-menu__header{justify-content:space-between;align-items:flex-start;display:flex}.dept-add-menu__close{border-radius:var(--radius-sm);color:var(--snapper-text-subtle);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:12px}.dept-add-menu__close:hover{background:var(--snapper-bg);color:var(--snapper-text)}.dept-add-menu__title{font-size:12px;font-weight:var(--font-weight-semibold);color:var(--snapper-text-subtle);text-transform:uppercase;letter-spacing:.04em;padding:4px 8px 8px}.dept-menu-item{text-align:left;border-radius:var(--radius-sm);width:100%;font-family:var(--font-sans);color:var(--snapper-text-soft);cursor:pointer;transition:background var(--duration-hover);background:0 0;border:none;align-items:center;gap:8px;padding:7px 10px;font-size:13px;display:flex}.dept-menu-item:hover{background:var(--snapper-bg);color:var(--snapper-text)}.dept-menu-sep{border-top:1px solid var(--snapper-border);margin:6px 0}.dept-menu-custom{gap:6px;padding:4px 8px;display:flex}.dept-menu-custom__error{margin:0;padding:0 8px 4px}.dept-menu-custom .form-input{height:30px;font-size:12.5px}.dept-modal__search{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);width:100%;height:36px;font-family:var(--font-sans);color:var(--snapper-text);outline:none;margin-bottom:1rem;padding:0 10px;font-size:13.5px}.dept-modal__search:focus{border-color:var(--snapper-teal)}.dept-modal__section{border-top:1px solid var(--snapper-border);margin-top:.875rem;padding-top:.875rem}.dept-modal__section-label{font-size:11px;font-weight:var(--font-weight-bold);color:var(--snapper-text-subtle);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.dept-modal__empty{color:var(--snapper-text-subtle);margin:0 0 .5rem;font-size:13px}.dept-modal__list{flex-direction:column;gap:2px;max-height:220px;display:flex;overflow-y:auto}.dept-modal__item{border-radius:var(--radius-sm);color:var(--snapper-text);cursor:pointer;transition:background var(--duration-hover);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;display:flex;position:relative}.dept-modal__item:hover{background:var(--snapper-bg)}.dept-modal__item--selected{background:var(--snapper-teal-light)}.dept-modal__item-input{opacity:0;width:1px;height:1px;position:absolute}.dept-modal__checkbox{border:1.5px solid var(--snapper-border-mid);background:var(--snapper-surface);width:16px;height:16px;transition:background var(--duration-control) ease, border-color var(--duration-control) ease;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dept-modal__item--selected .dept-modal__checkbox{background:var(--snapper-teal);border-color:var(--snapper-teal)}.dept-modal__item--selected .dept-modal__checkbox:after{content:"✓";color:var(--snapper-surface);font-size:11px;line-height:1}.dept-modal__item-input:focus-visible+.dept-modal__checkbox{outline:2px solid var(--snapper-teal);outline-offset:1px}.dept-modal__selected{flex-wrap:wrap;gap:6px;display:flex}.dept-modal__chip{border:1px solid var(--snapper-border-mid);background:var(--snapper-surface);height:28px;font-size:12.5px;font-weight:var(--font-weight-medium);color:var(--snapper-text-soft);border-radius:100px;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.dept-modal__chip-remove{color:var(--snapper-text-subtle);cursor:pointer;background:0 0;border:none;padding:0;font-size:14px;line-height:1}.dept-modal__chip-remove:hover{color:var(--status-danger)}.dept-modal__levels{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dept-modal__level{border:1.5px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);height:38px;font-family:var(--font-sans);font-size:13px;font-weight:var(--font-weight-medium);color:var(--snapper-text-soft);cursor:pointer;transition:border-color var(--duration-control) ease, background var(--duration-control) ease, color var(--duration-control) ease;align-items:center;gap:8px;padding:0 14px;display:flex}.dept-modal__level:hover{border-color:var(--snapper-teal);color:var(--snapper-text)}.dept-modal__level-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.dept-modal__level-dot--kritisk{background:var(--prio-kritisk-dot)}.dept-modal__level-dot--hoy{background:var(--prio-hoy-dot)}.dept-modal__level-dot--medium{background:var(--prio-medium-dot)}.dept-modal__level-dot--lav{background:var(--prio-lav-dot)}.dept-modal__level[aria-pressed=true]{font-weight:var(--font-weight-semibold)}.dept-modal__level--kritisk[aria-pressed=true]{background:var(--prio-kritisk-chip-bg);border-color:var(--prio-kritisk-solid);color:var(--prio-kritisk-solid)}.dept-modal__level--hoy[aria-pressed=true]{background:var(--prio-hoy-chip-bg);border-color:var(--prio-hoy-dot);color:var(--prio-hoy-solid)}.dept-modal__level--medium[aria-pressed=true]{background:var(--prio-medium-chip-bg);border-color:var(--prio-medium-dot);color:var(--prio-medium-solid)}.dept-modal__level--lav[aria-pressed=true]{background:var(--prio-lav-chip-bg);border-color:var(--prio-lav-dot);color:var(--prio-lav-solid)}.dept-menu-custom .btn{height:30px;padding:0 12px;font-size:12.5px}.wizard-nav{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:2.5rem;display:flex}.card>.wizard-nav{margin-top:0}.wizard-nav__forward{flex-direction:column;align-items:flex-end;gap:.375rem;margin-left:auto;display:flex}.wizard-nav__reason{text-align:right;max-width:22rem;color:var(--snapper-text-soft);font-size:.8125rem}.btn:disabled{opacity:.5;cursor:not-allowed}.page-footer{width:100%;max-width:960px;color:var(--snapper-text-soft);flex-wrap:wrap;justify-content:space-between;gap:12px;margin:auto auto 0;padding:40px 2rem 24px;font-size:12px;display:flex}.page-footer__links{flex-wrap:wrap;gap:4px 16px;display:flex}.page-footer__links a{color:inherit}.legal-page{width:100%;max-width:48rem;color:var(--snapper-text);margin:0 auto;padding:2rem 1.5rem}.legal-document{overflow-wrap:anywhere;line-height:1.6}.legal-document h1,.legal-document h2{line-height:1.25}.legal-document th{overflow-wrap:normal}@media (width<=40rem){.legal-document thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.legal-document tbody tr:has(td[data-label]){border-bottom:1px solid var(--snapper-border);padding:.5rem 0;display:block}.legal-document td[data-label]{border:0;padding:.125rem 0;display:block}.legal-document td[data-label]:before{content:attr(data-label) ": ";font-weight:600}}.legal-document h1{color:var(--snapper-nav);margin:1.5rem 0 .5rem;font-size:1.5rem}.legal-document h2{margin:2rem 0 .5rem;font-size:1.125rem}.legal-document p,.legal-document ul,.legal-document ol{margin:0 0 .75rem}.legal-document code{font-size:.875em}.legal-document__note{border-left:4px solid var(--snapper-teal);background:var(--snapper-surface);padding:.75rem 1rem}.legal-document table{border-collapse:collapse;width:100%;margin:0 0 1rem;font-size:.875rem}.legal-document th,.legal-document td{border-bottom:1px solid var(--snapper-border);text-align:left;vertical-align:top;padding:.5rem}.home-shell{flex:1;grid-template-columns:1fr 1fr;min-height:0;display:grid}.home-left{background:var(--snapper-surface);border-right:1px solid var(--snapper-border);flex-direction:column;justify-content:center;min-width:0;padding:112px 60px 60px;display:flex}.account-gate{flex:1;justify-content:center;align-items:flex-start;padding:7rem 1rem 3rem;display:flex}.account-gate__card{border-radius:var(--radius-xl);background:var(--card);width:min(32rem,100%);box-shadow:var(--shadow-lg);color:var(--snapper-text);padding:2.5rem}.account-gate__title{font-size:1.625rem;font-weight:var(--font-weight-bold);letter-spacing:-.02em;margin:0 0 .75rem}.account-gate__text{color:var(--snapper-text-soft);margin:0 0 1rem;font-size:.9375rem;line-height:1.6}.account-gate__form{flex-direction:column;gap:.875rem;margin-top:.5rem;display:flex}.account-gate__org{border-radius:var(--radius-sm);background:var(--status-info-bg);color:var(--status-info-fg);margin:0 0 1rem;padding:.625rem .875rem;font-size:.875rem;line-height:1.5}.account-gate__message{resize:vertical;height:auto;min-height:5rem;padding:.5rem .625rem}.account-gate__lookup{border-radius:var(--radius-sm);background:var(--status-info-bg);color:var(--status-info-fg);flex-direction:column;gap:.125rem;margin:.5rem 0 0;padding:.625rem .875rem;font-size:.8125rem;display:flex}.account-gate__lookup--found{background:var(--status-success-bg);color:var(--status-success-fg)}.account-gate__lookup--missing{background:var(--status-warning-bg);color:var(--status-warning-fg)}.admin-shell{color:var(--snapper-text);padding:112px 60px 60px}.admin-shell h1{font-size:26px;font-weight:var(--font-weight-bold);letter-spacing:-.4px;margin:0 0 8px}.admin-shell p{color:var(--snapper-text-soft);margin:0;font-size:14px}.home-greeting{font-size:26px;font-weight:var(--font-weight-bold);letter-spacing:-.4px;margin:0 0 4px}.home-greeting em{color:var(--snapper-teal);font-style:italic}.home-sub{color:var(--snapper-text-soft);margin:0 0 40px;font-size:14px}.home-sec-lbl{font-size:11px;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.06em;color:var(--snapper-text-subtle);margin-bottom:8px}.home-new{border-radius:var(--radius);border:2px dashed var(--snapper-border-mid);cursor:pointer;height:46px;font-size:13.5px;font-weight:var(--font-weight-medium);color:var(--snapper-text-soft);transition:all var(--duration-control);background:0 0;align-items:center;gap:10px;margin-bottom:24px;padding:0 16px;text-decoration:none;display:flex}.home-new:hover{border-color:var(--snapper-teal);color:var(--snapper-teal)}.project-row{border-radius:var(--radius);border:1px solid var(--snapper-border);height:48px;transition:all var(--duration-control);background:var(--snapper-surface);align-items:center;gap:12px;margin-bottom:8px;padding:0 14px;display:flex}.project-row:hover{border-color:var(--snapper-teal)}.project-row__icon{background:var(--snapper-surface-2);width:28px;height:28px;color:var(--snapper-text-muted);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.project-row__name{font-size:13.5px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--snapper-text);flex:1;text-decoration:none;overflow:hidden}.project-row__meta{color:var(--snapper-text-subtle);white-space:nowrap;font-size:12px}.project-row__btns{gap:3px;display:flex}.proj-btn{border-radius:var(--radius-sm);cursor:pointer;width:26px;height:26px;color:var(--snapper-text-muted);transition:all var(--duration-control);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.proj-btn:hover{background:var(--snapper-surface-2);color:var(--snapper-text)}.proj-btn--del:hover{background:var(--status-danger-bg);color:var(--status-danger)}.home-hero{background:var(--snapper-nav);justify-content:center;align-items:flex-start;display:flex;position:relative;overflow:hidden}.home-hero:before{content:"";opacity:.35;background-image:url(/images/login-hero.jpg);background-position:50%;background-size:cover;position:absolute;inset:0}.home-hero:after{content:"";background:var(--grad-login-overlay);position:absolute;inset:0}.home-hero__inner{z-index:1;text-align:center;padding:40px;position:relative}.home-hero__inner h3{font-size:38px;font-weight:var(--font-weight-extrabold);color:var(--primary-foreground);letter-spacing:-.8px;margin:0 0 16px;line-height:1.15}.home-hero__inner p{color:var(--hero-text);max-width:360px;margin:0 auto;font-size:18px;line-height:1.7}@media (width<=900px){.login-card{grid-template-columns:1fr;min-height:0}.login-hero{display:none}.home-shell,.setup-grid,.market-grid{grid-template-columns:1fr}.market-grid__last{grid-column:auto}.home-hero{display:none}.home-left{border-right:none;padding:48px 28px 40px}.login-panel{padding:3rem 1.75rem 2.5rem}.snapper-nav__user-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media (width<=680px){.setup-info-bar__actions{flex-direction:column;align-items:flex-start}.snapper-nav{flex-wrap:wrap;gap:.5rem;height:auto;padding:10px .75rem}.project-row__meta{display:none}.home-left{padding:40px 20px 32px}.priority-dropdown__trigger{min-width:0}.snapper-nav__logo{margin-right:.5rem}.snapper-nav__right{flex-basis:100%;justify-content:flex-end;margin-left:0}.customer-badge__tier{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.snapper-nav__signout{padding:.375rem .625rem}.wizard-stepper__track{height:auto;padding:0 .25rem}.wizard-stepper__steps{flex:1;justify-content:space-between}.wizard-stepper__arrow{display:none}.wizard-stepper__step{gap:.375rem;height:auto;padding:.625rem .375rem;font-size:.8125rem}.wizard-stepper__step:not([data-status=active]) .wizard-stepper__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.goal-card__header,.card__actions{flex-wrap:wrap}.doc-table th,.doc-table td{padding-left:.375rem;padding-right:.375rem}.login-shell{padding:.5rem}.login-panel{padding:2.5rem 1.25rem 2rem}}.db-page{width:100%;max-width:1080px;margin:0 auto;padding:20px 24px 80px}.db-page__head{align-items:center;gap:16px;margin-bottom:20px;display:flex}.db-page__head>div{border-left:1px solid var(--border-soft);padding-left:16px}.db-page__back{border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--snapper-surface);height:32px;font-size:13px;font-weight:var(--font-weight-semibold);color:var(--snapper-text);align-items:center;gap:6px;padding:0 12px;text-decoration:none;display:inline-flex}.db-page__back:hover{background:var(--surface-panel)}.db-page__nav{margin-bottom:24px}.db-page__eyebrow{font-size:10.5px;font-weight:var(--font-weight-bold);color:var(--snapper-text-subtle);text-transform:uppercase;letter-spacing:.06em;margin:0 0 2px}.db-page__title{font-size:22px;font-weight:var(--font-weight-bold);letter-spacing:-.3px;color:var(--snapper-text);margin:0}.db-page__lead,.db-page__pending,.db-page__empty{color:var(--snapper-text-soft);margin:0;font-size:13px}.db-page__empty{background:var(--snapper-surface);border:1px solid var(--snapper-border);border-radius:var(--radius-lg);text-align:center;padding:28px}.db-page__body{flex-direction:column;gap:22px;display:flex}.db-deliver{background:var(--snapper-surface);border:1px solid var(--border-soft);box-shadow:var(--shadow-xs);border-radius:14px;overflow:hidden}.db-deliver__head{border-bottom:1px solid var(--border-divider);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:4px 16px;padding:16px 20px 14px;display:flex}.db-deliver__eyebrow{font-size:10.5px;font-weight:var(--font-weight-bold);color:var(--snapper-text-subtle);text-transform:uppercase;letter-spacing:.06em;margin:0 0 3px}.db-deliver__title{font-size:15px;font-weight:var(--font-weight-bold);color:var(--snapper-text);margin:0}.db-deliver__lead{color:var(--snapper-text-subtle);margin:0;font-size:12px}.db-deliver__tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px;display:grid}.db-deliver__tile{border:1px solid var(--snapper-border);background:linear-gradient(180deg, var(--tile-tint) 0%, var(--snapper-surface) 55%);border-radius:14px;flex-direction:column;align-items:center;padding:24px 20px 22px;display:flex}.db-deliver__tile--pdf{--tile-accent:var(--deliver-pdf-accent);--tile-fg:var(--deliver-pdf-fg);--tile-bg:var(--deliver-pdf-bg);--tile-tint:var(--deliver-pdf-tint)}.db-deliver__tile--docx{--tile-accent:var(--deliver-docx-accent);--tile-fg:var(--deliver-docx-accent);--tile-bg:var(--deliver-docx-bg);--tile-tint:var(--deliver-docx-tint)}.db-deliver__icon{margin-bottom:14px;overflow:visible}.db-deliver__page{fill:var(--snapper-surface);stroke:color-mix(in srgb, var(--tile-accent) 30%, var(--snapper-surface));stroke-width:1.5px}.db-deliver__fold{fill:color-mix(in srgb, var(--tile-accent) 12%, var(--snapper-surface));stroke:color-mix(in srgb, var(--tile-accent) 30%, var(--snapper-surface));stroke-width:1.5px}.db-deliver__badge{fill:var(--tile-accent)}.db-deliver__badge-text{fill:var(--primary-foreground);font-size:7.5px;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-anchor:middle}.db-deliver__name{font-size:14px;font-weight:var(--font-weight-bold);color:var(--snapper-text);margin:0 0 4px}.db-deliver__caption{color:var(--snapper-text-subtle);margin:0 0 16px;font-size:12px}.db-deliver__pill{background:var(--tile-bg);height:28px;color:var(--tile-fg);font:inherit;font-size:13px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--duration-control) ease;border:none;border-radius:999px;align-items:center;gap:6px;padding:0 16px;display:inline-flex}.db-deliver__pill:hover:not(:disabled){background:color-mix(in srgb, var(--tile-accent) 16%, var(--snapper-surface))}.db-deliver__pill:disabled{cursor:progress;opacity:.7}@media (width<=40rem){.db-deliver__tiles{grid-template-columns:minmax(0,1fr)}}.db-kpis{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.db-kpi{background:var(--snapper-surface);border:1px solid var(--border-kpi);transition:box-shadow var(--duration-lift) ease, transform var(--duration-lift) ease;border-radius:14px;flex-direction:column;padding:20px 20px 16px;animation:.35s cubic-bezier(.16,1,.3,1) both kpi-in;display:flex;position:relative}.db-kpi:hover{box-shadow:var(--shadow-kpi-hover);transform:translateY(-2px)}.db-kpi:before{content:"";background:var(--kpi-accent);border-radius:0 0 3px 3px;height:2px;position:absolute;top:0;left:16px;right:16px}.db-kpi:first-child{animation-delay:40ms}.db-kpi:nth-child(2){animation-delay:.1s}.db-kpi:nth-child(3){animation-delay:.16s}.db-kpi:nth-child(4){animation-delay:.22s}.db-kpi--kritisk,.db-kpi--hoy{--kpi-accent:var(--kpi-red);--kpi-badge-bg:var(--kpi-red-badge-bg);--kpi-badge-fg:var(--kpi-red-badge-fg)}.db-kpi--medium{--kpi-accent:var(--kpi-amber);--kpi-badge-bg:var(--status-warn-bg);--kpi-badge-fg:var(--kpi-amber-badge-fg)}.db-kpi--lav,.db-kpi--teal{--kpi-accent:var(--kpi-teal);--kpi-badge-bg:var(--snapper-teal-light);--kpi-badge-fg:var(--snapper-teal)}.db-kpi--blue{--kpi-accent:var(--kpi-blue);--kpi-badge-bg:var(--prio-medium-chip-bg);--kpi-badge-fg:var(--prio-medium-solid)}.db-kpi__head{font-size:10.5px;font-weight:var(--font-weight-bold);color:var(--snapper-text-subtle);text-transform:uppercase;letter-spacing:.08em;margin:0 0 16px}.db-kpi__ring-row{align-items:center;gap:14px;margin-bottom:4px;display:flex}.db-kpi__ring{flex-shrink:0;width:60px;height:60px;position:relative}.db-kpi__ring-track{stroke:var(--ring-track)}.db-kpi__ring-arc{stroke:var(--kpi-accent)}.db-kpi__ring-label{font-size:13px;font-weight:var(--font-weight-extrabold);color:var(--snapper-text);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.db-kpi__sublabel{color:var(--snapper-text-subtle);margin:0 0 5px;font-size:11px}.db-kpi__badge{font-size:11px;font-weight:var(--font-weight-semibold);background:var(--kpi-badge-bg);color:var(--kpi-badge-fg);border-radius:20px;align-items:center;gap:5px;margin:0 0 16px;padding:3px 9px;display:inline-flex}.db-kpi__dot{background:currentColor;border-radius:50%;width:7px;height:7px}.db-kpi__divider{background:var(--border-divider);border:none;height:1px;margin:0 0 12px}.db-kpi__caption{color:var(--snapper-text-subtle);margin:0;font-size:11.5px;line-height:1.5}.db-kpi__count{align-items:baseline;gap:7px;margin:0 0 14px;display:flex}.db-kpi__value{font-size:38px;font-weight:var(--font-weight-extrabold);letter-spacing:-1.5px;color:var(--snapper-text);line-height:1}.db-kpi__unit{color:var(--snapper-text-subtle);font-size:12px}.db-kpi__rows{margin:0}.db-stat-row{border-bottom:1px solid var(--surface-panel);align-items:center;gap:8px;padding:5px 0;font-size:12.5px;display:flex}.db-stat-row:last-child{border-bottom:none}.db-stat-row__label{color:var(--text-dim);flex:1;align-items:center;gap:8px;display:flex}.db-stat-row__icon{flex-shrink:0}.db-stat-row__icon--check{color:var(--snapper-teal)}.db-stat-row__icon--star,.db-stat-row__icon--trend{color:var(--prio-kritisk-solid)}.db-stat-row__value{font-size:13px;font-weight:var(--font-weight-bold);color:var(--snapper-text);margin:0}.db-stat-row__value--danger{color:var(--prio-kritisk-accent)}.db-chart{background:var(--snapper-surface);border:1px solid var(--border-soft);box-shadow:var(--shadow-xs);border-radius:14px;overflow:hidden}.db-chart__head{border-bottom:1px solid var(--border-divider);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px 0;display:flex}.db-chart__eyebrow{font-size:10.5px;font-weight:var(--font-weight-bold);color:var(--snapper-text-subtle);text-transform:uppercase;letter-spacing:.06em;margin:0 0 3px}.db-chart__tabs{align-items:center;gap:2px;display:flex}.db-tab{height:34px;font-family:var(--font-sans);font-size:13px;font-weight:var(--font-weight-medium);color:var(--text-dim);cursor:pointer;transition:color var(--duration-control) ease, border-bottom-color var(--duration-control) ease;background:0 0;border:none;border-bottom:2.5px solid #0000;border-radius:0;margin-bottom:-1px;margin-right:2px;padding:0 16px}.db-tab:hover:not(.db-tab--active){color:var(--snapper-text);border-bottom-color:var(--border-open)}.db-tab--active{color:var(--snapper-nav);font-weight:var(--font-weight-bold);border-bottom-color:var(--snapper-teal)}.db-chart__head-right{align-items:center;gap:16px;margin-bottom:16px;display:flex}.db-chart__fullscreen{background:var(--snapper-surface);border:1px solid var(--border-soft);border-radius:var(--radius);width:32px;height:32px;color:var(--snapper-text-soft);cursor:pointer;transition:background var(--duration-control) ease, border-color var(--duration-control) ease;justify-content:center;align-items:center;padding:0;display:inline-flex}.db-chart__fullscreen:hover{background:var(--surface-panel);border-color:var(--neutral-teal-mid)}.db-chart__panel,.db-fs__panel{padding:20px 20px 16px}.db-chart__legend{flex-wrap:wrap;align-items:center;gap:16px;margin-top:10px;display:flex}.db-chart__bands{flex-wrap:wrap;align-items:center;gap:16px;margin:0;padding:0;list-style:none;display:flex}.db-chart__band{color:var(--snapper-text-soft);align-items:center;gap:5px;font-size:11px;display:flex}.db-chart__dot{background:var(--band);border-radius:50%;width:8px;height:8px}.db-chart__title-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.db-chart__title{font-size:14px;font-weight:var(--font-weight-bold);color:var(--snapper-text);margin:0}.db-chart__subtitle{color:var(--snapper-text-subtle);margin:0;font-size:11.5px}.db-chart__insights{border-top:1px solid var(--border-divider);flex-direction:column;gap:8px;margin:16px 0 0;padding:14px 0 0;list-style:none;display:flex}.db-insight{color:var(--snapper-text-soft);align-items:center;gap:10px;font-size:13px;display:flex}.db-insight__lead{font-weight:var(--font-weight-bold);color:var(--snapper-text)}.db-insight:before{width:20px;height:20px;font-size:11px;font-weight:var(--font-weight-bold);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.db-insight--alert:before{content:"!";background:var(--prio-kritisk-chip-bg);color:var(--prio-kritisk-solid)}.db-insight--ok:before{content:"✓";background:var(--prio-lav-chip-bg);color:var(--prio-lav-solid)}.db-map{grid-template-columns:auto 1fr;gap:6px 10px;display:grid}.db-map__y{flex-direction:column;justify-content:space-between;align-items:center;display:flex}.db-map__x{grid-column:2;justify-content:space-between;display:flex}.db-map__axis{font-size:9.5px;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--field-axis-text);white-space:nowrap;animation:.5s both axis-in}.db-map__axis--vertical{writing-mode:vertical-rl;transform:rotate(180deg)}.db-map__axis--title{color:var(--snapper-text-subtle)}.db-map__axis--low{color:var(--prio-lav-solid)}.db-map__axis--high{color:var(--prio-kritisk-solid)}.db-field{border-radius:10px;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));height:320px;animation:.6s both heat-in;display:grid;position:relative;overflow:hidden}.db-fs__panel .db-field{height:min(62vh,620px)}.db-field__quadrant:first-child{border-right:1px dashed var(--quadrant-line);border-bottom:1px dashed var(--quadrant-line)}.db-field__quadrant:nth-child(2){border-bottom:1px dashed var(--quadrant-line)}.db-field__quadrant:nth-child(3){border-right:1px dashed var(--quadrant-line)}.db-field__quadrant--cream{background:var(--quadrant-cream)}.db-field__quadrant--pink{background:var(--quadrant-pink)}.db-field__quadrant--mint{background:var(--quadrant-mint)}.db-field__empty{text-align:center;color:var(--snapper-text-soft);background:var(--surface-sunken);border:1px dashed var(--border-soft);border-radius:var(--radius);margin:0;padding:40px 20px;font-size:13px}.db-bubble{--bubble-fly:fly-from-bl;--bubble-pulse:none;--bubble-pulse-duration:0s;--bubble-pulse-delay:0s;background:var(--band);border:3px solid var(--bubble-ring);box-shadow:var(--shadow-md);font-family:var(--font-sans);color:var(--band-ink);cursor:pointer;opacity:0;transition:transform var(--duration-lift) ease, box-shadow var(--duration-lift) ease;animation:var(--bubble-fly) .7s cubic-bezier(.25, .8, .25, 1) both, var(--bubble-pulse) var(--bubble-pulse-duration) ease-in-out var(--bubble-pulse-delay) infinite;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:4px;display:flex;position:absolute;transform:translate(-50%,-50%)}.db-bubble:hover{z-index:1;transform:translate(-50%,-50%)scale(1.1)}.db-bubble:focus-visible{box-shadow:var(--ring-focus);z-index:1;outline:none}.db-bubble-tip{z-index:2;box-sizing:border-box;background:var(--snapper-text);width:max-content;max-width:none;color:var(--primary-foreground);font-size:12px;font-weight:var(--font-weight-medium);white-space:normal;opacity:0;pointer-events:none;transition:opacity var(--duration-hover) ease;border-radius:6px;flex-direction:column;padding:7px 10px;line-height:1.35;display:flex;position:absolute;overflow:hidden}.db-bubble-tip p{flex-shrink:0;margin:0}.db-bubble-tip p:nth-child(2):not(:last-child){flex-shrink:1;min-height:0;overflow:hidden}.db-bubble-tip p:last-child{opacity:.8;margin-top:2px}.db-bubble:focus-visible+.db-bubble-tip{opacity:1}@media (hover:hover){.db-bubble:hover+.db-bubble-tip{opacity:1}}.db-bubble__label{max-width:100%;font-size:10px;font-weight:var(--font-weight-semibold);text-align:center;pointer-events:none;line-height:1.1;overflow:hidden}.db-bubble__figure{font-size:18px;font-weight:var(--font-weight-bold);pointer-events:none;line-height:1}.db-bubble--kritisk{--bubble-pulse:pulse-red;--bubble-pulse-duration:2.6s;--bubble-pulse-delay:1.4s}.db-bubble--hoy{--bubble-pulse:pulse-orange;--bubble-pulse-duration:3s;--bubble-pulse-delay:1.6s}.db-bubble--fly-bl{--bubble-fly:fly-from-bl}.db-bubble--fly-b{--bubble-fly:fly-from-b}.db-bubble--fly-tl{--bubble-fly:fly-from-tl}.db-bubble--fly-tr{--bubble-fly:fly-from-tr}.db-bubble--fly-br{--bubble-fly:fly-from-br}.db-fs__overlay{z-index:9000;background:var(--overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:fixed;inset:0}.db-fs__card{z-index:9001;background:var(--snapper-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);flex-direction:column;animation:.22s both fs-card-in;display:flex;position:fixed;inset:16px;overflow:hidden}.db-fs__head{border-bottom:1px solid var(--border-divider);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.db-fs__close{background:var(--snapper-surface);border:1px solid var(--border-soft);border-radius:var(--radius);height:32px;font-family:var(--font-sans);font-size:12px;font-weight:var(--font-weight-semibold);color:var(--snapper-text-soft);cursor:pointer;transition:background var(--duration-control) ease, border-color var(--duration-control) ease;padding:0 14px}.db-fs__close:hover{background:var(--prio-kritisk-chip-bg);border-color:var(--prio-kritisk-chip-border)}.db-fs__panel{flex:1;overflow:auto}.db-table{background:var(--snapper-surface);border:1px solid var(--border-soft);box-shadow:var(--shadow-xs);border-radius:14px;overflow:hidden}.db-table__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.db-table__tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dbt-tool{background:var(--snapper-surface);border:1px solid var(--border-soft);border-radius:var(--radius);height:34px;font-family:var(--font-sans);font-size:13px;font-weight:var(--font-weight-medium);color:var(--snapper-text-soft);cursor:pointer;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.dbt-tool:hover,.dbt-tool--active{border-color:var(--neutral-teal-mid);color:var(--snapper-text)}.dbt-tool__count{background:var(--snapper-nav);min-width:18px;height:18px;color:var(--snapper-surface);font-size:11px;font-weight:var(--font-weight-bold);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.dbt-search{border:1px solid var(--border-soft);border-radius:var(--radius);width:200px;height:34px;color:var(--snapper-text-muted);align-items:center;gap:8px;padding:0 12px;display:inline-flex}.dbt-search:focus-within{border-color:var(--snapper-teal)}.dbt-search__input{width:100%;font-family:var(--font-sans);color:var(--snapper-text);background:0 0;border:none;outline:none;font-size:13px}.dbt-filter{z-index:50;background:var(--snapper-surface);border:1px solid var(--border-soft);border-radius:var(--radius);width:240px;box-shadow:var(--shadow-lg);flex-direction:column;gap:12px;padding:14px;display:flex}.dbt-filter__field{flex-direction:column;gap:4px;display:flex}.dbt-filter__label{font-size:11px;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--snapper-text-subtle)}.dbt-filter__select{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--snapper-surface);height:34px;font-family:var(--font-sans);color:var(--snapper-text);padding:0 8px;font-size:13px}.dbt-filter__reset{font-family:var(--font-sans);font-size:12px;font-weight:var(--font-weight-semibold);color:var(--snapper-teal);cursor:pointer;background:0 0;border:none;align-self:flex-end;padding:0}.db-table__pick{background:var(--surface-sunken);border-top:1px solid var(--border-divider);color:var(--snapper-text-soft);align-items:center;gap:12px;margin:0;padding:8px 20px;font-size:13px;display:flex}.db-table__pick-clear{font-family:var(--font-sans);font-size:13px;font-weight:var(--font-weight-semibold);color:var(--snapper-teal);cursor:pointer;background:0 0;border:none;padding:0}.db-table__tabs{display:flex}.db-tbl-tab{border:1px solid var(--border-soft);height:34px;font-family:var(--font-sans);font-size:13px;font-weight:var(--font-weight-semibold);color:var(--snapper-text);cursor:pointer;transition:background var(--duration-control) ease, border-color var(--duration-control) ease, color var(--duration-control) ease;background:0 0;border-right:none;padding:0 14px}.db-tbl-tab:first-child{border-radius:6px 0 0 6px}.db-tbl-tab:last-child{border-right:1px solid var(--border-soft);border-radius:0 6px 6px 0}.db-tbl-tab:hover:not(.db-tbl-tab--active){background:var(--surface-option-hover)}.db-tbl-tab--active{background:var(--snapper-nav);border-color:var(--snapper-nav);color:var(--snapper-surface);font-weight:var(--font-weight-semibold)}.db-table__scroll-hint{border-bottom:1px solid var(--border-divider);color:var(--snapper-text-soft);margin:0;padding:8px 20px;font-size:12px;display:none}.db-table__empty{text-align:center;color:var(--snapper-text-soft);margin:0;padding:28px;font-size:13px}.dbt-columns,.dbt-group,.dbt-row__main{gap:7px;padding-right:14px}.dbt-columns{padding-block:12px;background:var(--surface-sunken);border-top:1px solid var(--border-divider);border-bottom:1px solid var(--border-inner);font-size:11px;font-weight:var(--font-weight-bold);color:var(--snapper-text-subtle);text-transform:uppercase;letter-spacing:.06em;align-items:center;padding-left:30px;display:flex}.dbt-columns .dbt-col{font-size:inherit;color:inherit}.dbt-columns__label{flex:1;min-width:200px}.dbt-rows{margin:0;padding:0;list-style:none}.dbt-row{border-bottom:1px solid var(--border-soft)}.dbt-row:last-child{border-bottom:none}.dbt-row--level-1{background:var(--surface-sunken)}.dbt-row--level-2{background:var(--surface-hover-cool)}.dbt-row__main{padding-block:11px;width:100%;font-family:var(--font-sans);color:var(--snapper-text);text-align:left;cursor:pointer;transition:background var(--duration-hover) ease;background:0 0;border:none;align-items:center;padding-left:14px;font-size:13px;display:flex}.dbt-row__main:hover{background:var(--surface-sunken)}.dbt-row--level-1 .dbt-row__main{padding-left:34px}.dbt-row--level-2 .dbt-row__main{padding-left:54px}.dbt-row__main--leaf{cursor:default}.dbt-row__main--leaf:hover{background:0 0}.dbt-chevron{border-right:1.5px solid var(--snapper-text-muted);border-bottom:1.5px solid var(--snapper-text-muted);width:9px;height:9px;transition:transform var(--duration-chevron) ease;flex-shrink:0;transform:rotate(45deg)translate(-2px,-2px)}.dbt-chevron--open{transform:rotate(225deg)translate(-2px,-2px)}.dbt-chevron--none{border-color:#0000}.dbt-cell--label{min-width:200px;font-weight:var(--font-weight-semibold);flex:1}.dbt-col{width:120px;color:var(--snapper-text-soft);text-align:center;flex-shrink:0;justify-content:center;padding:0 6px;font-size:12.5px}.dbt-gap{align-items:center;gap:7px;display:flex}.dbt-gap__value{font-size:13px;font-weight:var(--font-weight-bold);color:var(--snapper-text);min-width:34px}.dbt-gap__track{background:var(--progress-track);border-radius:3px;width:52px;height:5px;overflow:hidden}.dbt-gap__fill{background:var(--snapper-teal);border-radius:3px;height:100%;display:block}.dbt-gap .dbt-gap__fill{background:var(--band)}.dbt-gap__value--band{color:color-mix(in srgb, var(--band) 70%, var(--snapper-text))}.dbt-count{font-weight:var(--font-weight-semibold);color:var(--snapper-text-soft)}.dbt-score{align-items:center;gap:5px;display:flex}.dbt-pill{height:22px;font-size:11.5px;font-weight:var(--font-weight-semibold);border-radius:100px;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.dbt-pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.dbt-pill--kritisk{background:var(--prio-kritisk-chip-bg);color:var(--prio-kritisk-solid)}.dbt-pill--hoy{background:var(--prio-hoy-chip-bg);color:var(--prio-hoy-solid)}.dbt-pill--medium{background:var(--prio-medium-chip-bg);color:var(--prio-medium-solid)}.dbt-pill--lav{background:var(--prio-lav-chip-bg);color:var(--prio-lav-solid)}.dbt-pill--none{background:var(--surface-panel);color:var(--text-dim)}.dbt-risk{border-radius:var(--radius-sm);min-width:34px;height:22px;font-size:13px;font-weight:var(--font-weight-bold);background:var(--band);color:var(--band-ink);justify-content:center;align-items:center;padding:0 8px;display:inline-flex}.dbt-band{font-size:11px;font-weight:var(--font-weight-bold);color:color-mix(in srgb, var(--band) 70%, var(--snapper-text))}.dbt-level{height:22px;font-size:11.5px;font-weight:var(--font-weight-semibold);border:1px solid;border-radius:4px;align-items:center;padding:0 8px;display:inline-flex}.dbt-level--innehar_ikke{background:var(--prio-kritisk-chip-bg);border-color:var(--prio-kritisk-chip-border);color:var(--prio-kritisk-solid)}.dbt-level--lav{background:var(--prio-hoy-chip-bg);border-color:var(--prio-hoy-chip-border);color:var(--prio-hoy-solid)}.dbt-level--medium{background:var(--prio-medium-chip-bg);border-color:var(--prio-medium-chip-border);color:var(--prio-medium-solid)}.dbt-level--hoyt{background:var(--prio-lav-chip-bg);border-color:var(--prio-lav-chip-border);color:var(--prio-lav-solid)}.dbt-dept-tag{border-left:3px solid var(--prio-kritisk-solid);background:var(--prio-kritisk-chip-bg);height:22px;font-size:12px;font-weight:var(--font-weight-semibold);color:var(--prio-kritisk-solid);border-radius:0 4px 4px 0;align-items:center;padding:0 8px;display:inline-flex}.dbt-group{padding-block:7px;background:var(--surface-row-alt);border-top:1px solid var(--border-soft);font-size:11px;font-weight:var(--font-weight-bold);color:var(--snapper-text-subtle);text-transform:uppercase;letter-spacing:.04em;align-items:center;margin:0;padding-left:44px;display:flex}.dbt-group__label{flex:1;min-width:0}.dbt-group .dbt-col{font-size:10.5px;font-weight:var(--font-weight-bold);color:var(--snapper-text-subtle)}@keyframes kpi-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes heat-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur()}}@keyframes axis-in{0%{opacity:0}to{opacity:1}}@keyframes fly-from-bl{0%{opacity:0;transform:translate(calc(80px - 50%),calc(100px - 50%))scale(.3)}70%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes fly-from-tr{0%{opacity:0;transform:translate(calc(-50% - 90px),calc(80px - 50%))scale(.3)}70%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes fly-from-tl{0%{opacity:0;transform:translate(calc(90px - 50%),calc(80px - 50%))scale(.3)}70%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes fly-from-br{0%{opacity:0;transform:translate(calc(-50% - 80px),calc(-50% - 80px))scale(.3)}70%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes fly-from-b{0%{opacity:0;transform:translate(-50%,calc(-50% - 120px))scale(.3)}70%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes pulse-red{0%,to{box-shadow:0 0 0 0 var(--pulse-red-strong), 0 4px 16px var(--pulse-red-soft)}50%{box-shadow:0 0 0 12px var(--pulse-red-clear), 0 4px 16px var(--pulse-red-soft)}}@keyframes pulse-orange{0%,to{box-shadow:0 0 0 0 var(--pulse-orange-strong), 0 3px 12px var(--pulse-orange-soft)}50%{box-shadow:0 0 0 9px var(--pulse-orange-clear), 0 3px 12px var(--pulse-orange-soft)}}@keyframes fs-card-in{0%{opacity:0;transform:scale(.96)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (prefers-reduced-motion:reduce){.db-kpi,.db-field,.db-map__axis,.db-bubble,.db-fs__card{opacity:1;animation:none}.db-bubble:hover{transform:translate(-50%,-50%)}}@media (width<=60rem){.db-kpis{grid-template-columns:repeat(2,1fr)}.db-table__tabs{width:100%}.db-tbl-tab{flex:1;min-width:0;height:auto;min-height:34px;padding:4px 8px}.dbt-col{width:96px}.db-table__panel{overflow-x:auto}.dbt-columns,.dbt-group,.dbt-row__main{min-width:760px}.db-chart__head{flex-wrap:wrap}.db-chart__head-right{margin-bottom:12px}}@media (width<=50rem){.db-table__scroll-hint{display:block}}@media (width<=40rem){.db-kpis{grid-template-columns:1fr}.db-table__tools{width:100%}.dbt-search{flex:1;width:auto}.db-tbl-tab{padding:4px;font-size:12px}.db-tab{padding:0 8px}}.snapper-nav__count{background:var(--snapper-teal);min-width:18px;height:18px;color:var(--primary-foreground);font-size:11px;font-weight:var(--font-weight-bold);border-radius:9px;justify-content:center;align-items:center;margin-left:6px;padding:0 5px;display:inline-flex}.admin-card{margin-top:24px}.admin-panel__filter{color:var(--snapper-text-soft);align-items:center;gap:8px;margin:16px 20px 8px;font-size:13px;display:inline-flex}.admin-panel__filter .form-select{min-width:180px}.admin-panel__actions{white-space:nowrap;gap:8px;display:flex}.admin-panel__group{border-left:3px solid var(--snapper-teal)}.admin-panel__group-heading{font-size:12px;font-weight:var(--font-weight-semibold);text-align:left;color:var(--snapper-text-soft);padding:8px 12px}.admin-panel__flag{border-radius:var(--radius-sm);background:var(--status-warning-bg);color:var(--status-warning-fg);font-size:12px;font-weight:var(--font-weight-semibold);margin-top:4px;padding:2px 8px;display:inline-block}.account-reports{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.account-reports__item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.account-reports__actions{gap:8px;display:inline-flex}.account-reports__note{color:var(--snapper-text-soft);font-size:13px}.access-summary{border:1px solid var(--snapper-border);border-radius:var(--radius-md);background:var(--snapper-surface);flex-wrap:wrap;gap:8px 32px;margin:20px 0 0;padding:14px 20px;display:flex}.access-summary dt{color:var(--snapper-text-soft);font-size:12px}.access-summary dd{font-size:14px;font-weight:var(--font-weight-medium);color:var(--snapper-text);margin:2px 0 0}.access-person__name{font-weight:var(--font-weight-medium)}.access-person__email{color:var(--snapper-text-soft);font-size:12.5px}.access-detail__date{color:var(--snapper-text-soft)}.access-chip{font-size:12px;font-weight:var(--font-weight-medium);background:var(--status-info-bg);color:var(--status-info-fg);border-radius:999px;padding:2px 10px;display:inline-block}.access-chip--tentative{background:var(--status-warning-bg);color:var(--status-warning-fg)}.access-chip--approved{background:var(--status-success-bg);color:var(--status-success-fg)}.access-chip--rejected,.access-chip--removed{background:var(--status-danger-bg);color:var(--status-danger-fg)}.access-menu__list{z-index:30;background:var(--snapper-surface);border:1px solid var(--snapper-border);border-radius:var(--radius-sm);min-width:160px;box-shadow:var(--shadow-menu);padding:4px}.access-menu__options{margin:0;padding:0;list-style:none}.access-menu__item{border-radius:var(--radius-sm);width:100%;font-family:var(--font-sans);text-align:left;color:var(--snapper-text);cursor:pointer;background:0 0;border:none;padding:8px 10px;font-size:13.5px;display:block}.access-menu__item:hover{background:var(--surface-option-hover)}.customer-badge--empty{background:var(--status-warn-bg);color:var(--status-warn-fg);box-shadow:inset 0 0 0 1px var(--status-warn)}.customer-badge__trigger{border-radius:var(--radius-sm);color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin:0 -4px 0 0;padding:2px 4px 2px 0;display:inline-flex}.customer-badge__trigger:focus-visible{outline-offset:1px;outline:2px solid}.customer-badge--bare{color:var(--primary-foreground);background:0 0;padding:0 4px}.customer-badge--bare .customer-badge__trigger{margin:0;padding:2px}.credits-explainer-popover{z-index:40;border:1px solid var(--snapper-border-mid);border-radius:var(--radius);background:var(--snapper-surface);width:min(360px,100vw - 32px);color:var(--snapper-text);box-shadow:var(--shadow-md);padding:1rem 1.125rem}.credits-explainer p{margin:0 0 .625rem;font-size:.875rem;line-height:1.45}.credits-explainer__title{font-size:1rem;font-weight:var(--font-weight-semibold);margin:0 0 .75rem}.credits-explainer__contact{flex-wrap:wrap;align-items:center;gap:.375rem;margin-bottom:0;display:flex}.credits-explainer__copy{border:1px solid var(--snapper-border-mid);border-radius:var(--radius-sm);background:var(--snapper-surface);color:var(--snapper-text-soft);font-family:var(--font-sans);cursor:pointer;padding:.125rem .625rem;font-size:.75rem}.credits-explainer__copied{color:var(--snapper-teal);font-size:.75rem}.contact{font-weight:var(--font-weight-semibold);-webkit-user-select:all;user-select:all}.credits-banner{border:1px solid var(--status-warn);border-radius:var(--radius-sm);margin:0 0 1rem;padding:.75rem 1rem;font-size:.875rem}.credits-banner p{margin:0}.credits-banner p+p{margin-top:.25rem}.credits-banner--warn{background:var(--status-warn-bg);color:var(--status-warn-fg)}.credits-banner a{color:inherit;font-weight:var(--font-weight-semibold)}.project-tag{height:20px;font-size:11px;font-weight:var(--font-weight-semibold);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;display:inline-flex}.project-tag--ok{background:var(--snapper-teal-light);color:var(--snapper-teal)}.project-tag--warn{background:var(--status-warn-bg);color:var(--status-warn-fg)}.reasoned{flex-direction:column;align-items:flex-start;gap:4px;display:inline-flex}.reasoned--block{align-items:stretch;display:flex}.reasoned__text{max-width:24rem;color:var(--status-warn-fg);font-size:.75rem;font-weight:var(--font-weight-medium);line-height:1.35}.reasoned__text:empty{display:none}.credits-disclosure{margin-top:.75rem}.credits-disclosure__toggle{color:var(--snapper-teal);font-family:var(--font-sans);cursor:pointer;background:0 0;border:0;padding:0;font-size:.875rem;text-decoration:underline}.credits-disclosure__panel{border:1px solid var(--snapper-border-mid);border-radius:var(--radius);background:var(--snapper-bg-subtle);margin-top:.75rem;padding:.875rem 1rem}
