/* ==========================================================================
   Agent Killer - Main Styles (Elementor-first)
   Mobile-first + maximum compatibility
   ========================================================================== */

*,
*::before,
*::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; }

img, svg, video, canvas { max-width: 100%; height: auto; }
button, input, textarea, select { font: inherit; color: inherit; }

a { color: inherit; text-decoration: none; }
a:focus { outline: none; }
:focus-visible { outline: 2px solid rgba(255,216,77,.9); outline-offset: 3px; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}

:root{
  --ak-purple: #6C2BFF;
  --ak-blue:   #0B1C3F;
  --ak-red:    #FF3B3B;
  --ak-gold:   #FFD84D;
  --ak-mist:   #E9ECF5;

  --ak-black:  #06070B;
  --ak-ink:    #0A0F1F;

  --ak-bg-grad: linear-gradient(135deg, #06070B 0%, #0B1C3F 60%, #120A2A 100%);
  --ak-bg-grad-hover: linear-gradient(135deg, #070913 0%, #0A1633 60%, #1A0E3A 100%);

  --ak-btn-grad: linear-gradient(135deg, #FF3B3B 0%, #6C2BFF 100%);
  --ak-btn-grad-hover: linear-gradient(135deg, #FF5252 0%, #7A43FF 100%);

  --ak-font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --ak-font-head: Sora, Inter, system-ui, sans-serif;

  --ak-container-wide: 1440px;
  --ak-container: 1200px;
  --ak-container-narrow: 760px;

  --ak-gutter: 16px;
  --ak-radius: 18px;
}

body{
  font-family: var(--ak-font-body);
  background: var(--ak-bg-grad);
  color: var(--ak-mist);
  line-height: 1.6;
}

.ak-site { min-height: 100vh; display: flex; flex-direction: column; }
.ak-main { flex: 1 1 auto; }

.ak-container{
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--ak-gutter);
  padding-right: var(--ak-gutter);
  width: 100%;
}
.ak-container--wide { max-width: var(--ak-container-wide); }
.ak-container--normal { max-width: var(--ak-container); }
.ak-container--narrow { max-width: var(--ak-container-narrow); }

.ak-minh-100 { min-height: 100vh; }

.ak-header, .ak-footer{
  background: rgba(6,7,11,.35);
  border-bottom: 1px solid rgba(255,216,77,.12);
}
.ak-footer{
  border-top: 1px solid rgba(255,216,77,.12);
  border-bottom: none;
}

.ak-title{
  font-family: var(--ak-font-head);
  letter-spacing: .2px;
  line-height: 1.15;
}

.ak-card{
  background: rgba(11,28,63,.35);
  border: 1px solid rgba(255,216,77,.14);
  border-radius: var(--ak-radius);
  padding: 16px;
  margin: 12px 0;
  box-shadow: 0 10px 26px rgba(0,0,0,.25);
}

.ak-system{
  background: var(--ak-bg-grad-hover);
}

/* ==========================================================================
   Index Landing (fallback homepage)
   ========================================================================== */

.ak-index-landing{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh; /* reinforces ak-minh-100 */
  text-align: center;
  padding-top: 24px;
  padding-bottom: 24px;
}

.ak-index-landing__card{
  width: 100%;
  padding: 40px 20px;
}

.ak-index-landing__logo{
  display: flex;
  justify-content: center;
  margin-bottom: 24px;
}

/* WordPress custom logo */
.ak-index-landing__logo .custom-logo{
  max-width: 240px;
  width: 100%;
  height: auto;
}

.ak-index-landing__logo-fallback{
  font-size: 32px;
  font-weight: 800;
}

.ak-index-landing__title{
  margin: 0 0 14px;
  font-size: 36px;
}

.ak-index-landing__text{
  margin: 0 auto 24px;
  max-width: 640px;
  opacity: .9;
}

/* Button component (reusable) */
.ak-btn{
  display: inline-block;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
}

.ak-btn--cta{
  background: var(--ak-btn-grad);
  padding: 14px 24px;
  border-radius: 999px;
  font-weight: 800;
  letter-spacing: .6px;
  text-transform: uppercase;
  border: 1px solid rgba(255,216,77,.18);
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
  color: var(--ak-mist);
}

.ak-btn--cta:hover{
  background: var(--ak-btn-grad-hover);
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.28);
}

.ak-btn--cta:active{
  transform: translateY(0);
  box-shadow: 0 8px 18px rgba(0,0,0,.22);
}

/* ==========================================================================
   Admin Floating Icon Menu
   ========================================================================== */

.ak-admin-float{
  position: fixed;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 99999;

  display: flex;
  flex-direction: column;
  gap: 14px;

  padding: 14px;
  border-radius: 999px;

  background: rgba(6,7,11,.45);
  border: 1px solid rgba(255,216,77,.14);
  box-shadow: 0 22px 60px rgba(0,0,0,.45);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.ak-admin-float__icon{
  width: 48px;
  height: 48px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;
  text-decoration: none;

  color: var(--ak-mist);
  background: rgba(11,28,63,.45);
  border: 1px solid rgba(233,236,245,.12);

  transition: all .25s ease;
}

.ak-admin-float__icon:hover{
  background: linear-gradient(135deg, var(--ak-red) 0%, var(--ak-purple) 100%);
  border-color: rgba(255,216,77,.4);
  box-shadow: 0 16px 34px rgba(0,0,0,.35);
  transform: translateY(-2px);
}

.ak-admin-float__icon svg{
  pointer-events: none;
}

.ak-admin-float__icon--danger:hover{
  background: linear-gradient(135deg, #FF5252 0%, #7A43FF 100%);
}

/* Mobile adjust */
@media (max-width: 480px){
  .ak-admin-float{
    left: 12px;
    padding: 10px;
  }
  .ak-admin-float__icon{
    width: 42px;
    height: 42px;
  }
}


@media (min-width: 480px){
  :root{ --ak-gutter: 18px; }
  .ak-index-landing__card{ padding: 48px 24px; }
  .ak-index-landing__title{ font-size: 38px; }
}
@media (min-width: 760px){
  :root{ --ak-gutter: 24px; }
  .ak-index-landing__card{ padding: 56px 28px; }
  .ak-index-landing__title{ font-size: 42px; }
}
@media (min-width: 1080px){
  :root{ --ak-gutter: 28px; }
  .ak-index-landing__title{ font-size: 46px; }
}
@media (min-width: 1440px){
  :root{ --ak-gutter: 32px; }
}
