@font-face{font-family:SUIT Variable;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/SUIT-Variable-gqD86R3M.woff2) format("woff2")}:root{color:var(--color-navy);background:var(--color-paper);font-family:SUIT Variable,SUIT,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;line-break:strict;overflow-wrap:break-word;text-rendering:optimizeLegibility;text-wrap:pretty;word-break:keep-all;--color-navy: #101836;--color-yellow: #f5bc1d;--color-yellow-strong: #dfa814;--color-yellow-text: #8a6500;--color-white: #ffffff;--color-paper: #f7f8fb;--color-border: #d9deeb;--color-muted: #66708a;--color-muted-strong: #546078;--color-on-navy-muted: rgba(255, 255, 255, .52);--color-on-navy-secondary: rgba(255, 255, 255, .74);--color-modal-backdrop: rgba(16, 24, 54, .62);--color-on-navy-strong: rgba(255, 255, 255, .82);--color-on-navy-emphasis: rgba(255, 255, 255, .78);--color-on-navy: rgba(255, 255, 255, .74);--color-on-navy-soft: rgba(255, 255, 255, .72);--color-on-navy-balanced: rgba(255, 255, 255, .7);--color-on-navy-subtle: rgba(255, 255, 255, .68);--color-white-translucent: rgba(255, 255, 255, .96);--color-white-border: rgba(255, 255, 255, .18);--color-white-divider: rgba(255, 255, 255, .16);--color-white-surface-strong: rgba(255, 255, 255, .14);--color-white-surface: rgba(255, 255, 255, .12);--color-white-surface-medium: rgba(255, 255, 255, .11);--color-white-surface-subtle: rgba(255, 255, 255, .08);--color-navy-soft: #26304d;--color-danger: #8a1f1f;--color-danger-strong: #d93636;--color-danger-muted: #7a2430;--color-danger-border: #f0b8b8;--color-danger-surface: #fff3f3;--color-danger-surface-soft: #fffafa;--color-surface-soft: #fbfcff;--color-surface-muted: #f3f5fa;--color-surface-subtle: #eef1f7;--color-surface-track: #e5e8f0;--color-surface-disabled: #f4f6fb;--color-info: #1f4f7a;--color-info-surface: #eaf4ff;--color-info-surface-soft: #f7fbff;--color-info-border-subtle: rgba(46, 116, 181, .18);--color-info-border: rgba(46, 116, 181, .22);--color-warning-surface: #fffaf0;--color-yellow-surface: #fff7df;--color-yellow-surface-soft: #fffdf6;--color-kakao-yellow: #fee500;--color-kakao-text: #261b00;--color-kakao-surface: #fff9df;--focus-ring: rgba(245, 188, 29, .2);--focus-ring-strong: rgba(245, 188, 29, .34);--focus-ring-danger: rgba(217, 54, 54, .14);--color-navy-border-subtle: rgba(16, 24, 54, .08);--color-navy-border: rgba(16, 24, 54, .1);--color-navy-border-strong: rgba(16, 24, 54, .12);--color-navy-border-emphasis: rgba(16, 24, 54, .18);--color-navy-border-heavy: rgba(16, 24, 54, .24);--color-navy-shadow-soft: rgba(16, 24, 54, .08);--color-navy-shadow: rgba(16, 24, 54, .1);--color-navy-shadow-strong: rgba(16, 24, 54, .12);--color-navy-shadow-panel: rgba(16, 24, 54, .14);--color-yellow-border-subtle: rgba(245, 188, 29, .28);--color-yellow-border-soft: rgba(245, 188, 29, .38);--color-yellow-border-medium: rgba(245, 188, 29, .42);--color-yellow-border: rgba(245, 188, 29, .5);--color-yellow-border-hover: rgba(245, 188, 29, .56);--color-yellow-border-active: rgba(245, 188, 29, .62);--color-yellow-border-focus: rgba(245, 188, 29, .68);--color-yellow-border-strong: rgba(245, 188, 29, .72);--color-yellow-border-kakao: rgba(245, 188, 29, .7);--color-yellow-border-staff: rgba(214, 154, 0, .2);--color-yellow-state-subtle: rgba(245, 188, 29, .12);--color-yellow-state-light: rgba(245, 188, 29, .13);--color-yellow-state-soft: rgba(245, 188, 29, .14);--color-yellow-state: rgba(245, 188, 29, .16);--color-yellow-state-strong: rgba(245, 188, 29, .18);--color-yellow-state-emphasis: rgba(245, 188, 29, .22);--color-yellow-state-active: rgba(245, 188, 29, .24);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--badge-icon-size: 48px;--customer-surface-max-inline-size: 420px;--motion-duration-fast: .16s;--motion-duration-dialog: .22s;--font-size-page-title: 32px;--font-size-display-sm: 30px;--font-size-page-title-compact: 28px;--font-size-customer-title-compact: 26px;--font-size-brand: 24px;--line-height-page-title: 1.18;--font-size-section-title: 22px;--font-size-subsection-title: 20px;--line-height-section-title: 1.25;--font-size-card-title: 18px;--font-size-dialog-title: 1.15rem;--font-size-body-strong: 17px;--line-height-card-title: 1.32;--font-size-body: 16px;--font-size-body-compact: 15px;--line-height-body: 1.5;--font-size-body-sm: 14px;--line-height-body-sm: 1.65;--font-size-caption: 13px;--line-height-caption: 1.55;--font-size-label: 12px;--font-size-overline: 11px;--font-size-micro: 10px;--line-height-label: 1.35;--control-min-height: 44px;--font-weight-action: 900;--font-weight-strong: 800;--mobile-header-height: 72px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 20px;--radius-pill: 999px;--shadow-panel: 0 18px 48px var(--color-navy-shadow-panel);--shadow-soft: 0 12px 30px var(--color-navy-shadow-soft);--admin-shell-max-width: 1920px;--z-sticky: 40;--z-backdrop: 45;--z-drawer: 50;--z-dialog: 1000;--z-skip-link: 1100}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);border:0;white-space:nowrap}html,body{overflow-x:clip}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:var(--color-paper);overflow-wrap:break-word;word-break:keep-all}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}p,li,dt,dd,h1,h2,h3,h4,h5,h6,label,legend,button,a{overflow-wrap:break-word;text-wrap:pretty;word-break:keep-all}#app{min-height:100vh;min-height:100dvh}.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:var(--z-skip-link);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:var(--color-white);background:var(--color-navy);font-weight:800;transform:translateY(calc(-100% - var(--space-4)))}.skip-link:focus-visible{outline-color:var(--color-yellow);transform:translateY(0)}:where(a[href],button,input,select,textarea,[role=button],[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--color-navy);outline-offset:3px}:where(.segmented-control button,.customer-bottom-nav a,.admin-sidebar nav a,.admin-sidebar__logout,.quick-actions a,.table-action){transition:border-color var(--motion-duration-fast) ease,background-color var(--motion-duration-fast) ease,box-shadow var(--motion-duration-fast) ease,color var(--motion-duration-fast) ease,transform var(--motion-duration-fast) ease}:where(.segmented-control button,.customer-bottom-nav a,.admin-sidebar nav a,.admin-sidebar__logout,.quick-actions a,.table-action):active:not(:disabled){transform:translateY(1px)}.segmented-control button:disabled,.table-action:disabled{border-color:var(--color-border);color:var(--color-muted);background:var(--color-surface-disabled);cursor:not-allowed;opacity:.55}:where(.segmented-control button.is-active,.customer-bottom-nav a.is-active):focus-visible{outline-color:var(--color-navy)}.placeholder{display:grid;gap:var(--space-4);align-content:start;max-width:680px;padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white)}.placeholder__eyebrow{width:fit-content;padding:5px 10px;border-radius:var(--radius-pill);color:var(--color-navy);background:var(--color-yellow-state-emphasis);font-size:var(--font-size-label);font-weight:800}.placeholder h1{margin:0;font-size:var(--font-size-display-sm);line-height:1.2}.placeholder p{margin:0;max-width:58ch;color:var(--color-muted);font-size:var(--font-size-body)}.ui-button{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:var(--control-min-height);padding:0 var(--space-4);border:0;border-radius:var(--radius-md);font-weight:var(--font-weight-strong);cursor:pointer;transition:background-color var(--motion-duration-fast) ease,box-shadow var(--motion-duration-fast) ease,color var(--motion-duration-fast) ease,filter var(--motion-duration-fast) ease,transform var(--motion-duration-fast) ease}.ui-button:disabled{cursor:not-allowed;opacity:.45}.ui-button:active:not(:disabled){filter:brightness(.92);transform:translateY(1px)}.ui-button--yellow{color:var(--color-navy);background:var(--color-yellow)}.ui-button--danger{color:var(--color-white);background:var(--color-danger-strong)}.ui-button--light{color:var(--color-navy);background:var(--color-white);box-shadow:inset 0 0 0 1px var(--color-navy-shadow-strong)}.ui-button--kakao{color:var(--color-kakao-text);background:var(--color-kakao-yellow)}.ui-button--block{width:100%}@media(hover:hover){.ui-button--yellow:hover:not(:disabled),.ui-button--kakao:hover:not(:disabled),.ui-button--danger:hover:not(:disabled){filter:brightness(.96)}.ui-button--light:hover:not(:disabled){background:var(--color-surface-subtle);box-shadow:inset 0 0 0 1px var(--color-navy-border-heavy)}}.ui-button:focus-visible:not(:disabled){outline:3px solid var(--color-white);outline-offset:2px;box-shadow:0 0 0 5px var(--color-navy)}.ui-button--light:focus-visible:not(:disabled){box-shadow:inset 0 0 0 1px var(--color-navy-shadow-strong),0 0 0 5px var(--color-navy)}.ui-button--danger:focus-visible:not(:disabled){outline-color:var(--color-white);box-shadow:0 0 0 5px var(--color-danger-strong)}@media(prefers-reduced-motion:reduce){:where(.ui-button,.segmented-control button,.customer-bottom-nav a,.admin-sidebar nav a,.admin-sidebar__logout,.quick-actions a,.table-action,.preference-tag-card,.benefit-item,.benefit-item__toggle:before,.benefit-item__toggle:after,.benefit-item__detail,.admin-member-summary__identity-info,.admin-member-summary__crm-edit,.admin-member-summary--toolbar .admin-member-summary__metric){transition:none}}.status-badge{display:inline-flex;align-items:center;justify-self:start;width:fit-content;white-space:nowrap;padding:5px var(--space-2);border-radius:var(--radius-pill);color:var(--color-navy);background:var(--color-yellow-state-active);font-size:var(--font-size-label);font-weight:900}.status-badge--muted{color:var(--color-muted);background:var(--color-surface-subtle)}.status-badge--blocked{color:var(--color-danger-muted);background:var(--color-danger-surface)}.segmented-control{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-md);background:var(--color-surface-subtle)}.segmented-control button{min-height:38px;border:0;border-radius:var(--radius-sm);color:var(--color-muted);background:transparent;font-weight:900;cursor:pointer}.segmented-control button.is-active{color:var(--color-navy);background:var(--color-yellow)}.bottling-brand{display:inline-flex;align-items:center;gap:10px;min-width:0;color:inherit}.bottling-brand__mark{flex:0 0 auto;width:40px;height:40px;border-radius:var(--radius-md);object-fit:cover;background:var(--color-white)}.bottling-brand__copy{display:grid;gap:var(--space-1);min-width:0}.bottling-brand__name{overflow:hidden;color:inherit;font-size:inherit;font-weight:inherit;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.bottling-brand__context{overflow:hidden;color:var(--color-muted);font-size:var(--font-size-label);font-weight:900;line-height:var(--line-height-label);text-overflow:ellipsis;white-space:nowrap}#app:has(.customer-shell){height:100vh;height:100dvh;min-height:0;overflow:hidden}html:has(.customer-shell),body:has(.customer-shell){height:100%;min-height:0;overflow:hidden;overscroll-behavior:none}html[data-customer-text-size=large]{--font-size-page-title: 34px;--font-size-section-title: 24px;--font-size-card-title: 20px;--font-size-body: 19px;--font-size-body-sm: 17px;--font-size-caption: 16px;--font-size-label: 16px}.customer-shell .placeholder{min-height:360px;padding:28px 22px;border-color:var(--color-navy-border);box-shadow:none}.customer-shell .placeholder h1{font-size:var(--font-size-customer-title-compact)}@media(hover:hover){.customer-bottom-nav a:not(.is-active):hover{color:var(--color-navy);background:var(--color-yellow-state)}}.customer-shell{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100vh;height:100dvh;min-height:0;width:100%;max-width:var(--customer-surface-max-inline-size);margin:0 auto;background:var(--color-white);box-shadow:var(--shadow-panel);overflow:hidden}.customer-shell__body{--customer-body-x: 20px;--customer-body-top: 24px;--customer-body-bottom: 32px;flex:1 1 auto;min-height:0;min-width:0;width:100%;overflow-y:auto;overflow-x:clip;overscroll-behavior:contain;padding:var(--customer-body-top) var(--customer-body-x) var(--customer-body-bottom);scroll-padding:16px var(--customer-body-x)}.customer-page{display:flex;flex-direction:column;gap:20px;min-height:100%}.customer-page--login{gap:16px}.customer-page--login .customer-hero--center{min-height:112px;padding:0}.customer-page--login .customer-section{gap:12px;padding:16px}.customer-page--login .customer-actions{gap:8px}.customer-page--dark{min-height:calc(100% + var(--customer-body-top) + var(--customer-body-bottom));margin:calc(var(--customer-body-top) * -1) calc(var(--customer-body-x) * -1) calc(var(--customer-body-bottom) * -1);padding:var(--customer-body-top) var(--customer-body-x) var(--customer-body-bottom);color:var(--color-white);background:var(--color-navy)}.customer-page--pass{min-width:0;padding-bottom:0}.customer-route-content{display:flex;flex-direction:column;gap:20px;min-width:0}.customer-route-content:focus,.customer-shell [data-route-focus]:focus{outline:none}.customer-topline{display:flex;align-items:center;justify-content:space-between;min-height:28px;color:var(--color-muted);font-size:var(--font-size-body-sm);font-weight:800}.customer-page--dark .customer-topline{color:var(--color-on-navy-emphasis)}.customer-topline a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--color-yellow-text)}.customer-hero{display:grid;gap:10px;padding:6px 0 2px}.customer-hero--center{align-content:center;min-height:clamp(150px,28dvh,230px)}.customer-eyebrow{color:var(--color-yellow-text);font-size:var(--font-size-label);font-weight:900;text-transform:uppercase}.customer-hero h1,.member-dashboard h1,.member-card h1,.success-card h1{margin:0;font-size:var(--font-size-page-title);line-height:1.18}.customer-hero p,.member-dashboard p,.member-card p,.success-card p,.section-heading p,.customer-note{margin:0;color:var(--color-muted)}.success-card p{text-wrap:balance}.customer-section--stamp .section-heading p{font-size:var(--font-size-label);line-height:var(--line-height-caption)}.customer-section--stamp .section-heading{position:relative;display:block}.customer-section--stamp .section-heading>div{display:grid;width:100%;gap:0}.customer-section--stamp .section-heading h2{padding-right:calc(var(--space-8) + var(--space-6))}.customer-section--stamp .section-heading .stamp-count{position:absolute;top:0;right:0}.customer-copy-unit{white-space:nowrap}.field__format{margin-left:4px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:700}.customer-page--dark .customer-hero p,.customer-page--dark .customer-note{color:var(--color-on-navy-soft)}.customer-note{margin-top:auto;font-size:var(--font-size-caption);text-align:center}.benefit-list{display:grid;gap:10px}.benefit-item{display:grid;grid-template-columns:1fr;min-height:70px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-white);overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.benefit-item.is-expanded{border-color:var(--color-yellow-border-active);box-shadow:0 12px 30px var(--color-navy-shadow-soft)}.customer-page--dark .benefit-item{border-color:var(--color-white-surface);background:var(--color-white-surface-subtle)}.customer-page--dark .benefit-item.is-expanded{border-color:var(--color-yellow-border-active);background:var(--color-white-surface-medium)}.benefit-item__summary{display:grid;grid-template-columns:44px minmax(0,1fr) 22px;gap:12px;align-items:center;width:100%;min-height:70px;padding:12px;border:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.benefit-item__summary:focus-visible{outline:3px solid var(--color-navy);outline-offset:-3px}.customer-page--dark .benefit-item__summary:focus-visible{outline-color:var(--color-yellow)}.benefit-item__icon{display:flex;align-items:center;justify-content:center;place-self:center;flex:0 0 44px;width:44px;height:44px;border-radius:8px;color:var(--color-navy);background:var(--color-yellow);font-weight:900;line-height:0}.benefit-item__icon svg{display:block;flex:0 0 auto;width:24px;height:24px;fill:none;stroke:var(--color-navy);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.benefit-item__icon--stamp svg{width:26px;height:26px}.benefit-item__icon--coupon svg{width:27px;height:27px}.benefit-item__icon--qr svg{width:23px;height:23px;fill:var(--color-navy);stroke:none}.benefit-item__content{display:grid;align-content:center;gap:3px;min-width:0}.benefit-item__content strong,.benefit-item__content span{display:block}.benefit-item__content strong{font-size:var(--font-size-body-compact);line-height:1.32}.benefit-item__content span{color:var(--color-muted);font-size:var(--font-size-caption);line-height:1.38}.customer-page--dark .benefit-item__content span{color:var(--color-on-navy-subtle)}.benefit-item__toggle{position:relative;display:block;width:22px;height:22px;border-radius:999px;background:var(--color-navy-border-subtle)}.customer-page--dark .benefit-item__toggle{background:var(--color-white-surface-strong)}.benefit-item__toggle:before,.benefit-item__toggle:after{position:absolute;inset:50% auto auto 50%;width:10px;height:2px;border-radius:999px;background:currentColor;content:"";transform:translate(-50%,-50%);transition:opacity .16s ease,transform .16s ease}.benefit-item__toggle:after{transform:translate(-50%,-50%) rotate(90deg)}.benefit-item.is-expanded .benefit-item__toggle:after{opacity:0;transform:translate(-50%,-50%) rotate(0)}.benefit-item__detail{max-height:0;padding:0 12px 0 68px;opacity:0;overflow:hidden;transition:max-height .22s ease,opacity .18s ease,padding .22s ease}.benefit-item.is-expanded .benefit-item__detail{max-height:220px;padding-bottom:14px;opacity:1}.benefit-item__detail-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.benefit-item__detail-list li{display:grid;gap:2px}.benefit-item__detail-list strong{color:var(--color-yellow-text);font-size:var(--font-size-label);line-height:1.3}.benefit-item__detail-list span,.benefit-item__placeholder{margin:0;color:var(--color-muted);font-size:var(--font-size-label);line-height:1.45}.customer-page--dark .benefit-item__detail-list span,.customer-page--dark .benefit-item__placeholder{color:var(--color-on-navy-balanced)}.mock-text,.customer-page--dark .mock-text{color:var(--color-danger-strong);font-weight:800}.customer-actions{display:grid;gap:10px}.customer-error{min-height:44px;margin:0;padding:12px;border:1px solid var(--color-danger-border);border-radius:8px;color:var(--color-danger);background:var(--color-danger-surface);font-size:var(--font-size-body-sm);font-weight:800}.customer-membership-danger{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:28px;padding-top:24px;border-top:1px solid var(--color-danger-border)}.customer-membership-danger h2{margin:4px 0 0;color:var(--color-danger);font-size:var(--font-size-body-strong)}.customer-membership-danger p{margin:8px 0 0;color:var(--color-muted);font-size:var(--font-size-caption);line-height:1.55}@media(max-width:480px){.customer-membership-danger{align-items:flex-start;flex-direction:column}}.form-error{min-height:40px;margin:0;padding:10px 12px;border:1px solid var(--color-danger-border);border-radius:8px;color:var(--color-danger);background:var(--color-danger-surface);font-size:var(--font-size-caption);font-weight:800}.customer-section{display:grid;gap:14px;padding:18px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-white)}.customer-disclosure{border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-white);overflow:hidden}.customer-disclosure>summary{display:flex;min-height:64px;padding:14px 18px;align-items:center;justify-content:space-between;cursor:pointer;list-style:none}.customer-disclosure>summary::-webkit-details-marker{display:none}.customer-disclosure>summary:after{color:var(--color-yellow-text);content:"열기";font-size:var(--font-size-label);font-weight:800}.customer-disclosure[open]>summary:after{content:"닫기"}.customer-disclosure>summary span,.customer-disclosure>summary strong,.customer-disclosure>summary small{display:grid;gap:3px}.customer-disclosure>summary small{color:var(--color-muted);font-size:var(--font-size-caption)}.customer-disclosure__body{padding:0 18px 18px}.customer-disclosure__body>.customer-section{padding:0;border:0}.customer-page--pass .customer-section{min-width:0;padding:0;border:0;background:transparent}.customer-page--pass .customer-section--stamp,.customer-page--pass .customer-section--profile{padding:16px;border:1px solid var(--color-navy-border);background:var(--color-white)}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-width:0}.section-heading>div{min-width:0}.section-heading h2{margin:0 0 4px;font-size:var(--font-size-card-title);line-height:1.25}.section-heading strong{flex-shrink:0;color:var(--color-yellow-text);font-size:var(--font-size-card-title)}.customer-section--visits .section-heading{align-items:center}.customer-section--visits .section-heading h2{margin-bottom:0}.visit-count{margin-left:auto;color:var(--color-muted);font-size:var(--font-size-caption);font-variant-numeric:tabular-nums;font-weight:700;line-height:var(--line-height-caption)}.customer-progress{display:grid;grid-template-columns:repeat(var(--progress-count, 4),minmax(0,1fr));gap:6px}.customer-progress__bar{height:5px;border-radius:999px;background:var(--color-surface-track)}.customer-progress__bar.is-active{background:var(--color-yellow)}.legal-page{gap:18px}.legal-notice,.legal-section{display:grid;gap:8px;min-width:0}.legal-notice{padding:13px 14px;border-left:4px solid var(--color-yellow);border-radius:8px;background:var(--color-yellow-state-soft)}.legal-notice strong,.legal-section h2{margin:0;color:var(--color-navy)}.legal-section{padding-top:14px;border-top:1px solid var(--color-navy-border)}.legal-section h2{font-size:var(--font-size-body-strong);line-height:1.3}.legal-notice p,.legal-section p,.legal-list{margin:0;color:var(--color-muted);font-size:var(--font-size-body-sm);font-weight:500;line-height:1.75;overflow-wrap:break-word}.legal-meta{color:var(--color-muted-strong);font-size:var(--font-size-label);font-weight:700}.legal-meta span{margin-inline:5px}.legal-toc{display:grid;gap:10px;padding-block:4px 8px}.legal-toc>strong{color:var(--color-navy);font-size:var(--font-size-body-compact)}.legal-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0;padding-left:20px}.legal-toc li,.legal-toc a{color:var(--color-muted-strong);font-size:var(--font-size-caption);font-weight:600;line-height:1.5}.legal-toc a{text-decoration-thickness:1px;text-underline-offset:3px}.legal-section[id]{scroll-margin-top:20px}.legal-list{display:grid;gap:6px;padding-left:18px}@media(max-width:480px){.legal-toc ol{grid-template-columns:minmax(0,1fr)}}.legal-actions{padding-top:4px}.profile-form,.basic-login-form{display:grid;gap:14px}.field{display:grid;gap:6px}.field span{color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800}.field input{width:100%;min-height:48px;padding:0 12px;border:1px solid var(--color-border);border-radius:8px;color:var(--color-navy);background:var(--color-white)}.field input:focus{border-color:var(--color-yellow);outline:2px solid var(--focus-ring)}.field input[aria-invalid=true]{border-color:var(--color-danger-strong);outline:2px solid var(--focus-ring-danger)}.date-input{position:relative;display:block}.field .date-input__control{padding-right:calc(18px + var(--space-6));-moz-appearance:none;appearance:none;-webkit-appearance:none;color-scheme:light;font-variant-numeric:tabular-nums}.date-input__control::-webkit-calendar-picker-indicator{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;cursor:pointer;opacity:0}.date-input__icon{position:absolute;top:50%;right:var(--space-3);width:18px;height:18px;transform:translateY(-50%);color:var(--color-navy);pointer-events:none;opacity:.72}.success-card{display:grid;gap:12px;justify-items:center;align-content:center;min-height:clamp(210px,32dvh,270px);padding:36px 22px;border-radius:8px;color:var(--color-navy);background:var(--color-yellow-state-strong);text-align:center}.success-mark{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:56px;height:56px;border-radius:999px;color:var(--color-navy);background:var(--color-yellow);font-size:var(--font-size-page-title-compact);font-weight:900;line-height:1}.success-mark--loading span{display:block;width:6px;height:6px;border-radius:999px;background:var(--color-navy)}.member-dashboard,.member-card{position:relative;display:grid;gap:18px;min-width:0;padding:22px;border-radius:8px;color:var(--color-white);background:var(--color-navy)}.member-dashboard__badges{position:absolute;top:var(--space-4);left:var(--space-4);display:block;max-width:calc(100% - 156px);padding:0;border:0;border-radius:var(--radius-pill);color:var(--color-navy);background:transparent;cursor:pointer}.member-dashboard__badge-group{display:flex;align-items:center;min-height:32px}.member-dashboard__badge-icon,.member-dashboard__badge-more{display:grid;place-items:center;width:32px;height:32px;overflow:hidden;border:1px solid var(--color-yellow-border-strong);border-radius:50%;background:var(--color-yellow-surface);box-shadow:0 2px 6px var(--color-navy-shadow-strong)}.member-dashboard__badge-icon+.member-dashboard__badge-icon,.member-dashboard__badge-more{margin-left:-8px}.member-dashboard__badge-more{padding-inline:5px;color:var(--color-navy);font-size:var(--font-size-label);font-weight:900}.member-dashboard__badges:focus-visible{outline-color:var(--color-yellow);outline-offset:4px}@media(hover:hover)and (pointer:fine){.member-dashboard__badges:hover .member-dashboard__badge-icon,.member-dashboard__badges:hover .member-dashboard__badge-more{border-color:var(--color-white)}}.member-dashboard__intro{display:grid;gap:8px;min-width:0}.member-dashboard__brand{justify-self:end;display:grid;justify-items:end;gap:var(--space-1);padding:var(--space-1);margin-bottom:var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);color:inherit;background:transparent;font-size:var(--font-size-subsection-title);font-weight:800;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,transform .16s ease}.member-dashboard__brand .bottling-brand__copy{text-align:end}.member-dashboard__brand .bottling-brand__context{color:var(--color-yellow)}.member-dashboard__brand-action{color:var(--color-on-navy-muted);font-size:var(--font-size-label);font-weight:800}.member-dashboard__brand:active{transform:translateY(1px)}.member-dashboard__brand:focus-visible{outline-color:var(--color-yellow)}@media(hover:hover)and (pointer:fine){.member-dashboard__brand:hover{border-color:var(--color-yellow-border-subtle);background:var(--color-yellow-state-subtle)}}.member-dashboard__intro>*{min-width:0;max-width:100%}.member-dashboard__intro h1{overflow-wrap:anywhere}.member-dashboard__intro .member-name-ending{white-space:nowrap}.member-card p{color:var(--color-on-navy-subtle)}.member-dashboard p{color:var(--color-on-navy-balanced)}.member-dashboard__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--color-white-divider)}.member-dashboard__stat{display:grid;gap:3px;min-width:0;padding:14px 8px 0 0}.member-dashboard__stat+.member-dashboard__stat{padding-left:10px;border-left:1px solid var(--color-white-divider)}.member-dashboard__stat span,.member-dashboard__stat small{color:var(--color-on-navy-subtle)}.member-dashboard__stat span{font-size:var(--font-size-label);font-weight:800}.member-dashboard__stat strong{color:var(--color-yellow);font-size:var(--font-size-subsection-title);line-height:1.1}.member-dashboard__stat small{font-size:var(--font-size-overline);font-weight:700}.qr-card{display:grid;gap:12px;justify-items:center;padding:18px;border:1px dashed var(--color-navy-border-heavy);border-radius:8px;background:var(--color-surface-soft)}.qr-card__image,.qr-card__placeholder{width:min(192px,100%);aspect-ratio:1;padding:10px;border:8px solid var(--color-white);border-radius:8px;background:var(--color-white);box-shadow:inset 0 0 0 1px var(--color-border)}.qr-card__image{display:block;object-fit:contain;image-rendering:pixelated}.qr-card__placeholder{display:grid;place-items:center;color:var(--color-muted);text-align:center;font-size:var(--font-size-caption);font-weight:800}.qr-card__token{display:grid;gap:2px;width:100%;min-width:0;padding-top:2px;text-align:center}.qr-card__token span{color:var(--color-muted);font-size:var(--font-size-overline);font-weight:900}.qr-card code{display:block;max-width:100%;color:var(--color-muted);font-size:var(--font-size-label);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stamp-board{display:grid;grid-template-columns:repeat(var(--stamp-board-columns),minmax(0,1fr));gap:8px}.stamp-dot{display:inline-flex;align-items:center;justify-content:center;aspect-ratio:1;min-width:0;border:1px solid var(--color-border);border-radius:999px;color:var(--color-muted);background:var(--color-white);font-size:var(--font-size-caption);font-weight:900}.stamp-dot.is-active{border-color:var(--color-yellow);color:var(--color-navy);background:var(--color-yellow)}.stamp-dot.is-newly-earned{border-color:var(--color-yellow-text);background:var(--color-yellow-strong);animation:customer-stamp-arrival 1.56s cubic-bezier(.22,1,.36,1) 1s both;box-shadow:0 10px 22px var(--color-navy-shadow-panel)}.section-heading .stamp-count{padding:5px 8px;border-radius:999px;color:var(--color-navy);background:var(--color-yellow-state-active);font-size:var(--font-size-body-sm)}.section-heading .stamp-count.is-updated{animation:customer-stamp-count-pop .42s cubic-bezier(.22,1,.36,1) .12s both}.stamp-board__summary{margin:-2px 0 0;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800}.configurable-notice-text__phrase{white-space:nowrap}.coupon-list,.visit-list{display:grid;gap:10px}.coupon-card{display:grid;width:100%;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-navy-border);border-radius:var(--radius-md);color:var(--color-navy);background:var(--color-white);text-align:left}.coupon-card--inactive{background:var(--color-paper)}.coupon-card--redeemed{position:relative;padding-inline-end:calc((var(--space-8) * 2) + var(--space-6));overflow:hidden;border-color:var(--color-border);color:var(--color-muted-strong);background:var(--color-surface-muted)}.coupon-card--interactive{cursor:pointer;transition:border-color var(--motion-duration-fast) ease,box-shadow var(--motion-duration-fast) ease,transform var(--motion-duration-fast) ease}@media(hover:hover)and (pointer:fine){.coupon-card--interactive:hover{border-color:var(--color-yellow-border-strong);box-shadow:0 8px 18px var(--color-navy-shadow-soft)}}.coupon-card--interactive:active{transform:translateY(1px)}.coupon-card--interactive:focus-visible{outline:3px solid var(--color-navy);outline-offset:3px}@media(prefers-reduced-motion:reduce){.coupon-card--interactive{transition:none}}.coupon-card__header,.coupon-card__footer{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);min-width:0}.coupon-card__header .status-badge{flex:none}.coupon-card__title{min-width:0;color:var(--color-muted-strong);font-size:var(--font-size-caption);font-weight:800;line-height:var(--line-height-caption);overflow-wrap:anywhere}.coupon-card__benefit{display:block;color:var(--color-navy);font-size:var(--font-size-card-title);font-weight:800;letter-spacing:-.01em;line-height:var(--line-height-card-title);overflow-wrap:anywhere;text-wrap:balance}.coupon-card--inactive .coupon-card__benefit{color:var(--color-muted-strong)}.coupon-card__footer{align-items:center;gap:var(--space-2);color:var(--color-muted)}.coupon-card__metadata{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);min-width:0}.coupon-card__metadata small{font-size:var(--font-size-label);font-variant-numeric:tabular-nums;font-weight:700;line-height:var(--line-height-label)}.coupon-card__goal{color:var(--color-muted-strong)}.coupon-card__chevron{display:block;flex:none;width:var(--space-5);height:var(--space-5);color:var(--color-yellow-text)}.coupon-card__redeemed-stamp{position:absolute;inset-block-start:50%;inset-inline-end:var(--space-3);display:grid;width:calc(var(--space-8) * 2);aspect-ratio:1;place-content:center;border:3px double currentcolor;border-radius:var(--radius-pill);color:var(--color-muted);font-size:var(--font-size-label);font-weight:900;letter-spacing:-.04em;line-height:1;text-align:center;opacity:.58;transform:translateY(-50%) rotate(-12deg)}.coupon-card__redeemed-state{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);border:0;white-space:nowrap}.coupon-discovery{display:grid;gap:18px;min-width:0}.coupon-discovery__group{display:grid;gap:10px;min-width:0}.coupon-discovery__title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}.coupon-discovery__title h2{margin:0 0 3px;color:var(--color-navy);font-size:var(--font-size-body);line-height:1.25}.coupon-discovery__title p{margin:0;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800;overflow-wrap:break-word}.reward-opportunity-list{display:grid;gap:10px}.reward-opportunity-card{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-white)}.reward-opportunity-card--completed{background:var(--color-surface-soft)}.reward-opportunity-card__content{display:grid;gap:6px;min-width:0}.reward-opportunity-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.reward-opportunity-card__eyebrow{color:var(--color-yellow-text);font-size:var(--font-size-overline);font-weight:900}.reward-opportunity-card strong{color:var(--color-navy);line-height:1.25;overflow-wrap:anywhere}.reward-opportunity-card p,.reward-opportunity-card small{margin:0;color:var(--color-muted);font-size:var(--font-size-caption);overflow-wrap:break-word}.reward-opportunity-card__notice{color:var(--color-muted-strong)}.reward-opportunity-card__action{min-height:42px}.customer-page--reward-detail{min-width:0}.reward-detail-card,.reward-result-card{display:grid;gap:16px;min-width:0;padding:18px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-white)}.reward-detail-card__heading{display:grid;gap:8px;min-width:0}.reward-detail-card h1,.reward-result-card h1{margin:0;color:var(--color-navy);font-size:var(--font-size-page-title-compact);line-height:1.18;overflow-wrap:break-word}.reward-detail-card p,.reward-result-card p{margin:0;color:var(--color-muted);overflow-wrap:break-word}.reward-detail-card__benefit{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:12px;border-radius:8px;color:var(--color-navy);background:var(--color-yellow-state);font-weight:900}.reward-detail-card__benefit span{min-width:0;overflow-wrap:break-word}.reward-detail-card__benefit small{flex-shrink:0;color:var(--color-muted);font-size:var(--font-size-label)}.reward-detail-form{display:grid;gap:14px}.reward-detail-form__hint,.reward-detail-form__notice{margin:0;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800;overflow-wrap:break-word}.preference-fieldset{display:grid;gap:10px;min-width:0;margin:0;padding:0;border:0}.preference-fieldset legend{padding:0;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:900}.preference-chip-list{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.preference-chip{min-height:38px;padding:0 12px;border:1px solid var(--color-border);border-radius:8px;color:var(--color-navy);background:var(--color-white);font-weight:900;cursor:pointer}.preference-chip.is-selected{border-color:var(--color-yellow);background:var(--color-yellow)}.marketing-consent-panel{display:grid;gap:8px;min-width:0;padding:14px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-surface-soft)}.marketing-consent-panel strong{color:var(--color-navy);overflow-wrap:break-word}.marketing-consent-settings{gap:14px}.marketing-consent-settings__badge{display:inline-flex;align-items:center;flex-shrink:0;min-height:28px;padding:0 10px;border:1px solid var(--color-navy-border-strong);border-radius:999px;color:var(--color-muted);background:var(--color-paper);font-size:var(--font-size-label);font-weight:900;white-space:nowrap}.marketing-consent-settings__badge.is-enabled{border-color:var(--color-yellow-border-focus);color:var(--color-navy);background:var(--color-yellow-state-strong)}.marketing-consent-settings__body{display:grid;gap:6px;min-width:0;padding:14px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-surface-soft)}.marketing-consent-settings__body strong{color:var(--color-navy);overflow-wrap:break-word}.marketing-consent-settings__body p{margin:0;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800;line-height:1.55;overflow-wrap:break-word}.marketing-consent-settings__link{color:var(--color-navy);font-size:var(--font-size-caption);font-weight:900;text-decoration:underline;text-underline-offset:3px}.profile-tag-handoff,.profile-tags-section__notice{display:grid;gap:8px;min-width:0;margin:0;padding:14px;border:1px solid var(--color-yellow-border-medium);border-radius:8px;color:var(--color-navy);background:var(--color-yellow-state-soft)}.profile-tag-handoff p,.profile-tags-section__notice{color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800;overflow-wrap:break-word}.visit-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;min-height:44px;padding:13px 14px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-white)}.visit-list time{display:grid;gap:var(--space-1);min-width:0;font-variant-numeric:tabular-nums;line-height:1}.visit-list time strong{font-size:var(--font-size-body-sm);font-weight:var(--font-weight-strong)}.visit-list time span,.visit-list small{color:var(--color-muted);font-size:var(--font-size-caption);line-height:var(--line-height-caption)}.visit-list small{align-self:center;color:var(--color-navy);white-space:nowrap;font-weight:var(--font-weight-strong)}.customer-empty-state{margin:0;padding:14px;border:1px dashed var(--color-navy-border-emphasis);border-radius:8px;color:var(--color-muted);background:var(--color-white);font-size:var(--font-size-body-sm);font-weight:800;overflow-wrap:break-word}.profile-summary{display:grid;gap:0;margin:0}.profile-summary div{display:flex;justify-content:space-between;gap:14px;min-height:42px;padding:10px 0;border-top:1px solid var(--color-navy-border-subtle)}.profile-summary div:first-child{border-top:0}.profile-summary dt,.profile-summary dd{margin:0}.profile-summary dt{flex-shrink:0;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800}.profile-summary dd{min-width:0;color:var(--color-navy);font-weight:900;overflow-wrap:anywhere;text-align:right}.profile-edit-form,.profile-tag-form,.profile-tag-picker{display:grid;gap:14px}.profile-tag-picker:focus-visible{border-radius:8px;outline:3px solid var(--color-navy);outline-offset:3px}.profile-tag-picker__helper{margin:0;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800;overflow-wrap:break-word}.preference-tag-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}.preference-tag-card{display:grid;gap:4px;align-content:start;min-height:88px;min-width:0;padding:12px;border:1px solid var(--color-navy-border-strong);border-radius:8px;color:var(--color-navy);background:var(--color-white);text-align:left;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.preference-tag-card span{min-width:0;font-size:var(--font-size-body-sm);font-weight:900;overflow-wrap:anywhere}.preference-tag-card small{min-width:0;color:var(--color-muted);font-size:var(--font-size-label);font-weight:800;line-height:1.35;overflow-wrap:break-word}.preference-tag-card:focus-visible{border-color:var(--color-yellow-border-strong);box-shadow:0 0 0 4px var(--focus-ring)}.preference-tag-card.is-selected{border-color:var(--color-yellow-border-active);background:var(--color-yellow-surface);box-shadow:inset 0 0 0 1px var(--color-yellow-border-soft)}.preference-tag-card.is-selected span{color:var(--color-navy)}.preference-tag-card.is-selected:focus-visible{border-color:var(--color-yellow-border-active);background:var(--color-yellow-surface);box-shadow:inset 0 0 0 1px var(--color-yellow-border-soft),0 0 0 4px var(--focus-ring);outline-color:var(--color-navy)}.preference-tag-card:active:not(:disabled){transform:translateY(1px)}.preference-tag-card:disabled{color:var(--color-muted);background:var(--color-surface-disabled);cursor:not-allowed;opacity:.72}.profile-tag-summary,.customer-tag-list{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.profile-tag-summary__empty{color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800}.customer-tag{display:inline-flex;align-items:center;gap:6px;min-height:34px;min-width:0;padding:6px 8px;border:1px solid var(--color-navy-border-strong);border-radius:8px;color:var(--color-navy);background:var(--color-yellow-state-strong);font-size:var(--font-size-caption);font-weight:900}.customer-tag span{min-width:0;overflow-wrap:anywhere}.customer-tag small{flex-shrink:0;color:var(--color-muted);font-size:var(--font-size-overline);font-weight:800}.customer-tag--compact{max-width:100%;padding-inline:10px;overflow-wrap:anywhere;white-space:normal}.customer-tag__delete{flex-shrink:0;border:0;color:var(--color-danger);background:transparent;font-size:var(--font-size-label);font-weight:900;cursor:pointer}.customer-tag__delete:disabled{cursor:not-allowed;opacity:.5}.member-dashboard:focus-visible,.member-card:focus-visible,.customer-section:focus-visible{outline:3px solid var(--color-navy);outline-offset:3px}.customer-nfc-result-heading-tail,.customer-nfc-nowrap{white-space:nowrap}.customer-nfc-status{display:grid;gap:10px;min-width:0;max-width:100%;min-height:120px;overflow-wrap:anywhere}.customer-nfc-status[data-tone=pending]{border-color:var(--color-yellow-border);background:var(--color-warning-surface)}.customer-nfc-login-bridge{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:center;min-width:0;padding:16px 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.customer-nfc-login-bridge__mark{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;color:var(--color-navy);background:var(--color-yellow);font-size:var(--font-size-body-sm);font-weight:900;line-height:1}.customer-nfc-login-bridge strong,.customer-nfc-login-bridge p{display:block}.customer-nfc-login-bridge strong{color:var(--color-navy);font-size:var(--font-size-body-sm)}.customer-nfc-login-bridge p{margin:2px 0 0;color:var(--color-muted);font-size:var(--font-size-caption);line-height:1.45}.customer-nfc-result{display:grid;gap:12px;min-height:180px;min-width:0;max-width:100%;overflow-wrap:anywhere}.customer-nfc-tap-waiting{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;padding:16px;border:1px solid var(--color-yellow-border-soft);border-radius:var(--radius-md);background:var(--color-yellow-surface-soft)}.customer-nfc-tap-waiting__signal{position:relative;display:grid;width:64px;height:64px;place-items:center;border-radius:50%;background:var(--color-white)}.customer-nfc-tap-waiting__signal span{position:absolute;border:2px solid var(--color-yellow);border-radius:50%}.customer-nfc-tap-waiting__signal span:nth-child(1){width:18px;height:18px;background:var(--color-yellow)}.customer-nfc-tap-waiting__signal span:nth-child(2){width:34px;height:34px;opacity:.72}.customer-nfc-tap-waiting__signal span:nth-child(3){width:50px;height:50px;opacity:.38}.customer-nfc-tap-waiting strong,.customer-nfc-tap-waiting p{display:block;min-width:0;margin:0;overflow-wrap:anywhere}.customer-nfc-tap-waiting strong{color:var(--color-navy);font-size:var(--font-size-body-compact)}.customer-nfc-tap-waiting p{margin-top:3px;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:700;line-height:1.45}.nfc-device-table__select{display:grid;gap:4px;width:100%;min-width:0;padding:0;border:0;color:var(--color-navy);background:transparent;font:inherit;text-align:left}.nfc-device-table__select small{display:block}.nfc-device-table__select:focus-visible{outline-color:var(--color-navy)}.customer-nfc-stamping{display:grid;gap:10px}.customer-nfc-stamping__stage{position:relative;display:grid;min-height:118px;place-items:center;overflow:hidden;border:1px dashed var(--color-yellow);border-radius:8px;background:var(--color-yellow-surface-soft)}.customer-nfc-stamping__target,.customer-nfc-stamping__stamp{position:absolute;left:50%;display:grid;width:56px;height:56px;place-items:center;border-radius:50%}.customer-nfc-stamping__target{bottom:12px;align-content:center;border:2px solid var(--color-yellow);color:var(--color-muted);background:var(--color-white);font-size:var(--font-size-overline);font-weight:800;line-height:1.1;text-align:center;transform:translate(-50%)}.customer-nfc-stamping__target strong{color:var(--color-navy);font-size:var(--font-size-caption)}.customer-nfc-stamping__stamp{top:12px;z-index:2;border:2px solid var(--color-navy);color:var(--color-navy);background:var(--color-yellow);box-shadow:0 8px 16px var(--color-navy-shadow-soft);font-size:var(--font-size-subsection-title);font-weight:900;transform:translate(-50%);will-change:transform,opacity;animation:customer-nfc-stamp-press 1.6s cubic-bezier(.22,1,.36,1) infinite}.customer-nfc-stamping__impact{position:absolute;bottom:8px;left:50%;width:70px;height:70px;border:2px solid var(--color-yellow);border-radius:50%;opacity:0;transform:translate(-50%) scale(.7);will-change:transform,opacity;animation:customer-nfc-stamp-impact 1.6s cubic-bezier(.22,1,.36,1) infinite}.customer-nfc-stamping__orbit{position:absolute;bottom:4px;left:50%;width:72px;height:72px;border:2px solid var(--color-yellow);border-top-color:transparent;border-radius:50%;opacity:.75;transform:translate(-50%);will-change:transform;animation:customer-nfc-stamp-orbit 1s linear infinite}.customer-nfc-stamping__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.customer-nfc-stamping__steps li{display:grid;grid-template-columns:8px minmax(0,1fr);gap:6px;align-items:center;min-width:0;color:var(--color-muted);font-size:var(--font-size-overline);font-weight:800;line-height:1.35}.customer-nfc-stamping__steps li:before{width:8px;height:8px;border-radius:50%;background:var(--color-muted);content:""}.customer-nfc-stamping__steps .is-complete{color:var(--color-navy)}.customer-nfc-stamping__steps .is-complete:before{background:var(--color-navy)}.customer-nfc-stamping__steps .is-current{color:var(--color-navy)}.customer-nfc-stamping__steps .is-current:before{background:var(--color-yellow);box-shadow:0 0 0 4px var(--focus-ring)}.customer-nfc-result--success{min-height:0;gap:12px}.customer-nfc-result__earned-stamp{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center}.customer-nfc-result__stamp-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;color:var(--color-navy);background:var(--color-yellow);font-size:var(--font-size-body-compact);font-weight:900;line-height:1}.customer-nfc-result__stamp-mark.is-fresh{animation:customer-stamp-arrival 1.44s cubic-bezier(.22,1,.36,1) 1s both}.customer-nfc-result__earned-stamp strong,.customer-nfc-result__earned-stamp time{display:block}.customer-nfc-result__earned-stamp strong{color:var(--color-navy);font-size:var(--font-size-body-compact)}.customer-nfc-result__earned-stamp time{margin:2px 0 0;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:700;line-height:1.45}.customer-nfc-result__stamp-balance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--color-border);color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800}.customer-nfc-result__stamp-balance strong{color:var(--color-navy);font-size:var(--font-size-body);font-variant-numeric:tabular-nums}.customer-nfc-result__stamp-balance strong span{padding:0 2px;color:var(--color-muted)}@keyframes customer-stamp-arrival{0%{opacity:0;transform:scale(.64)}65%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes customer-nfc-stamp-press{0%,18%{opacity:.72;transform:translate(-50%) translateY(0) scale(.82)}46%{opacity:1;transform:translate(-50%) translateY(36px) scale(1)}58%{transform:translate(-50%) translateY(40px) scale(.9)}78%,to{opacity:.72;transform:translate(-50%) translateY(0) scale(.82)}}@keyframes customer-nfc-stamp-impact{0%,42%{opacity:0;transform:translate(-50%) scale(.7)}50%{opacity:.72;transform:translate(-50%) scale(.9)}70%,to{opacity:0;transform:translate(-50%) scale(1.42)}}@keyframes customer-nfc-stamp-orbit{0%{transform:translate(-50%) rotate(0)}to{transform:translate(-50%) rotate(360deg)}}@keyframes customer-stamp-count-pop{0%{transform:scale(.84)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.stamp-dot.is-newly-earned,.section-heading .stamp-count.is-updated,.customer-nfc-result__stamp-mark,.customer-nfc-stamping__stamp,.customer-nfc-stamping__impact,.customer-nfc-stamping__orbit{animation:none}.customer-nfc-stamping__stamp{opacity:1;transform:translate(-50%) translateY(36px)}.customer-nfc-stamping__impact{opacity:.5;transform:translate(-50%) scale(1)}.customer-nfc-stamping__orbit{border-color:var(--color-yellow)}}@media(max-width:719px){.customer-shell{position:fixed;top:0;right:0;bottom:0;left:0}}@media(min-width:720px){.customer-shell{width:390px;max-width:calc(100vw - 48px);height:min(812px,calc(100dvh - 48px));margin:24px auto;border:1px solid var(--color-navy-border-subtle);border-radius:20px;overflow:hidden}}@media(max-width:480px){.customer-shell{max-width:none;box-shadow:none}.customer-shell__body{--customer-body-top: 22px;--customer-body-bottom: 28px}}@media(max-height:720px){.customer-shell__body{--customer-body-top: 18px;--customer-body-bottom: 22px}.customer-page{gap:16px}.customer-hero h1,.member-dashboard h1,.member-card h1,.success-card h1{font-size:var(--font-size-page-title-compact)}.customer-hero--center{min-height:130px}.customer-page--login .customer-hero--center{min-height:96px}.success-card{min-height:190px;padding:28px 18px}}.admin-membership-copy__preview li{text-wrap:balance}.admin-sidebar nav a.is-active:focus-visible{outline-color:var(--color-white)}.admin-sidebar :is(nav a,.admin-sidebar__logout):focus-visible{outline-color:var(--color-yellow)}@media(hover:hover){.admin-sidebar nav a:hover{color:var(--color-navy);background:var(--color-yellow)}.admin-sidebar__logout:hover{color:var(--color-navy);background:var(--color-yellow)}.quick-actions a:hover{background:var(--color-yellow-state-emphasis)}.table-action:hover:not(:disabled){border-color:var(--color-yellow);background:var(--color-yellow-state)}.preference-tag-card:hover:not(:disabled){border-color:var(--color-yellow-border-strong);box-shadow:0 0 0 4px var(--focus-ring)}.preference-tag-card.is-selected:hover:not(:disabled){border-color:var(--color-yellow-border-active);background:var(--color-yellow-surface);box-shadow:inset 0 0 0 1px var(--color-yellow-border-soft),0 0 0 4px var(--focus-ring)}.admin-member-summary__identity-info:hover,.admin-member-summary__crm-edit:hover{border-color:var(--color-yellow);background:var(--color-yellow-state-strong);box-shadow:0 8px 18px var(--color-navy-shadow-soft)}.admin-member-summary--toolbar .admin-member-summary__metric:hover{border-color:var(--color-yellow-border-hover);background:var(--color-yellow-state-subtle)}.admin-table tbody tr:hover{background:var(--color-surface-soft)}}#app:has(.admin-shell){height:100vh;height:100dvh;min-height:0;overflow:hidden}html:has(.admin-shell),body:has(.admin-shell){height:100%;min-height:0;overflow:hidden;overscroll-behavior:none}.admin-shell{display:grid;grid-template-columns:248px minmax(0,1fr);width:min(100%,var(--admin-shell-max-width));height:100vh;height:100dvh;min-height:0;margin:0 auto;background:var(--color-paper);min-width:0;overflow:hidden}.admin-sidebar{position:sticky;top:0;display:flex;align-self:start;flex-direction:column;height:100vh;height:100dvh;min-height:0;overflow-y:auto;padding:28px 20px;color:var(--color-white);background:var(--color-navy)}.admin-sidebar__brand{display:flex;align-items:center;margin-bottom:36px;color:var(--color-yellow);font-size:var(--font-size-brand);font-weight:800}.admin-sidebar__brand .bottling-brand__context{color:var(--color-on-navy-muted)}.admin-sidebar nav{display:grid;gap:18px}.admin-sidebar__group{display:grid;gap:8px}.admin-sidebar__group-label{margin:0 12px;color:var(--color-on-navy-muted);font-size:var(--font-size-label);font-weight:800}.admin-sidebar nav a{min-height:44px;padding:11px 12px;border-radius:8px;color:var(--color-on-navy);font-weight:700}.admin-sidebar nav a.router-link-active,.admin-sidebar nav a.is-active{color:var(--color-navy);background:var(--color-yellow)}.admin-sidebar__logout{min-height:44px;margin-top:auto;padding:11px 12px;border:1px solid var(--color-white-border);border-radius:8px;color:var(--color-on-navy-strong);background:transparent;font-weight:800;cursor:pointer}.admin-sidebar__logout:disabled{cursor:not-allowed;opacity:.5}.admin-shell__body{padding:clamp(24px,2.4vw,40px);min-height:0;min-width:0;overflow-x:clip;overflow-y:auto;overscroll-behavior:contain}.admin-mobile-header,.admin-mobile-menu-backdrop{display:none}.admin-login-page{display:grid;place-items:center;min-height:100vh;padding:32px;background:var(--color-navy)}.admin-login-card{display:grid;gap:18px;width:min(100%,420px);padding:32px;border-radius:8px;background:var(--color-white);box-shadow:var(--shadow-panel)}.admin-login-card h1,.admin-page__header h1,.admin-panel__header h2,.admin-member-summary h2{margin:0;line-height:1.2}.admin-login-card h1,.admin-page__header h1{font-size:var(--font-size-display-sm)}.admin-login-card p,.admin-page__header p,.admin-panel__header p,.admin-member-summary p{margin:6px 0 0;color:var(--color-muted);overflow-wrap:break-word;word-break:keep-all}.admin-page__header .admin-copy-unit{white-space:nowrap}.admin-page{display:grid;gap:24px;width:100%;max-width:none;min-width:0}.admin-page--counter{gap:18px}.admin-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.admin-eyebrow{color:var(--color-yellow-text);font-size:var(--font-size-label);font-weight:900;text-transform:uppercase}.admin-stat-card,.admin-panel,.admin-member-summary{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white)}.admin-stat-card{display:grid;gap:8px;min-width:0;padding:18px}.admin-stat-card span,.admin-stat-card small{color:var(--color-muted)}.admin-stat-card span{font-size:var(--font-size-caption);font-weight:800}.admin-stat-card strong{font-size:var(--font-size-display-sm);line-height:1}.admin-stat-card small{color:var(--color-muted);font-size:var(--font-size-label);font-weight:800}.admin-grid{display:grid;gap:16px;min-width:0}.admin-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid--content-fit{grid-template-columns:repeat(auto-fit,minmax(min(22rem,100%),1fr))}.admin-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-panel{display:grid;gap:16px;align-content:start;min-width:0;padding:20px}.admin-panel__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-page__header>div,.admin-panel__header>div{min-width:0}.admin-panel__header strong{flex-shrink:0;color:var(--color-yellow-text);font-size:var(--font-size-brand)}.admin-member-lifecycle{gap:14px}.admin-member-lifecycle__list{display:grid;gap:0;margin:0;padding:0;list-style:none}.admin-member-lifecycle__item{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px;padding:0 0 18px}.admin-member-lifecycle__item:last-child{padding-bottom:0}.admin-member-lifecycle__item:not(:last-child):before{position:absolute;top:14px;bottom:0;left:8px;width:2px;background:var(--color-surface-track);content:""}.admin-member-lifecycle__marker{z-index:1;width:18px;height:18px;margin-top:2px;border:4px solid var(--color-yellow);border-radius:50%;background:var(--color-white)}.admin-member-lifecycle__heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.admin-member-lifecycle__heading strong{color:var(--color-navy)}.admin-member-lifecycle__heading time,.admin-member-lifecycle__item small{color:var(--color-muted);font-size:var(--font-size-label)}.admin-member-lifecycle__item p{margin:4px 0;color:var(--color-muted);font-size:var(--font-size-caption)}@media(max-width:640px){.admin-member-lifecycle__heading{align-items:flex-start;flex-direction:column;gap:2px}}.quick-actions{display:grid;gap:10px}.quick-actions a,.admin-result,.admin-notice,.admin-empty{min-height:48px;padding:12px;border-radius:8px;font-weight:800}.quick-actions a{display:flex;align-items:center;color:var(--color-navy);background:var(--color-surface-muted)}.admin-notice{color:var(--color-navy);background:var(--color-surface-muted);overflow-wrap:anywhere}.admin-notice.is-positive,.admin-result{color:var(--color-navy);background:var(--color-yellow-state-emphasis)}.admin-error{min-height:44px;padding:12px;border:1px solid var(--color-danger-border);border-radius:8px;color:var(--color-danger);background:var(--color-danger-surface);font-weight:800}.admin-empty{display:flex;align-items:center;color:var(--color-muted);background:var(--color-paper)}.admin-empty-state{display:grid;gap:10px;align-items:start}.admin-field{display:grid;gap:6px}.admin-field span{color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800}.admin-field small{color:var(--color-muted);font-size:var(--font-size-label);font-weight:800}.admin-field-error{color:var(--color-danger)}.admin-field input,.admin-field select,.admin-field textarea{width:100%;min-height:46px;padding:0 12px;border:1px solid var(--color-border);border-radius:8px;color:var(--color-navy);background:var(--color-white)}.admin-field textarea{min-height:92px;padding:12px;resize:vertical}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:var(--color-yellow);outline:2px solid var(--focus-ring)}.admin-checkbox{display:flex;align-items:center;gap:10px;min-height:46px;color:var(--color-muted);font-size:var(--font-size-caption);font-weight:800}.admin-checkbox input{width:18px;height:18px;accent-color:var(--color-yellow)}.admin-actions,.admin-searchbar{display:flex;align-items:end;gap:10px}.admin-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px}.admin-settings-form{display:grid;gap:14px}.admin-membership-copy{grid-column:1 / -1}.admin-membership-copy textarea{min-height:calc(var(--space-8) * 3);resize:vertical}.admin-membership-copy .admin-field small{justify-self:end;color:var(--color-muted);font-size:var(--font-size-label)}.admin-membership-copy__preview{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-navy-border-strong);border-radius:var(--radius-md);background:var(--color-yellow-state-subtle)}.admin-membership-copy__preview>span{color:var(--color-muted-strong);font-size:var(--font-size-label);font-weight:800}.admin-membership-copy__preview ul{display:grid;gap:var(--space-2);margin:0;padding-left:var(--space-5);color:var(--color-navy);font-size:var(--font-size-body-sm);line-height:var(--line-height-body);word-break:keep-all}.admin-access-panel{border-color:var(--color-danger-border);background:var(--color-danger-surface-soft)}.admin-settings-recovery{display:flex;flex-wrap:wrap;gap:10px}.admin-settings-status{display:grid;gap:14px;justify-items:start}.admin-settings-status p{margin:0}.admin-settings-validation{margin:0;color:var(--color-danger);font-size:var(--font-size-caption);font-weight:800;line-height:1.45}.admin-policy-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.admin-policy-list li{min-height:44px;padding:12px;border-radius:8px;color:var(--color-navy);background:var(--color-surface-muted);font-weight:800}.coupon-template-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.coupon-template-summary article,.selected-template-policy{display:grid;gap:8px;padding:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-white)}.coupon-template-summary span{color:var(--color-muted);font-size:var(--font-size-label);font-weight:900;text-transform:uppercase}.coupon-template-summary strong{color:var(--color-navy);font-size:var(--font-size-page-title-compact);line-height:1}.coupon-template-summary small,.selected-template-policy small{color:var(--color-muted);line-height:1.5}.selected-template-policy{background:var(--color-warning-surface)}.selected-template-policy strong{display:block;margin-top:8px;color:var(--color-navy)}.selected-template-policy dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.selected-template-policy div{min-width:0}.selected-template-policy dt{color:var(--color-muted);font-size:var(--font-size-label);font-weight:900}.selected-template-policy dd{margin:2px 0 0;color:var(--color-navy);font-weight:900}.coupon-settings-mobile-list,.preference-tag-mobile-list{display:none}.coupon-settings-mobile-row{display:grid;gap:12px;min-width:0;padding:16px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-white)}.coupon-settings-mobile-row__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}.coupon-settings-mobile-row__header>div{min-width:0}.coupon-settings-mobile-row__header strong,.coupon-settings-mobile-row__header small{overflow-wrap:anywhere;word-break:break-word}.coupon-settings-mobile-row__header strong,.coupon-settings-mobile-row__header small{display:block}.coupon-settings-mobile-row__header small{margin-top:4px;color:var(--color-muted)}.coupon-settings-mobile-row__details{display:grid;gap:8px;margin:0}.coupon-settings-mobile-row__details div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px}.coupon-settings-mobile-row__details dt{color:var(--color-muted);font-size:var(--font-size-label);font-weight:900}.coupon-settings-mobile-row__details dd{min-width:0;margin:0;color:var(--color-navy);overflow-wrap:anywhere}.coupon-settings-mobile-row .table-action{justify-self:start}.coupon-settings-desktop-table .admin-code-badge{overflow-wrap:normal;white-space:nowrap}.coupon-settings-desktop-table td:nth-child(3) strong,.coupon-settings-desktop-table td:nth-child(3) small{display:block;overflow-wrap:anywhere;word-break:break-word}.preference-tag-mobile-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;min-width:0;padding:16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft)}.preference-tag-mobile-row.is-selected{border-color:var(--color-yellow-border-active);background:var(--color-yellow-surface)}.preference-tag-mobile-row>div{display:grid;gap:6px;min-width:0}.preference-tag-mobile-row strong,.preference-tag-mobile-row p{min-width:0;margin:0;overflow-wrap:anywhere}.preference-tag-mobile-row p{color:var(--color-muted);font-size:var(--font-size-caption);font-weight:700;line-height:1.45}.coupon-settings-field{min-width:0}.coupon-settings-field input{box-sizing:border-box;min-width:0;max-width:100%}.admin-searchbar .admin-field{flex:1}.admin-searchbar__toggle,.admin-settings-policy-toggle{flex:0 0 auto}.admin-searchbar__support-filters{display:grid;flex:2 1 440px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:min(100%,360px)}.admin-searchbar__date-presets{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:6px}.admin-searchbar__date-presets .table-action.is-active{border-color:var(--color-navy);color:var(--color-paper);background:var(--color-navy)}.admin-searchbar__date-range{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-audit-searchbar{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr) auto auto auto;align-items:end}.admin-audit-searchbar .admin-field{min-width:0}.admin-audit-searchbar .admin-searchbar__support-filters{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-settings-policy-details{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;color:var(--color-muted);background:var(--color-paper);font-size:var(--font-size-label);font-weight:800}.member-search-panel{display:grid;gap:14px}.nfc-mode-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:min(100%,340px);min-width:0;min-height:46px;max-width:100%;padding:4px;border-radius:8px;background:var(--color-surface-subtle)}.nfc-scan-field{display:grid;gap:14px;width:min(100%,520px);min-width:0;max-width:100%;min-height:160px}.nfc-credential-history{display:grid;gap:10px;min-width:0;max-width:100%;overflow:hidden}.nfc-device-table{min-width:0;max-width:100%;min-height:180px;overflow-x:auto;overflow-y:hidden}.nfc-device-list{display:none}.nfc-device-health{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;max-width:100%;min-height:96px}.nfc-device-health .admin-notice{display:grid;gap:4px}.nfc-device-health .admin-notice span{font-variant-numeric:tabular-nums;overflow-wrap:normal;word-break:normal}.nfc-device-table .table-action{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.nfc-device-table .admin-code-badge,.nfc-device-card__select .admin-code-badge{white-space:nowrap;overflow-wrap:normal}.nfc-counter-band-support{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3)}.nfc-counter-band-support>span{min-width:0}.nfc-counter-band-support .table-action{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:var(--control-min-height);padding:0 var(--space-3);text-align:center;white-space:normal;overflow-wrap:anywhere}@media(max-width:760px){.nfc-counter-band-support{grid-template-columns:1fr}.nfc-counter-band-support .table-action{width:100%}}[data-testid=nfc-last-activity]{white-space:nowrap}.admin-member-summary{display:grid;gap:18px;padding:20px}.admin-member-summary__identity{min-width:0}.admin-member-summary__identity-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-member-summary__identity-info{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--color-border);border-radius:999px;color:var(--color-navy);background:var(--color-white);font-size:var(--font-size-body-compact);font-weight:900;line-height:1;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.admin-member-summary__identity-info:focus-visible,.admin-member-summary__identity-info.is-active{border-color:var(--color-yellow);background:var(--color-yellow-state-strong);box-shadow:0 8px 18px var(--color-navy-shadow-soft)}.admin-member-summary__identity-info:focus-visible{outline-color:var(--color-navy)}.admin-member-summary__crm{display:grid;gap:12px;min-width:0;padding:16px;border:1px solid var(--color-navy-border-subtle);border-radius:8px;background:var(--color-surface-soft)}.admin-member-summary__crm-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:6px 12px}.admin-member-summary__crm-title{min-width:0}.admin-member-summary__crm-description{grid-column:1 / -1;margin:0!important}.admin-member-summary__crm-edit{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:78px;min-height:36px;padding:0 12px;border:1px solid var(--color-border);border-radius:8px;color:var(--color-navy);background:var(--color-white);font-size:var(--font-size-caption);font-weight:900;line-height:1;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.admin-member-summary__crm-edit:focus-visible,.admin-member-summary__crm-edit.is-active{border-color:var(--color-yellow);background:var(--color-yellow-state-strong);box-shadow:0 8px 18px var(--color-navy-shadow-soft)}.admin-member-summary__crm-edit:focus-visible{outline-color:var(--color-navy)}.admin-member-summary__crm-tags{display:flex;flex-wrap:wrap;gap:8px}.admin-tag-groups{display:grid;gap:10px}.admin-tag-group{display:grid;gap:8px;min-width:0;padding:10px;border:1px solid var(--color-navy-border-subtle);border-radius:8px;background:var(--color-white)}.admin-tag-group h3{margin:0;color:var(--color-muted);font-size:var(--font-size-label);font-weight:900}.admin-tag-group--customer{border-color:var(--color-info-border-subtle);background:var(--color-info-surface-soft)}.admin-tag-group--staff{border-color:var(--color-yellow-border-subtle);background:var(--color-yellow-surface-soft)}.admin-member-summary__crm .admin-empty{min-height:42px}.admin-member-summary__crm-note{background:var(--color-paper)}.admin-member-summary__metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.admin-member-summary__metric{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:12px;border:1px solid transparent;border-radius:8px;background:var(--color-paper)}.admin-member-summary__metric-icon{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--color-navy-border);border-radius:999px;color:var(--color-navy);background:var(--color-white)}.admin-member-summary__metric.is-active .admin-member-summary__metric-icon{border-color:var(--color-yellow-border-kakao);background:var(--color-yellow)}.admin-member-summary__metric-copy{min-width:0}.admin-member-summary--toolbar{grid-template-columns:minmax(220px,.68fr) minmax(0,2fr);align-items:stretch}.admin-member-summary--toolbar .admin-member-summary__metrics{grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr))}.admin-member-summary--toolbar .admin-member-summary__metric{cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.admin-member-summary--toolbar .admin-member-summary__metric:focus-visible{border-color:var(--color-yellow-border-hover);background:var(--color-yellow-state-subtle);outline-color:var(--color-navy)}.admin-member-summary--toolbar .admin-member-summary__metric.is-active{border-color:var(--color-yellow);background:var(--color-yellow-state-emphasis);box-shadow:0 10px 26px var(--color-navy-shadow-soft)}.admin-member-summary dt{color:var(--color-muted);font-size:var(--font-size-label);font-weight:800}.admin-member-summary dd{margin:4px 0 0;font-weight:900;overflow-wrap:anywhere}.admin-member-summary__metric--qr dd{overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:var(--font-size-caption);text-overflow:ellipsis;white-space:nowrap}.admin-member-action-area{display:grid;gap:16px}.admin-counter-results{display:grid;gap:10px;min-width:0}.admin-counter-completion{position:sticky;bottom:4px;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px;border:1px solid var(--color-navy-border-subtle);border-radius:8px;background:var(--color-white-translucent);box-shadow:0 14px 32px var(--color-navy-shadow-strong)}.admin-page--counter .admin-member-summary,.admin-page--counter .admin-panel{gap:14px;padding:18px 20px}.admin-member-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-info-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:10px;margin:0}.admin-info-list div{min-width:0;padding:12px;border-radius:8px;background:var(--color-paper)}.admin-info-list dt{color:var(--color-muted);font-size:var(--font-size-label);font-weight:800}.admin-info-list dd{margin:4px 0 0;font-weight:900;overflow-wrap:anywhere}.admin-code-badge,.admin-template-policy{display:inline-flex;align-items:center;min-height:26px;max-width:100%;padding:4px 7px;border-radius:6px;color:var(--color-navy);background:var(--color-yellow-state-strong);font-size:var(--font-size-label);font-weight:900;overflow-wrap:anywhere}.admin-code-badge--device-reference{font-size:var(--font-size-overline);letter-spacing:-.1px;overflow-wrap:normal;white-space:nowrap;word-break:normal}.admin-stamp-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,44px));justify-content:start;gap:8px}.admin-stamp-row span{display:inline-flex;align-items:center;justify-content:center;aspect-ratio:1;min-width:0;border:1px solid var(--color-border);border-radius:999px;color:var(--color-muted);background:var(--color-white);font-weight:900}.admin-stamp-row span.is-active{border-color:var(--color-yellow);color:var(--color-navy);background:var(--color-yellow)}.admin-stamp-legend,.admin-stamp-actions{display:flex;flex-wrap:wrap;gap:10px}.admin-stamp-legend span{display:inline-flex;align-items:center;gap:6px;color:var(--color-muted);font-size:var(--font-size-label);font-weight:800}.admin-stamp-legend i{width:12px;height:12px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-white)}.admin-stamp-legend i.is-active{border-color:var(--color-yellow);background:var(--color-yellow)}.admin-coupon-list,.admin-history-list{display:grid;gap:10px}.admin-coupon-option,.admin-coupon-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-surface-soft)}.admin-coupon-row{grid-template-columns:minmax(0,1fr) auto}.admin-coupon-option strong,.admin-coupon-option small,.admin-coupon-row strong,.admin-coupon-row small{display:block}.admin-coupon-option small,.admin-coupon-row small{color:var(--color-muted)}.admin-coupon-option .admin-coupon-option__policy{margin-top:3px;color:var(--color-navy);font-weight:900}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;min-width:900px;border-collapse:collapse}.admin-table th,.admin-table td{padding:14px 12px;border-top:1px solid var(--color-border);text-align:left}.admin-table th{color:var(--color-muted);font-size:var(--font-size-label);font-weight:900}.admin-table tbody tr.is-selected{background:var(--color-yellow-surface);box-shadow:inset 4px 0 0 var(--color-yellow)}.admin-table td small{display:block;margin-top:4px;color:var(--color-muted)}.admin-table--audit{min-width:780px;table-layout:fixed}.admin-table--audit--metadata{min-width:912px}.admin-table--audit th,.admin-table--audit td{vertical-align:top}.admin-table--audit td{color:var(--color-navy-soft);line-height:1.45}.admin-table--audit th:nth-child(1),.admin-table--audit td:nth-child(1){width:140px;font-variant-numeric:tabular-nums}.admin-table--audit th:nth-child(1){white-space:nowrap}.admin-table--audit td:nth-child(1){word-break:keep-all}.admin-table--audit th:nth-child(2),.admin-table--audit td:nth-child(2){width:112px}.admin-table--audit th:nth-child(3),.admin-table--audit td:nth-child(3){width:124px}.admin-table--audit th:nth-child(4),.admin-table--audit td:nth-child(4){width:136px}.admin-table--audit th:nth-child(5),.admin-table--audit td:nth-child(5){width:148px}.admin-audit-target-header>span{display:block}.admin-audit-target-header .table-action{margin-top:var(--space-1);padding:4px 0;color:var(--color-info);font-size:var(--font-size-label)}.admin-table--audit th:nth-child(6),.admin-table--audit td:nth-child(6){width:220px}.admin-table--audit td:nth-child(3),.admin-table--audit td:nth-child(4),.admin-table--audit td:nth-child(5){overflow-wrap:anywhere}.admin-audit-mobile-list{display:none}.admin-audit-mobile-record{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-surface-soft)}.admin-audit-mobile-record__header,.admin-audit-mobile-record__facts>div,.admin-audit-mobile-record__expanded dl>div{display:grid;grid-template-columns:78px minmax(0,1fr);gap:10px;min-width:0}.admin-audit-mobile-record__header{grid-template-columns:minmax(0,1fr) auto;align-items:start}.admin-audit-mobile-record__header time,.admin-audit-mobile-record__facts dt,.admin-audit-mobile-record__expanded dt{color:var(--color-muted);font-size:var(--font-size-label);font-weight:900}.admin-audit-mobile-record__header time{font-variant-numeric:tabular-nums}.admin-audit-mobile-record__facts,.admin-audit-mobile-record__expanded dl{display:grid;gap:8px;margin:0}.admin-audit-mobile-record__facts dd,.admin-audit-mobile-record__expanded dd{min-width:0;margin:0;color:var(--color-navy-soft);font-weight:800;overflow-wrap:anywhere}.admin-audit-mobile-record__details{justify-self:start}.admin-audit-mobile-record__expanded{display:grid;gap:10px;min-width:0;padding-top:12px;border-top:1px solid var(--color-navy-border-subtle)}.admin-table--audit .status-badge{display:inline-flex;align-items:center;max-width:100%;min-height:26px;white-space:normal;line-height:1.18}.admin-metadata{display:block;min-width:0;max-width:100%;padding:8px 10px;border:1px solid var(--color-navy-border-subtle);border-left:3px solid var(--color-yellow-border-strong);border-radius:8px;color:var(--color-navy);background:var(--color-paper);font-family:inherit;font-size:var(--font-size-label);font-weight:800;line-height:1.45;overflow-wrap:anywhere;white-space:normal;word-break:keep-all}.table-action{min-height:34px;padding:0 10px;border:1px solid var(--color-border);border-radius:8px;color:var(--color-navy);background:var(--color-white);font-weight:900;cursor:pointer}.table-actions{display:flex;flex-wrap:wrap;gap:6px}.admin-history-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:12px;border-radius:8px;background:var(--color-surface-soft)}.admin-history-list span{color:var(--color-muted);font-size:var(--font-size-caption)}.admin-tag-list{display:flex;flex-wrap:wrap;gap:8px}.admin-tag{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 8px 6px 10px;border-radius:8px;color:var(--color-navy);background:var(--color-yellow-state-emphasis);font-size:var(--font-size-caption);font-weight:900}.admin-tag__content{display:grid;gap:2px;min-width:0}.admin-tag__content small{color:currentColor;font-size:var(--font-size-micro);font-weight:700;line-height:1.25;opacity:.72}.admin-tag--customer{border:1px solid var(--color-info-border);color:var(--color-info);background:var(--color-info-surface)}.admin-tag--staff{border:1px solid var(--color-yellow-border-staff);background:var(--color-yellow-state-active)}.admin-tag--readonly{padding-right:10px}.admin-tag button{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:0;border-radius:999px;color:var(--color-navy);background:var(--color-navy-border);cursor:pointer}.admin-tag button:disabled{cursor:not-allowed;opacity:.5}.admin-note-list{display:grid;gap:10px}.admin-note-item{display:grid;gap:8px;padding:12px;border:1px solid var(--color-navy-border);border-radius:8px;background:var(--color-surface-soft)}.admin-note-item p{margin:0;overflow-wrap:anywhere}.admin-note-item small{color:var(--color-muted);font-size:var(--font-size-label);font-weight:800}.admin-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px}.admin-pagination span{color:var(--color-muted);font-size:var(--font-size-caption);font-weight:900}.member-priority-list{display:none}.member-priority-card{display:grid;gap:12px;min-width:0;padding:14px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-white)}.member-priority-card__header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-width:0}.member-priority-card__identity{display:grid;gap:2px;min-width:0}.member-priority-card__header strong{color:var(--color-navy);font-size:var(--font-size-body-strong)}.member-priority-card__header span{flex:0 0 auto;color:var(--color-muted);font-size:var(--font-size-label);font-weight:800}.member-priority-card__identity small{color:var(--color-muted);font-size:var(--font-size-label);font-weight:800;font-variant-numeric:tabular-nums}.member-priority-card__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.member-priority-card__facts div{display:grid;gap:3px;min-width:0;padding:9px;border-radius:8px;background:var(--color-surface-soft)}.member-priority-card__facts dt{color:var(--color-muted);font-size:var(--font-size-overline);font-weight:800;overflow-wrap:anywhere}.member-priority-card__facts dd{margin:0;color:var(--color-navy);font-size:var(--font-size-body-sm);font-weight:900}.member-priority-card__facts .member-stamp-count--empty{display:inline-flex;justify-self:start;width:fit-content;padding:2px 6px;border-radius:6px;color:var(--color-muted);background:var(--color-surface-subtle)}.member-priority-card__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.member-priority-card__actions .table-action{min-width:0;min-height:42px}.admin-dashboard__state{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:16px 18px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-white)}.admin-dashboard__state p{margin:0;color:var(--color-navy);font-weight:800;overflow-wrap:anywhere}.admin-dashboard__state--loading{color:var(--color-muted)}.admin-dashboard__state--error{border-color:var(--color-danger-border);background:var(--color-danger-surface)}@media(max-width:760px){.nfc-device-health{grid-template-columns:1fr;min-height:0}.nfc-device-table{overflow-x:visible}.nfc-device-table .admin-table{min-width:0;table-layout:fixed}.nfc-device-table :is(th,td):nth-child(1){width:50%}.nfc-device-table :is(th,td):nth-child(2){width:34%}.nfc-device-table :is(th,td):nth-child(3){width:16%}.nfc-device-table :is(th,td):nth-child(n+4){display:none}}@media(min-width:761px)and (max-width:1120px){.admin-shell{grid-template-columns:216px minmax(0,1fr)}.admin-sidebar{padding:var(--space-6) var(--space-4)}.admin-shell__body{padding:var(--space-6)}}@media(max-width:960px){.admin-audit-searchbar{grid-template-columns:minmax(0,1fr) auto auto}.admin-audit-searchbar>.admin-field,.admin-audit-searchbar>.admin-searchbar__date-presets,.admin-audit-searchbar>.admin-searchbar__support-filters{grid-column:1 / -1}.admin-grid--two,.admin-grid--three,.coupon-template-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid--content-fit{grid-template-columns:repeat(auto-fit,minmax(min(22rem,100%),1fr))}.admin-member-summary--toolbar,.admin-member-action-grid{grid-template-columns:1fr}.admin-member-summary--toolbar .admin-member-summary__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-audit-desktop,.coupon-settings-desktop-table,.preference-tag-desktop-table{display:none}.coupon-settings-mobile-list,.preference-tag-mobile-list{display:grid;gap:10px}.admin-audit-mobile-list{display:grid;gap:10px;min-width:0}.member-table-desktop{display:none}.member-priority-list{display:grid;gap:10px}.admin-page__header{align-items:stretch;flex-direction:column}.nfc-device-detail-grid{grid-template-columns:1fr}.nfc-device-table{display:none}.nfc-device-list{display:grid;gap:12px}.nfc-device-card{display:grid;gap:12px;min-width:0;padding:16px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-soft)}.nfc-device-card.is-selected{border-color:var(--color-yellow);background:var(--color-yellow-surface)}.nfc-device-card__header{display:flex;align-items:start;justify-content:space-between;gap:12px}.nfc-device-card__select{display:grid;gap:4px;min-width:0;padding:0;border:0;background:transparent;color:var(--color-navy);text-align:left}.nfc-device-card__select strong{font-size:var(--font-size-card-title)}.nfc-device-card__select code{width:fit-content;max-width:100%;overflow-wrap:anywhere}.nfc-device-card__select small,.nfc-device-card__facts dt{color:var(--color-muted);font-size:var(--font-size-label);font-weight:800}.nfc-device-card__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.nfc-device-card__facts div{min-width:0;padding:10px;border-radius:var(--radius-sm);background:var(--color-surface-muted)}.nfc-device-card__facts dt,.nfc-device-card__facts dd{margin:0}.nfc-device-card__facts dd{margin-top:4px;color:var(--color-navy);font-size:var(--font-size-body-sm);font-weight:700;line-height:1.45;overflow-wrap:anywhere}.nfc-device-card .table-action{justify-self:start}}@media(max-width:760px){.admin-audit-searchbar{grid-template-columns:1fr;align-items:stretch}.admin-searchbar__support-filters,.admin-audit-searchbar .admin-searchbar__support-filters,.admin-searchbar__date-range,.nfc-device-card__facts{grid-template-columns:1fr}.admin-audit-desktop{display:none}.admin-audit-mobile-list{display:grid;gap:10px;min-width:0}.admin-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);align-content:stretch}.admin-mobile-header{position:relative;z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:var(--mobile-header-height);padding:10px 16px;border-bottom:1px solid var(--color-navy-border);background:var(--color-white)}.admin-mobile-header__brand{color:var(--color-navy);font-size:var(--font-size-subsection-title);font-weight:800}.admin-mobile-header__brand .bottling-brand__context{color:var(--color-muted)}.admin-mobile-header__menu{min-width:72px;min-height:44px;padding:8px 14px;border:1px solid var(--color-navy-border-emphasis);border-radius:8px;color:var(--color-navy);background:var(--color-white);font-size:var(--font-size-body-sm);font-weight:800;cursor:pointer}.admin-mobile-header__menu[aria-expanded=true]{border-color:var(--color-yellow-border-active);background:var(--color-yellow-surface)}.admin-sidebar{position:fixed;z-index:var(--z-drawer);inset:0 auto 0 0;display:none;width:min(320px,calc(100vw - 32px));max-height:100dvh;overflow-y:auto;padding:24px 16px;box-shadow:var(--shadow-panel)}.admin-sidebar.is-mobile-open{display:flex}.admin-mobile-menu-backdrop{position:fixed;z-index:var(--z-backdrop);top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;border:0;background:var(--color-navy-shadow-panel);cursor:pointer}.admin-sidebar__brand{margin-bottom:16px}.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sidebar__logout{margin-top:12px}.admin-shell__body{padding:20px 16px 32px}.admin-page__header,.admin-actions,.admin-searchbar{align-items:stretch;flex-direction:column}.admin-inline-form,.admin-member-summary__crm-header{grid-template-columns:1fr}.admin-member-summary__crm-description{grid-column:auto}.admin-member-summary__crm-edit{justify-self:start}.admin-grid--two,.admin-grid--three,.coupon-template-summary,.selected-template-policy dl{grid-template-columns:1fr}.admin-member-summary__metric--qr{grid-column:1 / -1}.admin-login-page{padding:20px}.admin-login-card{padding:24px}}.admin-sidebar__top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:36px}.admin-sidebar__top .admin-sidebar__brand{margin-bottom:0}.admin-sidebar__close{display:none}.admin-sidebar nav a{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:var(--space-3)}.admin-sidebar__logout{display:flex;align-items:center;gap:var(--space-3)}.admin-navigation__icon{justify-self:center}@media(max-width:760px){.admin-mobile-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:var(--space-3)}.admin-mobile-header__brand{min-width:0}.admin-mobile-header__window{display:grid;justify-items:end;gap:var(--space-1);min-width:max-content;font-variant-numeric:tabular-nums}.admin-mobile-header__window strong{color:var(--color-navy);font-size:var(--font-size-caption);line-height:var(--line-height-label)}.admin-mobile-header__window small{color:var(--color-muted);font-size:var(--font-size-label);font-weight:800;line-height:var(--line-height-label)}.admin-mobile-header[aria-hidden=true] .admin-mobile-header__menu{visibility:hidden}.admin-sidebar__top{margin-bottom:var(--space-4)}.admin-sidebar{width:min(420px,100vw)}.admin-sidebar__close{display:inline-grid;place-items:center;min-width:56px;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-on-navy-muted);border-radius:var(--radius-md);color:var(--color-white);background:transparent;font-size:var(--font-size-body-sm);font-weight:900;cursor:pointer}.admin-sidebar nav{grid-template-columns:1fr;gap:0}.admin-sidebar__group{gap:var(--space-1);padding:var(--space-3) 0;border-top:1px solid var(--color-on-navy-muted)}.admin-sidebar__group:first-child{padding-top:0;border-top:0}.admin-sidebar__group-label{margin-bottom:var(--space-1);color:var(--color-white);font-size:var(--font-size-caption);opacity:.72}.admin-sidebar nav a{color:var(--color-white);font-size:var(--font-size-body-compact);line-height:1.4}.admin-sidebar nav a.is-active{color:var(--color-navy)}}
