/* Ironman Coffee — affiliate area + navigation skin.
   Loads on the affiliate login / registration / terms pages and sitewide nav. */

.imx-aff{
  --imx-bg:#07070a;
  --imx-bg-2:#0d0c11;
  --imx-ink:#f4f1ea;
  --imx-muted:#9c968c;
  --imx-amber:#e8a13a;
  --imx-amber-2:#ffcd76;
  --imx-line:rgba(244,241,234,.12);
  --imx-ease:cubic-bezier(.16,1,.3,1);
}

/* ---------- page shell ---------- */
body.imx-aff{background:#07070a;color:#f4f1ea;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}
body.imx-aff #page,body.imx-aff #page.grid-container,body.imx-aff #page.container{max-width:100%;padding:0;margin:0;background:transparent}
body.imx-aff #content,body.imx-aff #content.site-content{padding:0;margin:0;max-width:100%;display:block}
body.imx-aff .entry-header,body.imx-aff .page-header{display:none}

/* ambient backdrop */
body.imx-aff .site-content::before{
  content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(60% 45% at 18% 8%,rgba(232,161,58,.16),transparent 60%),
    radial-gradient(50% 40% at 85% 85%,rgba(232,161,58,.10),transparent 60%),
    #07070a;
}
body.imx-aff .entry-content{position:relative;z-index:1}

/* ---------- auth card ---------- */
.imx-auth{
  width:100%;max-width:1080px;margin:0 auto;padding:clamp(80px,9vw,130px) 24px clamp(60px,8vw,110px);
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center;
}
.imx-auth__intro .imx-auth__kicker{
  display:inline-flex;align-items:center;gap:9px;font-size:.68rem;letter-spacing:.32em;
  text-transform:uppercase;color:var(--imx-amber);border:1px solid var(--imx-line);
  border-radius:999px;padding:8px 16px;margin-bottom:22px;background:rgba(255,255,255,.03);
}
.imx-auth__kicker i{width:6px;height:6px;border-radius:50%;background:var(--imx-amber)}
.imx-auth__title{
  font-size:clamp(2rem,4.6vw,3.5rem);line-height:1.02;letter-spacing:-.03em;font-weight:800;
  text-transform:uppercase;margin:0 0 18px;
}
.imx-auth__title em{
  font-style:normal;
  background:linear-gradient(100deg,var(--imx-amber-2),var(--imx-amber) 50%,#8a5a18);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.imx-auth__lede{color:var(--imx-muted);line-height:1.7;max-width:46ch;margin:0 0 30px}
.imx-auth__points{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.imx-auth__points li{display:flex;gap:12px;align-items:flex-start;color:var(--imx-muted);font-size:.95rem;line-height:1.55}
.imx-auth__points li::before{
  content:'';flex:0 0 auto;width:18px;height:18px;margin-top:2px;border-radius:50%;
  background:radial-gradient(circle at 50% 45%,var(--imx-amber-2),var(--imx-amber));
  box-shadow:0 0 0 4px rgba(232,161,58,.14);
}
.imx-auth__points b{color:var(--imx-ink);font-weight:600}

/* the form panel */
.imx-auth__panel{
  position:relative;border:1px solid var(--imx-line);border-radius:22px;
  padding:clamp(26px,3.4vw,42px);
  background:linear-gradient(150deg,rgba(22,17,10,.92),rgba(11,10,13,.92));
  backdrop-filter:blur(14px);
  box-shadow:0 30px 80px -40px rgba(0,0,0,.9);
}
.imx-auth__panel::before{
  content:'';position:absolute;width:320px;height:320px;right:-120px;top:-140px;border-radius:50%;
  background:radial-gradient(circle,rgba(232,161,58,.2),transparent 65%);pointer-events:none;
}
.imx-auth__panel-head{position:relative;margin-bottom:24px}
.imx-auth__panel-head h2{font-size:1.35rem;font-weight:700;letter-spacing:-.01em;margin:0 0 6px}
.imx-auth__panel-head p{color:var(--imx-muted);font-size:.9rem;margin:0}

/* ---------- AffiliateWP form controls ---------- */
.imx-aff .affwp-form,
.imx-aff #affwp-login-form,
.imx-aff #affwp-register-form{position:relative;z-index:1;margin:0}
.imx-aff .affwp-form legend,
.imx-aff .affwp-form h3{
  font-size:.7rem;letter-spacing:.28em;text-transform:uppercase;color:var(--imx-amber);
  border:0;padding:0;margin:0 0 16px;width:auto;
}
.imx-aff .affwp-form fieldset{border:0;padding:0;margin:0}
.imx-aff .affwp-form p,
.imx-aff .affwp-wrap{margin-bottom:16px}
.imx-aff .affwp-form label,
.imx-aff .affwp-wrap label{
  display:block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--imx-muted);margin-bottom:8px;font-weight:600;
}
.imx-aff .affwp-form input[type=text],
.imx-aff .affwp-form input[type=email],
.imx-aff .affwp-form input[type=password],
.imx-aff .affwp-form input[type=url],
.imx-aff .affwp-form input[type=number],
.imx-aff .affwp-form textarea,
.imx-aff .affwp-form select,
.imx-aff .affwp-wrap input,
.imx-aff .affwp-wrap textarea,
.imx-aff .affwp-wrap select{
  width:100%;padding:14px 16px;border-radius:12px;
  background:rgba(255,255,255,.04);
  border:1px solid var(--imx-line);
  color:var(--imx-ink);font-size:.95rem;line-height:1.4;
  transition:border-color .3s var(--imx-ease),background .3s var(--imx-ease),box-shadow .3s var(--imx-ease);
}
.imx-aff .affwp-form input:focus,
.imx-aff .affwp-form textarea:focus,
.imx-aff .affwp-form select:focus{
  outline:none;border-color:var(--imx-amber);
  background:rgba(255,255,255,.06);
  box-shadow:0 0 0 4px rgba(232,161,58,.16);
}
.imx-aff .affwp-form input::placeholder,
.imx-aff .affwp-form textarea::placeholder{color:rgba(156,150,140,.6)}
.imx-aff .affwp-form textarea{min-height:110px;resize:vertical}
.imx-aff .affwp-form .description,
.imx-aff .affwp-form small{display:block;margin-top:7px;color:var(--imx-muted);font-size:.78rem;line-height:1.5}

/* checkbox / terms row */
.imx-aff .affwp-tos label,
.imx-aff .affwp-wrap label[for*="tos"]{
  display:flex;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:0;
  font-size:.88rem;color:var(--imx-muted);font-weight:400;
}
.imx-aff input[type=checkbox]{
  appearance:none;width:19px;height:19px;flex:0 0 auto;margin-top:1px;
  border:1px solid var(--imx-line);border-radius:6px;background:rgba(255,255,255,.04);
  cursor:pointer;transition:all .25s var(--imx-ease);position:relative;
}
.imx-aff input[type=checkbox]:checked{background:linear-gradient(140deg,var(--imx-amber-2),var(--imx-amber));border-color:transparent}
.imx-aff input[type=checkbox]:checked::after{
  content:'';position:absolute;left:6px;top:2px;width:5px;height:10px;
  border:solid #150d02;border-width:0 2px 2px 0;transform:rotate(45deg);
}

/* submit */
.imx-aff .affwp-form input[type=submit],
.imx-aff .affwp-form button[type=submit]{
  position:relative;width:100%;margin-top:8px;padding:16px 26px;border:0;border-radius:999px;
  font-weight:700;font-size:.95rem;letter-spacing:.01em;cursor:pointer;color:#150d02;
  background:linear-gradient(100deg,var(--imx-amber-2),var(--imx-amber));
  transition:transform .3s var(--imx-ease),box-shadow .3s var(--imx-ease),filter .3s;
}
.imx-aff .affwp-form input[type=submit]:hover,
.imx-aff .affwp-form button[type=submit]:hover{
  transform:translateY(-2px);filter:brightness(1.06);
  box-shadow:0 14px 30px -12px rgba(232,161,58,.6);
}

/* links, errors, notices */
.imx-aff .affwp-form a{color:var(--imx-amber)}
.imx-aff .affwp-form a:hover{color:var(--imx-amber-2)}
.imx-aff .affwp-errors,
.imx-aff .affwp-error{
  border:1px solid rgba(255,107,107,.35);background:rgba(255,107,107,.08);
  color:#ffb3b3;border-radius:12px;padding:13px 16px;margin-bottom:18px;font-size:.88rem;
}
.imx-aff .affwp-notice,
.imx-aff .affwp-success{
  border:1px solid rgba(232,161,58,.35);background:rgba(232,161,58,.09);
  color:var(--imx-amber-2);border-radius:12px;padding:13px 16px;margin-bottom:18px;font-size:.88rem;
}
.imx-auth__alt{margin-top:22px;text-align:center;color:var(--imx-muted);font-size:.88rem}
.imx-auth__alt a{color:var(--imx-amber);font-weight:600}

/* closed-registration state */
.imx-auth__closed{
  border:1px dashed var(--imx-line);border-radius:14px;padding:22px;
  color:var(--imx-muted);font-size:.92rem;line-height:1.6;background:rgba(255,255,255,.02);
}
.imx-auth__closed b{color:var(--imx-ink)}

/* affiliate dashboard (post-login) */
.imx-aff #affwp-affiliate-dashboard-tabs a,
.imx-aff .affwp-tab-nav a{color:var(--imx-muted)}
.imx-aff #affwp-affiliate-dashboard table{width:100%;border-collapse:collapse;color:var(--imx-ink)}
.imx-aff #affwp-affiliate-dashboard th,
.imx-aff #affwp-affiliate-dashboard td{border-bottom:1px solid var(--imx-line);padding:12px 10px;text-align:left}
.imx-aff #affwp-affiliate-dashboard th{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--imx-muted)}

@media (max-width:900px){
  .imx-auth{grid-template-columns:1fr;padding-top:100px}
  .imx-auth__intro{order:2}
  .imx-auth__panel{order:1}
}
@media (prefers-reduced-motion:reduce){
  .imx-aff *{animation:none!important;transition-duration:.01ms!important}
}

/* ================= SITEWIDE NAVIGATION SKIN ================= */
.imx-nav .main-navigation,
.imx-nav .main-navigation .inside-navigation{background:transparent!important}
.imx-nav .site-header{border:0!important;box-shadow:none!important}
.imx-nav .main-navigation .main-nav ul li a{
  position:relative;font-weight:600;font-size:.9rem;letter-spacing:.01em;
  padding-inline:16px;transition:color .3s var(--imx-ease,ease);
}
.imx-nav .main-navigation .main-nav ul li a::after{
  content:'';position:absolute;left:16px;right:16px;bottom:12px;height:1px;
  background:linear-gradient(90deg,#ffcd76,#e8a13a);
  transform:scaleX(0);transform-origin:right;transition:transform .45s cubic-bezier(.16,1,.3,1);
}
.imx-nav .main-navigation .main-nav ul li a:hover::after,
.imx-nav .main-navigation .main-nav ul li.current-menu-item a::after{transform:scaleX(1);transform-origin:left}

/* highlight the affiliate CTA item in the menu */
.imx-nav .main-navigation .main-nav ul li.imx-nav-cta a{
  margin-left:10px;padding:10px 20px;border-radius:999px;
  background:linear-gradient(100deg,#ffcd76,#e8a13a);color:#150d02!important;
}
.imx-nav .main-navigation .main-nav ul li.imx-nav-cta a::after{display:none}
.imx-nav .main-navigation .main-nav ul li.imx-nav-cta a:hover{filter:brightness(1.07)}


/* AffiliateWP login specifics */
.imx-aff .affwp-form .affwp-user-remember{width:auto!important;display:inline-block;margin-right:8px}
.imx-aff .affwp-form label[for=affwp-login-user-remember],
.imx-aff .affwp-form .affwp-user-remember + label{
  display:inline;text-transform:none;letter-spacing:0;font-size:.88rem;color:var(--imx-muted);font-weight:400;
}
.imx-aff .affwp-form input[type=submit]{width:100%}
.imx-aff .entry-content > h2,
.imx-aff .affwp-form > h3:first-child{display:none}
.imx-aff .imx-auth__panel .affwp-form p:last-of-type{margin-bottom:0}
/* theme page title is replaced by our own headline */
.imx-aff .entry-title,.imx-aff h1.entry-title{display:none}

/* ---- explicit colours ----
   GeneratePress sets heading/body colour with higher specificity than our
   scoped rules, which rendered the headline black-on-black. We are deliberately
   re-theming these pages, so force the palette here. */
body.imx-aff .imx-auth .imx-auth__title{color:#f4f1ea!important}
body.imx-aff .imx-auth .imx-auth__title em{color:transparent!important}
body.imx-aff .imx-auth .imx-auth__panel-head h2{color:#f4f1ea!important}
body.imx-aff .imx-auth .imx-auth__panel-head p,
body.imx-aff .imx-auth .imx-auth__lede,
body.imx-aff .imx-auth .imx-auth__points li,
body.imx-aff .imx-auth .imx-auth__alt{color:#9c968c!important}
body.imx-aff .imx-auth .imx-auth__points b{color:#f4f1ea!important}
body.imx-aff .imx-auth .affwp-form label{color:#9c968c!important}
body.imx-aff .imx-auth .affwp-form input[type=text],
body.imx-aff .imx-auth .affwp-form input[type=email],
body.imx-aff .imx-auth .affwp-form input[type=password]{color:#f4f1ea!important}
body.imx-aff .imx-auth .affwp-form a,
body.imx-aff .imx-auth .imx-auth__alt a{color:#e8a13a!important}
body.imx-aff .imx-auth .affwp-form input[type=submit]{color:#150d02!important}

/* active/current nav item must not paint a light box on the dark header */
.imx-nav .main-navigation .main-nav ul li.current-menu-item > a,
.imx-nav .main-navigation .main-nav ul li.current_page_item > a,
.imx-nav .main-navigation .main-nav ul li:hover > a{
  background:transparent!important;color:#ffcd76!important;
}
.imx-nav .main-navigation .main-nav ul li > a{background:transparent!important}
