/*
 * THS Pubzi Skin: site-wide layer. Loads only while the skin is active
 * (html[data-ths-skin="pubzi"]). Accent remaps for the old red/blurple rules
 * live in overrides.css (generated); this file holds tokens, type, shapes and chrome.
 */

/* ---------- Tokens ---------- */
html[data-ths-skin="pubzi"] {
	--pz-ink: #0b0e13;
	--pz-bg: #0b0e13;
	--pz-band: #101318;
	--pz-card: #16181c;
	--pz-card-2: #1c1d20;
	--pz-line: #2a2d33;
	--pz-line-soft: rgba(255, 255, 255, .08);
	--pz-lime: #cbfe1c;
	--pz-lime-deep: #a8d60f;
	--pz-lime-glow: rgba(203, 254, 28, .18);
	--pz-head: #ffffff;
	--pz-text: #c4c7cc;
	--pz-muted: #8d9198;
	--pz-display: "Days One", "Chakra Petch", sans-serif;
	--pz-sans: "Chakra Petch", system-ui, sans-serif;
	--pz-cut: 14px;
	--pz-chamfer: polygon(var(--pz-cut) 0, 100% 0, 100% calc(100% - var(--pz-cut)), calc(100% - var(--pz-cut)) 100%, 0 100%, 0 var(--pz-cut));
}

html[data-ths-skin="pubzi"][data-bx-mode="dark"] {
	--reign-site-body-bg-color: #0b0e13 !important; --reign-site-body-bg-color-rgb: 11, 14, 19 !important;
	--reign-site-sections-bg-color: #16181c !important; --reign-site-sections-bg-color-rgb: 22, 24, 28 !important;
	--reign-site-secondary-bg-color: #1c1d20 !important; --reign-site-secondary-bg-color-rgb: 28, 29, 32 !important;
	--reign-site-border-color: #2a2d33 !important; --reign-site-border-color-rgb: 42, 45, 51 !important;
	--reign-site-hr-color: #2a2d33 !important; --reign-site-hr-color-rgb: 42, 45, 51 !important;
	--reign-site-headings-color: #ffffff !important; --reign-site-headings-color-rgb: 255, 255, 255 !important;
	--reign-site-body-text-color: #c4c7cc !important; --reign-site-body-text-color-rgb: 196, 199, 204 !important;
	--reign-site-alternate-text-color: #8d9198 !important; --reign-site-alternate-text-color-rgb: 141, 145, 152 !important;
	--reign-site-link-color: #cbfe1c !important; --reign-site-link-color-rgb: 203, 254, 28 !important;
	--reign-site-link-hover-color: #e2ff7a !important; --reign-site-link-hover-color-rgb: 226, 255, 122 !important;
	--reign-colors-theme: #cbfe1c !important; --reign-colors-theme-rgb: 203, 254, 28 !important;
	--reign-accent-color: #cbfe1c !important; --reign-accent-color-rgb: 203, 254, 28 !important;
	--reign-accent-hover-color: #a8d60f !important; --reign-accent-hover-color-rgb: 168, 214, 15 !important;
	--reign-site-button-bg-color: #cbfe1c !important; --reign-site-button-bg-color-rgb: 203, 254, 28 !important;
	--reign-site-button-bg-hover-color: #ffffff !important; --reign-site-button-bg-hover-color-rgb: 255, 255, 255 !important;
	--reign-site-button-text-color: #0b0e13 !important; --reign-site-button-text-hover-color: #0b0e13 !important;
	--reign-form-text-color: #e8eaed !important; --reign-form-background-color: #16181c !important; --reign-form-border-color: #2f3238 !important;
	--reign-form-placeholder-color: #8d9198 !important; --reign-form-focus-text-color: #ffffff !important;
	--reign-form-focus-background-color: #1c1d20 !important; --reign-form-focus-border-color: #cbfe1c !important;
	--pmpro--color--base: #16181c; --pmpro--color--contrast: #e8eaed; --pmpro--color--accent: #cbfe1c;
	--pmpro--color--accent--variation: #e2ff7a; --pmpro--color--border--variation: #2a2d33;
	--tutor-color-primary: #cbfe1c; --tutor-color-primary-rgb: 203, 254, 28; --tutor-color-primary-hover: #a8d60f;
	--bb-primary-color: #cbfe1c; --bb-primary-color-rgb: 203, 254, 28;
}

/* Light mode: Pubzi is a dark look, so light keeps paper surfaces and swaps the accent for a readable olive. */
html[data-ths-skin="pubzi"]:not([data-bx-mode="dark"]) {
	--pz-head: #0b0e13;
	--pz-text: #33363c;
	--pz-muted: #5c6068;
	--pz-line: #dcdfe3;
	--reign-site-link-color: #4b6600 !important; --reign-site-link-hover-color: #2f4000 !important;
	--reign-colors-theme: #4b6600 !important; --reign-accent-color: #4b6600 !important;
	--reign-site-button-bg-color: #cbfe1c !important; --reign-site-button-bg-hover-color: #0b0e13 !important;
	--reign-site-button-text-color: #0b0e13 !important; --reign-site-button-text-hover-color: #cbfe1c !important;
	--tutor-color-primary: #4b6600; --tutor-color-primary-hover: #2f4000;
	--bb-primary-color: #4b6600;
	--pmpro--color--accent: #4b6600;
}

/* ---------- Base ---------- */
html[data-ths-skin="pubzi"][data-bx-mode="dark"] body {
	background-color: var(--pz-bg);
	background-image:
		radial-gradient(1200px 600px at 85% -200px, rgba(203, 254, 28, .07), transparent 60%),
		linear-gradient(rgba(255, 255, 255, .025) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, .025) 1px, transparent 1px);
	background-size: auto, 80px 80px, 80px 80px;
	background-attachment: fixed, scroll, scroll;
}
/* REIGN sets its font on body and h1-h6 only, so body + inheritance covers text. */
html[data-ths-skin="pubzi"] body {
	font-family: var(--pz-sans) !important;
}
html[data-ths-skin="pubzi"] body :is(input, select, textarea, button):not([class*="fa-"]):not([class*="icon"]):not(.fa):not(.password-eye) {
	font-family: inherit;
}
html[data-ths-skin="pubzi"] body :is(h1, h2, .entry-title, .page-title, .h1, .h2) {
	font-family: var(--pz-display) !important;
	font-weight: 400 !important;
	letter-spacing: .01em;
	text-transform: uppercase;
	line-height: 1.12;
}
html[data-ths-skin="pubzi"] body :is(h3, h4, h5, h6, .h3, .h4) {
	font-family: var(--pz-sans) !important;
	font-weight: 700;
	letter-spacing: .02em;
}
html[data-ths-skin="pubzi"] ::selection { background: var(--pz-lime); color: var(--pz-ink); }
html[data-ths-skin="pubzi"] :focus-visible { outline: 2px solid var(--pz-lime) !important; outline-offset: 2px; }
html[data-ths-skin="pubzi"]:not([data-bx-mode="dark"]) :focus-visible { outline-color: #4b6600 !important; }
html[data-ths-skin="pubzi"][data-bx-mode="dark"] { scrollbar-color: #3a3d44 var(--pz-bg); }

/* ---------- Buttons: chamfered lime ---------- */
html[data-ths-skin="pubzi"] :is(
	.pmpro_btn, .pmpro_btn-submit-checkout, input[type="submit"]:not(.search-submit), button[type="submit"]:not(.search-submit):not([class*="icon"]),
	.wp-block-button__link, .tutor-btn-primary, .tutor-btn.tutor-btn-primary, .woocommerce a.button.alt, .woocommerce button.button.alt,
	.rg-register-btn-wrap .button, .ths-pz-btn:not(.ths-pz-btn--ghost), .btn-primary, .button.primary, .reign-sign-form .btn
) {
	background: var(--pz-lime) !important;
	color: var(--pz-ink) !important;
	border: 0 !important;
	border-radius: 0 !important;
	clip-path: var(--pz-chamfer);
	font-family: var(--pz-sans) !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .06em;
	box-shadow: none !important;
	transition: background-color .25s ease, color .25s ease, transform .25s ease;
}
html[data-ths-skin="pubzi"] :is(
	.pmpro_btn, .pmpro_btn-submit-checkout, input[type="submit"]:not(.search-submit), button[type="submit"]:not(.search-submit):not([class*="icon"]),
	.wp-block-button__link, .tutor-btn-primary, .woocommerce a.button.alt, .woocommerce button.button.alt,
	.rg-register-btn-wrap .button, .ths-pz-btn:not(.ths-pz-btn--ghost), .btn-primary, .button.primary, .reign-sign-form .btn
):is(:hover, :focus-visible) {
	background: #ffffff !important;
	color: var(--pz-ink) !important;
}
html[data-ths-skin="pubzi"]:not([data-bx-mode="dark"]) :is(.pmpro_btn, input[type="submit"]:not(.search-submit), .wp-block-button__link, .tutor-btn-primary, .ths-pz-btn, .btn-primary):is(:hover, :focus-visible) {
	background: var(--pz-ink) !important;
	color: var(--pz-lime) !important;
}
html[data-ths-skin="pubzi"] :is(.pmpro_btn-cancel, .pmpro_btn-plain, .tutor-btn-outline-primary, .wp-block-button.is-style-outline .wp-block-button__link, .ths-pz-btn--ghost) {
	background: transparent !important;
	color: var(--pz-head) !important;
	box-shadow: inset 0 0 0 1px var(--pz-line) !important;
	clip-path: none;
}

/* ---------- Header ---------- */
html[data-ths-skin="pubzi"] #masthead :is(.reign-fallback-header, .header-desktop, .header-mobile) {
	background: rgba(11, 14, 19, .92) !important;
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--pz-line-soft) !important;
	box-shadow: none !important;
}
html[data-ths-skin="pubzi"]:not([data-bx-mode="dark"]) #masthead :is(.reign-fallback-header, .header-desktop, .header-mobile) {
	background: rgba(11, 14, 19, .96) !important; /* header stays dark in both modes, as before */
}
html[data-ths-skin="pubzi"] #masthead #primary-menu > li > a {
	font-family: var(--pz-sans) !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	text-transform: uppercase;
	letter-spacing: .08em;
	color: #e8eaed !important;
	position: relative;
}
html[data-ths-skin="pubzi"] #masthead #primary-menu > li > a::after {
	content: "";
	position: absolute;
	left: 50%;
	right: 50%;
	bottom: 6px;
	height: 2px;
	background: var(--pz-lime);
	transition: left .25s ease, right .25s ease;
}
html[data-ths-skin="pubzi"] #masthead #primary-menu > li:is(:hover, .current-menu-item, .current-menu-ancestor) > a { color: var(--pz-lime) !important; }
html[data-ths-skin="pubzi"] #masthead #primary-menu > li:is(:hover, .current-menu-item, .current-menu-ancestor) > a::after { left: 12px; right: 12px; }
html[data-ths-skin="pubzi"] #masthead .sub-menu {
	background: var(--pz-card) !important;
	border: 1px solid var(--pz-line) !important;
	border-top: 2px solid var(--pz-lime) !important;
	border-radius: 0 !important;
}
html[data-ths-skin="pubzi"] #masthead .sub-menu a { font-family: var(--pz-sans) !important; color: var(--pz-text) !important; }
html[data-ths-skin="pubzi"] #masthead .sub-menu a:hover { color: var(--pz-lime) !important; background: rgba(203, 254, 28, .06) !important; }
html[data-ths-skin="pubzi"] #masthead :is(.rg-icon-wrap, .rg-search-icon, .bx-color-mode-toggle__btn) { color: #e8eaed !important; }
html[data-ths-skin="pubzi"] #masthead .rg-login-btn-wrap .btn-login {
	background: transparent !important;
	color: #e8eaed !important;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: .06em;
	font-family: var(--pz-sans) !important;
}
html[data-ths-skin="pubzi"] #masthead .rg-login-btn-wrap .btn-login:hover { color: var(--pz-lime) !important; }
html[data-ths-skin="pubzi"] #masthead .rg-register-btn-wrap .button { padding: 0 22px !important; line-height: 40px !important; height: 40px; }
html[data-ths-skin="pubzi"] #masthead .sep { opacity: .25; }
html[data-ths-skin="pubzi"] #masthead .rg-register-btn-wrap a.btn-register.button, html[data-ths-skin="pubzi"] #masthead .rg-register-btn-wrap a.btn-register.button * { color: #0b0e13 !important; -webkit-text-fill-color: #0b0e13; }
html[data-ths-skin="pubzi"] #masthead img.custom-logo { filter: brightness(0) invert(1); }

/* ---------- Page title band (REIGN sub-header) ---------- */
html[data-ths-skin="pubzi"] .lm-site-header-section .lm-header-banner {
	background: var(--pz-band) !important;
	background-image:
		linear-gradient(90deg, rgba(11, 14, 19, .95) 0%, rgba(11, 14, 19, .6) 100%),
		repeating-linear-gradient(135deg, rgba(203, 254, 28, .05) 0 2px, transparent 2px 22px) !important;
	border-bottom: 1px solid var(--pz-line-soft);
	position: relative;
}
html[data-ths-skin="pubzi"] .lm-site-header-section .lm-header-banner::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 180px;
	height: 4px;
	background: var(--pz-lime);
	clip-path: polygon(0 0, 100% 0, calc(100% - 4px) 100%, 0 100%);
}
html[data-ths-skin="pubzi"] .lm-site-header-section :is(.lm-header-title, h1) { color: #ffffff !important; }

/* ---------- Cards and panels ---------- */
html[data-ths-skin="pubzi"][data-bx-mode="dark"] article.wb-grid-view:not(body.single-post article) {
	background: var(--pz-card) !important;
	border: 1px solid var(--pz-line) !important;
	border-radius: 0 !important;
	clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 0 100%);
	transition: border-color .25s ease, transform .25s ease;
}
html[data-ths-skin="pubzi"][data-bx-mode="dark"] article.wb-grid-view:not(body.single-post article):hover {
	border-color: var(--pz-lime) !important;
	transform: translateY(-3px);
}
html[data-ths-skin="pubzi"] :is(.pmpro_card, .tutor-card, .widget, .bb-card) { border-radius: 0 !important; }
html[data-ths-skin="pubzi"] .entry-content a:not([class]) { text-decoration-color: rgba(203, 254, 28, .45); text-underline-offset: 3px; }
html[data-ths-skin="pubzi"] blockquote { border-left: 3px solid var(--pz-lime) !important; }
html[data-ths-skin="pubzi"] :is(input[type="text"], input[type="email"], input[type="search"], input[type="password"], input[type="url"], input[type="tel"], input[type="number"], textarea, select) { border-radius: 0 !important; }

/* Kicker labels: the clapper-slate mark reads as Pubzi's hazard stripe in lime. */
html[data-ths-skin="pubzi"][data-bx-mode="dark"] :is(.ths-slated, .ths-pz-kicker) { color: var(--pz-lime); }

/* ---------- Footer ---------- */
html[data-ths-skin="pubzi"] footer #reign-copyright-text {
	background: #07090c !important;
	border-top: 1px solid var(--pz-line-soft);
	color: var(--pz-muted) !important;
	font-family: var(--pz-sans);
	text-transform: uppercase;
	letter-spacing: .08em;
	font-size: 13px;
}
.ths-pz-foot {
	position: relative;
	background: #07090c;
	color: #c4c7cc;
	padding: clamp(48px, 7vw, 88px) 16px 40px;
	border-top: 1px solid rgba(255, 255, 255, .08);
	overflow: hidden;
	font-family: var(--pz-sans);
}
.ths-pz-foot::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 6px;
	background: repeating-linear-gradient(135deg, var(--pz-lime) 0 10px, transparent 10px 20px);
	opacity: .9;
}
.ths-pz-foot__inner {
	max-width: 1240px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr));
	gap: 32px clamp(24px, 4vw, 64px);
}
.ths-pz-foot .ths-pz-foot__brand {
	font-family: var(--pz-display);
	font-size: clamp(28px, 3.4vw, 44px);
	line-height: 1;
	color: #ffffff;
	text-transform: uppercase;
	margin: 0 0 14px;
}
.ths-pz-foot__brand span { color: var(--pz-lime); }
.ths-pz-foot p:not(.ths-pz-foot__brand) { color: #8d9198; margin: 0 0 22px; max-width: 34ch; }
.ths-pz-foot h2 {
	font-family: var(--pz-sans) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: .14em;
	color: var(--pz-lime) !important;
	text-transform: uppercase;
	margin: 6px 0 16px;
}
.ths-pz-foot ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.ths-pz-foot a { color: #c4c7cc; text-decoration: none; transition: color .2s ease, padding-left .2s ease; }
.ths-pz-foot li a:hover { color: var(--pz-lime); padding-left: 6px; }
.ths-pz-foot__word {
	max-width: 1240px;
	margin: clamp(40px, 6vw, 72px) auto 0;
	font-family: var(--pz-display);
	font-size: clamp(56px, 13vw, 200px);
	line-height: .8;
	text-transform: uppercase;
	color: transparent;
	-webkit-text-stroke: 1px rgba(255, 255, 255, .14);
	white-space: nowrap;
	overflow: hidden;
	user-select: none;
}
@media (max-width: 860px) {
	.ths-pz-foot__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ths-pz-foot__inner > :first-child { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
	.ths-pz-foot__inner { grid-template-columns: minmax(0, 1fr); }
}

/* ---------- Shared component: chamfer button ---------- */
.ths-pz-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 54px;
	padding: 0 30px;
	text-decoration: none !important;
	font-size: 15px;
	line-height: 1;
}
.ths-pz-btn--ghost { clip-path: var(--pz-chamfer); }
.ths-pz-btn--ghost:hover { box-shadow: inset 0 0 0 1px var(--pz-lime) !important; color: var(--pz-lime) !important; }

/* ---------- Reveal on scroll (skin.js adds .is-in) ---------- */
html[data-ths-skin="pubzi"].ths-pz-js [data-pz-reveal] {
	opacity: 0;
	transform: translateY(26px);
	transition: opacity .7s ease, transform .7s cubic-bezier(.2, .7, .2, 1);
}
html[data-ths-skin="pubzi"].ths-pz-js [data-pz-reveal].is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	html[data-ths-skin="pubzi"].ths-pz-js [data-pz-reveal] { opacity: 1; transform: none; transition: none; }
	html[data-ths-skin="pubzi"] * { scroll-behavior: auto !important; }
}

/* ---------- BuddyBoss Gamification (profile points / achievements / rank popups) ---------- */
/* The plugin falls back to white surfaces when BuddyBoss's colour variables are unset. */
html[data-ths-skin="pubzi"][data-bx-mode="dark"] {
	--bb-content-background-color: #16181c;
	--bb-content-border-color: #2a2d33;
	--bb-headings-color: #ffffff;
	--bb-body-text-color: #c4c7cc;
	--bb-alternate-text-color: #8d9198;
	--bb-block-radius: 0;
	--bb-button-radius: 0;
	--bb-primary-button-background-regular: #cbfe1c; --bb-primary-button-border-regular: #cbfe1c; --bb-primary-button-text-regular: #0b0e13;
	--bb-primary-button-background-hover: #ffffff; --bb-primary-button-border-hover: #ffffff; --bb-primary-button-text-hover: #0b0e13;
	--bb-secondary-button-background-regular: #1c1d20; --bb-secondary-button-border-regular: #2f3238; --bb-secondary-button-text-regular: #ffffff;
	--bb-secondary-button-background-hover: #cbfe1c; --bb-secondary-button-border-hover: #cbfe1c; --bb-secondary-button-text-hover: #0b0e13;
}
html[data-ths-skin="pubzi"][data-bx-mode="dark"] :is(.bb-gm-single-profile--modal, .bb-gm-rank-modal--inner) {
	background: #16181c !important;
	border: 1px solid #2a2d33 !important;
	border-top: 2px solid #cbfe1c !important;
	border-radius: 0 !important;
	box-shadow: 0 18px 40px rgba(0, 0, 0, .55) !important;
	color: #c4c7cc;
}
html[data-ths-skin="pubzi"][data-bx-mode="dark"] :is(.bb-gm-single-profile--modal-title, .bb-gm-rank-modal--rank-title) {
	color: #ffffff !important;
	font-family: var(--pz-sans) !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .04em;
}
html[data-ths-skin="pubzi"][data-bx-mode="dark"] .bb-gm-single-profile--modal-points { color: #cbfe1c !important; font-weight: 700; font-size: 15px !important; }
html[data-ths-skin="pubzi"][data-bx-mode="dark"] :is(.bb-gm-single-profile--modal-description, .bb-gm-rank-modal--rank-description) { color: #9ea2a9 !important; }
html[data-ths-skin="pubzi"] .bb-gm-button {
	border-radius: 0 !important;
	clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
	font-family: var(--pz-sans) !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .06em;
	text-decoration: none !important;
}
html[data-ths-skin="pubzi"][data-bx-mode="dark"] .bb-gm-button--secondaryFill { background: #1c1d20 !important; border-color: #2f3238 !important; color: #ffffff !important; }
html[data-ths-skin="pubzi"][data-bx-mode="dark"] .bb-gm-button--secondaryFill:hover { background: #cbfe1c !important; border-color: #cbfe1c !important; color: #0b0e13 !important; }
html[data-ths-skin="pubzi"][data-bx-mode="dark"] .bb-gm-button--brandFill { background: #cbfe1c !important; border-color: #cbfe1c !important; color: #0b0e13 !important; }
/* Missing point-type icon: skin.js swaps the broken image for this lime badge. */
html[data-ths-skin="pubzi"] .bb-gm-single-profile img[src=""] { display: none; }
html[data-ths-skin="pubzi"] .ths-pz-noicon::before {
	content: "PTS";
	display: grid;
	place-items: center;
	width: 56px;
	height: 56px;
	background: #cbfe1c;
	color: #0b0e13;
	font: 700 14px/1 "Chakra Petch", sans-serif;
	letter-spacing: .08em;
	clip-path: polygon(30% 0, 70% 0, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0 70%, 0 30%);
}
html[data-ths-skin="pubzi"] .bb-gm-single-profile--icon.ths-pz-noicon::before { width: 28px; height: 28px; font-size: 9px; }

/* ---------- Tha-Shed Hub (community tab bar, level chips, hub pages) ---------- */
html[data-ths-skin="pubzi"] :is(.ths-hub, .ths-hub-navwrap, .ths-lv-chip) {
	--hub-bg: #0b0e13; --hub-surface: #16181c; --hub-surface-2: #1c1d20; --hub-border: #2a2d33;
	--hub-text: #e8eaed; --hub-muted: #9ea2a9;
	--hub-accent: #cbfe1c; --hub-accent-2: #cbfe1c; --hub-accent-soft: rgba(203, 254, 28, .12);
	--hub-radius: 0px;
	--hub-font: "Chakra Petch", system-ui, sans-serif;
}
html[data-ths-skin="pubzi"]:not([data-bx-mode="dark"]) :is(.ths-hub, .ths-hub-navwrap, .ths-lv-chip) {
	--hub-bg: #f5f6f7; --hub-surface: #ffffff; --hub-surface-2: #eef0f2; --hub-border: #dcdfe3;
	--hub-text: #0b0e13; --hub-muted: #5c6068;
	--hub-accent: #4b6600; --hub-accent-2: #cbfe1c; --hub-accent-soft: rgba(75, 102, 0, .1);
}
html[data-ths-skin="pubzi"] .ths-hub-nav { border-radius: 0 !important; clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 16px, 100% 100%, 0 100%); }
html[data-ths-skin="pubzi"] .ths-hub-brand-dot { border-radius: 0; background: #cbfe1c; box-shadow: none; clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%); }
html[data-ths-skin="pubzi"] .ths-hub-tab {
	border-radius: 0 !important;
	font-family: var(--pz-sans) !important;
	text-transform: uppercase;
	letter-spacing: .06em;
	font-size: 13px !important;
}
html[data-ths-skin="pubzi"] .ths-hub-tab.is-active {
	background: #cbfe1c !important;
	color: #0b0e13 !important;
	font-weight: 700 !important;
	clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
}
html[data-ths-skin="pubzi"] .ths-hub-me { border-radius: 0 !important; }
html[data-ths-skin="pubzi"] .ths-lv-chip { border-radius: 0 !important; clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px); }
html[data-ths-skin="pubzi"] .ths-btn.ths-btn-primary {
	background: #cbfe1c !important;
	color: #0b0e13 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
	font-family: var(--pz-sans) !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .06em;
}
html[data-ths-skin="pubzi"] .ths-btn.ths-btn-primary:is(:hover, :focus-visible) { background: #ffffff !important; color: #0b0e13 !important; }

/* ---------- Studio chips (production folders, filters) ---------- */
html[data-ths-skin="pubzi"] .ss-chips a,
html[data-ths-skin="pubzi"] .ss-chips button {
	border-radius: 0 !important;
	clip-path: polygon(8px 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%, 0 8px);
	font-family: var(--pz-sans) !important;
}
html[data-ths-skin="pubzi"] .ss-chips :is(a, button):is(.on, [aria-pressed="true"]) {
	background: #cbfe1c !important;
	border-color: #cbfe1c !important;
	color: #0b0e13 !important;
	box-shadow: none !important;
	outline: 0 !important;
	font-weight: 700 !important;
}
html[data-ths-skin="pubzi"] .ss-projempty { margin: 14px 0 0; padding: 18px 20px; border: 1px dashed #2f3238; color: #9ea2a9; }

/* ---------- Learning Tools (subject pages, hubs, flashcards, notes) ---------- */
/* The plugin picks light text colours from the computer's light/dark setting, not the
   site's, so a light-mode computer got dark text on the dark site. Key off the site mode. */
html[data-ths-skin="pubzi"][data-bx-mode="dark"] :is(.shed-lt-subject, .shed-lt-flashcards, .shed-lt-notes, .shed-lt-hub, .shed-lt-notice, .shed-lt-gate, .shed-lt-tutnav) {
	--shed-lt-bg: #0b0e13 !important; --shed-lt-surface: #16181c !important; --shed-lt-border: #2a2d33 !important;
	--shed-lt-text: #e8eaed !important; --shed-lt-muted: #a3a7ae !important;
	--shed-lt-accent: #cbfe1c !important; --shed-lt-accent-text: #0b0e13 !important; --shed-lt-radius: 0px !important;
}
html[data-ths-skin="pubzi"]:not([data-bx-mode="dark"]) :is(.shed-lt-subject, .shed-lt-flashcards, .shed-lt-notes, .shed-lt-hub, .shed-lt-notice, .shed-lt-gate, .shed-lt-tutnav) {
	--shed-lt-bg: #ffffff !important; --shed-lt-surface: #f5f6f7 !important; --shed-lt-border: #dcdfe3 !important;
	--shed-lt-text: #0b0e13 !important; --shed-lt-muted: #5c6068 !important;
	--shed-lt-accent: #4b6600 !important; --shed-lt-accent-text: #ffffff !important; --shed-lt-radius: 0px !important;
}
html[data-ths-skin="pubzi"] .shed-lt-btn {
	border-radius: 0 !important;
	clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
	padding: .8rem 1.4rem !important;
	font-family: var(--pz-sans) !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .06em;
	filter: none !important;
}
html[data-ths-skin="pubzi"][data-bx-mode="dark"] .shed-lt-btn:not(.shed-lt-btn--ghost):is(:hover, :focus-visible) { background: #ffffff !important; border-color: #ffffff !important; color: #0b0e13 !important; }
html[data-ths-skin="pubzi"] .shed-lt-btn--ghost { color: var(--shed-lt-text) !important; border-color: var(--shed-lt-text) !important; }
html[data-ths-skin="pubzi"] .shed-lt-btn--ghost:is(:hover, :focus-visible) { color: var(--shed-lt-accent) !important; border-color: var(--shed-lt-accent) !important; }
html[data-ths-skin="pubzi"] .shed-lt-subject .shed-lt-subj-outcomes li { color: var(--shed-lt-text) !important; }
html[data-ths-skin="pubzi"] .shed-lt-hub-heading { color: var(--shed-lt-text) !important; font-family: var(--pz-sans) !important; letter-spacing: .08em; }
html[data-ths-skin="pubzi"] .shed-lt-hub-link { clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 18px, 100% 100%, 0 100%); transition: border-color .2s ease, transform .2s ease; }
html[data-ths-skin="pubzi"] .shed-lt-hub-link:hover { transform: translateY(-3px); }
/* Subject pages print their own headline; the theme's page title above it repeated it. */
html[data-ths-skin="pubzi"] body:has(.entry-content > .shed-lt-subject) article.page > .entry-header { display: none; }
