/* Generated from src/styles/colours.scss with GOV.UK Frontend 6.6.0. Do not edit colour values here. */
:root {
  --colour-brand: #732282;
  --colour-page-background: #f5f5f5;
  --colour-divider: #cbcbcb;
  --colour-button: #00703c;
  --colour-button-hover: var(--govuk-text-colour, #0b0c0c);
  --colour-inverse-surface: var(--govuk-text-colour, #0b0c0c);
  --colour-text: var(--govuk-text-colour, #0b0c0c);
  --colour-secondary-text: var(--govuk-secondary-text-colour, #484949);
  --colour-inverse-text: var(--govuk-inverse-text-colour, #ffffff);
  --colour-link: var(--govuk-link-colour, #1a65a6);
  --colour-link-hover: var(--govuk-link-hover-colour, #0f385c);
  --colour-link-visited: var(--govuk-link-visited-colour, #54319f);
  --colour-link-active: var(--govuk-link-active-colour, #0b0c0c);
  --colour-border: var(--govuk-border-colour, #cecece);
  --colour-input-border: var(--govuk-input-border-colour, #0b0c0c);
  --colour-template-background: var(--govuk-template-background-colour, #f4f8fb);
  --colour-body-background: var(--govuk-body-background-colour, #ffffff);
  --colour-focus: var(--govuk-focus-colour, #ffdd00);
  --colour-focus-text: var(--govuk-focus-text-colour, #0b0c0c);
  --colour-error: var(--govuk-error-colour, #ca3535);
  --colour-success: var(--govuk-success-colour, #0f7a52);
  --colour-hover: var(--govuk-hover-colour, #cecece);
  --colour-surface-background: var(--govuk-surface-background-colour, #f4f8fb);
  --colour-surface-text: var(--govuk-surface-text-colour, #0b0c0c);
  --colour-surface-border: var(--govuk-surface-border-colour, #8eb8dc);
  --colour-service-brand: var(--govuk-brand-colour, #1d70b8);
  --colour-brand-tint-25: rgb(58.8235294118%, 35%, 63.2352941176%);
  --colour-success-tint-25: #4b9b7d;
  --colour-error-tint-25: #d76868;
  --colour-link-tint-25: #5694ca;
  --colour-brand-tint-50: rgb(72.5490196078%, 56.6666666667%, 75.4901960784%);
  --colour-success-tint-50: #87bca8;
  --colour-error-tint-50: #e59a9a;
  --colour-link-tint-50: #8eb8dc;
}

/* GDPR.me.uk colour-only adapter, 2026-11-04.
   Load AFTER the existing site, experience, audit, template and consent styles.
   No fonts, menus, content, breakpoints, dimensions or application logic are changed.
   The original UKVIcompliance-Colours.css tokens are included ahead of this adapter. */
:root {
  color-scheme: light;
  --ink: var(--colour-text);
  --muted: var(--colour-secondary-text);
  --teal: var(--colour-link);
  --teal-dark: var(--colour-link-hover);
  --mint: var(--colour-surface-background);
  --cream: var(--colour-page-background);
  --line: var(--colour-divider);
  --white: var(--colour-body-background);
  --gold: var(--colour-input-border);
  --red: var(--colour-error);
  --amber: var(--colour-text);
  --shadow: 0 2px 0 var(--colour-divider);
}
#audit-app {
  --ga-ink: var(--colour-text);
  --ga-teal: var(--colour-link);
  --ga-mint: var(--colour-surface-background);
  --ga-cream: var(--colour-page-background);
  --ga-line: var(--colour-border);
  --ga-muted: var(--colour-secondary-text);
  --ga-red: var(--colour-error);
  --ga-amber: var(--colour-text);
  --ga-green: var(--colour-success);
}
@media screen {
  html, body, body.print-template { background-color: var(--colour-page-background); color: var(--colour-text); }
  body { accent-color: var(--colour-link); }
  h1,h2,h3,h4,h5,h6, label, legend, strong, dt { color: var(--colour-text); }
  :where(main,header,footer,nav,aside,section,article,button,input,select,textarea) {
    text-shadow: none;
  }
  a { color: var(--colour-link); text-decoration-color: currentColor; }
  a:visited { color: var(--colour-link-visited); }
  a:hover { color: var(--colour-link-hover); }
  a:active { color: var(--colour-link-active); }
  .prose a,.template-document a,.text-link,.download-actions a,.step-links a,
  .related-guides a,.source-list a,.gdpr-news-link-row a,.gdpr-news-link-column a,
  .gdpr-news-sources a,.gdpr-news-references a,.gdpr-news-article-note a,
  .framework-note a,.panel-output a,.topbar a,.footer-col a,.backtop,.hero-editorial,
  .aside-box a:not(.button),.breadcrumbs a {
    color: var(--colour-link); text-decoration-line: underline; text-decoration-color: currentColor;
    text-underline-offset: .18em;
  }
  .prose a:visited,.template-document a:visited,.text-link:visited,.download-actions a:visited,
  .step-links a:visited,.related-guides a:visited,.source-list a:visited,
  .gdpr-news-sources a:visited,.gdpr-news-references a:visited,.gdpr-news-article-note a:visited,
  .footer-col a:visited,.aside-box a:not(.button):visited,.breadcrumbs a:visited {
    color: var(--colour-link-visited);
  }
  .prose a:hover,.template-document a:hover,.text-link:hover,.download-actions a:hover,
  .step-links a:hover,.related-guides a:hover,.source-list a:hover,
  .gdpr-news-sources a:hover,.gdpr-news-references a:hover,.gdpr-news-article-note a:hover,
  .topbar a:hover,.footer-col a:hover,.aside-box a:not(.button):hover,.breadcrumbs a:hover {
    color: var(--colour-link-hover);
  }
  .site-header,.header-nav,.trust-strip,.fact-strip,.topic-nav,
  .task-card,.resource-card,.resource-list .resource-card,.sector-card,
  .download-card,.method-card,.decision-card,.tool-table,.tool-panel,
  .template-document,.te-toolbar,.report-preview,.starting-desk,
  .evidence-item,.reference-table td {
    background-color: var(--colour-body-background); color: var(--colour-text);
    border-color: var(--colour-divider); background-image: none;
  }
  .topbar,.hero,.hero-v2,.page-intro,.section.soft,.news-section,
  .site-footer,.register-visual,.start-tabs,.gdpr-news-legacy,
  .gdpr-news-article-note,.gdpr-news-empty,.inline-status {
    background-color: var(--colour-page-background); color: var(--colour-text);
    border-color: var(--colour-divider); background-image: none;
  }
  .section.mint,.guidance-section,.closing-section,.review-banner,
  .report-bottom,.panel-output,.callout,.aside-box,.aside-box.mint,
  .guide-at-glance,.guide-actions,.route-intro,.route-pack,.step-evidence,
  .tool-result,.tool-table-head,.reference-table th,.legal-basis,.checklist li,
  .evidence-item[open],.gdpr-news-status {
    background-color: var(--colour-surface-background); color: var(--colour-surface-text);
    border-color: var(--colour-surface-border); background-image: none;
  }
  .callout,.route-pack,.gdpr-news-status { border-left-color: var(--colour-service-brand); }
  .report-preview,.starting-desk,.register-visual,
  .te-toolbar,.task-card:hover { box-shadow: var(--shadow); }
  .hero-v2:after,.report-top,.report-line,.desk-caption,.framework-row,
  .framework-row:last-child,.register-tabs,.register-row,.footer-bottom,
  .glance-row,.pathway-steps>li,.screening-record,.screening-record-meta {
    border-color: var(--colour-divider);
  }
  .pathway-steps>li:last-child { border-left-color: transparent; }
  .framework-note a,.hero-editorial { border-color: var(--colour-divider); }
  .blank-line { background-color: var(--colour-border); }

  /* Identity accents are purple; links, controls and progress keep their own roles. */
  .brand,.brand:visited,.brand:hover,.brand .brand-small,
  .site-footer .brand,.site-footer .brand-small,
  .hero h1 em,.hero-v2 h1 em,h2 em,.closing-section h2 em,
  .register-title em,.eyebrow,.eyebrow.light,.closing-section .eyebrow,
  .gdpr-news-policy .eyebrow,.desk-mark {
    color: var(--colour-brand);
  }
  .brand-mark,.site-footer .brand-mark,.desk-mark {
    color: var(--colour-brand); border-color: var(--colour-brand);
    background-color: var(--colour-body-background);
  }
  .live-dot { background-color: var(--colour-brand); }
  .news-card { border-top-color: var(--colour-brand); }
  .header-nav>a:not(.button),.topic-nav a,.start-tabs button,
  .register-tabs span,.filter-tabs button {
    color: var(--colour-text);
  }
  .header-nav>a:not(.button):hover,.header-nav>a.active,
  .header-nav>a[aria-current="page"],.topic-nav a[aria-current="page"] {
    color: var(--colour-text); text-decoration-line: underline;
    text-decoration-color: var(--colour-brand); text-underline-offset: .4em;
  }
  .start-tabs button[aria-selected="true"],.register-tabs .selected {
    color: var(--colour-text); border-bottom-color: var(--colour-brand);
  }
  .filter-tabs button.active,.gdpr-news-pagination [aria-current] {
    background-color: var(--colour-surface-background); color: var(--colour-text);
    border-color: var(--colour-input-border); text-decoration-line: underline;
    text-decoration-color: var(--colour-brand); text-underline-offset: .2em;
  }
  .aside-box a.is-reading {
    color: var(--colour-text); border-left-color: var(--colour-brand);
    text-decoration-line: underline; text-decoration-color: var(--colour-brand);
  }
  .task-icon,.task-route .task-icon,.mini-icon,.sector-icon,.file-icon,
  .file-badge,.route-arrow,.domain-row .arrow,.tool-row .arrow,
  .framework-row>span:last-child,.card-link,.fact-inner strong,.register-foot,
  .te-progress,.hero-note span:before,.review-banner .banner-icon {
    color: var(--colour-link);
  }
  .task-icon,.task-route .task-icon,.mini-icon {
    background-color: var(--colour-surface-background);
  }
  .file-icon,.file-badge,.label,.disclaimer-pill {
    border-color: var(--colour-surface-border); color: var(--colour-secondary-text);
    background-color: var(--colour-surface-background);
  }
  .hero-proof svg,.trust-item svg,.plain-benefits svg { stroke: var(--colour-link); }
  .report-bottom .report-circle { background-color: var(--colour-service-brand); color: var(--colour-inverse-text); }
  .article-progress { background-color: var(--colour-service-brand); }
  .steps>span,.pathway-steps>li:before {
    color: var(--colour-link); border-color: var(--colour-surface-border);
    background-color: var(--colour-surface-background);
  }
  .start-steps li span:after { border-top-color: var(--colour-divider); }
  .task-card:hover,.resource-list .resource-card:hover,.sector-card:hover,
  .tool-row:hover,.gdpr-news-pagination a:hover {
    border-color: var(--colour-surface-border); background-color: var(--colour-surface-background);
  }
  .task-route h3,.task-route:hover h3,.domain-row h3,.domain-row:hover h3,
  .framework-row h3,.framework-row:hover h3,.sector-card h3,.news-card h3,
  .news-card h3 a,.resource-card h3,.report-body h3,.start-panel h2 {
    color: var(--colour-text);
  }
  .task-route:hover h3,.domain-row:hover h3,.framework-row:hover h3,
  .sector-card:hover h3,.news-card h3 a:hover,.resource-card:hover h3 {
    text-decoration-line: underline; text-decoration-color: var(--colour-link);
    text-underline-offset: .18em;
  }
  .muted,.prose p,.prose li,.hero-lead,.hero-v2 .hero-lead,
  .panel-description,.panel-overline,.panel-output>span,.topic-nav .topic-label,
  .desk-number,.start-steps li span,.framework-index,.framework-row p,
  .framework-note,.register-top,.register-row,.register-tabs,.glance-row>span,
  .domain-number,.section-description,.hero-proof,.footer-about p,.footer-col h3,
  .footer-bottom,.site-footer p,.review-banner p,.closing-section p:not(.eyebrow),
  .closing-layout>div:last-child>a:last-child,.te-help,.te-help.te-limit,
  .print-template .te-status,.template-field:empty:before,.gdpr-news-byline,
  .topic-nav .urgent {
    color: var(--colour-secondary-text);
  }
  .prose strong,.evidence-item strong,.glance-row strong,.panel-output strong,
  .review-banner h3,.closing-section h2,.footer-bottom strong,
  .template-input-group>label { color: var(--colour-text); }

  /* Ordinary action buttons: green primary, white/dark-bordered secondary. */
  .button,.button:visited,.button.dark,.button.light,
  .guide-action-links .button:not(.secondary),.aside-box .button,
  .te-button.te-primary {
    color: var(--colour-inverse-text); background-color: var(--colour-button);
    border-color: var(--colour-button); text-decoration-line: none;
  }
  .button:hover,.button.dark:hover,.button.light:hover,.te-button.te-primary:hover {
    color: var(--colour-inverse-text); background-color: var(--colour-button-hover);
    border-color: var(--colour-button-hover);
  }
  .button.secondary,.button.secondary:visited,.button.secondary:hover,
  .menu-toggle,.te-button,.article-tools button,[data-gdpr-cookie-settings] {
    color: var(--colour-text); background-color: var(--colour-body-background);
    border-color: var(--colour-input-border); text-decoration-line: none;
  }
  .button.secondary:hover,.menu-toggle:hover,.te-button:hover,
  .article-tools button:hover,[data-gdpr-cookie-settings]:hover,
  .filter-tabs button:hover {
    color: var(--colour-text); background-color: var(--colour-hover);
    border-color: var(--colour-input-border);
  }
  .te-button.te-reset { color: var(--colour-error); border-color: var(--colour-error); background-color: var(--colour-body-background); }
  .te-button.te-reset:hover { color: var(--colour-text); background-color: var(--colour-error-tint-50); border-color: var(--colour-input-border); }
  .search-suggestions button,.search-clear { color: var(--colour-link); border-color: var(--colour-divider); }
  .search-suggestions button:hover,.search-clear:hover { color: var(--colour-link-hover); }

  /* Field boundaries remain visible independently of decorative panel borders. */
  input:not([type="radio"]):not([type="checkbox"]):not([type="range"]):not([type="file"]),
  textarea,select,.search-form input,.screening-context input,.screening-context textarea,
  .screening-context select,.tool-panel select,.tool-panel input[type="datetime-local"],
  .template-document .template-field,.print-template .template-field {
    color: var(--colour-text); background-color: var(--colour-body-background);
    border-color: var(--colour-input-border); caret-color: var(--colour-text);
  }
  input::placeholder,textarea::placeholder,.print-template .template-field[data-empty="true"] {
    color: var(--colour-secondary-text); opacity: 1; background-color: var(--colour-body-background);
  }
  .print-template .template-field:focus { background-color: var(--colour-body-background); border-color: var(--colour-input-border); }
  input[type="checkbox"],input[type="radio"],.tool-panel .check-row input {
    accent-color: var(--colour-link);
  }
  .tool-panel .check-row { background-color: var(--colour-body-background); border-color: var(--colour-input-border); }
  .tool-panel .check-row:has(input:checked) { background-color: var(--colour-surface-background); border-color: var(--colour-input-border); }
  [aria-invalid="true"],input[aria-invalid="true"],textarea[aria-invalid="true"],select[aria-invalid="true"] { border-color: var(--colour-error)!important; }

  /* Explicit labels remain untouched. Warning/amber backgrounds are neutral. */
  .status,.status.grey,.status.green,.status.amber,.status.red {
    color: var(--colour-text); border: 1px solid var(--colour-input-border);
    background-color: var(--colour-page-background);
  }
  .status.green { background-color: var(--colour-success-tint-50); }
  .status.red { background-color: var(--colour-error-tint-50); }
  .callout.warning { background-color: var(--colour-page-background); color: var(--colour-text); border-color: var(--colour-input-border); }
  .callout.success,.tool-result.success { border-color: var(--colour-success); background-color: var(--colour-surface-background); }
  .callout.error,.tool-result.error,.error-summary { border-color: var(--colour-error); color: var(--colour-text); background-color: var(--colour-body-background); }
  .error-message { color: var(--colour-error); }

  /* Gap-assessment workspace: preserve its own scoped component selectors. */
  #audit-app .ga-start-panel,#audit-app .ga-prep,#audit-app .ga-empty,
  #audit-app .ga-report-notice,#audit-app .ga-area-complete.is-complete {
    color: var(--colour-text); background-color: var(--colour-surface-background);
    border-color: var(--colour-surface-border); background-image: none;
  }
  #audit-app .ga-start-panel h2,#audit-app .ga-start-steps strong { color: var(--colour-text); }
  #audit-app .ga-start-panel .ga-eyebrow,#audit-app .ga-eyebrow { color: var(--colour-brand); }
  #audit-app .ga-start-panel>div>p:not(.ga-eyebrow),#audit-app .ga-start-actions>span,
  #audit-app .ga-start-steps p { color: var(--colour-secondary-text); }
  #audit-app .ga-start-panel .ga-resume-hint { color: var(--colour-secondary-text)!important; }
  #audit-app .ga-start-steps>div>span,#audit-app .ga-domain-number,
  #audit-app .ga-coverage-strip strong,#audit-app .ga-qnum { color: var(--colour-link); }
  #audit-app .ga-start-steps { border-color: var(--colour-divider); }
  #audit-app .ga-view-switch,#audit-app .ga-board-summary,#audit-app .ga-side,
  #audit-app .ga-action-filters,#audit-app .ga-area-complete,
  #audit-app .ga-question-meta>span,#audit-app .ga-rag-totals>span {
    background-color: var(--colour-page-background); color: var(--colour-text);
    border-color: var(--colour-border);
  }
  #audit-app .ga-domain-card,#audit-app .ga-question,#audit-app .ga-action-card,
  #audit-app .ga-settings,#audit-app .ga-stat-grid>div,#audit-app .ga-coverage-strip,
  #audit-app table {
    background-color: var(--colour-body-background); color: var(--colour-text);
    border-color: var(--colour-border);
  }
  #audit-app .ga-domain-card:hover { background-color: var(--colour-surface-background); border-color: var(--colour-surface-border); box-shadow: var(--shadow); }
  #audit-app .ga-step:hover { background-color: var(--colour-hover); }
  #audit-app .ga-step.is-active,#audit-app .ga-option.is-selected,
  #audit-app .ga-check-jumps>button.is-complete {
    background-color: var(--colour-surface-background); color: var(--colour-text);
    border-color: var(--colour-input-border);
  }
  #audit-app .ga-step.is-active strong { text-decoration-line: underline; text-decoration-color: var(--colour-brand); text-underline-offset: .18em; }
  #audit-app .ga-view-switch button[aria-pressed="true"],
  #audit-app .ga-priority-filters>button[aria-pressed="true"] {
    background-color: var(--colour-surface-background); color: var(--colour-text);
    border-color: var(--colour-input-border); text-decoration-line: underline;
    text-decoration-color: var(--colour-brand); text-underline-offset: .2em;
  }
  #audit-app .ga-file-actions button,#audit-app .ga-report-buttons button,
  #audit-app .ga-step-actions button,#audit-app .ga-start-actions button,
  #audit-app .ga-empty button,#audit-app .ga-priority-filters>button,
  #audit-app .ga-check-jumps>button {
    background-color: var(--colour-body-background); color: var(--colour-text);
    border-color: var(--colour-input-border);
  }
  #audit-app .ga-file-actions button:hover,#audit-app .ga-report-buttons button:hover,
  #audit-app .ga-step-actions button:hover,#audit-app .ga-start-actions button:hover,
  #audit-app .ga-empty button:hover,#audit-app .ga-priority-filters>button:hover {
    background-color: var(--colour-hover); color: var(--colour-text); border-color: var(--colour-input-border);
  }
  #audit-app .ga-primary,#audit-app .ga-start-actions .ga-primary {
    background-color: var(--colour-button)!important; color: var(--colour-inverse-text)!important;
    border-color: var(--colour-button)!important;
  }
  #audit-app .ga-primary:hover,#audit-app .ga-start-actions .ga-primary:hover {
    background-color: var(--colour-button-hover)!important; color: var(--colour-inverse-text)!important;
    border-color: var(--colour-button-hover)!important;
  }
  #audit-app .ga-file-actions .ga-reset { color: var(--colour-error); border-color: var(--colour-error); background-color: var(--colour-body-background); }
  #audit-app .ga-file-actions .ga-reset:hover { color: var(--colour-text); background-color: var(--colour-error-tint-50); border-color: var(--colour-input-border); }
  #audit-app input:not([type="radio"]):not([type="checkbox"]):not([type="file"]),
  #audit-app select,#audit-app textarea,#audit-app .ga-option {
    color: var(--colour-text); background-color: var(--colour-body-background);
    border-color: var(--colour-input-border); caret-color: var(--colour-text);
  }
  #audit-app .ga-option.is-selected { background-color: var(--colour-surface-background); }
  #audit-app .ga-option input,#audit-app .ga-checkbox input { accent-color: var(--colour-link); }
  #audit-app [aria-invalid="true"] { border-color: var(--colour-error)!important; }
  #audit-app .ga-progress-track,#audit-app .ga-mini-track { background-color: var(--colour-border); }
  #audit-app .ga-progress-track div,#audit-app .ga-mini-track i { background-color: var(--colour-link); }
  #audit-app .ga-report-notice { border-left-color: var(--colour-service-brand); }
  #audit-app thead th { background-color: var(--colour-surface-background); color: var(--colour-text); }
  #audit-app .ga-response-footer,#audit-app .ga-board-summary dl>div,
  #audit-app .ga-board-next,#audit-app .ga-action-planning { border-color: var(--colour-divider); }
  #audit-app .ga-badge,#audit-app .ga-badge.ga-red,#audit-app .ga-badge.ga-green,
  #audit-app .ga-badge.ga-amber,#audit-app .ga-priority,
  #audit-app .ga-rag-totals>span,#audit-app .ga-question-meta>span {
    color: var(--colour-text); background-color: var(--colour-page-background);
    border: 1px solid var(--colour-input-border);
  }
  #audit-app .ga-badge.ga-red,#audit-app .ga-priority-1,
  #audit-app .ga-rag-totals .ga-rag-total-red,#audit-app .ga-question-meta .ga-check-finding {
    color: var(--colour-text); background-color: var(--colour-error-tint-50);
  }
  #audit-app .ga-badge.ga-green,#audit-app .ga-rag-totals .ga-rag-total-green,
  #audit-app .ga-question-meta .ga-check-evidenced {
    color: var(--colour-text); background-color: var(--colour-success-tint-50);
  }
  #audit-app .ga-priority-2,#audit-app .ga-priority-3,#audit-app .ga-badge.ga-amber,
  #audit-app .ga-rag-totals .ga-rag-total-amber,#audit-app .ga-question-meta .ga-check-incomplete,
  #audit-app .ga-deadline-note {
    color: var(--colour-text); background-color: var(--colour-page-background);
    border-color: var(--colour-input-border);
  }
  #audit-app .ga-stat-red strong,#audit-app .ga-stat-green strong,#audit-app .ga-stat-amber strong {
    color: var(--colour-text);
  }
  #audit-app .ga-status-dot { background-color: var(--colour-secondary-text); }
  #audit-app .ga-status-dot.ga-red { background-color: var(--colour-error); }
  #audit-app .ga-status-dot.ga-green { background-color: var(--colour-success); }
  #audit-app .ga-status-dot.ga-amber { background-color: var(--colour-text); }
  #audit-app .ga-guidance-link,#audit-app .ga-clear {
    color: var(--colour-link); text-decoration-line: underline; text-underline-offset: .18em;
  }
  #audit-app .ga-guidance-link:visited { color: var(--colour-link-visited); }
  #audit-app .ga-guidance-link:hover,#audit-app .ga-clear:hover { color: var(--colour-link-hover); }

  /* Consent choices have equal prominence; the choice behaviour is unchanged. */
  #gdpr-consent {
    background-color: var(--colour-body-background); color: var(--colour-text);
    border-color: var(--colour-input-border); box-shadow: var(--shadow);
  }
  #gdpr-consent h2 { color: var(--colour-text); }
  #gdpr-consent p { color: var(--colour-secondary-text); }
  #gdpr-consent .gdpr-consent-actions button {
    color: var(--colour-inverse-text); background-color: var(--colour-button);
    border-color: var(--colour-button);
  }
  #gdpr-consent .gdpr-consent-actions button:hover {
    color: var(--colour-inverse-text); background-color: var(--colour-button-hover);
    border-color: var(--colour-button-hover);
  }
  #gdpr-consent .gdpr-consent-actions [data-gdpr-consent="close"] {
    color: var(--colour-text); background-color: var(--colour-body-background);
    border-color: var(--colour-input-border);
  }
  #gdpr-consent .gdpr-consent-actions [data-gdpr-consent="close"]:hover {
    color: var(--colour-text); background-color: var(--colour-hover);
  }
  #gdpr-consent a { color: var(--colour-link); text-decoration-color: currentColor; }
  #gdpr-consent a:visited { color: var(--colour-link-visited); }
  #gdpr-consent a:hover { color: var(--colour-link-hover); }

  button:disabled,.button[aria-disabled="true"] { opacity: .6; }
  #audit-app button:disabled,.te-button:disabled,.screening-toolbar button:disabled { opacity: .5; }

  /* Focus is deliberately last, including the audit's existing !important buttons. */
  :is(a,button,summary,[tabindex]):focus-visible,
  #audit-app :is(a,button,summary,[tabindex]):focus-visible,
  #audit-app .ga-start-actions .ga-primary:focus-visible,
  #gdpr-consent :is(a,button,h2):focus-visible,
  .te-button:focus-visible,[data-gdpr-cookie-settings]:focus-visible,
  .table-scroll:focus-visible,#audit-app .ga-table-wrap:focus-visible,
  .skip:focus {
    color: var(--colour-focus-text)!important;
    background-color: var(--colour-focus)!important;
    border-color: var(--colour-focus-text)!important;
    outline: 3px solid var(--colour-focus)!important;
    outline-offset: 2px!important;
    box-shadow: 0 0 0 5px var(--colour-focus-text)!important;
    text-decoration-color: var(--colour-focus-text)!important;
  }
  :is(a,button,summary,[tabindex]):focus-visible :is(span,strong,em,svg),
  #audit-app :is(a,button,summary,[tabindex]):focus-visible :is(span,strong,em,svg) {
    color: var(--colour-focus-text)!important;
  }
  :is(input,select,textarea,[contenteditable="true"]):focus-visible,
  #audit-app :is(input,select,textarea):focus-visible,
  .print-template .template-field:focus-visible {
    color: var(--colour-text)!important;
    background-color: var(--colour-body-background)!important;

    border-color: var(--colour-input-border)!important;
    outline: 3px solid var(--colour-focus)!important;
    outline-offset: 0!important;
    box-shadow: inset 0 0 0 1px var(--colour-input-border)!important;
  }
  input[type="radio"]:focus-visible,input[type="checkbox"]:focus-visible,
  #audit-app input[type="radio"]:focus-visible,#audit-app input[type="checkbox"]:focus-visible {
    outline-offset: 3px!important; box-shadow: 0 0 0 5px var(--colour-focus-text)!important;
  }
}
@media screen and (max-width:900px) {
  .header-nav { box-shadow: var(--shadow); }
}
/* Keep the existing print layout; use the supplied neutral text and borders. */
@media print {
  body { color: var(--colour-text)!important; background-color: var(--colour-body-background)!important; }
  body * { color: var(--colour-text)!important; border-color: var(--colour-secondary-text)!important; }
  .brand,.brand .brand-small,.site-header .brand-mark { color: var(--colour-brand)!important; }
  :is(a,button,input,textarea,select,[tabindex]):focus { outline: none!important; box-shadow: none!important; }
}
@media (forced-colors: active) {
  /* Let the operating system choose high-contrast colours. */
  :root { forced-color-adjust: auto; }
  :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
  #audit-app :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
  #gdpr-consent :is(a,button):focus-visible {
    outline: 3px solid Highlight!important; outline-offset: 3px!important; box-shadow: none!important;
  }
}
