:root{--sauter-blue: #0082c8;--sauter-blue-light: #99c7ed;--sauter-yellow: #f8de22;--sauter-slate: #44546a;--sauter-blue-deep: #003b78;--sauter-blue-night: #121f2c;--sauter-now-from: #357bbc;--sauter-now-to: #4ca6dd;--header-from: #357bbc;--header-to: #479cd0;--blue-50: #e6f3fb;--blue-100: #cce7f7;--blue-200: #99c7ed;--blue-300: #66aae3;--blue-400: #338cd5;--blue-500: #0082c8;--blue-600: #006aa6;--blue-700: #00528b;--blue-800: #003b78;--blue-900: #002851;--yellow-300: #fced7a;--yellow-400: #fae64d;--yellow-500: #f8de22;--yellow-600: #e6c70a;--yellow-700: #b89e00;--white: #ffffff;--neutral-50: #f5f7f9;--neutral-100: #eaeef2;--neutral-200: #d8dee6;--neutral-300: #bcc6d1;--neutral-400: #97a3b2;--neutral-500: #6f7d8f;--neutral-600: #54637a;--neutral-700: #44546a;--neutral-800: #313e50;--neutral-900: #1d2733;--black: #0d141c;--status-ok-bg: #e3f4ec;--status-ok: #1f8a5b;--status-info-bg: #e6f3fb;--status-info: #0082c8;--status-warning-bg: #fdf4d6;--status-warning: #b07900;--status-alarm-bg: #fbe6e6;--status-alarm: #c4362f;--chart-good: #0f9d58;--chart-warn: #f28c00;--chart-bad: #d92b20;--brand-primary: var(--sauter-blue);--brand-primary-hover:var(--blue-600);--brand-primary-press:var(--blue-700);--brand-accent: var(--sauter-yellow);--brand-accent-press: var(--yellow-600);--surface-page: var(--neutral-50);--surface-card: var(--white);--surface-sunken: var(--neutral-100);--surface-raised: var(--white);--surface-inverse: var(--sauter-blue-night);--surface-brand: var(--sauter-blue);--surface-brand-deep: var(--sauter-blue-deep);--text-primary: var(--neutral-900);--text-secondary: var(--neutral-600);--text-muted: var(--neutral-500);--text-inverse: var(--white);--text-on-brand: var(--white);--text-on-dark: var(--sauter-blue-light);--text-link: var(--sauter-blue);--border-subtle: var(--neutral-200);--border-default: var(--neutral-300);--border-strong: var(--neutral-400);--border-brand: var(--sauter-blue);--focus-ring: var(--blue-400);--accent-keyline: var(--sauter-yellow)}:root{--font-display: "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SF Mono", "Consolas", monospace;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-display: 800;--text-2xs: .6875rem;--text-xs: .75rem;--text-sm: .875rem;--text-base:1rem;--text-md: 1.125rem;--text-lg: 1.375rem;--text-xl: 1.75rem;--text-2xl: 2.25rem;--text-3xl: 3rem;--text-4xl: 4rem;--leading-tight: 1.1;--leading-snug: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.65;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-caps: .08em;--type-display: var(--weight-display) var(--text-4xl)/var(--leading-tight) var(--font-display);--type-hero: var(--weight-bold) var(--text-3xl)/var(--leading-tight) var(--font-display);--type-title: var(--weight-bold) var(--text-2xl)/var(--leading-snug) var(--font-display);--type-section: var(--weight-semibold) var(--text-xl)/var(--leading-snug) var(--font-display);--type-card-title: var(--weight-semibold) var(--text-lg)/var(--leading-snug) var(--font-display);--type-lead: var(--weight-regular) var(--text-md)/var(--leading-relaxed) var(--font-body);--type-body: var(--weight-regular) var(--text-base)/var(--leading-normal) var(--font-body);--type-body-sm: var(--weight-regular) var(--text-sm)/var(--leading-normal) var(--font-body);--type-caption: var(--weight-regular) var(--text-xs)/var(--leading-normal) var(--font-body);--type-data: var(--weight-medium) var(--text-base)/var(--leading-snug) var(--font-mono)}:root{--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.5rem;--space-8: 3rem;--space-9: 4rem;--space-10: 5rem;--space-12: 7.5rem;--radius-xs: 2px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-xl: 16px;--radius-pill: 999px;--control-sm: 32px;--control-md: 40px;--control-lg: 48px;--border-hair: 1px;--border-thick: 2px;--keyline-w: 3px;--container-max: 1200px;--container-wide: 1440px;--sidebar-w: 248px}:root{--shadow-xs: 0 1px 2px rgba(29, 39, 51, .06);--shadow-sm: 0 1px 3px rgba(29, 39, 51, .08), 0 1px 2px rgba(29, 39, 51, .06);--shadow-md: 0 4px 12px rgba(29, 39, 51, .1), 0 1px 3px rgba(29, 39, 51, .06);--shadow-lg: 0 12px 28px rgba(29, 39, 51, .14), 0 2px 6px rgba(29, 39, 51, .08);--shadow-xl: 0 24px 48px rgba(29, 39, 51, .18);--shadow-focus: 0 0 0 3px rgba(51, 140, 213, .45);--ease-standard: cubic-bezier(.2, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--duration-fast: .12s;--duration-normal: .2s;--duration-slow: .32s}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/archivo-var-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/archivo-var-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/ibm-plex-sans-var-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/ibm-plex-sans-var-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--font-data: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif}:root{--ds-danger-hover: #a82c26}.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-md);font-family:var(--font-body);font-weight:var(--weight-semibold);line-height:1;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.ds-btn--sm{height:var(--control-sm);padding:0 var(--space-3);font-size:var(--text-sm)}.ds-btn--md{height:var(--control-md);padding:0 var(--space-5);font-size:var(--text-base)}.ds-btn--lg{height:var(--control-lg);padding:0 var(--space-6);font-size:var(--text-md)}.ds-btn--full{width:100%}.ds-btn--primary{background:var(--brand-primary);color:var(--text-on-brand);border:var(--border-hair) solid var(--brand-primary)}.ds-btn--primary:hover:not(:disabled){background:var(--brand-primary-hover);border-color:var(--brand-primary-hover)}.ds-btn--primary:active:not(:disabled){background:var(--brand-primary-press)}.ds-btn--secondary{background:var(--surface-card);color:var(--brand-primary);border:var(--border-hair) solid var(--border-default)}.ds-btn--secondary:hover:not(:disabled){background:var(--surface-sunken)}.ds-btn--ghost{background:transparent;color:var(--brand-primary);border:var(--border-hair) solid transparent}.ds-btn--ghost:hover:not(:disabled){background:var(--blue-50)}.ds-btn--accent{background:var(--brand-accent);color:var(--neutral-900);border:var(--border-hair) solid var(--brand-accent)}.ds-btn--accent:hover:not(:disabled){background:var(--brand-accent-press);border-color:var(--brand-accent-press)}.ds-btn--danger{background:var(--status-alarm);color:var(--text-inverse);border:var(--border-hair) solid var(--status-alarm)}.ds-btn--danger:hover:not(:disabled){background:var(--ds-danger-hover);border-color:var(--ds-danger-hover)}.ds-btn:active:not(:disabled){transform:translateY(1px)}.ds-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ds-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.ds-iconbtn{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard)}.ds-iconbtn--sm{width:var(--control-sm);height:var(--control-sm)}.ds-iconbtn--md{width:var(--control-md);height:var(--control-md)}.ds-iconbtn--lg{width:var(--control-lg);height:var(--control-lg)}.ds-iconbtn--ghost{background:transparent;color:var(--text-secondary);border:var(--border-hair) solid transparent}.ds-iconbtn--outline{background:var(--surface-card);color:var(--brand-primary);border:var(--border-hair) solid var(--border-default)}.ds-iconbtn--solid{background:var(--brand-primary);color:var(--text-inverse);border:var(--border-hair) solid var(--brand-primary)}.ds-iconbtn--ghost:hover:not(:disabled),.ds-iconbtn--outline:hover:not(:disabled){background:var(--surface-sunken)}.ds-iconbtn--solid:hover:not(:disabled){background:var(--brand-primary-hover)}.ds-iconbtn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.ds-iconbtn:disabled{opacity:.45;cursor:not-allowed}.ds-field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;font-family:var(--font-body)}.ds-field__label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary)}.ds-field__hint{font-size:var(--text-xs);color:var(--text-muted)}.ds-field__error{font-size:var(--text-xs);color:var(--status-alarm)}.ds-input{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);background:var(--surface-card);border:var(--border-hair) solid var(--border-default);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.ds-input--sm{height:var(--control-sm)}.ds-input--md{height:var(--control-md)}.ds-input--lg{height:var(--control-lg)}.ds-input:focus-within{border-color:var(--brand-primary);box-shadow:var(--shadow-focus)}.ds-input--error{border-color:var(--status-alarm)}.ds-input--disabled{background:var(--surface-sunken)}.ds-input__icon{display:inline-flex;flex:none;color:var(--text-muted)}.ds-input input{flex:1;min-width:0;min-height:0;padding:0;border:none;outline:none;background:transparent;font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary)}.ds-input input:focus-visible{box-shadow:none}.ds-select{position:relative;display:flex;align-items:center}.ds-select select{appearance:none;-webkit-appearance:none;width:100%;min-height:0;padding:0 var(--space-7) 0 var(--space-3);background:var(--surface-card);border:var(--border-hair) solid var(--border-default);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary);cursor:pointer;outline:none;transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.ds-select--sm select{height:var(--control-sm)}.ds-select--md select{height:var(--control-md)}.ds-select--lg select{height:var(--control-lg)}.ds-select select:focus{border-color:var(--brand-primary);box-shadow:var(--shadow-focus)}.ds-select select:disabled{background:var(--surface-sunken);cursor:not-allowed}.ds-select__chevron{position:absolute;right:var(--space-3);pointer-events:none;color:var(--text-muted)}.ds-checkbox{display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary);cursor:pointer}.ds-checkbox--disabled{opacity:.5;cursor:not-allowed}.ds-checkbox__box{position:relative;width:20px;height:20px;flex:none;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-card);border:var(--border-hair) solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text-inverse);transition:background var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.ds-checkbox__box:has(input:checked){background:var(--brand-primary);border-color:var(--brand-primary)}.ds-checkbox__box:has(input:focus-visible){box-shadow:var(--shadow-focus)}.ds-checkbox__mark{opacity:0;transition:opacity var(--duration-fast) var(--ease-standard)}.ds-checkbox__box:has(input:checked) .ds-checkbox__mark{opacity:1}.ds-checkbox input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;opacity:0;cursor:inherit}.ds-switch{display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary);cursor:pointer}.ds-switch--disabled{opacity:.5;cursor:not-allowed}.ds-switch__track{position:relative;width:40px;height:22px;flex:none;background:var(--neutral-300);border-radius:var(--radius-pill);transition:background var(--duration-normal) var(--ease-standard)}.ds-switch__track:has(input:checked){background:var(--brand-primary)}.ds-switch__knob{position:absolute;top:2px;left:2px;width:18px;height:18px;background:var(--white);border-radius:50%;box-shadow:var(--shadow-sm);transition:left var(--duration-normal) var(--ease-out)}.ds-switch__track:has(input:checked) .ds-switch__knob{left:20px}.ds-switch input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;opacity:0;cursor:inherit}.ds-switch__track:has(input:focus-visible){box-shadow:var(--shadow-focus)}.ds-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-2);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:1}.ds-badge--neutral{background:var(--surface-sunken);color:var(--text-secondary)}.ds-badge--brand{background:var(--blue-50);color:var(--brand-primary)}.ds-badge--accent{background:var(--yellow-500);color:var(--neutral-900)}.ds-badge--ok{background:var(--status-ok-bg);color:var(--status-ok)}.ds-badge--warning{background:var(--status-warning-bg);color:var(--status-warning)}.ds-badge--alarm{background:var(--status-alarm-bg);color:var(--status-alarm)}.ds-statuspill{display:inline-flex;align-items:center;gap:var(--space-2);height:24px;white-space:nowrap;flex:none;padding:0 var(--space-3);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:1}.ds-statuspill__dot{width:8px;height:8px;flex:none;border-radius:50%;background:currentColor}.ds-statuspill--ok{background:var(--status-ok-bg);color:var(--status-ok)}.ds-statuspill--info{background:var(--status-info-bg);color:var(--status-info)}.ds-statuspill--warning{background:var(--status-warning-bg);color:var(--status-warning)}.ds-statuspill--alarm{background:var(--status-alarm-bg);color:var(--status-alarm)}.ds-statuspill--offline{background:var(--surface-sunken);color:var(--text-secondary)}.ds-statuspill--offline .ds-statuspill__dot{background:var(--neutral-400)}.ds-tag{display:inline-flex;align-items:center;gap:var(--space-2);height:26px;padding:0 var(--space-3);background:var(--surface-card);border:var(--border-hair) solid var(--border-default);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);line-height:1}.ds-tag__dot{width:8px;height:8px;flex:none;border-radius:50%}.ds-tag__remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;min-height:0;margin-left:2px;padding:0;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer}.ds-tag__remove:hover{background:var(--surface-sunken);color:var(--text-primary)}.ds-card{background:var(--surface-card);border:var(--border-hair) solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;font-family:var(--font-body)}.ds-card--keyline{border-top:var(--keyline-w) solid var(--accent-keyline)}.ds-card--hoverable{transition:transform var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard)}.ds-card--hoverable:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.ds-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:var(--border-hair) solid var(--border-subtle)}.ds-card__header>div:first-child{min-width:0}.ds-card__title{margin:0;font:var(--type-card-title);color:var(--text-primary)}.ds-card__subtitle{margin:2px 0 0;font-size:var(--text-sm);color:var(--text-secondary)}.ds-card__actions{display:flex;align-items:center;gap:var(--space-2);flex:none}.ds-metric{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);background:var(--surface-card);border:var(--border-hair) solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-family:var(--font-body)}.ds-metric__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.ds-metric__label{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-secondary)}.ds-metric__icon{display:inline-flex;flex:none;color:var(--brand-primary)}.ds-metric--warning .ds-metric__icon{color:var(--status-warning)}.ds-metric--alarm .ds-metric__icon{color:var(--status-alarm)}.ds-metric__value{display:flex;align-items:baseline;gap:var(--space-2)}.ds-metric__number{font-family:var(--font-data);font-weight:var(--weight-medium);font-size:var(--text-2xl);line-height:1;color:var(--text-primary)}.ds-metric__unit{font-family:var(--font-data);font-size:var(--text-sm);color:var(--text-muted)}.ds-metric__trend{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted)}.ds-metric__trend--up{color:var(--status-ok)}.ds-metric__trend--down{color:var(--status-alarm)}.ds-tabs{display:flex;gap:var(--space-5);border-bottom:var(--border-hair) solid var(--border-subtle);font-family:var(--font-body)}.ds-tabs__tab{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);min-height:0;margin-bottom:-1px;padding:var(--space-3) 0;background:transparent;border:none;border-bottom:var(--keyline-w) solid transparent;border-radius:0;font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-secondary);cursor:pointer;transition:color var(--duration-fast) var(--ease-standard)}.ds-tabs__tab:hover{background:transparent;color:var(--text-primary)}.ds-tabs__tab[aria-selected=true]{font-weight:var(--weight-semibold);color:var(--text-primary);border-bottom-color:var(--accent-keyline)}.ds-tabs__badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.ds-tabs__tab[aria-selected=true] .ds-tabs__badge{background:var(--blue-50);color:var(--brand-primary)}.ds-avatar{position:relative;display:inline-flex;flex:none}.ds-avatar__face{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;background:var(--sauter-blue);color:var(--text-inverse);font-family:var(--font-body);font-weight:var(--weight-semibold)}.ds-avatar__face img{width:100%;height:100%;object-fit:cover}.ds-avatar--image .ds-avatar__face{background:var(--surface-sunken)}.ds-avatar__status{position:absolute;right:0;bottom:0;border-radius:50%;border:var(--border-thick) solid var(--surface-card)}.ds-avatar__status--ok{background:var(--status-ok)}.ds-avatar__status--warning{background:var(--status-warning)}.ds-avatar__status--alarm{background:var(--status-alarm)}.ds-avatar__status--offline{background:var(--neutral-400)}.ds-overflow{position:relative;display:inline-flex}.ds-overflow__trigger{display:inline-grid;place-items:center;width:36px;height:36px;border:var(--border-hair) solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.ds-overflow__trigger:hover,.ds-overflow__trigger--open{background:var(--surface-sunken);color:var(--text-primary)}.ds-overflow__menu{position:absolute;top:calc(100% + var(--space-2));z-index:20;min-width:220px;padding:var(--space-2);display:grid;gap:2px;border:var(--border-hair) solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-card);box-shadow:var(--shadow-lg)}.ds-overflow__menu--end{right:0}.ds-overflow__menu--start{left:0}.ds-overflow__item{padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-sm);background:none;text-align:left;font:inherit;font-size:var(--text-sm);color:var(--text-primary);cursor:pointer}.ds-overflow__item:hover:not(:disabled){background:var(--surface-sunken)}.ds-overflow__item:disabled{color:var(--text-muted);cursor:not-allowed}.ds-overflow__item--danger{color:var(--status-alarm)}.ds-overflow__item--danger:hover:not(:disabled){background:var(--status-alarm-bg)}.ds-hint{position:relative;display:inline-flex;margin-left:var(--space-2)}.ds-hint__button{width:1.05rem;height:1.05rem;padding:0;flex:none;display:grid;place-items:center;cursor:pointer;border:1px solid var(--border-strong);border-radius:50%;background:transparent;color:var(--text-muted);font:700 .7rem/1 var(--font-sans)}.ds-hint__button:hover,.ds-hint__button:focus-visible{border-color:var(--brand-primary);color:var(--brand-primary)}.ds-hint__bubble{position:absolute;left:0;top:calc(100% + var(--space-2));z-index:20;width:max-content;max-width:min(22rem,70vw);padding:var(--space-3) var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-card);box-shadow:var(--shadow-md, 0 6px 20px rgb(0 0 0 / .12));color:var(--text-secondary);font-size:var(--text-sm);font-weight:400;line-height:1.5;text-transform:none;letter-spacing:normal;opacity:0;visibility:hidden}.ds-hint:hover .ds-hint__bubble,.ds-hint__button:focus-visible+.ds-hint__bubble,.ds-hint.is-pinned .ds-hint__bubble{opacity:1;visibility:visible}.ds-field--third .ds-hint__bubble,.ds-field--quarter .ds-hint__bubble{max-width:min(18rem,70vw)}*{box-sizing:border-box}:root{--shadow-sm: 0 3px 10px rgba(29, 39, 51, .11), 0 1px 3px rgba(29, 39, 51, .07)}.sheet{background:var(--surface-card, #fff);border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-lg, 10px);box-shadow:var(--shadow-sm, 0 1px 3px rgb(29 39 51 / 8%))}body{margin:0;background:var(--white, #fff);color:var(--text-primary, #1d2733);font:400 1rem/1.6 var(--font-body, system-ui, sans-serif);-webkit-font-smoothing:antialiased}.shell{min-height:100vh;display:flex;flex-direction:column;overflow-x:clip}.shell-header{position:relative;background:linear-gradient(118deg,var(--header-from, #1c5c96) 0%,var(--header-to, #2a78b2) 100%);color:#fff;border-bottom:var(--keyline-w, 3px) solid var(--accent-keyline, #f8de22)}.shell-header:after{content:"";position:absolute;inset:0;background:url(/assets/sauter-mark-white.png) no-repeat;background-position:right -2.5rem center;background-size:9rem 9rem;opacity:.13;pointer-events:none}:root{--shell-max: 96rem}.shell-header-inner,.shell-main{max-width:var(--shell-max);margin:0 auto;padding:0 1.5rem;width:100%}.shell-header-inner{position:relative;z-index:1;display:flex;align-items:center;gap:1.5rem;padding-block:1.375rem}.shell-brand{display:flex;align-items:center;gap:.875rem}.shell-brand img{height:1.75rem}.shell-brand:after{content:"";order:1;inline-size:1px;block-size:1.5rem;background:#ffffff47}.shell-title{order:2;font:var(--weight-bold, 700) 1.25rem/1.2 var(--font-display, sans-serif);letter-spacing:var(--tracking-tight, -.02em)}.shell-environment{font:500 .6875rem/1.4 var(--font-mono, monospace);letter-spacing:.08em;text-transform:uppercase;background:var(--sauter-yellow, #f8de22);color:var(--sauter-blue-night, #121f2c);padding:.15rem .5rem;border-radius:3px}.shell-account{margin-inline-start:auto;display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:#fff}.shell-main{padding-block:0 3rem;flex:1}.shell-main>h1,.shell-main>.lead:first-child,.shell-main>.signed-out{margin-block-start:2rem}.shell-nav{background:var(--surface-card, #fff);margin-inline:calc(50% - 50vw);padding-inline:calc(50vw - 50%)}.shell-nav .ds-tabs{overflow-x:auto;overflow-y:clip;overflow-clip-margin:.25rem;scrollbar-width:thin;scrollbar-color:var(--border-subtle, #d8dee6) transparent}.shell-nav .ds-tabs__tab{white-space:nowrap;flex:0 0 auto}.shell-footer{border-top:1px solid var(--border-subtle, #d8dee6);background:var(--surface-card, #fff);padding-block:1.25rem;font-size:.8125rem;color:var(--text-secondary, #54637a)}.shell-footer-inner{max-width:var(--shell-max);margin:0 auto;padding:0 1.5rem}h1{font:var(--weight-bold, 700) var(--text-2xl, 2.25rem) / var(--leading-snug, 1.25) var(--font-display, sans-serif);letter-spacing:var(--tracking-tight, -.02em);margin:0 0 .75rem}h1:before{content:"";display:block;inline-size:2.5rem;block-size:var(--keyline-w, 3px);background:var(--accent-keyline, #f8de22);margin-block-end:1rem}.lead{color:var(--text-secondary, #54637a);max-width:60ch;margin:0 0 2rem}.card-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr))}.role-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none}.definition-grid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem 1.5rem;margin:0}.definition-grid dt{font-weight:600}.definition-grid dd{margin:0;font-family:var(--font-mono, monospace);font-size:.9375rem;overflow-wrap:anywhere;min-inline-size:0}.signed-out{max-width:32rem}.error-panel{border:1px solid var(--status-alarm, #c4362f);background:var(--status-alarm-bg, #fbe6e6);border-radius:4px;padding:1rem 1.25rem;margin-bottom:1.5rem}.tab-panel{padding-block-start:2.5rem}.tab-panel>.ds-card+.ds-card{margin-block-start:1.25rem}.assignment-section{margin-bottom:2.5rem}.assignment-section h2{font:600 1.125rem/1.3 var(--font-display, sans-serif);margin:0 0 1rem}.assignment-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.card-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.card-actions:not(:last-child){margin-block-end:1rem}.catalogue-actions{margin-bottom:1.5rem}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.hint{font-size:.8125rem;color:var(--text-secondary, #54637a);margin:1rem 0 0;max-width:60ch}.hint:not(:last-child){margin-block-end:1rem}.ds-card>div>:where(:first-child){margin-block-start:0}.ds-card>div>:where(:last-child){margin-block-end:0}.shell-main{display:flex;flex-direction:column;gap:1.25rem;align-items:stretch}.shell-main>h1{margin-block-end:0}.assign-panel{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border-subtle, #d8dee6);display:grid;gap:1rem}.assign-result{display:grid;gap:.75rem}.assign-result--nobody .assign-result__headline{border-inline-start:3px solid var(--status-warning, #b8860b);background:var(--status-warning-bg, #fdf6e3);padding:.875rem 1rem;margin:0;border-radius:var(--radius-sm, 4px)}.gap-panel{border-left:3px solid var(--status-warning, #b8860b);background:var(--status-warning-bg, #fdf6e3);padding:.875rem 1rem;border-radius:0 4px 4px 0;font-size:.9375rem}.gap-note{color:var(--status-warning, #b07900);font-style:italic}.gap-panel{border-left:none;border-inline-start:3px solid var(--status-warning, #b8860b);border-radius:0;border-start-end-radius:4px;border-end-end-radius:4px}.notice-panel{border:1px solid var(--border-strong, #c8cdd4);border-inline-start:3px solid var(--brand-primary, #0082c8);background:var(--surface-sunken, #f5f7f9);padding:.875rem 1rem;border-radius:0 4px 4px 0;margin-block-end:1.5rem}.notice-panel p{margin-block:.25rem}.refusal-list{margin:0;padding-left:1.25rem;font-size:.875rem;color:var(--text-secondary, #54637a);max-height:14rem;overflow-y:auto}.refusal-list code{font-family:var(--font-mono, monospace);font-size:.8125rem}.player{display:flex;flex-direction:column;min-height:60vh;background:var(--surface-card, #fff)}.player-bar{display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--border-subtle, #d8dee6);background:var(--surface-raised, #f5f7fa)}.player-title{font-weight:600;margin-inline-end:auto}.player-loading{font-size:.875rem;color:var(--text-secondary, #54637a)}.player-frame{flex:1;width:100%;min-height:70vh;border:0}.section-heading{font:var(--weight-semibold, 600) var(--text-xl, 1.75rem) / var(--leading-snug, 1.25) var(--font-display, sans-serif);letter-spacing:var(--tracking-tight, -.02em);margin:2.5rem 0 1rem}.option-list{display:grid;gap:.5rem}.option-editor{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:end;margin-bottom:.75rem}.authored-question{padding:.875rem 0;border-bottom:1px solid var(--border-subtle, #d8dee6)}.authored-question ul{margin:.5rem 0;padding-inline-start:1.25rem}.option-correct{color:var(--status-ok, #1a7f37);font-weight:600}.language-row{display:contents}.badge-list{margin:1rem 0 0;padding-inline-start:1.25rem}.badge-list li{margin-bottom:.375rem}.package-row{padding:.75rem 0;border-top:1px solid var(--border-subtle, #d8dee6)}.package-row:first-of-type{border-top:0}.choice-list{display:flex;flex-direction:column;gap:.75rem;margin-block:.5rem .75rem}.choice{display:flex;gap:.625rem;align-items:start;padding:.75rem;border:1px solid var(--border-subtle, #d8dee6);border-radius:6px;cursor:pointer}.choice:has(input:disabled){cursor:default;background:var(--surface-sunken, #f5f7fa)}.choice:has(input:disabled)>span>strong{color:var(--text-secondary, #54637a)}.hint--blocked{display:block;margin-block-start:.35rem;color:var(--status-warning, #b07900)}.choice:has(input:checked){border-color:var(--brand-primary, #0a6ed1);background:var(--surface-sunken, #f5f7fa)}.choice input{margin-block-start:.2rem;flex:0 0 auto}.report-table{display:flex;flex-direction:column}.report-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding-block:.6rem;border-block-start:1px solid var(--border-subtle, #d8dee6)}.report-row:first-child{border-block-start:0}.ui-text-row{display:flex;flex-direction:column;gap:.35rem;padding-block:.7rem;border-block-start:1px solid var(--border-subtle, #d8dee6)}.ui-text-row:first-child{border-block-start:0}.hosted-origin{margin-block-start:.6rem;padding:.6rem .75rem;border-inline-start:3px solid var(--sauter-yellow, #f8de22);background:var(--surface-sunken, #eaeef2)}.link-button{background:none;border:0;padding:0;font:inherit;color:var(--brand-primary, #0a6ed1);cursor:pointer;text-align:start}.link-button:hover{text-decoration:underline}.h5p-editor-frame{width:100%;min-height:70vh;border:1px solid var(--border-subtle, #d8dee6);border-radius:6px;margin-block-start:.75rem}.subnav{margin-block:0 1.25rem}.subnav .ds-tabs{font-size:.9375rem;border-block-end:1px solid var(--border-subtle, #d8dee6);gap:1.25rem;overflow-x:auto;overflow-y:clip;overflow-clip-margin:.25rem;padding-block-end:1px;scrollbar-width:thin;scrollbar-color:var(--border-subtle, #d8dee6) transparent}.subnav .ds-tabs__tab{padding-block:.5rem;white-space:nowrap;flex:0 0 auto}.report-row--stacked{display:block}.disclosure{display:flex;align-items:center;gap:.625rem;width:100%;padding:.5rem 0;background:none;border:0;font:inherit;color:inherit;text-align:start;cursor:pointer}.disclosure:hover .disclosure__label{text-decoration:underline}.disclosure:focus-visible{outline:2px solid var(--brand-primary, #0a6ed1);outline-offset:2px;border-radius:4px}.disclosure__chevron{color:var(--text-secondary, #52606d);font-size:.75rem;inline-size:1rem}.disclosure__label{font-weight:600;flex:1}.disclosure__panel{padding:.75rem 0 1rem 1.625rem;border-inline-start:2px solid var(--border-subtle, #d8dee6);margin-inline-start:.4375rem}.toolbar,.filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-block-end:1rem}.filter-bar{flex-direction:column;align-items:stretch}.toolbar__count{color:var(--text-secondary, #52606d);font-size:.875rem;padding-block-end:.5rem}.chip-row,.chip-list{display:flex;flex-wrap:wrap;gap:.375rem;list-style:none;margin:0;padding:0}.chip{display:inline-flex;align-items:center;gap:.375rem;padding:.1875rem .625rem;border:1px solid var(--border-subtle, #d8dee6);border-radius:999px;background:var(--surface-raised, #fff);color:var(--text-secondary, #52606d);font:inherit;font-size:.8125rem;cursor:pointer}.chip--company{font-weight:600;color:var(--text-primary, #1d2733)}.chip--department{border-style:dashed}.chip.is-active{background:var(--brand-primary, #0a6ed1);border-color:var(--brand-primary, #0a6ed1);color:#fff}.chip__count{font-variant-numeric:tabular-nums;opacity:.7;font-size:.75rem}.chip:focus-visible{outline:2px solid var(--brand-primary, #0a6ed1);outline-offset:2px}.picker{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-block:1rem}@media(min-width:60rem){.picker{grid-template-columns:1fr 1fr}}.picker__side h3{font-size:.9375rem;margin-block:0 .5rem}.picker__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem;max-block-size:24rem;overflow-y:auto}.picker__item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border:1px solid var(--border-subtle, #d8dee6);border-radius:4px;background:var(--surface-raised, #fff)}.picker__position{font-variant-numeric:tabular-nums;font-weight:600;color:var(--text-secondary, #52606d);min-inline-size:1.5rem}.picker__title{flex:1}.picker__controls{display:flex;gap:.125rem}.people-table{display:flex;flex-direction:column;gap:.125rem;max-block-size:26rem;overflow-y:auto}.people-table__row{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem;padding:.3125rem 0;border-block-end:1px solid var(--border-subtle, #eef1f4)}.is-archived{text-decoration:line-through;color:var(--text-secondary, #52606d)}.nested-row{padding-inline-start:1.25rem}.merge-row{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap;margin-block-start:.75rem}.xp-strip{display:flow-root;border-block-start:var(--keyline-w, 3px) solid var(--accent-keyline, #f8de22);border-inline:1px solid var(--border-subtle, #d8dee6);border-block-end:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-lg, 8px);background:var(--surface-card, #fff);box-shadow:var(--shadow-sm, 0 1px 3px rgb(29 39 51 / 8%));padding:1rem 1.25rem}.xp-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}.xp-level{font-size:1rem}.xp-emoji{font-size:1.125rem}.xp-points{font-family:var(--font-mono, monospace);font-size:1.125rem;color:var(--brand-primary, #0082c8);white-space:nowrap}.xp-points abbr{text-decoration:none}.xp-track{margin-block:.625rem 0;block-size:.5rem;border-radius:999px;background:var(--surface-sunken, #eef1f4);overflow:hidden}.xp-fill{block-size:100%;border-radius:999px;background:var(--brand-primary, #0082c8);transition:inline-size .6s var(--ease-standard, ease-out)}.xp-next{margin-block:.625rem 0;font-size:.9375rem}.badge-image{inline-size:3rem;block-size:3rem;object-fit:contain;border-radius:var(--radius-md, 6px);background:var(--surface-sunken, #eef1f4)}.badge-emoji{display:inline-flex;align-items:center;justify-content:center;inline-size:3rem;block-size:3rem;font-size:1.75rem;border-radius:var(--radius-md, 6px);background:var(--surface-sunken, #eef1f4)}.badge-row{display:flex;align-items:center;gap:.875rem}.certificate-preview{inline-size:100%;aspect-ratio:1.414 / 1;border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-md, 6px);margin-block-start:.75rem;background:var(--surface-sunken, #eef1f4)}.category-tree{border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-md, 6px);overflow:hidden}.category-row{background:var(--surface-card, #fff)}.category-row+.category-row{border-block-start:1px solid var(--border-subtle, #d8dee6)}.tree-branch{color:var(--text-secondary, #54637a)}.removal-panel{margin-block-start:1.25rem;padding:1rem 1.25rem;border:1px solid var(--border-subtle, #d8dee6);border-inline-start:3px solid var(--status-alarm, #c4362f);border-radius:0 var(--radius-md, 6px) var(--radius-md, 6px) 0;background:var(--surface-sunken, #f7f8fa)}.removal-panel>:first-child{margin-block-start:0}.removal-panel>:last-child{margin-block-end:0}.step{border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-lg, 8px);background:var(--surface-card, #fff);overflow:hidden}.step__summary{display:flex;align-items:center;gap:.875rem;padding:.875rem 1.25rem;cursor:pointer;list-style:none}.step__summary::-webkit-details-marker{display:none}.step__summary:hover{background:var(--surface-sunken, #f5f7f9)}.step__summary:focus-visible{outline:2px solid var(--brand-primary, #0082c8);outline-offset:-2px}.step__summary:after{content:"";margin-inline-start:auto;inline-size:.5rem;block-size:.5rem;border-inline-end:2px solid var(--text-secondary, #54637a);border-block-end:2px solid var(--text-secondary, #54637a);transform:rotate(45deg);transition:transform .15s var(--ease-standard, ease-out);flex:none}.step[open]>.step__summary:after{transform:rotate(-135deg)}.step__number{flex:none;display:inline-flex;align-items:center;justify-content:center;min-inline-size:2.25rem;block-size:1.75rem;padding-inline:.5rem;border-radius:999px;background:var(--surface-sunken, #eef1f4);color:var(--text-secondary, #54637a);font-family:var(--font-mono, monospace);font-size:.8125rem;font-weight:600}.step__heading{display:flex;flex-direction:column;gap:.125rem;min-inline-size:0;flex:1}.step__title{font-weight:600}.step__instruction{font-size:.8125rem;color:var(--text-secondary, #54637a)}.step__state{flex:none;font-size:.8125rem;color:var(--text-secondary, #54637a);font-family:var(--font-mono, monospace);margin-inline-start:.5rem}.step__body{padding:0 1.25rem 1.25rem;border-block-start:1px solid var(--border-subtle, #d8dee6);padding-block-start:1.25rem}.step__body>:first-child{margin-block-start:0}.step__body>:last-child{margin-block-end:0}.editor-steps{display:grid;gap:var(--space-5, 1.5rem)}.step-choice__options{display:flex;flex-direction:column;gap:.75rem}.step--choice .step{background:var(--surface-sunken, #f5f7f9)}.why{margin-block-start:.625rem}.why__summary{cursor:pointer;font-size:.8125rem;color:var(--brand-primary, #0082c8);inline-size:fit-content}.why__summary:hover{text-decoration:underline}.why__body{margin-block-start:.5rem;padding-inline-start:.875rem;border-inline-start:2px solid var(--border-subtle, #d8dee6);font-size:.8125rem;color:var(--text-secondary, #54637a)}.why__body>:first-child{margin-block-start:0}.why__body>:last-child{margin-block-end:0}.why__body p{margin-block:.5rem}.visually-hidden{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.course-group{margin-block-start:.5rem}.course-group{background:var(--surface-card, #fff);border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-lg, 10px);box-shadow:var(--shadow-sm, 0 1px 3px rgb(29 39 51 / 8%));margin-block-end:var(--space-3, .75rem);padding-inline:var(--space-4, 1rem)}.course-group__summary{display:flex;align-items:center;gap:.75rem;padding-block:.5rem;cursor:pointer;list-style:none;border-block-end:1px solid var(--border-subtle, #d8dee6)}.course-group__summary::-webkit-details-marker{display:none}.course-group__summary:after{content:"";margin-inline-start:auto;inline-size:.45rem;block-size:.45rem;border-inline-end:2px solid var(--text-secondary, #54637a);border-block-end:2px solid var(--text-secondary, #54637a);transform:rotate(45deg);transition:transform .15s var(--ease-standard, ease-out);flex:none}.course-group[open]>.course-group__summary:after{transform:rotate(-135deg)}.course-group__summary:focus-visible{outline:2px solid var(--brand-primary, #0082c8);outline-offset:2px}.course-group__title{font:600 1.0625rem/1.3 var(--font-display, sans-serif)}.course-group__count{font-family:var(--font-mono, monospace);font-size:.8125rem;color:var(--blue-700, #00528b);background:var(--blue-50, #e6f3fb);border-radius:var(--radius-pill, 999px);padding:.1rem .55rem;flex:none}.course-group__body{padding-block:1rem .5rem}.shell-language{display:inline-flex;align-items:center;gap:.375rem}.shell-language select{font:inherit;font-size:.875rem;color:var(--text-primary, #1d2733);background:var(--surface-card, #fff);border:1px solid var(--border-default, #bcc6d1);border-radius:4px;padding:.2rem .4rem}.shell-header-inner>.shell-language select{color:#fff;background:#ffffff1a;border-color:#ffffff40}.shell-language select option{color:var(--text-primary, #1d2733);background:#fff}.account-menu__panel .shell-language{display:flex;width:100%}.account-menu__panel .shell-language select{flex:1 1 auto}.shell-language select:focus-visible{outline:2px solid var(--sauter-yellow, #f8de22);outline-offset:1px}.group-picker{display:grid;gap:var(--space-2)}.group-picker__hits{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-height:14rem;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding-inline:var(--space-2);padding-block:var(--space-2)}.group-picker__hits li{text-align:start}.group-picker__chosen{margin:0}.report-withdrawn{margin-block-start:var(--space-4);border-block-start:1px solid var(--border-subtle);padding-block-start:var(--space-3)}.report-withdrawn>summary{cursor:pointer;padding-block:var(--space-1)}.passed-overlay{position:absolute;inset:0;display:grid;place-items:center;background:color-mix(in srgb,var(--surface-page, #f3f5f8) 82%,transparent);z-index:20;animation:passed-in .22s ease-out}.passed-card{background:var(--surface-card, #fff);border:1px solid var(--border-subtle);border-radius:var(--radius-md, 8px);padding:var(--space-6) var(--space-6);text-align:center;max-width:26rem;box-shadow:0 10px 40px #0000001f;animation:passed-pop .32s cubic-bezier(.2,1.3,.4,1)}.passed-mark{display:grid;place-items:center;inline-size:4rem;block-size:4rem;margin-inline:auto;margin-block-end:var(--space-3);border-radius:50%;background:var(--status-ok-bg, #e3f4ec);color:var(--status-ok, #1f8a5b);font-size:2rem;line-height:1;animation:passed-tick .42s .12s cubic-bezier(.2,1.4,.4,1) both}.passed-heading{margin:0 0 var(--space-1);font-size:1.5rem}.passed-course{margin:0 0 var(--space-3);color:var(--text-secondary, #44546a)}.passed-score{margin:0 0 var(--space-2);font-size:1.125rem}.passed-actions{justify-content:center;margin-block-start:var(--space-4)}@keyframes passed-in{0%{opacity:0}to{opacity:1}}@keyframes passed-pop{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}@keyframes passed-tick{0%{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.passed-overlay,.passed-card,.passed-mark{animation:none}}.player-confirm{text-align:start;max-width:30rem;animation:none}.player-confirm h2{margin-block:0 var(--space-2);font-size:1.0625rem}.player-confirm__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-block-start:var(--space-5)}.assignment-section{background:var(--surface-card, #fff);border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-lg, 10px);box-shadow:var(--shadow-sm, 0 1px 3px rgb(29 39 51 / 8%));margin-block-end:var(--space-4, 1rem);padding:var(--space-2, .5rem) var(--space-4, 1rem) var(--space-4, 1rem)}.assignment-section--plain>.assignment-section__head{border-block-end:none;margin-block-end:0}.assignment-section--plain[open]>.assignment-section__head{border-block-end:1px solid var(--border-subtle, #d8dee6);margin-block-end:var(--space-2, .5rem)}.assignment-section--plain{background:none;border:none;border-radius:0;box-shadow:none;padding:0;margin-block-end:0}.assignment-section .ds-card,.course-group .ds-card,.sheet .ds-card{box-shadow:none}.assignment-section>.assignment-section__head{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;padding-block:var(--space-2);margin-block-end:var(--space-2);border-block-end:1px solid var(--border-subtle);list-style:none}.assignment-section>.assignment-section__head::-webkit-details-marker{display:none}.assignment-section>.assignment-section__head:before{content:"▸";display:inline-block;color:var(--text-secondary, #44546a);transition:transform .12s ease-out}.assignment-section[open]>.assignment-section__head:before{transform:rotate(90deg)}.assignment-section__title{font-size:1.125rem;font-weight:700}.assignment-section__lead{font-size:.8125rem;color:var(--text-secondary, #54637a)}.assignment-section__count{padding-inline:var(--space-2);padding-block:1px;border-radius:var(--radius-pill, 999px);background:var(--blue-50, #e6f3fb);color:var(--blue-700, #00528b);font-size:.8125rem;font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){.assignment-section>.assignment-section__head:before{transition:none}}.participant-summary{margin-block:var(--space-3)}.participant-summary .chip{cursor:pointer;border:1px solid var(--border-subtle);background:var(--surface-card, #fff);font-variant-numeric:tabular-nums}.participant-summary .chip--on{border-color:var(--sauter-blue, #0082c8);background:var(--status-info-bg, #e6f3fb);color:var(--status-info, #0082c8);font-weight:600}.level-badge{display:block;aspect-ratio:1;object-fit:contain;-webkit-user-select:none;user-select:none}.level-badge--sm{inline-size:64px}.level-badge--md{inline-size:96px}.level-badge--lg{inline-size:128px}.xp-badge-row{float:inline-end;margin-inline-start:var(--space-4);margin-block-start:var(--space-2)}.badge-shelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}@media(max-width:40rem){.badge-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}}.badge-shelf .level-badge{inline-size:100%;max-inline-size:256px}.badge-shelf__item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;padding:var(--space-2);border-radius:var(--radius-md, 8px)}.badge-shelf__item.is-current{background:var(--status-info-bg, #e6f3fb);outline:2px solid var(--sauter-blue, #0082c8)}.badge-shelf__name{font-weight:600;font-size:.875rem;line-height:1.2}.earned{clear:both;display:flex;align-items:center;gap:var(--space-4);margin-block-start:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg, 12px);background:linear-gradient(135deg,var(--status-info-bg, #e6f3fb),var(--surface-card, #fff) 70%);border:1px solid var(--sauter-yellow, #ffd500);animation:earned-in .32s var(--ease-standard, cubic-bezier(.2, 0, 0, 1)) both}.earned__art{position:relative;flex:0 0 auto;display:grid;place-items:center;animation:earned-pop .42s var(--ease-standard, cubic-bezier(.2, 0, 0, 1)) 80ms both}.earned__ring{position:absolute;inset:-6px;border-radius:50%;border:3px solid var(--sauter-yellow, #ffd500);animation:earned-ring .9s ease-out .2s both}.earned__mark{font-size:3.5rem;line-height:1;color:var(--sauter-yellow, #ffd500)}.earned__words{min-inline-size:0}.earned__kicker{margin:0;font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary, #44546a)}.earned__name{margin-block:2px var(--space-1);font-family:var(--font-display, inherit);font-size:1.375rem;line-height:1.2}.earned__why{margin:0;color:var(--text-secondary, #44546a)}.earned__actions{display:flex;gap:var(--space-3);margin-block-start:var(--space-2)}@keyframes earned-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes earned-pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.06);opacity:1}to{transform:scale(1);opacity:1}}@keyframes earned-ring{0%{transform:scale(.6);opacity:0}40%{opacity:1}to{transform:scale(1.35);opacity:0}}@media(prefers-reduced-motion:reduce){.earned,.earned__art,.earned__ring{animation:none}.earned__ring{display:none}}.badge-zoom{position:fixed;inset:0;display:grid;place-items:center;padding:var(--space-4);background:color-mix(in srgb,var(--surface-page, #f3f5f8) 88%,transparent);z-index:30;animation:badge-zoom-in .16s ease-out}.badge-zoom__card{position:relative;max-inline-size:min(34rem,100%);max-block-size:100%;overflow-y:auto;padding:var(--space-5);text-align:center;border:1px solid var(--border-subtle);border-radius:var(--radius-lg, 12px);background:var(--surface-card, #fff);box-shadow:0 10px 40px #00000024}.badge-zoom__image{inline-size:100%;max-inline-size:512px;aspect-ratio:1;object-fit:contain}.badge-zoom__close{position:absolute;inset-block-start:var(--space-2);inset-inline-end:var(--space-2);inline-size:2rem;block-size:2rem;display:grid;place-items:center;font-size:1.5rem;line-height:1;cursor:pointer;border:1px solid var(--border-subtle);border-radius:50%;background:var(--surface-card, #fff);color:var(--text-secondary, #44546a)}.badge-zoom__close:hover{background:var(--surface-sunken, #f5f7f9);color:var(--text-primary, #101828)}.badge-zoom__kicker{margin:var(--space-2) 0 0;font-size:.8125rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary, #44546a)}.badge-zoom__name{margin-block:2px var(--space-1);font-family:var(--font-display, inherit);font-size:1.5rem}.badge-zoom__why{margin:0;color:var(--text-secondary, #44546a)}.level-badge-button{display:block;padding:0;border:0;background:none;cursor:pointer;border-radius:var(--radius-md, 8px)}.level-badge-button:focus-visible{outline:2px solid var(--sauter-blue, #0082c8);outline-offset:2px}.badge-shelf .level-badge-button{inline-size:100%}@keyframes badge-zoom-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.badge-zoom{animation:none}}.contest-list{margin:var(--space-3) 0;padding:var(--space-2) var(--space-4);list-style:none;background:var(--surface-card, #fff);border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-lg, 10px);box-shadow:var(--shadow-sm, 0 1px 3px rgb(29 39 51 / 8%))}.contest-list>li{padding-block:var(--space-2);border-block-end:1px solid var(--border-subtle)}.contest-board{margin-block:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md, 6px);background:var(--surface-card, #fff);border:1px solid var(--border-subtle, #d8dee6)}.contest-board__mine{margin:0 0 var(--space-3);font-size:1.0625rem}.contest-standings{margin:0;padding:0;list-style:none}.contest-standings__row{display:grid;grid-template-columns:2.5rem 1fr auto;align-items:center;gap:var(--space-2);padding-block:var(--space-1);border-block-end:1px solid var(--border-subtle)}.contest-standings__row.is-me{font-weight:600}.contest-standings__rank{font-variant-numeric:tabular-nums;color:var(--text-secondary, #44546a);text-align:end}.contest-standings__points{font-variant-numeric:tabular-nums;color:var(--text-secondary, #44546a)}.contest-invite{margin-block-start:var(--space-3)}.badge-zoom__share{margin-block:var(--space-3) 0;padding-block-start:var(--space-3);border-block-start:1px solid var(--border-subtle);font-size:.875rem}.standing-row{display:grid;gap:var(--space-4);margin-block-end:var(--space-5)}@media(min-width:60rem){.standing-row{grid-template-columns:3fr 2fr;align-items:start}}.contest-panel{padding:var(--space-4);border-block-start:var(--keyline-w, 3px) solid var(--accent-keyline, #f8de22);border-inline:1px solid var(--border-subtle, #d8dee6);border-block-end:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-lg, 10px);background:var(--surface-card, #fff);box-shadow:var(--shadow-sm, 0 1px 3px rgb(29 39 51 / 8%))}.contest-panel__head{margin:0 0 var(--space-3);font:var(--weight-semibold, 600) 1rem/1.2 var(--font-display, sans-serif)}.contest-panel__invite{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm, 4px);background:var(--status-info-bg, #e6f3fb);font-size:.875rem}.contest-panel__row{padding-block:var(--space-2);border-block-start:1px solid var(--border-subtle, #d8dee6)}.contest-panel__row:first-of-type{border-block-start:0}.contest-panel__name{font-weight:600}.contest-panel__mine{font-family:var(--font-mono, monospace);font-size:1.125rem;color:var(--brand-primary, #0082c8)}.contest-panel__tally{margin:var(--space-3) 0 0;font-size:.875rem;color:var(--text-secondary, #54637a)}.contest-panel__empty{margin-block:0 var(--space-3)}.contest-tally{margin-block:0 var(--space-4)}.contest-kinds{margin-block:var(--space-4);padding:var(--space-3);border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-md, 6px)}.contest-kinds legend{padding-inline:var(--space-2);font-weight:600;font-size:.875rem}.contest-kinds .choice{display:flex;gap:var(--space-3);align-items:start;padding-block:var(--space-2)}.level-card-badge{float:inline-end;margin-inline-start:var(--space-4);margin-block-end:var(--space-2)}.sheet--section{margin-block:var(--space-5);padding:var(--space-5)}.section-heading--first{margin-block-start:0}.sheet--section>:first-child{margin-block-start:0}.prose{max-inline-size:46rem}.prose p,.prose ul{line-height:1.65}.prose ul{padding-inline-start:1.25rem}.prose li{margin-block-end:var(--space-2)}.prose .definition-grid{margin-block:var(--space-3) var(--space-5)}.prose .definition-grid dd{font-family:inherit;font-size:inherit}.first-contest ul{margin-block:var(--space-2);padding-inline-start:1.25rem}.first-contest li{margin-block-end:2px}.first-contest p{margin-block:var(--space-2)}.badge-shelf-heading{margin-block:var(--space-5) var(--space-3);font:var(--weight-semibold, 600) 1rem/1.2 var(--font-display, sans-serif)}.badge-shelf--achievements{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}@media(max-width:40rem){.badge-shelf--achievements{grid-template-columns:repeat(2,minmax(0,1fr))}}.badge-shelf--achievements .hint{margin-block-start:2px}.badge-zoom__card--wide{max-inline-size:min(52rem,100%);text-align:start;padding-inline-end:var(--space-7)}.level-card{display:flex;align-items:center;gap:var(--space-5)}.level-card__body{flex:1;min-inline-size:0}.level-card__badge{flex:0 0 auto}.level-card__next{margin-block:var(--space-3) var(--space-2)}.level-card__figures{display:flex;gap:var(--space-5);margin-block:0 var(--space-2);font-variant-numeric:tabular-nums}@media(max-width:40rem){.level-card{flex-direction:column;align-items:stretch}.level-card__badge{align-self:center}}.sheet--keyline{border-block-start:var(--keyline-w, 3px) solid var(--accent-keyline, #f8de22)}.assignment-section--spaced{margin-block-start:var(--space-6)}.passed-extras{margin-block:var(--space-3) 0;font-size:.875rem}.catalogue-chrome{margin-block-end:var(--space-5);padding:0 var(--space-5) var(--space-4)}.catalogue-chrome__tabs{margin-inline:calc(-1 * var(--space-5));padding-inline:var(--space-5);border-block-end:1px solid var(--border-subtle, #d8dee6);margin-block-end:var(--space-4)}.catalogue-chrome__note{margin-block:var(--space-4) var(--space-3);max-inline-size:70ch}.filter-bar__row{display:flex;align-items:end;gap:var(--space-3)}.filter-bar__row>:first-child{flex:1;min-inline-size:0}.filter-bar__row--end{justify-content:flex-end}.filter-bar__row:has(>:only-child){justify-content:flex-start}.filter-bar__row>:only-child{flex:0 0 auto}@media(max-width:40rem){.filter-bar__row{flex-direction:column;align-items:stretch}}.category-tree.sheet{padding:var(--space-2) var(--space-4)}.ds-btn--ghost:hover:not(:disabled){background:var(--blue-100)}.course-preview,.preview-tile--card{display:block;inline-size:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md, 8px);margin-block:var(--space-3);border:1px solid var(--border-subtle, #d8dee6)}.preview-tile{display:grid;place-items:center;color:#fff}.preview-tile__initials{font:var(--weight-bold, 700) clamp(1.5rem,4vw,2.5rem) / 1 var(--font-display, sans-serif);letter-spacing:var(--tracking-tight, -.02em)}.preview-choose{display:grid;grid-template-columns:minmax(0,14rem) minmax(0,1fr);gap:var(--space-4);align-items:start}@media(max-width:40rem){.preview-choose{grid-template-columns:1fr}}.placeholder-chooser{margin-block-start:var(--space-4)}.placeholder-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:var(--space-3);margin-block-start:var(--space-3);max-block-size:26rem;overflow-y:auto;padding:var(--space-2);border:1px solid var(--border-subtle, #eef1f4);border-radius:var(--radius-md, 4px)}.placeholder-gallery__item{display:flex;flex-direction:column;gap:.25rem;padding:var(--space-2);background:none;border:2px solid transparent;border-radius:var(--radius-md, 4px);cursor:pointer;font:inherit;text-align:start;color:var(--text-secondary, #52606d)}.placeholder-gallery__item img{inline-size:100%;block-size:auto;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-sm, 3px)}.placeholder-gallery__item span{font-size:.75rem;line-height:1.3}.placeholder-gallery__item:hover{border-color:var(--border-strong, #cbd2d9)}.placeholder-gallery__item.is-current{border-color:var(--brand-primary, #0082c8);color:var(--text-primary, #1f2933)}.placeholder-gallery__item:disabled{opacity:.5;cursor:default}.badge-edit{grid-column:1 / -1;display:grid;gap:var(--space-2);margin-block-start:var(--space-3);padding:var(--space-3);text-align:start;background:var(--surface-card, #fff);border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-md, 8px)}.badge-open{display:block;padding:0;border:0;background:none;cursor:pointer;inline-size:100%}.badge-open:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-md, 8px)}.badge-open:hover img{filter:brightness(1.04)}@media(prefers-reduced-motion:reduce){.badge-open:hover img{filter:none}}.course-tile{display:grid}.course-tile__open{display:grid;grid-template-rows:auto 1fr;gap:0;inline-size:100%;padding:0;text-align:start;border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-lg, 12px);background:var(--surface-card, #fff);cursor:pointer;overflow:hidden;box-shadow:var(--shadow-sm, 0 1px 3px rgb(29 39 51 / 8%));transition:box-shadow .12s ease-out,border-color .12s ease-out}.course-tile__open:hover,.course-tile__open:focus-visible{border-color:var(--blue-800, #003b78);box-shadow:0 6px 20px #0000001a}.course-tile__open .course-preview,.course-tile__open .preview-tile--card{margin-block:0;border:0;border-radius:0}.course-tile__text{display:grid;grid-template-rows:auto 1fr;gap:var(--space-2);padding:var(--space-4)}.course-tile__title{font:var(--type-card-title);color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-tile__meta{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:end;align-content:end}.course-tile__meta .hint{margin:0;padding-block:.1875rem;border-block:1px solid transparent}.course-detail{max-inline-size:min(52rem,100%);text-align:start;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-5);padding-block-start:var(--space-6)}.course-detail__body>*+*{margin-block-start:var(--space-4)}.course-detail__title{font:var(--type-section);color:var(--text-primary);margin-block-end:0}.course-detail__body>.course-preview,.course-detail__body>.preview-tile--card{max-inline-size:22rem;margin-block-start:0}.course-detail__rail{display:flex;flex-direction:column;gap:var(--space-2);align-self:start;position:sticky;inset-block-start:0;padding-block-start:var(--space-4)}.rail-action{display:flex;align-items:center;gap:var(--space-2);min-block-size:2.75rem;padding-inline:var(--space-3);inline-size:100%;border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-md, 8px);background:var(--surface-card, #fff);color:var(--text-primary);font:var(--type-body-sm);white-space:nowrap;cursor:pointer;transition:background .12s ease-out,border-color .12s ease-out}.rail-action:hover:not(:disabled){background:var(--blue-100, #dce7f4);border-color:var(--blue-800, #003b78)}.rail-action:disabled{opacity:.5;cursor:not-allowed}.rail-action[aria-pressed=true]{background:var(--blue-100, #dce7f4);border-color:var(--blue-800, #003b78)}.rail-action--danger{color:var(--status-alarm)}.rail-action--danger:hover:not(:disabled),.rail-action--danger[aria-pressed=true]{background:var(--status-alarm-bg);border-color:var(--status-alarm)}@media(max-width:40rem){.course-detail{grid-template-columns:minmax(0,1fr);gap:var(--space-4)}.course-detail__rail{flex-direction:row;flex-wrap:wrap;position:static;padding-block-start:0}.rail-action{inline-size:auto}}.course-detail .definition-grid dd{overflow-wrap:anywhere}.badge-image--empty{display:inline-block;border:1px dashed var(--border-subtle);background:transparent}.person-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.75rem 0;border:0;border-block-end:1px solid var(--border-subtle, #e5e7eb);background:none;font:inherit;color:var(--text-primary, #111827);text-align:start;cursor:pointer}.person-row:hover{background:var(--surface-sunken, #f9fafb)}.person-row__counts{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary, #6b7280)}.person-courses{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:.75rem 0 1rem;padding-inline-start:1.25rem;list-style:none}.person-courses li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.rollout-list{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem;border-inline-start:3px solid var(--border-subtle, #e5e7eb);background:var(--surface-sunken, #f9fafb);border-radius:var(--radius-sm, 4px)}.rollout-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.phishing-timeline{display:flex;gap:3px;align-items:stretch;margin-block:.5rem .5rem;block-size:2.25rem}.phishing-timeline__bar{flex:1 1 0;min-inline-size:5px;border-radius:3px;cursor:help}.phishing-legend{display:flex;flex-wrap:wrap;gap:.25rem 1rem;font-size:.8125rem;color:var(--text-muted, #5b6672);margin-block-end:.25rem}.phishing-legend__item{display:inline-flex;align-items:center;gap:.375rem}.phishing-legend__swatch{inline-size:.75rem;block-size:.75rem;border-radius:2px;display:inline-block;box-shadow:inset 0 0 0 1px #0000001f}.phishing-tree{display:flex;flex-direction:column;margin-block:.5rem}.phishing-tree__group{border-block-end:1px solid var(--border, #e4e9ee)}.phishing-tree__group:last-child{border-block-end:none}.phishing-tree__toggle{display:flex;align-items:baseline;gap:.5rem;inline-size:100%;padding:.4rem 0;background:none;border:none;font:inherit;color:inherit;text-align:start;cursor:pointer}.phishing-tree__toggle:hover .phishing-tree__name{text-decoration:underline}.phishing-tree__marker{inline-size:.9rem;flex:0 0 auto;color:var(--text-muted, #5b6672)}.phishing-tree__child{padding-inline-start:1.4rem;padding-block:.3rem}.phishing-tree__row{display:flex;flex:1 1 auto;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;align-items:baseline}.phishing-tree__row.is-total{font-weight:600;padding-block:.4rem}.phishing-tree__figures{color:var(--text-muted, #5b6672);font-size:.875rem}.report-section{border-block-start:1px solid var(--border, #e4e9ee);margin-block-start:var(--space-4, 1rem);padding-block-start:var(--space-4, 1rem)}.report-section>h3{margin-block:0 var(--space-3, .75rem);font-size:1.0625rem}.course-group__body .course-group{box-shadow:none;border-color:var(--border, #e4e9ee);margin-inline-start:var(--space-4, 1rem);background:var(--surface-subtle, #f7f9fb)}.course-group__body .course-group__body .course-group{background:var(--surface-card, #fff)}.chip--fallback{font-size:.6875rem;font-weight:600;letter-spacing:.04em;color:var(--text-secondary, #5b6b7c);background:var(--surface-subtle, #f2f5f8);border-style:dotted;cursor:help}.metric-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:var(--space-3);margin-block:var(--space-3)}.account-menu{position:relative}.account-menu__trigger{display:block;padding:0;border:2px solid transparent;border-radius:999px;background:none;cursor:pointer;transition:border-color .12s ease}.account-menu__trigger:hover,.account-menu__trigger[aria-expanded=true]{border-color:#ffffff8c}.account-menu__trigger:focus-visible{outline:2px solid var(--accent-keyline, #f8de22);outline-offset:2px}.account-menu__panel{position:absolute;inset-inline-end:0;inset-block-start:calc(100% + .5rem);min-inline-size:13rem;padding:.25rem;background:var(--surface-card, #fff);border:1px solid var(--border-subtle, #d8dee6);border-radius:var(--radius-md, 4px);box-shadow:0 6px 20px #121f2c2e;z-index:20;color:var(--text-primary, #1d2733)}.account-menu__who{padding:.5rem .75rem;border-block-end:1px solid var(--border-subtle, #eef1f4);font-size:.8125rem;overflow-wrap:anywhere}.account-menu__language{display:grid;gap:.25rem;padding:.5rem .75rem;border-block-end:1px solid var(--border-subtle, #eef1f4)}.account-menu__item{display:block;inline-size:100%;padding:.5rem .75rem;border:0;background:none;font:inherit;text-align:start;color:var(--text-primary, #1f2933);cursor:pointer;border-radius:var(--radius-sm, 3px)}.account-menu__item:hover{background:var(--surface-page, #f5f7f9)}.account-menu__item:focus-visible{outline:2px solid var(--brand-primary, #0082c8)}.course-link{margin-block:0 .75rem;overflow-wrap:anywhere}.course-link code{font-family:var(--font-mono, monospace);font-size:.9375rem;background:var(--surface-sunken, #eaeef2);border-radius:4px;padding:.25rem .4rem}.choice__count{margin-inline-start:auto;font-variant-numeric:tabular-nums}.error-detail{flex-basis:100%;margin-block:.5rem 0;padding:.75rem;border-radius:6px;background:var(--surface-sunken, #f5f7fa);color:var(--text-secondary, #556);font-size:.8125rem;overflow-x:auto;overflow-y:clip;white-space:pre}.rate-grid__head{font-size:.75rem;color:var(--text-secondary, #556);text-align:start}.phishing-tree.rate-grid .phishing-tree__row{flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:.75rem}.rate-grid__name,.phishing-tree.rate-grid .rate-grid__head:first-child{flex:1 1 9rem;min-width:0;overflow-wrap:anywhere}.phishing-tree.rate-grid .rate-grid__head:not(:first-child){flex:1 1 6rem}.phishing-tree.rate-grid .rate-grid__head:last-child{flex:0 0 4.5rem;text-align:end}@media(max-width:48rem){.phishing-tree.rate-grid .phishing-tree__row{flex-wrap:wrap}.rate-grid__name{flex:1 0 100%}.phishing-tree.rate-grid>.phishing-tree__row:first-child{display:none}}.rate-bar{position:relative;display:flex;align-items:center;gap:.4rem;flex:1 1 6rem;min-width:0}.rate-bar__track{display:block;flex:1 1 auto;height:10px;min-width:2rem;border-radius:5px;background:var(--surface-sunken, #f5f7fa);overflow:hidden}.rate-bar__fill{display:block;height:100%;border-start-end-radius:5px;border-end-end-radius:5px;background:var(--status-info, #0082c8)}.rate-bar__fill--ok{background:var(--chart-good, #0f9d58)}.rate-bar__fill--warn{background:var(--chart-warn, #f28c00)}.rate-bar__fill--alarm{background:var(--chart-bad, #d92b20)}.rate-bar__value{flex:0 0 auto;min-width:2.75rem;text-align:end;font-variant-numeric:tabular-nums;font-size:.8125rem;color:var(--text-primary, #223)}.rate-grid__coverage{flex:0 0 4.5rem;text-align:end;font-size:.75rem;color:var(--text-secondary, #556);font-variant-numeric:tabular-nums;white-space:nowrap}.rate-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.25rem 1.5rem;margin-block:.75rem 1.25rem}.rate-tile__value{font-size:1.75rem;line-height:1.1}.rate-tile__label{display:flex;align-items:center;gap:.4rem;margin-block-start:.15rem;font-size:.875rem;font-weight:600;color:var(--text-primary, #223)}.rate-tile__sub{font-size:.75rem;color:var(--text-muted, #778);font-variant-numeric:tabular-nums}.rate-tile__note{margin-block:.5rem 0;padding-block-start:.5rem;border-block-start:1px solid var(--border-subtle, #d8dee6);font-size:.8125rem;line-height:1.45;color:var(--text-secondary, #556)}.phishing-tree.rate-grid .phishing-tree__row.is-total{border-block-end:1px solid var(--border, #e4e9ee);margin-block-end:.25rem}.phishing-tree.rate-grid>.phishing-tree__row{padding-inline-start:1.4rem}.rate-legend__swatch{inline-size:.75rem;block-size:.75rem;border-radius:3px;flex:0 0 auto;margin-block-start:.2rem}.rate-legend__swatch--ok{background:var(--chart-good, #0f9d58)}.rate-legend__swatch--warn{background:var(--chart-warn, #f28c00)}.rate-legend__swatch--alarm{background:var(--chart-bad, #d92b20)}.rate-legend strong{color:var(--text-primary, #223)}.rate-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem;margin-block:1.25rem .25rem}.rate-section-head h3{margin:0}.report-table--grid{display:grid;grid-template-columns:var(--report-columns);column-gap:1rem}.report-table--grid .report-row{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:center;row-gap:.25rem}.report-table--grid .report-row>*{min-width:0}.report-table--grid .report-row>.hint{margin:0;max-width:none}.report-head{padding-block-end:.35rem;font-size:.75rem;font-weight:600;letter-spacing:.02em;color:var(--text-secondary, #54637a)}.report-cell{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.report-actions{display:flex;align-items:center;justify-content:end;gap:.25rem;flex-wrap:wrap;text-align:end}@media(max-width:60rem){.report-table--grid{display:flex;flex-direction:column}.report-table--grid .report-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.report-table--grid .report-head{display:none}.report-table--grid .report-cell{flex:1 0 100%}.report-actions{margin-inline-start:auto}}@supports not (grid-template-columns: subgrid){.report-table--grid{display:flex;flex-direction:column}.report-table--grid .report-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.report-table--grid .report-head{display:none}.report-table--grid .report-cell{flex:1 0 100%}.report-actions{margin-inline-start:auto}}.report-table--roles{--report-columns: minmax(9rem, 1.3fr) minmax(8rem, 1.4fr) minmax(6rem, .9fr) minmax(7rem, 1.4fr) max-content}.report-table--rules{--report-columns: minmax(9rem, 1.2fr) minmax(8rem, 1.4fr) max-content minmax(7rem, 1.4fr) max-content}.report-table--entra{--report-columns: minmax(9rem, 1.2fr) minmax(10rem, 1.6fr) max-content}.catalogue-section+.catalogue-section{margin-block-start:var(--space-6, 2rem)}.catalogue-picker{display:flex;flex-wrap:wrap;gap:var(--space-4, 1rem);align-items:end;padding:var(--space-4, 1rem);margin-block-end:var(--space-4, 1rem)}.catalogue-picker__new{display:flex;flex-wrap:wrap;gap:var(--space-2, .5rem);align-items:end;margin-inline-start:auto}.card-subheading{font-size:var(--text-sm, .875rem);font-weight:600;margin-block:var(--space-4, 1rem) 0}.placement-heading{display:flex;flex-wrap:wrap;gap:var(--space-3, .75rem);align-items:end;padding-block-start:var(--space-3, .75rem);border-block-start:1px solid var(--border-subtle, #d8dee6);margin-block-start:var(--space-3, .75rem)}.placement-heading__step{display:flex;flex-direction:column;gap:var(--space-1, .25rem)}.placement-heading__step input{inline-size:6rem}.link-form{display:flex;flex-wrap:wrap;gap:var(--space-2, .5rem);align-items:end;margin-block-start:var(--space-3, .75rem)}.link-list{list-style:none;padding:0;margin-block:var(--space-2, .5rem)}.card-languages{letter-spacing:.02em}.version-title{margin-block-start:var(--space-2, .5rem);max-inline-size:28rem}.upload-plan{margin-block:var(--space-2, .5rem);padding-inline-start:var(--space-4, 1rem)}.upload-plan li{margin-block:var(--space-1, .25rem);overflow-wrap:anywhere}.upload-status{white-space:pre-line}
