:root{--navy:#061b4e;--blue:#165dcc;--gold:#f5a623;--bg:#f4f7fb;--text:#15213b;--muted:#68768d;--green:#148a45;--red:#d93025;--border:#dce5f2}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.topbar{background:var(--navy);color:white;text-align:center;padding:12px;font-weight:800;position:sticky;top:0;z-index:20}.shell{width:100%;max-width:none;margin:0;padding:14px 20px}.banner{border-radius:18px;overflow:hidden;box-shadow:0 12px 35px #061b4e20;background:#061b4e}.banner img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center}.card{background:white;border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:0 8px 24px #061b4e12;margin:12px 0}.gateway{max-width:720px;margin:14px auto;text-align:center}.status{display:inline-block;border-radius:999px;padding:7px 13px;font-weight:900}.status.closed{background:#ffe7e7;color:#a10d0d}.status.open{background:#e6f7ed;color:#0c7137}.muted{color:var(--muted);line-height:1.5}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:block;text-align:left;font-weight:800;color:var(--navy);margin:8px 0}input,select,textarea{width:100%;border:1px solid #cdd8ea;border-radius:12px;padding:12px;background:white;margin-top:6px;min-height:46px}textarea{min-height:100px}.btn{border:0;border-radius:12px;padding:11px 15px;font-weight:900;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn.primary{background:var(--navy);color:white}.btn.success{background:var(--green);color:white}.btn.danger{background:var(--red);color:white}.btn.outline{background:white;color:var(--navy);border:1px solid #b9c8e0}.btn.small{padding:7px 10px;font-size:13px}.btn.wide{width:100%;margin-top:10px}.login-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.login-tabs button{border:1px solid var(--border);background:#f8faff;padding:11px;border-radius:11px;font-weight:800}.login-tabs button.active{background:var(--navy);color:white}.appbar{display:flex;justify-content:space-between;align-items:center;background:var(--navy);color:white;padding:14px;border-radius:16px;margin-bottom:10px}.appbar small{display:block;opacity:.8;margin-top:3px}nav{display:flex;gap:8px;overflow:auto;padding:6px 0}nav button{white-space:nowrap;border:1px solid var(--border);background:white;color:var(--navy);padding:10px 13px;border-radius:11px;font-weight:800}nav button.active{background:var(--blue);color:white}.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.kpi{background:white;border:1px solid var(--border);border-radius:14px;padding:13px;text-align:center}.kpi b{display:block;font-size:25px;color:var(--navy)}.list{display:grid;gap:10px}.member-card{display:flex;gap:12px;align-items:center;background:white;border:1px solid var(--border);border-radius:15px;padding:13px}.avatar,.logo{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#eaf1ff;color:var(--navy);font-weight:900;overflow:hidden;flex:0 0 auto}.logo{border-radius:12px;background:white;border:1px solid var(--border);font-size:10px;text-align:center}.avatar img,.logo img{width:100%;height:100%;object-fit:cover}.logo img{object-fit:contain}.grow{flex:1;min-width:0}.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.tag,.badge{font-size:11px;font-weight:800;border-radius:999px;padding:5px 8px;background:#edf3ff;color:var(--navy)}.badge.paid,.badge.present,.badge.accepted,.badge.confirmed{background:#e6f7ed;color:#0c7137}.badge.pending,.badge.waitlist{background:#fff1df;color:#8a4d00}.badge.rejected,.badge.cancelled,.badge.absent{background:#ffe7e7;color:#a10d0d}.actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.tablewrap{overflow:auto;border:1px solid var(--border);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:900px;background:white}th,td{padding:10px;border-bottom:1px solid #e7edf6;text-align:left;font-size:13px}th{background:var(--navy);color:white;position:sticky;top:0}.modal{position:fixed;inset:0;background:#061b4ebb;display:grid;place-items:center;padding:15px;z-index:50}.modal-box{background:white;border-radius:18px;padding:20px;width:min(700px,100%);max-height:92vh;overflow:auto;position:relative}.modal-close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:28px}.loader{position:fixed;inset:0;background:#ffffffcc;display:grid;place-items:center;z-index:100;font-weight:900;color:var(--navy)}.hidden{display:none!important}.alert{border-radius:12px;padding:12px;margin:10px 0;background:#eef3ff}.alert.success{background:#e6f7ed;color:#0c7137}.alert.danger{background:#ffe7e7;color:#a10d0d}.setup-body{display:grid;place-items:center;min-height:100vh;padding:20px}.setup-card{width:min(760px,100%);background:white;border:1px solid var(--border);border-radius:20px;padding:25px;box-shadow:0 15px 50px #061b4e20}.profile-hero{background:linear-gradient(135deg,#061b4e,#165dcc);color:white;border-radius:18px;padding:20px;display:grid;grid-template-columns:auto auto 1fr;gap:14px;align-items:center}.profile-hero .avatar{width:90px;height:90px;border:4px solid white}.profile-hero .logo{width:72px;height:72px}.schedule-row{display:grid;grid-template-columns:80px 150px 85px 1fr;gap:10px;align-items:center;border-left:5px solid var(--blue)}#toast{position:fixed;right:15px;bottom:15px;z-index:200}.toast{background:var(--navy);color:white;border-radius:12px;padding:12px 15px;margin-top:8px;box-shadow:0 8px 24px #0004}
@media(max-width:760px){.shell{padding:8px}.grid2,.kpis{grid-template-columns:1fr}.login-tabs{grid-template-columns:1fr}.profile-hero{grid-template-columns:auto 1fr}.profile-hero .logo{grid-column:1}.schedule-row{grid-template-columns:1fr}.member-card{align-items:flex-start}.actions .btn{flex:1}nav{position:sticky;top:45px;background:var(--bg);z-index:15}.banner img{max-height:none}.appbar{border-radius:12px}}

.logged-in .banner{display:none!important}

/* Full Apps Script Admin Feature Parity */
.admin-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin:12px 0}
.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.admin-section{margin-top:12px}
.admin-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-action-bar{padding-top:12px;border-top:1px solid var(--border);margin-top:14px}
.capacity-bar{border-radius:13px;padding:13px;margin:12px 0;font-weight:700}
.capacity-bar.success{background:#e6f7ed;border:1px solid #b7e3c8;color:#0c7137}
.capacity-bar.danger{background:#ffe7e7;border:1px solid #ffcaca;color:#a10d0d}
.admin-member-controls{display:grid;grid-template-columns:1fr 320px;gap:10px;margin:10px 0}
.admin-member-list{display:grid;gap:8px;max-height:720px;overflow:auto;padding-right:4px}
.admin-member-row{display:flex;gap:11px;align-items:center;border:1px solid var(--border);border-radius:14px;padding:11px;background:#fff}
.admin-member-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.admin-filter-row{display:grid;grid-template-columns:1fr 220px 220px;gap:10px}
.schedule-preview{max-height:650px}
.schedule-preview table{min-width:850px}
.badge.active{background:#e6f7ed;color:#0c7137}
.badge.disabled{background:#ffe7e7;color:#a10d0d}
.badge.pin-set,.badge.logo-uploaded{background:#e6f7ed;color:#0c7137}
.badge.temporary-pin,.badge.first-login-pin,.badge.logo-missing{background:#fff1df;color:#8a4d00}
.logged-in .banner{display:none!important}
@media(max-width:900px){
  .admin-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-grid,.admin-settings-grid{grid-template-columns:1fr}
  .admin-member-controls,.admin-filter-row{grid-template-columns:1fr}
}

/* Version 17 · My Wish List */
.btn.wishlist-btn{
  background:linear-gradient(135deg,#7b2cbf,#a855f7);
  color:#fff;
  border:1px solid #7b2cbf;
}
.btn.wishlist-btn:hover{filter:brightness(.96)}
.wishlist-kpi{cursor:pointer;border-color:#d9b8f4;background:#fcf8ff}
.wishlist-kpi b{color:#7b2cbf}
.profile-wishlist-action{
  padding:18px;
  border:1px solid #dfc4f4;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#faf2ff);
}
.profile-wishlist-action small,
.wishlist-modal-heading small,
.wishlist-note small{
  color:#7b2cbf;
  font-weight:900;
  letter-spacing:.08em;
}
.profile-wishlist-action h3{margin:5px 0}
.profile-wishlist-action p{margin:7px 0;color:var(--muted);font-size:13px;line-height:1.5}
.wishlist-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:24px;
  margin:12px 0;
  color:#fff;
  border-radius:20px;
  background:linear-gradient(135deg,#35105d,#7b2cbf 58%,#a855f7);
  box-shadow:0 15px 35px #6b2ab52b;
}
.wishlist-hero small{font-weight:900;letter-spacing:.1em;color:#ead7ff}
.wishlist-hero h1{margin:5px 0;font-size:34px}
.wishlist-hero p{margin:0;max-width:680px;line-height:1.5;color:#f4eaff}
.wishlist-hero-count{
  min-width:160px;
  padding:15px;
  text-align:center;
  border:1px solid #ffffff55;
  border-radius:16px;
  background:#ffffff18;
}
.wishlist-hero-count b{display:block;font-size:36px}
.wishlist-hero-count span{font-size:12px;font-weight:800}
.wishlist-kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.wishlist-kpis>div{
  padding:15px;
  text-align:center;
  border:1px solid #dfc4f4;
  border-radius:15px;
  background:#fff;
}
.wishlist-kpis b{display:block;font-size:26px;color:#7b2cbf}
.wishlist-kpis span{font-size:12px;color:var(--muted);font-weight:800}
.wishlist-filters{
  display:grid;
  grid-template-columns:220px 220px auto;
  gap:10px;
  align-items:end;
}
.wishlist-filters select{margin:0}
.wishlist-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}
.wishlist-card{
  padding:16px;
  border:1px solid #dfc4f4;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px #34105d10;
}
.wishlist-card.due{border-color:#f5a623;box-shadow:0 0 0 2px #f5a62322}
.wishlist-card.completed{opacity:.76;border-color:#cbd6e6}
.wishlist-member{
  display:flex;
  gap:10px;
  align-items:center;
}
.wishlist-member>.avatar,
.wishlist-member>.logo{width:52px;height:52px}
.wishlist-member .grow>b,
.wishlist-member .grow>span{display:block;margin-top:3px}
.wishlist-member .grow>span{font-size:12px;color:var(--muted)}
.wishlist-plan{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:14px;
}
.wishlist-plan>div{
  padding:10px;
  border-radius:12px;
  background:#f8f3fc;
}
.wishlist-plan small{display:block;font-size:10px;color:var(--muted);font-weight:900}
.wishlist-plan b{display:block;margin-top:4px;color:#512178}
.wishlist-note{
  min-height:78px;
  margin-top:10px;
  padding:11px;
  border-left:3px solid #a855f7;
  border-radius:8px;
  background:#fcf9ff;
}
.wishlist-note p{margin:6px 0 0;line-height:1.45;color:#46536a}
.wishlist-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:12px;
}
.wishlist-modal-heading{
  display:flex;
  align-items:center;
  gap:12px;
  padding:4px 38px 13px 0;
  border-bottom:1px solid var(--border);
}
.wishlist-modal-heading h2{margin:4px 0}
.wishlist-modal-heading p{margin:0;color:var(--muted)}
.wishlist-modal-avatar{
  width:68px;
  height:68px;
  overflow:hidden;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  background:#eee5f7;
  color:#512178;
  font-weight:900;
}
.wishlist-modal-avatar img{width:100%;height:100%;object-fit:cover}
.wishlist-form label small{display:block;margin-top:5px;color:var(--muted);font-weight:500}
.wishlist-form-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.wishlist-empty{grid-column:1/-1;text-align:center;padding:32px}
.smart-match-actions{grid-template-columns:1fr 1.25fr 1fr}

@media(max-width:900px){
  .wishlist-grid{grid-template-columns:1fr}
  .wishlist-filters{grid-template-columns:1fr 1fr}
  .wishlist-filters .btn{grid-column:1/-1}
  .smart-match-actions{grid-template-columns:1fr 1fr}
  .smart-match-actions .wishlist-btn{grid-column:1/-1}
}

@media(max-width:760px){
  .wishlist-hero{display:block;padding:18px}
  .wishlist-hero h1{font-size:26px}
  .wishlist-hero-count{margin-top:14px;min-width:0}
  .wishlist-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .wishlist-kpis>div{padding:11px 4px}
  .wishlist-kpis b{font-size:21px}
  .wishlist-filters{grid-template-columns:1fr}
  .wishlist-filters .btn{grid-column:auto}
  .wishlist-member{align-items:flex-start;flex-wrap:wrap}
  .wishlist-member .grow{min-width:calc(100% - 124px)}
  .wishlist-plan{grid-template-columns:1fr 1fr}
  .wishlist-card-actions .btn{flex:1}
  .wishlist-form-actions{display:grid;grid-template-columns:1fr}
  .profile-wishlist-action{padding:15px}
}

/* Version 16 desktop-only compact public main page.
   Keep the full 16:9 event artwork visible while preventing ultra-wide
   desktop screens from stretching it beyond the usable viewport height. */
@media (min-width:761px){
  body:not(.logged-in) .shell{
    padding-top:12px;
  }
  body:not(.logged-in) .banner{
    width:min(calc(100% - 16px),960px,103vh);
    margin:0 auto;
    border-radius:16px;
  }
  body:not(.logged-in) .banner img{
    display:block;
    width:100%;
    height:auto;
    max-height:none;
    object-fit:contain;
    object-position:center;
  }
  body:not(.logged-in) .gateway{
    margin-top:12px;
    margin-bottom:12px;
  }
}

:root{--purple:#6b2ab5}

/* Version 16 · Live Event Command Centre */
.live-command-title,
.command-centre-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.live-command-title small,
.command-centre-heading small{
  color:var(--purple);
  font-weight:900;
  letter-spacing:.1em;
}
.live-command-title h3,
.command-centre-heading h3{margin:3px 0 0}
.live-sync-indicator{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 11px;
  border:1px solid #b9e8cc;
  border-radius:999px;
  color:#08753c;
  background:#effcf4;
  font-size:12px;
  font-weight:800;
}
.live-sync-indicator i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#15b65b;
  box-shadow:0 0 0 5px rgba(21,182,91,.13);
  animation:livePulse 1.6s infinite;
}
@keyframes livePulse{50%{box-shadow:0 0 0 9px rgba(21,182,91,0)}}
.live-control-panel{
  border-top:4px solid var(--purple);
  box-shadow:0 16px 34px rgba(6,27,78,.09);
}
.live-control-actions{margin-top:14px}
.command-centre-kpis{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  margin:16px 0;
}
.command-centre-kpis>div{
  min-height:92px;
  padding:16px 12px;
  border:1px solid var(--border);
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 22px rgba(6,27,78,.06);
}
.command-centre-kpis b{
  display:block;
  color:var(--navy);
  font-size:28px;
  line-height:1;
}
.command-centre-kpis span{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}
.command-centre-kpis .danger{
  border-color:#ffc3c3;
  background:#fff3f3;
}
.command-centre-kpis .danger b{color:#c51d2c}
.command-centre-section{
  margin:18px 0;
  padding:20px;
  border:1px solid var(--border);
  border-radius:20px;
  background:linear-gradient(145deg,#f7f9ff,#fff);
}
.live-table-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.live-table-card{
  overflow:hidden;
  border:1px solid #dce3f4;
  border-top:4px solid #8090b2;
  border-radius:17px;
  background:#fff;
  box-shadow:0 8px 20px rgba(6,27,78,.06);
}
.live-table-card.started{border-top-color:#0aa957}
.live-table-card.completed{border-top-color:#2070d9;background:#f5f9ff}
.live-table-card.attention{border-color:#ffb5b5;border-top-color:#d82536;background:#fff8f8}
.live-table-card.free{
  display:flex;
  align-items:center;
  gap:15px;
  min-height:125px;
  padding:18px;
  border-style:dashed;
  border-top-width:1px;
  background:#f9fbff;
}
.live-table-card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 14px;
  border-bottom:1px solid #edf0f7;
}
.live-table-number{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--purple);
}
.live-table-number small{font-weight:900;letter-spacing:.08em}
.live-table-number b{font-size:30px;line-height:1}
.live-table-free{display:flex;flex-direction:column;gap:3px}
.live-table-free b{color:#52617d}
.live-table-free span{color:var(--muted);font-size:12px}
.live-table-members{padding:7px 14px}
.live-table-members>div{
  display:grid;
  grid-template-columns:28px 1fr 30px;
  align-items:center;
  gap:9px;
  padding:10px 0;
}
.live-table-members>div+div{border-top:1px solid #edf0f7}
.live-table-members>div>span{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:50%;
  color:#fff;
  background:#15a85a;
  font-size:12px;
  font-weight:900;
}
.live-table-members>div.absent>span{background:#d82536}
.live-table-members b,
.live-table-members small{display:block}
.live-table-members small{margin-top:3px;color:var(--muted);font-size:11px}
.icon-action{
  width:29px;
  height:29px;
  border:1px solid #ccd5e8;
  border-radius:9px;
  color:var(--purple);
  background:#fff;
  cursor:pointer;
  font-size:18px;
}
.live-table-issue{
  margin:0 12px 10px;
  padding:8px 10px;
  border-radius:9px;
  color:#a31928;
  background:#ffecee;
  font-size:12px;
  font-weight:700;
}
.live-table-actions{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:10px 12px;
  border-top:1px solid #edf0f7;
  background:#fafbfe;
}
.live-table-actions select{
  max-width:112px;
  min-height:34px;
  padding:5px 8px;
  font-size:12px;
}
.live-table-actions .btn{padding:7px 9px}
.command-centre-unmatched{margin-top:16px}
.unmatched-member-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.unmatched-member-list>span{
  padding:10px 12px;
  border:1px solid #e1e6f2;
  border-radius:12px;
  background:#fafbff;
}
.unmatched-member-list b,
.unmatched-member-list small{display:block}
.unmatched-member-list small{margin-top:3px;color:var(--muted)}
.command-centre-loading{text-align:center;color:var(--muted)}

.member-live-experience{
  overflow:hidden;
  border:1px solid #ccd7ef;
  border-radius:26px;
  color:#fff;
  background:
    radial-gradient(circle at 85% 10%,rgba(136,84,255,.55),transparent 30%),
    linear-gradient(135deg,#061b4e,#35146d 70%,#6626ae);
  box-shadow:0 22px 50px rgba(6,27,78,.25);
}
.member-live-experience>header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:25px 28px;
  border-bottom:1px solid rgba(255,255,255,.18);
}
.member-live-experience>header small{
  color:#d7c8ff;
  font-weight:900;
  letter-spacing:.11em;
}
.member-live-experience>header h1{margin:5px 0 0;color:#fff;font-size:31px}
.member-live-countdown{
  min-width:180px;
  padding:14px 18px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:17px;
  text-align:center;
  background:rgba(255,255,255,.1);
}
.member-live-countdown span{display:block;font-size:11px;font-weight:900;letter-spacing:.08em}
.member-live-countdown b{display:block;margin-top:3px;font-size:38px;font-variant-numeric:tabular-nums}
.member-live-announcement{
  padding:11px 28px;
  color:#291155;
  background:#f4dd75;
  font-weight:800;
  text-align:center;
}
.member-live-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:18px;
  padding:24px;
}
.member-live-now,
.member-live-next{
  border:1px solid rgba(255,255,255,.2);
  border-radius:20px;
  background:rgba(255,255,255,.1);
  backdrop-filter:blur(9px);
}
.member-live-now{position:relative;padding:22px}
.member-live-now>small{color:#d7c8ff;font-weight:900;letter-spacing:.1em}
.member-live-table{
  display:flex;
  align-items:flex-end;
  gap:10px;
  margin-top:10px;
}
.member-live-table span{padding-bottom:6px;font-size:17px;font-weight:900;letter-spacing:.13em}
.member-live-table b{font-size:78px;line-height:.85}
.member-live-round{margin-top:12px;color:#ddd3ff;font-weight:700}
.member-live-partner{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.18);
}
.member-live-partner .logo{
  overflow:hidden;
  display:grid;
  place-items:center;
  width:62px;
  height:62px;
  border-radius:14px;
  color:var(--navy);
  background:#fff;
  font-size:10px;
  text-align:center;
}
.member-live-partner .logo img{width:100%;height:100%;object-fit:contain}
.member-live-partner small{color:#d7c8ff;font-weight:900}
.member-live-partner h2{margin:3px 0;color:#fff}
.member-live-partner p{margin:0;color:#ddd3ff}
.member-live-status{position:absolute;top:20px;right:20px}
.member-live-next{
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  padding:22px;
}
.member-live-next small{color:#d7c8ff;font-weight:900;letter-spacing:.1em}
.member-live-next b{font-size:22px}
.member-live-next span{color:#ddd3ff;line-height:1.5}
.member-live-rest{text-align:center}
.member-live-rest .member-live-table{justify-content:center}
.member-live-rest p{color:#ddd3ff}

@media(max-width:980px){
  .command-centre-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .live-table-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .unmatched-member-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .live-command-title,
  .command-centre-heading{align-items:flex-start}
  .live-control-actions .btn{flex:1 1 44%}
  .command-centre-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .command-centre-kpis>div{min-height:78px;padding:13px 10px}
  .command-centre-kpis b{font-size:24px}
  .command-centre-section{padding:13px}
  .live-table-grid,
  .unmatched-member-list{grid-template-columns:1fr}
  .member-live-experience{border-radius:20px}
  .member-live-experience>header{
    align-items:stretch;
    flex-direction:column;
    padding:20px;
  }
  .member-live-experience>header h1{font-size:25px}
  .member-live-countdown{min-width:0}
  .member-live-layout{grid-template-columns:1fr;padding:14px}
  .member-live-table b{font-size:66px}
  .member-live-next{min-height:145px}
}

/* Version 15 – Smart Match Engine */
.smart-nav-button{
  border-color:#f5a623;
  background:#fff6e6;
  color:#7b4300;
  box-shadow:inset 0 0 0 1px rgba(245,166,35,.15);
}
.smart-nav-button::before{content:"✦";margin-right:6px;color:#e08b00}
.smart-nav-button.active{background:linear-gradient(135deg,#165dcc,#061b4e);color:#fff;border-color:#165dcc}
.smart-match-home-banner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:18px;
  align-items:center;
  margin:12px 0 16px;
  padding:21px 22px;
  border-radius:20px;
  color:#fff;
  background:
    radial-gradient(circle at 82% 10%,rgba(245,166,35,.38),transparent 28%),
    linear-gradient(135deg,#061b4e 0%,#123f98 58%,#165dcc 100%);
  box-shadow:0 14px 34px rgba(6,27,78,.22);
}
.smart-match-home-copy small{font-size:11px;font-weight:950;letter-spacing:.13em;color:#ffd37d}
.smart-match-home-copy h1{margin:5px 0 4px;font-size:28px}
.smart-match-home-copy p{margin:0;color:#e5edff;font-weight:700}
.smart-match-home-stats{display:flex;gap:8px}
.smart-match-home-stats span{
  min-width:92px;
  padding:10px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:13px;
  background:rgba(255,255,255,.11);
  text-align:center;
  font-size:10px;
  font-weight:850;
}
.smart-match-home-stats b{display:block;font-size:23px;color:#ffd37d}
.smart-match-home-action{background:#f5a623;color:#061b4e;white-space:nowrap}
.smart-match-home-action:hover{background:#ffbc43}
.smart-section-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:15px;
  margin:24px 0 12px;
}
.smart-section-heading small,
.smart-match-hero small,
.smart-match-reasons>small{
  color:var(--blue);
  font-weight:900;
  letter-spacing:.09em;
}
.smart-section-heading h3{margin:3px 0;font-size:25px;color:var(--navy)}
.smart-section-heading p{margin:0;color:var(--muted)}
.smart-match-hero{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:20px;
  margin:12px 0;
  padding:26px;
  border-radius:22px;
  color:#fff;
  background:
    radial-gradient(circle at 85% 15%,rgba(245,166,35,.34),transparent 28%),
    linear-gradient(135deg,#061b4e,#165dcc);
  box-shadow:0 15px 38px rgba(6,27,78,.24);
}
.smart-match-hero small{color:#ffd37d}
.smart-match-hero h1{margin:7px 0 5px;font-size:32px}
.smart-match-hero p{max-width:760px;margin:0;line-height:1.55;color:#e5edff}
.smart-match-score-key{
  width:126px;
  height:126px;
  display:grid;
  place-content:center;
  text-align:center;
  border:2px solid rgba(255,255,255,.45);
  border-radius:50%;
  background:rgba(255,255,255,.12);
}
.smart-match-score-key b{font-size:36px;line-height:1}
.smart-match-score-key span{margin-top:6px;font-size:11px;font-weight:900;text-transform:uppercase}
.smart-match-kpis{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:12px 0;
}
.smart-match-kpis>div{
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 16px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
}
.smart-match-kpis b{font-size:24px;color:var(--navy)}
.smart-match-kpis span{font-size:12px;font-weight:800;color:var(--muted)}
.smart-match-filters{
  display:grid;
  grid-template-columns:minmax(240px,1fr) 220px auto;
  gap:10px;
  align-items:end;
}
.smart-match-filters input,
.smart-match-filters select{margin:0}
.smart-match-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
}
.smart-match-card{
  position:relative;
  overflow:hidden;
  padding:16px;
  border:1px solid var(--border);
  border-top:4px solid #6c83aa;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px rgba(6,27,78,.10);
}
.smart-match-card.level-excellent{border-top-color:#148a45}
.smart-match-card.level-strong{border-top-color:#165dcc}
.smart-match-card.level-good{border-top-color:#f5a623}
.smart-match-card-top{
  display:grid;
  grid-template-columns:58px 48px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}
.smart-match-avatar,
.smart-match-logo{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:50%;
  color:var(--navy);
  background:#eaf1ff;
  font-weight:900;
}
.smart-match-logo{
  width:48px;
  height:48px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
  font-size:8px;
  text-align:center;
}
.smart-match-avatar img,
.smart-match-logo img{width:100%;height:100%;object-fit:cover}
.smart-match-logo img{object-fit:contain}
.smart-match-company{
  margin-top:5px;
  color:var(--navy);
  font-weight:900;
  line-height:1.35;
}
.smart-match-percent{
  min-width:70px;
  padding:9px 8px;
  border-radius:14px;
  text-align:center;
  color:#fff;
  background:var(--navy);
}
.smart-match-percent b{display:block;font-size:21px}
.smart-match-percent span{display:block;margin-top:2px;font-size:9px;text-transform:uppercase;font-weight:900}
.smart-match-reasons{
  min-height:104px;
  margin:14px 0 10px;
  padding:12px;
  border-radius:13px;
  background:#f5f8ff;
}
.smart-match-reasons p{
  display:flex;
  gap:7px;
  margin:7px 0 0;
  color:#34445f;
  font-size:12px;
  line-height:1.4;
}
.smart-match-reasons p span{color:var(--green);font-weight:900}
.smart-match-slot{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:10px 0;
  border-top:1px solid #edf1f7;
  font-size:11px;
}
.smart-match-slot b{color:var(--navy)}
.smart-match-slot span{color:var(--muted);text-align:right}
.smart-match-actions{
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:8px;
  margin-top:4px;
}
.smart-match-actions .btn{margin:0}

@media(max-width:900px){
  .smart-match-grid{grid-template-columns:1fr}
}

@media(max-width:760px){
  .smart-match-home-banner{
    grid-template-columns:1fr;
    gap:11px;
    padding:17px;
    text-align:center;
  }
  .smart-match-home-copy h1{font-size:23px}
  .smart-match-home-copy p{font-size:12px}
  .smart-match-home-stats{justify-content:center}
  .smart-match-home-stats span{flex:1;min-width:0}
  .smart-match-home-action{width:100%}
  .smart-section-heading{align-items:center}
  .smart-section-heading h3{font-size:20px}
  .smart-section-heading p{display:none}
  .smart-match-hero{
    grid-template-columns:1fr auto;
    padding:18px;
    border-radius:18px;
  }
  .smart-match-hero h1{font-size:24px}
  .smart-match-hero p{font-size:12px}
  .smart-match-score-key{width:82px;height:82px}
  .smart-match-score-key b{font-size:26px}
  .smart-match-score-key span{font-size:8px}
  .smart-match-kpis{grid-template-columns:repeat(3,1fr);gap:6px}
  .smart-match-kpis>div{
    display:block;
    padding:10px 6px;
    text-align:center;
  }
  .smart-match-kpis b{display:block;font-size:20px}
  .smart-match-kpis span{font-size:9px}
  .smart-match-filters{grid-template-columns:1fr}
  .smart-match-card{padding:13px}
  .smart-match-card-top{
    grid-template-columns:52px 42px minmax(0,1fr);
    align-items:start;
  }
  .smart-match-avatar{width:52px;height:52px}
  .smart-match-logo{width:42px;height:42px}
  .smart-match-card-top .member-name-line{grid-column:initial}
  .smart-match-percent{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-width:0;
    padding:7px;
  }
  .smart-match-percent b{font-size:18px}
  .smart-match-percent span{margin:0}
  .smart-match-reasons{min-height:0}
  .smart-match-slot{display:grid;gap:3px}
  .smart-match-slot span{text-align:left}
  .smart-match-actions{grid-template-columns:1fr 1.25fr}
  .smart-match-actions .btn{padding:10px 8px;font-size:12px}
}

@media(max-width:390px){
  .smart-match-hero{grid-template-columns:1fr}
  .smart-match-score-key{display:none}
  .smart-match-card-top{grid-template-columns:50px minmax(0,1fr)}
  .smart-match-logo{display:none}
  .smart-match-actions{grid-template-columns:1fr}
}
@media(max-width:600px){
  .admin-kpis{grid-template-columns:1fr 1fr}
  .admin-member-row{align-items:flex-start;flex-wrap:wrap}
  .admin-member-row .grow{min-width:calc(100% - 145px)}
  .admin-member-actions{width:100%}
  .admin-member-actions .btn{flex:1}
  .admin-action-bar .btn{width:100%}
}

/* Event Day Operations V1 */
.login-tabs{grid-template-columns:repeat(4,1fr)}
.live-hero{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;background:linear-gradient(135deg,#061b4e,#165dcc);color:#fff;border-radius:20px;padding:22px;margin:12px 0;box-shadow:0 14px 35px #061b4e30}
.live-hero h1{margin:4px 0;font-size:34px}.live-hero p{margin:4px 0}.live-round{text-align:center;background:#ffffff18;border:1px solid #ffffff35;border-radius:15px;padding:12px 20px}.live-round span{display:block;font-size:12px}.live-round b{font-size:34px}.countdown{font-size:38px;font-weight:950;font-variant-numeric:tabular-nums}.status-break{background:linear-gradient(135deg,#8a4d00,#f5a623)}.status-ended,.status-off{background:linear-gradient(135deg,#3b4558,#68768d)}
.live-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.live-meeting{display:flex;gap:15px;align-items:center;border-left:6px solid var(--blue)}.live-meeting h2{margin:4px 0;color:var(--blue)}
.qr-card{text-align:center;max-width:520px;margin:15px auto}.qr-card #memberQr{display:grid;place-items:center;padding:18px}.qr-card #memberQr img,.qr-card #memberQr canvas{max-width:100%;height:auto}
.qr-scanner{max-width:760px;margin:12px auto}.qr-scanner video{width:100%;max-height:440px;background:#061b4e;border-radius:16px;object-fit:cover}.file-btn{cursor:pointer}
.coordinator-meeting{display:flex;gap:14px;align-items:center}.coordinator-meeting.current{border:2px solid var(--blue);box-shadow:0 8px 24px #165dcc25}.coordinator-table{min-width:95px;text-align:center;background:#edf3ff;border-radius:14px;padding:12px}.coordinator-table b{display:block;font-size:24px;color:var(--navy)}.coordinator-row{display:flex;gap:12px;align-items:center}
.no-show-card{border-left:6px solid var(--red)}.no-show-card select{margin-bottom:10px}
.badge.scheduled,.badge.started{background:#e7efff;color:#165dcc}.badge.completed,.badge.replaced{background:#e6f7ed;color:#0c7137}.badge.member_1_missing,.badge.member_2_missing,.badge.both_missing,.badge.issue{background:#ffe7e7;color:#a10d0d}
@media(max-width:760px){.login-tabs{grid-template-columns:1fr 1fr}.live-hero{grid-template-columns:1fr;text-align:center}.live-grid{grid-template-columns:1fr}.coordinator-meeting{align-items:flex-start;flex-wrap:wrap}.coordinator-table{width:100%}.countdown{font-size:32px}}

/* Attendance Desk clickable status filters */
.attendance-click-kpis .kpi{
  border:1px solid var(--border);
  font:inherit;
  color:inherit;
  cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.attendance-click-kpis .kpi:hover{
  transform:translateY(-2px);
  box-shadow:0 9px 22px rgba(6,27,78,.13);
  border-color:#93b6eb;
}
.attendance-click-kpis .kpi.active{
  background:#061b4e;
  border-color:#061b4e;
  color:#fff;
  box-shadow:0 9px 22px rgba(6,27,78,.2);
}
.attendance-click-kpis .kpi.active small{color:#fff;opacity:.88}
.attendance-filter-title{
  background:#eef4ff;
  border:1px solid #cfe0ff;
  color:#061b4e;
  border-radius:12px;
  padding:10px 13px;
  margin:10px 0;
}
@media(max-width:600px){
  .attendance-click-kpis{grid-template-columns:1fr 1fr}
}

.attendance-filter-title::after{
  content:'';
}
.attendance-click-kpis .kpi{
  appearance:none;
  -webkit-appearance:none;
}


/* Attendance active KPI number visibility fix */
.attendance-click-kpis .kpi.active b,
.attendance-click-kpis .kpi.active small{
  color:#fff !important;
}
.attendance-click-kpis .kpi.active b{
  opacity:1;
}

/* Pre-event V2V slot + automatic table booking */
.slot-booking-modal{max-width:720px;margin:auto}
.slot-target{
  display:flex;
  flex-direction:column;
  gap:3px;
  border-radius:14px;
  padding:12px 14px;
  background:#eef4ff;
  border:1px solid #cfe0ff;
  margin-bottom:10px;
}
.booking-summary{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:10px 0;
}
.booking-summary span{
  background:#061b4e;
  color:#fff;
  padding:7px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}
.slot-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  max-height:520px;
  overflow:auto;
  padding:2px;
}
.slot-option{
  width:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  text-align:left;
  padding:12px;
  border-radius:14px;
  border:1px solid var(--border);
  background:#fff;
  color:inherit;
  font:inherit;
}
button.slot-option{cursor:pointer}
.slot-option span{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.slot-option span:last-child{text-align:right;align-items:flex-end}
.slot-option small{color:var(--muted)}
.slot-option.available{
  border-color:#81c99c;
  background:#ebf8f0;
}
.slot-option.available strong{color:#0c7137}
.slot-option.available:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 20px rgba(12,113,55,.12);
}
.slot-option.booked{
  background:#fff3df;
  border-color:#f1c77f;
  opacity:.86;
}
.slot-option.booked strong{color:#8a4d00}
.slot-option.full{
  background:#ffe7e7;
  border-color:#ffcaca;
  opacity:.86;
}
.slot-option.full strong{color:#a10d0d}
.request-slot{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin:10px 0;
  padding:9px 11px;
  border-radius:12px;
  background:#eef4ff;
  border:1px solid #cfe0ff;
}
.request-slot span:not(.badge){font-size:12px;color:var(--muted)}
.booking-admin-note{
  margin:8px 0 14px;
  padding:11px 13px;
  border-radius:12px;
  background:#eef4ff;
  border:1px solid #cfe0ff;
  color:#061b4e;
  line-height:1.45;
}
@media(max-width:650px){
  .slot-list{grid-template-columns:1fr}
}

/* Confirmed cancellation, expiry and member notifications */
.request-expiry{
  margin:8px 0;
  padding:8px 10px;
  border-radius:10px;
  background:#fff3df;
  border:1px solid #f1c77f;
  color:#8a4d00;
  font-size:12px;
  font-weight:700;
}
.notification-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.notification-toolbar h2,
.notification-toolbar p{margin:0}
.notification-card{
  display:flex;
  align-items:flex-start;
  gap:11px;
}
.notification-card.unread{
  border-color:#8fb5ef;
  background:#eef4ff;
}
.notification-card.read{opacity:.78}
.notification-card p{
  margin:5px 0;
  line-height:1.45;
}
.notification-card small{color:var(--muted)}
.notification-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  margin-top:6px;
  flex:0 0 auto;
  background:#9aa7b8;
}
.notification-card.unread .notification-dot{
  background:#1457b8;
  box-shadow:0 0 0 4px rgba(20,87,184,.12);
}
@media(max-width:600px){
  .notification-toolbar{
    align-items:stretch;
    flex-direction:column;
  }
}

/* Final fixed LVB assistance footer */
:root{
  --support-footer-height:64px;
  --support-footer-safe-bottom:env(safe-area-inset-bottom,0px);
}
body{
  padding-bottom:calc(
    var(--support-footer-height) + var(--support-footer-safe-bottom) + 16px
  );
}
.support-footer{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:30;
  min-height:calc(
    var(--support-footer-height) + var(--support-footer-safe-bottom)
  );
  display:grid;
  grid-template-columns:auto auto;
  align-items:center;
  justify-content:center;
  gap:8px 28px;
  padding:9px 18px calc(9px + var(--support-footer-safe-bottom));
  background:linear-gradient(90deg,#061b4e,#0d347c);
  color:#fff;
  border-top:3px solid var(--gold);
  box-shadow:0 -8px 24px rgba(6,27,78,.18);
  font-size:12px;
}
.support-footer-help,
.support-footer-meta,
.support-contact,
.network-status{
  display:flex;
  align-items:center;
  justify-content:center;
}
.support-footer-help{gap:7px;white-space:nowrap}
.support-footer-meta{gap:10px;color:#dbe7ff;white-space:nowrap}
.support-footer-label{font-weight:800;color:#fff}
.footer-label-short{display:none}
.support-contact{
  gap:4px;
  padding:3px 5px 3px 8px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  background:rgba(255,255,255,.08);
}
.support-divider{color:#8faadc}
.support-footer a{
  color:#fff;
  text-decoration:none;
  font-weight:900;
}
.support-footer a:hover,
.support-footer a:focus{text-decoration:underline}
.support-whatsapp{
  min-width:25px;
  padding:3px 5px;
  border-radius:999px;
  background:#20a957;
  color:#fff!important;
  font-size:9px;
  line-height:1;
  text-align:center;
}
.support-whatsapp:hover,
.support-whatsapp:focus{text-decoration:none!important;background:#168a45}
.network-status{gap:5px;font-weight:800}
.network-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#f5a623;
  box-shadow:0 0 0 3px rgba(245,166,35,.16);
}
.network-status.online .network-dot{background:#52d27c;box-shadow:0 0 0 3px rgba(82,210,124,.16)}
.network-status.offline .network-dot{background:#ff7272;box-shadow:0 0 0 3px rgba(255,114,114,.16)}
.network-status.offline{color:#ffd2d2}
.footer-version{
  padding:2px 6px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  color:#fff;
  font-size:10px;
  font-weight:900;
}
.footer-copyright strong,
.footer-credit strong{color:#fff}
#toast{
  bottom:calc(
    var(--support-footer-height) + var(--support-footer-safe-bottom) + 12px
  );
}

@media(max-width:820px){
  :root{--support-footer-height:86px}
  .support-footer{
    width:100%;
    max-width:100vw;
    min-height:calc(
      var(--support-footer-height) + var(--support-footer-safe-bottom)
    );
    grid-template-columns:1fr;
    grid-template-rows:auto auto;
    align-content:center;
    gap:4px;
    padding:6px 8px calc(7px + var(--support-footer-safe-bottom));
    overflow:visible;
    font-size:11px;
  }
  .footer-label-full{display:none}
  .footer-label-short{display:inline}
  .support-footer-help{
    gap:4px;
    min-width:0;
    max-width:100%;
    flex-wrap:wrap;
  }
  .support-contact{gap:3px;padding:2px 4px 2px 6px}
  .support-call{font-size:11px}
  .support-whatsapp{min-width:22px;padding:3px 4px;font-size:8px}
  .support-footer-meta{
    display:grid;
    grid-template-columns:auto auto;
    justify-content:center;
    justify-items:center;
    column-gap:10px;
    row-gap:2px;
    width:100%;
    min-width:0;
    max-width:100%;
    white-space:normal;
    font-size:9px;
    line-height:1.2;
  }
  .footer-version{font-size:8px;padding:1px 4px}
}

@media(max-width:390px){
  :root{--support-footer-height:90px}
  .support-footer{font-size:10px}
  .support-footer-help{gap:3px}
  .support-call{font-size:10px}
  .support-footer-meta{column-gap:6px;row-gap:2px;font-size:8px}
  .support-divider{display:none}
}


/* Language cleanup release: consistent disabled controls */
button:disabled,
.btn:disabled {
  cursor: not-allowed;
  opacity: .58;
}

/* Full-width application layout */
#app,
#view{
  width:100%;
}
@media(min-width:1400px){
  .shell{padding-left:28px;padding-right:28px}
}

/* Recommended Members and Directory: col-md-4 equivalent */
.member-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.member-grid .member-card{
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr);
  align-items:start;
  align-content:start;
  height:100%;
  margin:0;
}
.member-grid .member-card > div:last-child{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  flex-wrap:wrap;
  margin-top:4px;
}
.member-grid .member-card > div:last-child .badge{
  margin-top:0 !important;
}
@media(max-width:991px){
  .member-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:767px){
  .shell{padding:8px}
  .member-grid{
    grid-template-columns:1fr;
  }
}

/* V2V slot color legend
   Available = Green, Pending = Orange, Booked = Blue, Fully Booked = Red */
.slot-option.available{
  background:#e6f7ed !important;
  border-color:#70c28f !important;
}
.slot-option.available strong{
  color:#0c7137 !important;
}
.slot-option.pending{
  background:#fff1df !important;
  border-color:#f1bd63 !important;
  opacity:1;
}
.slot-option.pending strong{
  color:#9a5800 !important;
}
.slot-option.booked{
  background:#e8f1ff !important;
  border-color:#83aceb !important;
  opacity:1;
}
.slot-option.booked strong{
  color:#1457b8 !important;
}
.slot-option.full{
  background:#ffe7e7 !important;
  border-color:#ffcaca !important;
}
.slot-option.full strong{
  color:#a10d0d !important;
}

/* QR scan full member profile */
#qrResult{
  scroll-margin-top:120px;
}
.qr-member-profile{
  margin-top:16px;
  display:grid;
  gap:12px;
}
.qr-profile-status{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  border-radius:16px;
  padding:16px 18px;
}
.qr-profile-status.checked{
  background:#e6f7ed;
  border:1px solid #9bd5b0;
  color:#0c7137;
}
.qr-profile-status.duplicate{
  background:#fff3df;
  border:1px solid #efc277;
  color:#8a4d00;
}
.qr-profile-status small{
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.qr-profile-status h2{
  margin:3px 0;
}
.qr-profile-status p{
  margin:0;
}
.qr-status-badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:7px;
}
.qr-profile-hero{
  display:grid;
  grid-template-columns:120px 100px minmax(0,1fr);
  align-items:center;
  gap:18px;
  border-radius:20px;
  padding:20px;
  background:linear-gradient(135deg,#061b4e,#165dcc);
  color:#fff;
  box-shadow:0 12px 30px rgba(6,27,78,.2);
}
.qr-profile-photo{
  width:120px;
  height:120px;
  border-radius:50%;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:#eaf1ff;
  color:#061b4e;
  border:4px solid #fff;
  font-size:30px;
  font-weight:900;
}
.qr-company-logo{
  width:100px;
  height:100px;
  border-radius:16px;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:#fff;
  color:#061b4e;
  border:3px solid rgba(255,255,255,.9);
  font-size:11px;
  text-align:center;
  font-weight:900;
}
.qr-profile-photo img,
.qr-company-logo img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.qr-company-logo img{
  object-fit:contain;
  padding:5px;
}
.qr-profile-heading h2{
  margin:0;
  font-size:28px;
}
.qr-profile-heading h3{
  margin:5px 0 10px;
  font-size:17px;
  font-weight:700;
  opacity:.92;
}
.qr-profile-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.qr-profile-tags span{
  border-radius:999px;
  padding:6px 10px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.25);
  font-size:12px;
  font-weight:800;
}
.qr-profile-section{
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  padding:16px;
}
.qr-profile-section h3{
  color:var(--navy);
  margin:0 0 12px;
}
.qr-profile-section p{
  margin:0;
  line-height:1.65;
}
.qr-details-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.qr-details-grid > div{
  min-width:0;
  border-radius:12px;
  padding:11px;
  background:#f6f9fe;
  border:1px solid #e1e9f5;
}
.qr-details-grid small{
  display:block;
  color:var(--muted);
  margin-bottom:5px;
}
.qr-details-grid b{
  display:block;
  overflow-wrap:anywhere;
}
.qr-details-grid .span-2{
  grid-column:span 2;
}
.qr-profile-content-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.qr-profile-controls{
  display:grid;
  grid-template-columns:minmax(280px,420px) 1fr;
  align-items:end;
  gap:14px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:16px;
  padding:16px;
}
.qr-payment-control{
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto;
  align-items:end;
  gap:10px;
}
.qr-payment-control label{
  margin:0;
}
.qr-attendance-actions{
  justify-content:flex-end;
  margin:0;
}
@media(max-width:900px){
  .qr-details-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .qr-profile-content-grid{
    grid-template-columns:1fr;
  }
  .qr-profile-controls{
    grid-template-columns:1fr;
  }
  .qr-attendance-actions{
    justify-content:flex-start;
  }
}
@media(max-width:650px){
  .qr-profile-status{
    align-items:flex-start;
    flex-direction:column;
  }
  .qr-status-badges{
    justify-content:flex-start;
  }
  .qr-profile-hero{
    grid-template-columns:90px 72px minmax(0,1fr);
    gap:10px;
    padding:14px;
  }
  .qr-profile-photo{
    width:90px;
    height:90px;
  }
  .qr-company-logo{
    width:72px;
    height:72px;
  }
  .qr-profile-heading{
    grid-column:1/-1;
  }
  .qr-profile-heading h2{
    font-size:23px;
  }
  .qr-details-grid{
    grid-template-columns:1fr;
  }
  .qr-details-grid .span-2{
    grid-column:auto;
  }
  .qr-payment-control{
    grid-template-columns:1fr;
  }
  .qr-attendance-actions .btn{
    width:100%;
  }
}

/* Member name with bold Chapter and City */
.member-name-line,
.profile-name-line{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.member-name{
  font-size:16px;
  color:var(--navy);
}
.member-location,
.profile-location{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
}
.member-location strong,
.profile-location strong{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 8px;
  border-radius:999px;
  background:#e8f1ff;
  border:1px solid #c2d7f8;
  color:#0d4c9c;
  font-size:11px;
  font-weight:900;
  line-height:1.1;
}
.profile-name-line h2{
  margin:0;
}
.profile-location strong{
  background:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.3);
  color:#fff;
}

/* City-based Member Directory filters */
.directory-filters{
  display:grid;
  grid-template-columns:minmax(280px,1fr) minmax(220px,320px);
  gap:12px;
  align-items:end;
}
.directory-filter-summary{
  margin:8px 0 12px;
  padding:10px 13px;
  border-radius:12px;
  background:#eef4ff;
  border:1px solid #cfe0ff;
  color:#061b4e;
}
@media(max-width:700px){
  .directory-filters{
    grid-template-columns:1fr;
  }
  .member-name-line,
  .profile-name-line{
    align-items:flex-start;
  }
}

/* Real chapter/city display and member-name search fix */
.member-name-line{min-width:0}
.member-name{overflow-wrap:anywhere}
.member-location strong,
.profile-location strong{
  max-width:220px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.slot-target .member-name-line{margin-bottom:5px}
@media(max-width:600px){
  .member-location strong,
  .profile-location strong{max-width:160px}
}

/* Explicit Chapter and City badges */
.member-location .chapter-chip,
.profile-location .chapter-chip{
  background:#f2edff;
  border-color:#d5c5ff;
  color:#5c2ca5;
}
.member-location .city-chip,
.profile-location .city-chip{
  background:#e6f7ed;
  border-color:#9bd5b0;
  color:#0c7137;
}
.member-location strong span,
.profile-location strong span{
  font-weight:700;
  opacity:.75;
}
.member-location strong.missing,
.profile-location strong.missing{
  background:#ffe8e8;
  border-color:#f2b5b5;
  color:#a10d0d;
}

/* Premium Member Profile + V2V actions */
.profile-modal-box{
  width:min(1120px,100%);
  padding:0;
  border-radius:24px;
}
.profile-modal-box .modal-close{
  z-index:4;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.94);
  color:var(--navy);
  box-shadow:0 5px 18px rgba(6,27,78,.18);
}
.member-profile-page{
  --profile-soft:#f5f8fd;
  background:var(--profile-soft);
  min-height:100%;
  border-radius:24px;
  overflow:hidden;
}
.member-profile-hero{
  position:relative;
  display:grid;
  grid-template-columns:132px 96px minmax(0,1fr);
  gap:18px;
  align-items:center;
  padding:32px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 88% 18%,rgba(245,166,35,.28),transparent 24%),
    linear-gradient(135deg,#061b4e 0%,#0b347a 58%,#165dcc 100%);
}
.member-profile-hero::after{
  content:'';
  position:absolute;
  width:220px;
  height:220px;
  right:-105px;
  bottom:-140px;
  border:34px solid rgba(255,255,255,.07);
  border-radius:50%;
}
.member-profile-photo,
.member-profile-logo{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#eaf1ff;
  color:var(--navy);
  font-weight:950;
  box-shadow:0 12px 30px rgba(0,0,0,.2);
}
.member-profile-photo{
  width:132px;
  height:132px;
  border:5px solid #fff;
  border-radius:50%;
  font-size:36px;
}
.member-profile-logo{
  width:96px;
  height:96px;
  padding:7px;
  border:3px solid rgba(255,255,255,.88);
  border-radius:20px;
  background:#fff;
  font-size:11px;
  text-align:center;
}
.member-profile-photo img,
.member-profile-logo img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.member-profile-logo img{object-fit:contain}
.member-profile-heading{
  position:relative;
  z-index:1;
  min-width:0;
}
.member-profile-heading h1{
  margin:0;
  font-size:clamp(27px,3.2vw,40px);
  line-height:1.1;
  overflow-wrap:anywhere;
}
.member-profile-heading h2{
  margin:12px 0 5px;
  font-size:20px;
  font-weight:800;
}
.member-profile-heading p{
  margin:0;
  color:rgba(255,255,255,.82);
  font-weight:700;
}
.member-profile-hero .profile-location-text{
  margin-top:8px;
  color:rgba(255,255,255,.9);
}
.member-profile-hero .profile-location-text strong{
  min-height:0;
  max-width:none;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  color:inherit;
  font-size:12px;
  letter-spacing:.02em;
}
.profile-location-text i{
  color:rgba(255,255,255,.58);
  font-style:normal;
  font-weight:900;
}
.member-profile-hero .profile-location strong{
  max-width:260px;
}
.member-profile-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:18px;
  align-items:start;
  padding:22px;
}
.business-profile-sections{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.profile-section{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  min-height:170px;
  padding:19px;
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 22px rgba(6,27,78,.06);
}
.profile-section-wide{
  grid-column:1/-1;
  min-height:0;
}
.profile-section-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#e9f1ff;
  color:#1457b8;
  font-size:12px;
  font-weight:950;
}
.profile-section small,
.profile-eyebrow,
.profile-contact-card>small,
.profile-locked-summary>small,
.profile-completion-card small{
  color:#66748b;
  font-size:10px;
  font-weight:950;
  letter-spacing:.1em;
}
.profile-section h3{
  margin:4px 0 10px;
  color:var(--navy);
  font-size:19px;
}
.profile-section p{
  margin:0;
  line-height:1.65;
}
.profile-tag-list{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.profile-tag-list span{
  padding:7px 10px;
  border:1px solid #c6d8f5;
  border-radius:999px;
  background:#edf4ff;
  color:#0d4c9c;
  font-size:12px;
  font-weight:850;
}
.profile-tag-list.looking span{
  border-color:#f2cb88;
  background:#fff5e5;
  color:#805000;
}
.profile-tags-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:6px 11px;
  border:1px dashed #9eb6d9;
  border-radius:999px;
  background:#fff;
  color:#1457b8;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}
.profile-tag-list:not(.expanded) .profile-tag-extra{
  display:none;
}
.profile-business-brand{display:none}
.profile-business-brand-logo{
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--border);
}
.profile-business-brand-logo img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.profile-detail-list{
  display:flex;
  flex-direction:column;
  gap:9px;
}
.profile-detail-list a{
  width:max-content;
  color:#1457b8;
  font-weight:900;
  text-decoration:none;
}
.profile-detail-list span{line-height:1.5}
.member-profile-sidebar{
  position:sticky;
  top:0;
  display:grid;
  gap:12px;
}
.profile-action-state,
.profile-contact-card,
.profile-privacy-note,
.profile-locked-summary{
  padding:18px;
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 22px rgba(6,27,78,.06);
}
.profile-action-state h3{
  margin:7px 0 6px;
  color:var(--navy);
  line-height:1.3;
}
.profile-action-state p{
  margin:4px 0;
  color:var(--muted);
  line-height:1.5;
  font-size:13px;
}
.confirmed-state{
  border-color:#95d5ae;
  background:linear-gradient(180deg,#f1fbf5,#fff);
}
.incoming-state{
  border-color:#efc277;
  background:linear-gradient(180deg,#fff8eb,#fff);
}
.profile-request-slot{
  margin-top:11px;
  padding:9px 10px;
  border-radius:10px;
  background:#eef4ff;
  color:var(--navy);
  font-size:12px;
  font-weight:900;
}
.profile-response-actions,
.profile-contact-actions{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:12px;
}
.profile-response-actions .btn{flex:1}
.profile-meeting-summary{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:7px;
}
.profile-meeting-summary>div{
  padding:12px 8px;
  border:1px solid #cfe0ff;
  border-radius:13px;
  background:#eef4ff;
  text-align:center;
}
.profile-meeting-summary small{
  display:block;
  margin-bottom:5px;
  color:#63738d;
  font-size:9px;
  font-weight:950;
  letter-spacing:.08em;
}
.profile-meeting-summary b{
  display:block;
  color:var(--navy);
  font-size:13px;
}
.profile-contact-card>b{
  display:block;
  margin:7px 0 2px;
  color:var(--navy);
  font-size:21px;
}
.profile-contact-actions .btn{flex:1}
.profile-privacy-note{
  border-style:dashed;
  background:#f8fafd;
}
.profile-privacy-note b{color:var(--navy)}
.profile-privacy-note p{
  margin:6px 0 0;
  color:var(--muted);
  line-height:1.5;
  font-size:13px;
}
.member-profile-sticky{display:none}
.badge.recommended{
  background:#fff1cf;
  color:#7b4b00;
  border:1px solid #efca79;
}
.member-card-actions{
  justify-content:flex-start!important;
}
.member-card-actions .btn,
.member-card-actions .badge{
  white-space:nowrap;
}
.own-profile-page{
  margin-top:12px;
  border:1px solid var(--border);
}
.profile-completion-card{
  display:grid;
  grid-template-columns:180px minmax(180px,1fr) minmax(260px,1.6fr);
  gap:16px;
  align-items:center;
  margin:18px 22px 0;
  padding:15px 18px;
  border:1px solid #cfe0ff;
  border-radius:16px;
  background:#fff;
}
.profile-completion-card b{
  display:block;
  margin-top:3px;
  color:var(--navy);
  font-size:25px;
}
.profile-completion-card p{
  margin:0;
  color:var(--muted);
  line-height:1.45;
  font-size:13px;
}
.profile-progress{
  height:10px;
  overflow:hidden;
  border-radius:999px;
  background:#e6edf7;
}
.profile-progress span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#165dcc,#148a45);
}
.profile-locked-summary{
  display:flex;
  flex-direction:column;
  gap:7px;
}
.profile-locked-summary b{
  margin-top:4px;
  color:var(--navy);
}
.profile-locked-summary span{
  color:var(--muted);
  font-size:13px;
}
.edit-profile-modal{padding:25px}
.edit-profile-heading{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding-right:35px;
}
.edit-profile-heading h2{
  margin:4px 0;
  color:var(--navy);
}
.edit-profile-heading p{margin:0}
.edit-profile-score{
  min-width:92px;
  height:74px;
  display:grid;
  place-items:center;
  align-content:center;
  border-radius:16px;
  background:#eef4ff;
  color:var(--navy);
}
.edit-profile-score b{font-size:24px}
.edit-profile-score small{color:var(--muted)}
.profile-suggestion{
  margin:15px 0;
  padding:11px 13px;
  border:1px solid #f0cc89;
  border-radius:12px;
  background:#fff6e7;
  color:#754b00;
  line-height:1.45;
}
.edit-profile-modal fieldset{
  margin:16px 0;
  padding:16px;
  border:1px solid var(--border);
  border-radius:16px;
}
.edit-profile-modal legend{
  padding:0 8px;
  color:var(--navy);
  font-weight:950;
}
.locked-profile-fields{
  background:#f6f8fc;
}
.locked-profile-fields input[readonly]{
  background:#edf1f7;
  color:#536176;
  cursor:not-allowed;
}
.visual-adjusters-stack{
  display:grid;
  gap:16px;
}
.visual-adjust-card{
  padding:16px;
  border:1px solid #dbe5f2;
  border-radius:16px;
  background:#f9fbff;
}
.visual-adjust-card h3{
  margin:0 0 14px;
  color:var(--navy);
  font-size:16px;
}
.photo-adjust-layout,
.logo-adjust-layout{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:22px;
  align-items:center;
}
.photo-adjust-preview{
  width:170px;
  height:170px;
  margin:auto;
  display:grid;
  place-items:center;
  overflow:hidden;
  touch-action:none;
  cursor:grab;
  user-select:none;
  border:5px solid #fff;
  border-radius:50%;
  background:#eaf1ff;
  color:var(--navy);
  font-size:38px;
  font-weight:950;
  box-shadow:0 0 0 1px #cdd8ea,0 12px 28px rgba(6,27,78,.2);
}
.logo-adjust-preview{
  width:170px;
  height:170px;
  margin:auto;
  padding:10px;
  display:grid;
  place-items:center;
  overflow:hidden;
  touch-action:none;
  cursor:grab;
  user-select:none;
  border:5px solid #fff;
  border-radius:24px;
  background:#fff;
  color:var(--navy);
  font-size:14px;
  font-weight:950;
  text-align:center;
  box-shadow:0 0 0 1px #cdd8ea,0 12px 28px rgba(6,27,78,.17);
}
.photo-adjust-preview.dragging,
.logo-adjust-preview.dragging{cursor:grabbing}
.photo-adjust-preview img,
.logo-adjust-preview img{
  width:100%;
  height:100%;
  display:block;
  pointer-events:none;
  will-change:transform,object-position;
}
.photo-adjust-preview img{object-fit:cover}
.logo-adjust-preview img{object-fit:contain}
.photo-adjust-hint,
.logo-adjust-hint{
  display:block;
  margin-top:9px;
  text-align:center;
}
.photo-adjust-controls,
.logo-adjust-controls{
  display:grid;
  gap:8px;
}
.photo-adjust-controls label,
.logo-adjust-controls label{
  margin:0;
}
.photo-adjust-controls output,
.logo-adjust-controls output{
  float:right;
  color:var(--blue);
}
.photo-adjust-controls input[type="range"],
.logo-adjust-controls input[type="range"]{
  min-height:30px;
  padding:0;
  accent-color:var(--blue);
}
.visual-adjust-note{
  display:block;
  margin-top:12px;
}
.avatar img,
.logo img,
.member-profile-photo img,
.member-profile-logo img,
.home-desktop-logo img,
.home-mobile-logo img,
.profile-business-brand-logo img,
.qr-company-logo img{
  will-change:transform,object-position;
}

.home-desktop-summary{
  display:grid;
  grid-template-columns:minmax(430px,.95fr) minmax(0,1.25fr);
  margin:12px 0;
  overflow:hidden;
  border:1px solid #d6e1ef;
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 30px rgba(6,27,78,.1);
}
.home-desktop-identity{
  position:relative;
  display:grid;
  grid-template-columns:104px 74px minmax(0,1fr);
  gap:16px;
  align-items:center;
  min-width:0;
  padding:26px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 88% 14%,rgba(245,166,35,.25),transparent 24%),
    linear-gradient(145deg,#061b4e,#0c3d8d 68%,#165dcc);
}
.home-desktop-avatar,
.home-desktop-logo{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#eaf1ff;
  color:var(--navy);
  font-weight:950;
  text-align:center;
  box-shadow:0 10px 24px rgba(0,0,0,.2);
}
.home-desktop-avatar{
  width:104px;
  height:104px;
  border:4px solid #fff;
  border-radius:50%;
  font-size:28px;
}
.home-desktop-logo{
  width:74px;
  height:74px;
  padding:6px;
  border:3px solid rgba(255,255,255,.9);
  border-radius:17px;
  background:#fff;
  font-size:8px;
}
.home-desktop-avatar img,
.home-desktop-logo img{
  width:100%;
  height:100%;
}
.home-desktop-avatar img{object-fit:cover}
.home-desktop-logo img{object-fit:contain}
.home-desktop-heading{
  position:relative;
  z-index:1;
  min-width:0;
}
.home-desktop-heading h2{
  margin:0;
  font-size:clamp(23px,2vw,31px);
  line-height:1.15;
  overflow-wrap:anywhere;
}
.home-desktop-location{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin:9px 0 13px;
}
.home-desktop-location span{
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.4);
  border-radius:999px;
  background:rgba(255,255,255,.95);
  font-size:10px;
  font-weight:900;
}
.home-desktop-location .city{color:#0c7137}
.home-desktop-location .chapter{color:#6b39a5}
.home-desktop-heading b{
  display:block;
  font-size:15px;
  line-height:1.35;
}
.home-desktop-heading p{
  margin:4px 0 0;
  color:rgba(255,255,255,.78);
  font-size:12px;
  font-weight:700;
  line-height:1.35;
}
.home-desktop-opportunities{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  align-content:start;
  padding:20px;
}
.home-desktop-section{
  min-width:0;
  padding:16px;
  border:1px solid #dce5f2;
  border-radius:16px;
  background:#f8faff;
}
.home-desktop-section>small{
  display:block;
  color:#66748b;
  font-size:9px;
  font-weight:950;
  letter-spacing:.11em;
}
.home-desktop-section h3{
  margin:4px 0 10px;
  color:var(--navy);
  font-size:17px;
}
.home-desktop-section .profile-tag-list{
  gap:6px;
}
.home-desktop-section .profile-tag-list span{
  padding:7px 9px;
  font-size:11px;
}
.home-desktop-actions{
  grid-column:1/-1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
}
.home-mobile-profile{display:none}

@media(max-width:900px){
  .home-desktop-summary{grid-template-columns:1fr}
  .member-profile-layout{grid-template-columns:1fr}
  .member-profile-sidebar{position:static}
  .profile-completion-card{grid-template-columns:130px 1fr}
  .profile-completion-card p{grid-column:1/-1}
}
@media(max-width:650px){
  .home-desktop-profile{display:none}
  .home-mobile-profile{
    display:block;
    margin:10px 0;
    overflow:hidden;
    border:1px solid #d7e1ef;
    border-radius:22px;
    background:#fff;
    box-shadow:0 10px 30px rgba(6,27,78,.1);
  }
  .home-mobile-profile-header{
    position:relative;
    display:grid;
    justify-items:center;
    padding:24px 18px 20px;
    overflow:hidden;
    text-align:center;
    color:#fff;
    background:
      radial-gradient(circle at 88% 14%,rgba(245,166,35,.25),transparent 24%),
      linear-gradient(145deg,#061b4e,#0c3d8d 68%,#165dcc);
  }
  .home-mobile-profile-header::after{
    content:'';
    position:absolute;
    width:150px;
    height:150px;
    right:-88px;
    bottom:-106px;
    border:24px solid rgba(255,255,255,.07);
    border-radius:50%;
  }
  .home-mobile-avatar{
    position:relative;
    z-index:1;
    width:104px;
    height:104px;
    display:grid;
    place-items:center;
    overflow:hidden;
    border:4px solid #fff;
    border-radius:50%;
    background:#eaf1ff;
    color:var(--navy);
    font-size:28px;
    font-weight:950;
    box-shadow:0 12px 26px rgba(0,0,0,.24);
  }
  .home-mobile-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .home-mobile-profile-header h2{
    position:relative;
    z-index:1;
    margin:13px 0 8px;
    font-size:26px;
    line-height:1.16;
  }
  .home-mobile-location{
    position:relative;
    z-index:1;
    display:flex;
    justify-content:center;
    gap:7px;
    flex-wrap:wrap;
  }
  .home-mobile-location span{
    padding:6px 10px;
    border:1px solid rgba(255,255,255,.4);
    border-radius:999px;
    background:rgba(255,255,255,.94);
    font-size:11px;
    font-weight:900;
  }
  .home-mobile-location .city{color:#0c7137}
  .home-mobile-location .chapter{color:#6b39a5}
  .home-mobile-business{
    display:grid;
    grid-template-columns:60px minmax(0,1fr);
    gap:12px;
    align-items:center;
    margin:14px 14px 0;
    padding:14px;
    border:1px solid #dce5f2;
    border-radius:16px;
    background:#f8faff;
  }
  .home-mobile-logo{
    width:60px;
    height:60px;
    display:grid;
    place-items:center;
    overflow:hidden;
    padding:5px;
    border:1px solid #dce5f2;
    border-radius:14px;
    background:#fff;
    color:var(--navy);
    font-size:8px;
    font-weight:900;
    text-align:center;
  }
  .home-mobile-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
  }
  .home-mobile-business small,
  .home-mobile-section>small{
    display:block;
    color:#66748b;
    font-size:9px;
    font-weight:950;
    letter-spacing:.11em;
  }
  .home-mobile-business b{
    display:block;
    margin-top:4px;
    color:var(--navy);
    font-size:14px;
    line-height:1.3;
  }
  .home-mobile-business span{
    display:block;
    margin-top:4px;
    color:var(--muted);
    font-size:12px;
    line-height:1.35;
  }
  .home-mobile-section{
    margin:10px 14px 0;
    padding:15px 0 0;
    border-top:1px solid #e3eaf4;
  }
  .home-mobile-section h3{
    margin:4px 0 10px;
    color:var(--navy);
    font-size:17px;
  }
  .home-mobile-profile .profile-tag-list{
    gap:6px;
  }
  .home-mobile-profile .profile-tag-list span{
    padding:7px 9px;
    font-size:11px;
  }
  .home-mobile-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:16px 14px;
  }
  .home-mobile-actions .btn{
    min-width:0;
    padding:10px 8px;
    font-size:12px;
  }
  .home-mobile-actions .btn:first-child{grid-column:1/-1}
  .home-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px;
  }
  .home-kpis .kpi{
    min-width:0;
    padding:10px 5px;
  }
  .home-kpis .kpi b{font-size:20px}
  .home-kpis .kpi small{font-size:10px}
  .home-quick-actions{display:none}
  .profile-modal-box{
    width:100%;
    max-height:calc(100dvh - 30px);
    border-radius:22px;
  }
  .member-profile-page{
    border-radius:22px;
    background:#f2f5fa;
  }
  .member-profile-hero{
    grid-template-columns:1fr;
    justify-items:center;
    gap:0;
    padding:28px 18px 24px;
    text-align:center;
  }
  .member-profile-photo{
    width:112px;
    height:112px;
    border-width:4px;
    font-size:30px;
    box-shadow:0 12px 28px rgba(0,0,0,.24);
  }
  .member-profile-logo{
    display:none;
  }
  .member-profile-heading{
    grid-column:auto;
    width:100%;
    margin-top:14px;
  }
  .member-profile-heading h1{
    font-size:27px;
    line-height:1.15;
  }
  .member-profile-heading h2{
    margin:12px 0 4px;
    font-size:17px;
    line-height:1.3;
  }
  .member-profile-heading p{
    font-size:13px;
    line-height:1.4;
  }
  .member-profile-hero .profile-location-text{
    justify-content:center;
    margin-top:7px;
  }
  .member-profile-hero .profile-location-text strong{
    font-size:12px;
  }
  .member-profile-layout{
    padding:10px;
    gap:10px;
  }
  .business-profile-sections{grid-template-columns:1fr}
  .profile-section,
  .profile-section-wide{
    grid-column:auto;
    min-height:0;
    display:block;
    padding:17px;
    border-radius:16px;
    box-shadow:0 5px 16px rgba(6,27,78,.055);
  }
  .profile-section-icon{display:none}
  .profile-section small{
    font-size:9px;
    letter-spacing:.12em;
  }
  .profile-section h3{
    margin:4px 0 11px;
    font-size:17px;
  }
  .profile-section p{
    font-size:14px;
    line-height:1.6;
  }
  .profile-tag-list{
    gap:6px;
  }
  .profile-tag-list span{
    padding:7px 9px;
    font-size:11px;
  }
  .profile-tag-list:not(.expanded) .profile-tag-extra{
    display:none;
  }
  .profile-tags-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }
  .profile-business-brand{
    display:flex;
    align-items:center;
    gap:11px;
    margin:0 0 16px;
    padding:0 0 15px;
    border-bottom:1px solid #e3eaf4;
  }
  .profile-business-brand-logo{
    width:58px;
    height:58px;
    flex:0 0 58px;
    padding:5px;
    border-radius:14px;
    color:var(--navy);
    font-size:8px;
    font-weight:900;
    text-align:center;
  }
  .profile-business-brand b{
    display:block;
    color:var(--navy);
    line-height:1.3;
  }
  .profile-business-brand span{
    display:block;
    margin-top:4px;
    color:var(--muted);
    font-size:12px;
    line-height:1.35;
  }
  .profile-detail-list{
    gap:10px;
    font-size:13px;
  }
  .member-profile-page:not(.own-profile-page) .member-profile-sidebar .profile-action-state{
    display:none;
  }
  .member-profile-sidebar{
    gap:10px;
  }
  .profile-meeting-summary{
    gap:6px;
  }
  .profile-meeting-summary>div{
    padding:10px 6px;
  }
  .profile-contact-card,
  .profile-privacy-note,
  .profile-locked-summary,
  .profile-action-state{
    padding:15px;
    border-radius:16px;
  }
  .member-profile-sticky{
    position:sticky;
    bottom:0;
    z-index:5;
    display:flex;
    gap:8px;
    padding:12px;
    border-top:1px solid var(--border);
    background:rgba(255,255,255,.96);
    box-shadow:0 -10px 28px rgba(6,27,78,.14);
    backdrop-filter:blur(8px);
    padding-bottom:max(12px,env(safe-area-inset-bottom));
  }
  .member-profile-sticky .btn{flex:1;margin:0}
  .own-profile-page .member-profile-sticky{display:none}
  .profile-completion-card{
    grid-template-columns:85px 1fr;
    margin:12px 12px 0;
    padding:13px;
  }
  nav{
    scrollbar-width:none;
  }
  nav::-webkit-scrollbar{display:none}
  nav button{
    padding:9px 11px;
    font-size:12px;
  }
  .edit-profile-modal{padding:18px 14px}
  .edit-profile-heading{padding-right:34px}
  .edit-profile-heading p{display:none}
  .edit-profile-score{min-width:74px;height:64px}
  .edit-profile-modal fieldset{padding:12px}
  .visual-adjust-card{padding:13px}
  .photo-adjust-layout,
  .logo-adjust-layout{
    grid-template-columns:1fr;
    gap:14px;
  }
  .photo-adjust-preview,
  .logo-adjust-preview{
    width:150px;
    height:150px;
  }
}

@media(min-width:901px){
  .smart-match-actions{grid-template-columns:1fr 1.25fr 1fr}
  .home-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
}
@media(max-width:900px){
  .smart-match-actions{grid-template-columns:1fr 1fr}
  .smart-match-actions .wishlist-btn{grid-column:1/-1}
}

/* Version 17 navigation visibility fix */
nav button.wishlist-nav-button{
  background:#fff6e6;
  border-color:#f5a623;
  color:#744200;
  box-shadow:inset 0 0 0 1px #f5a62333;
}
nav button.wishlist-nav-button.active{
  background:#f5a623;
  border-color:#f5a623;
  color:#061b4e;
}

/* Version 18 · Event Day Smart Control */
nav button.digital-cards-nav-button{
  color:#073c75;
  border-color:#84bde9;
  background:#eef8ff;
  box-shadow:inset 0 0 0 1px rgba(18,105,178,.08);
}
nav button.digital-cards-nav-button.active{
  color:#fff;
  border-color:#1269b2;
  background:#1269b2;
}
.btn.event-day-btn{
  color:#fff;
  border-color:#1269b2;
  background:linear-gradient(135deg,#1269b2,#061b4e);
}
.digital-card-kpi{
  cursor:pointer;
  border-color:#a8d3f2;
  background:linear-gradient(145deg,#fff,#eef8ff);
}
.digital-card-kpi b{color:#1269b2}

.event-emergency-overlay{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));
  background:rgba(3,12,37,.82);
  backdrop-filter:blur(10px);
  animation:eventEmergencyFade .2s ease-out;
}
.event-emergency-card{
  width:min(620px,100%);
  padding:42px;
  text-align:center;
  border:2px solid #ffb0a8;
  border-radius:28px;
  color:#24100d;
  background:linear-gradient(145deg,#fff,#fff1ee);
  box-shadow:0 30px 90px rgba(0,0,0,.35);
  animation:eventEmergencyPulse .55s ease-out;
}
.event-emergency-icon{
  display:grid;
  place-items:center;
  width:76px;
  height:76px;
  margin:0 auto 20px;
  border-radius:50%;
  color:#fff;
  font-size:48px;
  font-weight:1000;
  background:#d92d20;
  box-shadow:0 0 0 12px rgba(217,45,32,.12);
}
.event-emergency-card>small{
  color:#b42318;
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
}
.event-emergency-card h1{
  margin:12px 0 22px;
  color:#24100d;
  font-size:clamp(25px,5vw,40px);
  line-height:1.16;
}
.event-emergency-meta,
.event-emergency-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
}
.event-emergency-meta{margin-bottom:22px}
.event-emergency-meta>span:first-child{
  padding:7px 12px;
  border-radius:999px;
  font-weight:850;
  background:#ffe0dc;
}
@keyframes eventEmergencyFade{from{opacity:0}to{opacity:1}}
@keyframes eventEmergencyPulse{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}

.emergency-broadcast-panel{
  display:grid;
  grid-template-columns:minmax(210px,.75fr) 2fr;
  gap:18px;
  align-items:center;
  margin-top:20px;
  padding:18px;
  border:1px solid #ffb4ac;
  border-radius:18px;
  background:linear-gradient(135deg,#fff5f3,#fff);
}
.emergency-broadcast-panel small,
.event-day-section-heading small{
  display:block;
  color:#b42318;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
}
.emergency-broadcast-panel b{
  display:block;
  margin-top:5px;
  color:#5d1a13;
  line-height:1.35;
}
.emergency-preset-actions{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
}
.event-day-section-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.event-day-section-heading h3{margin:5px 0}

.digital-cards-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  margin-bottom:16px;
  padding:30px;
  overflow:hidden;
  border:1px solid #9ed2f5;
  border-radius:24px;
  color:#fff;
  background:
    radial-gradient(circle at 90% 10%,rgba(55,181,255,.42),transparent 36%),
    linear-gradient(135deg,#061b4e,#1269b2);
  box-shadow:0 18px 42px rgba(6,27,78,.18);
}
.digital-cards-hero small{
  color:#9edcff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
}
.digital-cards-hero h1{
  margin:7px 0 9px;
  color:#fff;
}
.digital-cards-hero p{
  max-width:680px;
  margin:0;
  color:#d9efff;
  line-height:1.55;
}
.digital-cards-count{
  min-width:150px;
  padding:18px;
  text-align:center;
  border:1px solid rgba(255,255,255,.25);
  border-radius:20px;
  background:rgba(255,255,255,.1);
  backdrop-filter:blur(8px);
}
.digital-cards-count b{
  display:block;
  color:#fff;
  font-size:38px;
}
.digital-cards-count span{
  display:block;
  margin-top:3px;
  color:#d9efff;
  font-size:12px;
}
.digital-cards-kpis,
.coordinator-control-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.digital-cards-kpis>div,
.coordinator-control-summary>div{
  padding:17px;
  text-align:center;
  border:1px solid var(--border);
  border-radius:17px;
  background:#fff;
  box-shadow:0 7px 20px rgba(6,27,78,.055);
}
.digital-cards-kpis b,
.coordinator-control-summary b{
  display:block;
  color:var(--navy);
  font-size:26px;
}
.digital-cards-kpis span,
.coordinator-control-summary span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
}
.digital-connections-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.digital-connection-card{
  overflow:hidden;
  border:1px solid #a8d3f2;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 30px rgba(6,27,78,.09);
}
.digital-connection-card.locked{
  border-color:#d7dfeb;
  filter:saturate(.72);
}
.digital-card-status{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 16px;
  color:#0b4f88;
  background:#eaf7ff;
}
.digital-connection-card.locked .digital-card-status{
  color:#596579;
  background:#f2f4f7;
}
.digital-card-status>span:first-child{
  font-size:9px;
  font-weight:950;
  letter-spacing:.1em;
}
.digital-card-identity{
  display:grid;
  grid-template-columns:62px 50px 1fr;
  gap:12px;
  align-items:center;
  padding:18px;
}
.digital-card-identity .avatar{
  width:62px;
  height:62px;
}
.digital-card-identity .logo{
  width:50px;
  height:50px;
}
.digital-card-identity .grow>b,
.digital-card-identity .grow>span{
  display:block;
}
.digital-card-identity .grow>span{
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
}
.digital-card-meeting{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:0 18px;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:14px;
}
.digital-card-meeting>div{
  padding:10px;
  text-align:center;
  border-right:1px solid var(--border);
}
.digital-card-meeting>div:last-child{border-right:0}
.digital-card-meeting small{
  display:block;
  color:var(--muted);
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
}
.digital-card-meeting b{
  display:block;
  margin-top:3px;
  color:var(--navy);
}
.digital-card-contact,
.digital-card-locked-note{
  margin:14px 18px 0;
  padding:13px;
  border-radius:13px;
}
.digital-card-contact{
  color:#075d48;
  background:#e9fbf5;
}
.digital-card-contact span,
.digital-card-contact small{display:block}
.digital-card-contact span{font-weight:900}
.digital-card-contact small{margin-top:4px;line-height:1.4}
.digital-card-locked-note{
  color:#596579;
  line-height:1.45;
  background:#f2f4f7;
}
.digital-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:14px 18px 18px;
}
.coordinator-control-summary{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.coordinator-control-summary .attention{
  border-color:#f7b8b2;
  background:#fff1ef;
}
.coordinator-control-summary .attention b{color:#b42318}
.coordinator-mode-note{
  margin-bottom:14px;
  padding:13px 16px;
  border:1px solid #9ed2f5;
  border-radius:14px;
  color:#073c75;
  background:#eef8ff;
}

@media(min-width:901px){
  .home-kpis{grid-template-columns:repeat(auto-fit,minmax(115px,1fr))}
}

@media(max-width:900px){
  .emergency-broadcast-panel{grid-template-columns:1fr}
  .emergency-preset-actions{justify-content:flex-start}
  .digital-connections-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
  .event-emergency-card{
    padding:30px 20px;
    border-radius:22px;
  }
  .event-emergency-icon{
    width:64px;
    height:64px;
    font-size:40px;
  }
  .event-emergency-actions .btn{flex:1}
  .digital-cards-hero{
    display:block;
    padding:22px 18px;
    border-radius:20px;
  }
  .digital-cards-count{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    margin-top:18px;
    padding:12px;
  }
  .digital-cards-count b{font-size:28px}
  .digital-cards-kpis{
    grid-template-columns:repeat(3,1fr);
    gap:7px;
  }
  .digital-cards-kpis>div,
  .coordinator-control-summary>div{padding:12px 6px}
  .digital-cards-kpis b,
  .coordinator-control-summary b{font-size:21px}
  .digital-cards-kpis span,
  .coordinator-control-summary span{font-size:10px}
  .digital-card-status{align-items:flex-start}
  .digital-card-identity{
    grid-template-columns:56px 42px 1fr;
    gap:9px;
    padding:14px;
  }
  .digital-card-identity .avatar{width:56px;height:56px}
  .digital-card-identity .logo{width:42px;height:42px}
  .digital-card-meeting{margin:0 14px}
  .digital-card-contact,
  .digital-card-locked-note{margin:12px 14px 0}
  .digital-card-actions{padding:12px 14px 16px}
  .digital-card-actions .btn{flex:1}
  .coordinator-control-summary{
    grid-template-columns:repeat(2,1fr);
    gap:7px;
  }
  .event-day-section-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .event-day-section-heading .btn{width:100%}
}

@media(prefers-reduced-motion:reduce){
  .event-emergency-overlay,
  .event-emergency-card{animation:none}
}

/* Version 19 · Advanced Registration Details */
.registration-modal-box{
  width:min(980px,100%);
  padding:0;
  overflow:hidden;
}
.registration-modal-box>.modal-close{
  z-index:3;
  top:12px;
  right:14px;
  width:38px;
  height:38px;
  border-radius:50%;
  color:#fff;
  background:#ffffff20;
}
.registration-modal-box #modalBody{
  max-height:92vh;
  overflow:auto;
}
.advanced-registration-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  padding:30px 64px 28px 30px;
  color:#fff;
  background:linear-gradient(135deg,#061b4e 0%,#0b377c 58%,#148a45 100%);
}
.advanced-registration-heading small,
.registration-details-heading small,
.registration-admin-heading small{
  color:#78e4ad;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
}
.advanced-registration-heading h2{
  margin:6px 0;
  font-size:32px;
}
.advanced-registration-heading p{
  margin:0;
  color:#dceaff;
  line-height:1.5;
}
.advanced-registration-step{
  flex:0 0 auto;
  padding:8px 12px;
  border:1px solid #ffffff55;
  border-radius:999px;
  color:#fff;
  font-size:12px;
  font-weight:900;
  background:#ffffff16;
}
.registration-auto-fields{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:#dce5f2;
  border-bottom:1px solid #dce5f2;
}
.registration-auto-fields span{
  padding:13px 16px;
  background:#f5f8fd;
}
.registration-auto-fields small,
.registration-auto-fields b{display:block}
.registration-auto-fields small{
  color:#68768d;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.registration-auto-fields b{
  margin-top:4px;
  color:#061b4e;
  font-size:13px;
}
.advanced-registration form{padding:8px 28px 30px}
.advanced-registration fieldset,
.admin-edit-registration fieldset{
  margin:18px 0 0;
  padding:16px;
  border:1px solid #dce5f2;
  border-radius:16px;
  background:#fff;
}
.advanced-registration legend,
.admin-edit-registration legend{
  padding:0 8px;
  color:#061b4e;
  font-weight:900;
}
.registration-form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 14px;
}
.advanced-registration label em{
  color:#d93025;
  font-style:normal;
}
.advanced-registration input:focus,
.advanced-registration select:focus,
.advanced-registration textarea:focus{
  outline:3px solid #165dcc1f;
  border-color:#165dcc;
}
.registration-payment-proof small{
  display:block;
  margin:6px 2px 0;
  color:#68768d;
  font-size:11px;
  font-weight:600;
}
.payment-setup-inline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:12px 0;
  padding:10px;
  border:1px solid #dce5f2;
  border-radius:13px;
  background:#f7f9fc;
}
.public-event-details{
  display:grid;
  grid-template-columns:112px minmax(0,2.3fr) minmax(220px,1fr);
  gap:10px;
  max-width:920px;
  margin:10px auto;
}
.public-event-card{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  min-height:66px;
  padding:9px 11px;
  border:1px solid #c9d9f2;
  border-radius:14px;
  background:linear-gradient(135deg,#fff,#eef4ff);
  box-shadow:0 5px 16px #061b4e10;
}
.public-event-icon{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  flex:0 0 36px;
  border-radius:50%;
  color:#fff;
  font-size:21px;
  font-weight:900;
}
.public-event-location-icon{
  background:#fff;
  border:1px solid #dce4ef;
  box-shadow:0 2px 8px #102b5f14;
}
.google-maps-logo{
  display:block;
  width:27px;
  height:27px;
}
.public-event-time-icon{background:#165dcc}
.public-event-copy{
  flex:1;
  min-width:0;
}
.public-event-copy small,
.public-event-copy strong{
  display:block;
}
.public-event-copy small{
  margin-bottom:2px;
  color:#165dcc;
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
}
.public-event-copy strong{
  color:#061b4e;
  font-size:13px;
  line-height:1.28;
}
.public-event-location-copy strong{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.public-event-logo-card{
  justify-content:center;
  gap:4px;
  padding:6px;
  border-color:#c9d9f2;
  background:#fff;
  text-align:center;
}
.public-event-logo-image{
  display:block;
  width:100%;
  max-width:88px;
  height:52px;
  object-fit:contain;
}
.public-event-logo-card.logo-pending{
  flex-direction:column;
}
.public-event-logo-card>small{
  color:#7a5200;
  font-size:7px;
  font-weight:900;
  letter-spacing:.04em;
  line-height:1.1;
}
.public-event-logo-placeholder{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:50%;
  color:#fff;
  background:#061b4e;
  font-size:11px;
  font-weight:900;
}
.public-event-time-card{
  border-color:#bed0ee;
  background:linear-gradient(135deg,#f8fbff,#e8f0ff);
}
.public-event-time-copy strong{
  font-size:14px;
}
.public-event-directions-btn{
  flex:0 0 auto;
  padding:8px 11px;
  border-radius:10px;
  font-size:11px;
  white-space:nowrap;
}
.event-location-settings-card{
  max-width:920px;
  margin:12px auto;
  padding:24px;
}
.event-location-settings-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.event-location-settings-heading small{
  color:#165dcc;
  font-size:11px;
  font-weight:900;
  letter-spacing:.09em;
}
.event-location-settings-heading h2{
  margin:5px 0 7px;
  color:#061b4e;
}
.event-location-settings-heading p{
  max-width:680px;
  margin:0;
  color:#68768d;
  line-height:1.5;
}
.event-settings-badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
}
.event-location-settings-card em{
  color:#d93025;
  font-style:normal;
}
.event-location-settings-card label small{
  display:block;
  margin:6px 2px 0;
  color:#68768d;
  font-size:11px;
  font-weight:600;
}
.admin-event-location-preview{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:16px 0 8px;
  padding:14px;
  border:1px solid #b7e3c8;
  border-radius:15px;
  background:#f1fbf5;
}
.admin-event-location-preview small,
.admin-event-location-preview strong{
  display:block;
}
.admin-event-location-preview small{
  margin-bottom:4px;
  color:#148a45;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}
.admin-event-location-preview span{
  display:block;
  margin-top:5px;
  color:#165dcc;
  font-size:12px;
  font-weight:800;
}
.admin-event-logo-preview{
  display:flex;
  align-items:center;
  gap:16px;
  min-height:116px;
  margin:12px 0 4px;
  padding:14px;
  border:1px solid #b7e3c8;
  border-radius:16px;
  background:#f1fbf5;
}
.admin-event-logo-preview.empty{
  min-height:86px;
  border-style:dashed;
  border-color:#c9d9f2;
  background:#f7f9fc;
}
.admin-event-logo-preview img{
  width:118px;
  height:86px;
  padding:7px;
  border:1px solid #dce5f2;
  border-radius:14px;
  background:#fff;
  object-fit:contain;
}
.admin-event-logo-preview b,
.admin-event-logo-preview small{
  display:block;
}
.admin-event-logo-preview small{
  margin-top:5px;
  color:#68768d;
}
.admin-event-logo-placeholder{
  width:100%;
  text-align:center;
}
.admin-event-preview-logo{
  width:76px;
  height:58px;
  flex:0 0 auto;
  padding:5px;
  border:1px solid #dce5f2;
  border-radius:11px;
  background:#fff;
  object-fit:contain;
}
.payment-settings-card{
  max-width:920px;
  margin:12px auto;
  padding:24px;
}
.payment-settings-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.payment-settings-heading small{
  color:#148a45;
  font-size:11px;
  font-weight:900;
  letter-spacing:.09em;
}
.payment-settings-heading h2{
  margin:5px 0 7px;
  color:#061b4e;
}
.payment-settings-heading p{
  max-width:680px;
  margin:0;
  color:#68768d;
  line-height:1.5;
}
.payment-settings-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.payment-settings-grid em{
  color:#d93025;
  font-style:normal;
}
.payment-settings-grid label small{
  display:block;
  margin:6px 2px 0;
  color:#68768d;
  font-size:11px;
  font-weight:600;
}
.admin-payment-qr-preview{
  display:flex;
  align-items:center;
  gap:16px;
  min-height:150px;
  margin-top:16px;
  padding:14px;
  border:1px solid #b7e3c8;
  border-radius:16px;
  background:#f1fbf5;
}
.admin-payment-qr-preview.empty{
  border-style:dashed;
  border-color:#ffcaca;
  background:#fff8f8;
}
.admin-payment-qr-preview img{
  width:132px;
  height:132px;
  padding:6px;
  border:1px solid #dce5f2;
  border-radius:14px;
  background:#fff;
  object-fit:contain;
}
.admin-payment-qr-preview b,
.admin-payment-qr-preview small{
  display:block;
}
.admin-payment-qr-preview small{
  margin-top:5px;
  color:#68768d;
}
.payment-qr-placeholder{
  width:100%;
  text-align:center;
}
.payment-mandatory-note{
  display:flex;
  gap:10px;
  margin-top:14px;
  padding:12px;
  border:1px solid #ffdba8;
  border-radius:13px;
  color:#7a4600;
  background:#fff7e9;
}
.payment-mandatory-note b{
  flex:0 0 auto;
}
.registration-upi-details{
  display:grid;
  grid-template-columns:190px 1fr;
  gap:20px;
  align-items:center;
  margin:4px 0 16px;
  padding:16px;
  border:1px solid #b7e3c8;
  border-radius:17px;
  background:linear-gradient(135deg,#f4fff8,#eef4ff);
}
.registration-upi-qr{
  padding:8px;
  border:1px solid #dce5f2;
  border-radius:15px;
  background:#fff;
}
.registration-upi-qr img{
  display:block;
  width:100%;
  aspect-ratio:1;
  object-fit:contain;
}
.registration-upi-copy>small{
  color:#148a45;
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
}
.registration-upi-copy h3{
  margin:5px 0 12px;
  color:#061b4e;
}
.registration-fee-display{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  max-width:340px;
  margin:0 0 14px;
  padding:10px 12px;
  border:1px solid #b7e3c8;
  border-radius:12px;
  color:#126b38;
  background:#fff;
}
.registration-fee-display span{
  font-size:12px;
  font-weight:800;
}
.registration-fee-display strong{
  color:#061b4e;
  font-size:22px;
}
.registration-upi-copy>span{
  display:block;
  color:#68768d;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.registration-upi-id{
  display:flex;
  align-items:center;
  gap:9px;
  margin-top:5px;
}
.registration-upi-id b{
  min-width:0;
  overflow-wrap:anywhere;
  color:#061b4e;
  font-size:20px;
}
.registration-upi-copy p{
  margin:12px 0 0;
  color:#46536a;
  font-size:12px;
  line-height:1.5;
}
.registration-upload-preview{
  display:flex;
  align-items:center;
  gap:13px;
  margin-top:12px;
  padding:10px;
  border:1px solid #b7e3c8;
  border-radius:13px;
  background:#f1fbf5;
}
.registration-upload-preview img{
  width:72px;
  height:72px;
  border-radius:10px;
  object-fit:cover;
}
.registration-upload-preview b,
.registration-upload-preview small{display:block}
.registration-upload-preview small{
  max-width:360px;
  margin-top:4px;
  overflow:hidden;
  color:#68768d;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.registration-confirmation{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:18px 4px 8px;
  color:#46536a;
  font-size:13px;
  line-height:1.45;
}
.registration-confirmation input{
  width:18px;
  min-height:18px;
  margin:1px 0 0;
  flex:0 0 auto;
}
.registration-submit{
  min-height:52px;
  font-size:16px;
}
.registration-success{
  padding:18px 8px 6px;
  text-align:center;
}
.registration-success-icon{
  display:grid;
  place-items:center;
  width:78px;
  height:78px;
  margin:0 auto 16px;
  border-radius:50%;
  color:#fff;
  font-size:42px;
  font-weight:900;
  background:#148a45;
  box-shadow:0 12px 30px #148a4540;
}
.registration-success>small{
  color:#148a45;
  font-weight:900;
  letter-spacing:.1em;
}
.registration-success h2{margin:8px 0}
.registration-number-card{
  margin:18px auto;
  padding:15px;
  max-width:360px;
  border:1px solid #bfd0e8;
  border-radius:15px;
  background:#f5f8fd;
}
.registration-number-card small,
.registration-number-card b{display:block}
.registration-number-card small{
  color:#68768d;
  font-weight:800;
}
.registration-number-card b{
  margin-top:5px;
  color:#061b4e;
  font-size:25px;
}
.registration-success-status{margin-bottom:16px}
.registration-admin-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.registration-admin-heading h3{margin:5px 0}
.registration-admin-heading p{margin:0}
.registration-details-modal-box,
.registration-admin-edit-box{width:min(920px,100%)}
.registration-details-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:2px 40px 14px 0;
  border-bottom:1px solid #dce5f2;
}
.registration-details-heading h2{margin:5px 0 0}
.registration-details-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin:16px 0;
}
.registration-details-grid>div{
  min-width:0;
  padding:11px 12px;
  border:1px solid #e2e9f3;
  border-radius:12px;
  background:#f8faff;
}
.registration-details-grid .span-2,
.admin-edit-registration .span-2{grid-column:1/-1}
.registration-details-grid small,
.registration-details-grid b{display:block}
.registration-details-grid small{
  color:#68768d;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.registration-details-grid b{
  margin-top:5px;
  color:#15213b;
  font-size:13px;
  line-height:1.45;
}
.break-word{
  overflow-wrap:anywhere;
  word-break:break-word;
}
.registration-screenshot-section{
  margin:15px 0;
  padding:14px;
  border:1px solid #dce5f2;
  border-radius:14px;
}
.registration-screenshot-section h3{margin:0 0 10px}
.registration-screenshot-preview{
  display:flex;
  align-items:center;
  gap:13px;
}
.registration-screenshot-preview img{
  width:110px;
  height:110px;
  object-fit:cover;
  border:1px solid #dce5f2;
  border-radius:12px;
}
.registration-screenshot-preview b,
.registration-screenshot-preview .btn{display:flex;margin-top:7px}
.admin-edit-registration .locked-profile-fields{background:#f7f9fc}

@media(max-width:760px){
  .registration-modal-box,
  .registration-details-modal-box,
  .registration-admin-edit-box{
    width:100%;
    max-height:calc(100dvh - 14px);
    border-radius:18px 18px 0 0;
  }
  .modal:has(.registration-modal-box),
  .modal:has(.registration-details-modal-box),
  .modal:has(.registration-admin-edit-box){
    align-items:end;
    padding:7px 7px max(7px,env(safe-area-inset-bottom));
  }
  .registration-modal-box #modalBody{max-height:calc(100dvh - 14px - env(safe-area-inset-bottom))}
  .advanced-registration-heading{
    display:block;
    padding:24px 50px 22px 18px;
  }
  .advanced-registration-heading h2{font-size:26px}
  .advanced-registration-step{display:inline-block;margin-top:13px}
  .registration-auto-fields{grid-template-columns:repeat(2,1fr)}
  .advanced-registration form{padding:4px 12px 26px}
  .advanced-registration fieldset{padding:12px}
  .registration-form-grid,
  .registration-details-grid{grid-template-columns:1fr}
  .payment-settings-card{padding:16px}
  .payment-settings-heading{flex-direction:column}
  .payment-settings-grid{grid-template-columns:1fr}
  .payment-setup-inline{align-items:flex-start;flex-direction:column}
  .payment-setup-inline .btn{width:100%}
  .admin-payment-qr-preview{align-items:flex-start}
  .admin-payment-qr-preview img{width:108px;height:108px}
  .public-event-details{
    grid-template-columns:68px minmax(0,1fr);
    gap:6px;
    margin:7px 0;
  }
  .public-event-card{
    gap:6px;
    min-height:54px;
    padding:7px;
    border-radius:12px;
  }
  .public-event-logo-card{
    grid-column:1;
    grid-row:1;
    align-self:stretch;
    min-height:88px;
    padding:5px;
  }
  .public-event-location-card{
    display:grid;
    grid-column:2;
    grid-row:1;
    grid-template-columns:30px minmax(0,1fr);
    gap:5px 7px;
    min-height:88px;
  }
  .public-event-location-card .public-event-icon{
    grid-column:1;
    grid-row:1;
  }
  .public-event-location-card .public-event-location-copy{
    grid-column:2;
    grid-row:1;
  }
  .public-event-time-card{
    grid-column:1 / -1;
    grid-row:2;
  }
  .public-event-icon{
    width:28px;
    height:28px;
    flex-basis:28px;
    font-size:16px;
  }
  .google-maps-logo{width:23px;height:23px}
  .public-event-copy small{font-size:7px}
  .public-event-copy strong{font-size:10.5px;line-height:1.25}
  .public-event-time-copy strong{font-size:11.5px}
  .public-event-logo-image{max-width:58px;height:52px}
  .public-event-logo-placeholder{width:25px;height:25px;font-size:8px}
  .public-event-logo-card>small{font-size:5.5px}
  .public-event-directions-btn{
    grid-column:1 / -1;
    grid-row:2;
    width:100%;
    padding:5px 7px;
    border-radius:8px;
    font-size:9px;
    text-align:center;
  }
  .event-location-settings-card{padding:16px}
  .event-location-settings-heading{flex-direction:column}
  .event-settings-badges{justify-content:flex-start}
  .admin-event-logo-preview{align-items:flex-start}
  .admin-event-logo-preview img{width:96px;height:74px}
  .admin-event-location-preview{
    align-items:flex-start;
    flex-direction:column;
  }
  .admin-event-location-preview .btn{width:100%}
  .payment-mandatory-note{flex-direction:column}
  .registration-upi-details{
    grid-template-columns:1fr;
    gap:14px;
    padding:12px;
  }
  .registration-upi-qr{
    width:min(230px,100%);
    margin:0 auto;
  }
  .registration-upi-id{
    align-items:stretch;
    flex-direction:column;
  }
  .registration-upi-id .btn{width:100%}
  .registration-details-grid .span-2,
  .admin-edit-registration .span-2{grid-column:auto}
  .registration-admin-heading,
  .registration-details-heading{
    align-items:flex-start;
    flex-direction:column;
  }
  .registration-admin-heading .btn{width:100%}
  .registration-screenshot-preview{align-items:flex-start}
  .registration-screenshot-preview img{width:88px;height:88px}
}


/* Version 19.11.1 · Permanent MySQL full-details verification */
.registration-storage-status{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.registration-storage-status small{
  color:var(--muted);
  font-weight:700;
}
.badge.permanent-mysql,
.badge.permanent-mysql-storage{
  background:#e6f7ed;
  color:#0c7137;
  border:1px solid #9bd5b0;
}
.badge.mysql-verification-required{
  background:#fff1df;
  color:#8a4d00;
  border:1px solid #efc277;
}


/* Version 19.11.2 · Historical UTR / payment-proof repair */
.registration-history-warning{
  display:grid;
  gap:5px;
  margin:14px 0;
}
.registration-history-warning span{
  line-height:1.5;
}
.admin-payment-upload-field{
  border:1px dashed #9ab2d9;
  border-radius:14px;
  background:#f7faff;
  padding:14px;
}
.admin-payment-upload-field input[type="file"]{
  margin-top:8px;
}
.admin-payment-upload-field small{
  display:block;
  color:var(--muted);
  margin-top:5px;
}
.admin-payment-upload-preview{
  min-height:72px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#fff;
  padding:12px;
}
.admin-payment-upload-preview .registration-screenshot-preview{
  margin:0;
}


/* Version 19.11.3 · Admin permanent registration delete */
.delete-registration-btn{
  background:#b42318 !important;
  border-color:#b42318 !important;
  color:#fff !important;
}
.delete-registration-btn:hover{
  background:#8f1d14 !important;
  border-color:#8f1d14 !important;
}
#regRows .actions{
  flex-wrap:wrap;
  min-width:280px;
}
.registration-details-modal .actions .btn.danger{
  background:#b42318;
  border-color:#b42318;
  color:#fff;
}


/* Version 19.11.4 · Mobile left drawer navigation */
.mobile-menu-button{
  display:none;
  width:44px;
  height:44px;
  flex:0 0 44px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.38);
  background:rgba(255,255,255,.12);
  color:#fff;
  padding:0;
}
.mobile-menu-button span{
  display:block;
  width:21px;
  height:2px;
  border-radius:999px;
  background:currentColor;
}
.mobile-nav-backdrop{
  position:fixed;
  inset:0;
  z-index:1998;
  background:rgba(2,14,45,.58);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease,visibility .24s ease;
}
.mobile-nav-drawer{
  position:fixed;
  top:0;
  left:0;
  bottom:0;
  z-index:1999;
  width:min(86vw,340px);
  background:#fff;
  box-shadow:18px 0 44px rgba(4,22,62,.28);
  transform:translateX(-105%);
  transition:transform .26s ease;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.mobile-nav-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:92px;
  padding:22px 18px 16px;
  color:#fff;
  background:linear-gradient(135deg,#061b4e,#154fa8);
  border-bottom:4px solid #f7a91b;
}
.mobile-nav-head strong{
  display:block;
  font-size:21px;
}
.mobile-nav-head small{
  display:block;
  margin-top:4px;
  opacity:.82;
}
.mobile-nav-close{
  width:42px;
  height:42px;
  border:none;
  border-radius:12px;
  background:rgba(255,255,255,.15);
  color:#fff;
  font-size:30px;
  line-height:1;
}
.mobile-nav-items{
  padding:14px;
  display:grid;
  gap:8px;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.mobile-nav-item{
  width:100%;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  padding:12px 14px;
  border-radius:12px;
  border:1px solid #dce6f4;
  background:#f8fbff;
  color:#061b4e;
  font-weight:800;
  text-align:left;
}
.mobile-nav-item.active{
  background:#0f5ccd;
  border-color:#0f5ccd;
  color:#fff;
}
.mobile-nav-logout{
  margin-top:8px;
  background:#fff0f0;
  border-color:#efb3b3;
  color:#a10d0d;
}
body.mobile-nav-open{
  overflow:hidden;
}
body.mobile-nav-open .mobile-nav-backdrop{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
body.mobile-nav-open .mobile-nav-drawer{
  transform:translateX(0);
}

@media(max-width:767px){
  .mobile-menu-button{
    display:flex;
  }

  #app .appbar{
    position:sticky;
    top:0;
    z-index:80;
    display:grid;
    grid-template-columns:44px minmax(0,1fr) auto;
    gap:10px;
    align-items:center;
    min-height:68px;
    padding:10px 12px;
  }

  #app .appbar > div{
    min-width:0;
  }

  #app .appbar > div strong,
  #app .appbar > div small{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  #app > nav,
  #app nav{
    display:none !important;
  }

  .shell{
    width:100%;
    max-width:none;
    padding:8px;
    overflow-x:hidden;
  }

  #app,
  #view{
    width:100%;
    min-width:0;
    overflow-x:hidden;
  }

  .topbar{
    padding:12px 56px 12px 12px;
    line-height:1.35;
    min-height:64px;
  }

  .member-profile-card,
  .profile-card,
  .member-card,
  .card{
    max-width:100%;
  }

  body{
    padding-bottom:150px;
  }

  footer,
  .footer,
  .site-footer{
    position:relative !important;
    bottom:auto !important;
  }
}


/* Version 19.11.5 · Page freeze and drawer interaction safeguards */
.mobile-nav-drawer[aria-hidden="true"]{
  pointer-events:none;
}
.mobile-nav-drawer[aria-hidden="false"]{
  pointer-events:auto;
}
body:not(.mobile-nav-open) .mobile-nav-backdrop{
  display:block;
  pointer-events:none;
}
@media(min-width:768px){
  .mobile-nav-drawer,
  .mobile-nav-backdrop{
    display:none !important;
  }
}


/* Version 19.11.6 · Smart Match flow bug fix */
.smart-match-score-key{
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  column-gap:8px;
}
.smart-match-score-key small{
  grid-column:1/-1;
  margin-top:4px;
  opacity:.78;
  font-weight:700;
}
.smart-match-slot span{line-height:1.35}
.smart-match-actions{flex-wrap:wrap}
@media(max-width:767px){
  .smart-match-card{overflow:hidden}
  .smart-match-card-top{
    grid-template-columns:62px 52px minmax(0,1fr);
  }
  .smart-match-percent{
    grid-column:1/-1;
    justify-self:start;
    margin-top:6px;
  }
  .smart-match-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .smart-match-actions .btn{
    width:100%;
    min-height:44px;
  }
}


/* Version 19.11.7 · Only genuine Smart Matches */
.smart-match-card{
  border-left:4px solid #f7a91b;
}
.smart-match-card .smart-match-reasons{
  background:#fffaf0;
}


/* Version 19.11.8 · Complete feature parity and missing-action bridge */
.feature-parity-note{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  color:var(--muted);
  font-size:12px;
  font-weight:700;
}
.smart-match-card[data-real-match="true"]{
  border-left-color:#f7a91b;
}


/* Version 19.11.9 · Category-wise Best Matches */
.category-wise-smart-filters{
  grid-template-columns:minmax(230px,1fr) minmax(190px,280px)
    minmax(170px,230px) auto;
}
.smart-category-group{
  display:grid;
  gap:12px;
  margin-bottom:24px;
}
.smart-category-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 15px;
  border-radius:14px;
  background:linear-gradient(135deg,#061b4e,#114ea6);
  color:#fff;
  border-bottom:4px solid #f7a91b;
}
.smart-category-heading small{
  display:block;
  color:#ffd98c;
  font-weight:900;
  letter-spacing:.08em;
}
.smart-category-heading h3{
  margin:2px 0 0;
  color:#fff;
}
.smart-category-heading > span{
  flex:0 0 auto;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.28);
  font-weight:900;
}
.smart-match-card .member-name-line + .muted{
  margin-top:4px;
}
@media(max-width:980px){
  .category-wise-smart-filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:767px){
  .category-wise-smart-filters{
    grid-template-columns:1fr;
  }
  .smart-category-heading{
    align-items:flex-start;
  }
}


/* Version 19.11.10 · Mobile footer permanent visibility fix */
@media(max-width:767px){
  :root{
    --support-footer-height:78px;
  }

  body{
    min-height:100dvh;
    padding-bottom:calc(
      var(--support-footer-height)
      + var(--support-footer-safe-bottom)
      + 18px
    ) !important;
  }

  /*
   * Override the older generic mobile rule:
   * footer { position: relative !important; }
   */
  footer.support-footer,
  .support-footer{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    top:auto !important;
    z-index:1200 !important;
    width:100% !important;
    max-width:100vw !important;
    min-height:calc(
      var(--support-footer-height)
      + var(--support-footer-safe-bottom)
    ) !important;
    margin:0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto !important;
    align-content:center !important;
    justify-items:center !important;
    gap:3px !important;
    padding:5px 7px calc(
      6px + var(--support-footer-safe-bottom)
    ) !important;
    overflow:hidden !important;
    visibility:visible !important;
    opacity:1 !important;
    transform:none !important;
  }

  .support-footer-help{
    width:100%;
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:nowrap;
    gap:4px;
    white-space:nowrap;
  }

  .support-footer-label{
    flex:0 0 auto;
  }

  .support-contact{
    min-width:0;
    flex:0 1 auto;
    padding:2px 4px;
  }

  .support-call{
    font-size:10px;
  }

  .support-whatsapp{
    min-width:21px;
    font-size:8px;
    padding:3px 4px;
  }

  .support-divider{
    flex:0 0 auto;
  }

  .support-footer-meta{
    width:100%;
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    column-gap:7px;
    row-gap:2px;
    white-space:normal;
    font-size:8px;
    line-height:1.15;
    text-align:center;
  }

  .network-status,
  .footer-version,
  .footer-copyright,
  .footer-credit{
    flex:0 0 auto;
  }

  #toast{
    bottom:calc(
      var(--support-footer-height)
      + var(--support-footer-safe-bottom)
      + 10px
    ) !important;
  }

  .mobile-nav-drawer{
    padding-bottom:calc(
      var(--support-footer-height)
      + var(--support-footer-safe-bottom)
    );
  }
}

@media(max-width:390px){
  :root{
    --support-footer-height:82px;
  }

  .support-footer-help{
    gap:3px;
  }

  .support-call{
    font-size:9px;
  }

  .support-footer-meta{
    column-gap:5px;
    font-size:7.5px;
  }

  .footer-credit{
    display:none;
  }
}


/* Demo environment identity */
.demo-environment-badge{
  position:sticky;
  top:0;
  z-index:1300;
  width:100%;
  padding:7px 12px;
  background:#b42318;
  color:#fff;
  text-align:center;
  font-weight:900;
  letter-spacing:.08em;
  box-shadow:0 3px 12px rgba(77,10,8,.25);
}
@media(max-width:767px){
  .demo-environment-badge{
    font-size:11px;
    padding:6px 8px;
  }
}
