/* JinglePig dark mode and larger text (theme 0.2.0).
   html[data-jp-theme="dark"] is set before the page paints by an inline script
   (device setting, or the visitor's own choice from the header button). */

@media screen {
html[data-jp-theme="dark"] {
	color-scheme: dark;
	--jp-deep-mint: #9ED9C7;     /* headings and links: light mint on dark */
	--jp-cream-paper: #0F1C1B;   /* page background */
	--jp-mint-mist: #1C3330;
	--jp-slate-ink: #DCE7E2;     /* body text */
	--jp-line: #2B4541;
	--jpd-surface: #152826;
	--jpd-surface-2: #1B312E;
	--jpd-muted: #A3BAB3;
	--jpd-strong: #F1F6F3;
}
html[data-jp-theme="dark"] body { background: var(--jp-cream-paper); color: var(--jp-slate-ink); }
html[data-jp-theme="dark"] a:hover { color: #C6EEE1; }
html[data-jp-theme="dark"] h1, html[data-jp-theme="dark"] h2, html[data-jp-theme="dark"] h3, html[data-jp-theme="dark"] h4 { color: var(--jpd-strong); }

/* Header, menu, footer */
html[data-jp-theme="dark"] .site-header,
html[data-jp-theme="dark"] .main-navigation,
html[data-jp-theme="dark"] .main-navigation ul ul,
html[data-jp-theme="dark"] .site-footer,
html[data-jp-theme="dark"] .site-info { background: var(--jpd-surface); color: var(--jp-slate-ink); }
html[data-jp-theme="dark"] .main-navigation .main-nav ul li a,
html[data-jp-theme="dark"] .main-navigation .menu-bar-item > a,
html[data-jp-theme="dark"] .menu-toggle { color: var(--jp-slate-ink) !important; }
html[data-jp-theme="dark"] .main-navigation .main-nav ul li:hover > a,
html[data-jp-theme="dark"] .main-navigation .main-nav ul li.current-menu-item > a,
html[data-jp-theme="dark"] .main-navigation .menu-bar-item:hover > a { background: var(--jp-mint-mist); color: var(--jpd-strong) !important; }
.jp-logo-dark { display: none !important; }
html[data-jp-theme="dark"] .jp-logo-light { display: none !important; }
html[data-jp-theme="dark"] .jp-logo-dark { display: block !important; }
html[data-jp-theme="dark"] .jp-footer-brand strong { color: var(--jpd-strong); }
html[data-jp-theme="dark"] .jp-footer-brand small,
html[data-jp-theme="dark"] .jp-copyright { color: var(--jpd-muted); }

/* Theme blocks */
html[data-jp-theme="dark"] .jp-card,
html[data-jp-theme="dark"] .jp-panel,
html[data-jp-theme="dark"] .jp-tile,
html[data-jp-theme="dark"] .jp-guide-grid .wp-block-post,
html[data-jp-theme="dark"] .gb-element-dira1001 > section,
html[data-jp-theme="dark"] .jp-data-table,
html[data-jp-theme="dark"] .jp-hero { background: var(--jpd-surface); border-color: var(--jp-line); box-shadow: none; }
html[data-jp-theme="dark"] .jp-tile { color: var(--jp-slate-ink) !important; }
html[data-jp-theme="dark"] .jp-tile:hover,
html[data-jp-theme="dark"] .jp-guide-grid .wp-block-post:hover { background: var(--jpd-surface-2); box-shadow: none; }
html[data-jp-theme="dark"] .jp-tile-title,
html[data-jp-theme="dark"] .jp-guide-grid .wp-block-post-title a { color: var(--jpd-strong); }
html[data-jp-theme="dark"] .jp-tile-cta { color: var(--jp-deep-mint); }
html[data-jp-theme="dark"] .jp-tile-text,
html[data-jp-theme="dark"] .jp-card p,
html[data-jp-theme="dark"] .jp-panel p,
html[data-jp-theme="dark"] .jp-page-intro,
html[data-jp-theme="dark"] .jp-section-head p,
html[data-jp-theme="dark"] .jp-hero p,
html[data-jp-theme="dark"] .jp-muted,
html[data-jp-theme="dark"] .jp-card .jp-status,
html[data-jp-theme="dark"] .jp-guide-grid .wp-block-post-excerpt__excerpt { color: var(--jpd-muted); }
html[data-jp-theme="dark"] .jp-eyebrow,
html[data-jp-theme="dark"] .jp-guide-grid .wp-block-post-terms,
html[data-jp-theme="dark"] .jp-guide-grid .wp-block-post-terms a { color: #8CC5B3; }
html[data-jp-theme="dark"] .jp-data-table th { background: var(--jp-mint-mist); color: var(--jpd-strong); }
html[data-jp-theme="dark"] .jp-banner { background: #1F3D39; }
html[data-jp-theme="dark"] .jp-button { background: #9ED9C7; border-color: #9ED9C7; color: #0F1C1B !important; }
html[data-jp-theme="dark"] .jp-button:hover { background: #C6EEE1; color: #0F1C1B !important; }
html[data-jp-theme="dark"] .jp-button--light { background: transparent; border-color: #4A6B65; color: var(--jpd-strong) !important; }
html[data-jp-theme="dark"] .jp-button--light:hover { background: var(--jp-mint-mist); }

/* Default WordPress content */
html[data-jp-theme="dark"] .entry-content table th,
html[data-jp-theme="dark"] .entry-content table td { border-color: var(--jp-line); }
html[data-jp-theme="dark"] input[type="text"], html[data-jp-theme="dark"] input[type="email"],
html[data-jp-theme="dark"] input[type="search"], html[data-jp-theme="dark"] input[type="number"],
html[data-jp-theme="dark"] textarea, html[data-jp-theme="dark"] select { background: #0F1C1B !important; color: var(--jpd-strong) !important; border-color: #4A6B65 !important; }
html[data-jp-theme="dark"] ::placeholder { color: #7E9790; }

/* Spot price cards (JinglePig Metal Prices) */
html[data-jp-theme="dark"] .jpmp { --jpmp-deep-mint: #F1F6F3; --jpmp-ink: #DCE7E2; --jpmp-line: #2B4541; --jpmp-muted: #A3BAB3; --jpmp-mint-mist: #1C3330; }
html[data-jp-theme="dark"] .jpmp-card { background: var(--jpd-surface); box-shadow: none; }
html[data-jp-theme="dark"] .jpmp-symbol { color: #8CC5B3; }
html[data-jp-theme="dark"] .jpmp-badge { color: #C6EEE1; }
html[data-jp-theme="dark"] .jpmp-card[data-jpmp-status="unchanged"] .jpmp-badge { background: #3A3014; color: #F2D58E; }
html[data-jp-theme="dark"] .jpmp-card[data-jpmp-status="stale"] .jpmp-badge,
html[data-jp-theme="dark"] .jpmp-alert { background: #3C211C; color: #F6B8A8; }
html[data-jp-theme="dark"] .jpmp-card[data-jpmp-status="manual"] .jpmp-badge { background: #1E2B3A; color: #B9CCE6; }
html[data-jp-theme="dark"] .jpmp-card[data-jpmp-status="unavailable"] .jpmp-badge { background: #262D2E; color: #C3CDCF; }
html[data-jp-theme="dark"] .jpmp-card[data-jpmp-status="stale"] .jpmp-amount,
html[data-jp-theme="dark"] .jpmp-card[data-jpmp-status="unavailable"] .jpmp-amount { color: #9AB0AA; }

/* Coin catalog: tables, cards, calculators, checker */
html[data-jp-theme="dark"] .jpcc { --jpcc-mint: #F1F6F3; --jpcc-ink: #DCE7E2; --jpcc-line: #2B4541; --jpcc-muted: #A3BAB3; --jpcc-mist: #1C3330; --jpcc-warn-bg: #3A2A12; --jpcc-warn: #F5C98A; }
html[data-jp-theme="dark"] .jpcc-table-wrap, html[data-jp-theme="dark"] .jpcc-table,
html[data-jp-theme="dark"] .jpcc-card, html[data-jp-theme="dark"] .jpcc-list,
html[data-jp-theme="dark"] .jpcc-filters, html[data-jp-theme="dark"] .jpcc-math li,
html[data-jp-theme="dark"] .jpcc-country, html[data-jp-theme="dark"] .jpcc-calc fieldset,
html[data-jp-theme="dark"] .jpcc-check-form, html[data-jp-theme="dark"] .jpcc-answer,
html[data-jp-theme="dark"] .jpcc-answer-value, html[data-jp-theme="dark"] .jpsb-settings,
html[data-jp-theme="dark"] .jpcc-remove { background: var(--jpd-surface); box-shadow: none; }
html[data-jp-theme="dark"] .jpcc-table tfoot th, html[data-jp-theme="dark"] .jpcc-table tfoot td { background: var(--jpd-surface-2); }
html[data-jp-theme="dark"] .jpcc-table a, html[data-jp-theme="dark"] .jpcc a { color: var(--jp-deep-mint); }
html[data-jp-theme="dark"] .jpcc-country:hover { background: var(--jpd-surface-2); }
html[data-jp-theme="dark"] .jpcc-summary { color: var(--jpd-muted); }
html[data-jp-theme="dark"] .jpcc-answer--yes { background: #13302A; }
html[data-jp-theme="dark"] .jpcc-answer--depends { background: #2E2814; }
html[data-jp-theme="dark"] .jpcc-button { background: #9ED9C7; border-color: #9ED9C7; color: #0F1C1B !important; }
html[data-jp-theme="dark"] .jpcc-button:hover { background: #C6EEE1; }
html[data-jp-theme="dark"] .jpcc-button--light { background: transparent; border-color: #4A6B65; color: var(--jpd-strong) !important; }
html[data-jp-theme="dark"] .jpcc-button--light:hover { background: var(--jp-mint-mist); }
html[data-jp-theme="dark"] .jp-board-link span { color: var(--jpd-muted); }

/* Sorting sheet builder: the controls go dark; the sheet preview stays paper-white */
html[data-jp-theme="dark"] .jpt-builder { color: var(--jp-slate-ink); }
html[data-jp-theme="dark"] .jpt-controls { background: var(--jpd-surface); border-color: var(--jp-line); }
html[data-jp-theme="dark"] .jpt-controls h2, html[data-jp-theme="dark"] .jpt-fields > label,
html[data-jp-theme="dark"] .jpt-fields > fieldset, html[data-jp-theme="dark"] .jpt-builder legend,
html[data-jp-theme="dark"] .jpt-summary { color: var(--jpd-strong); }
html[data-jp-theme="dark"] .jpt-seg label { background: #0F1C1B; border-color: #4A6B65; }
html[data-jp-theme="dark"] .jpt-seg label:has(input:checked) { border-color: #9ED9C7; box-shadow: inset 0 0 0 1px #9ED9C7; }
html[data-jp-theme="dark"] .jpt-help, html[data-jp-theme="dark"] .jpt-loading { color: var(--jpd-muted); }
html[data-jp-theme="dark"] .jpt-actions button { background: #9ED9C7; border-color: #9ED9C7; color: #0F1C1B; }
html[data-jp-theme="dark"] .jpt-page { color-scheme: light; }

/* Report a problem */
html[data-jp-theme="dark"] .jpfb { background: var(--jpd-surface); border-color: var(--jp-line); color: var(--jp-slate-ink); }
html[data-jp-theme="dark"] .jpfb-summary, html[data-jp-theme="dark"] .jpfb-note, html[data-jp-theme="dark"] .jpfb-optional { color: var(--jpd-muted); }
html[data-jp-theme="dark"] .jpfb-summary span, html[data-jp-theme="dark"] .jpfb-field { color: var(--jpd-strong); }
html[data-jp-theme="dark"] .jpfb[open] .jpfb-summary { border-color: var(--jp-line); }
html[data-jp-theme="dark"] .jpfb-button { background: #9ED9C7; border-color: #9ED9C7; color: #0F1C1B; }
html[data-jp-theme="dark"] .jpfb-status { background: #1C3330; color: #C6EEE1; }
html[data-jp-theme="dark"] .jpfb-status--error { background: #3A2A12; color: #F5C98A; }
html[data-jp-theme="dark"] .jpfc-title { color: var(--jpd-strong); }
}

/* Header buttons: dark mode and text size */
.jp-pref { display: inline-flex; align-items: center; }
.jp-pref button { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 8px; margin: 0; background: transparent; border: 0; border-radius: 10px; color: var(--jp-deep-mint); font: 800 .95rem/1 Inter, system-ui, sans-serif; cursor: pointer; }
.jp-pref button:hover { background: var(--jp-mint-mist); }
.jp-pref button:focus-visible { outline: 3px solid var(--jp-coin-gold); outline-offset: 1px; }
.jp-pref svg { width: 20px; height: 20px; }
.jp-pref .jp-icon-sun { display: none; }
html[data-jp-theme="dark"] .jp-pref button { color: var(--jp-slate-ink); }
html[data-jp-theme="dark"] .jp-pref .jp-icon-sun { display: block; }
html[data-jp-theme="dark"] .jp-pref .jp-icon-moon { display: none; }
.jp-text-btn small { font-size: .7em; margin-left: 1px; }
html[data-jp-text="large"] .jp-text-btn { background: var(--jp-mint-mist); }

/* Larger text: everything sized in rem or em grows about 15% */
html[data-jp-text="large"] { font-size: 115%; }
html[data-jp-text="large"] body { font-size: 19.5px; }
html[data-jp-text="large"] .jp-tile-text, html[data-jp-text="large"] .jp-card p, html[data-jp-text="large"] .jpmp-unit,
html[data-jp-text="large"] .jpmp-time, html[data-jp-text="large"] .jpcc-fine, html[data-jp-text="large"] .jpcc-note { line-height: 1.6; }

@media print {
	.jp-pref { display: none; }
}
.jp-pref .screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.main-navigation .menu-bar-items { display: flex; align-items: center; }
.jp-pref button { line-height: 44px; }
@media screen {
	html[data-jp-theme="dark"] .jpkd-jump, html[data-jp-theme="dark"] .jpkd-varieties { background: var(--jpd-surface); }
	html[data-jp-theme="dark"] .jpkd-jump a { background: var(--jpd-surface-2); }
	html[data-jp-theme="dark"] .jpkd-table td:nth-child(4) { color: var(--jpd-muted); }
	html[data-jp-theme="dark"] .jpkd-badge--key { background: #3A2E12; color: #F2D58E; }
	html[data-jp-theme="dark"] .jpkd-badge--semi-key { background: transparent; color: #F2D58E; }
}

/* Phones: logo and header buttons on one line (0.2.2) */
@media (max-width: 768px) {
	.site-header .inside-header { align-items: center; justify-content: space-between; padding-left: 14px; padding-right: 8px; }
	.site-header .site-branding-container { flex: 0 0 auto; }
	.jp-site-logo img { width: min(136px, 36vw) !important; height: auto; }
	.site-header .mobile-menu-control-wrapper { margin-left: auto !important; flex: 0 0 auto; display: flex; align-items: center; }
	.mobile-menu-control-wrapper .menu-bar-items { display: flex; align-items: center; }
	.mobile-menu-control-wrapper .jp-pref button { min-width: 36px; height: 40px; padding: 0 6px; }
	.mobile-menu-control-wrapper .menu-bar-item > a { padding: 0 8px; line-height: 40px; }
	.mobile-menu-control-wrapper .menu-toggle { padding: 0 10px; line-height: 40px; }
}
