/* ============================================================
   BOUTIK PAM — AFILYASYON PRO · v3.0.0
   Design: Premium Fintech · Dark-navy + Teal accent
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400&family=DM+Mono:wght@400;500&display=swap');

/* ── TOKENS ── */
:root {
  --bp-bg:          #eef2fc;
  --bp-surface:     #ffffff;
  --bp-surface-2:   #f7f9ff;
  --bp-border:      #dde5f5;
  --bp-border-soft: rgba(26,86,219,.10);

  --bp-ink:         #0d1b3e;
  --bp-ink-2:       #3a4f72;
  --bp-ink-3:       #7a8aaa;
  --bp-ink-inv:     #ffffff;

  --bp-grad:        linear-gradient(135deg,#0f2460 0%,#1a56db 55%,#2ed8a8 100%);
  --bp-grad-btn:    linear-gradient(135deg,#1a56db 0%,#0f2460 100%);
  --bp-grad-wa:     linear-gradient(135deg,#0aac5e 0%,#07854a 100%);
  --bp-accent:      #2ed8a8;
  --bp-primary:     #1a56db;
  --bp-primary-dk:  #0f2460;
  --bp-wa:          #0aac5e;

  --bp-ok-bg:#ecfdf5;--bp-ok-bdr:#10b981;--bp-ok-txt:#065f46;
  --bp-warn-bg:#fffbeb;--bp-warn-bdr:#f59e0b;--bp-warn-txt:#92400e;
  --bp-err-bg:#fff1f2;--bp-err-bdr:#f43f5e;--bp-err-txt:#9f1239;

  --bp-r-xs:  8px;
  --bp-r-sm:  12px;
  --bp-r:     16px;
  --bp-r-lg:  22px;
  --bp-r-xl:  28px;
  --bp-pill:  999px;

  --bp-sh-sm: 0 2px 8px rgba(13,27,62,.06);
  --bp-sh:    0 8px 24px rgba(13,27,62,.09);
  --bp-sh-md: 0 14px 40px rgba(13,27,62,.11);
  --bp-sh-lg: 0 24px 60px rgba(13,27,62,.14);

  --bp-font:  'Plus Jakarta Sans',system-ui,sans-serif;
  --bp-mono:  'DM Mono',monospace;
  --bp-ease:  .18s cubic-bezier(.4,0,.2,1);
}

/* ── SCOPE ── */
.izy-ref-wrap,.bp-ref-guest-wrap{
  font-family:var(--bp-font);
  -webkit-font-smoothing:antialiased;
  color:var(--bp-ink);
}
.izy-ref-wrap *,.izy-ref-wrap *::before,.izy-ref-wrap *::after,
.bp-ref-guest-wrap *,.bp-ref-guest-wrap *::before,.bp-ref-guest-wrap *::after{
  box-sizing:border-box;
}

/* ── WRAPPER ── */
.izy-ref-wrap{
  max-width:1120px;
  margin:24px auto;
  padding:20px;
  background:var(--bp-bg);
  border-radius:var(--bp-r-xl);
  border:1px solid var(--bp-border-soft);
}

/* ====================================================
   HERO
   ==================================================== */
.izy-ref-hero{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(260px,.85fr);
  gap:20px;
  align-items:stretch;
  background:var(--bp-grad);
  border-radius:var(--bp-r-lg);
  padding:28px 26px;
  color:var(--bp-ink-inv);
  box-shadow:0 20px 50px rgba(15,36,96,.28),0 1px 0 rgba(255,255,255,.10) inset;
  position:relative;
  overflow:hidden;
}
.izy-ref-hero::before{
  content:"";position:absolute;top:-80px;right:-80px;
  width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(46,216,168,.30) 0%,transparent 70%);
  pointer-events:none;
}
.izy-ref-hero::after{
  content:"";position:absolute;bottom:-60px;left:40%;
  width:200px;height:200px;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.10) 0%,transparent 68%);
  pointer-events:none;
}
.izy-ref-hero-main{position:relative;z-index:1;}

/* Kicker */
.izy-ref-kicker{
  display:inline-flex;align-items:center;gap:7px;
  padding:6px 14px;border-radius:var(--bp-pill);
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.20);
  font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.90);backdrop-filter:blur(8px);
}
.izy-ref-kicker-dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--bp-accent);box-shadow:0 0 0 3px rgba(46,216,168,.35);
}

.izy-ref-title{
  margin:14px 0 0;
  font-size:clamp(22px,3vw,32px);font-weight:900;line-height:1.08;
  color:#fff;letter-spacing:-.02em;
}
.izy-ref-sub{
  margin-top:8px;font-size:14px;color:rgba(255,255,255,.78);
  font-weight:500;line-height:1.5;
}
.izy-ref-sub-strong{
  font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:rgba(255,255,255,.82)!important;margin-top:10px;
}

/* Promo box */
.izy-ref-promo-box{
  margin-top:20px;display:inline-flex;flex-direction:column;gap:8px;
  padding:16px 18px;border-radius:var(--bp-r);
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(10px);
}
.izy-ref-promo-label{
  font-size:10px;font-weight:800;letter-spacing:.10em;
  text-transform:uppercase;color:rgba(255,255,255,.65);
}
.izy-ref-promo-code-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.izy-ref-promo-eq{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:var(--bp-pill);
  background:rgba(255,255,255,.14);font-size:22px;font-weight:900;color:#fff;flex-shrink:0;
}
.izy-ref-promo-code{
  display:inline-flex;align-items:center;min-height:48px;padding:10px 18px;
  border-radius:var(--bp-r-sm);background:#fff;color:var(--bp-ink);
  font-family:var(--bp-mono);font-size:clamp(16px,2.2vw,22px);font-weight:500;
  letter-spacing:.04em;border:1px solid rgba(255,255,255,.4);
  box-shadow:0 10px 30px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.8);
  word-break:break-word;
}

/* Hero actions */
.izy-ref-actions-hero{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;
  align-content:start;position:relative;z-index:1;
}
.izy-ref-actions-hero-single{grid-template-columns:1fr!important;align-content:center;}

/* Share button */
.izy-ref-btn-share{
  min-height:68px;
  border-radius:var(--bp-r)!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--bp-primary-dk)!important;
  border:1px solid rgba(255,255,255,.4);
  box-shadow:0 16px 36px rgba(0,0,0,.20);
  font-size:16px!important;font-weight:800!important;
  display:inline-flex!important;align-items:center;justify-content:flex-start;
  gap:12px;padding:14px 20px!important;
  transition:all var(--bp-ease)!important;
}
.izy-ref-btn-share:hover{transform:translateY(-2px);box-shadow:0 22px 44px rgba(0,0,0,.24)!important;}

.izy-ref-btn-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;border-radius:var(--bp-pill);
  background:var(--bp-grad-btn);color:#fff;font-size:18px;font-weight:900;
  box-shadow:0 8px 20px rgba(26,86,219,.35);flex-shrink:0;
}

.izy-ref-share-mini{
  display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;border-radius:var(--bp-pill);
  font-size:11px;font-weight:900;letter-spacing:.01em;
  box-shadow:0 4px 12px rgba(0,0,0,.18);flex-shrink:0;
}
.izy-ref-share-mini+.izy-ref-share-mini{margin-left:4px;}
.izy-ref-share-mini-wa{background:var(--bp-grad-wa);color:#fff;margin-left:auto;}
.izy-ref-share-mini-fb{background:#1877F2;color:#fff;font-family:Arial,sans-serif;font-size:15px;}

/* ====================================================
   BUTTONS (global)
   ==================================================== */
.izy-ref-btn{
  appearance:none;border:0;
  border-radius:var(--bp-r-sm)!important;
  padding:13px 20px;
  font-family:var(--bp-font);font-weight:800!important;font-size:14px;
  cursor:pointer;
  background:var(--bp-grad-btn);color:#fff;
  text-decoration:none;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  transition:transform var(--bp-ease),box-shadow var(--bp-ease),opacity var(--bp-ease);
  box-shadow:0 6px 18px rgba(26,86,219,.28);
  position:relative;overflow:hidden;
}
.izy-ref-btn::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(120deg,rgba(255,255,255,0) 20%,rgba(255,255,255,.18) 50%,rgba(255,255,255,0) 80%);
  transform:translateX(-120%);
}
.izy-ref-btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(26,86,219,.32);}
.izy-ref-btn:hover::after{animation:bpShine .8s ease;}
.izy-ref-btn:active{transform:translateY(0);opacity:.9;}
@keyframes bpShine{from{transform:translateX(-120%)}to{transform:translateX(120%)}}

.izy-ref-btn-ghost{
  background:var(--bp-surface);border:1.5px solid var(--bp-border)!important;
  color:var(--bp-ink);box-shadow:var(--bp-sh-sm);
}
.izy-ref-btn-ghost:hover{box-shadow:var(--bp-sh);border-color:var(--bp-primary)!important;}
.izy-ref-btn-wa{background:var(--bp-grad-wa);box-shadow:0 6px 18px rgba(10,172,94,.28);}
.izy-ref-btn-wa:hover{box-shadow:0 12px 28px rgba(10,172,94,.32);}
.izy-ref-btn-block{width:100%;margin-top:18px;}
.izy-ref-btn-sm{padding:9px 16px;font-size:13px;}
.izy-ref-btn-fb{text-decoration:none;}

/* ====================================================
   ALERTS
   ==================================================== */
.izy-ref-alert{
  display:flex;align-items:flex-start;gap:10px;
  border-radius:var(--bp-r-sm);padding:14px 16px;margin:14px 0;
  font-weight:600;font-size:14px;border:1.5px solid;line-height:1.5;
}
.izy-ref-alert-ok  {background:var(--bp-ok-bg);border-color:var(--bp-ok-bdr);color:var(--bp-ok-txt);}
.izy-ref-alert-warn{background:var(--bp-warn-bg);border-color:var(--bp-warn-bdr);color:var(--bp-warn-txt);}
.izy-ref-alert-err {background:var(--bp-err-bg);border-color:var(--bp-err-bdr);color:var(--bp-err-txt);}
.izy-ref-alert-ip{border-left-width:5px;border-left-style:solid;}
.izy-ref-inline{display:inline-flex;align-items:center;gap:10px;margin-left:10px;}

/* ====================================================
   STAT CARDS
   ==================================================== */
.izy-ref-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0;
}
.izy-ref-grid-top{margin-top:20px;}

.izy-ref-card{
  background:var(--bp-surface);border:1px solid var(--bp-border);
  border-radius:var(--bp-r);padding:18px 16px;
  position:relative;overflow:hidden;
  transition:transform var(--bp-ease),box-shadow var(--bp-ease);
}
.izy-ref-card:hover{transform:translateY(-2px);box-shadow:var(--bp-sh-md);}

.izy-ref-stat-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--bp-grad-btn);
  border-radius:var(--bp-r) var(--bp-r) 0 0;
}
.izy-ref-stat-card::after{
  content:"";position:absolute;bottom:-40px;right:-40px;
  width:120px;height:120px;border-radius:50%;
  background:radial-gradient(circle,rgba(26,86,219,.09) 0%,transparent 70%);
  pointer-events:none;
}

.izy-ref-card-label{
  display:flex;align-items:center;gap:8px;
  font-size:11px;font-weight:800;letter-spacing:.07em;
  text-transform:uppercase;color:var(--bp-ink-3);
}
.izy-ref-label-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;border-radius:9px;
  background:linear-gradient(135deg,#eef3ff,#e0e9ff);
  font-size:14px;border:1px solid rgba(26,86,219,.10);
}
.izy-ref-card-value{
  margin-top:10px;
  font-size:clamp(22px,2.5vw,30px);font-weight:900;
  color:var(--bp-ink);letter-spacing:-.02em;line-height:1;
}

/* ====================================================
   PANELS
   ==================================================== */
.izy-ref-panel{
  background:var(--bp-surface);border:1px solid var(--bp-border);
  border-radius:var(--bp-r-lg);padding:20px;margin-top:16px;
  box-shadow:var(--bp-sh-sm);
  transition:transform var(--bp-ease),box-shadow var(--bp-ease);
}
.izy-ref-panel:hover{transform:translateY(-1px);box-shadow:var(--bp-sh);}
.izy-ref-panel h3{
  margin:0 0 14px;font-size:16px;font-weight:800;
  color:var(--bp-ink);letter-spacing:-.01em;
}
.izy-ref-panel-accent{
  background:linear-gradient(180deg,#fff 0%,#f4f8ff 100%);
  border-color:#c8d8f8;
}
.izy-ref-muted{color:var(--bp-ink-3);font-size:13.5px;line-height:1.55;}

.izy-ref-section-head{
  display:flex;justify-content:space-between;align-items:flex-start;
  gap:12px;margin-bottom:14px;flex-wrap:wrap;
}
.izy-ref-eyebrow{
  font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--bp-primary);margin-bottom:5px;
}
.izy-ref-mini-badge{
  display:inline-flex;align-items:center;justify-content:center;
  padding:8px 14px;border-radius:var(--bp-pill);
  background:linear-gradient(135deg,#dbeafe,#ede9fe);border:1px solid #c7d2fe;
  color:var(--bp-primary-dk);font-weight:800;font-size:12px;
}
.izy-ref-deadline{
  display:inline-flex;align-items:center;gap:8px;
  margin:6px 0 16px;padding:10px 16px;border-radius:var(--bp-r-sm);
  background:#eff6ff;border:1.5px solid #bfdbfe;
  color:var(--bp-primary);font-weight:800;font-size:14px;
}

/* Referrer card */
.izy-ref-referrer-card{position:relative;overflow:hidden;}
.izy-ref-referrer-card::before{
  content:"";position:absolute;right:-60px;top:-60px;
  width:180px;height:180px;border-radius:50%;
  background:radial-gradient(circle,rgba(26,86,219,.12) 0%,transparent 70%);
  pointer-events:none;
}
.izy-ref-referrer-box{
  display:flex;align-items:center;gap:16px;padding:16px;
  border-radius:var(--bp-r-sm);
  background:linear-gradient(135deg,#f8fbff 0%,#eef5ff 100%);
  border:1px solid #dde8fb;
}
.izy-ref-avatar{
  width:54px;height:54px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;font-weight:900;color:#fff;
  background:var(--bp-grad-btn);
  box-shadow:0 10px 24px rgba(26,86,219,.28);flex-shrink:0;
}
.izy-ref-referrer-name{font-size:18px;font-weight:900;color:var(--bp-ink);margin-bottom:4px;}

/* ====================================================
   FORM ENGINE
   ==================================================== */
.izy-ref-wrap input,
.izy-ref-wrap select,
.izy-ref-wrap textarea,
.izy-ref-wrap button{
  all:unset;box-sizing:border-box;font-family:var(--bp-font);
}
.izy-ref-form-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
.izy-ref-form-grid>div{width:100%!important;}

.izy-ref-wrap label{
  display:block;margin-bottom:7px;
  font-weight:700;font-size:12.5px;letter-spacing:.04em;
  text-transform:uppercase;color:var(--bp-ink-2);
}
.izy-ref-help{margin-top:5px;font-size:12px;color:var(--bp-ink-3);font-weight:500;}

.izy-ref-wrap input[type="text"],
.izy-ref-wrap input[type="number"],
.izy-ref-wrap select,
.izy-ref-input,
.izy-ref-select{
  display:block!important;width:100%!important;min-width:100%!important;
  padding:14px 16px!important;min-height:52px!important;
  border-radius:var(--bp-r-sm)!important;border:1.5px solid var(--bp-border)!important;
  background:var(--bp-surface-2)!important;
  font-size:15px!important;font-weight:600!important;color:var(--bp-ink)!important;
  line-height:1.4;
  transition:border-color var(--bp-ease),box-shadow var(--bp-ease);
}
.izy-ref-wrap input:focus,
.izy-ref-wrap select:focus,
.izy-ref-input:focus,
.izy-ref-select:focus{
  outline:none!important;border-color:var(--bp-primary)!important;
  background:#fff!important;box-shadow:0 0 0 4px rgba(26,86,219,.12)!important;
}

.izy-ref-wrap form button,
.izy-ref-btn-block{
  display:block!important;width:100%!important;margin-top:18px;
  padding:16px 24px;background:var(--bp-grad-btn);color:#fff;
  border-radius:var(--bp-r-sm)!important;
  font-family:var(--bp-font)!important;font-size:16px!important;font-weight:800!important;
  cursor:pointer;text-align:center;
  box-shadow:0 8px 24px rgba(26,86,219,.28);
  transition:transform var(--bp-ease),box-shadow var(--bp-ease);
  position:relative;overflow:hidden;
}
.izy-ref-wrap form button:hover,
.izy-ref-btn-block:hover{
  transform:translateY(-2px);box-shadow:0 14px 32px rgba(26,86,219,.34);
}

.izy-ref-row{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px;
}
.izy-ref-row-stack-mobile{align-items:flex-end;}
.izy-ref-row-stack-mobile input{flex:1;min-width:200px;}
.izy-ref-row-stack-mobile .izy-ref-btn{flex-shrink:0;}

/* ====================================================
   SELECT standalone (chart period)
   ==================================================== */
.izy-ref-label{font-weight:700;font-size:14px;color:var(--bp-ink-2);}
.izy-ref-select{
  padding:10px 14px!important;
  min-height:unset!important;width:auto!important;min-width:unset!important;
  font-size:14px!important;border-radius:var(--bp-r-sm)!important;
  border:1.5px solid var(--bp-border)!important;
  background:var(--bp-surface)!important;
  font-weight:600!important;cursor:pointer;
}

/* ====================================================
   CHART
   ==================================================== */
.izy-ref-chart-wrap{
  position:relative;height:320px;margin-top:14px;
  background:linear-gradient(180deg,#fff 0%,var(--bp-surface-2) 100%);
  border:1px solid var(--bp-border);border-radius:var(--bp-r);
  padding:14px;box-shadow:var(--bp-sh-sm);
}
.izy-ref-note{margin-top:12px;color:var(--bp-ink-3);font-size:12.5px;line-height:1.5;}

/* ====================================================
   TABLE
   ==================================================== */
.izy-ref-table{
  margin-top:12px;border:1px solid var(--bp-border);
  border-radius:var(--bp-r);overflow:hidden;background:var(--bp-surface);
}
.izy-ref-tr{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;
  border-top:1px solid var(--bp-border);
}
.izy-ref-tr:first-child{border-top:none;}
.izy-ref-th{background:#f0f5ff;}
.izy-ref-th>div,.izy-ref-tr>div{padding:13px 14px;font-size:13.5px;}
.izy-ref-th>div{
  font-size:11px;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:var(--bp-ink-2);
}
.izy-ref-tr:not(.izy-ref-th):hover{background:var(--bp-surface-2);}
.izy-ref-pill{
  display:inline-flex;align-items:center;padding:4px 12px;
  border-radius:var(--bp-pill);
  background:linear-gradient(135deg,#dbeafe,#ede9fe);border:1px solid #c7d2fe;
  color:var(--bp-primary-dk);font-weight:700;font-size:12px;
}

/* ====================================================
   TOAST
   ==================================================== */
.izy-ref-toast{
  position:fixed;left:50%;bottom:24px;
  transform:translateX(-50%);
  padding:12px 22px;border-radius:var(--bp-pill);
  background:var(--bp-ink);color:#fff;
  font-family:var(--bp-font);font-size:14px;font-weight:700;
  letter-spacing:.01em;opacity:0;pointer-events:none;
  transition:opacity .22s ease,transform .22s ease;
  z-index:999999;box-shadow:0 12px 40px rgba(0,0,0,.26);
  white-space:nowrap;
}
.izy-ref-toast.show{opacity:1;transform:translateX(-50%) translateY(-5px);}

/* ====================================================
   BADGE (legacy)
   ==================================================== */
.izy-ref-badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px;border-radius:var(--bp-pill);
  background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.20);
  color:#fff;font-weight:700;font-size:13px;backdrop-filter:blur(8px);
}
.izy-ref-hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.izy-ref-hero-chip{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 14px;border-radius:var(--bp-pill);
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);
  font-weight:700;color:#fff;font-size:13px;
}
.izy-ref-hero-chip-soft{background:rgba(15,23,42,.26);}

/* ====================================================
   GUEST / LOGIN CARD
   ==================================================== */
.bp-ref-guest-wrap{display:flex;justify-content:center;padding:12px 0 6px;}
.bp-ref-guest-card{
  position:relative;overflow:hidden;
  width:min(100%,820px);padding:36px 32px;border-radius:var(--bp-r-xl);
  background:var(--bp-grad);
  box-shadow:var(--bp-sh-lg),0 1px 0 rgba(255,255,255,.12) inset;
  color:#fff;border:1px solid rgba(255,255,255,.12);
}
.bp-ref-guest-card::before{
  content:"";position:absolute;right:-90px;top:-90px;
  width:280px;height:280px;border-radius:50%;
  background:radial-gradient(circle,rgba(46,216,168,.38) 0%,transparent 68%);
}
.bp-ref-guest-card::after{
  content:"";position:absolute;left:-100px;bottom:-120px;
  width:300px;height:300px;border-radius:50%;
  background:radial-gradient(circle,rgba(26,86,219,.32) 0%,transparent 70%);
}
.bp-ref-guest-badge,.bp-ref-guest-title,.bp-ref-guest-text,
.bp-ref-guest-grid,.bp-ref-guest-note{position:relative;z-index:1;}

.bp-ref-guest-badge{
  display:inline-flex;align-items:center;gap:9px;
  padding:9px 16px;border-radius:var(--bp-pill);
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.20);
  font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  margin-bottom:18px;backdrop-filter:blur(8px);color:rgba(255,255,255,.95);
}
.bp-ref-guest-title{
  margin:0 0 12px;
  font-size:clamp(26px,4vw,40px);line-height:1.05;
  font-weight:900;letter-spacing:-.025em;color:#fff;
}
.bp-ref-guest-text{
  margin:0 0 22px;max-width:680px;
  font-size:15px;line-height:1.7;color:rgba(255,255,255,.88);font-weight:500;
}
.bp-ref-guest-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;margin:24px 0;
}
.bp-ref-guest-item{
  display:flex;align-items:flex-start;gap:14px;padding:18px;
  border-radius:var(--bp-r);
  background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(10px);
  transition:background var(--bp-ease),transform var(--bp-ease);
}
.bp-ref-guest-item:hover{background:rgba(255,255,255,.16);transform:translateY(-2px);}
.bp-ref-guest-icon{
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 48px;width:48px;height:48px;border-radius:15px;
  background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.20);
  font-size:24px;box-shadow:0 8px 20px rgba(0,0,0,.15);
}
.bp-ref-guest-item strong{display:block;font-size:15px;font-weight:800;color:#fff;margin-bottom:5px;}
.bp-ref-guest-item small{display:block;font-size:13px;line-height:1.55;color:rgba(255,255,255,.80);font-weight:500;}
.bp-ref-guest-note{margin:0 0 22px;font-size:14px;color:rgba(255,255,255,.90);font-weight:500;}

/* ====================================================
   RESPONSIVE
   ==================================================== */
@media (max-width:900px){
  .izy-ref-hero{grid-template-columns:1fr;}
  .izy-ref-actions-hero{grid-template-columns:1fr 1fr;}
  .izy-ref-hero .izy-ref-title{font-size:26px;}
  .bp-ref-guest-grid{grid-template-columns:1fr;}
  .bp-ref-guest-card{padding:26px 22px;}
}
@media (max-width:640px){
  .izy-ref-wrap{padding:14px;border-radius:var(--bp-r-lg);margin:12px auto;}
  .izy-ref-grid{grid-template-columns:1fr;}
  .izy-ref-actions-hero,.izy-ref-actions-hero-single{grid-template-columns:1fr!important;}
  .izy-ref-form-grid{grid-template-columns:1fr!important;}
  .izy-ref-row-stack-mobile{flex-direction:column;align-items:stretch;}
  .izy-ref-row-stack-mobile input,.izy-ref-row-stack-mobile .izy-ref-btn{width:100%;flex:none;min-width:0;}
  .izy-ref-card-value{font-size:24px;}
  .izy-ref-hero{padding:20px 16px;}
  .izy-ref-section-head{align-items:stretch;}
  .izy-ref-mini-badge{width:100%;justify-content:center;}
  .izy-ref-referrer-box{align-items:flex-start;}
  .izy-ref-tr{grid-template-columns:1fr;border-radius:var(--bp-r-sm);margin-bottom:10px;border:1px solid var(--bp-border);}
  .izy-ref-th{display:none;}
  .izy-ref-promo-code{width:100%;justify-content:center;font-size:clamp(16px,6vw,22px);}
  .izy-ref-promo-code-wrap{align-items:stretch;}
  .izy-ref-promo-eq{display:none;}
  .bp-ref-guest-card{padding:20px 16px;border-radius:var(--bp-r-lg);}
  .bp-ref-guest-title{font-size:26px;}
  .izy-ref-wrap input[type="text"],
  .izy-ref-wrap input[type="number"],
  .izy-ref-wrap select{min-height:56px!important;font-size:17px!important;}
  .izy-ref-wrap form button{min-height:58px;font-size:17px!important;}
  .izy-ref-share-mini{width:26px;height:26px;font-size:10px;}
}
