/* =====================================================================
   عِيان — الهوية ٢: «الشاهد الحي»
   الفكرة: عِيان شاهدٌ يرى بنفسه. القزحية عضو حي في الواجهة لا شعار جامد:
   تتسع حين يصل جديد، وتدور حين تبحث، ونبضها مرجاني حين يكون الخبر عاجلًا.
   كل شيء غيرها هادئ ومنضبط: حبر عميق، ضباب بنفسجي بارد، ألوان دلالية لكل نوع محتوى.
   ===================================================================== */

/* ---------- الرموز: ألوان دلالية، ومقاسات الخط، والحواف بحسب المرتبة، والحركة ---------- */
:root {
  /* الأساس (فاتح) */
  --bg: #F4F3FC; --surface: #FFFFFF; --surface-2: #ECEAF9; --line: #E2DEF4; --line-2: #D3CDEE;
  --ink: #120E2E; --ink-2: #3A355E; --muted: #6A6590;
  /* القزحية: بنفسجي للتفاعل، سماوي للتوثيق والمباشر، مرجاني للعاجل والفعل */
  --accent: #5B3DF5; --accent-ink: #FFFFFF; --accent-soft: #ECE8FF;
  --plasma: #0FB6D6; --coral: #FF4F45; --coral-ink: #D2342A;
  /* ألوان أنواع المحتوى: تظهر علامةً صغيرة لا خلفيات */
  --t-news: var(--accent); --t-story: var(--plasma); --t-urgent: var(--coral);
  --t-report: #D48A06; --t-event: #2F6BFF; --t-audio: #F26B1D; --t-video: #E5357A;
  /* الحواف بحسب المرتبة: الورقة > البطاقة البارزة > البطاقة > الحقل > الشارة */
  --r-sheet: 30px; --r-hero: 26px; --r: 20px; --r-field: 14px; --r-sm: 10px;
  /* الارتفاع: ظلال مشوبة بالبنفسجي لا رمادية */
  --e1: 0 1px 0 rgba(18,14,46,.04), 0 6px 18px -10px rgba(70,46,200,.16);
  --e2: 0 2px 0 rgba(18,14,46,.04), 0 18px 40px -18px rgba(70,46,200,.30);
  --e3: 0 30px 80px -30px rgba(18,14,46,.45);
  --shadow: var(--e1);
  /* الحركة */
  --spring: cubic-bezier(.2, .9, .25, 1.12); --ease: cubic-bezier(.3, .7, .2, 1);
  --d1: 120ms; --d2: 220ms; --d3: 380ms;
  /* مقاسات الخط (Alexandria): عرض، عنوان صفحة، عنوان قسم، عنوان بطاقة، متن، تعليق */
  --nav-h: 72px;
  /* تعتيم النص الملوّن على الخلفيات الفاتحة لبلوغ تباين 4.5:1 (يُصفَّر في الداكن) */
  --deep: 38%;
  --fs-display: 30px; --fs-h1: 26px; --fs-h2: 19px; --fs-h3: 16.5px; --fs-body: 15.5px; --fs-cap: 12.5px;
}
:root[data-theme="dark"] {
  --bg: #08071A; --surface: #12102A; --surface-2: #1B1838; --line: #25214A; --line-2: #332E60;
  --ink: #F0EEFF; --ink-2: #C3BEEA; --muted: #9590C2;
  --accent: #A895FF; --accent-ink: #0C0A20; --accent-soft: #241E52;
  --plasma: #3FD8F2; --coral: #FF6D62; --coral-ink: #FF8B80;
  --t-report: #F4B63E; --t-event: #6E9BFF; --t-audio: #FF9358; --t-video: #FF6FA8;
  --e1: 0 1px 0 rgba(0,0,0,.4), 0 10px 26px -14px rgba(0,0,0,.7);
  --e2: 0 2px 0 rgba(0,0,0,.4), 0 22px 46px -18px rgba(0,0,0,.8);
  --deep: 0%;
}
@media (prefers-color-scheme: dark) {
  :root[data-theme="auto"] {
    --bg: #08071A; --surface: #12102A; --surface-2: #1B1838; --line: #25214A; --line-2: #332E60;
    --ink: #F0EEFF; --ink-2: #C3BEEA; --muted: #9590C2;
    --accent: #A895FF; --accent-ink: #0C0A20; --accent-soft: #241E52;
    --plasma: #3FD8F2; --coral: #FF6D62; --coral-ink: #FF8B80;
    --t-report: #F4B63E; --t-event: #6E9BFF; --t-audio: #FF9358; --t-video: #FF6FA8;
    --e1: 0 1px 0 rgba(0,0,0,.4), 0 10px 26px -14px rgba(0,0,0,.7);
    --e2: 0 2px 0 rgba(0,0,0,.4), 0 22px 46px -18px rgba(0,0,0,.8);
    --deep: 0%;
  }
}
body { background: var(--bg); color: var(--ink); font-size: var(--fs-body); -webkit-tap-highlight-color: transparent; }

/* ---------- التوقيع: القزحية الحية ---------- */
/* مؤشر التحميل: حلقة قزحية تدور وبؤبؤ ينبض (يحل محل الدائرة الدوارة في كل مكان) */
.spin { width: 30px; height: 30px; border: 0 !important; border-radius: 50%; position: relative; margin: 18px auto; animation: none !important;
  background: conic-gradient(from 0deg, var(--accent), var(--plasma), transparent 70%, var(--accent)); -webkit-mask: radial-gradient(circle, transparent 52%, #000 54%); mask: radial-gradient(circle, transparent 52%, #000 54%); animation: iris-rot 1.1s linear infinite !important; }
.spin::after { content: ''; position: absolute; inset: 0; margin: auto; width: 34%; height: 34%; border-radius: 50%; background: var(--coral); -webkit-mask: none; animation: iris-pulse 1.1s var(--ease) infinite; }
.btn .spin, .r-full .spin { width: 18px; height: 18px; margin: 0; display: inline-block; vertical-align: middle; }
@keyframes iris-rot { to { transform: rotate(360deg); } }
@keyframes iris-pulse { 0%, 100% { transform: scale(.7); opacity: .8; } 50% { transform: scale(1.1); opacity: 1; } }
/* زر التحديث: القزحية تدور أثناء الجلب */
.icon-btn.loading svg, [aria-busy="true"] > svg { animation: iris-rot .9s linear infinite; }
/* هيكل التحميل: وميض بنفسجي خافت يمرّ كأنه ضوء على عدسة */
.skeleton { background: linear-gradient(100deg, var(--surface-2) 30%, color-mix(in oklab, var(--accent) 10%, var(--surface-2)) 50%, var(--surface-2) 70%) 0 0 / 300% 100% !important; animation: shine 1.4s var(--ease) infinite !important; border-radius: var(--r); }
@keyframes shine { from { background-position: 100% 0; } to { background-position: 0 0; } }
/* حلقة التركيز للوحة المفاتيح: حلقة القزحية */
:focus-visible { outline: 2px solid var(--accent) !important; outline-offset: 2px; box-shadow: 0 0 0 5px color-mix(in srgb, var(--plasma) 25%, transparent); border-radius: 12px; }

/* ---------- الطباعة ---------- */
.td-head h1 { font-size: var(--fs-display); font-weight: 800; letter-spacing: -.015em; line-height: 1.25; }
.page-head h1 { font-size: var(--fs-display); font-weight: 800; letter-spacing: -.015em; line-height: 1.25; }
.page-head p { font-size: 14.5px; line-height: 1.75; max-width: 60ch; }
.w-h h2 { font-size: var(--fs-h2); font-weight: 800; letter-spacing: -.005em; }
.card h3, .rp-card h3, .ev-b h3 { font-size: var(--fs-h3); font-weight: 700; line-height: 1.55; }

/* ---------- رؤوس الأقسام: علامة عدسة بلون نوع المحتوى ---------- */
.w-h h2 > svg { box-sizing: content-box; width: 16px; height: 16px; padding: 6px; border-radius: 50%; color: var(--wt, var(--accent)); background: color-mix(in srgb, var(--wt, var(--accent)) 13%, transparent); }
.w-rep { --wt: var(--t-report); } .w-ev { --wt: var(--t-event); } .w-pod { --wt: var(--t-audio); } .w-vid { --wt: var(--t-video); } .live-w { --wt: var(--plasma); }
.w-h a { padding: 8px 4px; }

/* ---------- البطاقات: حواف بحسب المرتبة، ضغط حي ---------- */
.card, .rcard, .rp-card, .ev-row, .pcard, .vcard, .brk, .urg { transition: transform var(--d2) var(--spring), box-shadow var(--d2) var(--ease), border-color var(--d2); }
.card { border-radius: var(--r); box-shadow: var(--e1); border: 1px solid color-mix(in srgb, var(--line) 70%, transparent); }
.card.feature, .brk, .urg { border-radius: var(--r-hero); }
@media (hover: hover) { .card:hover, .rp-card:hover, .ev-row:hover { box-shadow: var(--e2); border-color: var(--line-2); } }
.card:active, .rcard:active, .rp-card:active, .ev-row:active, .pcard:active, .vcard:active, .brk:active { transform: scale(.982); }
.card.seen { opacity: .78; }

/* ---------- الأزرار والشرائح ---------- */
.btn { transition: transform var(--d1) var(--spring), background-color var(--d2), box-shadow var(--d2); min-height: 44px; }
.btn:active { transform: scale(.96); }
.btn.primary { background: var(--ink); color: var(--bg); box-shadow: 0 8px 22px -12px color-mix(in srgb, var(--accent) 70%, transparent); }
:root[data-theme="dark"] .btn.primary { background: var(--accent); color: var(--accent-ink); }
.btn.primary:hover { box-shadow: 0 12px 28px -12px color-mix(in srgb, var(--accent) 85%, transparent); }
.chip { transition: background-color var(--d2), color var(--d2), border-color var(--d2), transform var(--d1) var(--spring); min-height: 40px; }
.chip:active { transform: scale(.95); }
.chip.sel, .chip[aria-pressed="true"] { background: var(--ink); color: var(--bg); border-color: var(--ink); }
:root[data-theme="dark"] .chip.sel { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
.icon-btn { transition: transform var(--d1) var(--spring), background-color var(--d2); }
.icon-btn:active { transform: scale(.9); }

/* ---------- شريط التنقل: رصيف عائم وزجاجي، ومؤشر بؤبؤ ينزلق إلى القسم الحالي ---------- */
.nav { --n: 5; inset-inline: 10px; bottom: calc(8px + var(--safe-b)); height: calc(var(--nav-h) - 8px); padding-bottom: 0;
  border: 1px solid color-mix(in srgb, var(--line-2) 70%, transparent); border-radius: 26px; box-shadow: var(--e3);
  background: color-mix(in srgb, var(--surface) 78%, transparent); backdrop-filter: saturate(1.8) blur(22px); -webkit-backdrop-filter: saturate(1.8) blur(22px); overflow: hidden; }
.nav::before { content: ''; position: absolute; top: 6px; bottom: 6px; width: calc((100% - 12px) / var(--n)); inset-inline-start: calc(6px + (100% - 12px) / var(--n) * var(--i, 0));
  border-radius: 20px; background: var(--accent-soft); transition: inset-inline-start var(--d3) var(--spring); z-index: 0; }
.nav a { position: relative; z-index: 1; transition: color var(--d2), transform var(--d1) var(--spring); }
.nav a:active { transform: scale(.92); }
.nav a.on { color: var(--accent); font-weight: 700; }
.nav a.on svg { filter: none; animation: nav-pop var(--d3) var(--spring); }
@keyframes nav-pop { 0% { transform: scale(.8); } 60% { transform: scale(1.12); } 100% { transform: scale(1); } }
#app { padding-bottom: calc(var(--nav-h) + var(--safe-b) + 28px); }

/* ---------- الأوراق المنبثقة: صعود نابض وستار ضبابي ---------- */
.scrim { background: color-mix(in srgb, var(--ink) 40%, transparent); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); animation: fade-in var(--d2) var(--ease); }
.sheet { border-radius: var(--r-sheet) var(--r-sheet) 0 0; box-shadow: var(--e3); animation: sheet-up var(--d3) var(--spring); }
.sheet .grab { width: 42px; height: 5px; border-radius: 5px; background: var(--line-2); margin: 8px auto 12px; }
@keyframes sheet-up { from { transform: translateY(40%); opacity: .4; } to { transform: none; opacity: 1; } }
@keyframes fade-in { from { opacity: 0; } }

/* ---------- الإشعار العابر: يقفز من الأعلى ---------- */
.toast { border-radius: 999px; box-shadow: var(--e2); transition: opacity var(--d2), transform var(--d3) var(--spring); transform: translateY(-14px) scale(.96); }
.toast.on { transform: none; }

/* ---------- لحظة واحدة منسّقة: دخول الصفحة (تتابع خفيف للأقسام عند فتح الرئيسية فقط) ---------- */
#app.enter > * { animation: page-in var(--d3) var(--ease) both; }
@keyframes page-in { from { opacity: 0; transform: translateY(8px); } }
#td.first > * { animation: page-in 460ms var(--ease) both; }
#td.first > *:nth-child(2) { animation-delay: 60ms; } #td.first > *:nth-child(3) { animation-delay: 120ms; } #td.first > *:nth-child(4) { animation-delay: 180ms; }
#td.first > *:nth-child(5) { animation-delay: 240ms; } #td.first > *:nth-child(n+6) { animation-delay: 300ms; }

/* ---------- العاجل والمباشر: نبض حي ---------- */
.live i, .live-dot { position: relative; }
.live i::after { content: ''; position: absolute; inset: -4px; border-radius: 50%; border: 2px solid currentColor; animation: ripple 1.6s var(--ease) infinite; }
@keyframes ripple { from { transform: scale(.6); opacity: .9; } to { transform: scale(1.8); opacity: 0; } }

/* ---------- بطاقات التقارير في شريط الرئيسية (إصلاح العرض: لا تُحسب النسبة من عرض الشريط) ---------- */
.w-rep .rail-in > .rp-card { flex: none; width: min(82vw, 330px); margin: 0; }
.w-rep .rail-in { padding: 0; gap: 12px; }
.w-rep .rp-card h3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.rp-card { border-radius: var(--r); box-shadow: var(--e1); }
.rp-card .rp-org b { color: var(--t-report); }
.rp-card.k-intl .rp-org b { color: var(--plasma); } .rp-card.k-consult .rp-org b { color: var(--accent); } .rp-card.k-local .rp-org b { color: var(--t-event); }
.ev-row { box-shadow: var(--e1); }
.ev-date { background: color-mix(in srgb, var(--t-event) 12%, var(--surface)); color: var(--t-event); }

/* ---------- الحالات الفارغة: القزحية مغمضة تدعو إلى فعل ---------- */
.empty { padding: 56px 20px; }
.empty::before { content: ''; display: block; width: 64px; height: 64px; margin: 0 auto 16px; border-radius: 50%;
  background: radial-gradient(circle, var(--coral) 0 18%, transparent 19%), conic-gradient(from 210deg, var(--accent), var(--plasma), var(--accent));
  -webkit-mask: radial-gradient(circle, #000 0 18%, transparent 19% 44%, #000 46%); mask: radial-gradient(circle, #000 0 18%, transparent 19% 44%, #000 46%); opacity: .9; }
.empty h2, .empty b { color: var(--ink); }

/* ---------- الحقول والمجموعات ---------- */
.input, input.input, textarea.input, select.input { border-radius: var(--r-field); transition: border-color var(--d2), box-shadow var(--d2); }
.input:focus { border-color: var(--accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 16%, transparent); }
.group { border-radius: var(--r); box-shadow: var(--e1); }

/* ---------- الحركة المخفّضة ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  .spin { animation: none !important; }
}

/* وضع اللمحات (غامر داكن دائمًا): رصيف داكن ومؤشر زجاجي فاتح */
body.glance-mode .nav { background: rgba(10,9,28,.82); border: 1px solid rgba(255,255,255,.08); backdrop-filter: saturate(1.6) blur(20px); -webkit-backdrop-filter: saturate(1.6) blur(20px); }
body.glance-mode .nav::before { background: rgba(255,255,255,.12); }
body.glance-mode .nav a.on { color: #fff; }

/* ---------- اللمحات: معلومة مكتملة بلا بتر ---------- */
/* لا قصّ بعدد الأسطر: الملخص والنقاط تظهر كاملة، ويتقلص إطار الصورة والخط عند الحاجة (fitGlance) */
.gc { --gs: 1; }
.gc .gc-title, .gc .gc-title.lg, .gc .gc-title.sm { -webkit-line-clamp: unset !important; display: block !important; overflow: visible !important; font-size: calc(24px * var(--gs)); line-height: 1.42; }
.gc .gc-sum, .gc .gc-sum.with-pts { -webkit-line-clamp: unset !important; display: block !important; overflow: visible !important; font-size: calc(16px * var(--gs)); line-height: 1.75; color: rgba(255,255,255,.9); }
.gc .gc-vpts li, .gc-vpts li:nth-child(n+2) { display: flex !important; font-size: calc(14.5px * var(--gs)); line-height: 1.65; }
.gc-inner > .gf { flex: 0 1 auto; }
.gc-inner > .gc-fill { flex: 1 1 0; min-height: 0; }
.gc.gc-long .gc-sum { display: -webkit-box !important; -webkit-box-orient: vertical; -webkit-line-clamp: 6 !important; overflow: hidden !important; }
.gc-more { align-self: flex-start; background: rgba(255,255,255,.14); color: #fff; border: 0; border-radius: 999px; padding: 8px 16px; font: inherit; font-size: 13.5px; font-weight: 600; min-height: 40px; cursor: pointer; }
.gc-kick .gc-new { background: var(--coral) !important; color: #fff !important; font-weight: 700; }
@media (max-height: 700px) { .gc { --gs: .94; } }
.gc .gc-vpts li span { display: block !important; -webkit-line-clamp: unset !important; overflow: visible !important; }
.gc .gc-vpts li svg { color: var(--plasma); }
/* القوائم والبطاقات: الملخص يظهر كاملًا حتى أربعة أسطر ثم «المزيد» في صفحة الخبر — دون بتر وسط الجملة على الخادم */

/* ── دورة 17: إتاحة ── */
/* تباين اسم الجهة في التقارير على الخلفية الفاتحة */
.rp-card .rp-org b { color: color-mix(in srgb, var(--t-report), #000 var(--deep)); }
.rp-card.k-intl .rp-org b { color: color-mix(in srgb, var(--plasma), #000 var(--deep)); }
.rp-card.k-local .rp-org b { color: color-mix(in srgb, var(--t-event), #000 var(--deep)); }
.rp-pdf { background: var(--coral-ink) !important; }
:root[data-theme="dark"] .rp-pdf { color: #1A0806 !important; }
@media (prefers-color-scheme: dark) { :root[data-theme="auto"] .rp-pdf { color: #1A0806 !important; } }
/* شارة البودكاست/الموجز وعلامة الإتمام: نص داكن على البرتقالي */
.gc.k-podcast .gc-kick .gc-type, .gc.k-brief .gc-kick .gc-type { color: #2A1300; }
.gc.k-podcast .gc-kick .gc-type svg, .gc.k-brief .gc-kick .gc-type svg { color: #2A1300; fill: #2A1300; }
.gc-done { color: #2A1300; }
.gc.k-seen .gc-done { color: #fff; }
.btn.amber { background: var(--coral-ink); color: #fff; }
:root[data-theme="dark"] .btn.amber { color: #1A0806; }
@media (prefers-color-scheme: dark) { :root[data-theme="auto"] .btn.amber { color: #1A0806; } }
/* أهداف لمس لا تقل عن 44px دون تكبير الشكل */
.voice .pv { position: relative; }
.card .dis::after, .voice .pv::after { content: ""; position: absolute; inset: -8px; border-radius: 50%; }
/* قائمة التقارير: البطاقة بعرض المحتوى (كان هامشها يُضاف فوق حشوة الصفحة) */
#rpL > .rp-card { margin-inline: 0; }
#evL > .ev-row { margin-inline: 0; }
#evL > .ev-month { margin-inline: 2px; }
/* دورة 18: سياق القادم من رابط مشاركة */
.auth-ctx { margin: 4px 0 14px; padding: 12px 14px; border-radius: var(--r-field); background: var(--accent-soft); color: var(--ink); font-weight: 600; font-size: 14.5px; line-height: 1.7; border-inline-start: 3px solid var(--accent); }

/* ── لمحة الفيديو بالشاشة كاملة ── */
.gc.gc-vid { padding: 0 !important; background: #000; display: block; }
.gc-vid .gv-stage { position: absolute !important; inset: 0; z-index: 0 !important; overflow: hidden; background: #000; container-type: size; }
.gc-vid .gv-poster { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .35s; }
.gc-vid .gv-host { position: absolute; inset: 0; }
.gc-vid .gv-host iframe { position: absolute; top: 50%; left: 50%; border: 0; transform: translate(-50%, -50%); pointer-events: none; opacity: 0; transition: opacity .35s; }
.gc-vid.ready .gv-host iframe { opacity: 1; }
.gc-vid.ready .gv-poster { opacity: 0; }
/* العمودي: يغطي اللمحة كلها (قصّ الحواف الزائدة) */
.v-vert .gv-host iframe { width: max(100cqw, calc(100cqh * 9 / 16)); height: max(100cqh, calc(100cqw * 16 / 9)); }
/* الأفقي: بعرض الشاشة كاملًا في الثلث العلوي، وخلفه صورته مموّهة */
.v-wide .gv-poster { filter: blur(28px) brightness(.45) saturate(1.3); transform: scale(1.2); }
.v-wide .gv-host { inset: auto 0 auto 0; top: calc(env(safe-area-inset-top, 0px) + 64px); height: calc(100cqw * 9 / 16); }
.v-wide .gv-host iframe { width: 100%; height: 100%; }
.v-wide .gv-frame { position: absolute; inset-inline: 0; top: calc(env(safe-area-inset-top, 0px) + 64px); width: 100%; height: calc(100cqw * 9 / 16); object-fit: cover; transition: opacity .35s; box-shadow: 0 20px 50px rgba(0,0,0,.5); }
.gc-vid.ready .gv-frame { opacity: 0; }
.gv-stage:fullscreen .gv-frame { display: none; }
.gc-vid .gv-tap { position: absolute; inset: 0; z-index: 2; border: 0; background: transparent; cursor: pointer; display: grid; place-items: center; -webkit-tap-highlight-color: transparent; }
.gc-vid .gv-state { width: 74px; height: 74px; border-radius: 50%; display: grid; place-items: center; background: rgba(8,7,26,.45); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); color: #fff; opacity: 0; transform: scale(.85); transition: opacity .2s, transform .2s var(--spring); }
.gc-vid .gv-state svg { width: 32px; height: 32px; margin-inline-start: 4px; }
.gc-vid:not(.playing) .gv-state, .gc-vid.paused .gv-state { opacity: 1; transform: none; }
.v-wide .gv-tap { inset: auto 0 auto 0; top: calc(env(safe-area-inset-top, 0px) + 64px); height: calc(100cqw * 9 / 16); }
.gc-vid .gv-top { position: absolute !important; z-index: 3 !important; top: calc(env(safe-area-inset-top, 0px) + 68px); inset-inline-end: 12px; display: flex; flex-direction: column; gap: 10px; }
.v-wide .gv-top { top: calc(env(safe-area-inset-top, 0px) + 64px + 100cqw * 9 / 16 + 10px); flex-direction: row; }
.gv-btn { width: 42px; height: 42px; border-radius: 14px; border: 0; display: grid; place-items: center; background: rgba(8,7,26,.42); color: #fff; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); cursor: pointer; box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); }
.gv-btn svg { width: 22px; height: 22px; }
.gc-vid .gv-info { position: absolute !important; z-index: 3 !important; inset-inline: 0; bottom: 0; padding: 70px 18px 22px; padding-inline-end: 84px; color: #fff; pointer-events: none;
  background: linear-gradient(to top, rgba(4,3,14,.88) 0%, rgba(4,3,14,.6) 55%, transparent 100%); display: flex; flex-direction: column; gap: 8px; }
.gc-vid .gv-info a, .gc-vid .gv-info button { pointer-events: auto; }
.gc-vid .gc-title { font-size: 20px !important; line-height: 1.5 !important; display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical; overflow: hidden !important; text-shadow: 0 1px 8px rgba(0,0,0,.5); }
.gc-vid .gc-sum { font-size: 14.5px !important; display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical; overflow: hidden !important; color: rgba(255,255,255,.85); margin: 0; }
.gc-vid .gc-src { border-top: 0 !important; padding-top: 2px !important; }
.v-wide .gv-info { top: calc(env(safe-area-inset-top, 0px) + 64px + 100cqw * 9 / 16 + 62px); bottom: auto; background: none; padding-top: 0; }
.gc-vid .gv-prog { position: absolute !important; z-index: 4 !important; inset-inline: 0; bottom: 0; height: 3px; background: rgba(255,255,255,.18); }
.v-wide .gv-prog { bottom: auto; top: calc(env(safe-area-inset-top, 0px) + 64px + 100cqw * 9 / 16); }
.gc-vid .gv-prog i { display: block; height: 100%; width: 0; background: var(--coral); transition: width .5s linear; }
.gc-vid .gc-rail { bottom: 26px; }
.gc-vid { container-type: size; }
.gv-stage:fullscreen { background: #000; }
.gv-stage:fullscreen .gv-host { inset: 0 !important; top: 0 !important; height: 100% !important; }
.gv-stage:fullscreen .gv-tap { inset: 0 !important; top: 0 !important; height: 100% !important; }
@media (prefers-reduced-motion: reduce) { .gc-vid .gv-poster, .gc-vid .gv-host iframe { transition: none; } }
