/* patrunning-core front end. Legacy shortcode styles follow the Sahifa/TieLabs CSS kept in
   data/settings/customizer-css-pixwell-2.css; icons are inline SVG masks (no Font Awesome). */
:root {
	--pr-i-info: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 15h-2v-6h2zm0-8h-2V7h2z'/%3E%3C/svg%3E");
	--pr-i-success: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-2 15-5-5 1.4-1.4 3.6 3.6 7.6-7.6L19 8z'/%3E%3C/svg%3E");
	--pr-i-warning: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1 21h22L12 2zm12-3h-2v-2h2zm0-4h-2v-4h2z'/%3E%3C/svg%3E");
	--pr-i-error: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zM4 12c0-1.8.6-3.5 1.7-4.9l11.2 11.2A8 8 0 0 1 4 12zm14.3 4.9L7.1 5.7a8 8 0 0 1 11.2 11.2z'/%3E%3C/svg%3E");
	--pr-i-download: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 20h14v-2H5zm7-3 5-5h-3V4h-4v8H7z'/%3E%3C/svg%3E");
	--pr-i-note: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8zm-1 7V3.5L18.5 9z'/%3E%3C/svg%3E");
	--pr-i-starlist: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 17.3 18.2 21l-1.6-7L22 9.2l-7.2-.6L12 2 9.2 8.6 2 9.2 7.5 14l-1.7 7z'/%3E%3C/svg%3E");
	--pr-i-checklist: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E");
	--pr-i-lightbulb: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 21h6v-1H9zm3-19a7 7 0 0 0-4 12.7V17h8v-2.3A7 7 0 0 0 12 2z'/%3E%3C/svg%3E");
	--pr-i-thumbup: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1 21h4V9H1zm22-11a2 2 0 0 0-2-2h-6.3l1-4.6v-.3c0-.4-.2-.8-.4-1.1L14.2 1 7.6 7.6C7.2 8 7 8.4 7 9v10a2 2 0 0 0 2 2h9c.8 0 1.5-.5 1.8-1.2l3-7.1c.1-.2.2-.5.2-.7z'/%3E%3C/svg%3E");
	--pr-i-plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zm-2 10h-4v4h-2v-4H7v-2h4V7h2v4h4z'/%3E%3C/svg%3E");
	--pr-i-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zm-2 10H7v-2h10z'/%3E%3C/svg%3E");
	--pr-i-heart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.4 10.6 20C5.4 15.4 2 12.3 2 8.5 2 5.4 4.4 3 7.5 3c1.7 0 3.4.8 4.5 2.1C13.1 3.8 14.8 3 16.5 3 19.6 3 22 5.4 22 8.5c0 3.8-3.4 6.9-8.6 11.5z'/%3E%3C/svg%3E");
	--pr-i-cons: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 6.4 17.6 5 12 10.6 6.4 5 5 6.4 10.6 12 5 17.6 6.4 19l5.6-5.6 5.6 5.6 1.4-1.4-5.6-5.6z'/%3E%3C/svg%3E");
}

/* [tie_list] */
.tie-list-shortcode ul { margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; }
.tie-list-shortcode li { list-style: none !important; padding-left: 26px; position: relative; }
.tie-list-shortcode ul li::before { content: ""; position: absolute; left: 0; top: .3em; width: 1em; height: 1em; -webkit-mask: var(--pr-i-checklist) no-repeat center / contain; mask: var(--pr-i-checklist) no-repeat center / contain; background-color: #7fb718; }
.tie-list-shortcode.starlist ul li::before { -webkit-mask-image: var(--pr-i-starlist); mask-image: var(--pr-i-starlist); background-color: #fbd606; }
.tie-list-shortcode.checklist ul li::before { -webkit-mask-image: var(--pr-i-checklist); mask-image: var(--pr-i-checklist); background-color: #7fb718; }
.tie-list-shortcode.lightbulb ul li::before { -webkit-mask-image: var(--pr-i-lightbulb); mask-image: var(--pr-i-lightbulb); background-color: #fbd606; }
.tie-list-shortcode.thumbup ul li::before { -webkit-mask-image: var(--pr-i-thumbup); mask-image: var(--pr-i-thumbup); background-color: #7fb718; }
.tie-list-shortcode.thumbdown ul li::before { -webkit-mask-image: var(--pr-i-thumbup); mask-image: var(--pr-i-thumbup); background-color: #f01818; transform: rotate(180deg); }
.tie-list-shortcode.plus ul li::before { -webkit-mask-image: var(--pr-i-plus); mask-image: var(--pr-i-plus); background-color: #555; }
.tie-list-shortcode.minus ul li::before { -webkit-mask-image: var(--pr-i-minus); mask-image: var(--pr-i-minus); background-color: #555; }
.tie-list-shortcode.heart ul li::before { -webkit-mask-image: var(--pr-i-heart); mask-image: var(--pr-i-heart); background-color: #ff7979; }
.tie-list-shortcode.cons ul li::before { -webkit-mask-image: var(--pr-i-cons); mask-image: var(--pr-i-cons); background-color: #f01818; }

/* [box] */
.box { padding: 20px; background-color: #f6f6f6; margin-bottom: 20px; overflow-wrap: break-word; border: 1px solid transparent; border-radius: 4px; }
.box .box-inner-block { padding-left: 60px; min-height: 44px; position: relative; }
.box .box-inner-block::after { content: ""; display: table; clear: both; }
.box .tie-shortcode-boxicon { position: absolute; left: 0; top: 0; width: 44px; height: 44px; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; }
.box.shadow { background: #fff; border-color: #ddd; box-shadow: 0 0 5px rgba(153, 153, 153, .6); }
.box.shadow .box-inner-block { padding: 0; min-height: 0; }
.box.shadow .tie-shortcode-boxicon { display: none; }
.box.info { background: #d6f6ff; border-color: #bfe3ec; }
.box.info .tie-shortcode-boxicon { -webkit-mask-image: var(--pr-i-info); mask-image: var(--pr-i-info); background-color: #2cb4da; }
.box.success { background: #e2f2cb; border-color: #d1e4b7; }
.box.success .tie-shortcode-boxicon { -webkit-mask-image: var(--pr-i-success); mask-image: var(--pr-i-success); background-color: #8ab84d; }
.box.warning { background: #fffddb; border-color: #e9e59e; }
.box.warning .tie-shortcode-boxicon { -webkit-mask-image: var(--pr-i-warning); mask-image: var(--pr-i-warning); background-color: #ecc21b; }
.box.error { background: #ffe6e2; border-color: #eebfb8; }
.box.error .tie-shortcode-boxicon { -webkit-mask-image: var(--pr-i-error); mask-image: var(--pr-i-error); background-color: #f03317; }
.box.download { background: #e2f2cb; border-color: #d1e4b7; }
.box.download .tie-shortcode-boxicon { -webkit-mask-image: var(--pr-i-download); mask-image: var(--pr-i-download); background-color: #8ab84d; }
.box.note { background: #fffddb; border-color: #e9e59e; }
.box.note .tie-shortcode-boxicon { -webkit-mask-image: var(--pr-i-note); mask-image: var(--pr-i-note); background-color: #ecc21b; }
.box.aligncenter { margin-left: auto; margin-right: auto; }
.box.alignleft { float: left; margin-right: 20px; }
.box.alignright { float: right; margin-left: 20px; }

/* [dropcap] */
.dropcap { display: block; float: left; margin: 0 8px 0 0; font-size: 50px; line-height: 50px; }
.dropcap.dropcap-word { display: inline; float: none; margin: 0 4px 0 0; font-size: inherit; line-height: inherit; font-weight: 700; }

/* [countdown] (The Countdown Pro "default" template) */
.pr-countdown { margin: 0 auto 10px; max-width: 520px; text-align: center; }
.pr-countdown .countdown-row { display: flex; gap: 8px; justify-content: center; }
.pr-countdown .countdown-section { flex: 1 1 0; display: block; font-size: 12px; text-align: center; background: #f4f4f4; border-radius: 4px; }
.pr-countdown .countdown-amount { display: block; font-weight: 700; font-size: 26px; line-height: 1.2; padding: 6px 0 2px; font-variant-numeric: tabular-nums; }
.pr-countdown .countdown-period { display: block; padding: 0 0 6px; }
.pr-countdown .countdown-row.countdown-amount { display: block; font-size: 22px; background: none; }
.pr-countdown-expired .countdown-amount { color: #999; }

/* [visual-link-preview] */
.pr-vlp { display: flex; gap: 12px; align-items: stretch; margin: 0 0 20px; padding: 12px; border: 1px solid #ddd; border-radius: 6px; color: inherit; text-decoration: none; background: #fff; }
.pr-vlp:hover, .pr-vlp:focus-visible { border-color: #999; }
.pr-vlp-image { width: 120px; height: 90px; object-fit: cover; flex: none; border-radius: 4px; }
.pr-vlp-text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.pr-vlp-title { font-weight: 700; }
.pr-vlp-summary { font-size: .9em; opacity: .85; }
.pr-vlp-host { font-size: .8em; opacity: .7; }

/* Forget About Shortcode Buttons (old plugin's public/css/button-styles.css): 66 published posts keep its
   rendered <a class="fasc-button ..."> markup; colours come from the inline style. Icons use dashicons (Front::enqueue). */
a.fasc-button, .entry-content a.fasc-button { display: inline-block; max-width: 100%; color: #fff; text-decoration: none; margin: 3px 0; border: 0; box-shadow: none; box-sizing: border-box; }
a.fasc-button:hover, a.fasc-button:focus, a.fasc-button:visited, a.fasc-button:active, .entry-content a.fasc-button:hover { text-decoration: none; box-shadow: none; }
a.fasc-button.fasc-ico-before::before, a.fasc-button.fasc-ico-after::after { vertical-align: middle; display: inline-block; -webkit-font-smoothing: antialiased; margin-top: -2px; }
a.fasc-button.fasc-ico-after::before { display: none; content: none; }
a.fasc-size-xsmall.fasc-ico-before::before { font: 400 12px/1 dashicons; padding-right: 4px; }
a.fasc-size-small.fasc-ico-before::before { font: 400 14px/1 dashicons; padding-right: 4px; }
a.fasc-size-medium.fasc-ico-before::before { font: 400 16px/1 dashicons; padding-right: 5px; }
a.fasc-size-large.fasc-ico-before::before { font: 400 20px/22px dashicons; padding-right: 6px; }
a.fasc-size-xlarge.fasc-ico-before::before { font: 400 28px/22px dashicons; padding-right: 6px; }
a.fasc-size-xsmall.fasc-ico-after::after { font: 400 12px/1 dashicons; padding-left: 4px; }
a.fasc-size-small.fasc-ico-after::after { font: 400 14px/1 dashicons; padding-left: 4px; }
a.fasc-size-medium.fasc-ico-after::after { font: 400 16px/1 dashicons; padding-left: 5px; }
a.fasc-size-large.fasc-ico-after::after { font: 400 20px/22px dashicons; padding-left: 6px; }
a.fasc-size-xlarge.fasc-ico-after::after { font: 400 28px/22px dashicons; padding-left: 6px; }
.fasc-size-xsmall { font-size: 10px; padding: 5px 7px; }
.fasc-size-small { font-size: 12px; padding: 6px 8px; line-height: 17px; }
.fasc-size-medium { font-size: 14px; padding: 7px 9px; line-height: 19px; }
.fasc-size-large { font-size: 18px; padding: 8px 10px; line-height: 24px; }
.fasc-size-xlarge { font-size: 24px; padding: 11px 13px; line-height: 33px; }
.fasc-type-flat:hover, .fasc-type-popout:hover { background-image: linear-gradient(rgba(0, 0, 0, .1), rgba(0, 0, 0, .1)); }
a.fasc-type-glossy { background-color: #247edd; border: 1px solid rgba(0, 0, 0, .1); background-image: linear-gradient(to bottom, rgba(255, 255, 255, .3), rgba(255, 255, 255, 0) 50%, rgba(0, 0, 0, .12) 51%, rgba(0, 0, 0, .04)); }
a.fasc-type-glossy:hover { border: 1px solid rgba(0, 0, 0, .1); background-image: linear-gradient(to bottom, rgba(0, 0, 0, .1), rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, .1) 51%, rgba(0, 0, 0, .1)); }
.fasc-type-popout.fasc-size-xlarge { box-shadow: 7px 7px 0 #777; }
.fasc-type-popout.fasc-size-large { box-shadow: 6px 6px 0 #777; }
.fasc-type-popout.fasc-size-medium { box-shadow: 5px 5px 0 #777; }
.fasc-type-popout.fasc-size-small { box-shadow: 4px 4px 0 #777; }
.fasc-type-popout.fasc-size-xsmall { box-shadow: 3px 3px 0 #777; }
a.fasc-button.rounded.fasc-size-xlarge, .fasc-rounded-medium.fasc-size-xlarge { border-radius: 15px; }
a.fasc-button.rounded.fasc-size-large, .fasc-rounded-medium.fasc-size-large { border-radius: 10px; }
a.fasc-button.rounded.fasc-size-medium, .fasc-rounded-medium.fasc-size-medium { border-radius: 9px; }
a.fasc-button.rounded.fasc-size-small, .fasc-rounded-medium.fasc-size-small { border-radius: 8px; }
a.fasc-button.rounded.fasc-size-xsmall, .fasc-rounded-medium.fasc-size-xsmall { border-radius: 7px; }
a.fasc-style-bold { font-weight: 700; }
a.fasc-style-italic { font-style: italic; }
a.fasc-style-strikethrough, a.fasc-style-strikethrough:hover { text-decoration: line-through; }

/* Lightbox */
html.pr-lb-open { overflow: hidden; }
.pr-lb { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, .9); }
.pr-lb[hidden] { display: none; }
.pr-lb-fig { margin: 0; max-width: 94vw; max-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.pr-lb-img { max-width: 94vw; max-height: 86vh; width: auto; height: auto; object-fit: contain; }
.pr-lb-cap { color: #eee; padding: 8px 12px 0; text-align: center; font-size: 14px; }
.pr-lb-btn { position: absolute; border: 0; background: rgba(0, 0, 0, .45); color: #fff; font-size: 36px; line-height: 1; width: 48px; height: 48px; border-radius: 50%; cursor: pointer; padding: 0; }
.pr-lb-btn:hover, .pr-lb-btn:focus-visible { background: rgba(255, 255, 255, .25); }
.pr-lb-btn[hidden] { display: none; }
.pr-lb-close { top: 12px; right: 12px; }
.pr-lb-prev { left: 12px; top: 50%; transform: translateY(-50%); }
.pr-lb-next { right: 12px; top: 50%; transform: translateY(-50%); }
.pr-lb-count { position: absolute; top: 22px; left: 16px; color: #ddd; font-size: 14px; }

/* Cookie notice */
.pr-cookie { position: fixed; left: 12px; right: auto; bottom: 12px; z-index: 99999; max-width: 420px; display: flex; gap: 10px; align-items: center; padding: 8px 12px; background: rgba(34, 34, 34, .96); color: #fff; border-radius: 8px; box-shadow: 0 4px 18px rgba(0, 0, 0, .3); font-size: 13px; line-height: 1.4; }
.pr-cookie[hidden] { display: none; }
.pr-cookie p { margin: 0; flex: 1; }
.pr-cookie a { color: #ffd54f; text-decoration: underline; }
.pr-cookie-ok { flex: none; border: 0; border-radius: 4px; padding: 6px 14px; background: #ffd54f; color: #222; font-weight: 700; cursor: pointer; font-size: 13px; }

@media (max-width: 600px) {
	.pr-cookie { left: 0; right: 0; bottom: 0; max-width: none; border-radius: 0; padding: 8px 12px; }
	.pr-cookie p { font-size: 12px; }
	.pr-vlp-image { width: 84px; height: 64px; }
	.pr-countdown .countdown-amount { font-size: 20px; }
}
