/* =========================================================
   Founders Helper - SCOPE Pertamina
   Styling untuk 4 shortcode modul Repository:
   [scope_repo_badges] [scope_repo_info_card]
   [scope_repo_video_list] [scope_repo_file_list]

   CATATAN: font-family sengaja TIDAK di-@import di sini —
   Sora / Inter / IBM Plex Mono diasumsikan sudah dimuat lewat
   tema/Elementor Global Fonts sesuai design system SCOPE
   Pertamina, supaya tidak ada request font duplikat.
   ========================================================= */

:root{
	--fhsp-red:#E62A28;
	--fhsp-green:#A8C539;
	--fhsp-blue:#0074BD;
	--fhsp-ink:#1A1A1A;
	--fhsp-paper:#F7F6F2;
	--fhsp-paper-2:#EFEDE6;
	--fhsp-line:#E2DFD5;
	--fhsp-white:#FFFFFF;
}

/* ===== Badges ===== */
.scope-repo-badge-row{
	display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px;
}
.scope-repo-badge{
	font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:600;
	text-transform:uppercase;letter-spacing:.06em;
	padding:5px 12px;border-radius:100px;color:var(--fhsp-white);
	display:inline-flex;align-items:center;gap:4px;
}
.scope-repo-badge.kategori{background:var(--fhsp-blue);}
.scope-repo-badge.komposisi{background:var(--fhsp-paper-2);color:var(--fhsp-ink);border:1px solid var(--fhsp-line);}
/* access-open / access-locked: disimpan (belum dipakai shortcode manapun
   saat ini) — siap dipakai lagi kalau nanti FHSP_REPO_REQUIRE_LOGIN
   diaktifkan dan perlu indikator visual per halaman. */
.scope-repo-badge.access-open{background:transparent;color:#4E9A2F;border:1px solid #4E9A2F;}
.scope-repo-badge.access-locked{background:transparent;color:var(--fhsp-red);border:1px solid var(--fhsp-red);}

/* ===== Info Card ===== */
.scope-repo-info-card{
	background:var(--fhsp-white);border:1px solid var(--fhsp-line);border-radius:14px;
	padding:22px;font-family:'Inter',sans-serif;
}
.scope-repo-info-card h3{
	font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#8A8677;
	margin:0 0 12px;font-family:'IBM Plex Mono',monospace;font-weight:600;
}
.scope-repo-info-row{
	display:flex;justify-content:space-between;gap:12px;font-size:13.5px;
	padding:9px 0;border-bottom:1px dashed var(--fhsp-line);
}
.scope-repo-info-row:last-child{border-bottom:none;}
.scope-repo-info-row .label{color:#6B6858;}
.scope-repo-info-row .value{font-weight:600;text-align:right;}

/* ===== Daftar Video ===== */
.scope-repo-video-grid{
	display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
	width:100% !important;max-width:100% !important;box-sizing:border-box;
}
.scope-repo-video-item{
	background:var(--fhsp-white);border:1px solid var(--fhsp-line);border-radius:14px;overflow:hidden;
	width:100%;max-width:100%;box-sizing:border-box;min-width:0;
}
.scope-repo-video-frame{
	position:relative;width:100%;padding-top:56.25%;background:var(--fhsp-ink);
	cursor:pointer;overflow:hidden;
}
.scope-repo-video-frame img{
	position:absolute !important;top:0 !important;left:0 !important;
	width:100% !important;height:100% !important;
	max-width:none !important;object-fit:cover !important;opacity:.75;margin:0 !important;
}
.scope-repo-video-frame iframe{
	position:absolute;inset:0;width:100%;height:100%;border:0;
}
.scope-repo-play-overlay{
	position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
	background:linear-gradient(0deg,rgba(0,0,0,.35),rgba(0,0,0,.05));
}
.scope-repo-play-btn{
	width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.92);
	display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--fhsp-red);
}
.scope-repo-video-label{
	padding:12px 14px;font-weight:600;font-size:13.5px;font-family:'Inter',sans-serif;
}

/* ===== Daftar Berkas ===== */
.scope-repo-file-list{display:flex;flex-direction:column;gap:10px;font-family:'Inter',sans-serif;}
.scope-repo-file-item{
	background:var(--fhsp-white);border:1px solid var(--fhsp-line);border-radius:12px;
	padding:16px 18px;display:flex;align-items:center;gap:16px;
	transition:border-color .15s ease;
}
.scope-repo-file-item:hover{border-color:var(--fhsp-blue);}

/* =========================================================
   DEFENSIVE OVERRIDE — wrapper widget Elementor pembungkus
   shortcode ini kadang ter-freeze di tinggi lama (dari JS
   Elementor sendiri: lazy-load/motion-effects/cache — root
   cause pastinya tidak berhasil dipastikan setelah beberapa
   percobaan). Selector :has() dipakai supaya HANYA menyasar
   wrapper yang benar-benar membungkus konten shortcode ini,
   tidak menyentuh widget shortcode lain di halaman yang sama.
   ========================================================= */
.elementor-widget-shortcode:has(.scope-repo-video-grid),
.elementor-widget-shortcode:has(.scope-repo-file-list){
	height:auto !important;
	max-height:none !important;
	min-height:0 !important;
	overflow:visible !important;
}
.scope-repo-file-icon{
	width:42px;height:42px;border-radius:10px;flex-shrink:0;
	display:flex;align-items:center;justify-content:center;
	font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;color:var(--fhsp-white);
}
.scope-repo-file-icon.pdf{background:var(--fhsp-red);}
.scope-repo-file-icon.ppt{background:#D9772E;}
.scope-repo-file-icon.doc{background:var(--fhsp-blue);}
.scope-repo-file-icon.ext{background:#6B6858;}
.scope-repo-file-body{flex:1;min-width:0;}
.scope-repo-file-label{font-weight:600;font-size:14.5px;margin-bottom:2px;}
.scope-repo-file-sub{font-size:12px;color:#8A8677;font-family:'IBM Plex Mono',monospace;}
.scope-repo-file-action{
	font-size:13px;font-weight:600;padding:9px 16px;border-radius:100px;
	display:flex;align-items:center;gap:6px;flex-shrink:0;white-space:nowrap;
}
.scope-repo-file-action.unlocked{background:var(--fhsp-ink);color:var(--fhsp-white);}
.scope-repo-file-action.locked{background:var(--fhsp-paper-2);color:#8A8677;cursor:not-allowed;}
.scope-repo-file-action.external{background:transparent;border:1px solid var(--fhsp-blue);color:var(--fhsp-blue);}

@media (max-width:900px){
	.scope-repo-video-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
	.scope-repo-video-grid{grid-template-columns:1fr;}
	.scope-repo-file-item{flex-wrap:wrap;}
}
