/* WorldState Journal Toolkit */
:root{
	--wst-ink:#0f172a;
	--wst-ink-2:#1e293b;
	--wst-text:#1f2937;
	--wst-muted:#64748b;
	--wst-line:#e5e7eb;
	--wst-paper:#f7f6f2;
	--wst-card:#ffffff;
	--wst-accent:#c8102e;
	--wst-accent-2:#f59e0b;
	--wst-radius:14px;
	--wst-shadow:0 1px 2px rgba(15,23,42,.06),0 8px 24px -12px rgba(15,23,42,.18);
	--wst-shadow-h:0 2px 4px rgba(15,23,42,.08),0 18px 40px -16px rgba(15,23,42,.35);
	--wst-serif:"Playfair Display",Georgia,"Times New Roman",serif;
	--wst-sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans Khmer",sans-serif;
}
.wst-wrap{max-width:1240px;margin:0 auto;padding:0 16px;box-sizing:border-box}

/* ---------- Hide old header pieces ---------- */
.wst-hide-topbar .hm-top-bar,
.wst-hide-topbar .hm-date,
.wst-hide-topbar #hm-date,
.wst-hide-topbar .hm-top-menu,
.wst-hide-topbar #top-navigation{display:none!important}
.wst-banner-on #masthead,
.wst-banner-on .site-header:not(.wst-banner),
.wst-banner-on .hm-nav-container,
.wst-banner-on .hm-top-bar{display:none!important}
.wst-hide-calendar .widget_calendar,
.wst-hide-calendar .wp-block-calendar,
.wst-hide-calendar .widget_block:has(.wp-block-calendar){display:none!important}

/* ---------- Banner ---------- */
.wst-banner{position:sticky;top:0;z-index:999;background:var(--wst-ink);color:#fff;font-family:var(--wst-sans);box-shadow:0 2px 14px rgba(0,0,0,.25);border-bottom:3px solid var(--wst-accent)}
.admin-bar .wst-banner{top:32px}
@media (max-width:782px){.admin-bar .wst-banner{top:0}}
.wst-banner-row{display:flex;align-items:center;gap:20px;min-height:68px}
.wst-brand{flex:0 0 auto;display:flex;align-items:center}
.wst-brand img,.wst-brand .custom-logo{max-height:46px;width:auto;display:block}
.wst-wordmark{font-family:var(--wst-serif);font-weight:800;font-size:24px;letter-spacing:.2px;color:#fff!important;text-decoration:none!important;white-space:nowrap}
.wst-nav{flex:1 1 auto;min-width:0}
.wst-menu{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.wst-menu::-webkit-scrollbar{display:none}
.wst-menu li{position:relative;margin:0}
.wst-menu a{display:block;padding:10px 14px;color:#e2e8f0!important;text-decoration:none!important;font-size:14px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;border-radius:8px;white-space:nowrap;transition:background .2s,color .2s}
.wst-menu a:hover,.wst-menu .current-menu-item>a{color:#fff!important;background:rgba(255,255,255,.08)}
.wst-menu .current-menu-item>a{box-shadow:inset 0 -3px 0 var(--wst-accent)}
.wst-menu .sub-menu{display:none;position:absolute;left:0;top:100%;min-width:200px;background:var(--wst-ink-2);list-style:none;margin:0;padding:6px;border-radius:10px;box-shadow:var(--wst-shadow-h)}
.wst-menu li:hover>.sub-menu,.wst-menu li:focus-within>.sub-menu{display:block}
.wst-tools{flex:0 0 auto;display:flex;align-items:center;gap:6px}
.wst-socials{display:flex;gap:6px}
.wst-soc{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff!important;transition:transform .2s,background .2s}
.wst-soc svg{width:17px;height:17px;fill:currentColor}
.wst-soc:hover{transform:translateY(-2px)}
.wst-soc-facebook:hover{background:#1877f2}
.wst-soc-x:hover{background:#000}
.wst-soc-youtube:hover{background:#ff0000}
.wst-soc-tiktok:hover{background:#111;box-shadow:2px 2px 0 #25f4ee,-2px -2px 0 #fe2c55}
.wst-soc-instagram:hover{background:linear-gradient(45deg,#f09433,#dc2743,#bc1888)}
.wst-soc-telegram:hover{background:#229ed9}
.wst-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:#fff;cursor:pointer;padding:0}
.wst-icon-btn:hover{background:rgba(255,255,255,.1)}
.wst-icon-btn svg{width:20px;height:20px;fill:currentColor}
.wst-burger{display:none;flex-direction:column;gap:4px}
.wst-burger span{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:.25s}
.wst-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.wst-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.wst-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.wst-search{background:var(--wst-ink-2);padding:14px 0;border-top:1px solid rgba(255,255,255,.08)}
.wst-search form{display:flex;gap:8px}
.wst-search input{flex:1;height:46px;border-radius:10px;border:0;padding:0 16px;font-size:16px;font-family:var(--wst-sans)}
.wst-search button{height:46px;padding:0 22px;border:0;border-radius:10px;background:var(--wst-accent);color:#fff;font-weight:700;cursor:pointer}

@media (max-width:960px){
	.wst-burger{display:inline-flex}
	.wst-nav{position:absolute;left:0;right:0;top:100%;background:var(--wst-ink);max-height:0;overflow:hidden;transition:max-height .3s ease;border-bottom:3px solid transparent}
	.wst-nav.is-open{max-height:80vh;overflow:auto;border-bottom-color:var(--wst-accent)}
	.wst-menu{flex-direction:column;padding:8px 16px 16px;overflow:visible}
	.wst-menu a{padding:13px 10px;border-bottom:1px solid rgba(255,255,255,.06);border-radius:0}
	.wst-menu .sub-menu{position:static;display:block;box-shadow:none;background:transparent;padding-left:14px}
	.wst-banner-row{justify-content:space-between}
}
@media (max-width:560px){
	.wst-socials .wst-soc:nth-child(n+3){display:none}
	.wst-soc{width:32px;height:32px}
	.wst-wordmark{font-size:20px}
	.wst-brand img,.wst-brand .custom-logo{max-height:38px}
}

/* ---------- Home ---------- */
.wst-home{font-family:var(--wst-sans);color:var(--wst-text);padding:28px 0 40px}
body.wst-front,.wst-front #page,.wst-front #content,.wst-front .site-content{background:var(--wst-paper)}
.wst-home *{box-sizing:border-box}
.wst-home a{text-decoration:none}

.wst-hero{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px;margin-bottom:28px}
.wst-hero-side{background:var(--wst-card);border-radius:var(--wst-radius);box-shadow:var(--wst-shadow);padding:18px;display:flex;flex-direction:column;gap:14px}
.wst-side-head{font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:12px;color:var(--wst-muted);display:flex;align-items:center;gap:8px}
.wst-dot{width:8px;height:8px;border-radius:50%;background:var(--wst-accent);box-shadow:0 0 0 0 rgba(200,16,46,.6);animation:wst-pulse 1.8s infinite}
@keyframes wst-pulse{70%{box-shadow:0 0 0 8px rgba(200,16,46,0)}100%{box-shadow:0 0 0 0 rgba(200,16,46,0)}}

/* Card */
.wst-card{background:var(--wst-card);border-radius:var(--wst-radius);overflow:hidden;box-shadow:var(--wst-shadow);display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease;height:100%}
.wst-card:hover{transform:translateY(-4px);box-shadow:var(--wst-shadow-h)}
.wst-media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#0b1220}
/* Full photo preview: blurred fill behind + whole image (never cropped) on top */
.wst-blur{position:absolute;inset:-20px;background-size:cover;background-position:center;filter:blur(18px) brightness(.75) saturate(1.2);transform:scale(1.1)}
.wst-media img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;display:block;transition:transform .5s ease}
.wst-card:hover .wst-media img{transform:scale(1.03)}
.wst-noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--wst-serif);font-size:56px;color:rgba(255,255,255,.85);background:linear-gradient(135deg,var(--wst-ink),var(--wst-accent))}
.wst-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.wst-badge{align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--wst-accent)!important;background:rgba(200,16,46,.08);padding:4px 9px;border-radius:999px}
.wst-title{font-family:var(--wst-serif);font-weight:700;font-size:19px;line-height:1.3;margin:0}
.wst-title a{color:var(--wst-ink)!important;background-image:linear-gradient(var(--wst-accent),var(--wst-accent));background-size:0 2px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .3s}
.wst-card:hover .wst-title a{background-size:100% 2px}
.wst-excerpt{margin:0;color:var(--wst-muted);font-size:14.5px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.wst-meta{margin-top:auto;padding-top:8px;display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12.5px;color:var(--wst-muted)}
.wst-meta>*+*::before{content:"•";margin-right:12px;color:#cbd5e1}

/* Hero card */
.wst-card--hero .wst-media{aspect-ratio:16/9}
.wst-card--hero .wst-body{padding:22px 26px 26px}
.wst-card--hero .wst-title{font-size:clamp(24px,3vw,36px);line-height:1.15}
.wst-card--hero .wst-excerpt{font-size:16px;-webkit-line-clamp:3}

/* Mini card (hero side) */
.wst-card--mini{flex-direction:row;box-shadow:none;border-radius:10px;background:transparent;gap:12px;height:auto;padding-bottom:14px;border-bottom:1px solid var(--wst-line)}
.wst-card--mini:last-child{border-bottom:0;padding-bottom:0}
.wst-card--mini:hover{transform:none;box-shadow:none}
.wst-card--mini .wst-media{flex:0 0 120px;aspect-ratio:4/3;border-radius:10px}
.wst-card--mini .wst-body{padding:0;gap:5px}
.wst-card--mini .wst-title{font-size:15.5px}
.wst-card--mini .wst-meta{padding-top:2px;font-size:12px}
.wst-card--mini .wst-author{display:none}
.wst-card--mini .wst-meta>time::before{content:none}

/* Chips */
.wst-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:30px}
.wst-chips-label{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--wst-muted);margin-right:4px}
.wst-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;background:var(--wst-card);border:1px solid var(--wst-line);color:var(--wst-ink)!important;font-weight:600;font-size:14px;transition:.2s}
.wst-chip small{font-size:11px;color:var(--wst-muted);background:var(--wst-paper);padding:1px 7px;border-radius:999px}
.wst-chip:hover{background:var(--wst-ink);color:#fff!important;border-color:var(--wst-ink)}

/* Sections + grid */
.wst-section{margin-bottom:44px}
.wst-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid var(--wst-ink);position:relative}
.wst-section-head::after{content:"";position:absolute;left:0;bottom:-2px;width:72px;height:2px;background:var(--wst-accent)}
.wst-section-head h2{font-family:var(--wst-serif);font-size:28px;margin:0;color:var(--wst-ink)}
.wst-more{font-weight:700;font-size:14px;color:var(--wst-accent)!important}
.wst-pageinfo{color:var(--wst-muted);font-size:14px}
.wst-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}

.wst-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin-top:30px}
.wst-pagination .page-numbers{min-width:42px;height:42px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--wst-card);border:1px solid var(--wst-line);color:var(--wst-ink)!important;font-weight:600}
.wst-pagination .current,.wst-pagination a.page-numbers:hover{background:var(--wst-ink);color:#fff!important;border-color:var(--wst-ink)}

.wst-follow{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:linear-gradient(120deg,var(--wst-ink),#3b0a14);color:#fff;border-radius:var(--wst-radius);padding:28px 32px;margin-top:10px;margin-bottom:10px}
.wst-follow h2{font-family:var(--wst-serif);margin:0 0 4px;color:#fff;font-size:26px}
.wst-follow p{margin:0;color:#cbd5e1}
.wst-follow-icons{display:flex;gap:10px}
.wst-follow-icons .wst-soc{width:46px;height:46px}
.wst-follow-icons .wst-soc svg{width:21px;height:21px}
.wst-empty{padding:40px;text-align:center;background:var(--wst-card);border-radius:var(--wst-radius)}

@media (max-width:1100px){.wst-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
	.wst-hero{grid-template-columns:1fr}
	.wst-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
}
@media (max-width:560px){
	.wst-home{padding-top:16px}
	.wst-grid{grid-template-columns:1fr}
	.wst-card--hero .wst-body{padding:16px 18px 20px}
	.wst-section-head h2{font-size:23px}
	.wst-follow{padding:22px}
}


/* ---------- Footer extras ---------- */
.wst-footer-extra{background:#0b1120;color:#94a3b8;font-family:var(--wst-sans);font-size:13.5px}
.wst-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 20px;padding:16px 16px}
.wst-legal a{color:#cbd5e1!important;text-decoration:none}
.wst-legal a:hover{color:#fff!important;text-decoration:underline}
.wst-wau{display:flex;align-items:center;justify-content:center;gap:10px;padding:0 16px 16px}
.wst-wau:has(#wst-wau-slot:empty){display:none}
.wst-wau-label{font-size:12px;text-transform:uppercase;letter-spacing:1px}
.wst-credit a{font-weight:600}

/* ---------- Cookie consent ---------- */
.wst-consent{position:fixed;z-index:10000;left:16px;right:16px;bottom:16px;max-width:720px;margin:0 auto;background:#fff;color:var(--wst-text);border-radius:14px;box-shadow:0 20px 50px -10px rgba(0,0,0,.35);padding:18px 20px;display:flex;align-items:center;gap:16px;font-family:var(--wst-sans);font-size:14px;line-height:1.5;border-top:4px solid var(--wst-accent)}
.wst-consent[hidden]{display:none}
.wst-consent p{margin:0;flex:1}
.wst-consent a{color:var(--wst-accent)}
.wst-consent-btns{display:flex;gap:8px;flex:0 0 auto}
.wst-btn,.wst-btn-ghost{height:40px;padding:0 18px;border-radius:10px;font-weight:700;cursor:pointer;font-family:var(--wst-sans);font-size:14px}
.wst-btn{background:var(--wst-ink);color:#fff;border:0}
.wst-btn-ghost{background:transparent;color:var(--wst-ink);border:1px solid var(--wst-line)}
@media (max-width:560px){.wst-consent{flex-direction:column;align-items:stretch}.wst-consent-btns>*{flex:1}}

/* Mobile: category rows become swipeable carousels */
@media (max-width:560px){
	.wst-catrow .wst-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:6px;margin:0 -16px;padding-left:16px;padding-right:16px;scrollbar-width:none}
	.wst-catrow .wst-grid::-webkit-scrollbar{display:none}
	.wst-catrow .wst-card{flex:0 0 78%;scroll-snap-align:start}
	.wst-catrow .wst-excerpt{display:none}
}
.wst-home .screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
#latest{scroll-margin-top:96px}

/* ---------- Clean white full-width layout ---------- */
html body.wst-white,
html body.wst-white.custom-background{background:#fff!important;background-image:none!important}
.wst-white #page,
.wst-white .hitmag-wrapper,
.wst-white .site:not(.wst-banner){max-width:none!important;width:100%!important;margin:0!important;padding-top:0!important;box-shadow:none!important;border:0!important;background:#fff!important}
.wst-white #content,
.wst-white .site-content{background:#fff!important;padding-top:28px}
/* Line the content up with the banner/menu */
.wst-white .site-content>.hm-container,
.wst-white #content>.hm-container{max-width:1240px!important;width:100%;margin:0 auto!important;padding-left:16px!important;padding-right:16px!important;box-sizing:border-box;background:#fff!important}
.wst-white .site-footer>.hm-container,
.wst-white .site-info>.hm-container,
.wst-white .hm-footer-widget-area>.hm-container{max-width:1240px!important;margin:0 auto!important;padding-left:16px!important;padding-right:16px!important}
/* Single post / page polish on white */
.wst-white .single .entry-title,
.wst-white.single .entry-title{font-family:var(--wst-serif);color:var(--wst-ink);letter-spacing:-.2px}
.wst-white .post-thumbnail img,
.wst-white .hm-single-thumbnail img,
.wst-white.single .wp-post-image{width:100%;height:auto;border-radius:12px}
.wst-white #secondary .widget{background:#fff}
/* Home on white: cards get a light border instead of relying on the grey page */
.wst-white.wst-front,.wst-white.wst-front #page,.wst-white.wst-front #content,.wst-white.wst-front .site-content{background:#fff!important}
.wst-white .wst-card:not(.wst-card--mini),.wst-white .wst-hero-side{border:1px solid #edf0f4}
.wst-white .wst-chip small{background:#f1f5f9}
.wst-white.wst-front .site-content{padding-top:0}

/* ---------- Category / search pages ---------- */
.wst-archive-head{padding-top:8px;margin-bottom:22px}
.wst-kicker{display:inline-block;font:700 12px/1 var(--wst-sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--wst-accent);margin-bottom:10px}
.wst-archive-title{font-family:var(--wst-serif);font-size:clamp(30px,4.4vw,48px);line-height:1.1;margin:0 0 10px;color:var(--wst-ink);position:relative;padding-bottom:14px}
.wst-archive-title::after{content:"";position:absolute;left:0;bottom:0;width:72px;height:4px;border-radius:2px;background:var(--wst-accent)}
.wst-archive-desc{max-width:760px;color:var(--wst-muted);font-size:16px;line-height:1.6}
.wst-archive-desc p{margin:0 0 6px}
.wst-archive-count{margin:8px 0 0;color:var(--wst-muted);font-size:14px;font-weight:600}
.wst-archive-search{display:flex;gap:8px;max-width:560px;margin-top:16px}
.wst-archive-search input{flex:1;height:46px;border:1px solid var(--wst-line);border-radius:10px;padding:0 14px;font-size:15px}
.wst-archive-search button{height:46px;padding:0 20px;border:0;border-radius:10px;background:var(--wst-ink);color:#fff;font-weight:700;cursor:pointer}
.wst-chip.is-active{background:var(--wst-ink);color:#fff!important;border-color:var(--wst-ink)}
.wst-chip.is-active small{background:rgba(255,255,255,.15);color:#fff}
.wst-empty-state{text-align:center;padding:48px 20px;border:2px dashed var(--wst-line);border-radius:var(--wst-radius);background:#fafafa}
.wst-empty-icon{width:64px;height:64px;margin:0 auto 14px;border-radius:50%;background:rgba(200,16,46,.08);color:var(--wst-accent);display:flex;align-items:center;justify-content:center}
.wst-empty-icon svg{width:30px;height:30px}
.wst-empty-state h2{font-family:var(--wst-serif);font-size:28px;margin:0 0 8px;color:var(--wst-ink)}
.wst-empty-state p{color:var(--wst-muted);margin:0 0 18px}
.wst-empty-btn{display:inline-block;padding:12px 22px;border-radius:10px;background:var(--wst-ink);color:#fff!important;font-weight:700}
.wst-white.wst-front .site-content{padding-top:0}
.wst-white.wst-front #content>.hm-container,.wst-white.wst-front .site-content>.hm-container{padding-left:0!important;padding-right:0!important}

/* ---------- Footer: copyright bar matches the legal links bar ---------- */
.wst-on .site-info{background:#0b1120!important;color:#94a3b8!important;font-family:var(--wst-sans);font-size:13.5px;border-top:1px solid rgba(255,255,255,.07);padding:16px 0!important}
.wst-on .site-info *{background-color:transparent!important;color:inherit}
.wst-on .site-info a{color:#e2e8f0!important;text-decoration:none!important}
.wst-on .site-info a:hover{color:#fff!important;text-decoration:underline!important}
.wst-on .site-info .wst-credit a,.wst-on .site-info a[href*="t.me"]{font-weight:600}
.wst-footer-moved .wst-footer-extra{border-top:1px solid rgba(255,255,255,.07)}
.wst-on .site-footer{padding-bottom:0!important}
