/* =========================================================
   Thinakaran — Lankasri-style news portal skin
   Loaded after style.css; all classes prefixed .lk-
   ========================================================= */

:root{
  --lk-bg:      #ececec;
  --lk-red:     #e10600;
  --lk-red-dk:  #b30500;
  --lk-black:   #1a1a1a;
  --lk-panel:   #1c1c1c;
  --lk-card:    #ffffff;
  --lk-line:    #dddddd;
  --lk-ink:     #1c1c1c;
  --lk-muted:   #777777;
  --lk-gold:    #f0a63c;
  --lk-amber:   #f5a623;
  --lk-amber-2: #e2921a;
}

/* =========================================================
   ANIMATED SITE BACKGROUND — red/white abstract
   ========================================================= */
body, body.custom-background{ background:#f7e9e8; }

/* base diagonal gradient (static, the moving parts live in .lk-bgfx) */
body::before{
  content:''; position:fixed; top:0; right:0; bottom:0; left:0; z-index:-3; pointer-events:none;
  background:linear-gradient(135deg, #ffffff 0%, #ffece9 30%, #ffc4bc 58%, #f4695d 85%, #e02417 100%);
}

/* ---- animated scene: floating aurora orbs + flowing waves ---- */
.lk-bgfx{ position:fixed; top:0; right:0; bottom:0; left:0; z-index:-2; overflow:hidden; pointer-events:none; opacity:.72; }

.lk-orb{
  position:absolute; border-radius:50%;
  filter:blur(65px); will-change:transform;
}
.lk-orb-1{
  width:480px; height:480px; top:-140px; left:-120px;
  background:radial-gradient(circle at 35% 35%, rgba(255,120,105,.85), rgba(255,120,105,0) 70%);
  animation:lkOrbFloat1 16s ease-in-out infinite alternate;
}
.lk-orb-2{
  width:560px; height:560px; top:-80px; right:-160px;
  background:radial-gradient(circle at 60% 40%, rgba(224,36,23,.75), rgba(224,36,23,0) 70%);
  animation:lkOrbFloat2 20s ease-in-out infinite alternate;
}
.lk-orb-3{
  width:420px; height:420px; bottom:-60px; left:32%;
  background:radial-gradient(circle at 50% 50%, rgba(255,152,0,.5), rgba(255,152,0,0) 70%);
  animation:lkOrbFloat3 14s ease-in-out infinite alternate;
}
@keyframes lkOrbFloat1{
  0%{ transform:translate(0,0) scale(1); }
  100%{ transform:translate(90px,70px) scale(1.18); }
}
@keyframes lkOrbFloat2{
  0%{ transform:translate(0,0) scale(1.1) rotate(0deg); }
  100%{ transform:translate(-110px,90px) scale(.92) rotate(18deg); }
}
@keyframes lkOrbFloat3{
  0%{ transform:translate(0,0) scale(1); }
  100%{ transform:translate(-70px,-60px) scale(1.22); }
}

/* waves: three full-screen layers sliding at different speeds for parallax depth */
.lk-wave{
  position:absolute; bottom:0; left:0;
  width:200%; height:100%;
  background-repeat:repeat-x; background-size:50% 100%;
  will-change:transform;
}
.lk-wave-1{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200' preserveAspectRatio='none'%3E%3Cpath d='M0,100 C150,170 350,30 600,100 C850,170 1050,30 1200,100 L1200,200 L0,200 Z' fill='%23e02417' fill-opacity='0.22'/%3E%3C/svg%3E");
  animation:lkWaveSlide 13s linear infinite;
}
.lk-wave-2{
  height:68%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200' preserveAspectRatio='none'%3E%3Cpath d='M0,110 C200,40 400,180 600,110 C800,40 1000,180 1200,110 L1200,200 L0,200 Z' fill='%23ff6d5e' fill-opacity='0.3'/%3E%3C/svg%3E");
  animation:lkWaveSlide 19s linear infinite reverse;
}
.lk-wave-3{
  height:38%;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 200' preserveAspectRatio='none'%3E%3Cpath d='M0,120 C150,60 350,180 600,120 C850,60 1050,180 1200,120 L1200,200 L0,200 Z' fill='%23b3160c' fill-opacity='0.28'/%3E%3C/svg%3E");
  animation:lkWaveSlide 9s linear infinite;
}
@keyframes lkWaveSlide{
  0%{ transform:translateX(0); }
  100%{ transform:translateX(-50%); }
}

@media (max-width:768px){
  .lk-orb{ filter:blur(45px); }
}
@media (prefers-reduced-motion: reduce){
  .lk-orb, .lk-wave{ animation:none; }
}

.lk-wide{ max-width:1320px; margin:0 auto; padding:0 16px; }

/* =========================================================
   TOP STRIP — social / logo / user
   ========================================================= */
.lk-topstrip{ background:#fff; border-bottom:1px solid #eee; }
.lk-topstrip-inner{
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  min-height:88px; gap:14px;
}
/* animated "today" calendar card */
.lk-cal{
  justify-self:start;
  width:96px; border-radius:12px; overflow:hidden;
  background:#fff; box-shadow:0 6px 18px rgba(180,20,10,.22);
  text-align:center; position:relative;
  transform-style:preserve-3d; perspective:600px;
  animation:lkCalIn .8s var(--ease) both, lkCalFloat 4s ease-in-out 1s infinite;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.lk-cal:hover{ transform:translateY(-4px) rotate(-2deg) scale(1.05); box-shadow:0 14px 28px rgba(180,20,10,.35); }
.lk-cal-top{
  position:relative;
  background:linear-gradient(90deg, var(--lk-red), #ff4d2e);
  background-size:200% 100%;
  animation:lkGradientMove 5s linear infinite;
  color:#fff; font-family:var(--f-tamil); font-weight:800; font-size:.62rem;
  letter-spacing:.04em; padding:7px 4px 5px;
}
.lk-cal-ring{
  position:absolute; top:-4px; width:5px; height:9px;
  background:#fff; border-radius:3px; box-shadow:0 1px 2px rgba(0,0,0,.35) inset;
}
.lk-cal-ring:first-child{ left:20%; }
.lk-cal-ring:nth-child(2){ right:20%; }
.lk-cal-body{ padding:5px 4px 8px; display:flex; flex-direction:column; gap:1px; }
.lk-cal-day{
  font-family:var(--f-body); font-weight:900; font-size:1.6rem; line-height:1.1;
  color:var(--lk-red);
  animation:lkCalPop .6s var(--ease) .5s both;
}
.lk-cal-week{ font-family:var(--f-tamil); font-weight:700; font-size:.66rem; color:#777; }
@keyframes lkCalIn{
  0%{ opacity:0; transform:rotateX(80deg) translateY(-14px); }
  100%{ opacity:1; transform:rotateX(0) translateY(0); }
}
@keyframes lkCalFloat{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-4px); }
}
@keyframes lkCalPop{
  0%{ opacity:0; transform:scale(.3); }
  70%{ transform:scale(1.15); }
  100%{ opacity:1; transform:scale(1); }
}
@media (prefers-reduced-motion: reduce){
  .lk-cal, .lk-cal-top, .lk-cal-day{ animation:none; }
}
/* live visitor clock beside the calendar */
.lk-daytime{ justify-self:start; display:flex; align-items:center; gap:12px; }
.lk-daytime .lk-cal{ justify-self:auto; }
.lk-clock{
  position:relative; overflow:hidden;
  background:linear-gradient(135deg,#1a2040,#232a4d);
  border-radius:12px; padding:10px 16px 9px;
  box-shadow:0 6px 18px rgba(20,25,60,.35);
  animation:lkCalIn .8s var(--ease) .15s both, lkCalFloat 4s ease-in-out 1.4s infinite;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.lk-clock:hover{ transform:translateY(-4px) rotate(2deg) scale(1.05); box-shadow:0 14px 28px rgba(20,25,60,.5); }
.lk-clock::before{
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg,#e91e63,#ff9800,#3b82f6,#e91e63);
  background-size:300% 100%;
  animation:lkGradientMove 6s linear infinite;
}
.lk-clock-time{
  display:flex; align-items:baseline;
  font-family:var(--f-mono); font-weight:800; font-size:1.02rem; color:#fff;
  letter-spacing:.04em;
}
.lk-clock-time b{
  color:#ff6d3f; font-weight:800; margin:0 1px;
  animation:lkColonBlink 1s steps(1) infinite;
}
.lk-clock-time em{
  font-style:normal; font-size:.58rem; font-weight:800; color:#8fa1e8;
  margin-left:5px; letter-spacing:.14em;
}
.lkc-sec{ color:#ffb14d; display:inline-block; }
.lkc-sec.tick{ animation:lkSecPop .4s var(--ease); }
.lk-clock-zone{
  font-family:var(--f-body); font-size:.6rem; font-weight:700; color:#8b93bd;
  letter-spacing:.1em; text-transform:uppercase; text-align:center; margin-top:2px;
}
@keyframes lkColonBlink{ 0%,100%{ opacity:1; } 50%{ opacity:.25; } }
@keyframes lkSecPop{
  0%{ transform:scale(1.35); color:#fff; }
  100%{ transform:scale(1); }
}
@media (max-width:640px){
  .lk-daytime{ gap:8px; }
  .lk-clock{ padding:8px 10px 7px; border-radius:10px; }
  .lk-clock-time{ font-size:.85rem; }
}
@media (max-width:460px){
  .lk-daytime{ gap:6px; }
  .lk-clock{ padding:7px 8px 6px; border-radius:9px; }
  .lk-clock-time{ font-size:.72rem; letter-spacing:.02em; }
  .lk-clock-time em{ display:none; }
  .lk-clock-zone{ font-size:.52rem; letter-spacing:.05em; }
}
@media (prefers-reduced-motion: reduce){
  .lk-clock, .lk-clock::before, .lk-clock-time b, .lkc-sec.tick{ animation:none; }
}

.lk-topstrip-logo{ justify-self:center; display:block; }
.lk-topstrip-logo img{ max-height:84px; width:auto; transition:transform .3s var(--ease); }
.lk-topstrip-logo:hover img{ transform:scale(1.04); }
.lk-topstrip-user{ justify-self:end; }
.lk-topstrip-user a{
  display:inline-flex; align-items:center; gap:8px;
  color:#444; font-weight:600; font-size:.86rem;
}
.lk-topstrip-user a:hover{ color:var(--lk-red); }
.lk-user-avatar{
  width:34px; height:34px; border-radius:50%; background:#efefef; color:#8a8a8a;
  display:inline-flex; align-items:center; justify-content:center;
}
@media (max-width:640px){
  .lk-topstrip-inner{ min-height:64px; }
  .lk-topstrip-logo img{ max-height:48px; }
  .lk-user-name{ display:none; }
}

/* nav bar shows menu only — branding lives in the top strip */
.lk-header .lk-logo{ display:none; }

/* =========================================================
   HEADER
   ========================================================= */
.lk-header{
  background:var(--lk-black);
  position:sticky; top:0; z-index:900;
  box-shadow:0 2px 8px rgba(0,0,0,.35);
}
/* keep the sticky header below the WP admin bar for logged-in users */
body.admin-bar .lk-header{ top:32px; }
@media (max-width:782px){ body.admin-bar .lk-header{ top:46px; } }
@media (max-width:600px){ body.admin-bar .lk-header{ top:0; } }
.lk-header-inner{
  display:flex; align-items:center; gap:18px;
  height:58px;
}
.lk-burger{
  background:none; border:0; color:#fff; padding:6px;
  display:inline-flex; flex-direction:column; gap:4px;
}
.lk-burger span{ width:20px; height:2px; background:#fff; display:block; border-radius:2px; }

.lk-logo{ display:flex; align-items:center; gap:8px; flex-shrink:0; }
.lk-logo img{ max-height:40px; width:auto; }
.lk-logo .lk-logo-text{
  color:#fff; font-family:var(--f-tamil);
  font-weight:900; font-size:1.35rem; letter-spacing:.01em;
  display:flex; align-items:center; gap:7px;
}
.lk-logo .lk-logo-badge{
  background:var(--lk-red); color:#fff;
  font-family:var(--f-body); font-weight:800; font-size:.72rem;
  letter-spacing:.28em; padding:4px 8px 4px 10px; border-radius:4px;
  text-transform:uppercase;
}

.lk-nav{ flex:1; min-width:0; }
.lk-nav ul{ display:flex; align-items:center; gap:2px; flex-wrap:nowrap; }
.lk-nav li{ position:relative; }
.lk-nav a{
  display:block; color:#e8e8e8; font-family:var(--f-tamil);
  font-size:.86rem; font-weight:600; padding:10px 11px;
  white-space:nowrap; border-radius:3px;
  transition:background .2s, color .2s;
}
.lk-nav a:hover{ background:var(--lk-red); color:#fff; }
.lk-nav li.menu-item-has-children > a::after{
  content:'▾'; margin-left:6px; font-size:.7em; opacity:.8;
}
.lk-nav li ul{
  position:absolute; top:100%; left:0; min-width:220px; z-index:950;
  background:var(--lk-black); border-top:2px solid var(--lk-red);
  display:none; flex-direction:column; gap:0; padding:6px 0;
  box-shadow:0 12px 26px rgba(0,0,0,.45);
  border-radius:0 0 6px 6px;
  animation:lkDropIn .22s var(--ease);
}
.lk-nav li:hover > ul, .lk-nav li:focus-within > ul{ display:flex; }
.lk-nav li ul a{ padding:10px 16px; border-radius:0; }
.lk-nav li ul a:hover{ background:var(--lk-red); padding-left:22px; }
@keyframes lkDropIn{
  from{ opacity:0; transform:translateY(-8px); }
  to{ opacity:1; transform:none; }
}

.lk-header-actions{ display:flex; align-items:center; gap:6px; margin-left:auto; }

/* visitor-location weather chip */
.lk-weather[hidden]{ display:none; }
.lk-weather{
  display:flex; align-items:center; gap:7px;
  background:rgba(255,255,255,.1); border-radius:20px;
  padding:5px 13px; margin-right:6px;
  color:#fff; font-family:var(--f-body); font-weight:800; font-size:.78rem;
  animation:lkArticleIn .5s var(--ease) both;
}
.lk-weather .w-ico{
  font-size:1rem; line-height:1;
  animation:lkCalFloat 3s ease-in-out infinite;
}
.lk-weather .w-temp{ color:#ffb14d; }
.lk-weather .w-city{
  display:none; /* header row is tight; the top-strip clock already names the city */
  color:#c9c9c9; font-weight:600; font-size:.68rem;
  text-transform:uppercase; letter-spacing:.06em;
}
@media (max-width:480px){
  .lk-weather .w-city{ display:none; }
  .lk-weather{ padding:5px 10px; font-size:.72rem; }
}
@media (prefers-reduced-motion: reduce){ .lk-weather, .lk-weather .w-ico{ animation:none; } }

/* USD currency rates dropdown */
.lk-fx[hidden]{ display:none; }
.lk-fx{ position:relative; margin-right:6px; animation:lkArticleIn .5s var(--ease) both; }
.lk-fx-btn{
  display:flex; align-items:center; gap:6px;
  background:rgba(255,255,255,.1); border:0; border-radius:20px;
  padding:5px 13px; color:#fff;
  font-family:var(--f-body); font-weight:800; font-size:.78rem;
  transition:background .25s var(--ease);
}
.lk-fx-btn:hover{ background:rgba(255,255,255,.2); }
.lk-fx-btn .fx-sym{
  width:18px; height:18px; border-radius:50%;
  background:linear-gradient(135deg,#2e9e4f,#1e7a3a); color:#fff;
  display:inline-flex; align-items:center; justify-content:center;
  font-size:.7rem; font-weight:900;
  animation:lkCalFloat 3s ease-in-out infinite;
}
.lk-fx-btn .fx-main{ color:#ffb14d; font-size:.72rem; }
.lk-fx-btn .fx-caret{ font-size:.7rem; opacity:.8; transition:transform .25s var(--ease); }
.lk-fx.is-open .fx-caret{ transform:rotate(180deg); }
.lk-fx-list[hidden]{ display:none; }
.lk-fx-list{
  position:absolute; top:calc(100% + 12px); right:0; z-index:960;
  width:240px; max-height:320px; overflow-y:auto;
  background:#141414; border-radius:12px; padding:8px;
  box-shadow:0 16px 36px rgba(0,0,0,.5);
  border-top:3px solid #2e9e4f;
  animation:lkDropIn .25s var(--ease);
  scrollbar-width:thin; scrollbar-color:#444 transparent;
}
.lk-fx-row{
  display:flex; align-items:center; gap:9px;
  padding:8px 10px; border-radius:8px;
  color:#e8e8e8; font-family:var(--f-body); font-size:.78rem; font-weight:700;
  opacity:0; transform:translateY(8px);
  animation:lkFxRowIn .35s var(--ease) forwards;
  animation-delay:var(--d, 0s);
  transition:background .2s;
}
.lk-fx-row:hover{ background:rgba(255,255,255,.08); }
.lk-fx-row .flag{ font-size:1rem; line-height:1; }
.lk-fx-row .code{ color:#9a9a9a; font-size:.7rem; letter-spacing:.06em; }
.lk-fx-row .rate{ margin-left:auto; color:#7ee2a0; font-family:var(--f-mono); font-weight:700; }
.lk-fx-head{
  padding:6px 10px 8px; color:#8b8b8b; font-size:.62rem; font-weight:800;
  letter-spacing:.12em; text-transform:uppercase; border-bottom:1px solid #2a2a2a; margin-bottom:4px;
}
.lk-fx-head.fx-gold{ color:#d4a943; }
.lk-fx-note{
  padding:8px 10px 4px; color:#8b8b8b; font-size:.62rem; letter-spacing:.04em;
  border-top:1px solid #2a2a2a; margin-top:4px;
}
.lk-gold .fx-sym{ background:none; width:auto; height:auto; font-size:.95rem; }
.lk-gold .lk-fx-list{ border-top-color:#d4a943; }
/* compact chip — the price lives inside the dropdown; keeps the
   header row narrow enough that the nav never gets overlapped */
.lk-gold .fx-main{ display:none; }
@keyframes lkFxRowIn{ to{ opacity:1; transform:none; } }
@media (max-width:480px){
  .lk-fx-btn .fx-main{ display:none; }
  .lk-fx-btn{ padding:5px 10px; font-size:.72rem; }
  .lk-fx-list{ right:0; width:min(240px, calc(100vw - 20px)); max-height:60vh; }
}
@media (prefers-reduced-motion: reduce){
  .lk-fx, .lk-fx-btn .fx-sym, .lk-fx-list, .lk-fx-row{ animation:none; opacity:1; transform:none; }
}
.lk-header-actions .lk-hbtn{
  background:none; border:0; color:#fff; padding:8px;
  display:inline-flex; border-radius:4px; transition:background .2s;
}
.lk-header-actions .lk-hbtn:hover{ background:rgba(255,255,255,.12); }

/* scroll progress bar — fills as the page scrolls */
.lk-scrollbar{ height:4px; background:rgba(255,255,255,.12); overflow:hidden; }
.lk-scrollbar span{
  display:block; height:100%; width:100%;
  background:linear-gradient(90deg, var(--lk-red), #ff4d2e);
  box-shadow:0 0 8px rgba(225,6,0,.7);
  transform:scaleX(0); transform-origin:left;
  transition:transform .08s linear;
}

.lk-search-panel{ background:#111; border-top:1px solid #333; padding:14px 0; }
.lk-search-panel form{ display:flex; gap:8px; }
.lk-search-panel input[type=search]{
  flex:1; background:#fff; border:0; border-radius:3px;
  padding:10px 14px; font-family:var(--f-tamil); font-size:.95rem;
}
.lk-search-panel button{
  background:var(--lk-red); color:#fff; border:0; border-radius:3px;
  padding:10px 22px; font-weight:700;
}

/* mobile nav drawer */
@media (max-width: 1024px){
  .lk-nav{
    position:fixed; top:0; right:0; bottom:0; left:auto; width:min(320px, 85vw);
    background:var(--lk-black); padding:74px 14px 20px; overflow-y:auto;
    transform:translateX(100%); transition:transform .28s var(--ease);
    z-index:899;
    box-shadow:-8px 0 30px rgba(0,0,0,.35);
  }
  .lk-nav.is-open{ transform:translateX(0); }
  .lk-nav ul{ flex-direction:column; align-items:stretch; }
  /* sub-categories collapsed by default; tap the arrow to open */
  .lk-nav li ul{ position:static; display:none; border:0; box-shadow:none; padding-left:14px; animation:none; }
  /* neutralise the desktop hover/focus dropdown inside the drawer */
  .lk-nav li:hover > ul, .lk-nav li:focus-within > ul{ display:none; }
  .lk-nav li.is-open > ul,
  .lk-nav li.is-open:hover > ul,
  .lk-nav li.is-open:focus-within > ul{ display:flex; animation:lkDropIn .25s var(--ease); }
  .lk-nav a{ font-size:.95rem; padding:12px 44px 12px 14px; }
  .lk-nav li.menu-item-has-children > a::after{ content:''; margin:0; }
  .lk-subtoggle{
    position:absolute; right:2px; top:7px;
    width:34px; height:34px; border:0; border-radius:8px;
    background:rgba(255,255,255,.1); color:#fff; font-size:.95rem;
    display:flex; align-items:center; justify-content:center;
    transition:transform .28s var(--ease), background .25s;
  }
  .lk-subtoggle:hover{ background:var(--lk-red); }
  .lk-nav li.is-open > .lk-subtoggle{ transform:rotate(180deg); background:var(--lk-red); }
}
@media (min-width: 1025px){
  .lk-burger{ display:none; }
  .lk-subtoggle{ display:none; }
}

/* =========================================================
   PAGE LAYOUT
   ========================================================= */
.lk-page{ padding:18px 0 30px; }
.lk-layout{
  display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:18px;
  align-items:start;
}
.lk-layout-3col{ grid-template-columns:200px minmax(0,1fr) 340px; }
@media (max-width: 1240px){ .lk-layout-3col{ grid-template-columns:180px minmax(0,1fr) 320px; } }
.lk-layout > *, .lk-layout-3col > *{ min-width:0; }
@media (max-width: 1024px){
  .lk-layout, .lk-layout-3col{ grid-template-columns:minmax(0,1fr); }
  .lk-layout-3col .lk-leftbar{ order:2; }
  .lk-layout-3col .lk-main{ order:1; }
  .lk-layout-3col .lk-side{ order:3; }
}

/* =========================================================
   LEFT NAV SIDEBAR
   ========================================================= */
.lk-leftbar{
  background:#fff; border:1px solid var(--lk-line); border-radius:8px;
  padding:14px 14px 18px;
}

.lk-lnav-head{
  font-family:var(--f-tamil); font-size:.98rem; font-weight:900; color:#1a3c8f;
  margin:18px 0 8px;
}
.lk-lnav-head::after{
  content:''; display:block; height:3px; border-radius:3px;
  margin-top:9px;
  background:linear-gradient(90deg,#1a3c8f,#3b82f6,#e91e63);
  background-size:200% 100%;
  animation:lkGradientMove 5s linear infinite;
}
.lk-lnav-item{ position:relative; }
.lk-lnav-item::after{
  content:''; display:block; height:1px;
  background:linear-gradient(90deg, #ececec, #dcdcdc 40%, #ececec 80%, transparent);
}
.lk-lnav-item:last-child::after{ display:none; }
.lk-lnav-item a{
  display:flex; align-items:center; gap:10px;
  font-family:var(--f-tamil); font-size:.84rem; font-weight:700; color:#3a3a3a;
  padding:8px 6px; margin:3px 0; border-radius:9px;
  transition:color .25s var(--ease), background .3s var(--ease), transform .28s var(--ease), box-shadow .3s var(--ease);
}
.lk-lnav-ico{
  flex-shrink:0; width:28px; height:28px; border-radius:9px;
  display:inline-flex; align-items:center; justify-content:center;
  background:#f2f2f2;
  background:color-mix(in srgb, var(--tint, #888) 13%, #fff);
  color:var(--tint, #666);
  box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--tint, #888) 22%, #fff);
  transition:transform .3s var(--ease), background .3s var(--ease), color .3s var(--ease), box-shadow .3s var(--ease);
}
.lk-lnav-label{ flex:1; line-height:1.4; }
.lk-lnav-arrow{
  color:var(--tint, var(--lk-red)); font-weight:900; font-size:1rem;
  opacity:0; transform:translateX(-6px);
  transition:opacity .25s var(--ease), transform .28s var(--ease);
}
.lk-lnav-item a:hover{
  color:var(--tint, var(--lk-red));
  background:color-mix(in srgb, var(--tint, #888) 8%, #fff);
  transform:translateX(4px);
  box-shadow:0 4px 12px color-mix(in srgb, var(--tint, #888) 18%, transparent);
}
.lk-lnav-item a:hover .lk-lnav-ico{
  background:var(--tint, var(--lk-red)); color:#fff;
  transform:scale(1.12) rotate(-8deg);
  box-shadow:0 4px 10px color-mix(in srgb, var(--tint, #888) 45%, transparent);
}
.lk-lnav-item a:hover .lk-lnav-arrow{ opacity:1; transform:translateX(0); }
.lk-lnav-top a{ font-size:.92rem; font-weight:800; color:#1a3c8f; }

.lk-card{
  background:var(--lk-card); border:1px solid var(--lk-line);
  border-radius:4px; overflow:hidden;
}

/* =========================================================
   HERO — top story
   ========================================================= */
.lk-hero{ display:block; margin-bottom:16px; position:relative; min-height:240px; }
.lk-hero-slide{
  display:grid; grid-template-columns:340px 1fr; gap:0;
  position:absolute; top:0; right:0; bottom:0; left:0; z-index:1;
  opacity:0; transform:translateX(26px);
  transition:opacity .55s var(--ease), transform .55s var(--ease);
  pointer-events:none;
}
.lk-hero-slide.is-active{
  position:relative; opacity:1; transform:none; pointer-events:auto; z-index:2;
}
.lk-hero .lk-hero-media{ display:block; position:relative; min-height:220px; }
.lk-hero .lk-hero-media img{ width:100%; height:100%; object-fit:cover; position:absolute; top:0; right:0; bottom:0; left:0; }
.lk-hero .lk-hero-body{ padding:20px 22px; display:flex; flex-direction:column; justify-content:center; gap:10px; }
.lk-hero h1, .lk-hero-body h2{ font-size:clamp(.9rem, 1.4vw, 1.15rem); font-weight:800; line-height:1.4; }
.lk-hero-body h2{
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.lk-hero h1 a:hover, .lk-hero-body h2 a:hover{ color:var(--lk-red); }
.lk-hero time{ color:var(--lk-muted); font-family:var(--f-mono); font-size:.74rem; text-transform:uppercase; }
.lk-hot-badge{
  position:absolute; top:0; right:0; z-index:6;
  background:linear-gradient(90deg,#ff1744,#ff6d3f); color:#fff;
  font-family:var(--f-body); font-weight:900; font-size:.66rem; letter-spacing:.18em;
  padding:6px 14px; border-radius:0 0 0 8px; text-transform:uppercase;
  animation:lkBlink 1.1s ease-in-out infinite;
  box-shadow:0 0 14px rgba(255,23,68,.6);
}
.lk-flag{
  position:absolute; top:0; left:0; z-index:5;
  background:var(--lk-red); color:#fff;
  font-family:var(--f-tamil); font-weight:700; font-size:.8rem;
  padding:6px 14px; border-radius:0 0 4px 0;
}
@media (max-width: 640px){ .lk-hero-slide{ grid-template-columns:1fr; } .lk-hero{ min-height:340px; } .lk-hero .lk-hero-media{ min-height:200px; position:relative; } .lk-hero .lk-hero-media img{ position:relative; height:200px; } }

/* =========================================================
   STORIES SLIDER
   ========================================================= */
.lk-stories{
  background:
    linear-gradient(180deg, rgba(233,30,99,.08), rgba(59,130,246,.06) 38%, rgba(238,243,251,0) 70%),
    linear-gradient(180deg,#fdfbff,#eef3fb);
  border:1px solid var(--lk-line); border-radius:8px;
  padding:16px 16px 20px; margin-bottom:16px;
  position:relative; overflow:hidden;
}
.lk-stories::before{
  content:''; position:absolute; top:0; left:0; right:0; height:4px;
  background:linear-gradient(90deg,#e91e63,#ff9800,#3b82f6,#e91e63);
  background-size:300% 100%;
  animation:lkGradientMove 6s linear infinite;
}
.lk-stories-head{
  display:flex; flex-wrap:wrap; align-items:center; gap:10px 12px;
  font-family:var(--f-tamil); font-size:1.15rem; font-weight:900;
  color:#e91e63; margin-bottom:16px;
}
.lk-stories-head::after{
  content:''; flex-basis:100%; height:3px; border-radius:3px;
  background:linear-gradient(90deg,#e91e63,#ff9800,#3b82f6);
  background-size:200% 100%;
  animation:lkGradientMove 4s linear infinite;
}
.lk-new-badge{
  background:linear-gradient(90deg,#ff1744,#ff6d3f); color:#fff;
  font-family:var(--f-body); font-size:.6rem; font-weight:900; letter-spacing:.22em;
  padding:4px 10px; border-radius:20px; text-transform:uppercase;
  animation:lkBlink 1.1s ease-in-out infinite;
  box-shadow:0 0 12px rgba(255,23,68,.55);
}
@keyframes lkBlink{
  0%,100%{ opacity:1; transform:scale(1); }
  50%{ opacity:.45; transform:scale(.96); }
}
@keyframes lkGradientMove{
  0%{ background-position:0% 0; }
  100%{ background-position:300% 0; }
}
.lk-stories{ max-width:100%; }
.lk-stories-wrap{ position:relative; min-width:0; }
.lk-stories-track{
  display:flex; gap:14px; overflow-x:auto; scroll-snap-type:x mandatory;
  scroll-behavior:smooth; padding-bottom:6px;
  scrollbar-width:none;
}
.lk-stories-track::-webkit-scrollbar{ display:none; }
.lk-story{
  flex:0 0 240px; scroll-snap-align:start;
  background:#fff; border-radius:12px; overflow:hidden;
  box-shadow:0 4px 14px rgba(30,50,90,.12);
  display:flex; flex-direction:column;
  transition:transform .35s var(--ease), box-shadow .35s var(--ease);
}
.lk-story:hover{
  transform:translateY(-6px);
  box-shadow:0 14px 30px rgba(30,50,90,.22);
}
.lk-story-media{ position:relative; display:block; overflow:hidden; }
.lk-story-media img{ width:100%; height:160px; object-fit:cover; transition:transform .5s var(--ease); }
.lk-story:hover .lk-story-media img{ transform:scale(1.08); }
.lk-story-badge{
  position:absolute; top:10px; left:10px;
  background:linear-gradient(90deg,#e91e63,#ff6d3f); color:#fff;
  font-family:var(--f-tamil); font-size:.62rem; font-weight:800; letter-spacing:.06em;
  padding:4px 10px; border-radius:20px; text-transform:uppercase;
}
.lk-story-play{
  position:absolute; right:10px; bottom:10px;
  width:36px; height:36px; border-radius:50%;
  background:#5b2a5e; color:#fff; border:2px solid #fff;
  display:flex; align-items:center; justify-content:center;
  font-size:.7rem; box-shadow:0 3px 8px rgba(0,0,0,.3);
}
.lk-story-body{ padding:20px 14px 16px; display:flex; flex-direction:column; gap:8px; }
.lk-story-body h4{ font-size:.74rem; font-weight:800; line-height:1.5; color:#182a4e; }
.lk-story-body h4 a:hover{ color:#e91e63; }
.lk-story-body p{
  font-size:.76rem; color:#556; line-height:1.6; margin:0;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.lk-story-nav{
  position:absolute; top:50%; transform:translateY(-50%); z-index:5;
  width:26px; height:26px; border-radius:50%; border:0;
  background:#111; color:#fff; display:flex; align-items:center; justify-content:center;
  box-shadow:0 3px 8px rgba(0,0,0,.3); transition:background .2s;
}
.lk-story-nav svg{ width:13px; height:13px; }
.lk-story-nav:hover{ background:var(--lk-red); }
.lk-story-nav.prev{ left:-8px; }
.lk-story-nav.next{ right:-8px; }

.lk-stories-head a{ color:inherit; transition:color .25s var(--ease), text-shadow .25s var(--ease); }
.lk-stories-head a:hover{ color:var(--lk-red); text-shadow:0 0 14px rgba(233,30,99,.35); }

/* =========================================================
   AD / PROMO STRIP
   ========================================================= */
.lk-adstrip{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:16px; }
.lk-ad{
  position:relative; display:block; background:var(--lk-panel);
  border-radius:4px; overflow:hidden; min-height:150px; color:#fff;
}
.lk-ad img{ width:100%; height:150px; object-fit:cover; opacity:.55; }
.lk-ad .lk-ad-body{
  position:absolute; top:auto; right:0; bottom:0; left:0; padding:10px 12px;
  background:linear-gradient(transparent, rgba(0,0,0,.85));
}
.lk-ad .lk-ad-tag{
  position:absolute; top:8px; left:8px;
  background:var(--lk-red); color:#fff; font-size:.62rem; font-weight:800;
  letter-spacing:.08em; padding:3px 8px; border-radius:2px; text-transform:uppercase;
}
.lk-ad h4{ color:#fff; font-size:.7rem; font-weight:700; line-height:1.45; }
.lk-adstrip .widget{ margin:0; }
@media (max-width: 640px){ .lk-adstrip{ grid-template-columns:1fr; } }

/* =========================================================
   DUAL RECENT LISTS
   ========================================================= */
.lk-dual{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
@media (max-width: 760px){ .lk-dual{ grid-template-columns:1fr; } }
.lk-listbox{ background:var(--lk-card); border:1px solid var(--lk-line); border-radius:4px; padding:14px 14px 16px; }
.lk-listbox-head{
  font-family:var(--f-tamil); font-size:1rem; font-weight:800; color:var(--lk-ink);
  padding-bottom:9px; margin-bottom:6px; border-bottom:2px solid var(--lk-red);
  display:flex; align-items:center; gap:8px;
}
.lk-listbox-head::before{ content:''; width:8px; height:8px; border-radius:50%; background:var(--lk-red); }

.lk-item{
  display:grid; grid-template-columns:96px 1fr; gap:12px; align-items:center;
  padding:11px 0; border-bottom:1px solid #ececec;
}
.lk-item:last-child{ border-bottom:0; }
.lk-item .lk-thumb{ display:block; border-radius:3px; overflow:hidden; }
.lk-item .lk-thumb img{ width:96px; height:66px; object-fit:cover; transition:transform .3s var(--ease); }
.lk-item:hover .lk-thumb img{ transform:scale(1.06); }
.lk-item h4{ font-size:.74rem; font-weight:700; line-height:1.5; }
.lk-item h4 a:hover{ color:var(--lk-red); }
.lk-item time{ display:block; margin-top:4px; color:var(--lk-muted); font-family:var(--f-mono); font-size:.68rem; text-transform:uppercase; }

.lk-more{
  display:block; width:max-content; margin:14px auto 0;
  background:var(--lk-red); color:#fff !important;
  font-family:var(--f-tamil); font-size:.82rem; font-weight:700;
  padding:9px 22px; border-radius:3px; transition:background .2s;
}
.lk-more:hover{ background:var(--lk-red-dk); }

/* =========================================================
   CATEGORY SECTIONS
   ========================================================= */
.lk-cat{ background:var(--lk-card); border:1px solid var(--lk-line); border-radius:4px; padding:0 14px 16px; margin-bottom:16px; }
.lk-cat-head{ border-bottom:2px solid var(--chip, var(--lk-red)); margin:0 -14px 4px; padding:0; }
.lk-cat-head h2{
  display:inline-block; background:var(--chip, var(--lk-red)); color:#fff;
  font-family:var(--f-tamil); font-size:.95rem; font-weight:800;
  padding:8px 20px; border-radius:0 0 14px 0; margin:0;
}
.lk-grid2{ display:grid; grid-template-columns:1fr 1fr; gap:0 26px; }
@media (max-width: 760px){ .lk-grid2{ grid-template-columns:1fr; } }

/* =========================================================
   BOTTOM — category link table
   ========================================================= */
.lk-bigmore{
  display:block; width:max-content; margin:0 auto 18px;
  background:var(--lk-red); color:#fff !important; font-family:var(--f-tamil);
  font-weight:800; font-size:.95rem; padding:12px 34px; border-radius:4px;
}
.lk-bigmore:hover{ background:var(--lk-red-dk); }
.lk-cat-table{
  background:var(--lk-card); border:1px solid var(--lk-line); border-radius:4px;
  display:grid; grid-template-columns:repeat(4,1fr); overflow:hidden;
}
.lk-cat-table a{
  font-family:var(--f-tamil); font-size:.82rem; font-weight:600; color:#444;
  padding:10px 14px; border:1px solid #eee; text-align:center;
}
.lk-cat-table a:hover{ color:var(--lk-red); background:#fafafa; }
@media (max-width: 760px){ .lk-cat-table{ grid-template-columns:repeat(2,1fr); } }

/* =========================================================
   SIDEBAR
   ========================================================= */
.lk-side{ display:flex; flex-direction:column; gap:16px; position:sticky; top:74px; }
@media (max-width:1024px){ .lk-side{ position:static; } }

.lk-side-head{
  background:var(--lk-black); color:#fff;
  font-family:var(--f-tamil); font-size:.95rem; font-weight:800;
  padding:11px 16px; display:flex; align-items:center; gap:8px;
  border-radius:4px 4px 0 0;
}
.lk-side-head::before{ content:''; width:8px; height:8px; border-radius:50%; background:var(--lk-red); }

.lk-side-box{ border-radius:4px; overflow:hidden; border:1px solid var(--lk-line); background:var(--lk-card); }

/* tabs */
.lk-tabs{ display:flex; background:#2a2a2a; }
.lk-tabs button{
  flex:1; background:none; border:0; color:#bbb;
  font-family:var(--f-tamil); font-size:.78rem; font-weight:700; padding:9px 6px;
  border-bottom:2px solid transparent;
}
.lk-tabs button.is-active{ color:#fff; border-bottom-color:var(--lk-red); background:#1c1c1c; }

/* dark news list */
.lk-darklist{ background:var(--lk-panel); }
.lk-darklist .lk-ditem{
  display:grid; grid-template-columns:1fr 92px; gap:12px; align-items:center;
  padding:12px 14px; border-bottom:1px solid #2e2e2e;
}
.lk-darklist .lk-ditem:last-child{ border-bottom:0; }
.lk-darklist h4{ color:#f2f2f2; font-size:.82rem; font-weight:600; line-height:1.5; }
.lk-darklist h4 a:hover{ color:var(--lk-gold); }
.lk-darklist time{ display:block; margin-top:5px; color:var(--lk-gold); font-family:var(--f-mono); font-size:.66rem; text-transform:uppercase; }
.lk-darklist .lk-dthumb{ border-radius:3px; overflow:hidden; display:block; }
.lk-darklist .lk-dthumb img{ width:92px; height:64px; object-fit:cover; }

/* death notices */
.lk-obits{ display:flex; flex-direction:column; gap:10px; padding:12px; background:#f3f3f3; }
.lk-obit{
  display:grid; grid-template-columns:76px 1fr; gap:12px; align-items:center;
  background:linear-gradient(135deg, var(--lk-amber), var(--lk-amber-2));
  border-radius:4px; padding:10px; color:#241a05;
}
.lk-obit .lk-obit-photo{ background:#fff; border-radius:3px; overflow:hidden; padding:3px; }
.lk-obit .lk-obit-photo img{ width:70px; height:82px; object-fit:cover; }
.lk-obit h4{ font-size:.72rem; font-weight:800; line-height:1.45; color:#241a05; }
.lk-obit h4 a{ color:inherit; }
.lk-obit time{ display:block; margin-top:5px; font-family:var(--f-mono); font-size:.66rem; color:#5d420a; text-transform:uppercase; }

/* contact numbers */
.lk-contactbox{ background:var(--lk-panel); padding:8px 0; }
.lk-crow{
  display:flex; align-items:center; gap:12px;
  padding:9px 16px; border-bottom:1px solid #2e2e2e;
  color:#eee; font-size:.82rem;
}
.lk-crow:last-child{ border-bottom:0; }
.lk-crow .flag{ font-size:1.1rem; line-height:1; }
.lk-crow .num{ font-family:var(--f-mono); font-weight:600; color:#fff; }
.lk-crow .country{ margin-left:auto; color:#999; font-size:.72rem; }
.lk-crow a{ color:inherit; }

/* =========================================================
   FOOTER
   ========================================================= */
.lk-brandstrip{ background:#242424; border-top:3px solid var(--lk-red); padding:18px 0; }
.lk-brandstrip .lk-wide{ display:flex; align-items:center; justify-content:center; gap:34px; flex-wrap:wrap; }
.lk-brandstrip .widget{ margin:0; }
.lk-brandstrip .lk-partner{
  color:#ddd; font-family:var(--f-tamil); font-weight:800; font-size:1.05rem;
  display:inline-flex; align-items:center; gap:8px; opacity:.85;
}
.lk-brandstrip .lk-partner:hover{ opacity:1; color:#fff; }
.lk-brandstrip .widget-title{ display:none; }

.lk-footer-logo{ display:inline-flex; transition:transform .3s var(--ease); }
.lk-footer-logo img{
  max-height:52px; width:auto;
  filter:drop-shadow(0 0 8px rgba(255,255,255,.35));
}
.lk-footer-logo:hover{ transform:scale(1.05); }

.lk-footer{ background:var(--lk-black); color:#bbb; }
.lk-footer-help{
  display:flex; align-items:center; gap:16px; flex-wrap:wrap;
  padding:16px; border-bottom:1px solid #2c2c2c;
}
.lk-footer-help .lk-avatar{
  width:44px; height:44px; border-radius:50%; background:var(--lk-red);
  display:inline-flex; align-items:center; justify-content:center; color:#fff; flex-shrink:0;
}
.lk-footer-help strong{ color:#fff; font-size:1.02rem; letter-spacing:.02em; }
.lk-footer-help small{ display:block; color:#8b8b8b; font-family:var(--f-mono); font-size:.68rem; text-transform:uppercase; }
.lk-footer-nav{ margin-left:auto; }
.lk-footer-nav ul{ display:flex; gap:4px 18px; flex-wrap:wrap; }
.lk-footer-nav a{
  color:#bbb; font-family:var(--f-mono); font-size:.7rem; letter-spacing:.1em; text-transform:uppercase;
}
.lk-footer-nav a:hover{ color:#fff; }
.lk-footer-bottom{
  display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap;
  padding:14px 16px; font-family:var(--f-mono); font-size:.72rem; color:#8b8b8b;
}
.lk-footer-social{ display:flex; gap:14px; }
.lk-footer-social a{ color:#9a9a9a; }
.lk-footer-social a:hover{ color:#fff; }

/* =========================================================
   DAY-WISE SIDEBAR NEWS FILTER
   ========================================================= */
.lk-daybox{ background:#fff; padding:14px; }
.lk-day-filter{ display:flex; flex-direction:column; gap:10px; margin-bottom:14px; }
.lk-day-btn{
  display:block; text-align:center;
  position:relative; overflow:hidden;
  background:#fff; border:1.5px solid #cfcfcf; border-radius:9px;
  font-family:var(--f-tamil); font-size:.85rem; font-weight:700; color:#222;
  padding:9px 12px; transition:color .25s var(--ease), border-color .25s var(--ease), transform .2s var(--ease), box-shadow .25s var(--ease);
  z-index:1;
}
.lk-day-btn::before{
  content:''; position:absolute; top:0; right:0; bottom:0; left:0; z-index:-1;
  background:linear-gradient(90deg, var(--lk-red), #ff6d3f);
  transform:scaleX(0); transform-origin:left;
  transition:transform .32s var(--ease);
}
.lk-day-btn:hover{ border-color:var(--lk-red); transform:translateY(-2px); box-shadow:0 6px 14px rgba(225,6,0,.18); }
.lk-day-btn:hover::before, .lk-day-btn.is-active::before{ transform:scaleX(1); }
.lk-day-btn:hover, .lk-day-btn.is-active{ color:#fff; border-color:transparent; }
.lk-day-btn.is-active{ box-shadow:0 6px 16px rgba(225,6,0,.3); animation:lkActiveGlow 2.2s ease-in-out infinite; }
@keyframes lkActiveGlow{
  0%,100%{ box-shadow:0 6px 16px rgba(225,6,0,.3); }
  50%{ box-shadow:0 6px 22px rgba(225,6,0,.5); }
}
.lk-day-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.lk-day-grid .lk-day-btn:last-child:nth-child(3n+1){ grid-column:1 / -1; }

.lk-other-head{
  margin:0 -14px 12px; border-radius:0;
  position:relative; overflow:hidden;
}
.lk-other-head::before{
  width:5px; height:100%; border-radius:0; background:var(--lk-red);
  position:absolute; left:0; top:0;
  animation:lkFlagPulse 2s ease-in-out infinite;
}
.lk-other-head::after{
  content:''; position:absolute; top:0; right:0; bottom:0; left:0;
  background:linear-gradient(115deg, transparent 40%, rgba(255,255,255,.14) 50%, transparent 60%);
  transform:translateX(-100%);
  animation:lkShine 3.4s var(--ease) infinite;
}

.lk-videolist{ display:flex; flex-direction:column; gap:10px; }
.lk-videolist .lk-daycard{ opacity:1; transform:none; }
.lk-daycard-thumb{ position:relative; }
.lk-play-badge{
  position:absolute; top:0; right:0; bottom:0; left:0; margin:auto;
  width:30px; height:30px; border-radius:50%;
  background:linear-gradient(135deg, var(--lk-red), #ff6d3f); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:.6rem; padding-left:2px;
  border:2px solid rgba(255,255,255,.9);
  box-shadow:0 0 0 0 rgba(225,6,0,.5);
  animation:lkFlagPulse 2s ease-in-out infinite;
}
.lk-day-panels{ position:relative; }
.lk-day-panel{ display:flex; flex-direction:column; gap:10px; }
.lk-day-panel[hidden]{ display:none; }
.lk-daycard{
  border-radius:8px; padding:12px;
  border:1px solid rgba(0,0,0,.06);
  opacity:0; transform:translateY(16px) scale(.98);
  transition:opacity .45s var(--ease), transform .45s var(--ease), box-shadow .3s var(--ease);
  transition-delay:var(--d, 0s);
}
.lk-day-panel.is-shown .lk-daycard{ opacity:1; transform:none; }
.lk-daycard:nth-child(odd){ background:#fdf8e3; border-color:#f0e6c0; }
.lk-daycard:nth-child(even){ background:#fdeff1; border-color:#f2d4da; }
.lk-daycard:hover{ box-shadow:0 10px 22px rgba(60,40,0,.14); transform:translateY(-3px); transition-delay:0s; }
.lk-daycard-main{ display:grid; grid-template-columns:1fr 92px; gap:12px; align-items:start; }
.lk-daycard-main h4{ font-size:.72rem; font-weight:800; line-height:1.55; color:#1a3c8f; }
.lk-daycard-main h4 a{ color:inherit; }
.lk-daycard-main h4 a:hover{ color:var(--lk-red); }
.lk-daycard-thumb{ border-radius:6px; overflow:hidden; display:block; }
.lk-daycard-thumb img{ width:92px; height:64px; object-fit:cover; transition:transform .45s var(--ease); }
.lk-daycard:hover .lk-daycard-thumb img{ transform:scale(1.1); }
.lk-daycard-meta{
  display:flex; align-items:center; justify-content:space-between;
  margin-top:9px; font-size:.72rem;
}
.lk-daycard-meta .src{ color:#2e9e4f; font-family:var(--f-tamil); font-weight:800; }
.lk-daycard-meta time{ color:#9a9a9a; font-family:var(--f-tamil); }
.lk-day-empty{ text-align:center; color:#888; font-family:var(--f-tamil); padding:18px 0; margin:0; }

/* =========================================================
   HOMEPAGE ANIMATIONS
   ========================================================= */

/* scroll reveal — elements fade & rise as they enter the viewport */
.lk-reveal{
  opacity:0; transform:translateY(26px);
  transition:opacity .6s var(--ease), transform .6s var(--ease);
  transition-delay:var(--d, 0s);
}
.lk-reveal.in-view{ opacity:1; transform:none; }

/* hero: flag pulse + image ken-burns drift */
.lk-flag{ animation:lkFlagPulse 2s ease-in-out infinite; }
@keyframes lkFlagPulse{
  0%,100%{ box-shadow:0 0 0 0 rgba(225,6,0,.5); }
  50%{ box-shadow:0 0 0 9px rgba(225,6,0,0); }
}
.lk-hero .lk-hero-media{ overflow:hidden; }
.lk-hero .lk-hero-media img{ transition:transform .7s var(--ease); }
.lk-hero:hover .lk-hero-media img{ transform:scale(1.05); }

/* cards lift on hover */
.lk-ad, .lk-listbox, .lk-cat, .lk-obit{
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.lk-ad:hover{ transform:translateY(-4px); box-shadow:0 12px 26px rgba(0,0,0,.28); }
.lk-cat:hover, .lk-listbox:hover{ box-shadow:0 8px 22px rgba(20,30,60,.1); }
.lk-obit:hover{ transform:translateY(-3px); box-shadow:0 8px 18px rgba(180,110,0,.35); }

/* category chips shimmer */
.lk-cat-head h2{ position:relative; overflow:hidden; }
.lk-cat-head h2::after{
  content:''; position:absolute; top:0; right:0; bottom:0; left:0;
  background:linear-gradient(115deg, transparent 30%, rgba(255,255,255,.35) 50%, transparent 70%);
  transform:translateX(-100%);
}
.lk-cat:hover .lk-cat-head h2::after{ animation:lkShine .9s var(--ease); }
@keyframes lkShine{ to{ transform:translateX(100%); } }

/* buttons: sweep highlight */
.lk-more, .lk-bigmore{ position:relative; overflow:hidden; }
.lk-more::after, .lk-bigmore::after{
  content:''; position:absolute; top:0; right:0; bottom:0; left:0;
  background:linear-gradient(115deg, transparent 30%, rgba(255,255,255,.3) 50%, transparent 70%);
  transform:translateX(-100%);
}
.lk-more:hover::after, .lk-bigmore:hover::after{ animation:lkShine .7s var(--ease); }

/* sidebar dark list rows slide on hover */
.lk-darklist .lk-ditem{ transition:background .25s, transform .25s var(--ease); }
.lk-darklist .lk-ditem:hover{ background:#262626; transform:translateX(4px); }

@media (prefers-reduced-motion: reduce){
  .lk-reveal{ opacity:1; transform:none; transition:none; }
  .lk-new-badge, .lk-stories::before, .lk-stories-head::after, .lk-flag{ animation:none; }
}

/* =========================================================
   ARCHIVE / CATEGORY FEED
   ========================================================= */
.lk-feedcol{ background:#fff; border:1px solid var(--lk-line); border-radius:10px; overflow:hidden; align-self:start; }
.lk-feedtabs{
  display:flex; background:#232a4d; border-radius:0;
}
.lk-feedtabs button{
  flex:0 0 auto; background:none; border:0; color:#c6cbe4;
  font-family:var(--f-tamil); font-size:.92rem; font-weight:800;
  padding:14px 22px; border-bottom:3px solid transparent;
  transition:color .25s var(--ease), border-color .25s var(--ease), background .25s var(--ease);
}
.lk-feedtabs button:hover{ color:#fff; }
.lk-feedtabs button.is-active{
  color:#fff; border-bottom-color:#ff9800; background:#1a2040;
}
.lk-feed{ display:flex; flex-direction:column; padding:6px 20px 20px; }
.lk-feed[hidden]{ display:none; }
.lk-feeditem{
  display:grid; grid-template-columns:135px 1fr; gap:16px; align-items:center;
  padding:16px 0; border-bottom:1px solid #ececec;
  transition:transform .25s var(--ease);
}
.lk-feeditem:hover{ transform:translateX(4px); }
.lk-feeditem:last-of-type{ border-bottom:0; }
.lk-feed-thumb{ display:block; border-radius:6px; overflow:hidden; position:relative; }
.lk-feed-thumb img{ width:135px; height:92px; object-fit:cover; transition:transform .35s var(--ease); }
.lk-feeditem:hover .lk-feed-thumb img{ transform:scale(1.07); }
.lk-feed-body h3{ font-family:var(--f-tamil); font-size:.86rem; font-weight:800; line-height:1.55; color:#1c1c1c; }
.lk-feed-body h3 a:hover{ color:var(--lk-red); }
.lk-feed-body time{ display:block; margin-top:7px; color:#999; font-family:var(--f-tamil); font-size:.72rem; }
@media (max-width:560px){
  .lk-feeditem{ grid-template-columns:100px 1fr; gap:12px; padding:13px 0; }
  .lk-feed-thumb img{ width:100px; height:70px; }
  .lk-feed-body h3{ font-size:.78rem; line-height:1.5; }
  .lk-feed-body time{ font-size:.66rem; margin-top:5px; }
}

/* infinite scroll loader */
.lk-scroll-sentinel{ display:flex; justify-content:center; padding:22px 0 10px; min-height:30px; }
.lk-spinner{
  width:32px; height:32px; border-radius:50%;
  border:3px solid rgba(225,6,0,.18); border-top-color:var(--lk-red);
  opacity:0; transition:opacity .3s;
  animation:lkSpin .8s linear infinite;
}
.lk-scroll-sentinel.is-loading .lk-spinner{ opacity:1; }
@keyframes lkSpin{ to{ transform:rotate(360deg); } }

.lk-pagination{ padding:18px 0 0; }
.lk-pagination .nav-links{ display:flex; gap:8px; justify-content:center; flex-wrap:wrap; }
.lk-pagination .page-numbers{
  min-width:36px; height:36px; padding:0 10px;
  display:inline-flex; align-items:center; justify-content:center;
  background:#f2f2f2; border-radius:8px; color:#333;
  font-family:var(--f-body); font-weight:700; font-size:.85rem;
  transition:background .25s var(--ease), color .25s var(--ease), transform .25s var(--ease);
}
.lk-pagination .page-numbers:hover{ background:#ddd; transform:translateY(-2px); }
.lk-pagination .page-numbers.current{ background:var(--lk-red); color:#fff; box-shadow:0 4px 10px rgba(225,6,0,.3); }

/* =========================================================
   SINGLE NEWS ARTICLE — white card over the animated bg
   ========================================================= */
/* keep sliders/media from stretching the layout columns */
.layout-2col > *, .main-col{ min-width:0; }
.main-col .lk-stories{ max-width:100%; }
.single-article{
  background:#fff; border:1px solid var(--lk-line); border-radius:12px;
  padding:26px 28px 30px;
  box-shadow:0 12px 34px rgba(30,20,20,.1);
  animation:lkArticleIn .65s var(--ease) both;
}
@keyframes lkArticleIn{
  from{ opacity:0; transform:translateY(28px) scale(.99); }
  to{ opacity:1; transform:none; }
}
.single-article .breadcrumb{ font-family:var(--f-tamil); font-size:.76rem; color:#999; margin-bottom:8px; }
.single-article .breadcrumb a:hover{ color:var(--lk-red); }
.single-title{
  font-size:clamp(1.25rem, 2.4vw, 1.75rem); line-height:1.5; font-weight:800;
  margin:0 0 14px; color:#1c1c1c;
}
.single-tags{ display:flex; flex-wrap:nowrap; align-items:center; gap:8px; margin-bottom:16px; }
.single-tags .lk-tag-time{ white-space:nowrap; flex-shrink:0; }
.single-tags a{
  background:linear-gradient(90deg, var(--lk-red), #ff6d3f, #b30500);
  background-size:200% 100%;
  border:1px solid transparent; color:#fff;
  font-family:var(--f-tamil); font-size:.72rem; font-weight:700;
  padding:4px 13px; border-radius:20px;
  box-shadow:0 0 10px rgba(225,6,0,.4);
  animation:lkBlink 1.2s ease-in-out infinite, lkGradientMove 4s linear infinite;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.single-tags a:hover{
  animation-play-state:paused, running;
  transform:translateY(-2px); box-shadow:0 5px 14px rgba(225,6,0,.5);
}
@media (prefers-reduced-motion: reduce){ .single-tags a{ animation:none; } }
.single-article .byline{
  display:flex; align-items:center; gap:12px;
  background:#f5f6f8; border-radius:10px; padding:10px 16px; margin-bottom:14px;
}
.single-article .byline img.avatar{ border-radius:50%; }
.single-article .byline .name{ font-family:var(--f-tamil); font-weight:800; color:#c98a00; }
.single-article .byline .report{ margin-left:auto; color:#888; font-family:var(--f-mono); font-size:.72rem; text-transform:uppercase; }
.lk-tag-time{
  margin-left:auto; display:inline-flex; align-items:center; gap:6px;
  color:#888; font-family:var(--f-tamil); font-size:.76rem; font-weight:600;
}
.single-article .byline .byline-sub{ font-family:var(--f-tamil); font-size:.74rem; color:#8a6d1f; font-style:italic; }
.single-article .byline a.report{
  margin-left:auto; display:inline-flex; align-items:center; gap:6px;
  color:#f5a623; font-family:var(--f-body); font-weight:800; font-size:.82rem;
  transition:color .25s var(--ease), transform .25s var(--ease);
}
.single-article .byline a.report:hover{ color:var(--lk-red); transform:translateY(-1px); }

/* share box with vertical tab + WhatsApp join */
.lk-sharebox{
  position:relative; display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  background:#fff; border:1px solid #eee; border-radius:10px;
  padding:14px 16px 14px 44px;
  box-shadow:0 4px 14px rgba(30,20,20,.06);
}
.lk-share-tab{
  position:absolute; left:0; top:0; bottom:0; width:28px;
  background:linear-gradient(180deg,#3b82f6,#1a3c8f); color:#fff;
  writing-mode:vertical-rl;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--f-body); font-weight:800; font-size:.66rem; letter-spacing:.16em; text-transform:uppercase;
  border-radius:10px 0 0 10px;
}
.lk-share-icons{ display:flex; gap:10px; }
.lk-share-icons a{
  width:40px; height:40px; border-radius:50%; color:#fff;
  display:inline-flex; align-items:center; justify-content:center;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.lk-share-icons .s-fb{ background:#1877f2; }
.lk-share-icons .s-tw{ background:#1da1f2; }
.lk-share-icons .s-wa{ background:#25d366; }
.lk-share-icons .s-mail{ background:#f5a623; }
.lk-share-icons a:hover{ transform:translateY(-4px) scale(1.12); box-shadow:0 8px 16px rgba(0,0,0,.25); }
.lk-share-join{
  margin-left:auto; display:inline-flex; align-items:center; gap:10px;
  transition:transform .25s var(--ease);
}
.lk-share-join:hover{ transform:scale(1.05); }
.lk-join-ico{
  width:40px; height:40px; border-radius:50%; background:#25d366; color:#fff;
  display:inline-flex; align-items:center; justify-content:center;
  animation:lkFlagPulse 2s ease-in-out infinite;
}
.lk-join-text{ display:flex; flex-direction:column; line-height:1.15; }
.lk-join-text small{ font-family:var(--f-body); font-weight:700; font-size:.58rem; letter-spacing:.08em; color:#555; }
.lk-join-text strong{ font-family:var(--f-body); font-weight:900; font-size:1.15rem; color:#111; }
@media (max-width:560px){ .lk-share-join{ margin-left:0; } }

/* inner sidebar category lists (homepage card style) */
.lk-sidelist{ display:flex; flex-direction:column; gap:10px; padding:12px; background:#fff; }
.lk-sidelist .lk-daycard{ opacity:1; transform:none; }

.share-rail{
  display:flex; align-items:center; gap:10px;
  background:#fafafa; border:1px solid #eee; border-radius:10px;
  padding:10px 16px;
}
.share-rail span{ font-family:var(--f-tamil); font-weight:800; font-size:.78rem; color:#666; margin-right:4px; }
.share-rail a{
  width:36px; height:36px; border-radius:50%; color:#fff;
  display:inline-flex; align-items:center; justify-content:center;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.share-rail a:nth-of-type(1){ background:#3b5998; }
.share-rail a:nth-of-type(2){ background:#1da1f2; }
.share-rail a:nth-of-type(3){ background:#25d366; }
.share-rail a:nth-of-type(4){ background:#f5a623; }
.share-rail a:hover{ transform:translateY(-4px) scale(1.1); box-shadow:0 8px 16px rgba(0,0,0,.22); }
.single-thumb{ border-radius:10px; overflow:hidden; }
.single-thumb img{ width:100%; height:auto; }
.single-content{
  font-family:var(--f-tamil); font-size:1rem; line-height:1.95; color:#232323;
}
.single-content p{ margin:0 0 1.25em; }
.single-content img{ border-radius:10px; margin:16px 0; height:auto; }
.single-content h2, .single-content h3{ margin:26px 0 12px; color:#1c1c1c; }
.single-content a{ color:#1a3c8f; text-decoration:underline; text-underline-offset:3px; }
.single-content a:hover{ color:var(--lk-red); }
.single-content blockquote{
  border-left:4px solid var(--lk-red); background:#fdf4f3;
  margin:16px 0; padding:12px 18px; border-radius:0 8px 8px 0;
}
.whatsapp-cta{
  display:flex; flex-wrap:wrap; align-items:center; gap:12px;
  background:#e9f9ef; border:1px solid #bfe9cf; border-radius:10px;
  padding:14px 18px; margin:20px 0 0;
  font-family:var(--f-tamil); font-weight:700; color:#1e6b3a;
}
.whatsapp-cta a{
  background:#25d366; color:#fff; font-weight:800; font-size:.8rem;
  padding:9px 18px; border-radius:24px;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease);
}
.whatsapp-cta a:hover{ transform:translateY(-2px); box-shadow:0 8px 16px rgba(37,211,102,.4); }
.cta-band{
  position:relative; overflow:hidden;
  display:block; text-align:center; margin-top:16px;
  background:linear-gradient(90deg, var(--lk-red), #ff4d2e);
  color:#fff !important; font-family:var(--f-tamil); font-weight:800;
  padding:13px 16px; border-radius:10px;
}
.cta-band::after{
  content:''; position:absolute; top:0; right:0; bottom:0; left:0;
  background:linear-gradient(115deg, transparent 30%, rgba(255,255,255,.3) 50%, transparent 70%);
  transform:translateX(-100%);
  animation:lkShine 2.8s var(--ease) infinite;
}

/* related news + comments as cards too */
.main-col > .section, .main-col .comments-area{
  background:#fff; border:1px solid var(--lk-line); border-radius:12px;
  padding:20px 22px; margin-top:22px;
  box-shadow:0 8px 24px rgba(30,20,20,.07);
}

/* inner-page right sidebar widgets as cards */
.sidebar .widget{
  background:#fff; border:1px solid var(--lk-line); border-radius:12px;
  box-shadow:0 6px 18px rgba(30,20,20,.06);
}

@media (max-width:640px){
  .single-article{ padding:18px 16px 22px; }
}

/* =========================================================
   ABOUT PAGE — எம்மை பற்றி
   ========================================================= */
.lk-about{ display:flex; flex-direction:column; gap:20px; }
/* pure-CSS staggered entrance — no JS dependency, so nothing stays invisible */
.lk-about-hero, .lk-about-card, .lk-about-cta, .lk-about-sign{
  animation:lkArticleIn .6s var(--ease) both;
}
.lk-about-hero{ animation-delay:.05s; }
.lk-about-card:nth-child(1){ animation-delay:.15s; }
.lk-about-card:nth-child(2){ animation-delay:.25s; }
.lk-about-card:nth-child(3){ animation-delay:.35s; }
.lk-about-card:nth-child(4){ animation-delay:.45s; }
.lk-about-cta{ animation-delay:.55s; }
.lk-about-sign{ animation-delay:.65s; }
@media (prefers-reduced-motion: reduce){
  .lk-about-hero, .lk-about-card, .lk-about-cta, .lk-about-sign{ animation:none; }
}
.lk-about-hero{
  position:relative; overflow:hidden; text-align:center;
  background:linear-gradient(135deg, #fff5f4, #ffe3e0 45%, #ffd0ca);
  border:1px solid #f4cfc9; border-radius:14px;
  padding:38px 24px 34px;
}
.lk-about-hero::before{
  content:''; position:absolute; top:0; right:0; bottom:0; left:0;
  background:linear-gradient(115deg, transparent 35%, rgba(255,255,255,.55) 50%, transparent 65%);
  transform:translateX(-100%);
  animation:lkShine 4s var(--ease) infinite;
}
.lk-about-badge{
  display:inline-block; margin-bottom:14px;
  background:linear-gradient(90deg, var(--lk-red), #ff6d3f);
  background-size:200% 100%;
  animation:lkGradientMove 4s linear infinite;
  color:#fff; font-family:var(--f-tamil); font-weight:800; font-size:.8rem;
  padding:7px 20px; border-radius:24px;
  box-shadow:0 6px 16px rgba(225,6,0,.3);
}
.lk-about-hero h2{
  font-family:var(--f-tamil); font-size:clamp(1.3rem, 2.6vw, 1.9rem); font-weight:900;
  color:#8a0e05; margin:0 0 10px;
}
.lk-about-lead{ font-family:var(--f-tamil); font-size:1rem; color:#5a3b36; margin:0; line-height:1.9; }
.lk-about-lead strong{ color:var(--lk-red); }

.lk-about-grid{ display:grid; grid-template-columns:1fr; gap:16px; }
.lk-about-card{
  background:#fff; border:1px solid #eee; border-radius:14px;
  padding:24px 22px;
  box-shadow:0 6px 20px rgba(30,20,20,.06);
  border-top:4px solid var(--lk-red);
  transition:transform .35s var(--ease), box-shadow .35s var(--ease);
}
.lk-about-card:hover{ transform:translateY(-6px); box-shadow:0 18px 36px rgba(30,20,20,.14); }
.lk-about-card:nth-child(2){ border-top-color:#ff9800; }
.lk-about-card:nth-child(3){ border-top-color:#2e9e4f; }
.lk-about-card:nth-child(4){ border-top-color:#2196f3; }
.lk-about-ico{
  display:inline-flex; align-items:center; justify-content:center;
  width:52px; height:52px; border-radius:14px; font-size:1.5rem;
  background:#faf3f2; box-shadow:inset 0 0 0 1px #f0dcd8;
  margin-bottom:12px;
  transition:transform .35s var(--ease);
}
.lk-about-card:hover .lk-about-ico{ transform:scale(1.15) rotate(-8deg); }
.lk-about-card h3{
  font-family:var(--f-tamil); font-size:1.02rem; font-weight:900; color:#1c1c1c;
  margin:0 0 10px;
}
.lk-about-card p{ font-family:var(--f-tamil); font-size:.88rem; line-height:1.95; color:#3c3c3c; margin:0; }

.lk-about-cta{
  text-align:center;
  background:linear-gradient(135deg,#1a2040,#232a4d);
  border-radius:14px; padding:34px 26px;
  position:relative; overflow:hidden;
}
.lk-about-cta::before{
  content:''; position:absolute; top:0; right:0; bottom:0; left:0;
  background:radial-gradient(circle at 80% 20%, rgba(59,130,246,.25), transparent 55%),
             radial-gradient(circle at 15% 85%, rgba(233,30,99,.22), transparent 50%);
}
.lk-about-cta > *{ position:relative; }
.lk-about-cta .lk-cta-ico{ background:rgba(255,255,255,.1); box-shadow:none; animation:lkCalFloat 3.5s ease-in-out infinite; }
.lk-about-cta h3{ font-family:var(--f-tamil); font-size:1.1rem; font-weight:900; color:#fff; margin:6px 0 10px; }
.lk-about-cta p{ font-family:var(--f-tamil); font-size:.86rem; line-height:1.9; color:#c9cee8; max-width:680px; margin:0 auto 18px; }
.lk-about-mail{
  display:inline-block;
  background:linear-gradient(90deg, var(--lk-red), #ff6d3f);
  background-size:200% 100%;
  animation:lkGradientMove 4s linear infinite;
  color:#fff !important; font-weight:800; font-family:var(--f-body); font-size:.9rem;
  padding:12px 28px; border-radius:30px;
  box-shadow:0 8px 20px rgba(225,6,0,.35);
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.lk-about-mail:hover{ transform:translateY(-3px) scale(1.04); box-shadow:0 14px 28px rgba(225,6,0,.5); }

.lk-about-sign{
  text-align:right; background:#fff; border:1px solid #eee; border-radius:14px;
  padding:22px 28px;
  border-right:4px solid var(--lk-red);
}
.lk-about-sign p{ font-family:var(--f-tamil); color:#888; margin:0 0 6px; font-size:.85rem; }
.lk-about-sign h4{ font-family:var(--f-tamil); font-weight:900; font-size:1.05rem; color:var(--lk-red); margin:0 0 4px; }
.lk-about-sign span{ display:block; font-family:var(--f-tamil); font-size:.8rem; color:#666; }

/* =========================================================
   NEWS STATS — views / likes / dislikes
   ========================================================= */
.lk-stats{
  display:flex; align-items:center; gap:14px; margin-top:6px;
  font-family:var(--f-body); font-size:.7rem; font-weight:700; color:#9a9a9a;
}
.lk-stats span{ display:inline-flex; align-items:center; gap:5px; }
.lk-stats svg{ opacity:.8; transition:transform .3s var(--ease), opacity .3s; }
.lk-stats .st-like{ color:#2e9e4f; }
.lk-stats .st-dislike{ color:#c34a4a; }
.lk-darklist .lk-stats{ color:#8b8b8b; }
.lk-daycard .lk-stats{ margin-top:7px; }

/* icon animations — eye blinks, thumbs wave when the card is hovered */
:where(.lk-item, .lk-story, .lk-daycard, .lk-feeditem, .lk-hero-slide, .lk-obit):hover .lk-stats svg{ opacity:1; }
:where(.lk-item, .lk-story, .lk-daycard, .lk-feeditem, .lk-hero-slide, .lk-obit):hover .st-views svg{
  animation:lkEyeBlink 1.2s var(--ease) infinite;
}
:where(.lk-item, .lk-story, .lk-daycard, .lk-feeditem, .lk-hero-slide, .lk-obit):hover .st-like svg{
  animation:lkThumbUp .8s var(--ease) infinite;
}
:where(.lk-item, .lk-story, .lk-daycard, .lk-feeditem, .lk-hero-slide, .lk-obit):hover .st-dislike svg{
  animation:lkThumbDown .8s var(--ease) infinite;
}
@keyframes lkEyeBlink{
  0%, 100%{ transform:scaleY(1); }
  8%{ transform:scaleY(.12); }
  16%{ transform:scaleY(1); }
}
@keyframes lkThumbUp{
  0%, 100%{ transform:rotate(0) translateY(0); }
  40%{ transform:rotate(-14deg) translateY(-2px) scale(1.2); }
}
@keyframes lkThumbDown{
  0%, 100%{ transform:rotate(0) translateY(0); }
  40%{ transform:rotate(14deg) translateY(2px) scale(1.2); }
}
@media (prefers-reduced-motion: reduce){
  .lk-stats svg{ animation:none !important; }
}

/* interactive vote bar on article pages */
.lk-votebar{
  display:flex; align-items:center; gap:12px; flex-wrap:nowrap;
  margin-top:14px; padding:12px 16px;
  background:#fafafa; border:1px solid #eee; border-radius:10px;
}
@media (max-width:480px){
  .lk-votebar{ gap:8px; padding:10px 12px; }
  .lk-votebar .lk-vote-btn{ padding:7px 12px; gap:6px; }
  .lk-votebar .lk-vote-views{ font-size:.72rem; gap:5px; }
}
.lk-vote-views{
  display:inline-flex; align-items:center; gap:7px;
  font-family:var(--f-tamil); font-weight:700; font-size:.8rem; color:#666;
  margin-right:auto;
}
.lk-vote-btn{
  display:inline-flex; align-items:center; gap:8px;
  background:#fff; border:1.5px solid #ddd; border-radius:24px;
  padding:8px 18px; color:#444;
  font-family:var(--f-body); font-weight:800; font-size:.82rem;
  transition:transform .25s var(--ease), border-color .25s var(--ease), color .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);
}
.lk-vote-btn svg{ transition:transform .3s var(--ease); }
.lk-vote-btn[data-vote="like"]:hover{ border-color:#2e9e4f; color:#2e9e4f; transform:translateY(-2px); box-shadow:0 6px 14px rgba(46,158,79,.25); }
.lk-vote-btn[data-vote="like"]:hover svg{ animation:lkThumbUp .7s var(--ease) infinite; }
.lk-vote-btn[data-vote="dislike"]:hover{ border-color:#c34a4a; color:#c34a4a; transform:translateY(-2px); box-shadow:0 6px 14px rgba(195,74,74,.25); }
.lk-vote-btn[data-vote="dislike"]:hover svg{ animation:lkThumbDown .7s var(--ease) infinite; }
.lk-vote-views svg{ animation:lkEyeBlink 4s var(--ease) infinite; }
.lk-vote-btn.voted[data-vote="like"]{ background:#2e9e4f; border-color:#2e9e4f; color:#fff; }
.lk-vote-btn.voted[data-vote="dislike"]{ background:#c34a4a; border-color:#c34a4a; color:#fff; }
.lk-vote-btn.voted{ animation:lkVotePop .45s var(--ease); }
@keyframes lkVotePop{
  0%{ transform:scale(1); }
  50%{ transform:scale(1.15); }
  100%{ transform:scale(1); }
}

/* =========================================================
   MOBILE POLISH
   ========================================================= */
html{ overflow-x:hidden; overflow-x:clip; }

/* responsive media inside articles */
.single-content iframe, .single-content embed, .single-content video{
  max-width:100%; width:100%; height:240px; border-radius:10px;
}
@supports (aspect-ratio: 16/9){
  .single-content iframe, .single-content embed, .single-content video{
    aspect-ratio:16/9; height:auto;
  }
}
.single-content table{ display:block; width:100%; overflow-x:auto; }

@media (max-width:640px){
  .lk-wide{ padding-left:12px; padding-right:12px; }
  .lk-page{ padding-top:16px; padding-bottom:26px; }

  /* top strip */
  .lk-cal{ width:76px; border-radius:10px; }
  .lk-cal-day{ font-size:1.25rem; }
  .lk-cal-top{ font-size:.56rem; }
  .lk-cal-week{ font-size:.6rem; }

  /* header: keep search + whatsapp, drop fb/yt on tiny screens */
  .lk-header-actions .lk-hbtn:nth-child(n+3){ display:none; }
  .lk-header-inner{ gap:10px; }

  /* feed tabs scroll if category names are long */
  .lk-feedtabs{ overflow-x:auto; scrollbar-width:none; }
  .lk-feedtabs::-webkit-scrollbar{ display:none; }
  .lk-feedtabs button{ white-space:nowrap; padding:12px 16px; font-size:.84rem; }
  .lk-feed{ padding:4px 12px 16px; }

  /* homepage bits */
  .lk-hero .lk-hero-body{ padding:14px 16px; }
  .lk-story{ flex:0 0 210px; }
  .lk-stories{ padding:12px 12px 16px; }
  .lk-cat{ padding:0 12px 14px; }
  .lk-cat-head{ margin:0 -12px 4px; }
  .lk-listbox{ padding:12px 12px 14px; }
  .lk-hot-badge{ font-size:.58rem; padding:5px 10px; }

  /* footer — stack & centre everything, keep clear of the to-top button */
  .lk-footer-help{
    flex-direction:column; align-items:center; justify-content:center;
    text-align:center; gap:10px; padding:20px 16px;
  }
  .lk-footer-help .lk-avatar{ margin:0; }
  .lk-footer-nav{ margin-left:0; width:100%; }
  .lk-footer-nav ul{ justify-content:center; }
  .lk-footer-bottom{
    flex-direction:column; align-items:center; justify-content:center;
    text-align:center; gap:12px;
    padding:16px 16px 78px;
  }
  .lk-footer-bottom span{ display:block; width:100%; }
  .lk-footer-social{ justify-content:center; }
  .lk-brandstrip .lk-wide{ gap:14px; flex-direction:column; }

  /* about page */
  .lk-about-hero{ padding:26px 16px 24px; }
  .lk-about-card{ padding:18px 16px; }
  .lk-about-cta{ padding:24px 16px; }
  .lk-about-sign{ padding:18px 16px; }
  .lk-about-mail{ word-break:break-all; padding:11px 18px; font-size:.8rem; }

  /* single article */
  .single-title{ font-size:1.2rem; }
  .lk-share-icons a{ width:36px; height:36px; }
  .lk-join-text strong{ font-size:1rem; }
}

@media (max-width:400px){
  .lk-day-grid{ grid-template-columns:repeat(2,1fr); }
  .lk-day-grid .lk-day-btn:last-child:nth-child(3n+1){ grid-column:auto; }
  .lk-topstrip-inner{ gap:8px; }
  .lk-cal{ width:62px; }
  .lk-cal-day{ font-size:1.05rem; }
  .lk-topstrip-logo img{ max-height:40px; }
}

/* hide old-skin leftovers if any linger */
.topbar, .ticker{ display:none; }

/* ---------------------------------------------------
 * Elementor wrappers on the home page must add zero box
 * model by default so each block's own margins stay the
 * only spacing, exactly like the classic templates.
 * Defaults are set at CSS-variable level so per-element
 * padding/gap chosen in the Elementor editor still wins.
 * ------------------------------------------------- */
.lk-main .elementor, .lk-main .e-con, .lk-main .e-con-inner,
.lk-leftbar .elementor, .lk-leftbar .e-con, .lk-leftbar .e-con-inner,
.lk-side .elementor, .lk-side .e-con, .lk-side .e-con-inner{ max-width:100%; }
.lk-main .e-con, .lk-leftbar .e-con, .lk-side .e-con{
  --padding-top:0px; --padding-right:0px; --padding-bottom:0px; --padding-left:0px;
  --padding-block-start:0px; --padding-block-end:0px; --padding-inline-start:0px; --padding-inline-end:0px;
  --gap:0px 0px; --row-gap:0px; --column-gap:0px;
}
/* right column keeps the classic 16px rhythm between boxes */
.lk-side > .elementor > .e-con{ --gap:16px 16px; --row-gap:16px; --column-gap:16px; }
.lk-main .elementor-widget:not(:last-child),
.lk-leftbar .elementor-widget:not(:last-child),
.lk-side .elementor-widget:not(:last-child){ margin-bottom:0; }
.lk-main .elementor-widget .elementor-widget-container,
.lk-leftbar .elementor-widget .elementor-widget-container,
.lk-side .elementor-widget .elementor-widget-container{ margin:0; padding:0; }
