/* =========================================================================
   NEWSTIME SKIN — ღია, „გაჰაერებული“ ვარიაცია NewssPro-ს დიზაინ-სისტემაზე.
   იტვირთება main.css-ის შემდეგ და გადაფარავს მხოლოდ ტოკენებსა და რამდენიმე
   ზედაპირს, ასე რომ საბაზისო თემა ხელუხლებელი რჩება.
   ========================================================================= */

/* 1. ტოკენები ============================================================= */
:root {
	--np-accent: #1D4FD8;
	--np-accent-rgb: 29, 79, 216;

	--np-radius: 18px;
	--np-r-sm: 10px;

	--np-bg-soft: #F5F8FD;
	--np-bg-mute: #E9EFFA;
	--np-ink: #0E1726;
	--np-ink-2: #46536B;
	--np-ink-3: #78849B;
	--np-line: #E4EAF4;
	--np-line-soft: #F1F5FC;

	--np-shadow-sm: 0 1px 2px rgba(22, 40, 84, .05);
	--np-shadow: 0 2px 8px rgba(22, 40, 84, .05), 0 14px 36px -18px rgba(22, 40, 84, .20);
	--np-shadow-lg: 0 6px 18px rgba(22, 40, 84, .07), 0 30px 64px -28px rgba(22, 40, 84, .26);

	/* სათაურები sans-ზე — სუფთა, თანამედროვე იერი */
	--np-head: var(--np-sans);
}

/* მუქი სქემა — ინკის ტოკენები აუცილებლად ხელახლა უნდა გამოცხადდეს,
   რადგან ზემოთ მოცემული :root ბლოკი main.css-ის dark ბლოკის ტოლ
   სპეციფიკურობას ატარებს და წყაროს რიგით მას აჯობებდა. */
[data-scheme="dark"] {
	--np-bg: #0B0F18;
	--np-bg-soft: #121927;
	--np-bg-mute: #1A2333;
	--np-bg-invert: #05070B;
	--np-ink: #E9EEF7;
	--np-ink-2: #A8B4C6;
	--np-ink-3: #7D8899;
	--np-line: #1F2938;
	--np-line-soft: #161E2C;

	--np-shadow-sm: 0 1px 2px rgba(0, 0, 0, .40);
	--np-shadow: 0 2px 8px rgba(0, 0, 0, .38), 0 16px 40px -20px rgba(0, 0, 0, .70);
	--np-shadow-lg: 0 6px 16px rgba(0, 0, 0, .45), 0 32px 70px -30px rgba(0, 0, 0, .85);
}

/* 2. ტილო ================================================================= */
body::before {
	content: "";
	position: fixed;
	inset: 0 0 auto 0;
	height: 560px;
	z-index: -1;
	pointer-events: none;
	background:
		radial-gradient(120% 90% at 50% -12%, rgba(var(--np-accent-rgb), .09), transparent 68%),
		linear-gradient(180deg, var(--np-bg-soft), transparent 78%);
}

::selection { background: color-mix(in srgb, var(--np-accent) 22%, transparent); }

/* 3. ჰედერი — მინისებრი ==================================================== */
.np-stickyhead .np-header__main {
	background: color-mix(in srgb, var(--np-bg) 80%, transparent);
	backdrop-filter: saturate(165%) blur(14px);
	-webkit-backdrop-filter: saturate(165%) blur(14px);
	border-bottom: 1px solid var(--np-line-soft);
}

/* 4. ბრეკინგ-ლენტა — მუქი ზოლიდან ღია, აქცენტიანი ზოლამდე ================ */
.np-ticker {
	background: color-mix(in srgb, var(--np-accent) 7%, var(--np-bg));
	color: var(--np-ink);
	border-block: 1px solid color-mix(in srgb, var(--np-accent) 14%, transparent);
}
.np-ticker a { color: inherit; }
.np-ticker__label { color: var(--np-accent); }
.np-ticker__label::after { background: color-mix(in srgb, var(--np-accent) 22%, transparent); }
.np-ticker__pausebar { background: var(--np-ink-3); }
.np-ticker.is-paused .np-ticker__pausebar:first-child { border-inline-start-color: var(--np-ink-3); }

/* 5. კატეგორიის ნიშნები — pill, რბილად შეფერილი =========================== */
.np-badge {
	border-radius: var(--np-r-pill);
	background: color-mix(in srgb, var(--np-cat, var(--np-accent)) 12%, var(--np-bg));
	color: var(--np-cat, var(--np-accent));
	letter-spacing: .06em;
}
.np-badge--float {
	background: color-mix(in srgb, #FFFFFF 88%, transparent);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	color: var(--np-cat, var(--np-accent));
	box-shadow: var(--np-shadow-sm);
}
[data-scheme="dark"] .np-badge--float { background: color-mix(in srgb, #0B0F18 78%, transparent); }

/* 6. ბარათები და სურათები ================================================= */
.np-thumb {
	border-radius: var(--np-r-lg);
	box-shadow: var(--np-shadow-sm);
}
.np-card { transition: transform var(--np-base); }
.np-card--md:hover,
.np-card--lg:hover { transform: translateY(-3px); }

/* 7. სექციის სათაურები ==================================================== */
.np-sechead { border-bottom-color: var(--np-line-soft); }
.np-sechead--accent .np-sechead__title::before,
.np-sechead--cat .np-sechead__title::before {
	width: 4px;
	border-radius: var(--np-r-pill);
	background: linear-gradient(180deg,
		var(--np-cat, var(--np-accent)),
		color-mix(in srgb, var(--np-cat, var(--np-accent)) 30%, transparent));
}

/* 8. ტიპოგრაფიის დახვეწა ================================================== */
.np-card__title,
.np-article__title,
.np-archead__title,
.np-sechead__title { letter-spacing: -.02em; }

/* 4b. ლენტის ტექსტი — ღია ფონისთვის მუქ მელანზე ========================== */
.np-ticker__text { color: var(--np-ink); }
.np-ticker__item a:hover .np-ticker__text { color: var(--np-accent); }
.np-ticker__time { color: var(--np-ink-3); }
.np-ticker__pause { opacity: .45; }

/* 9. ონლაინ მკითხველების ნიშანი (mu-plugin: newstime-online.php) ========== */
.np-online {
	color: #12A150;
	font-weight: 650;
	font-variant-numeric: tabular-nums;
}
.np-online__dot {
	width: 7px; height: 7px;
	border-radius: 50%;
	background: #16C265;
	display: inline-block;
	margin-inline-end: 7px;
	box-shadow: 0 0 0 0 rgba(22, 194, 101, .75);
	animation: nt-online-pulse 2.2s infinite;
}
[data-scheme="dark"] .np-online { color: #35D67F; }
@keyframes nt-online-pulse {
	70%  { box-shadow: 0 0 0 7px rgba(22, 194, 101, 0); }
	100% { box-shadow: 0 0 0 0 rgba(22, 194, 101, 0); }
}
@media (prefers-reduced-motion: reduce) {
	.np-online__dot { animation: none; }
}

/* 10. BOING.GE — ბილეთის ფორმის ბანერი ==================================== */
.np-boing-wrap { margin-block: clamp(26px, 4vw, 44px); }

.np-boing {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	width: 100%;
	border: 1px solid #DCE7F8;
	border-radius: var(--np-r-lg);
	background: linear-gradient(135deg, #FFFFFF 0%, #F3F7FF 55%, #E8F0FF 100%);
	color: #0A1B33;
	box-shadow: var(--np-shadow);
	overflow: hidden;
	isolation: isolate;
	text-align: start;
	transition: transform var(--np-fast), box-shadow var(--np-fast);
}
.np-boing:hover { transform: translateY(-2px); box-shadow: var(--np-shadow-lg); }

/* ცის შუქი + ბილეთის ქაღალდის ტექსტურა */
.np-boing::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		radial-gradient(70% 130% at 84% -14%, rgba(29, 79, 216, .16), transparent 60%),
		repeating-linear-gradient(115deg, rgba(29, 79, 216, .045) 0 2px, transparent 2px 22px);
}

.np-boing__main {
	flex: 1 1 320px;
	display: grid;
	gap: 8px;
	align-content: center;
	min-width: 0;
	padding: clamp(18px, 2.6vw, 26px) clamp(20px, 3vw, 32px);
}

.np-boing__brand {
	display: inline-flex;
	align-self: start;
	align-items: center;
	padding: 4px 11px;
	border-radius: var(--np-r-sm);
	background: #0B2C63;
	color: #fff;
	font-size: 11.5px;
	font-weight: 800;
	letter-spacing: .13em;
	line-height: 1.4;
}
.np-boing__brand span { color: #63B3FF; }

/* მარშრუტის ხაზი — წყვეტილი ტრაექტორია თვითმფრინავით */
.np-boing__route {
	display: inline-flex;
	align-items: center;
	gap: 11px;
	font-size: 11.5px;
	font-weight: 750;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #5C739A;
}
.np-boing__plane {
	position: relative;
	display: block;
	width: clamp(46px, 9vw, 78px);
	height: 1px;
	background: repeating-linear-gradient(90deg, #A8BEDE 0 5px, transparent 5px 10px);
}
.np-boing__plane::after {
	content: "✈";
	position: absolute;
	inset-inline-end: -5px;
	top: 50%;
	translate: 0 -50%;
	font-size: 14px;
	line-height: 1;
	color: #1D4FD8;
}

.np-boing__title {
	font-family: var(--np-head);
	font-size: clamp(18px, 2.2vw, 26px);
	font-weight: 750;
	line-height: 1.2;
	letter-spacing: -.02em;
	color: #0A1B33;
	text-wrap: balance;
}
.np-boing__sub {
	font-size: clamp(13px, 1.1vw, 15px);
	line-height: 1.5;
	color: #4E6181;
	max-width: 62ch;
}

/* გასახევი ტალონი */
.np-boing__stub {
	position: relative;
	flex: 0 0 auto;
	display: grid;
	gap: 11px;
	place-content: center;
	justify-items: center;
	padding: clamp(20px, 2.6vw, 28px) clamp(22px, 3vw, 36px);
	border-inline-start: 2px dashed rgba(255, 255, 255, .42);
	background: linear-gradient(160deg, #0B2C63 0%, #143C86 58%, #1D4FD8 100%);
	color: #fff;
	text-align: center;
}
.np-boing__stub-label {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .24em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .58);
}
.np-boing__cta {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 12px 24px;
	border-radius: var(--np-r-pill);
	background: #fff;
	color: #0B2C63;
	font-size: clamp(14px, 1.1vw, 15.5px);
	font-weight: 800;
	white-space: nowrap;
	box-shadow: 0 12px 26px -14px rgba(0, 0, 0, .75);
	transition: filter var(--np-fast);
}
.np-boing__cta::after { content: "→"; line-height: 1; }
.np-boing:hover .np-boing__cta { filter: brightness(1.05); }
.np-boing__note { font-size: 11.5px; color: rgba(255, 255, 255, .74); }

[data-scheme="dark"] .np-boing {
	border-color: #22304A;
	background: linear-gradient(135deg, #0E1726 0%, #121D31 58%, #16294A 100%);
	color: #E9EEF7;
}
[data-scheme="dark"] .np-boing::before {
	background:
		radial-gradient(70% 130% at 84% -14%, rgba(56, 122, 255, .22), transparent 60%),
		repeating-linear-gradient(115deg, rgba(255, 255, 255, .035) 0 2px, transparent 2px 22px);
}
[data-scheme="dark"] .np-boing__title { color: #F1F5FC; }
[data-scheme="dark"] .np-boing__sub { color: #9DAEC8; }
[data-scheme="dark"] .np-boing__route { color: #7F92B4; }
[data-scheme="dark"] .np-boing__plane { background: repeating-linear-gradient(90deg, #3C5479 0 5px, transparent 5px 10px); }

@media (max-width: 760px) {
	.np-boing__stub {
		flex: 1 1 100%;
		grid-auto-flow: row;
		border-inline-start: 0;
		border-block-start: 2px dashed rgba(255, 255, 255, .42);
	}
	.np-boing__cta { width: 100%; justify-content: center; }
	.np-boing__title { font-size: 19px; }
}
