.roulette-experience{max-width:740px;margin:0 auto}.roulette-back{display:inline-flex;align-items:center;gap:9px;color:var(--color-text-muted);font-size:.875rem;margin-bottom:30px}.roulette-back:hover{color:var(--color-oyster)}.roulette-heading{text-align:center;margin-bottom:30px}.roulette-milestone{display:inline-flex;align-items:center;gap:8px;color:var(--color-copper);font-size:.75rem;font-weight:600;letter-spacing:.16em;margin-bottom:15px}.roulette-heading h1{font-size:clamp(2.25rem,4vw,3.3rem);line-height:1.12}.roulette-heading h1 em{font-style:normal;color:var(--color-oyster);font-weight:400}.roulette-heading p{margin:16px auto 0;font-size:.9375rem;color:var(--color-text-muted)}.roulette-surface{border:1px solid var(--color-border);border-radius:22px;padding:24px clamp(12px,4vw,40px) 28px;background:radial-gradient(ellipse at 50% 35%,var(--color-surface-raised) 0,var(--color-surface) 48%,var(--color-noir) 100%);box-shadow:0 24px 60px #0003}.roulette-surface-heading{display:flex;justify-content:space-between;gap:12px;color:var(--color-copper);font-size:.625rem;letter-spacing:.17em;margin-bottom:16px}.prize-wheel-stage{width:min(100%,480px);aspect-ratio:1;position:relative;margin:20px auto 28px;isolation:isolate}.prize-wheel-rotor{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 12px 18px #0008)}.prize-wheel-rotor,.prize-wheel-lettering{transition:transform 4.5s cubic-bezier(.12,.72,.12,1)}.prize-wheel-rotor{transform-origin:50% 50%}.prize-wheel-lettering{transform-origin:0 0;font-family:var(--font-sans)}.prize-wheel-pointer{position:absolute;left:50%;top:-1.5%;transform:translate(-50%);width:7%;height:9%;background:linear-gradient(110deg,var(--color-copper-light),var(--color-copper));clip-path:polygon(0 0,100% 0,50% 100%);z-index:3}.prize-wheel-hub{position:absolute;inset:38%;display:grid;place-items:center;border:3px solid var(--color-copper);border-radius:50%;background:radial-gradient(circle at 35% 20%,var(--color-surface-raised),var(--color-noir) 75%);box-shadow:0 0 0 5px var(--color-noir),0 5px 13px #0009,inset 0 0 0 2px var(--color-truffle);z-index:2}.prize-wheel-hub img{width:42%;height:68%;object-fit:contain}.roulette-controls{text-align:center}.roulette-spin-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:min(100%,320px);min-height:54px;padding:14px 22px;border:1px solid var(--color-oyster);border-radius:10px;background:linear-gradient(110deg,var(--color-copper-light),var(--color-copper));box-shadow:inset 0 1px color-mix(in srgb,var(--color-oyster) 35%,transparent),0 6px 20px #0004;color:var(--color-noir);font:700 1rem var(--font-sans);cursor:pointer}.roulette-spin-button:hover:not(:disabled){background:linear-gradient(110deg,var(--color-copper-light),var(--color-copper))}.roulette-spin-button:disabled{cursor:wait;opacity:.75}.roulette-controls p{margin:13px 0 0;font-size:.75rem;color:var(--color-text-muted)}.roulette-button-spinning{animation:roulette-button-turn 1.5s linear infinite}.roulette-winning-ticket{display:flex;align-items:center;gap:18px;margin-top:24px;padding:22px;background:var(--color-oyster);border-radius:12px;color:var(--color-noir);text-align:left}.roulette-winning-ticket>svg{flex:none;color:var(--color-truffle)}.roulette-winning-ticket span{font-size:.6875rem;letter-spacing:.15em;color:var(--color-truffle)}.roulette-winning-ticket h2{margin:6px 0;font-size:1.5rem}.roulette-winning-ticket p{color:var(--color-truffle);font-size:.8125rem}.roulette-prize-summary{margin:24px auto 0;text-align:center}.roulette-prize-summary>span{font-size:.6875rem;letter-spacing:.18em;color:var(--color-copper)}.roulette-prize-summary ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin:12px 0 0;padding:0}.roulette-prize-summary li{font-size:.875rem;color:var(--color-text-muted)}@keyframes roulette-button-turn{to{transform:rotate(360deg)}}@media(max-width:480px){.roulette-surface{margin-inline:-8px;padding-inline:8px;border-radius:16px}.roulette-surface-heading{padding-inline:8px;font-size:.5625rem;letter-spacing:.1em}.roulette-heading p{max-width:260px}.roulette-controls{padding-inline:10px}.prize-wheel-hub{border-width:2px;box-shadow:0 0 0 3px var(--color-noir),0 5px 13px #0009}.roulette-winning-ticket{margin-inline:8px;padding:17px}}@media(prefers-reduced-motion:reduce){.prize-wheel-rotor,.prize-wheel-lettering{transition:none}.roulette-button-spinning{animation:none}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:"DM Sans", Arial, sans-serif;--font-serif:"Recoleta", Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-noir:#000;--color-truffle:#605f45;--color-copper:#b68036;--color-oyster:#f9f4ea;--color-dark-greige:#747068}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Medium.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Bold.ttf)format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-MediumItalic.ttf)format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-BoldItalic.ttf)format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Recoleta;src:url(/fonts/recoleta-regulardemo.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap;font-feature-settings:"liga" 0,"clig" 0,"dlig" 0,"hlig" 0,"calt" 0}:root{--color-surface:#0f0f0b}@supports (color:color-mix(in lab,red,red)){:root{--color-surface:color-mix(in srgb, var(--color-truffle) 16%, var(--color-noir))}}:root{--color-surface-raised:#1f1e16}@supports (color:color-mix(in lab,red,red)){:root{--color-surface-raised:color-mix(in srgb, var(--color-truffle) 32%, var(--color-noir))}}:root{--color-border:#383632}@supports (color:color-mix(in lab,red,red)){:root{--color-border:color-mix(in srgb, var(--color-dark-greige) 48%, var(--color-noir))}}:root{--color-text-muted:#b3b0a8}@supports (color:color-mix(in lab,red,red)){:root{--color-text-muted:color-mix(in srgb, var(--color-oyster) 72%, var(--color-noir))}}:root{--color-copper-light:#c9a068}@supports (color:color-mix(in lab,red,red)){:root{--color-copper-light:color-mix(in srgb, var(--color-copper) 72%, var(--color-oyster))}}:root{font-family:var(--font-sans);color:var(--color-oyster);background:var(--color-noir);font-synthesis:none;color-scheme:dark;font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--color-copper);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-serif);font-variant-ligatures:none;font-feature-settings:"liga" 0,"clig" 0,"dlig" 0,"hlig" 0,"calt" 0;font-weight:400}h1{letter-spacing:-.035em;font-size:clamp(2.3rem,4vw,3.5rem);line-height:1.15}h2{font-size:1.8rem;line-height:1.25}h3{font-size:1.4rem}p{color:var(--color-text-muted)}.shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--color-border);background:var(--color-noir);flex-direction:column;padding:38px 26px;display:flex}.brand{align-items:center;gap:13px;display:flex}.brand img{width:170px;height:auto;display:block}.brand-number{font-family:var(--font-serif);color:var(--color-copper);font-size:3.1rem;line-height:1}.brand>span:last-child{letter-spacing:.12em;font-size:.65rem;line-height:1.9}.nav-label{color:var(--color-text-muted);letter-spacing:.15em;margin:60px 12px 18px;font-size:.75rem}.sidebar nav{gap:7px;display:grid}.sidebar nav a{color:var(--color-text-muted);border-radius:7px;justify-content:space-between;align-items:center;padding:11px 14px;font-size:.9rem;display:flex}.sidebar nav a.active{color:var(--color-oyster);background:var(--color-surface-raised)}.sidebar nav a:hover{background:var(--color-surface)}.sidebar nav a svg{opacity:0}.sidebar nav a.active svg{opacity:1}.sidebar-footer{color:var(--color-copper);margin-top:auto;padding:70px 12px 0}.sidebar-footer p{font-family:var(--font-serif);color:var(--color-oyster);margin:20px 0;font-size:1.5rem;line-height:1.4}.sidebar-footer small{letter-spacing:.1em;color:var(--color-text-muted);font-size:.65rem}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--color-border);letter-spacing:.14em;justify-content:space-between;align-items:center;gap:15px;min-height:82px;padding:20px 5%;font-size:.75rem;display:flex}.preview-badge{color:var(--color-oyster);border:1px solid var(--color-border);letter-spacing:0;border-radius:30px;padding:5px 12px;font-size:.75rem}.logout{color:var(--color-copper);font:inherit;background:0 0;border:0;font-size:.75rem}.auth-page{text-align:center;max-width:520px;margin:0 auto;padding:8vh 24px}.auth-logo{width:230px;margin:0 auto 60px}.auth-page>p:not(.eyebrow){max-width:420px;margin:15px auto 28px}.auth-form{text-align:left;gap:16px;display:grid}.auth-form label{color:var(--color-oyster);gap:8px;font-size:.85rem;display:grid}.auth-form select{background:var(--color-noir);border:1px solid var(--color-border);width:100%;color:var(--color-oyster);font:inherit;border-radius:6px;padding:13px}.auth-form .button{cursor:pointer;border:0;width:100%;margin-top:6px}.form-error{color:var(--color-oyster)}.demo-note{color:var(--color-text-muted);margin-top:18px;display:block}main{max-width:1500px;min-height:calc(100vh - 159px);margin:auto;padding:46px 5% 65px}.eyebrow{color:var(--color-copper);letter-spacing:.16em;margin-bottom:14px;font-size:.75rem}.page-heading{margin-bottom:35px}.page-heading>p:last-child{max-width:650px;margin-top:15px}.overview-grid{grid-template-columns:1.15fr 1fr;gap:24px;display:grid}.membership-card{border:1px solid var(--color-copper);background:radial-gradient(ellipse at 15% 0%,#605f4559,transparent 60%),linear-gradient(125deg,var(--color-surface-raised),var(--color-surface));border-radius:17px;min-height:310px;padding:26px 30px}@supports (color:color-mix(in lab,red,red)){.membership-card{background:radial-gradient(ellipse at 15% 0%,color-mix(in srgb,var(--color-truffle) 35%,transparent),transparent 60%),linear-gradient(125deg,var(--color-surface-raised),var(--color-surface))}}.membership-card{flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 55px #0003}.card-title img{object-fit:contain;width:165px;height:72px;margin:0 auto 10px}.visit-progress{grid-template-columns:repeat(10,1fr);gap:8px;margin:10px 12px 14px;display:grid}.visit-dot{aspect-ratio:1;border:1px solid var(--color-dark-greige);color:var(--color-oyster);border-radius:50%;place-items:center;font-size:.72rem;display:grid}.visit-dot.complete{background:var(--color-oyster);color:var(--color-surface);border-color:var(--color-oyster);font-weight:700}.visit-dot.milestone{border-color:var(--color-copper);color:var(--color-copper);box-shadow:0 0 0 2px #b6803633}@supports (color:color-mix(in lab,red,red)){.visit-dot.milestone{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-copper) 20%,transparent)}}.visit-count{text-align:center;font-family:var(--font-sans);letter-spacing:.04em;color:var(--color-oyster);font-size:1.5rem;display:block}.visit-count span{letter-spacing:.16em;color:var(--color-text-muted);font-size:.7rem;font-weight:400}.membership-card:after{content:"";border:1px solid #b6803633;position:absolute;inset:11px}@supports (color:color-mix(in lab,red,red)){.membership-card:after{border:1px solid color-mix(in srgb,var(--color-copper) 20%,transparent)}}.membership-card:after{pointer-events:none;border-radius:10px}.card-top,.card-bottom{justify-content:space-between;align-items:center;gap:15px;display:flex}.card-top>span:first-child{font:2.8rem var(--font-serif);color:var(--color-copper)}.card-top>span:last-child{letter-spacing:.15em;text-align:right;color:var(--color-copper);font-size:.65rem}.card-title{text-align:center;padding:25px 0}.card-title svg{color:var(--color-copper);margin:0 auto 12px}.card-title h2{color:var(--color-oyster);font-size:clamp(1.6rem,2.3vw,2.2rem)}.card-title p{font-family:var(--font-serif);color:var(--color-text-muted);margin-top:7px;font-style:italic}.card-bottom{letter-spacing:.13em;color:var(--color-text-muted);font-size:.6rem}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:13px;padding:29px}.welcome-panel{flex-direction:column;justify-content:center;align-items:flex-start;display:flex}.welcome-panel h2{margin-bottom:15px;font-size:2rem}.welcome-panel p{margin-bottom:22px;font-size:.9rem}.button{background:var(--color-copper);color:var(--color-noir);border-radius:6px;justify-content:space-between;align-items:center;gap:20px;padding:11px 17px;font-size:.875rem;font-weight:600;transition:background .15s;display:inline-flex}.button:hover{background:var(--color-copper-light)}.text-link{color:var(--color-oyster);text-underline-offset:4px;margin-top:16px;font-size:.8rem;text-decoration:underline}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin:38px 0 18px;display:flex}.section-heading h2{font-size:1.5rem}.section-heading>span{color:var(--color-text-muted);font-size:.8rem}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.feature-card{padding:24px;position:relative}.feature-card>svg:first-child{color:var(--color-copper);margin-bottom:22px}.feature-card p{max-width:220px;margin-top:8px;font-size:.85rem}.feature-arrow{color:var(--color-text-muted);position:absolute;top:25px;right:23px}.feature-card:hover{border-color:var(--color-copper)}.reward-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.reward-group-heading{align-items:center;gap:14px;display:flex}.reward-group-heading h2{font-size:1.45rem}.reward-group>p{margin:16px 0 18px;font-size:.88rem}.milestone-badge{border:1px solid var(--color-copper);width:42px;height:42px;color:var(--color-copper);border-radius:50%;place-items:center;display:grid}.reward-list{gap:9px;display:grid}.reward-row{background:var(--color-noir);border:1px solid var(--color-border);color:var(--color-oyster);border-radius:7px;align-items:center;gap:10px;padding:11px 12px;font-size:.78rem;display:flex}.reward-row svg{color:var(--color-copper);flex:none}.reward-row.featured{color:var(--color-noir);background:var(--color-copper);border-color:var(--color-copper);padding:17px;font-weight:700}.reward-row.featured svg{color:var(--color-noir)}@media(max-width:1100px){.reward-groups{grid-template-columns:1fr 1fr}}@media(max-width:700px){.reward-groups{grid-template-columns:1fr}}.footer{border-top:1px solid var(--color-border);color:var(--color-text-muted);letter-spacing:.06em;justify-content:space-between;gap:20px;padding:22px 5%;font-size:.7rem;display:flex}.footer nav{gap:20px;display:flex}.empty-state{text-align:center;padding:65px 25px}.empty-state svg{color:var(--color-copper);margin:0 auto 22px}.empty-state p{max-width:440px;margin:18px auto 26px}.dashboard-links{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}.secondary{background:var(--color-surface-raised);color:var(--color-oyster)}.panel>p{margin-top:12px}.skip-link{z-index:10;background:var(--color-copper-light);color:var(--color-noir);padding:10px;position:fixed;top:-100px;left:10px}.skip-link:focus{top:10px}@media(max-width:1100px){.shell{grid-template-columns:205px minmax(0,1fr)}.overview-grid{grid-template-columns:1fr}.welcome-panel{padding:26px}.welcome-panel h2 br{display:none}.feature-grid{gap:12px}.feature-card{padding:20px}}@media(max-width:700px){.shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--color-border);padding:20px}.brand-number{font-size:2.5rem}.nav-label,.sidebar-footer{display:none}.sidebar nav{gap:5px;margin-top:20px;display:flex;overflow-x:auto}.sidebar nav a{white-space:nowrap;padding:9px 12px}.sidebar nav a svg{display:none}.topbar{min-height:65px;padding:17px 20px;font-size:.65rem}.preview-badge{font-size:.65rem}main{padding:30px 20px 45px}.feature-grid{grid-template-columns:1fr}.feature-card{padding-left:65px}.feature-card>svg:first-child{position:absolute;top:25px;left:22px}.section-heading{align-items:flex-start}.section-heading>span{display:none}.card-bottom{font-size:.6rem}.membership-card{min-height:310px;padding:25px}.footer{flex-wrap:wrap}.page-heading{margin-bottom:25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.card-title p{font-family:var(--font-sans)}.sidebar-footer em{font-style:normal}button,input,select,textarea{font-family:var(--font-sans)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
