:root{
  --bg:#f7f6f2;
  --bg-2:#ece8df;
  --paper:rgba(255,252,247,.92);
  --paper-strong:rgba(255,255,255,.98);
  --ink:#111;
  --muted:#5d5348;
  --line:rgba(53,35,19,.12);
  --amber:#d6a84a;
  --amber-deep:#8c5512;
  --danger:#a44c38;
  --success:#285226;
  --success-bg:rgba(77,123,73,.13);
  --error-bg:rgba(164,76,56,.14);
  --info:#295ea6;
  --info-bg:rgba(41,94,166,.12);
  --max:1120px;
  --radius-xl:28px;
  --radius-lg:20px;
  --radius-md:14px;
  --font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-display:"Avenir Next","Inter","Segoe UI",sans-serif;
  --shadow:0 22px 70px rgba(68,42,18,.14);
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:var(--font);color:var(--ink);background:radial-gradient(circle at top right, rgba(214,168,74,.08), transparent 20%),linear-gradient(180deg,#fbfaf7 0%,var(--bg) 46%,var(--bg-2) 100%);min-height:100vh;min-height:calc(var(--app-viewport-height,100vh));padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--app-keyboard-inset,0px));transition:padding-bottom .18s ease} 
html[data-app-env="dev"]:not([data-dev-visual="off"]) body{background:radial-gradient(circle at top right, rgba(255,0,168,.16), transparent 22%),linear-gradient(180deg,#fff4fb 0%,#ffe5f6 46%,#ffd2f0 100%)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(rgba(0,0,0,.03) 1px,transparent 1px);background-size:18px 18px;mask-image:linear-gradient(180deg,rgba(0,0,0,.16),transparent 85%)}
body,body *{text-rendering:optimizeLegibility}
body.auth-shell{--auth-topbar-offset:env(safe-area-inset-top,0px);--auth-topbar-height:74px;--auth-topbar-total:calc(var(--auth-topbar-offset) + var(--auth-topbar-height));min-height:calc(var(--app-viewport-height,100vh) + var(--app-keyboard-inset,0px))}
a{color:inherit;text-decoration:none} button,input,textarea,select{font:inherit} button{cursor:pointer}
.shell{width:min(var(--max),calc(100% - 32px));margin:0 auto}.topbar{position:sticky;top:0;z-index:20;padding-top:env(safe-area-inset-top,0px);border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,rgba(10,10,10,.94),rgba(33,24,17,.94));backdrop-filter:blur(16px);box-shadow:0 18px 40px rgba(0,0,0,.18)}.topbar[data-app-env="production"]{background:linear-gradient(145deg,rgba(10,10,10,.94),rgba(33,24,17,.94))}html[data-app-env="dev"]:not([data-dev-visual="off"]) .topbar{background:linear-gradient(145deg,#ff00a8,#ff4fd8 55%,#ff8be8);border-bottom-color:rgba(255,255,255,.24);box-shadow:0 18px 40px rgba(255,0,168,.28)}.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px}.brand{display:flex;gap:14px;align-items:center;font-weight:800;color:#fff}.brand-mark{width:72px;height:52px;border-radius:12px;display:grid;place-items:center;overflow:hidden;box-shadow:none;flex:0 0 72px;background:transparent}.brand-mark img{width:100%;height:100%;object-fit:contain;object-position:center 35%;display:block}.brand-copy small{display:block;color:rgba(255,255,255,.7);font-size:12px;text-transform:uppercase;letter-spacing:.12em}.brand-copy div{font-family:var(--font-display);font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;line-height:1.05}.topbar .muted{color:rgba(255,255,255,.72)}.topbar .btn-secondary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);color:#fff}.topbar .btn-danger{background:linear-gradient(145deg,var(--amber),var(--amber-deep));border-color:rgba(214,168,74,.55);color:#fff}.topbar #topbarUserName{color:#fff}.topbar #topbarUserRole{color:rgba(255,255,255,.72)!important}
.topbar-user-menu,.partner-topbar-actions{display:flex;align-items:center;gap:10px;min-width:0}.space-switch-button{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:6px 12px 6px 7px;border:1px solid rgba(214,168,74,.38);border-radius:999px;background:rgba(214,168,74,.14);color:#fff;text-decoration:none;box-shadow:0 10px 24px rgba(0,0,0,.12);transition:transform .16s ease,background .16s ease,border-color .16s ease}.space-switch-button:hover{transform:translateY(-1px);background:rgba(214,168,74,.22);border-color:rgba(214,168,74,.58)}.space-switch-button:focus-visible{outline:3px solid rgba(214,168,74,.34);outline-offset:2px}.space-switch-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:999px;background:linear-gradient(145deg,var(--amber),var(--amber-deep));color:#fff;font-size:17px;font-weight:900;line-height:1}.space-switch-copy{display:grid;gap:1px;min-width:0}.space-switch-copy small{color:rgba(255,255,255,.66);font-size:9px;font-weight:800;line-height:1.1;letter-spacing:.07em;text-transform:uppercase}.space-switch-copy strong{color:inherit;font-size:12px;line-height:1.1;white-space:nowrap}.space-switch-label-short{display:none}
.hero{padding:20px 0 24px}.hero-card,.card{background:linear-gradient(180deg,var(--paper-strong),var(--paper));border:1px solid rgba(53,35,19,.12);border-radius:22px;padding:28px;box-shadow:0 24px 60px rgba(0,0,0,.06)}.hero-card{position:relative;overflow:hidden}.hero-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right, rgba(214,168,74,.18), transparent 32%),radial-gradient(circle at bottom left, rgba(17,17,17,.04), transparent 28%);pointer-events:none}.hero-card::after{content:"";position:absolute;inset:auto 0 0 0;height:3px;background:linear-gradient(90deg,transparent,rgba(214,168,74,.8),transparent);pointer-events:none}.card{position:relative}.card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(214,168,74,.4),transparent);pointer-events:none}
body.auth-shell .topbar{position:fixed;left:0;right:0;top:0;z-index:40}
body.auth-shell .hero{padding-top:calc(var(--auth-topbar-total) + 20px);min-height:calc(var(--app-viewport-height,100vh) - var(--auth-topbar-total));display:block}
body.auth-shell.keyboard-open .hero{padding-bottom:max(24px,var(--app-keyboard-inset,0px));min-height:calc(var(--app-viewport-height,100vh) - var(--auth-topbar-total) + var(--app-keyboard-inset,0px))}
body.keyboard-open .hero{padding-bottom:max(20px,var(--app-keyboard-inset,0px))}
body.auth-shell.keyboard-open .layout,body.auth-shell.keyboard-open .stack,body.auth-shell.keyboard-open .grid-2,body.auth-shell.keyboard-open .summary-grid{align-items:start}
.label{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:linear-gradient(145deg,var(--amber),var(--amber-deep));color:#fff;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 10px 22px rgba(141,90,23,.2)}h1,h2,h3{font-family:var(--font-display);text-transform:uppercase;font-weight:800}h1{font-size:clamp(30px,4.2vw,48px);line-height:1.03;letter-spacing:.012em;margin:14px 0;text-wrap:balance}h2{margin:8px 0 10px;font-size:24px;letter-spacing:.012em;text-wrap:balance}h3{margin:6px 0 10px;font-size:19px;letter-spacing:.012em}.muted{color:var(--muted);line-height:1.65}
.layout,.stack,.grid-2,.summary-grid{display:grid;gap:18px}.layout{grid-template-columns:minmax(320px,420px) 1fr}.stack,.grid-2{grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.summary-grid .card{padding:18px;border-radius:20px}.metric{display:block;font-size:28px;font-weight:900;letter-spacing:-.03em}.grid-2>article.card,.grid-2>.card{height:100%}
.field{display:grid;gap:8px;margin-bottom:14px}.field label{font-weight:700;font-size:14px}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(74,53,37,.18);border-radius:14px;padding:12px 14px;background:rgba(255,255,255,.92);color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.4);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:rgba(159,90,22,.48);box-shadow:0 0 0 4px rgba(217,164,65,.14)}.field textarea{min-height:116px;resize:vertical}.inline-actions{display:flex;gap:10px;flex-wrap:wrap}
.btn{border:1px solid #111;border-radius:12px;padding:12px 16px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.btn-primary{background:linear-gradient(145deg,var(--amber),var(--amber-deep));border-color:rgba(141,90,23,.55);color:#fff;box-shadow:0 12px 24px rgba(141,90,23,.24)}.btn-secondary{background:rgba(255,255,255,.82);border:1px solid rgba(0,0,0,.14);color:#111}.btn-danger{background:#111;color:#fff}.status{margin-top:12px;padding:12px 14px;border-radius:14px;font-size:14px;display:none}.status.show{display:block}.status.success{background:var(--success-bg);color:var(--success)}.status.error{background:var(--error-bg);color:#7c2f20}.status.info{background:var(--info-bg);color:var(--info)}
.member-list{display:grid;gap:12px}.member-item{border:1px solid var(--line);border-radius:16px;padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(246,244,240,.88))}.member-item strong{display:block;font-size:17px;margin-bottom:6px}.brewery-list{display:grid;gap:12px}.brewery-item{border:1px solid var(--line);border-radius:16px;padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(246,244,240,.88))}.brewery-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.brewery-item strong{display:block;font-size:17px;margin-bottom:6px}.brewery-distance{display:inline-flex;align-items:center;justify-content:center;min-width:74px;padding:8px 12px;border-radius:999px;background:linear-gradient(145deg,var(--amber),var(--amber-deep));color:#fff;font-weight:800;font-size:13px}.brewery-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.brewery-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.05);color:var(--muted);font-size:13px}.brewery-map{height:320px;border-radius:16px;overflow:hidden;border:1px solid var(--line)}.brewery-user-marker span{display:block;width:18px;height:18px;border-radius:999px;background:#111;border:3px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.22)}.hidden{display:none!important}.footer{padding:20px 0 48px;color:var(--muted);font-size:14px}.member-featured-event-banner{display:grid;grid-template-columns:128px minmax(0,1fr) auto;gap:0;align-items:stretch;min-height:0;overflow:hidden;padding:0!important;border:1px solid rgba(212,169,78,.18);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,246,240,.94));box-shadow:0 10px 30px rgba(74,53,37,.08)}.member-featured-event-media{display:block;width:128px;height:100%;min-height:96px;align-self:stretch;border-radius:22px 0 0 22px;overflow:hidden;background:linear-gradient(145deg,rgba(17,17,17,.08),rgba(17,17,17,.02));border-right:1px solid rgba(74,53,37,.08);box-shadow:none}.member-featured-event-media img{display:block;width:100%;height:100%;object-fit:cover}.member-featured-event-media-empty{display:grid;place-items:center}.member-featured-event-placeholder{padding:10px;text-align:center;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#6b7280;font-size:11px;line-height:1}.member-featured-event-content{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-content:center;min-width:0;padding:12px 16px}.member-featured-event-copy{min-width:0;display:grid;align-content:start;min-height:100%}.member-featured-event-eyebrow{font-size:10px;line-height:1.1;letter-spacing:.12em;text-transform:uppercase;color:#b07a1f;font-weight:900;margin:0}.member-featured-event-content h3{margin:2px 0 0;font-size:20px;line-height:1.02;color:#24150d;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.member-featured-event-meta{margin:3px 0 0;font-size:12px;line-height:1.2;font-weight:700;color:#7c5a1c;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.member-featured-event-content .muted{margin:2px 0 0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.3;color:rgba(36,21,13,.72)}.member-featured-event-actions{display:flex;justify-content:flex-end;align-self:end;padding-top:6px}.member-featured-event-actions .btn{width:190px;min-width:190px;max-width:190px;height:auto;border-radius:999px;justify-content:center;padding:9px 20px;white-space:nowrap;box-shadow:none}.member-card{position:relative;overflow:visible;background:transparent;color:#0f172a;border:0;box-shadow:none;aspect-ratio:auto;display:grid;grid-template-rows:1fr;gap:0;padding:0}.member-card::before,.member-card::after,.member-card-header-band,.member-card-main{display:none}.member-card.member-card-premium{background:transparent;border:0}.member-card .label,.member-card .muted{color:rgba(15,23,42,.66)}.member-card-body{display:grid;grid-template-columns:1fr;gap:0;align-items:center;min-height:0}.member-card-photo-col{display:grid;align-items:center;justify-items:stretch}.member-card-field{display:grid;gap:2px;min-width:0}.member-card-field-inline{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.member-card-field-label{font-size:11px;line-height:1.15;letter-spacing:.08em;text-transform:uppercase;color:#475569}.member-card-meta{margin:0;font-size:13px;line-height:1.35}.member-card-id{font-size:18px;letter-spacing:.12em;text-transform:uppercase;color:#0f172a}.member-card-name{font-family:var(--font-display);font-size:34px;font-weight:800;letter-spacing:.01em;margin:0;text-transform:uppercase;line-height:.96;color:#111827}.member-card-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.member-card-role{font-size:18px;text-transform:uppercase;letter-spacing:.08em;color:#1d4ed8;font-weight:800}.member-card.member-card-premium .member-card-role{color:#8d5a17}.member-card-points-field .member-points-balance{font-size:28px;line-height:1.02;color:#0f172a}.member-card-qr-frame{display:none}.member-card-qr{background:#fff;border-radius:14px;padding:8px;display:grid;place-items:center;min-height:120px}.member-card-qr img{width:100%;height:auto;display:block}.member-card-render-image{display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 16px 40px rgba(15,23,42,.12)}.member-card{cursor:pointer}.member-card-fullscreen{position:fixed;inset:0;background:rgba(3,6,12,.94);z-index:1200;display:grid;grid-template-rows:auto 1fr}.member-card-fullscreen.hidden{display:none}.member-card-fullscreen-close{position:absolute;top:calc(env(safe-area-inset-top,0px) + 18px);right:calc(env(safe-area-inset-right,0px) + 18px);width:48px;height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;font-size:32px;line-height:1;display:inline-flex;align-items:center;justify-content:center;z-index:2}.member-card-fullscreen-stage{display:grid;place-items:center;padding:calc(env(safe-area-inset-top,0px) + 32px) calc(env(safe-area-inset-right,0px) + 32px) calc(env(safe-area-inset-bottom,0px) + 32px) calc(env(safe-area-inset-left,0px) + 32px)}.member-card-fullscreen-image{display:block;max-width:min(92vw,1400px);max-height:88vh;width:auto;height:auto;border-radius:28px;box-shadow:0 28px 80px rgba(0,0,0,.34)}.member-card-actions-row{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:stretch}.member-card-actions-row-outside{margin-top:14px}.member-card-public-action,.member-card-wallet-actions{height:100%}.member-card-public-action .btn,.member-card-wallet-actions .member-wallet-inline-button{width:100%;justify-content:center}.member-card-public-action{display:grid;order:2}.member-card-public-action .inline-actions{display:grid;height:100%}.member-card-public-action .btn{min-height:54px}.member-wallet-compact{display:grid;justify-items:start;gap:10px;margin-top:12px}.member-wallet-compact-inside{margin-top:0}.member-card-wallet-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:stretch;order:1}.member-card-wallet-actions .member-wallet-inline-button{min-height:54px}.member-wallet-inline-button{display:inline-flex;align-items:center;gap:10px}.member-wallet-inline-button img{display:block;width:22px;height:22px;border-radius:6px;flex:0 0 auto}.member-wallet-inline-button span{line-height:1}.member-card .btn-secondary,.member-card-actions-row-outside .btn-secondary{background:rgba(255,255,255,.74);border-color:rgba(148,163,184,.3);color:#0f172a}.member-card.member-card-premium+.member-card-actions-row-outside .btn-secondary{background:rgba(255,255,255,.6);border-color:rgba(141,90,23,.18);color:#111}.member-dashboard-shell,.member-dashboard-panels{display:grid;gap:18px}.member-nav-shell{position:sticky;top:90px;z-index:5}.member-nav-topline .muted{max-width:64ch}.member-nav-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.member-nav-tab{min-height:100%}.member-section-panel{display:grid;gap:18px}.member-profile-grid,.member-profile-subgrid{align-items:start}.member-radius-card{background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(246,241,234,.9))}.member-brewery-search-row{gap:10px}.member-brewery-search-row .field{min-width:0}
@media(max-width:980px){.layout,.stack,.grid-2,.summary-grid,.member-nav-tabs{grid-template-columns:1fr}.shell{width:min(var(--max),calc(100% - 20px))}.hero{padding:16px 0 20px}.hero-card,.card{padding:20px;border-radius:22px}.member-nav-shell{position:static}.member-featured-event-banner{grid-template-columns:96px minmax(0,1fr) auto;gap:0;padding:0!important;border-radius:24px}.member-featured-event-media{width:96px;height:100%;min-height:88px;border-radius:24px 0 0 24px}.member-featured-event-content{gap:6px;align-content:center;padding:10px 12px}.member-featured-event-copy{align-content:start}.member-featured-event-eyebrow{font-size:9px}.member-featured-event-content h3{font-size:17px}.member-featured-event-meta{font-size:11px;margin-top:2px}.member-featured-event-content .muted{font-size:12px;-webkit-line-clamp:1}.member-featured-event-actions{display:flex;justify-content:flex-end;align-self:end;padding-top:4px}.member-featured-event-actions .btn{width:170px;min-width:170px;max-width:170px;padding:8px 14px}.member-card{aspect-ratio:auto;width:100%;max-width:560px;margin:0 auto;padding:18px}.member-card-header-title{font-size:clamp(20px,4vw,30px)}.member-card-body{grid-template-columns:1fr;gap:14px}.member-card-actions-row{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}.member-card-public-action,.member-card-wallet-actions{width:100%}}

@media(max-width:640px){.topbar-inner{min-height:64px;gap:8px}.brand{gap:8px;min-width:0;flex:1}.brand-mark{width:68px;height:46px;border-radius:10px;flex:0 0 68px}.brand-mark img{object-position:center 32%}.brand-copy{min-width:0}.brand-copy small{font-size:8px;letter-spacing:.05em}.brand-copy div{font-size:10px;line-height:1.02}.topbar-inner #topbarUserMenu{gap:6px;flex-shrink:0}.topbar-inner #topbarUserMenu>div{max-width:86px}.topbar-inner #topbarUserName{font-size:11px;line-height:1.02;word-break:break-word}.topbar-inner #topbarUserRole{font-size:9px}.topbar-inner #topbarLogoutBtn{padding:.5rem .72rem;font-size:11px;white-space:nowrap}.member-card{padding:14px;gap:12px;aspect-ratio:auto;min-height:0}.member-card-header-band{grid-template-columns:auto minmax(0,1fr) 40px;gap:10px}.member-card-header-flag{width:48px;height:34px;border-radius:8px}.member-card-header-title{font-size:18px;letter-spacing:.04em}.member-card-header-subtitle{font-size:10px}.member-card-header-badge{width:40px;height:40px;border-radius:12px;font-size:14px}.member-card-render-image{border-radius:18px}.member-card-fullscreen-stage{padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden;width:100vw;height:100vh;position:relative}.member-card-fullscreen-image{position:absolute;left:50%;top:50%;max-width:calc(100vh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);max-height:calc(100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px) - 24px);width:auto;height:auto;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center center;border-radius:20px;display:block}.member-card-fullscreen-close{top:calc(env(safe-area-inset-top,0px) + 12px);right:calc(env(safe-area-inset-right,0px) + 12px);width:44px;height:44px;font-size:28px}.member-wallet-inline-button,.member-nav-tab,.member-brewery-search-row,.member-brewery-search-row .field{width:100%}.member-wallet-inline-button{justify-content:center}.member-brewery-search-row{flex-wrap:wrap!important}.group-order-card{padding:14px!important;gap:12px!important}.group-order-head{gap:10px!important}.group-order-head .muted{font-size:14px;line-height:1.5}.group-order-head strong{font-size:18px!important}.group-order-badges{width:100%;justify-items:start!important;grid-template-columns:repeat(2,max-content);gap:8px 10px!important}.group-order-badges .muted{font-size:13px}.group-order-phase-card{padding:12px!important}.group-order-phase-card .muted{font-size:14px;line-height:1.5}.group-order-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.group-order-summary .card{padding:10px!important;border-radius:16px!important}.group-order-summary .label{font-size:11px;letter-spacing:.05em}.group-order-summary .metric{font-size:16px!important;line-height:1.15}.group-order-summary .muted{font-size:12px;line-height:1.35;margin-top:2px!important}.group-order-progress-block{margin-top:4px!important}.group-order-progress-head{align-items:flex-end!important}.group-order-progress-head .label{max-width:65%}.group-order-progress-block .muted{font-size:14px;line-height:1.5}.group-order-reservation-card{padding:14px!important}.group-order-readonly-top{align-items:flex-end!important}.group-order-readonly .metric{font-size:20px!important}.group-order-readonly-total{text-align:left!important}.group-order-comment-box{padding:10px 12px!important}.group-order-comment-box .muted{font-size:14px;line-height:1.45}.group-order-actions{display:grid!important;grid-template-columns:1fr;gap:10px!important}.group-order-pay-btn{width:100%;justify-content:center;padding:14px 16px!important;font-size:15px;box-shadow:0 18px 30px rgba(141,90,23,.26)!important}.group-order-subtle-btn{width:100%;justify-content:center;background:rgba(255,255,255,.55)!important;border-color:rgba(0,0,0,.08)!important;color:rgba(17,17,17,.72)!important;box-shadow:none!important}.group-order-reservation-card .btn{justify-content:center}}
@media(max-width:640px){.space-switch-button{min-height:44px;padding:5px 8px 5px 5px;gap:6px}.space-switch-icon{width:30px;height:30px;flex-basis:30px;font-size:15px}.space-switch-copy small{display:none}.space-switch-copy strong{font-size:10px}.space-switch-label-full{display:none}.space-switch-label-short{display:inline}.topbar-user-menu.has-space-switch .topbar-user-identity,.partner-topbar-actions.has-space-switch .partner-topbar-copy{display:none}.partner-topbar-actions{gap:6px}}



.identity-card.status-active{background:linear-gradient(145deg,#dff3df,#bfe6bf);color:#17361a}.identity-card.status-active .label,.identity-card.status-active .muted{color:rgba(23,54,26,.72)}.identity-card.status-invited{background:linear-gradient(145deg,#fff0d6,#f5d39a);color:#4e3213}.identity-card.status-invited .label,.identity-card.status-invited .muted{color:rgba(78,50,19,.72)}.identity-card.status-disabled{background:linear-gradient(145deg,#fde3de,#f4c3b8);color:#5f1f16}.identity-card.status-disabled .label,.identity-card.status-disabled .muted{color:rgba(95,31,22,.72)}

/* BSC DATABEER — portail de recherche de l'espace membre */
.databeer-card{position:relative;overflow:hidden;padding:26px;border-radius:28px;background:radial-gradient(circle at 92% 8%,rgba(251,191,36,.24),transparent 28%),linear-gradient(135deg,#17110b 0%,#2b1d10 54%,#3c2712 100%);color:#fff;border:1px solid rgba(214,168,74,.22);box-shadow:0 22px 54px rgba(44,28,12,.18)}
.databeer-card::after{content:"";position:absolute;right:-80px;bottom:-100px;width:230px;height:230px;border:1px solid rgba(255,255,255,.07);border-radius:50%;box-shadow:0 0 0 34px rgba(255,255,255,.025),0 0 0 68px rgba(255,255,255,.018);pointer-events:none}
.databeer-card-head{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);align-items:start;max-width:820px}
.databeer-link-icon svg{display:block;width:28px;height:28px;fill:currentColor}
.databeer-kicker{display:block;margin:2px 0 7px;color:#e9b84d;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.databeer-card h2{margin:0;color:#fff;font-size:clamp(28px,4vw,40px);line-height:1}
.databeer-card-head p{max-width:680px;margin:10px 0 0;color:rgba(255,255,255,.7);font-size:15px;line-height:1.55}
.databeer-links{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}
.databeer-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;min-height:80px;padding:14px 16px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.075);color:#fff;text-decoration:none;backdrop-filter:blur(10px);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
.databeer-link:hover,.databeer-link:focus-visible{transform:translateY(-2px);border-color:rgba(247,201,91,.62);background:rgba(255,255,255,.12);box-shadow:0 14px 28px rgba(0,0,0,.16);outline:none}
.databeer-link-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;color:#211409;background:#e9b84d;flex:0 0 auto}
.databeer-link-breweries .databeer-link-icon{background:#f59e0b}
.databeer-link-world .databeer-link-icon{background:#67e8f9}
.databeer-link-market .databeer-link-icon{background:#86efac}
.databeer-link-copy{display:grid;gap:4px;min-width:0}
.databeer-link-copy strong{font-size:16px;line-height:1.1;color:#fff}
.databeer-link-copy small{font-size:12px;line-height:1.3;color:rgba(255,255,255,.62)}
.databeer-link-arrow{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:rgba(255,255,255,.09);font-size:16px;font-weight:900}
@media(max-width:680px){.databeer-card{padding:20px;border-radius:24px}.databeer-links{grid-template-columns:1fr;margin-top:20px}.databeer-link{min-height:74px}.databeer-card-head p{font-size:14px}}
.member-modal-safe-area{padding:calc(env(safe-area-inset-top,0px) + 24px) max(24px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 24px) max(24px,env(safe-area-inset-left,0px))!important;scroll-padding-top:calc(env(safe-area-inset-top,0px) + 24px);scroll-padding-bottom:calc(env(safe-area-inset-bottom,0px) + 24px)}
@media(max-width:700px){.member-modal-safe-area{padding:calc(env(safe-area-inset-top,0px) + 12px) max(12px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 12px) max(12px,env(safe-area-inset-left,0px))!important;scroll-padding-top:calc(env(safe-area-inset-top,0px) + 12px);scroll-padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12px);align-items:flex-start!important;place-items:start center!important}.member-modal-safe-area>[role="dialog"]{width:100%;max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px)!important;margin:0 auto!important;overflow:auto!important}}
.member-card-photo-col{position:relative}
.member-card-live-qr{position:absolute;z-index:2;left:7%;top:34.74%;width:12.67%;aspect-ratio:1;display:grid;place-items:center;background:#fff;overflow:hidden;pointer-events:none}
.member-card-live-qr img{display:block;width:100%;height:100%;object-fit:contain}
.member-card-live-qr.is-refreshing img{animation:member-card-qr-refresh .8s cubic-bezier(.22,1,.36,1)}
.member-card-live-qr.is-refreshing::after{content:"";position:absolute;inset:-24%;border:3px solid rgba(255,255,255,.92);border-radius:28%;animation:member-card-qr-pulse .8s ease-out;pointer-events:none}
.member-card-qr-zoom{position:absolute;z-index:5;left:13.34%;top:44.72%;width:clamp(28px,3vw,34px);height:clamp(28px,3vw,34px);padding:0;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(15,23,42,.16);border-radius:999px;background:rgba(255,255,255,.92);color:#0f172a;box-shadow:0 5px 14px rgba(15,23,42,.24);cursor:pointer;transition:transform .18s ease,background .18s ease;touch-action:manipulation}
.member-card-qr-zoom:hover,.member-card-qr-zoom:focus-visible{transform:translate(-50%,-50%) scale(1.1);background:#fff;outline:2px solid rgba(15,23,42,.72);outline-offset:2px}
.member-card-qr-zoom svg{width:56%;height:56%;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.member-card-fullscreen-qr-zoom{position:fixed;z-index:4;width:44px;height:44px;padding:0;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(15,23,42,.16);border-radius:999px;background:rgba(255,255,255,.94);color:#0f172a;box-shadow:0 8px 22px rgba(0,0,0,.3);cursor:pointer;transition:transform .18s ease,background .18s ease;touch-action:manipulation}
.member-card-fullscreen-qr-zoom:hover,.member-card-fullscreen-qr-zoom:focus-visible{transform:translate(-50%,-50%) scale(1.08);background:#fff;outline:2px solid rgba(255,255,255,.9);outline-offset:2px}
.member-card-fullscreen-qr-zoom svg{width:52%;height:52%;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.member-card-qr-refresh{display:none;width:44px;height:44px;flex:0 0 44px;padding:0;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(255,255,255,.12);color:#fff;box-shadow:0 6px 16px rgba(0,0,0,.22);cursor:pointer;transition:transform .18s ease,background .18s ease;touch-action:manipulation}
.member-card-fullscreen.is-qr .member-card-qr-refresh{display:inline-flex}
.member-card-qr-refresh:hover,.member-card-qr-refresh:focus-visible{transform:scale(1.08);background:rgba(255,255,255,.2);outline:2px solid rgba(255,255,255,.88);outline-offset:2px}
.member-card-qr-refresh:disabled{cursor:wait;opacity:.72}
.member-card-qr-refresh svg{width:55%;height:55%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.member-card-qr-refresh.is-loading svg{animation:member-card-qr-spin .75s linear infinite}

/* Member profile contact table and self-service editor. */
.member-profile-contact-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}
.member-profile-contact-title{margin-top:3px;font-size:18px;font-weight:900;letter-spacing:-.02em}
.member-profile-edit-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;padding:0;border:1px solid var(--line);border-radius:14px;background:var(--paper-strong);color:var(--ink);cursor:pointer;box-shadow:0 8px 20px rgba(68,42,18,.08);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.member-profile-edit-button:hover,.member-profile-edit-button:focus-visible{transform:translateY(-1px);border-color:rgba(214,168,74,.7);background:#fff;outline:2px solid rgba(214,168,74,.22);outline-offset:2px}
.member-profile-edit-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.member-profile-contact-table{margin-top:10px;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.54)}
.member-profile-contact-row{display:grid;grid-template-columns:minmax(110px,.75fr) minmax(0,1.4fr);gap:14px;align-items:center;min-height:50px;padding:10px 14px}
.member-profile-contact-row+.member-profile-contact-row{border-top:1px solid var(--line)}
.member-profile-contact-key{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.member-profile-contact-value{min-width:0;text-align:right;font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.member-profile-contact-value.is-empty{color:var(--muted);font-weight:650;font-style:italic}
.member-profile-pending-changes{display:grid;gap:8px;margin-top:10px}
.member-profile-pending-change{display:grid;grid-template-columns:minmax(90px,.75fr) minmax(0,1.4fr);gap:4px 14px;padding:11px 14px;border:1px solid #f3c97a;border-radius:14px;background:#fff8e8}
.member-profile-pending-change span{color:#8a5a09;font-size:11px;font-weight:900;letter-spacing:.045em;text-transform:uppercase}
.member-profile-pending-change strong{text-align:right;font-size:13px;overflow-wrap:anywhere}
.member-profile-pending-change small{grid-column:1/-1;color:#7b5b26;font-size:12px;line-height:1.4}
.member-profile-validation-hint{margin:0;padding:10px 12px;border-radius:12px;background:rgba(217,119,6,.10);color:#785215;font-size:12px;line-height:1.5}
.member-profile-edit-form{display:grid;gap:12px;margin-top:10px;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.54)}
.member-profile-edit-form .field{margin:0}
.member-profile-readonly-field{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:rgba(0,0,0,.025)}
.member-profile-readonly-field>span{color:var(--muted);font-size:12px;font-weight:800}
.member-profile-readonly-field>strong{font-size:14px}
.member-profile-readonly-field>small{color:var(--muted);font-size:11px;line-height:1.35}
.member-profile-edit-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.member-profile-edit-actions .btn{width:100%;justify-content:center;min-height:44px}
.member-profile-security-action{margin-top:10px}
.member-profile-password-button{width:100%;min-height:46px;justify-content:flex-start;gap:10px}
.member-profile-password-button svg{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.member-security-modal-card{width:min(580px,100%)}
.member-security-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.member-security-modal-head .member-confirm-modal-copy{min-width:0}
.member-security-modal-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;padding:0;border:1px solid var(--line);border-radius:14px;background:var(--paper-strong);color:var(--ink);font:inherit;font-size:28px;line-height:1;cursor:pointer}
.member-security-modal-close:hover,.member-security-modal-close:focus-visible{border-color:rgba(214,168,74,.7);outline:3px solid rgba(214,168,74,.22);outline-offset:2px}
.member-security-password-form{display:grid;gap:12px}
.member-security-password-form .field{margin:0}
.member-security-password-form .status{margin:0}
.member-security-sessions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.48)}
.member-security-sessions>div{display:grid;gap:3px;min-width:0}
.member-security-sessions strong{font-size:14px}
.member-security-sessions span{color:var(--muted);font-size:12px;line-height:1.4}
@media(max-width:520px){.member-profile-contact-row{grid-template-columns:1fr;gap:4px;align-items:start}.member-profile-contact-value{text-align:left}.member-profile-pending-change{grid-template-columns:1fr}.member-profile-pending-change strong{text-align:left}.member-profile-edit-actions{grid-template-columns:1fr}}
@media(max-width:640px){.member-security-modal-head{gap:10px}.member-security-sessions{grid-template-columns:1fr}.member-security-sessions .btn{width:100%;justify-content:center}}
@keyframes member-card-qr-refresh{0%{opacity:.18;transform:scale(.78) rotate(-3deg);filter:blur(3px)}58%{opacity:1;transform:scale(1.08) rotate(1deg);filter:blur(0)}100%{opacity:1;transform:scale(1) rotate(0);filter:blur(0)}}

/* Garde les calques Leaflet de « J'ai soif » sous la topbar sticky. */
.brewery-map{position:relative;z-index:0;isolation:isolate}
@keyframes member-card-qr-pulse{0%{opacity:.9;transform:scale(.55)}100%{opacity:0;transform:scale(1.35)}}
@keyframes member-card-qr-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.member-card-live-qr.is-refreshing img,.member-card-live-qr.is-refreshing::after,.member-card-qr-refresh.is-loading svg{animation:none}}
.member-card-fullscreen.is-qr .member-card-fullscreen-stage{position:absolute;inset:0;width:100vw;height:100dvh;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:calc(env(safe-area-inset-top,0px) + 96px) calc(env(safe-area-inset-right,0px) + 24px) calc(env(safe-area-inset-bottom,0px) + 32px) calc(env(safe-area-inset-left,0px) + 24px)}
.member-card-fullscreen.is-qr .member-card-fullscreen-image{position:static;left:auto;top:auto;width:min(78vw,520px);height:auto;max-width:100%;max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 64px);box-sizing:border-box;padding:clamp(18px,4vw,32px);transform:none;border-radius:26px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.38);image-rendering:auto}
@media(max-width:640px){.member-card-fullscreen.is-qr .member-card-fullscreen-stage{display:flex;width:100vw;height:100dvh;overflow:auto}.member-card-fullscreen.is-qr .member-card-fullscreen-image{position:static;width:min(84vw,420px);max-width:100%;max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 190px);transform:none;border-radius:22px}}

/* Déclencheur de session commun à toutes les topbars authentifiées. */
.topbar .topbar-power-trigger,
.topbar #topbarLogoutBtn.topbar-power-trigger {
  display: inline-grid;
  place-items: center;
  flex: 0 0 44px;
  width: 44px;
  min-width: 44px;
  max-width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0 !important;
  border-radius: 50%;
  line-height: 1;
}
.topbar .topbar-power-trigger-label { display: none !important; }
.topbar .topbar-power-trigger-icon { display: block; width: 22px; height: 22px; }
