: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}
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}
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;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-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:46px;height:46px;border-radius:12px;display:grid;place-items:center;overflow:hidden;box-shadow:0 12px 26px rgba(0,0,0,.24)}.brand-mark img{width:100%;height:100%;object-fit:cover;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}
.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}
.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-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#050505,#1d1d1d);color:#f8f8f8;border:1px solid rgba(255,255,255,.08);box-shadow:0 28px 80px rgba(0,0,0,.24)}.member-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right, rgba(200,155,60,.2), transparent 34%);pointer-events:none}.member-card::after{content:"";position:absolute;inset:auto 0 0 0;height:2px;background:linear-gradient(90deg,transparent,rgba(200,155,60,.65),transparent);pointer-events:none}.member-card.member-card-premium{background:linear-gradient(145deg,#fff8eb,#e7cf9a 58%,#b1843b);color:#111;border:1px solid rgba(141,90,23,.24)}.member-card.member-card-premium::before{background:radial-gradient(circle at top right, rgba(255,255,255,.18), transparent 34%)}.member-card.member-card-premium::after{background:linear-gradient(90deg,transparent,rgba(141,90,23,.45),transparent)}.member-card .label,.member-card .muted{color:rgba(248,248,248,.72)}.member-card.member-card-premium .label,.member-card.member-card-premium .muted{color:rgba(17,17,17,.62)}.member-card-id{font-size:14px;letter-spacing:.18em;text-transform:uppercase}.member-card-name{font-family:var(--font-display);font-size:30px;font-weight:800;letter-spacing:.02em;margin:10px 0 6px;text-transform:uppercase}.member-card-role{font-size:14px;text-transform:uppercase;letter-spacing:.14em;color:#f1d18a}.member-card.member-card-premium .member-card-role{color:#6f4300}.member-card-grid{display:grid;grid-template-columns:1fr 120px;gap:18px;align-items:end}.member-card-qr{background:#fff;border-radius:14px;padding:10px;display:grid;place-items:center;min-height:120px}.member-card-qr img{width:100%;height:auto;display:block}.member-wallet-compact{display:grid;justify-items:start;gap:10px;margin-top:12px}.member-wallet-compact-inside{margin-top:14px}.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{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff}.member-card.member-card-premium .btn-secondary{background:rgba(255,255,255,.66);border-color:rgba(17,17,17,.14);color:#111}
@media(max-width:980px){.layout,.stack,.grid-2,.summary-grid{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-card-grid{grid-template-columns:1fr}.member-card-qr{max-width:140px}}

@media(max-width:640px){.topbar-inner{min-height:64px;gap:10px}.brand{gap:10px;min-width:0;flex:1}.brand-mark{width:40px;height:40px;border-radius:14px;flex:0 0 40px}.brand-copy{min-width:0}.brand-copy small{font-size:10px;letter-spacing:.08em}.brand-copy div{font-size:13px;line-height:1.1}.topbar-inner #topbarUserMenu{gap:8px;flex-shrink:0}.topbar-inner #topbarUserMenu>div{max-width:96px}.topbar-inner #topbarUserName{font-size:13px;line-height:1.05;word-break:break-word}.topbar-inner #topbarUserRole{font-size:11px}.topbar-inner #topbarLogoutBtn{padding:.6rem .85rem;font-size:13px;white-space:nowrap}.member-wallet-inline-button{width:100%;justify-content:center}}



.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)}
