:root{
  --bg:#06070b;
  --bg2:#0b0e17;
  --ink:#f7f8fb;
  --muted:#aeb6c7;
  --card:#10131f;
  --card2:#151927;
  --line:rgba(255,255,255,.10);
  --blue:#1976d2;
  --blue2:#4aa3ff;
  --pink:#ef4cff;
  --purple:#8e55ff;
  --danger:#ff6b6b;
  --shadow:0 24px 70px rgba(0,0,0,.34);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.shell{width:min(1120px,calc(100% - 32px));margin:auto}
.hidden{display:none!important}

/* Navigation */
.topbar{position:sticky;top:0;z-index:30;background:rgba(6,7,11,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.topbar-home{position:absolute;left:0;right:0;background:linear-gradient(to bottom,rgba(0,0,0,.62),transparent);border-bottom:0;backdrop-filter:none}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand-lockup{display:inline-flex;align-items:center;gap:11px;font-weight:800;letter-spacing:.12em;font-size:13px}
.brand-lockup img{width:40px;height:40px;object-fit:cover;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.nav-link,.ghost{font-size:14px;font-weight:700;color:#d8deea}
.ghost{border:1px solid var(--line);background:rgba(255,255,255,.05);border-radius:12px;padding:9px 12px;cursor:pointer}

/* Home hero */
.home-hero{position:relative;min-height:92vh;display:flex;align-items:center;background:url('assets/home-party.jpg') center center/cover no-repeat;overflow:hidden}
.home-hero:after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(to bottom,transparent,var(--bg));pointer-events:none}
.home-hero-overlay{position:absolute;inset:0;background:linear-gradient(105deg,rgba(3,5,11,.86) 0%,rgba(9,12,24,.62) 45%,rgba(44,5,67,.38) 100%)}
.home-hero-content{position:relative;z-index:2;padding:128px 0 86px}
.hero-logo{width:clamp(112px,14vw,166px);aspect-ratio:1;border-radius:50%;object-fit:cover;box-shadow:0 22px 70px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.14);margin-bottom:24px}
.eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.17em;color:var(--blue2);margin-bottom:11px}
.eyebrow-light{color:#fff}
.home-hero h1{font-size:clamp(46px,7.5vw,86px);line-height:.96;letter-spacing:-.065em;margin:0;max-width:900px;text-shadow:0 8px 35px rgba(0,0,0,.42)}
.home-hero h1 span{background:linear-gradient(90deg,#9dccff 0%,#fff 34%,#ff9af4 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.home-hero p{font-size:clamp(16px,2vw,19px);line-height:1.6;color:#eef1f7;max-width:620px;margin:24px 0 0;text-shadow:0 4px 24px rgba(0,0,0,.45)}
.hero-cta{display:inline-flex;align-items:center;gap:10px;margin-top:30px;padding:14px 18px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(8,10,18,.42);backdrop-filter:blur(10px);font-weight:800;font-size:14px;transition:.2s transform,.2s background}
.hero-cta:hover{transform:translateY(-2px);background:rgba(25,118,210,.35)}
.hero-cta span{font-size:18px}

/* Events */
.events-zone{position:relative;background:radial-gradient(circle at 20% 0%,rgba(25,118,210,.18),transparent 35%),radial-gradient(circle at 90% 10%,rgba(239,76,255,.12),transparent 34%),var(--bg)}
.section{padding:62px 0 82px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:24px}
.section-head h2,.signup-card h2,.admin-card h2{margin:0;font-size:clamp(28px,4vw,36px);letter-spacing:-.045em}
.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.event-card{background:linear-gradient(180deg,rgba(22,26,40,.96),rgba(12,15,24,.98));border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);transition:.2s transform,.2s border-color,.2s box-shadow}
.event-card:hover{transform:translateY(-5px);border-color:rgba(91,169,255,.45);box-shadow:0 26px 75px rgba(0,0,0,.48)}
.event-art{height:205px;padding:22px;display:flex;align-items:flex-end;position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(25,118,210,.96),rgba(142,85,255,.92));color:#fff}
.event-art:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(255,255,255,.30),transparent 28%),linear-gradient(20deg,rgba(0,0,0,.18),transparent 50%)}
.event-art.alt{background:linear-gradient(135deg,rgba(173,40,197,.96),rgba(239,76,255,.78) 45%,rgba(25,118,210,.86))}
.date-pill{position:relative;z-index:1;background:rgba(5,7,14,.45);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);padding:8px 10px;border-radius:10px;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.event-body{padding:20px}
.event-body h3{margin:0 0 9px;font-size:22px;letter-spacing:-.035em}
.meta{display:flex;flex-wrap:wrap;gap:8px 14px;color:var(--muted);font-size:13px}
.price{font-size:24px;font-weight:800;margin:19px 0 13px}
.cta,.primary{display:block;text-align:center;background:linear-gradient(90deg,var(--blue),#236bd9 48%,var(--purple));color:#fff;padding:13px 16px;border-radius:13px;font-weight:800;border:0;box-shadow:0 10px 30px rgba(25,118,210,.18);cursor:pointer}
.cta:hover,.primary:hover{filter:brightness(1.08)}
.empty{background:rgba(16,19,31,.85);border:1px dashed var(--line);border-radius:18px;padding:36px;text-align:center;color:var(--muted)}
.footer{padding:28px 0 46px;color:var(--muted);font-size:13px;border-top:1px solid rgba(255,255,255,.06)}
.footer-brand{display:flex;align-items:center;gap:10px}
.footer-brand img{width:32px;height:32px;border-radius:50%}

/* Event / inner pages */
.inner-page{min-height:100vh;background:radial-gradient(circle at 0% 0%,rgba(25,118,210,.15),transparent 30%),radial-gradient(circle at 100% 20%,rgba(239,76,255,.10),transparent 30%),var(--bg)}
.event-page{padding:42px 0 76px;display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:start}
.event-detail-card,.signup-card,.admin-card{background:linear-gradient(180deg,rgba(20,24,37,.98),rgba(12,15,24,.98));border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}
.event-detail-card{overflow:hidden}
.detail-art{min-height:335px;padding:30px;display:flex;align-items:flex-end;position:relative;background:linear-gradient(135deg,rgba(25,118,210,.94),rgba(142,85,255,.82) 50%,rgba(239,76,255,.74));color:white;overflow:hidden}
.detail-art:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(3,4,10,.60),transparent 55%),url('assets/home-party.jpg') center/cover no-repeat;mix-blend-mode:soft-light;opacity:.72}
.detail-art>div{position:relative;z-index:1}
.detail-art h1{font-size:clamp(38px,6vw,64px);line-height:1;letter-spacing:-.055em;margin:0;text-shadow:0 7px 28px rgba(0,0,0,.35)}
.detail-content{padding:28px}
.detail-content p,.card-intro,.admin-card p{color:var(--muted);line-height:1.65}
.detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}
.stat{background:rgba(255,255,255,.045);border:1px solid var(--line);padding:14px;border-radius:14px}
.stat strong{display:block;font-size:15px;color:#fff}
.stat span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.signup-card{padding:28px;position:sticky;top:96px}
.card-intro{font-size:14px;margin:10px 0 0}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.form-grid.compact{margin-top:16px}
.full{grid-column:1/-1}
label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;color:#e9edf5}
input,select,textarea{width:100%;border:1px solid var(--line);background:#0b0e17;border-radius:12px;padding:12px 13px;color:var(--ink);outline:none}
input::placeholder,textarea::placeholder{color:#6f788b}
input:focus,select:focus,textarea:focus{border-color:rgba(74,163,255,.75);box-shadow:0 0 0 3px rgba(25,118,210,.17)}
select option{background:#0b0e17;color:#fff}
.check{flex-direction:row;align-items:flex-start;font-weight:500;color:var(--muted);line-height:1.45}
.check input{width:18px;margin-top:2px;accent-color:var(--blue)}
.message{margin-top:16px;border-radius:12px;padding:12px 14px;font-size:14px}
.message.ok{background:rgba(36,184,116,.14);color:#7fe0ae;border:1px solid rgba(36,184,116,.22)}
.message.err{background:rgba(255,107,107,.12);color:#ff9a9a;border:1px solid rgba(255,107,107,.18)}
.payment-box{margin-top:18px;border-top:1px solid var(--line);padding-top:18px}
.pay-btn{display:block;margin-top:10px;text-align:center;padding:13px 16px;border-radius:12px;font-weight:800}
.pay-btn.paypal{background:#0070ba;color:white}
.pay-btn.revolut{background:#f7f7f8;color:#050505}
.code-box{margin-top:12px;background:#0b0e17;border:1px solid var(--line);border-radius:12px;padding:12px;font-size:13px;color:var(--muted)}
.code-box strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#fff}

/* Organizer */
.organizer-page{padding:48px 0 76px}
.admin-card{padding:24px}
.login-card{max-width:680px;margin:0 auto}
.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.inline-form{display:flex;gap:10px;margin-top:18px}
.inline-form input{flex:1}
.event-admin-item{border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:14px;padding:14px;margin-top:10px}
.event-admin-item strong{display:block}
.event-admin-item span{font-size:13px;color:var(--muted)}
.attendees-card{margin-top:20px}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse;min-width:650px}
th,td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);font-size:13px}
th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.07em}
.badge{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:12px;font-weight:700}
.badge.pending{background:rgba(255,178,36,.12);color:#ffc45a}
.badge.paid{background:rgba(36,184,116,.14);color:#7fe0ae}
.mini-btn{border:1px solid var(--line);background:#111522;color:#fff;padding:7px 9px;border-radius:9px;cursor:pointer;font-weight:700}

@media(max-width:860px){
  .event-grid{grid-template-columns:1fr 1fr}
  .event-page,.admin-grid{grid-template-columns:1fr}
  .signup-card{position:static}
  .detail-art{min-height:270px}
  .home-hero{min-height:86vh}
}
@media(max-width:600px){
  .shell{width:min(100% - 22px,1120px)}
  .nav{height:64px}
  .brand-lockup img{width:34px;height:34px}
  .brand-lockup span{font-size:11px}
  .home-hero{min-height:88svh;background-position:58% center}
  .home-hero-content{padding:104px 0 70px}
  .hero-logo{width:104px;margin-bottom:18px}
  .home-hero h1{font-size:clamp(43px,14vw,62px)}
  .home-hero p{font-size:15px;max-width:92%}
  .event-grid{grid-template-columns:1fr}
  .event-art{height:180px}
  .section{padding:46px 0 62px}
  .event-page{padding-top:22px}
  .detail-stats{grid-template-columns:1fr}
  .signup-card,.admin-card{padding:20px}
  .form-grid{grid-template-columns:1fr}
  .full{grid-column:auto}
  .inline-form{flex-direction:column}
  .section-head{align-items:flex-start;flex-direction:column}
  .section-head select{width:100%}
}

/* Language selector + admin access */
.nav-actions{display:flex;align-items:center;gap:10px;margin-left:auto}
.language-switch,.admin-login-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid rgba(255,255,255,.18);background:rgba(7,10,18,.45);backdrop-filter:blur(10px);border-radius:999px;color:#fff;font-size:12px;font-weight:800;letter-spacing:.02em}
.language-switch{padding:8px 11px;cursor:pointer}
.language-switch b{font-size:11px}
.admin-login-link{padding:8px 13px;transition:.2s background,.2s border-color,.2s transform}
.admin-login-link:hover{background:rgba(25,118,210,.34);border-color:rgba(126,188,255,.5);transform:translateY(-1px)}
.language-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;background:rgba(3,5,10,.82);backdrop-filter:blur(14px)}
.language-modal.hidden{display:none}
.language-dialog{width:min(100%,430px);background:linear-gradient(180deg,rgba(20,24,38,.99),rgba(9,12,20,.99));border:1px solid rgba(255,255,255,.15);border-radius:26px;padding:28px;box-shadow:0 35px 100px rgba(0,0,0,.58);text-align:center}
.language-logo{width:78px;height:78px;object-fit:cover;border-radius:50%;box-shadow:0 12px 38px rgba(0,0,0,.35),0 0 0 1px rgba(255,255,255,.13)}
.language-kicker{display:block;margin-top:14px;font-size:10px;font-weight:800;letter-spacing:.18em;color:#9dccff}
.language-dialog h2{margin:8px 0 8px;font-size:30px;letter-spacing:-.045em}
.language-dialog p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}
.language-options{display:grid;gap:10px;margin-top:22px}
.language-options button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#0b0e17;color:#fff;cursor:pointer;text-align:left;transition:.2s border-color,.2s transform,.2s background}
.language-options button:hover{transform:translateY(-2px);border-color:rgba(91,169,255,.6);background:#101624}
.language-options button strong{font-size:15px}
.language-options button span{font-size:11px;color:var(--muted);font-weight:800;letter-spacing:.08em}
.hero-title-white{background:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;color:#fff!important}

@media(max-width:600px){
  .nav-actions{gap:6px}
  .language-switch{padding:7px 9px}
  .admin-login-link{padding:7px 10px;font-size:10px}
  .topbar-home .brand-lockup span{display:none}
  .language-dialog{padding:24px 20px}
}


/* Admin email + password login */
.admin-login-form{display:grid;gap:14px;margin-top:20px}
.admin-login-form label{display:grid;gap:7px;font-size:13px;font-weight:700;color:var(--text)}
.admin-login-form input{width:100%;min-height:48px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.06);color:var(--text);padding:0 14px;font:inherit;outline:none}
.admin-login-form input:focus{border-color:rgba(255,255,255,.42);box-shadow:0 0 0 3px rgba(255,255,255,.06)}
.admin-login-form .primary{min-height:48px;margin-top:2px}

/* v6 — archive and permanent delete flow */
.admin-event-group + .admin-event-group{margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.admin-event-group h3{margin:0 0 10px;font-size:13px;text-transform:uppercase;letter-spacing:.09em;color:#cbd4e4}
.event-admin-item{display:flex;align-items:center;justify-content:space-between;gap:14px}
.event-admin-copy{min-width:0}
.event-admin-copy strong{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.event-admin-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.archive-btn:hover{border-color:rgba(255,196,90,.55);color:#ffd37f}
.archived-item{background:rgba(255,255,255,.015);opacity:.92}
.archived-badge{background:rgba(149,158,177,.14);color:#cbd4e4;font-size:10px;padding:4px 7px}
.danger-btn{border-color:rgba(255,107,107,.28);color:#ff9a9a;background:rgba(255,107,107,.06)}
.danger-btn:hover{border-color:rgba(255,107,107,.6);background:rgba(255,107,107,.12)}
.admin-empty{color:var(--muted);font-size:13px;margin:10px 0 0}
@media(max-width:600px){
  .event-admin-item{align-items:flex-start;flex-direction:column}
  .event-admin-actions{width:100%}
  .event-admin-actions .mini-btn{width:100%}
}

/* v7: payment reporting */
.payment-report-wrap{margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.10)}
.payment-report-wrap p{margin:0 0 10px;color:var(--muted);font-size:14px;line-height:1.5}
.payment-report-wrap .primary:disabled{opacity:.65;cursor:not-allowed}
.muted-cell{color:var(--muted);font-size:13px}


/* v9: payment status itself is the admin toggle */
.payment-status-toggle{
  appearance:none;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  padding:8px 13px;
  font:inherit;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  cursor:pointer;
  transition:transform .15s ease, border-color .15s ease, background .15s ease, box-shadow .15s ease;
  white-space:nowrap;
}
.payment-status-toggle:hover{
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.34);
  box-shadow:0 7px 18px rgba(0,0,0,.18);
}
.payment-status-toggle:active{ transform:translateY(0); }
.payment-status-toggle.pending{
  background:rgba(255,185,70,.12);
  color:#ffd18a;
}
.payment-status-toggle.paid{
  background:rgba(95,214,145,.14);
  color:#a5f2c4;
}
.payment-status-toggle:focus-visible{
  outline:2px solid rgba(255,255,255,.8);
  outline-offset:2px;
}

/* v11 — event posters + public capacity privacy */
.event-art.has-poster{background:#0c0f18}
.event-poster-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.event-art.has-poster:before{z-index:1;background:linear-gradient(to top,rgba(3,5,12,.72),rgba(3,5,12,.06) 60%),linear-gradient(20deg,rgba(25,118,210,.12),rgba(239,76,255,.10))}
.event-art .date-pill{z-index:2}
.detail-art.has-poster{background:#0c0f18}
.detail-poster-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.detail-art.has-poster:before{z-index:1;background:linear-gradient(to top,rgba(3,4,10,.78),rgba(3,4,10,.10) 62%);mix-blend-mode:normal;opacity:1}
.detail-art.has-poster>div{z-index:2}
.capacity-only{margin-top:18px!important;font-weight:700;color:#d9e0ec!important}
.poster-upload-field small{color:var(--muted);font-weight:500;line-height:1.45}
.poster-preview-wrap{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#0b0e17;max-height:320px}
.poster-preview-wrap img{display:block;width:100%;height:100%;max-height:320px;object-fit:cover}
.admin-event-poster{width:64px;height:64px;border-radius:12px;object-fit:cover;flex:0 0 64px;border:1px solid var(--line);background:#0b0e17}
.admin-event-poster.placeholder{display:grid;place-items:center;font-size:12px;font-weight:900;letter-spacing:.15em;color:#8993a6;background:linear-gradient(135deg,rgba(25,118,210,.20),rgba(142,85,255,.18))}
.poster-action{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:600px){
  .admin-event-poster{width:54px;height:54px;flex-basis:54px}
  .event-admin-item{display:grid;grid-template-columns:54px 1fr;gap:12px}
  .event-admin-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr;gap:8px}
}

/* v12 — admin attendee stats, search and removal */
.attendee-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.attendee-stat{padding:16px 18px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}
.attendee-stat span{display:block;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.attendee-stat strong{display:block;margin-top:6px;font-size:24px;letter-spacing:-.035em}
.attendee-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:4px 0 14px}
.attendee-search{display:grid;gap:7px;flex:1;max-width:520px;color:var(--muted);font-size:12px;font-weight:700}
.attendee-search input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.045);color:var(--text);padding:0 13px;font:inherit;outline:none}
.attendee-search input:focus{border-color:rgba(255,255,255,.36);box-shadow:0 0 0 3px rgba(255,255,255,.05)}
.remove-registration-btn{border:1px solid rgba(255,107,107,.26);background:rgba(255,107,107,.06);color:#ff9a9a;padding:7px 10px;border-radius:9px;cursor:pointer;font-size:12px;font-weight:800;white-space:nowrap}
.remove-registration-btn:hover{border-color:rgba(255,107,107,.58);background:rgba(255,107,107,.12)}
@media(max-width:600px){
  .attendee-stats{grid-template-columns:1fr 1fr}
  .attendee-stat{padding:14px}
  .attendee-stat strong{font-size:20px}
  .attendee-toolbar{display:block}
  .attendee-search{max-width:none}
}


/* Turnstile anti-bot verification */
.turnstile-wrap{display:flex;justify-content:flex-start;align-items:center;min-height:70px;overflow:hidden}
.turnstile-wrap .cf-turnstile{max-width:100%}
@media (max-width:520px){.turnstile-wrap{justify-content:center}}


/* v14 registration rules / cash */
.field-hint{display:block;color:var(--muted);font-size:11px;font-weight:500;line-height:1.45}
.payment-identity-notice{display:flex;flex-direction:column;gap:6px;border:1px solid rgba(255,196,90,.38);background:rgba(255,178,36,.11);border-radius:14px;padding:13px 14px;color:#ffe2a3;font-size:12px;line-height:1.5}
.payment-identity-notice strong{color:#ffc45a;font-size:11px;letter-spacing:.08em}
.legal-check{padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.025)}
.legal-check input{flex:0 0 18px}
.legal-text{font-size:9.5px;line-height:1.45;color:#8993a6;font-weight:500}
.cash-page{padding:50px 0 80px;max-width:760px}
.cash-card{margin:0 auto}
.cash-card h1{margin:0 0 14px;font-size:clamp(30px,5vw,48px)}
.cash-event-name{font-size:18px;font-weight:800;margin:8px 0 18px}
.cash-phone-box{margin:20px 0;border:1px solid rgba(74,163,255,.30);background:rgba(25,118,210,.12);border-radius:16px;padding:18px}
.cash-phone-label{display:block;color:var(--muted);font-size:12px;margin-bottom:7px}
.cash-phone{display:inline-block;font-size:clamp(24px,6vw,34px);font-weight:800;color:#fff;letter-spacing:-.03em}
.cash-note{font-size:13px;color:var(--muted);line-height:1.6}
label small{color:var(--muted);font-weight:500;line-height:1.45}


/* v15 — public capacity, Instagram, copyright, XLSX export */
.footer-main-row{display:flex;align-items:center;justify-content:space-between;gap:18px}
.instagram-link{display:inline-flex;align-items:center;gap:8px;color:#dfe7f6;text-decoration:none;font-weight:800;font-size:12px;padding:8px 11px;border:1px solid rgba(255,255,255,.10);border-radius:999px;background:rgba(255,255,255,.025);transition:.2s transform,.2s border-color,.2s background}
.instagram-link:hover{transform:translateY(-1px);border-color:rgba(221,92,255,.48);background:rgba(221,92,255,.08)}
.instagram-link svg{width:17px;height:17px;fill:currentColor}
.copyright{margin-top:14px;color:#70798a;font-size:10px;line-height:1.5}
.compact-footer{padding-top:20px}
.compact-footer .copyright{margin-top:0;text-align:center}
.export-attendees-btn{min-height:44px;padding:0 14px;white-space:nowrap}
.export-attendees-btn:disabled{opacity:.45;cursor:not-allowed}
.form-grid label small{display:block;margin-top:5px}
@media(max-width:700px){
  .footer-main-row{align-items:flex-start;flex-direction:column}
  .instagram-link{align-self:flex-start}
  .attendee-toolbar{display:grid;grid-template-columns:1fr;gap:10px}
  .export-attendees-btn{width:100%}
}

/* v18 — cleaner organizer event cards */
.event-admin-item{
  display:grid;
  grid-template-columns:64px minmax(0,1fr);
  grid-template-areas:
    "poster copy"
    "poster actions";
  align-items:start;
  gap:12px 16px;
}
.admin-event-poster{grid-area:poster}
.event-admin-copy{grid-area:copy;min-width:0}
.event-admin-copy>strong{font-size:18px;line-height:1.25;margin:1px 0 8px;color:var(--ink)}
.event-admin-meta{display:flex;flex-wrap:wrap;gap:7px 10px;min-width:0}
.event-admin-meta span{
  display:inline-flex;
  align-items:center;
  width:auto;
  max-width:100%;
  padding:5px 8px;
  border-radius:9px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.055);
  color:var(--muted);
  font-size:12px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.event-admin-actions{
  grid-area:actions;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  align-items:center;
  gap:8px;
  width:100%;
}
.event-admin-actions .mini-btn{white-space:nowrap}
@media(max-width:600px){
  .event-admin-item{
    grid-template-columns:54px minmax(0,1fr);
    grid-template-areas:
      "poster copy"
      "actions actions";
    gap:12px;
  }
  .event-admin-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .event-admin-actions .mini-btn{width:100%;white-space:normal}
  .event-admin-actions .poster-action{width:100%}
  .event-admin-copy>strong{font-size:17px}
}
@media(max-width:420px){
  .event-admin-actions{grid-template-columns:1fr}
}

.duplicate-names{margin:14px 0;padding:16px 18px;border-radius:14px;background:#151a2b!important;color:#e8ecff!important;border:1px solid rgba(255,255,255,.12);font-size:14px;line-height:1.6}.duplicate-names.warning{background:#2b2115!important;color:#fff4d6!important;border-color:rgba(255,213,138,.35)}.duplicate-names strong{display:block;margin-bottom:8px;color:#ffd58a!important}
