/* FlagOff.my lightweight web effects / animation module v1.0.10
   Plain CSS only. Safe for cPanel/Plesk shared hosting. */
:root{
  --fx-fast:160ms;
  --fx-med:280ms;
  --fx-slow:520ms;
  --fx-ease:cubic-bezier(.2,.8,.2,1);
  --fx-shadow:0 14px 35px rgba(15,23,42,.10);
}
.effects-enabled .hero:before{
  content:"";
  position:absolute;
  inset:-35%;
  background:
    radial-gradient(circle at 25% 35%,rgba(249,115,22,.26),transparent 15%),
    radial-gradient(circle at 75% 25%,rgba(214,168,92,.16),transparent 18%),
    linear-gradient(115deg,transparent 0 44%,rgba(255,255,255,.07) 48%,transparent 52% 100%);
  transform:translate3d(-6%,0,0) rotate(2deg);
  animation:fx-dust-drift 18s linear infinite;
  pointer-events:none;
}
.effects-enabled .hero .container{animation:fx-rise-in var(--fx-slow) var(--fx-ease) both;}
.effects-enabled .btn,.effects-enabled .card,.effects-enabled .stat,.effects-enabled .badge,.effects-enabled input,.effects-enabled select,.effects-enabled textarea{transition:transform var(--fx-med) var(--fx-ease),box-shadow var(--fx-med) var(--fx-ease),border-color var(--fx-med) var(--fx-ease),filter var(--fx-med) var(--fx-ease),background var(--fx-med) var(--fx-ease);}
.effects-enabled .btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.13);}
.effects-enabled .btn:active{transform:translateY(0) scale(.985);}
.effects-enabled .card:hover,.effects-enabled .stat:hover{box-shadow:var(--fx-shadow);transform:translateY(-1px);}
.effects-enabled .table tr{transition:background var(--fx-fast) ease;}
.effects-enabled .table tr:hover td{background:#fff7ed;}
.effects-enabled input:focus,.effects-enabled select:focus,.effects-enabled textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(249,115,22,.13);}
.effects-enabled .badge.success{animation:fx-soft-pulse 2.8s ease-in-out infinite;}
.effects-enabled .poster img,.effects-enabled .sponsor-logo{transition:transform var(--fx-med) var(--fx-ease),filter var(--fx-med) var(--fx-ease);}
.effects-enabled .poster:hover img{transform:scale(1.015);}
.effects-enabled .sponsor-logo:hover{transform:translateY(-1px) scale(1.03);filter:saturate(1.08);}
.effects-enabled .status-steps span.active{position:relative;overflow:hidden;}
.effects-enabled .status-steps span.active:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:translateX(-130%);animation:fx-sheen 2.6s ease-in-out infinite;}
.effects-enabled .fx-reveal{opacity:0;transform:translateY(10px);}
.effects-enabled .fx-reveal.fx-in{opacity:1;transform:translateY(0);transition:opacity var(--fx-slow) var(--fx-ease),transform var(--fx-slow) var(--fx-ease);}
.effects-standard .fx-reveal{transform:translateY(16px) scale(.99);}
.effects-standard .btn:hover{transform:translateY(-2px);}
.effects-standard .card:hover,.effects-standard .stat:hover{transform:translateY(-2px);}
.effects-offroad .topbar{box-shadow:0 8px 20px rgba(15,23,42,.18);}
.effects-offroad .hero:before{animation-duration:12s;opacity:1;}
.effects-offroad .card:hover,.effects-offroad .stat:hover{border-color:rgba(249,115,22,.45);}
.effects-offroad .btn.accent{position:relative;overflow:hidden;}
.effects-offroad .btn.accent:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:translateX(-120%);}
.effects-offroad .btn.accent:hover:after{animation:fx-sheen 1.2s ease;}
.fx-loading-bar{position:fixed;left:0;top:0;height:3px;width:100%;z-index:9999;background:linear-gradient(90deg,var(--color-accent),var(--color-sand),var(--color-success));transform-origin:left;animation:fx-load 620ms var(--fx-ease) forwards;pointer-events:none;}
@keyframes fx-rise-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes fx-dust-drift{from{transform:translate3d(-6%,0,0) rotate(2deg)}to{transform:translate3d(6%,0,0) rotate(2deg)}}
@keyframes fx-soft-pulse{0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.0)}50%{box-shadow:0 0 0 5px rgba(34,197,94,.10)}}
@keyframes fx-sheen{to{transform:translateX(130%)}}
@keyframes fx-load{0%{transform:scaleX(.08);opacity:1}70%{transform:scaleX(.72);opacity:1}100%{transform:scaleX(1);opacity:0}}
.effects-no-hover .card:hover,.effects-no-hover .stat:hover,.effects-no-hover .btn:hover,.effects-no-hover .poster:hover img,.effects-no-hover .sponsor-logo:hover{transform:none!important;box-shadow:inherit!important;}
.effects-no-pulse .badge.success{animation:none!important;}

@media (prefers-reduced-motion: reduce){
  .effects-enabled *, .effects-enabled *:before, .effects-enabled *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important;}
  .effects-enabled .fx-reveal{opacity:1!important;transform:none!important;}
}
@media print{
  .effects-enabled *,.effects-enabled *:before,.effects-enabled *:after{animation:none!important;transition:none!important;box-shadow:none!important;transform:none!important;}
  .fx-loading-bar{display:none!important;}
}
