/*
 * Digilegal appearance themes.
 * The selected theme is stored by digilegal-theme.js on the current browser.
 */
:root {
	/* These values match the current site and remain unchanged until a theme is selected. */
	--dl-theme-primary: #c2a155;
	--dl-theme-primary-strong: #8b6a3e;
	--dl-theme-accent: #c2a155;
	--dl-theme-accent-soft: #f8f4ea;
	--dl-theme-page: #fbf8f1;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #f8f4ea;
	--dl-theme-text: #3e3e3e;
	--dl-theme-muted: #7e7f84;
	--dl-theme-border: rgba(194, 161, 85, 0.24);
	--dl-theme-shadow: rgba(84, 61, 30, 0.16);
	--dl-theme-nav: #5f482a;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(71, 111, 101, 0.28);
}

html[data-dl-theme="forest"] {
	--dl-theme-primary: #5a8a7d;
	--dl-theme-primary-strong: #3f6d62;
	--dl-theme-accent: #e4bd55;
	--dl-theme-accent-soft: #dcefe9;
	--dl-theme-page: #f4f8f5;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #eef5f1;
	--dl-theme-text: #203047;
	--dl-theme-muted: #61736f;
	--dl-theme-border: rgba(71, 111, 101, 0.24);
	--dl-theme-shadow: rgba(35, 65, 58, 0.16);
	--dl-theme-nav: #3f6d62;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(71, 111, 101, 0.28);
}

html[data-dl-theme="ocean"] {
	--dl-theme-primary: #3f74a2;
	--dl-theme-primary-strong: #2c5e86;
	--dl-theme-accent: #e5c15a;
	--dl-theme-accent-soft: #e3f0fb;
	--dl-theme-page: #f2f7fb;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #edf4fa;
	--dl-theme-text: #1d2b42;
	--dl-theme-muted: #63768b;
	--dl-theme-border: rgba(40, 82, 118, 0.24);
	--dl-theme-shadow: rgba(25, 58, 86, 0.16);
	--dl-theme-nav: #2c5e86;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(40, 82, 118, 0.28);
}

html[data-dl-theme="sunset"] {
	--dl-theme-primary: #b66f48;
	--dl-theme-primary-strong: #975638;
	--dl-theme-accent: #e4b14f;
	--dl-theme-accent-soft: #fbe8d7;
	--dl-theme-page: #fff8f2;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #fff0e5;
	--dl-theme-text: #35251f;
	--dl-theme-muted: #856b5e;
	--dl-theme-border: rgba(154, 87, 50, 0.24);
	--dl-theme-shadow: rgba(108, 55, 29, 0.16);
	--dl-theme-nav: #975638;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(154, 87, 50, 0.28);
}

html[data-dl-theme="slate"] {
	--dl-theme-primary: #64788d;
	--dl-theme-primary-strong: #4e6478;
	--dl-theme-accent: #d4a06b;
	--dl-theme-accent-soft: #e8edf2;
	--dl-theme-page: #f4f6f8;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #edf0f3;
	--dl-theme-text: #202b38;
	--dl-theme-muted: #687788;
	--dl-theme-border: rgba(77, 93, 112, 0.24);
	--dl-theme-shadow: rgba(31, 45, 59, 0.16);
	--dl-theme-nav: #4e6478;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(77, 93, 112, 0.28);
}

html[data-dl-theme="sandstone"] {
	--dl-theme-primary: #9c7b4d;
	--dl-theme-primary-strong: #7f633e;
	--dl-theme-accent: #c2a155;
	--dl-theme-accent-soft: #f4ecda;
	--dl-theme-page: #fbf8f1;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #f8f4ea;
	--dl-theme-text: #3e352c;
	--dl-theme-muted: #776d62;
	--dl-theme-border: rgba(139, 106, 62, 0.24);
	--dl-theme-shadow: rgba(84, 61, 30, 0.16);
	--dl-theme-nav: #7f633e;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(139, 106, 62, 0.28);
}

html[data-dl-theme="lavender"] {
	--dl-theme-primary: #816fae;
	--dl-theme-primary-strong: #66538f;
	--dl-theme-accent: #d7b8e8;
	--dl-theme-accent-soft: #f0ebfa;
	--dl-theme-page: #faf8fd;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #f5f1fb;
	--dl-theme-text: #302843;
	--dl-theme-muted: #756d86;
	--dl-theme-border: rgba(102, 83, 143, 0.24);
	--dl-theme-shadow: rgba(77, 59, 113, 0.16);
	--dl-theme-nav: #66538f;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(102, 83, 143, 0.28);
}

html[data-dl-theme="rose"] {
	--dl-theme-primary: #bd7180;
	--dl-theme-primary-strong: #9f5363;
	--dl-theme-accent: #e8b09a;
	--dl-theme-accent-soft: #fbe9e7;
	--dl-theme-page: #fff8f6;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #fff1ef;
	--dl-theme-text: #3b2930;
	--dl-theme-muted: #856d73;
	--dl-theme-border: rgba(159, 83, 99, 0.24);
	--dl-theme-shadow: rgba(112, 54, 68, 0.16);
	--dl-theme-nav: #9f5363;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(159, 83, 99, 0.28);
}

html[data-dl-theme="teal"] {
	--dl-theme-primary: #4f9698;
	--dl-theme-primary-strong: #367579;
	--dl-theme-accent: #e4c66d;
	--dl-theme-accent-soft: #e1f3f1;
	--dl-theme-page: #f3fbfa;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #edf8f7;
	--dl-theme-text: #20383a;
	--dl-theme-muted: #668083;
	--dl-theme-border: rgba(54, 117, 121, 0.24);
	--dl-theme-shadow: rgba(34, 87, 89, 0.16);
	--dl-theme-nav: #367579;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(54, 117, 121, 0.28);
}

html[data-dl-theme="emerald"] {
	--dl-theme-primary: #5b9974;
	--dl-theme-primary-strong: #3f7958;
	--dl-theme-accent: #dfbd63;
	--dl-theme-accent-soft: #e5f3e9;
	--dl-theme-page: #f5faf6;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #eef7f0;
	--dl-theme-text: #243b2e;
	--dl-theme-muted: #668071;
	--dl-theme-border: rgba(63, 121, 88, 0.24);
	--dl-theme-shadow: rgba(40, 94, 63, 0.16);
	--dl-theme-nav: #3f7958;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(63, 121, 88, 0.28);
}

html[data-dl-theme="sky"] {
	--dl-theme-primary: #679bc0;
	--dl-theme-primary-strong: #477da3;
	--dl-theme-accent: #e3c15d;
	--dl-theme-accent-soft: #e7f2fb;
	--dl-theme-page: #f5faff;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #eef6fc;
	--dl-theme-text: #243747;
	--dl-theme-muted: #6b8090;
	--dl-theme-border: rgba(71, 125, 163, 0.24);
	--dl-theme-shadow: rgba(38, 87, 119, 0.16);
	--dl-theme-nav: #477da3;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(71, 125, 163, 0.28);
}

html[data-dl-theme="plum"] {
	--dl-theme-primary: #9a70a4;
	--dl-theme-primary-strong: #784f86;
	--dl-theme-accent: #d8abc9;
	--dl-theme-accent-soft: #f6eaf5;
	--dl-theme-page: #fcf8fc;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #f8f0f8;
	--dl-theme-text: #38283e;
	--dl-theme-muted: #806e84;
	--dl-theme-border: rgba(120, 79, 134, 0.24);
	--dl-theme-shadow: rgba(83, 49, 95, 0.16);
	--dl-theme-nav: #784f86;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(120, 79, 134, 0.28);
}

html[data-dl-theme="amber"] {
	--dl-theme-primary: #c08a48;
	--dl-theme-primary-strong: #9b682e;
	--dl-theme-accent: #e4bb5c;
	--dl-theme-accent-soft: #fff3dc;
	--dl-theme-page: #fffbf4;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #fff7e8;
	--dl-theme-text: #493521;
	--dl-theme-muted: #88745a;
	--dl-theme-border: rgba(155, 104, 46, 0.24);
	--dl-theme-shadow: rgba(112, 72, 25, 0.16);
	--dl-theme-nav: #9b682e;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(155, 104, 46, 0.28);
}

html[data-dl-theme="coral"] {
	--dl-theme-primary: #c77d73;
	--dl-theme-primary-strong: #a85d54;
	--dl-theme-accent: #e5b45e;
	--dl-theme-accent-soft: #ffede8;
	--dl-theme-page: #fff9f7;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #fff2ef;
	--dl-theme-text: #462d2b;
	--dl-theme-muted: #896f6b;
	--dl-theme-border: rgba(168, 93, 84, 0.24);
	--dl-theme-shadow: rgba(118, 57, 50, 0.16);
	--dl-theme-nav: #a85d54;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(168, 93, 84, 0.28);
}

html[data-dl-theme="indigo"] {
	--dl-theme-primary: #707cc0;
	--dl-theme-primary-strong: #505ca2;
	--dl-theme-accent: #ddb76a;
	--dl-theme-accent-soft: #eaecfb;
	--dl-theme-page: #f8f9ff;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #f0f2fc;
	--dl-theme-text: #293250;
	--dl-theme-muted: #707995;
	--dl-theme-border: rgba(80, 92, 162, 0.24);
	--dl-theme-shadow: rgba(47, 57, 116, 0.16);
	--dl-theme-nav: #505ca2;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(80, 92, 162, 0.28);
}

html[data-dl-theme="moss"] {
	--dl-theme-primary: #849b68;
	--dl-theme-primary-strong: #657d4e;
	--dl-theme-accent: #d8b766;
	--dl-theme-accent-soft: #eef5e2;
	--dl-theme-page: #f9fcf5;
	--dl-theme-surface: #ffffff;
	--dl-theme-surface-alt: #f3f8eb;
	--dl-theme-text: #303c28;
	--dl-theme-muted: #738067;
	--dl-theme-border: rgba(101, 125, 78, 0.24);
	--dl-theme-shadow: rgba(63, 83, 43, 0.16);
	--dl-theme-nav: #657d4e;
	--dl-theme-nav-text: #ffffff;
	--dl-theme-focus: rgba(101, 125, 78, 0.28);
}

html[data-dl-theme] body {
	background-color: var(--dl-theme-page);
	color: var(--dl-theme-text);
	transition: background-color 0.2s ease, color 0.2s ease;
}

html[data-dl-theme] a {
	color: var(--dl-theme-primary);
}

html[data-dl-theme] a:hover,
html[data-dl-theme] a:focus {
	color: var(--dl-theme-primary-strong);
}

html[data-dl-theme] .mainheader .dl-header-top {
	background: linear-gradient(180deg, var(--dl-theme-surface) 0%, var(--dl-theme-surface-alt) 100%);
	border-bottom-color: var(--dl-theme-border);
}

html[data-dl-theme] .mainheader .dl-header-top .dl-contact-row a:hover,
html[data-dl-theme] .mainheader .dl-header-top .dl-contact-row i {
	color: var(--dl-theme-primary);
}

html[data-dl-theme] .mainheader .dl-header-top .dl-welcome-pill {
	background: var(--dl-theme-accent-soft);
	border-color: var(--dl-theme-border);
	color: var(--dl-theme-text) !important;
	box-shadow: 0 1px 3px var(--dl-theme-shadow);
}

html[data-dl-theme] .mainheader .dl-header-top .dl-welcome-pill::before {
	color: var(--dl-theme-primary);
}

html[data-dl-theme] .dl-nav-shell .top-nav,
html[data-dl-theme] .dl-nav-shell .dl-nav-scroll {
	background: var(--dl-theme-nav);
}

html[data-dl-theme] .dl-nav-shell .top-nav .nav > li > a {
	color: var(--dl-theme-nav-text);
}

html[data-dl-theme] .dl-nav-shell .top-nav .nav > li.active > a,
html[data-dl-theme] .dl-nav-shell .top-nav .nav > li > a:hover,
html[data-dl-theme] .dl-nav-shell .top-nav .nav > li > a:focus {
	background: var(--dl-theme-primary);
	color: #fff;
}

html[data-dl-theme] .dl-nav-shell .dl-nav-has-sub > ul {
	background: var(--dl-theme-nav);
	border-color: var(--dl-theme-border);
}

html[data-dl-theme] .panel,
html[data-dl-theme] .modal-content,
html[data-dl-theme] .well,
html[data-dl-theme] .thumbnail,
html[data-dl-theme] .dl-profile-panel {
	background-color: var(--dl-theme-surface);
	border-color: var(--dl-theme-border);
	box-shadow: 0 8px 24px var(--dl-theme-shadow);
	color: var(--dl-theme-text);
}

html[data-dl-theme] .panel-heading,
html[data-dl-theme] .modal-header,
html[data-dl-theme] .modal-footer {
	background-color: var(--dl-theme-primary) !important;
	border-color: var(--dl-theme-border);
	color: #fff;
}

html[data-dl-theme] .btn-primary,
html[data-dl-theme] .btn-info,
html[data-dl-theme] .btn-success {
	background-color: var(--dl-theme-primary);
	border-color: var(--dl-theme-primary-strong);
	color: #fff;
}

html[data-dl-theme] .btn-primary:hover,
html[data-dl-theme] .btn-primary:focus,
html[data-dl-theme] .btn-info:hover,
html[data-dl-theme] .btn-success:hover {
	background-color: var(--dl-theme-primary-strong);
	border-color: var(--dl-theme-primary-strong);
	color: #fff;
}

html[data-dl-theme] .ai-search-btn,
html[data-dl-theme] .search-btn,
html[data-dl-theme] .clear-btn,
html[data-dl-theme] .result-back-search-btn,
html[data-dl-theme] #resultGlobalSearchOpenBtn,
html[data-dl-theme] #resultFilterOpenFab {
	background: linear-gradient(135deg, var(--dl-theme-primary) 0%, var(--dl-theme-primary-strong) 100%) !important;
	border-color: var(--dl-theme-primary-strong) !important;
	color: #fff !important;
}

html[data-dl-theme] .ai-search-btn:hover,
html[data-dl-theme] .search-btn:hover,
html[data-dl-theme] .clear-btn:hover,
html[data-dl-theme] .result-back-search-btn:hover,
html[data-dl-theme] #resultGlobalSearchOpenBtn:hover,
html[data-dl-theme] #resultFilterOpenFab:hover {
	background: var(--dl-theme-primary-strong) !important;
	border-color: var(--dl-theme-primary-strong) !important;
	color: #fff !important;
}

html[data-dl-theme] .form-control:focus,
html[data-dl-theme] select:focus,
html[data-dl-theme] textarea:focus {
	border-color: var(--dl-theme-primary);
	box-shadow: 0 0 0 3px var(--dl-theme-focus);
}

html[data-dl-theme] .table > thead > tr > th,
html[data-dl-theme] .table > tbody > tr:hover {
	background-color: var(--dl-theme-surface-alt);
}

html[data-dl-theme] .table > thead > tr > th,
html[data-dl-theme] .table > tbody > tr > td {
	border-color: var(--dl-theme-border);
}

html[data-dl-theme] .result-back-search-bar {
	background: var(--dl-theme-surface-alt);
	border-color: var(--dl-theme-border);
}

/* Shared application surfaces. These rules are scoped to an explicitly selected theme. */
html[data-dl-theme] .mainheader,
html[data-dl-theme] .search-main-container,
html[data-dl-theme] .search-main-inner,
html[data-dl-theme] .panel_content_box,
html[data-dl-theme] .product-sidebar,
html[data-dl-theme] #panel_content_box,
html[data-dl-theme] #main-container,
html[data-dl-theme] .side-bar,
html[data-dl-theme] .sidebar,
html[data-dl-theme] .content,
html[data-dl-theme] .case-table-container,
html[data-dl-theme] .jtable-main-container {
	background-color: var(--dl-theme-surface-alt) !important;
	color: var(--dl-theme-text);
}

html[data-dl-theme] .product-sidebar-banner,
html[data-dl-theme] .product-sidebar-link-standard {
	background: var(--dl-theme-primary) !important;
	border-color: var(--dl-theme-primary-strong) !important;
	box-shadow: 0 3px 10px var(--dl-theme-shadow);
}

html[data-dl-theme] .product-sidebar-banner:hover,
html[data-dl-theme] .product-sidebar-link-standard:hover {
	background: var(--dl-theme-primary-strong) !important;
	border-color: var(--dl-theme-primary-strong) !important;
}

html[data-dl-theme] .product-sidebar-link-standard a,
html[data-dl-theme] .product-sidebar-link-standard a:hover,
html[data-dl-theme] .product-sidebar-link-standard a:focus {
	color: #fff !important;
}

html[data-dl-theme] .product-sidebar-link-standard a > .fa,
html[data-dl-theme] .product-sidebar-link-standard a:hover > .fa,
html[data-dl-theme] .product-sidebar-link-standard a:focus > .fa {
	color: #fff !important;
}

html[data-dl-theme] .footer {
	background: var(--dl-theme-nav) !important;
	border-color: var(--dl-theme-primary);
	color: var(--dl-theme-nav-text);
}

html[data-dl-theme] .footer a,
html[data-dl-theme] .footer h4,
html[data-dl-theme] .footer li {
	color: var(--dl-theme-nav-text) !important;
}

html[data-dl-theme] h1,
html[data-dl-theme] h2,
html[data-dl-theme] h3,
html[data-dl-theme] h4,
html[data-dl-theme] h5,
html[data-dl-theme] h6,
html[data-dl-theme] label,
html[data-dl-theme] .control-label,
html[data-dl-theme] .text-muted {
	color: var(--dl-theme-text);
}

html[data-dl-theme] input,
html[data-dl-theme] select,
html[data-dl-theme] textarea,
html[data-dl-theme] .form-control {
	background-color: var(--dl-theme-surface) !important;
	border-color: var(--dl-theme-border) !important;
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] .btn-default {
	background-color: var(--dl-theme-surface);
	border-color: var(--dl-theme-border);
	color: var(--dl-theme-primary-strong);
}

html[data-dl-theme] .btn-default:hover,
html[data-dl-theme] .btn-default:focus {
	background-color: var(--dl-theme-accent-soft);
	border-color: var(--dl-theme-primary);
	color: var(--dl-theme-primary-strong);
}

html[data-dl-theme] .table,
html[data-dl-theme] .jtable,
html[data-dl-theme] .dataTables_wrapper,
html[data-dl-theme] .jtable-main-container {
	background-color: var(--dl-theme-surface);
	color: var(--dl-theme-text);
}

html[data-dl-theme] .table-striped > tbody > tr:nth-of-type(odd),
html[data-dl-theme] .jtable tr:nth-child(even),
html[data-dl-theme] .list-group-item {
	background-color: var(--dl-theme-surface-alt);
}

html[data-dl-theme] div.jtable-main-container > table.jtable > thead > tr > th.jtable-column-header,
html[data-dl-theme] div.jtable-main-container > div.jtable-bottom-panel,
html[data-dl-theme] div.jtable-main-container > div.jtable-bottom-panel .jtable-page-list .jtable-page-number-active,
html[data-dl-theme] div.jtable-main-container > div.jtable-bottom-panel .jtable-left-area,
html[data-dl-theme] .jtable-left-area,
html[data-dl-theme] .jtable-column-header {
	background: var(--dl-theme-primary) !important;
	background-image: none !important;
	border-color: var(--dl-theme-primary-strong) !important;
	color: #fff !important;
}

html[data-dl-theme] .jtable-goto-page select,
html[data-dl-theme] .jtable-page-size-change select,
html[data-dl-theme] .jtable-goto-page,
html[data-dl-theme] .jtable-page-size-change {
	background-color: var(--dl-theme-surface) !important;
	border-color: var(--dl-theme-border) !important;
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] .jtable-row-selected,
html[data-dl-theme] .onCloseSelected,
html[data-dl-theme] tr.jtable-row-selected,
html[data-dl-theme] tr.onCloseSelected {
	background: var(--dl-theme-accent-soft) !important;
	background-color: var(--dl-theme-accent-soft) !important;
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] .case-table-container table.semantic-citation-table.jtable thead th,
html[data-dl-theme] #semanticSearchSection table.semantic-citation-table.jtable thead th {
	background: var(--dl-theme-primary) !important;
	background-image: none !important;
	color: #fff !important;
}

html[data-dl-theme] .results-panel-heading,
html[data-dl-theme] #resultsAccordion .results-panel-heading,
html[data-dl-theme] #resultsAccordionSingle .results-panel-heading,
html[data-dl-theme] #resultsAccordion .results-panel-heading .panel-title a,
html[data-dl-theme] #resultsAccordion .results-panel-heading .panel-title a.collapsed,
html[data-dl-theme] #resultsAccordionSingle .results-panel-heading .panel-title a,
html[data-dl-theme] #resultsAccordionSingle .results-panel-heading .panel-title a.collapsed {
	background: var(--dl-theme-primary) !important;
	background-image: none !important;
	border-color: var(--dl-theme-primary-strong) !important;
	color: #fff !important;
}

html[data-dl-theme] #horizontalTab > ul,
html[data-dl-theme] #horizontalTab > ul.resp-tabs-list,
html[data-dl-theme] #horizontalTab > ul > li,
html[data-dl-theme] #horizontalTab > ul.resp-tabs-list > li,
html[data-dl-theme] #horizontalTab .resp-tab-active {
	background: var(--dl-theme-primary) !important;
	background-image: none !important;
	border-color: var(--dl-theme-primary-strong) !important;
	color: #fff !important;
}

html[data-dl-theme] #horizontalTab .resp-tabs-container,
html[data-dl-theme] #horizontalTab .FullTextData,
html[data-dl-theme] #modal-body,
html[data-dl-theme] #aiResultContent,
html[data-dl-theme] #aiHeadnoteModalBody {
	background-color: var(--dl-theme-surface) !important;
	color: var(--dl-theme-text) !important;
	border-color: var(--dl-theme-border) !important;
}

/* Full-text modal content is loaded dynamically and can contain legacy inline colours. */
html[data-dl-theme] #detailModal .modal-content,
html[data-dl-theme] #detailModal .modal-body,
html[data-dl-theme] #detailModal #judgement-details,
html[data-dl-theme] #detailModal .FullTextData,
html[data-dl-theme] #detailModal #modal-body {
	background-color: var(--dl-theme-surface) !important;
	color: var(--dl-theme-text) !important;
	border-color: var(--dl-theme-border) !important;
}

html[data-dl-theme] .FullTextData,
html[data-dl-theme] .FullTextData * {
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] .FullTextData a {
	color: var(--dl-theme-primary-strong) !important;
}

html[data-dl-theme] .FullTextData mark,
html[data-dl-theme] .FullTextData .highlighted,
html[data-dl-theme] .FullTextData .match,
html[data-dl-theme] .FullTextData .redMark {
	background-color: var(--dl-theme-accent-soft) !important;
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] #horizontalTab > ul > li:hover,
html[data-dl-theme] #horizontalTab > ul > li.resp-tab-active {
	background: var(--dl-theme-primary-strong) !important;
	color: #fff !important;
}

/* jQuery UI tabs/buttons otherwise keep the legacy gold active state. */
html[data-dl-theme] .ui-state-active,
html[data-dl-theme] .ui-widget-content .ui-state-active,
html[data-dl-theme] .ui-widget-header .ui-state-active,
html[data-dl-theme] a.ui-button:active,
html[data-dl-theme] .ui-button:active,
html[data-dl-theme] .ui-button.ui-state-active:hover,
html[data-dl-theme] #detailModal #tabs > ul > li.ui-tabs-active {
	border-color: var(--dl-theme-primary-strong) !important;
	background: var(--dl-theme-primary) !important;
	background-image: none !important;
	color: #fff !important;
}

html[data-dl-theme] .ui-state-active a,
html[data-dl-theme] .ui-state-active a:link,
html[data-dl-theme] .ui-state-active a:visited,
html[data-dl-theme] #detailModal #tabs > ul > li.ui-tabs-active a {
	color: #fff !important;
}

html[data-dl-theme] .ui-state-hover,
html[data-dl-theme] .ui-widget-content .ui-state-hover,
html[data-dl-theme] .ui-widget-header .ui-state-hover,
html[data-dl-theme] .ui-state-focus,
html[data-dl-theme] .ui-widget-content .ui-state-focus,
html[data-dl-theme] .ui-widget-header .ui-state-focus,
html[data-dl-theme] .ui-button:hover,
html[data-dl-theme] .ui-button:focus {
	border-color: var(--dl-theme-primary) !important;
	background: var(--dl-theme-accent-soft) !important;
	background-image: none !important;
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] .ui-widget-content,
html[data-dl-theme] .ui-widget-header,
html[data-dl-theme] .ui-tabs-panel {
	border-color: var(--dl-theme-border) !important;
	background: var(--dl-theme-surface) !important;
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] .ui-icon-background,
html[data-dl-theme] .ui-state-active .ui-icon-background {
	border-color: var(--dl-theme-primary-strong) !important;
	background-color: var(--dl-theme-surface) !important;
}

/* Compatibility overrides for legacy responsive-tabs.css / easyResponsiveTabs markup. */
html[data-dl-theme] .r-tabs,
html[data-dl-theme] .resp-tabs-container {
	background-color: var(--dl-theme-surface) !important;
	border-color: var(--dl-theme-primary) !important;
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] .r-tabs .r-tabs-nav,
html[data-dl-theme] .r-tabs .r-tabs-nav .r-tabs-tab,
html[data-dl-theme] .resp-tabs-list,
html[data-dl-theme] .resp-tab-item {
	background: var(--dl-theme-primary) !important;
	background-image: none !important;
	border-color: var(--dl-theme-primary-strong) !important;
	color: #fff !important;
}

html[data-dl-theme] .r-tabs .r-tabs-nav .r-tabs-anchor,
html[data-dl-theme] .resp-tab-item a,
html[data-dl-theme] .resp-tab-item > a {
	color: #fff !important;
	text-shadow: none !important;
}

html[data-dl-theme] .r-tabs .r-tabs-nav .r-tabs-state-active,
html[data-dl-theme] .r-tabs .r-tabs-nav .r-tabs-state-active .r-tabs-anchor,
html[data-dl-theme] .resp-tab-active,
html[data-dl-theme] .resp-tab-item.resp-tab-active {
	background: var(--dl-theme-surface-alt) !important;
	background-image: none !important;
	border-color: var(--dl-theme-primary) !important;
	color: var(--dl-theme-primary-strong) !important;
	text-shadow: none !important;
}

html[data-dl-theme] .r-tabs .r-tabs-panel,
html[data-dl-theme] .r-tabs .r-tabs-accordion-title .r-tabs-anchor,
html[data-dl-theme] .resp-tab-content,
html[data-dl-theme] h2.resp-accordion {
	background: var(--dl-theme-surface) !important;
	border-color: var(--dl-theme-border) !important;
	color: var(--dl-theme-text) !important;
}

html[data-dl-theme] .r-tabs .r-tabs-accordion-title.r-tabs-state-active .r-tabs-anchor,
html[data-dl-theme] h2.resp-accordion.resp-accordion-active {
	background: var(--dl-theme-primary) !important;
	color: #fff !important;
}

html[data-dl-theme] .resp-tab-item:hover,
html[data-dl-theme] h2.resp-accordion:hover {
	background: var(--dl-theme-primary-strong) !important;
	color: #fff !important;
	text-shadow: none !important;
}

html[data-dl-theme] .dropdown-menu,
html[data-dl-theme] .popover,
html[data-dl-theme] .tooltip-inner,
html[data-dl-theme] .breadcrumb,
html[data-dl-theme] .alert {
	background-color: var(--dl-theme-surface);
	border-color: var(--dl-theme-border);
	color: var(--dl-theme-text);
}

/* Existing JSPs contain legacy inline gold/beige colours; remap those only after selection. */
html[data-dl-theme] [style*="#c2a155"],
html[data-dl-theme] [style*="#C2A155"] {
	background-color: var(--dl-theme-primary) !important;
	border-color: var(--dl-theme-primary) !important;
}

html[data-dl-theme] [style*="#f8f4e9"],
html[data-dl-theme] [style*="#F8F4E9"],
html[data-dl-theme] [style*="#f8f4ea"],
html[data-dl-theme] [style*="#F8F4EA"] {
	background-color: var(--dl-theme-accent-soft) !important;
}

html[data-dl-theme] [style*="#E1B16A"],
html[data-dl-theme] [style*="#e1b16a"],
html[data-dl-theme] [style*="#F5ECCE"],
html[data-dl-theme] [style*="#f5ecce"] {
	background-color: var(--dl-theme-accent-soft) !important;
	border-color: var(--dl-theme-border) !important;
}

html[data-dl-theme] [style*="#e7d7b3"],
html[data-dl-theme] [style*="#E7D7B3"] {
	border-color: var(--dl-theme-border) !important;
}

html[data-dl-theme] [style*="#7e7f84"],
html[data-dl-theme] [style*="#7E7F84"] {
	color: var(--dl-theme-muted) !important;
}

html[data-dl-theme] [style*="#555"],
html[data-dl-theme] [style*="#666"],
html[data-dl-theme] [style*="#333"],
html[data-dl-theme] [style*="#212529"] {
	color: var(--dl-theme-text) !important;
}

/* Standalone settings-page chrome. */
.dl-theme-settings-document {
	min-height: 100vh;
	background: var(--dl-theme-page);
}

.dl-theme-settings-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 12px 24px;
	background: var(--dl-theme-surface);
	border-bottom: 1px solid var(--dl-theme-border);
	box-shadow: 0 2px 10px var(--dl-theme-shadow);
}

.dl-theme-settings-brand img {
	display: block;
	max-width: 150px;
	max-height: 52px;
}

.dl-theme-settings-user {
	display: flex;
	align-items: center;
	gap: 14px;
	color: var(--dl-theme-muted);
	font-size: 13px;
}

.dl-theme-settings-user a {
	color: var(--dl-theme-primary-strong);
	text-decoration: none;
}

.dl-theme-settings-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 11px 24px;
	background: var(--dl-theme-nav);
	color: var(--dl-theme-nav-text);
	font-size: 14px;
}

.dl-theme-settings-nav a {
	color: var(--dl-theme-nav-text);
	text-decoration: none;
}

.dl-theme-settings-nav span {
	opacity: 0.9;
}

.dl-theme-settings-card-heading,
.dl-theme-settings-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.dl-theme-eyebrow {
	margin: 0 0 5px;
	color: var(--dl-theme-primary);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1.4px;
	text-transform: uppercase;
}

.dl-theme-heading-icon {
	display: grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border-radius: 50%;
	background: var(--dl-theme-accent-soft);
	color: var(--dl-theme-primary);
	font-size: 22px;
}

.dl-theme-reset {
	padding: 7px 11px;
	border: 1px solid var(--dl-theme-border);
	border-radius: 7px;
	background: transparent;
	color: var(--dl-theme-primary-strong);
	font-size: 12px;
	cursor: pointer;
}

.dl-theme-reset:hover,
.dl-theme-reset:focus {
	background: var(--dl-theme-accent-soft);
	outline: none;
}

/* Theme settings page */
.dl-theme-settings-page {
	min-height: 60vh;
	padding: 34px 16px 52px;
	background: var(--dl-theme-page);
}

.dl-theme-settings-card {
	max-width: 760px;
	margin: 0 auto;
	padding: 30px;
	border: 1px solid var(--dl-theme-border);
	border-radius: 22px;
	background: var(--dl-theme-surface);
	box-shadow: 0 12px 30px var(--dl-theme-shadow);
}

.dl-theme-settings-card h1 {
	margin: 0 0 8px;
	color: var(--dl-theme-text);
	font-size: 30px;
	font-weight: 700;
}

.dl-theme-settings-card .dl-theme-intro {
	margin: 0 0 24px;
	color: var(--dl-theme-muted);
	font-size: 15px;
}

.dl-theme-options {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 14px;
}

.dl-theme-choice {
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 76px;
	padding: 14px 16px;
	border: 2px solid transparent;
	border-radius: 15px;
	background: var(--dl-theme-surface-alt);
	color: var(--dl-theme-text);
	cursor: pointer;
	text-align: left;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.dl-theme-choice:hover,
.dl-theme-choice:focus {
	border-color: var(--dl-theme-primary);
	box-shadow: 0 6px 16px var(--dl-theme-shadow);
	outline: none;
	transform: translateY(-1px);
}

.dl-theme-choice.is-selected {
	border-color: var(--dl-theme-primary);
	background: var(--dl-theme-accent-soft);
	box-shadow: 0 5px 14px var(--dl-theme-shadow);
}

.dl-theme-swatches {
	display: inline-flex;
	gap: 5px;
	margin-right: 12px;
}

.dl-theme-swatches i {
	width: 15px;
	height: 15px;
	border-radius: 50%;
}

.dl-theme-choice-label {
	font-size: 17px;
	font-weight: 600;
}

.dl-theme-choice-check {
	margin-left: auto;
	color: var(--dl-theme-primary);
	opacity: 0;
}

.dl-theme-choice.is-selected .dl-theme-choice-check {
	opacity: 1;
}

.dl-theme-saved-note {
	margin: 24px 0 0;
	color: var(--dl-theme-muted);
	font-size: 14px;
}

@media (max-width: 600px) {
	.dl-theme-settings-header,
	.dl-theme-settings-nav {
		padding-left: 14px;
		padding-right: 14px;
	}

	.dl-theme-settings-user span {
		display: none;
	}

	.dl-theme-settings-card {
		padding: 24px 18px;
		border-radius: 18px;
	}

	.dl-theme-settings-card h1 {
		font-size: 25px;
	}
}
