/* ---------------------------------------------------
    GTOP100 DARK THEME
    Activated by data-theme="dark" on <html>, which is
    rendered server-side in front_header.php from the
    gt_theme cookie. Loaded after style.css and
    cat-v4-26-2.css so it wins the cascade.

    Every rule is prefixed [data-theme="dark"], giving it
    specificity (0,2,x) against the (0,1,x) base rules —
    so it also beats the <style> blocks embedded further
    down the page in the listing templates.
    !important appears only where the base rule already
    used !important.
----------------------------------------------------- */

[data-theme="dark"] {
	--gt-surface: #15171a;
	--gt-card: #1d2024;
	--gt-row: #212429;
	--gt-row-alt: #1b1e22;
	--gt-raised: #26292e;
	--gt-head-a: #2a2e34;
	--gt-head-b: #212429;
	--gt-prem-a: #3d3317;
	--gt-prem-b: #2b2410;
	--gt-prem-rank-a: #4a3d1c;
	--gt-prem-rank-b: #382e15;
	--gt-line: #33383f;
	--gt-line-soft: #2a2e34;
	--gt-text: #e6e8ea;
	--gt-text-2: #a7adb4;
	--gt-text-3: #8b9096;
	/* style.css sets `a { color: #c80108 }` globally, so brand red is this
	   site's link colour — not blue. These are the same value as
	   --gt-brand-text, kept as separate tokens so link colour and
	   brand-coloured text can diverge later without hunting rules.
	   6.2:1 on standard rows, 5.0:1 on the premium gradient. */
	--gt-link: #ff7b82;
	--gt-link-hover: #ff9ba1;
	/* Tuned so white label text clears 4.5:1 — #e0313a lands at 4.498
	   and misses AA by a rounding error. */
	--gt-brand: #d92d36;
	/* Brand red as a fill is fine, but as text on a dark panel it only
	   reaches 3.6:1. This lighter tone is used for brand-coloured text. */
	--gt-brand-text: #ff7b82;
	--gt-gold: #ffd700;
	--gt-silver: #cfc3c2;
	--gt-bronze: #e08a54;
}

/* ---------------------------------------------------
    PAGE SHELL
    The header, nav and footer are already dark in the
    base theme and are deliberately left alone.
    The body background image is set inline from
    $body_bg, so it is dimmed from here rather than
    overridden.

    This used to be `background-blend-mode: multiply`
    against #0d0f12. Multiply is image x colour, and
    #0d0f12 is ~5% brightness, so every backdrop was
    crushed to near-black — the WoW artwork landed at
    luminance 2.8 against a container at 23 and cards
    at 32, so it read as a void rather than a picture.

    Multiply cannot be tuned out of this, because it
    SCALES and the backgrounds vary hugely in
    brightness (wow.jpg 47.9, bg.jpg 114.8,
    minecraft.jpg 138.1). Any multiplier bright enough
    to rescue wow.jpg pushed minecraft.jpg to 40 —
    brighter than the cards sitting on top of it.

    An alpha overlay pulls every image TOWARD a fixed
    colour instead of scaling it, so the spread
    compresses instead of being preserved.

    Alpha is the one number to tune. Resulting
    luminance, for reference (--gt-card is 32):

      alpha   wow.jpg   bg.jpg   minecraft.jpg
      0.90      18.1      24.8       27.1
      0.70      24.8      41.4       51.8
      0.60      28.1      49.8       62.1

    Set to 0.60: at 0.90 the art was still too faint on
    the darker backdrops. Lower shows more art; raise it
    if a bright backdrop such as minecraft.jpg starts
    competing with the listings.

    The overlay must stay on a pseudo-element: the
    image comes from an inline style attribute, so CSS
    cannot prepend a gradient to background-image.
    z-index -1 keeps it above the body background but
    below all content; pointer-events none keeps it
    click-through. background-color is retained as the
    fallback for a background image that 404s.
----------------------------------------------------- */

[data-theme="dark"] body {
	background-color: #0d0f12 !important;
	background-blend-mode: normal !important;
}
[data-theme="dark"] body::before {
	content: "";
	position: fixed;
	inset: 0;
	background: rgba(13, 15, 18, 0.60);
	z-index: -1;
	pointer-events: none;
}
[data-theme="dark"] #content {
	background: var(--gt-surface);
	color: var(--gt-text);
}

/* ---------------------------------------------------
    TYPOGRAPHY
----------------------------------------------------- */

[data-theme="dark"] #content h1,
[data-theme="dark"] #content h2,
[data-theme="dark"] #content h3,
[data-theme="dark"] #content h4,
[data-theme="dark"] #content h5,
[data-theme="dark"] #content h6,
[data-theme="dark"] #content p,
[data-theme="dark"] #content li,
[data-theme="dark"] #content td,
[data-theme="dark"] #content th,
[data-theme="dark"] #content label,
[data-theme="dark"] #content dt,
[data-theme="dark"] #content dd {
	color: var(--gt-text);
}
/* Buttons, pagination and filter toggles are excluded: they carry their
   own foreground colour against a filled background, and #content a
   would otherwise outrank it and put link blue on a red button.
   The exclusions sit inside :where() so they contribute no specificity —
   a plain :not() chain pushes this rule to (1,5,1) and makes every
   component-level override below unwinnable. */
[data-theme="dark"] #content a:not(:where(.btn, .page-link, .badge, .dropdown-toggle)) {
	color: var(--gt-link);
}
[data-theme="dark"] #content a:not(:where(.btn, .page-link, .badge, .dropdown-toggle)):hover,
[data-theme="dark"] #content a:not(:where(.btn, .page-link, .badge, .dropdown-toggle)):focus {
	color: var(--gt-link-hover);
}

/* Category filter bar. Light mode renders all four tabs in brand red;
   without these the generic link rule turns Versions/Types/Country blue
   and only "Search for servers" stays red, because a.s-server is
   !important in the base stylesheet. */
[data-theme="dark"] #content .search-filter-links > a,
[data-theme="dark"] #content ul.nav_search > li > a,
[data-theme="dark"] #content .nav_search > li > a {
	color: var(--gt-brand-text);
}
[data-theme="dark"] #content .nav_search ul.dropdown-menu a,
[data-theme="dark"] #content ul.nav_search ul a {
	color: var(--gt-text);
}
[data-theme="dark"] #content small,
[data-theme="dark"] #content .text-muted {
	color: var(--gt-text-3) !important;
}
[data-theme="dark"] #content hr {
	border-top-color: var(--gt-line);
}
[data-theme="dark"] .heading_tagline {
	background: #2b2e35;
	color: var(--gt-text);
}

/* ---------------------------------------------------
    SERVER LISTINGS - TABLE TEMPLATES
    default and no-types-versions
----------------------------------------------------- */

[data-theme="dark"] #server-listings table {
	border-color: var(--gt-line);
}
[data-theme="dark"] .server-info {
	background: var(--gt-row);
	border-color: var(--gt-line);
}
[data-theme="dark"] .server-info-odd {
	background: var(--gt-row-alt) !important;
}
[data-theme="dark"] .server-info.premium {
	background: linear-gradient(to bottom, var(--gt-prem-a) 0, var(--gt-prem-b) 100%);
}
[data-theme="dark"] .server-info td {
	border-top-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .server-info td:first-child {
	background: var(--gt-raised);
}
[data-theme="dark"] .rankdisplay-premium {
	background: linear-gradient(to bottom, var(--gt-prem-rank-a) 0, var(--gt-prem-rank-b) 100%) !important;
}
[data-theme="dark"] thead.head-server,
[data-theme="dark"] .server-toplist-head {
	background: linear-gradient(to bottom, var(--gt-head-a) 0%, var(--gt-head-b) 100%);
	border-color: var(--gt-line);
	color: var(--gt-text);
	filter: none;
}
[data-theme="dark"] .server-toplist-search {
	background: var(--gt-row);
}
[data-theme="dark"] .server-toplist-search.premium {
	background: var(--gt-prem-b);
}
[data-theme="dark"] .server-toplist-search:before,
[data-theme="dark"] .server-toplist-search:after {
	background: var(--gt-raised);
}
[data-theme="dark"] .server-toplist-search .rank-wrap,
[data-theme="dark"] .server-toplist-search .like-wrap {
	color: var(--gt-text);
	text-shadow: 1px 1px 1px #000;
}
[data-theme="dark"] .server-toplist-search .sDescription,
[data-theme="dark"] .sDescription {
	color: var(--gt-text-2);
}
[data-theme="dark"] .sTitle a,
[data-theme="dark"] .add-title a {
	color: var(--gt-link);
}

/* ---------------------------------------------------
    SERVER LISTINGS - LIST TEMPLATES
    template-default and template-v1
----------------------------------------------------- */

[data-theme="dark"] .template-default #server-items > li,
[data-theme="dark"] .template-v1 .server {
	background: var(--gt-row);
	border-color: var(--gt-line);
}
[data-theme="dark"] .template-default #server-items li.premium,
[data-theme="dark"] .template-v1 .server.premium {
	background: linear-gradient(to bottom, var(--gt-prem-a) 0, var(--gt-prem-b) 100%);
}
[data-theme="dark"] .template-default #cat-filter,
[data-theme="dark"] .template-default .search-filter-links,
[data-theme="dark"] .search-filter-links {
	background: var(--gt-card);
	border-color: var(--gt-line);
}
[data-theme="dark"] .template-v1 .rank-wrap {
	background: var(--gt-raised);
	color: var(--gt-text);
}
[data-theme="dark"] .template-v1 .block-divider {
	background: var(--gt-line);
}
[data-theme="dark"] .template-v1 .badge-light {
	background: var(--gt-raised);
	color: var(--gt-text-2);
}

/* ---------------------------------------------------
    RANK MEDALS
    Gold is left untouched: it already reads on dark and
    it is the primary rank signal. Silver and bronze are
    lifted because they were tuned against near-white.
----------------------------------------------------- */

[data-theme="dark"] .gold {
	color: var(--gt-gold);
	text-shadow: 1px 1px 1px #000;
}
[data-theme="dark"] .silver {
	color: var(--gt-silver);
	text-shadow: 1px 1px 1px #000;
}
[data-theme="dark"] .bronze {
	color: var(--gt-bronze);
	text-shadow: 1px 1px 1px #000;
}

/* ---------------------------------------------------
    BADGES, VOTE BUTTON, BRAND ACCENTS
----------------------------------------------------- */

[data-theme="dark"] .badge-light,
[data-theme="dark"] .add-version-types .badge-light,
[data-theme="dark"] .server-toplist-search .badge-light {
	background-color: var(--gt-raised);
	color: var(--gt-text-2);
}
[data-theme="dark"] .server-toplist-search .badge-dark,
[data-theme="dark"] .badge-dark {
	background-color: #3a3f47;
	color: var(--gt-text);
}
[data-theme="dark"] a.s-server {
	color: var(--gt-brand-text) !important;
}
[data-theme="dark"] #votebutton,
[data-theme="dark"] .btn-danger {
	background-color: var(--gt-brand);
	background-image: none;
	border-color: var(--gt-brand);
	color: #fff;
}

/* ---------------------------------------------------
    CARDS, WIDGETS, PANELS
----------------------------------------------------- */

[data-theme="dark"] .box-wrap,
[data-theme="dark"] .widget-content,
[data-theme="dark"] .add-widget,
[data-theme="dark"] .blog_wrap,
[data-theme="dark"] .main-add .add-desc,
[data-theme="dark"] .card,
[data-theme="dark"] .list-group-item,
[data-theme="dark"] #site-tabs .tab-content,
[data-theme="dark"] .video-wrapper {
	background: var(--gt-card);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .box-wrap h3,
[data-theme="dark"] .blog_wrap h3,
[data-theme="dark"] .widget-header,
[data-theme="dark"] .add-widget h3,
[data-theme="dark"] .card-header {
	background: var(--gt-head-a);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .add-widget .widget-footer {
	background: var(--gt-raised);
	border-color: var(--gt-line);
}
[data-theme="dark"] .adds-bg,
[data-theme="dark"] .promote-add,
[data-theme="dark"] .adds-small,
[data-theme="dark"] .adds-small td {
	background: var(--gt-card);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .bg-grd-light {
	background: var(--gt-card);
}
[data-theme="dark"] .blog_desc,
[data-theme="dark"] .read_more,
[data-theme="dark"] .add-desc .adescrip {
	color: var(--gt-text-2);
}

/* ---------------------------------------------------
    TABS AND BREADCRUMBS
----------------------------------------------------- */

[data-theme="dark"] #site-tab-links {
	background: var(--gt-card);
	border-color: var(--gt-line);
}
[data-theme="dark"] #site-tab-links > li > a {
	color: var(--gt-text-2) !important;
}
[data-theme="dark"] #site-tab-links > li > a:hover {
	background: var(--gt-raised);
}
[data-theme="dark"] #site-tab-links > li > a.active,
[data-theme="dark"] #site-tab-links > li > a.active:hover,
[data-theme="dark"] #site-tab-links > li > a.active:focus {
	background: var(--gt-surface);
	color: var(--gt-brand-text) !important;
}
[data-theme="dark"] .fancy-tabs > li > a:hover,
[data-theme="dark"] .fancy-tabs > li > a.active,
[data-theme="dark"] .fancy-tabs > li > a.active:hover,
[data-theme="dark"] .fancy-tabs > li > a.active:focus {
	background: var(--gt-raised);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .bccustom a,
[data-theme="dark"] .bccustom li:first-child,
[data-theme="dark"] .breadcrumb,
[data-theme="dark"] .breadcrumb.revert-bg li:first-child {
	background: var(--gt-card);
	color: var(--gt-text-2);
}
[data-theme="dark"] .bccustom li:first-child:hover,
[data-theme="dark"] .bccustom a:hover {
	background: var(--gt-raised);
	color: var(--gt-text);
}

/* ---------------------------------------------------
    FORMS
----------------------------------------------------- */

[data-theme="dark"] .form-control,
[data-theme="dark"] .custom-select,
[data-theme="dark"] .uneditable-input,
[data-theme="dark"] input[type=color],
[data-theme="dark"] input[type=date],
[data-theme="dark"] input[type=datetime-local],
[data-theme="dark"] input[type=datetime],
[data-theme="dark"] input[type=email],
[data-theme="dark"] input[type=month],
[data-theme="dark"] input[type=number],
[data-theme="dark"] input[type=password],
[data-theme="dark"] input[type=search],
[data-theme="dark"] input[type=tel],
[data-theme="dark"] input[type=text],
[data-theme="dark"] input[type=time],
[data-theme="dark"] input[type=url],
[data-theme="dark"] input[type=week],
[data-theme="dark"] select,
[data-theme="dark"] textarea {
	background-color: var(--gt-raised);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .form-control:focus,
[data-theme="dark"] input[type=email]:focus,
[data-theme="dark"] input[type=number]:focus,
[data-theme="dark"] input[type=password]:focus,
[data-theme="dark"] input[type=search]:focus,
[data-theme="dark"] input[type=tel]:focus,
[data-theme="dark"] input[type=text]:focus,
[data-theme="dark"] input[type=url]:focus,
[data-theme="dark"] textarea:focus,
[data-theme="dark"] select:focus {
	background-color: #2c3036 !important;
	border-color: #4a90d9;
	color: var(--gt-text);
}
[data-theme="dark"] input::placeholder,
[data-theme="dark"] textarea::placeholder {
	color: var(--gt-text-3);
}
[data-theme="dark"] input[disabled],
[data-theme="dark"] input[readonly],
[data-theme="dark"] select[disabled],
[data-theme="dark"] select[readonly],
[data-theme="dark"] textarea[disabled],
[data-theme="dark"] textarea[readonly] {
	background-color: #1a1d21;
	color: var(--gt-text-3);
}
[data-theme="dark"] .server_ip input {
	background: var(--gt-raised) !important;
	color: var(--gt-text);
}
[data-theme="dark"] .input-group-text {
	background-color: var(--gt-head-a);
	border-color: var(--gt-line);
	color: var(--gt-text-2);
}
[data-theme="dark"] .tagsinput,
[data-theme="dark"] .tagsinput.focus {
	background: var(--gt-raised);
	border-color: var(--gt-line);
	color: var(--gt-text);
}

/* ---------------------------------------------------
    SELECT2 AND CHOSEN
----------------------------------------------------- */

[data-theme="dark"] .select2-container--default .select2-selection--single,
[data-theme="dark"] .select2-container--default .select2-selection--multiple,
[data-theme="dark"] .select2-dropdown,
[data-theme="dark"] .chosen-container .chosen-drop,
[data-theme="dark"] .chosen-container-single .chosen-single,
[data-theme="dark"] .chosen-container-multi .chosen-choices {
	background: var(--gt-raised);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected],
[data-theme="dark"] .chosen-container .chosen-results li.highlighted {
	background: #34506e;
	color: var(--gt-text);
}
[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice {
	background: var(--gt-head-a);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .chosen-container-active .chosen-choices li.search-field input[type="text"] {
	color: var(--gt-text) !important;
}

/* ---------------------------------------------------
    GENERIC TABLES
----------------------------------------------------- */

[data-theme="dark"] .table,
[data-theme="dark"] .table_responsive td,
[data-theme="dark"] .table_responsive th,
[data-theme="dark"] .table_responsive tr,
[data-theme="dark"] .advertise-table td,
[data-theme="dark"] .advertise-table th {
	background-color: var(--gt-row);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .table_responsive .table thead th,
[data-theme="dark"] .table_responsive thead th,
[data-theme="dark"] .table_responsive thead tr:nth-of-type(odd) th,
[data-theme="dark"] .advertise-table h2 {
	background-color: var(--gt-head-a);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .table-striped tbody tr:nth-of-type(odd) {
	background-color: var(--gt-row-alt);
}
[data-theme="dark"] .table-hover tbody tr:hover {
	background-color: var(--gt-raised);
}

/* ---------------------------------------------------
    PAGINATION
----------------------------------------------------- */

/* Light mode renders pagination as #fff on #333 — not in the link colour.
   Neutral text keeps that intent. */
[data-theme="dark"] .page-link,
[data-theme="dark"] .bottom-pagging a,
[data-theme="dark"] .bottom-pagging strong {
	background-color: var(--gt-card);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .page-link:hover,
[data-theme="dark"] .bottom-pagging a:hover {
	background-color: var(--gt-raised);
	color: var(--gt-text);
}
[data-theme="dark"] .page-item.active .page-link,
[data-theme="dark"] .bottom-pagging strong {
	background-color: var(--gt-brand);
	border-color: var(--gt-brand);
	color: #fff;
}

/* ---------------------------------------------------
    ALERTS AND MODALS
----------------------------------------------------- */

[data-theme="dark"] .alert-info {
	background-color: #16303d;
	border-color: #1d4557;
	color: #a8d8e8;
}
[data-theme="dark"] .alert-success {
	background-color: #17331f;
	border-color: #22492c;
	color: #a9d9b6;
}
[data-theme="dark"] .alert-warning {
	background-color: #3a3117;
	border-color: #554723;
	color: #e2cf9a;
}
[data-theme="dark"] .alert-danger,
[data-theme="dark"] .error {
	background-color: #3a1c1d;
	border-color: #57292b;
	color: #efb0b3;
}
[data-theme="dark"] .modal-content,
[data-theme="dark"] .fancybox-content,
[data-theme="dark"] .fancybox-slide--iframe .fancybox-content {
	background: var(--gt-card);
	color: var(--gt-text);
}
[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer {
	border-color: var(--gt-line);
}
[data-theme="dark"] .close {
	color: var(--gt-text);
	text-shadow: none;
}

/* ---------------------------------------------------
    BOOTSTRAP UTILITY OVERRIDES
    These utilities hardcode near-white surfaces and are
    used across the account and form pages.
----------------------------------------------------- */

[data-theme="dark"] .bg-light {
	background-color: var(--gt-card) !important;
}
[data-theme="dark"] .bg-white {
	background-color: var(--gt-card) !important;
}
[data-theme="dark"] .text-dark {
	color: var(--gt-text) !important;
}
/* The base .btn-light paints a white linear-gradient over its
   background-color, so the image has to be cleared too. */
[data-theme="dark"] .btn-light {
	background-color: var(--gt-raised);
	background-image: none;
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .btn-light:hover {
	background-color: #31353b;
	color: var(--gt-text);
}
[data-theme="dark"] .border,
[data-theme="dark"] .border-top,
[data-theme="dark"] .border-right,
[data-theme="dark"] .border-bottom,
[data-theme="dark"] .border-left {
	border-color: var(--gt-line) !important;
}

/* ---------------------------------------------------
    PANELS FOUND ON THE LIVE SITE
    These keep a light background in the base theme while
    inheriting light text from #content, so they render
    as near-invisible text until they are covered here.
----------------------------------------------------- */

[data-theme="dark"] .main-services,
[data-theme="dark"] .join-wrap,
[data-theme="dark"] .auth_user_content,
[data-theme="dark"] .feed-item-wrap,
[data-theme="dark"] .main-add,
[data-theme="dark"] .review_respond_wrap {
	background: var(--gt-card);
	border-color: var(--gt-line);
	color: var(--gt-text);
}
[data-theme="dark"] .video-wrapper:hover {
	background: var(--gt-raised);
}

/* Rank badge in the template-default list layout. */
[data-theme="dark"] .template-default #server-items li .rank-wrap {
	background: var(--gt-raised);
	color: var(--gt-text);
}
[data-theme="dark"] .template-default #server-items li.premium .rank-wrap {
	background: var(--gt-prem-rank-a);
	color: var(--gt-text);
}

/* Category filter dropdowns. */
[data-theme="dark"] .nav_search ul.dropdown-menu,
[data-theme="dark"] ul.nav_search li li > a,
[data-theme="dark"] .nav_search .dropdown:hover .dropdown-menu li > a {
	background: var(--gt-card);
	color: var(--gt-text);
}
[data-theme="dark"] .nav_search ul.dropdown-menu li > a:hover {
	background: var(--gt-raised);
}

/* ---------------------------------------------------
    VALIDATION AND STATUS MESSAGES
----------------------------------------------------- */

[data-theme="dark"] .err-message {
	background-color: #3a1c1d;
	background-image: none;
	color: #efb0b3;
}
[data-theme="dark"] .right-message {
	background-color: #17331f;
	background-image: none;
	color: #a9d9b6;
}
[data-theme="dark"] form .info-div {
	background: #3a3117;
	border-color: #554723;
	color: #e2cf9a;
}
[data-theme="dark"] .alert-info code {
	background: var(--gt-raised);
	color: var(--gt-text);
}

/* ---------------------------------------------------
    DECORATIVE PSEUDO-ELEMENTS
    Breadcrumb notches and widget corners are drawn as
    solid white blocks, which show up as bright slivers.
----------------------------------------------------- */

[data-theme="dark"] .bccustom li:hover::before,
[data-theme="dark"] .bccustom li:hover::after,
[data-theme="dark"] .bccustom li:not(:last-child):hover::before,
[data-theme="dark"] .bccustom li:not(:last-child):hover::after,
[data-theme="dark"] .breadcrumb li:last-child::before,
[data-theme="dark"] .breadcrumb li:last-child::after,
[data-theme="dark"] .breadcrumb.revert-bg li:first-child::before,
[data-theme="dark"] .breadcrumb.revert-bg li:first-child::after,
[data-theme="dark"] .widget_stacked:before,
[data-theme="dark"] .widget_stacked:after {
	background: var(--gt-surface);
}
[data-theme="dark"] #server-listings:before,
[data-theme="dark"] #server-listings:after {
	background: var(--gt-line);
}

/* ---------------------------------------------------
    REMAINING FORM STATES
----------------------------------------------------- */

[data-theme="dark"] .uneditable-input:focus,
[data-theme="dark"] input[type=color]:focus,
[data-theme="dark"] input[type=date]:focus,
[data-theme="dark"] input[type=datetime-local]:focus,
[data-theme="dark"] input[type=datetime]:focus,
[data-theme="dark"] input[type=month]:focus,
[data-theme="dark"] input[type=time]:focus,
[data-theme="dark"] input[type=week]:focus {
	background-color: #2c3036 !important;
	color: var(--gt-text);
}
[data-theme="dark"] .btn-light:active,
[data-theme="dark"] .btn-light:focus {
	background-color: #31353b;
	background-image: none;
	color: var(--gt-text);
}
[data-theme="dark"] .tagsinput .tag {
	background: #2f4a24;
	color: #cfe3c2;
}
[data-theme="dark"] .chosen-container .chosen-results li.no-results,
[data-theme="dark"] .chosen-container-multi .chosen-choices li.search-choice-disabled,
[data-theme="dark"] .chosen-container-multi .chosen-choices li.search-choice-focus {
	background: var(--gt-raised);
	color: var(--gt-text-2);
}
[data-theme="dark"] .fancybox-error,
[data-theme="dark"] .fancybox-share,
[data-theme="dark"] .fancybox-thumbs {
	background: var(--gt-card);
	color: var(--gt-text);
}

/* ---------------------------------------------------
    COLOURED BUTTONS
    The base variants pair white text with light fills
    (2.5:1 for success, worse for warning). Both are
    retoned here so the label actually passes AA.
----------------------------------------------------- */

[data-theme="dark"] .btn-primary {
	background-color: var(--gt-brand);
	background-image: none;
	border-color: var(--gt-brand);
	color: #fff;
}
[data-theme="dark"] .btn-success {
	background-color: #2e7d32;
	background-image: none;
	border-color: #2e7d32;
	color: #fff;
}
[data-theme="dark"] .btn-success:hover,
[data-theme="dark"] .btn-success:focus,
[data-theme="dark"] .btn-success:active {
	background-color: #36913b;
	border-color: #36913b;
}
[data-theme="dark"] .btn-warning {
	background-color: #e0a106;
	background-image: none;
	border-color: #e0a106;
	color: #1a1200;
}
[data-theme="dark"] .btn-warning:hover,
[data-theme="dark"] .btn-warning:focus,
[data-theme="dark"] .btn-warning:active {
	background-color: #f0b01a;
	border-color: #f0b01a;
	color: #1a1200;
}

/* ---------------------------------------------------
    THEME TOGGLE CONTROL
    Moved to modernize.css section 12, in one piece.
    It sits on the amber nav in BOTH themes, so splitting
    its structure here and its colours there meant two
    files had to be read to reason about one control —
    and the light-theme half lived in a file named
    dark.css. Nothing about it is dark-theme-specific
    except the [data-theme="dark"] state, which section
    12 keeps next to the light state it mirrors.
----------------------------------------------------- */
