@font-face{font-family:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./cairo-arabic-wght-normal-CJWMIGCx.woff2) format("woff2-variations");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./cairo-latin-ext-wght-normal-at8nfxId.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cairo Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./cairo-latin-wght-normal-PfPtmrPZ.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--accent: #C8F946;--on-accent: #0A0B0D;--silver: #B8C2CC;--gold: #F5B83D;--platinum: #9EE7FF;--card-dark: #121417;--card-dark-2: #1B1E23;--radius: 22px;--radius-lg: 26px;--radius-btn: 14px;--tab-h: 68px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--font: "Cairo Variable", "Cairo", system-ui, -apple-system, "Segoe UI", Tahoma, sans-serif;--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ease-out: cubic-bezier(.22, 1, .36, 1);--spring: cubic-bezier(.34, 1.56, .64, 1)}:root,[data-theme=dark]{--bg: #0A0B0D;--surface: #141619;--surface-2: #1C1F24;--surface-3: #252930;--border: #262A31;--text: #F4F6F8;--text-2: #C9CFD6;--muted: #8A93A0;--accent-ink: #C8F946;--accent-soft: rgba(200, 249, 70, .12);--success: #2FD38A;--success-soft: rgba(47, 211, 138, .14);--warning: #FFB020;--warning-soft: rgba(255, 176, 32, .14);--danger: #FF5C5C;--danger-soft: rgba(255, 92, 92, .14);--info: #7CC8FF;--info-soft: rgba(124, 200, 255, .12);--silver-ink: #B8C2CC;--gold-ink: #F5B83D;--platinum-ink: #9EE7FF;--shadow-sm: none;--shadow: 0 0 0 1px var(--border);--shadow-lg: 0 20px 50px rgba(0, 0, 0, .55);--glass: rgba(20, 22, 25, .78);--skel: #1C1F24;--skel-hi: #262A31;--backdrop: rgba(0, 0, 0, .62);color-scheme:dark}[data-theme=light]{--bg: #F3F4F6;--surface: #FFFFFF;--surface-2: #ECEEF1;--surface-3: #E2E5E9;--border: #E2E5E9;--text: #0B0D10;--text-2: #2E343B;--muted: #5F6874;--accent-ink: #3F6B00;--accent-soft: rgba(126, 178, 0, .14);--success: #0E9F62;--success-soft: rgba(14, 159, 98, .12);--warning: #B77400;--warning-soft: rgba(183, 116, 0, .12);--danger: #D93636;--danger-soft: rgba(217, 54, 54, .1);--info: #0B6FB8;--info-soft: rgba(11, 111, 184, .1);--silver-ink: #56636F;--gold-ink: #8F6100;--platinum-ink: #0A7299;--shadow-sm: 0 1px 2px rgba(15, 20, 30, .05);--shadow: 0 1px 2px rgba(15, 20, 30, .04), 0 8px 24px rgba(15, 20, 30, .06);--shadow-lg: 0 18px 44px rgba(15, 20, 30, .16);--glass: rgba(255, 255, 255, .82);--skel: #E6E8EC;--skel-hi: #F3F4F6;--backdrop: rgba(10, 12, 16, .42);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--bg);min-height:100%;overscroll-behavior:none;transition:background-color .25s}body{font-family:var(--font);font-size:15px;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none;transition:background-color .25s}body.sheet-open{overflow:hidden}html,body{height:100%;overflow:hidden}#root{position:fixed;inset:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:none;background:var(--bg);transition:background-color .25s}body.sheet-open #root{overflow:hidden}a{color:inherit;text-decoration:none}a,button{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{cursor:not-allowed}h1,h2,h3{margin:0;line-height:1.35}p{margin:0}img{display:block}svg{flex:none}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 70%,transparent);outline-offset:2px;border-radius:12px}.muted{color:var(--muted)}.small{font-size:13px}.block{display:block}.center{text-align:center}.mono{font-family:var(--mono);letter-spacing:.04em}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;min-width:0}.grow{flex:1;min-width:0}.pad{padding:14px 16px}.pad-top{padding-top:calc(var(--safe-top) + 20px)}.mt8{margin-top:8px}.mt12{margin-top:12px}.mt16{margin-top:16px}.mt24{margin-top:24px}.stack{display:flex;flex-direction:column;gap:12px}.stack-xs{display:flex;flex-direction:column;gap:8px}.between{display:flex;align-items:center;justify-content:space-between;gap:10px}.flip-rtl{transition:transform .2s}[dir=rtl] .flip-rtl{transform:scaleX(-1)}.rot-180{transform:rotate(180deg)}.dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.35;margin:0 6px;vertical-align:middle}.link{color:var(--accent-ink);font-weight:600;font-size:14px}.link-btn{display:inline-flex;align-items:center;gap:6px;color:var(--accent-ink);font-weight:600;font-size:14px;min-height:36px}.ok-text{color:var(--success)}.danger-text{color:var(--danger)!important}.bleed{margin:0 -16px;display:block}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.app{max-width:480px;margin:0 auto;min-height:100vh;min-height:100dvh;position:relative;background:var(--bg)}.main{padding:0 16px calc(var(--tab-h) + var(--safe-bottom) + 40px)}.no-tabs .main{padding-bottom:calc(var(--safe-bottom) + 28px)}.anim-fade{animation:screen-fade .28s var(--ease-out)}.anim-push{animation:screen-push .36s var(--ease-out)}.anim-pop{animation:screen-pop .32s var(--ease-out)}@keyframes screen-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes screen-push{0%{opacity:0;transform:translate(calc(var(--dir, 1) * 40px))}to{opacity:1;transform:none}}@keyframes screen-pop{0%{opacity:0;transform:translate(calc(var(--dir, 1) * -30px))}to{opacity:1;transform:none}}[dir=rtl] .main{--dir: -1}.page{min-height:40vh;padding-top:var(--safe-top)}.page.has-cta{padding-bottom:104px}.page.gym-page{padding-top:0}.tabbar{position:fixed;z-index:30;left:50%;transform:translate(-50%);bottom:calc(10px + var(--safe-bottom));width:calc(100% - 24px);max-width:456px;height:var(--tab-h);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding:0 4px;border-radius:24px;background:var(--glass);backdrop-filter:saturate(1.6) blur(22px);-webkit-backdrop-filter:saturate(1.6) blur(22px);box-shadow:var(--shadow-lg),inset 0 0 0 1px var(--border)}.tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:100%;font-size:11px;font-weight:600;color:var(--muted);transition:color .2s,transform .15s var(--ease-out)}.tab:active{transform:scale(.9)}.tab.active{color:var(--text)}.tab.active svg{stroke-width:2.2;color:var(--accent-ink)}.tab.active:after{content:"";position:absolute;bottom:6px;width:5px;height:5px;border-radius:50%;background:var(--accent-ink)}.tab.active span:last-child{color:var(--text)}.tab-center{justify-content:flex-end;padding-bottom:9px}.tab-center:after{display:none}.tab-center-btn{position:absolute;top:-20px;width:58px;height:58px;border-radius:20px;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);box-shadow:0 10px 26px #c8f94659,0 0 0 5px var(--bg);transition:transform .2s var(--spring)}.tab-center .tab-center-btn svg{color:var(--on-accent)!important}.tab-center.active .tab-center-btn{transform:translateY(-2px) rotate(-6deg)}.tab-center:active .tab-center-btn{transform:scale(.92)}.nav-bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:center;min-height:48px;margin:0 -16px;padding:calc(4px + var(--safe-top)) 16px 4px;transition:background .2s,box-shadow .2s}.nav-bar.compact{background:var(--glass);backdrop-filter:saturate(1.6) blur(20px);-webkit-backdrop-filter:saturate(1.6) blur(20px);box-shadow:0 1px 0 var(--border)}.nav-bar-title{font-weight:700;font-size:16px;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s}.nav-bar.compact .nav-bar-title{opacity:1;transform:none}.nav-bar-right{position:absolute;inset-inline-end:12px;bottom:4px;display:flex;gap:6px}.large-title{padding:0 0 14px}.large-title h1{font-size:32px;font-weight:700;letter-spacing:-.01em}.large-title-eyebrow{color:var(--muted);font-size:13px}.page-head{display:flex;align-items:center;gap:8px;min-height:56px;padding:6px 0}.page-title{font-size:18px;font-weight:700;flex:1;text-align:center}.page-head-right{min-width:44px;display:flex;justify-content:flex-end}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border-radius:var(--radius-btn);font-weight:700;font-size:15px;white-space:nowrap;transition:transform .15s var(--ease-out),background .2s,opacity .2s,box-shadow .2s}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:active:not(:disabled){box-shadow:0 0 0 6px var(--accent-soft)}.btn-soft{background:var(--surface-2);color:var(--text)}.btn-ghost{background:transparent;color:var(--text-2)}.btn-dark{background:#0a0b0d;color:#f4f6f8}.btn-success{background:var(--success);color:#fff}.btn-on-dark{background:#ffffff1a;color:#fff;box-shadow:inset 0 0 0 1px #ffffff24}.btn-sm{min-height:38px;padding:0 14px;font-size:14px;border-radius:12px}.btn-xs{min-height:32px;padding:0 10px;font-size:12.5px;border-radius:10px;gap:4px}.btn-lg{min-height:54px;font-size:16px;border-radius:16px}.btn-block{width:100%}.icon-btn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--surface-2);color:var(--text);transition:transform .15s var(--ease-out)}.icon-btn:active{transform:scale(.9)}.icon-btn.sm{width:32px;height:32px;background:transparent}.icon-btn.glass{background:#0a0b0d73;color:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.icon-btn.glass-dark{background:#ffffff1a;color:#fff}.state{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:48px 20px}.state.compact{padding:22px 12px;gap:6px}.state-icon{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:var(--danger-soft);color:var(--danger);margin-bottom:4px}.state-icon.accent{background:var(--accent-soft);color:var(--accent-ink)}.state.compact .state-icon{width:48px;height:48px;border-radius:16px}.state-title{font-weight:700;font-size:17px}.state-text{color:var(--muted);max-width:300px}.skel{display:block;background:linear-gradient(90deg,var(--skel) 25%,var(--skel-hi) 50%,var(--skel) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite linear}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.spinner{display:inline-block;border-radius:50%;border:2.5px solid currentColor;border-inline-end-color:transparent;animation:spin .7s linear infinite;opacity:.8}@keyframes spin{to{transform:rotate(360deg)}}.toasts{position:fixed;z-index:100;top:calc(var(--safe-top) + 12px);left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:440px;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;background:#1c1f24;color:#f4f6f8;font-weight:600;font-size:14px;box-shadow:0 14px 34px #00000059,inset 0 0 0 1px #ffffff0f;animation:toast-in .36s var(--spring)}@keyframes toast-in{0%{opacity:0;transform:translateY(-16px) scale(.95)}to{opacity:1;transform:none}}.toast-icon{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none;background:#ffffff1a}.toast-success .toast-icon{background:var(--accent);color:#0a0b0d}.toast-error .toast-icon{background:#ff5c5c;color:#fff}.notice{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:16px;font-size:14px;margin:12px 0}.notice svg{margin-top:2px}.notice-info{background:var(--info-soft);color:var(--text)}.notice-info svg{color:var(--info)}.notice-warn{background:var(--warning-soft);color:var(--text)}.notice-bad{background:var(--danger-soft);color:var(--danger)}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow)}.list-card{padding:4px 14px}.section{margin-top:26px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.section-title{font-size:19px;font-weight:700}.section-title.small-title{font-size:14px;color:var(--muted);font-weight:600;margin-bottom:8px}.title-live{display:inline-flex;align-items:center;gap:8px}.title-live svg{color:var(--success)}.pulse{animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{50%{opacity:.4}}.live-dot{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 0 0 var(--success);animation:live-ping 1.8s infinite;display:inline-block}@keyframes live-ping{0%{box-shadow:0 0 color-mix(in srgb,var(--success) 60%,transparent)}to{box-shadow:0 0 0 10px transparent}}.summary{padding:6px 16px}.summary.flat{box-shadow:none;background:var(--surface-2)}.summary .row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--border);font-size:14.5px}.summary .row:last-child{border-bottom:0}.summary .row>span{color:var(--muted)}.summary .row.total{font-size:17px}.summary .row.total b{font-size:20px}.summary .row.ok-text>span,.summary .row.ok-text b{color:var(--success)}.list-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.list-row:last-child{border-bottom:0}.list-row-icon{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:var(--surface-2)}.hscroll{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px;padding:2px 16px 8px;scrollbar-width:none}.hscroll::-webkit-scrollbar{display:none}.hscroll>*{scroll-snap-align:start;flex:none}.hscroll .tile-skel{flex:none}.chip{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border-radius:999px;background:var(--surface);color:var(--text);font-weight:600;font-size:13.5px;white-space:nowrap;box-shadow:inset 0 0 0 1px var(--border);transition:background .2s,color .2s,transform .15s}.chip:active{transform:scale(.95)}.chip.active{background:var(--text);color:var(--bg);box-shadow:none}.chip-dark{background:#0a0b0d;color:#f4f6f8;box-shadow:inset 0 0 0 1px #ffffff1f}.chip-dark svg{color:var(--accent)}.chips-wrap{display:flex;flex-wrap:wrap;gap:8px}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;background:var(--surface-2);color:var(--text-2);font-size:12px;font-weight:600}.tag-women{background:#ff70b524;color:#e0479a}[data-theme=light] .tag-women{color:#b4236f}.tag-bad{background:var(--danger-soft);color:var(--danger)}.tier-badge{--t: var(--silver);--ti: var(--silver-ink);display:inline-flex;align-items:center;gap:5px;padding:2px 9px 2px 8px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:.01em;white-space:nowrap;color:var(--ti);background:color-mix(in srgb,var(--t) 16%,transparent)}.tier-badge.tier-gold{--t: var(--gold);--ti: var(--gold-ink)}.tier-badge.tier-platinum{--t: var(--platinum);--ti: var(--platinum-ink)}.tier-badge.solid{background:linear-gradient(135deg,var(--t),color-mix(in srgb,var(--t) 70%,#fff));color:#0a0b0d}.tier-dot{width:7px;height:7px;border-radius:50%;background:var(--t)}.tier-badge.solid .tier-dot{background:#0a0b0d;opacity:.55}.tier-swatch{display:inline-block;width:18px;height:18px;border-radius:6px;background:var(--silver)}.tier-swatch.tier-2{background:var(--gold)}.tier-swatch.tier-3{background:var(--platinum)}.crowd-pill,.crowd-meter{--c: var(--success)}.crowd-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 9px;border-radius:999px;font-size:12px;font-weight:700;background:color-mix(in srgb,var(--c) 15%,transparent);color:var(--c);white-space:nowrap}.crowd-pill.crowd-medium,.crowd-meter.crowd-medium{--c: var(--warning)}.crowd-pill.crowd-high,.crowd-meter.crowd-high{--c: var(--danger)}.crowd-dot{width:7px;height:7px;border-radius:50%;background:var(--c);animation:live-ping-c 2s infinite}@keyframes live-ping-c{0%{box-shadow:0 0 color-mix(in srgb,var(--c) 55%,transparent)}to{box-shadow:0 0 0 7px transparent}}.crowd-count{color:var(--text-2);font-weight:600}.gym-tile-top .crowd-pill{background:#0a0b0d9e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.gym-tile-top .crowd-low{--c: #2FD38A}.gym-tile-top .crowd-medium{--c: #FFB020}.gym-tile-top .crowd-high{--c: #FF7A7A}.crowd-meter{margin-top:16px;padding:16px;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.crowd-meter-head{display:flex;align-items:center;gap:10px}.crowd-meter-head b{flex:1;font-size:17px}.live-tag{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:8px;background:var(--danger-soft);color:var(--danger);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.live-tag i{width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse 1.4s infinite}.crowd-level{font-weight:700;color:var(--c)}.crowd-bar{position:relative;height:10px;border-radius:6px;background:var(--surface-2);margin:12px 0 8px;overflow:hidden}.crowd-bar span{position:absolute;inset-block:0;inset-inline-start:0;border-radius:6px;background:var(--c);transition:width .8s var(--ease-out)}.crowd-bar i{position:absolute;top:0;bottom:0;width:2px;background:var(--surface)}.open-badge{padding:2px 9px;border-radius:8px;font-size:12.5px;font-weight:700}.open-badge.is-open,.open-dot.is-open{color:var(--success)}.open-badge.is-open{background:var(--success-soft)}.open-badge.is-closed{background:var(--danger-soft);color:var(--danger)}.open-dot{font-size:12.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px}.open-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.open-dot.is-closed{color:var(--muted)}.rating{display:inline-flex;align-items:center;gap:4px;font-size:13px}.rating .star{color:var(--gold)}.rating.new{font-size:11.5px;font-weight:700;color:var(--accent-ink);background:var(--accent-soft);padding:1px 8px;border-radius:999px}.stars-row{display:inline-flex;gap:1px}.stars-row .on{color:var(--gold)}.stars-row .off{color:var(--surface-3)}.star-input{display:flex;gap:6px;justify-content:center}.star-input button{color:#0a0b0d38;transition:transform .2s var(--spring),color .2s;min-width:44px;min-height:44px;display:grid;place-items:center}.star-input button.on{color:#0a0b0d;transform:scale(1.08)}.review-box.light .star-input button{color:var(--surface-3)}.review-box.light .star-input button.on{color:var(--gold)}.status{display:inline-flex;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.status-ok{background:var(--success-soft);color:var(--success)}.status-warn{background:var(--warning-soft);color:var(--warning)}.status-bad{background:var(--danger-soft);color:var(--danger)}.status-info{background:var(--info-soft);color:var(--info)}.status-muted{background:var(--surface-2);color:var(--muted)}.ring{position:relative;display:inline-grid;place-items:center;flex:none}.ring svg{position:absolute;inset:0}.ring-value{transition:stroke-dashoffset .6s var(--ease-out)}.ring-center{position:relative;display:flex;flex-direction:column;align-items:center;line-height:1.05}.segmented{position:relative;display:grid;grid-template-columns:repeat(var(--n),1fr);padding:4px;border-radius:16px;background:var(--surface-2)}.seg-thumb{position:absolute;top:4px;bottom:4px;width:calc((100% - 8px) / var(--n));inset-inline-start:calc(4px + var(--i) * (100% - 8px) / var(--n));border-radius:12px;background:var(--surface);box-shadow:0 2px 8px #0000001f;transition:inset-inline-start .35s var(--spring)}[data-theme=dark] .seg-thumb{background:var(--surface-3)}.segmented button{position:relative;z-index:1;min-height:40px;padding:0 6px;border-radius:12px;font-weight:600;font-size:13.5px;color:var(--muted);transition:color .2s}.segmented button.active{color:var(--text);font-weight:700}.stepper{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:16px;background:var(--surface-2)}.stepper-btn{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--surface)}.stepper-btn:disabled{opacity:.35}.stepper-value{min-width:56px;text-align:center;font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.toggle{width:52px;height:32px;border-radius:999px;background:var(--surface-3);position:relative;flex:none;transition:background .2s}.toggle-knob{position:absolute;top:3px;inset-inline-start:3px;width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #00000040;transition:inset-inline-start .25s var(--spring)}.toggle.on{background:var(--accent)}.toggle.on .toggle-knob{inset-inline-start:23px}.field{display:flex;flex-direction:column;gap:8px}.field-label{font-weight:600;font-size:14px}.input,.date-input,textarea{width:100%;min-height:50px;padding:0 14px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:16px;outline:none;transition:border-color .2s,box-shadow .2s}textarea{padding:12px 14px;resize:none;min-height:72px}.input:focus,textarea:focus,.date-input:focus{border-color:var(--accent-ink);box-shadow:0 0 0 4px var(--accent-soft)}.hint{font-size:12.5px;color:var(--muted)}.hint-error{color:var(--danger)}.sheet-backdrop{position:fixed;inset:0;z-index:70;background:var(--backdrop);display:flex;align-items:flex-end;justify-content:center;animation:fade-in .22s ease}.sheet{width:100%;max-width:480px;max-height:92vh;display:flex;flex-direction:column;border-radius:28px 28px 0 0;background:var(--surface);animation:sheet-up .42s var(--ease-out);box-shadow:0 -10px 40px #0003}[data-theme=dark] .sheet{background:#15171b;box-shadow:inset 0 1px #ffffff0f}.sheet.tall{height:86vh}.sheet-grip{width:40px;height:5px;border-radius:3px;background:var(--surface-3);margin:8px auto 4px;flex:none}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 18px 10px;flex:none}.sheet-head h2{font-size:19px;font-weight:700}.sheet-close{width:36px;height:36px}.sheet-body{flex:1;overflow:auto;padding:0 18px 18px;overscroll-behavior:contain}.sheet-body:last-child{padding-bottom:calc(22px + var(--safe-bottom))}.sheet-foot{flex:none;padding:12px 18px calc(12px + var(--safe-bottom));border-top:1px solid var(--border)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}.option-list{display:flex;flex-direction:column}.option{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 6px;border-bottom:1px solid var(--border);text-align:start;font-weight:500}.option:last-child{border-bottom:0}.option.selected{font-weight:700}.option.selected svg{color:var(--accent-ink)}.option-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--surface-2)}.home-head{display:flex;align-items:center;gap:12px;padding:calc(var(--safe-top) + 14px) 0 16px}.avatar{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;flex:none;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:19px}.avatar.lg{width:60px;height:60px;border-radius:20px;font-size:25px}.home-name{font-size:22px;font-weight:700;line-height:1.25}.wordmark{font-weight:700}.wordmark i{font-style:normal;color:var(--accent-ink);margin-inline-start:2px}.hero-card{--tier: var(--gold);position:relative;overflow:hidden;border-radius:var(--radius-lg);padding:18px 18px 16px;color:#f4f6f8;background:linear-gradient(150deg,#191c21,#0c0d10);box-shadow:var(--shadow-lg),inset 0 0 0 1px #ffffff0f;animation:rise .5s var(--ease-out)}.hero-glow{position:absolute;inset-inline-end:-60px;top:-80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--tier) 55%,transparent),transparent 70%);pointer-events:none}.hero-card:after{content:"";position:absolute;inset-inline:0;top:0;height:4px;background:linear-gradient(90deg,var(--tier),color-mix(in srgb,var(--tier) 30%,var(--accent)))}.hero-top,.hero-mid,.hero-stats,.hero-actions{position:relative}.hero-top{display:flex;align-items:center;justify-content:space-between}.hero-eyebrow{font-size:12.5px;letter-spacing:.06em;color:#f4f6f899;font-weight:600}.hero-mid{display:flex;align-items:center;gap:14px;margin-top:8px}.hero-plan{font-size:30px;font-weight:700;letter-spacing:-.01em}.hero-valid{color:#f4f6f8a6;font-size:13.5px}.frozen-chip{display:inline-flex;align-items:center;gap:5px;color:var(--platinum);font-weight:600}.hero-ring{color:var(--accent)}.hero-ring b{font-size:22px;color:#fff}.hero-ring small{font-size:11px;color:#f4f6f899}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0 14px}.hero-stats>div{display:flex;flex-direction:column;padding:10px 12px;border-radius:16px;background:#ffffff0f}.hero-stats b{font-size:19px;font-variant-numeric:tabular-nums}.hero-stats span{font-size:11.5px;color:#f4f6f899}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}@keyframes rise{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.join-cta{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:22px 20px 18px;border-radius:var(--radius-lg);color:#f4f6f8;background:radial-gradient(120% 90% at 100% 0%,#26300e,#0c0d10 55%);box-shadow:var(--shadow-lg),inset 0 0 0 1px #c8f94624;animation:rise .5s var(--ease-out)}.join-cta-art{position:absolute;inset-inline-end:-10px;top:-10px;width:170px;height:170px;opacity:.5;pointer-events:none}[dir=rtl] .join-cta-art{transform:scaleX(-1)}.join-eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-weight:700;font-size:13px;position:relative}.join-cta h2{font-size:28px;font-weight:700;line-height:1.2;max-width:260px;position:relative}.join-cta p{color:#f4f6f8b3;max-width:300px;position:relative}.join-steps{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 6px;position:relative}.join-steps span{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:#ffffff14;font-size:12.5px;font-weight:600}.join-steps svg{color:var(--accent)}.pending-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:12px;border-radius:18px;background:var(--warning-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--warning) 30%,transparent)}.pending-banner b{display:block;font-size:14px}.pending-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--warning);color:#0a0b0d;flex:none}.pending-actions{display:flex;flex-direction:column;gap:4px}.cat-chips{gap:10px}.cat-chip{display:flex;flex-direction:column;align-items:center;gap:6px;width:76px;font-size:12px;font-weight:600;text-align:center;color:var(--text-2)}.cat-chip-icon{width:60px;height:60px;border-radius:20px;display:grid;place-items:center;background:var(--surface);color:var(--text);box-shadow:var(--shadow);transition:transform .15s var(--ease-out)}.cat-chip:active .cat-chip-icon{transform:scale(.92);background:var(--accent);color:var(--on-accent)}.upgrade-nudge{--tier: var(--platinum);display:flex;align-items:center;gap:12px;margin-top:24px;padding:16px;border-radius:var(--radius);background:linear-gradient(120deg,color-mix(in srgb,var(--tier) 22%,var(--surface)),var(--surface));box-shadow:var(--shadow),inset 0 0 0 1px color-mix(in srgb,var(--tier) 30%,transparent)}.upgrade-nudge b{display:block}.upgrade-nudge small{color:var(--muted)}.upgrade-icon{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:var(--tier);color:#0a0b0d;flex:none}.gym-art{display:block;width:100%;height:100%}.fav-btn{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:var(--muted);transition:transform .2s var(--spring),color .2s}.fav-btn.on{color:#ff4d6d;animation:fav-pop .4s var(--spring)}.fav-btn.on-art{width:34px;height:34px;background:#0a0b0d80;color:#fff;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.fav-btn.on-art.on{color:#ff4d6d}.fav-btn.glass{background:#0a0b0d73;color:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.fav-btn.glass.on{color:#ff4d6d}@keyframes fav-pop{0%{transform:scale(.6)}60%{transform:scale(1.25)}to{transform:scale(1)}}.gym-list{display:flex;flex-direction:column;gap:10px}.gym-row{display:flex;gap:14px;padding:14px;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);animation:row-in .4s var(--ease-out) backwards;transition:transform .15s var(--ease-out)}.gym-row:active{transform:scale(.985)}@keyframes row-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.gym-row.skel-row{animation:none;align-items:center}.gym-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.gym-row-title h3{font-size:16.5px;font-weight:700}.gym-row-meta{display:flex;align-items:center;gap:8px;font-size:13px;min-width:0}.gym-row-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.gym-row-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.lock-note{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted);font-weight:600}.gym-row.locked .gym-row-art{filter:saturate(.55)}.gym-row-art{position:relative;width:96px;height:112px;border-radius:18px;overflow:hidden;flex:none}.gym-row-art .fav-btn{position:absolute;top:6px;inset-inline-end:6px}.gym-tile{width:228px;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow:hidden;transition:transform .15s var(--ease-out)}.gym-tile:active{transform:scale(.97)}.gym-tile-art{position:relative;height:138px}.gym-tile-top{position:absolute;inset-inline:10px;top:10px;display:flex;justify-content:space-between;align-items:center}.gym-tile-bottom{position:absolute;inset-inline-start:10px;bottom:10px}.gym-tile-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:2px}.gym-tile-body h3{font-size:15.5px;font-weight:700}.gym-tile-meta{display:flex;justify-content:space-between;gap:8px;font-size:12.5px}.gym-tile-meta .km{font-weight:700;color:var(--text-2);white-space:nowrap}.gym-mini{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.gym-mini:last-child{border-bottom:0}.gym-mini-rank{width:18px;font-weight:700;color:var(--muted);text-align:center}.gym-mini-art{width:44px;height:44px;border-radius:14px;overflow:hidden;flex:none}.gym-mini-name{font-weight:700;font-size:14.5px}.mini-bar{--c: var(--success);height:5px;border-radius:3px;background:var(--surface-2);margin-top:6px;overflow:hidden}.mini-bar span{display:block;height:100%;border-radius:3px;background:var(--c);transition:width .8s var(--ease-out)}.mini-bar.crowd-medium{--c: var(--warning)}.mini-bar.crowd-high{--c: var(--danger)}.search-box{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 14px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);color:var(--muted)}.search-box input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:16px;height:50px}.search-box input::-webkit-search-cancel-button{display:none}.filter-row{display:flex;gap:8px;overflow-x:auto;margin:12px -16px 0;padding:2px 16px 4px;scrollbar-width:none}.filter-row::-webkit-scrollbar{display:none}.results-head{display:flex;align-items:center;justify-content:space-between;margin:12px 0 8px}.gym-hero{position:relative;height:290px;margin:0 -16px}.gym-hero .gym-art{animation:hero-zoom 1.2s var(--ease-out)}@keyframes hero-zoom{0%{transform:scale(1.06)}to{transform:none}}.gym-hero-bar{position:absolute;inset-inline:12px;top:calc(var(--safe-top) + 10px);display:flex;justify-content:space-between}.detail-sheet{position:relative;z-index:1;margin:-28px -16px 0;padding:22px 16px 0;border-radius:28px 28px 0 0;background:var(--bg)}.detail-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.detail-title h1{font-size:26px;font-weight:700;letter-spacing:-.01em}.detail-meta{display:flex;align-items:center;flex-wrap:wrap;margin-top:4px;font-size:14px}.hours-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:14px;font-size:14px;color:var(--text-2)}.hours-full{margin-inline-start:auto;font-weight:600;font-size:13px;color:var(--muted)}.my-visits{display:flex;align-items:center;gap:6px;margin-top:12px;color:var(--accent-ink);font-weight:600;font-size:14px}.plan-chip{--tier: var(--gold);display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 14px;border-radius:999px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--border);font-weight:700;font-size:13.5px}.plan-chip i{width:10px;height:10px;border-radius:50%;background:var(--tier)}.cat-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:12px;background:var(--surface-2);font-size:13.5px;font-weight:600}.cat-pill svg{color:var(--accent-ink)}.amenity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.amenity{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow);font-size:13.5px;font-weight:500}.amenity-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-ink);flex:none}.prose{color:var(--text-2);line-height:1.85;white-space:pre-wrap}.women-hours{margin-top:18px}.address-card{padding:14px;display:flex;flex-direction:column;gap:12px}.address-line{display:flex;gap:8px;align-items:flex-start;color:var(--text-2)}.address-line svg{margin-top:3px;color:var(--accent-ink)}.address-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reviews{display:flex;flex-direction:column;gap:10px}.review{padding:14px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px}.review p{color:var(--text-2)}.cta-bar{position:fixed;z-index:40;left:50%;transform:translate(-50%);bottom:0;width:100%;max-width:480px;display:flex;align-items:center;gap:14px;padding:12px 16px calc(12px + var(--safe-bottom));background:var(--glass);backdrop-filter:saturate(1.6) blur(20px);-webkit-backdrop-filter:saturate(1.6) blur(20px);box-shadow:0 -1px 0 var(--border)}.cta-info{display:flex;flex-direction:column;min-width:0;max-width:42%}.cta-info b{font-size:18px}.cta-crowd{display:inline-flex;align-items:center;gap:5px;font-weight:700;font-size:14px;color:var(--success)}.ci-gym{display:flex;align-items:center;gap:12px;padding:10px;margin-bottom:14px;border-radius:18px;background:var(--surface-2)}.ci-gym-art{width:48px;height:48px;border-radius:14px;overflow:hidden;flex:none}.ci-gym b{display:block}.scan-cta{width:100%;display:flex;align-items:center;gap:14px;padding:16px;border-radius:20px;text-align:start;background:var(--accent);color:var(--on-accent);box-shadow:0 12px 28px #c8f94640;transition:transform .15s var(--ease-out)}.scan-cta:active:not(:disabled){transform:scale(.98)}.scan-cta b{display:block;font-size:17px}.scan-cta small{display:block;opacity:.7;font-size:12.5px}.scan-cta-icon{width:56px;height:56px;border-radius:17px;display:grid;place-items:center;background:#0a0b0d;color:var(--accent);flex:none}.scan-cta.big{padding:20px}.scan-cta.big .scan-cta-icon{width:66px;height:66px;border-radius:20px}.or-sep{display:flex;align-items:center;gap:10px;margin:18px 0 12px;color:var(--muted);font-size:13px}.or-sep:before,.or-sep:after{content:"";flex:1;height:1px;background:var(--border)}.code-form{display:flex;gap:8px}.code-input{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:0 12px;min-height:52px;border-radius:14px;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);direction:ltr}.code-input:focus-within{border-color:var(--accent-ink);box-shadow:0 0 0 4px var(--accent-soft)}.code-prefix{font-family:var(--mono);font-weight:700;color:var(--text-2);font-size:17px}.code-input input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-family:var(--mono);font-size:17px;font-weight:700;letter-spacing:.12em;color:var(--text);height:50px;text-transform:uppercase}.guest-row{display:flex;align-items:center;gap:12px;margin-top:16px;padding:12px 14px;border-radius:18px;background:var(--surface-2)}.guest-row b{display:block;font-size:14.5px}.guest-row small{display:block}.guest-row-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--surface);color:var(--accent-ink);flex:none}.ci-error{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:8px 4px 4px;animation:shake .4s}.ci-error-icon{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:var(--danger-soft);color:var(--danger)}.ci-error h3{font-size:19px}.usage-bar{width:100%;padding:12px 14px;border-radius:16px;background:var(--surface-2);text-align:start}.bar{height:8px;border-radius:4px;background:var(--surface-3);margin-top:8px;overflow:hidden}.bar span{display:block;height:100%;background:var(--warning);border-radius:4px}@keyframes shake{0%,to{transform:none}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.visit-screen{position:relative;min-height:100vh;min-height:100dvh;margin:0 -16px -28px;padding:calc(var(--safe-top) + 12px) 22px calc(var(--safe-bottom) + 24px);display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden;background:var(--accent);color:#0a0b0d}.visit-screen.past{background:radial-gradient(120% 70% at 50% 0%,#2b3410,#0c0d10 70%);color:#f4f6f8}.visit-screen.reversed{background:#2a1212;color:#ffdada}.visit-top{align-self:stretch;display:flex}.visit-screen.live .icon-btn.glass-dark{background:#0a0b0d1a;color:#0a0b0d}.visit-check{position:relative;width:116px;height:116px;border-radius:50%;display:grid;place-items:center;margin-top:18px;background:#0a0b0d;color:var(--accent);animation:pop-in .6s var(--spring) both;box-shadow:0 0 #0a0b0d40}.visit-screen.live .visit-check{animation:pop-in .6s var(--spring) both,halo 2.4s .6s infinite}.visit-screen.past .visit-check{background:var(--accent);color:#0a0b0d}.visit-screen.reversed .visit-check{background:#ff5c5c;color:#fff}@keyframes pop-in{0%{transform:scale(.3);opacity:0}to{transform:none;opacity:1}}@keyframes halo{0%{box-shadow:0 0 #0a0b0d47}to{box-shadow:0 0 0 26px #0a0b0d00}}.burst{position:absolute;top:calc(var(--safe-top) + 64px + 58px);left:50%;width:0;height:0;pointer-events:none}.burst i{position:absolute;width:6px;height:18px;margin:-9px -3px;border-radius:3px;background:#0a0b0d;opacity:0;transform:rotate(var(--a)) translateY(-70px)}.visit-screen.fresh .burst i{animation:burst .9s .25s var(--ease-out) both}.visit-screen.past .burst i{background:var(--accent)}@keyframes burst{0%{opacity:0;transform:rotate(var(--a)) translateY(-40px) scaleY(.4)}30%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateY(-118px) scaleY(1)}}.visit-title{font-size:28px;font-weight:700;margin-top:18px;animation:rise .5s .15s var(--ease-out) both}.visit-gym{display:flex;align-items:center;gap:12px;margin-top:14px;padding:10px 14px 10px 10px;border-radius:20px;background:#0a0b0d14;text-align:start;max-width:100%;animation:rise .5s .2s var(--ease-out) both}.visit-screen.past .visit-gym,.visit-screen.reversed .visit-gym{background:#ffffff12}.visit-gym-art{width:50px;height:50px;border-radius:15px;overflow:hidden;flex:none}.visit-gym b{display:block;font-size:16px}.visit-gym span{font-size:13px;opacity:.7}.live-clock{position:relative;overflow:hidden;display:flex;align-items:baseline;gap:2px;margin-top:22px;padding:6px 18px;border-radius:22px;background:#0a0b0d;color:var(--accent);font-size:52px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.02em;line-height:1.15}.live-clock i{font-style:normal;opacity:.55;animation:blink 1s steps(2) infinite}.live-clock .sec{color:#fff}.sheen{position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(200,249,70,.22) 50%,transparent 70%);transform:translate(-100%);animation:sheen 2.6s linear infinite}@keyframes sheen{to{transform:translate(100%)}}@keyframes blink{50%{opacity:.15}}.visit-when{margin-top:22px;font-size:44px;font-weight:700;font-variant-numeric:tabular-nums}.visit-date{margin-top:6px;font-weight:600;opacity:.75}.visit-facts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}.visit-facts>div{display:flex;flex-direction:column;padding:8px 14px;border-radius:14px;background:#0a0b0d14;min-width:92px}.visit-screen.past .visit-facts>div,.visit-screen.reversed .visit-facts>div{background:#ffffff12}.visit-facts span{font-size:11.5px;opacity:.65}.visit-facts b{font-size:15px}.guest-badge{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:6px 14px;border-radius:999px;background:#0a0b0d;color:var(--accent);font-weight:700;font-size:13.5px}.guest-badge.dark{background:#ffffff1f;color:#fff;margin-top:0}.visit-hint{margin-top:12px;font-weight:600;opacity:.7;font-size:14px}.review-box{width:100%;display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:22px;padding:16px;border-radius:22px;background:#0a0b0d14}.visit-screen.past .review-box{background:#ffffff12}.visit-screen.past .star-input button{color:#ffffff40}.visit-screen.past .star-input button.on{color:var(--accent)}.review-box textarea{background:#fff9;border-color:transparent;color:#0a0b0d}.review-box.light{background:none;padding:0;margin:0}.review-box.light textarea{background:var(--surface-2);color:var(--text);border-color:var(--border)}.review-box.light .btn-dark{background:var(--accent);color:var(--on-accent)}.visit-review-done{margin-top:18px;display:flex;flex-direction:column;align-items:center;gap:4px}.visit-review-done .stars-row .on{color:#0a0b0d}.visit-done{margin-top:auto;position:relative;top:0}.visit-screen>.visit-done{margin-top:28px}.visit-screen.past .btn-dark{background:var(--accent);color:#0a0b0d}.wallet-card{--tier: var(--gold);position:relative;overflow:hidden;border-radius:28px;color:#f4f6f8;background:linear-gradient(165deg,#1a1d22,#0b0c0f);box-shadow:var(--shadow-lg),inset 0 0 0 1px #ffffff12;animation:rise .5s var(--ease-out)}.wallet-card:before{content:"";position:absolute;inset-inline-end:-90px;top:-120px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--tier) 40%,transparent),transparent 70%);pointer-events:none}.wallet-strip{position:relative;display:flex;align-items:center;gap:10px;padding:16px 18px;background:linear-gradient(90deg,color-mix(in srgb,var(--tier) 34%,transparent),transparent);border-bottom:1px dashed rgba(255,255,255,.14)}.wallet-card.empty .wallet-strip{background:linear-gradient(90deg,rgba(200,249,70,.16),transparent)}.wallet-brand{flex:1;font-weight:700;font-size:17px}.wallet-fields{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 18px 4px}.wallet-fields.bottom{padding:4px 18px 18px}.wallet-fields>div{display:flex;flex-direction:column;min-width:0}.wallet-fields>div:nth-child(2){text-align:end}.wallet-fields span{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#f4f6f88c}.wallet-fields b{font-size:16px}.wallet-qr-wrap{position:relative;display:flex;justify-content:center;padding:10px 18px 14px}.rotating-qr{display:flex;flex-direction:column;align-items:center;gap:10px}.qr-frame{position:relative;padding:10px;border-radius:24px;background:#fff;overflow:hidden;transition:opacity .3s,filter .3s;box-shadow:0 0 0 4px color-mix(in srgb,var(--tier) 50%,transparent)}.qr-frame.refreshing{opacity:.55;filter:blur(1px)}.qr{display:block;color:#0a0b0d;--qr-accent: #0A0B0D}.qr-scanline{position:absolute;inset-inline:10px;height:2px;top:10%;background:linear-gradient(90deg,transparent,var(--accent),transparent);box-shadow:0 0 12px var(--accent);animation:scan 2.6s ease-in-out infinite;opacity:.9}@keyframes scan{0%,to{top:10%}50%{top:88%}}.qr-meta{display:flex;align-items:center;gap:10px;font-weight:600}.qr-ring{color:var(--accent)}.qr-ring small{font-size:12px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums}.qr-hint{font-size:12px;color:#f4f6f880;text-align:center;max-width:280px}.qr-error{display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 10px;text-align:center;color:#f4f6f8bf}.wallet-frozen{display:flex;flex-direction:column;align-items:center;gap:6px;padding:40px 10px;color:var(--platinum);text-align:center}.wallet-frozen span{color:#f4f6f8a6;font-size:14px}.wallet-empty-body{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:30px 22px 24px}.wallet-empty-icon{width:84px;height:84px;border-radius:28px;display:grid;place-items:center;background:#c8f9461a;color:var(--accent);margin-bottom:4px;box-shadow:inset 0 0 0 1px #c8f94633}.wallet-empty-body h2{font-size:22px}.wallet-empty-body p{color:#f4f6f8a6;margin-bottom:8px}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.stat{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 4px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.stat b{font-size:19px;font-variant-numeric:tabular-nums}.stat span{font-size:11px;color:var(--muted);line-height:1.3}.pass-actions{display:flex;flex-direction:column;gap:10px;margin-top:14px}.pass-actions-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px}.freeze-sheet{display:flex;flex-direction:column;align-items:center;gap:14px}.freeze-icon{width:70px;height:70px;border-radius:24px;display:grid;place-items:center;background:color-mix(in srgb,var(--platinum) 18%,transparent);color:var(--platinum-ink)}.freeze-stepper{display:flex;flex-direction:column;align-items:center;gap:6px}.freeze-sheet .summary{width:100%;box-shadow:none;background:var(--surface-2)}.plans-hero{padding:4px 0 16px}.plans-hero h1{font-size:28px;font-weight:700}.dur-seg{margin-bottom:14px}.plan-list{display:flex;flex-direction:column;gap:12px}.plan-card{--tier: var(--gold);position:relative;padding:16px;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow),inset 0 0 0 2px transparent;cursor:pointer;transition:box-shadow .25s,transform .15s var(--ease-out)}.plan-card:before{content:"";position:absolute;inset-inline-start:0;top:18px;bottom:18px;width:4px;border-radius:0 4px 4px 0;background:var(--tier)}[dir=rtl] .plan-card:before{border-radius:4px 0 0 4px}.plan-card:active{transform:scale(.99)}.plan-card.selected{box-shadow:var(--shadow),inset 0 0 0 2px var(--accent-ink)}[data-theme=dark] .plan-card.selected{background:linear-gradient(160deg,color-mix(in srgb,var(--tier) 10%,var(--surface)),var(--surface))}.plan-card.unavailable{opacity:.55}.plan-card.dim:not(.selected){opacity:.7}.plan-card-top{display:flex;gap:12px;align-items:flex-start}.plan-check{width:26px;height:26px;border-radius:50%;flex:none;display:grid;place-items:center;box-shadow:inset 0 0 0 2px var(--surface-3);margin-top:2px;transition:background .2s,box-shadow .2s}.plan-card.selected .plan-check{background:var(--accent);color:var(--on-accent);box-shadow:none;animation:pop-in .35s var(--spring)}.plan-name-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.plan-name-row h3{font-size:20px;font-weight:700}.badge-pop{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:11.5px;font-weight:700}.badge-current{padding:2px 9px;border-radius:999px;background:var(--info-soft);color:var(--info);font-size:11.5px;font-weight:700}.plan-tagline{font-size:13.5px;margin-top:2px}.plan-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;margin-top:12px;padding-inline-start:38px}.plan-price b{font-size:24px;font-weight:700;letter-spacing:-.01em}.save-pill{padding:2px 9px;border-radius:999px;background:var(--success-soft);color:var(--success);font-size:12px;font-weight:700}.plan-monthly{padding-inline-start:38px}.plan-facts{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:10px;padding-inline-start:38px;font-size:13px;font-weight:600;color:var(--text-2)}.plan-facts span{display:inline-flex;align-items:center;gap:6px}.plan-facts svg{color:var(--accent-ink)}.perks{list-style:none;margin:12px 0 0;padding:12px 0 0;padding-inline-start:38px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px;font-size:14px;animation:fade-in .3s}.perks li{display:flex;gap:8px;align-items:flex-start}.perks svg{color:var(--accent-ink);margin-top:4px}.daypass-card{display:flex;align-items:center;gap:12px;margin-top:14px;padding:14px;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);border:1px dashed var(--border)}.daypass-card b{font-size:15px}.daypass-icon{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-ink);flex:none}.compare-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:48px;margin-top:18px;font-weight:700;color:var(--accent-ink)}.compare-toggle svg{transition:transform .25s}.compare{overflow-x:auto;padding:4px 6px;animation:rise .35s var(--ease-out)}.compare table{width:100%;border-collapse:collapse;font-size:13.5px}.compare th,.compare td{padding:11px 8px;text-align:center;border-bottom:1px solid var(--border)}.compare tr:last-child th,.compare tr:last-child td{border-bottom:0}.compare tbody th{text-align:start;font-weight:500;color:var(--muted)}.compare thead th{font-weight:700;font-size:14px}.compare thead th i{display:block;width:22px;height:4px;border-radius:2px;background:var(--tier);margin:0 auto 6px}.compare td{font-weight:700;font-variant-numeric:tabular-nums}.checkout-plan{--tier: var(--gold);position:relative;overflow:hidden;padding:18px;border-radius:var(--radius-lg);margin-bottom:14px;color:#f4f6f8;background:linear-gradient(150deg,#1a1d22,#0b0c0f);box-shadow:var(--shadow-lg)}.checkout-plan:after{content:"";position:absolute;inset-inline-end:-70px;top:-90px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--tier) 45%,transparent),transparent 70%)}.checkout-plan h2{position:relative;font-size:30px;margin:10px 0 6px}.checkout-dur{position:relative;font-weight:700;color:var(--accent)}.checkout-facts{position:relative;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13.5px;color:#f4f6f8bf}.checkout-facts span{display:inline-flex;align-items:center;gap:6px}.checkout-page .summary{margin-bottom:4px}.pay-result{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:60px 4px 20px}.pay-icon{width:104px;height:104px;border-radius:34px;display:grid;place-items:center;margin-bottom:6px;animation:pop-in .5s var(--spring)}.tone-wait{background:var(--surface-2);color:var(--accent-ink)}.tone-ok{background:var(--accent);color:var(--on-accent);box-shadow:0 16px 40px #c8f94659}.tone-warn{background:var(--warning-soft);color:var(--warning)}.tone-bad{background:var(--danger-soft);color:var(--danger)}.pay-result h1{font-size:24px}.pay-amount{width:100%;margin-top:8px}.action-col{width:100%;display:flex;flex-direction:column;gap:8px;margin-top:12px}.confetti{position:absolute;inset:0 0 auto;height:320px;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-12px;left:var(--x);width:8px;height:14px;border-radius:2px;background:var(--accent);transform:rotate(var(--r));animation:confetti 1.6s var(--d) var(--ease-out) both}.confetti i:nth-child(3n){background:var(--gold)}.confetti i:nth-child(4n){background:var(--platinum);width:6px;height:6px;border-radius:50%}.confetti i:nth-child(5n){background:var(--text)}@keyframes confetti{0%{opacity:0;transform:translateY(0) rotate(var(--r))}15%{opacity:1}to{opacity:0;transform:translateY(300px) rotate(calc(var(--r) + 300deg))}}.stats-card{padding:16px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.stats-grid>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}.stats-grid svg{color:var(--accent-ink)}.stats-grid b{font-size:22px;line-height:1.2;font-variant-numeric:tabular-nums}.stats-grid span{font-size:11px;color:var(--muted);line-height:1.25}.spark-head{display:flex;justify-content:space-between;margin:16px 0 8px;font-size:12px;color:var(--muted);font-weight:600}.spark{display:flex;align-items:flex-end;gap:2px;height:56px}.spark-bar{flex:1;height:100%;display:flex;align-items:flex-end;border-radius:4px;background:var(--surface-2)}.spark-bar i{display:block;width:100%;height:6%;min-height:3px;border-radius:4px 4px 0 0;background:transparent;transition:height .6s var(--ease-out)}.spark-bar.on i{background:var(--accent-ink)}[data-theme=dark] .spark-bar.on i{background:var(--accent)}.spark-bar.today{box-shadow:inset 0 0 0 1.5px var(--text-2)}.visit-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.visit-row:last-child{border-bottom:0}.visit-row.reversed{opacity:.6}.visit-row-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px}.visit-row-art{width:50px;height:50px;border-radius:15px;overflow:hidden;flex:none}.visit-row-tags{display:flex;gap:4px;margin-top:2px}.visit-row-tags:empty{display:none}.group{margin-top:24px}.group-title{font-size:13px;font-weight:600;color:var(--muted);margin:0 4px 8px}.group-body{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.group-footer{font-size:12.5px;color:var(--muted);margin:8px 4px 0}.row-link{width:100%;display:flex;align-items:center;gap:12px;min-height:58px;padding:8px 14px;text-align:start;border-bottom:1px solid var(--border);font-weight:500;transition:background .15s}.row-link:last-child{border-bottom:0}.row-link:active{background:var(--surface-2)}.row-link small{font-weight:400;font-size:12.5px}.row-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);flex:none}.row-icon.dark{background:#0a0b0d;color:var(--accent)}.row-block{padding:12px;display:flex;flex-direction:column;gap:8px}.profile-card{display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.profile-top{display:flex;align-items:center;gap:14px}.profile-top h2{font-size:21px}.member-code{font-family:var(--mono);font-weight:700;letter-spacing:.08em;color:var(--accent-ink);font-size:14px;padding:2px 0;min-height:32px}.profile-rows{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:16px;background:var(--surface-2);font-size:14px}.profile-rows>div{display:flex;align-items:center;gap:10px}.profile-rows svg{color:var(--muted)}.signin{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:26px 20px}.signin h2{font-size:19px}.faq details{border-bottom:1px solid var(--border);padding:12px 0}.faq summary{font-weight:700;cursor:pointer;list-style:none;min-height:32px;display:flex;align-items:center}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";margin-inline-start:auto;color:var(--accent-ink);font-size:20px}.faq details[open] summary:after{content:"–"}.faq p{color:var(--text-2);margin-top:6px;line-height:1.8}.about-sheet{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding-bottom:8px}.logo{display:block;border-radius:28%}.partner-page{padding-top:0}.partner-bar{position:relative;display:flex;align-items:center;gap:12px;margin:0 -16px 14px;padding:calc(var(--safe-top) + 12px) 16px 18px;background:#101215;color:#f4f6f8;border-radius:0 0 26px 26px;box-shadow:0 10px 30px #00000040;overflow:hidden}.partner-bar:after{content:"";position:absolute;inset-inline:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--accent),transparent)}.partner-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.03em}.partner-bar h1{font-size:20px}.partner-sub{font-size:12.5px;color:#f4f6f899}.partner-art{width:56px;height:56px;border-radius:18px;overflow:hidden;flex:none}.gym-switch{display:flex;gap:8px;overflow-x:auto;margin:0 -16px 12px;padding:0 16px;scrollbar-width:none}.partner-counters{display:grid;grid-template-columns:1fr 1fr;gap:10px}.partner-counters>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:14px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.partner-counters svg{grid-row:span 2;color:var(--accent-ink)}.partner-counters b{font-size:26px;line-height:1.1;font-variant-numeric:tabular-nums}.partner-counters span{font-size:12px;color:var(--muted)}.result-card{position:relative;margin-top:14px;padding:18px;border-radius:22px;animation:rise .4s var(--spring);display:flex;flex-direction:column;gap:8px}.result-card.ok{background:#0e2a1c;color:#e9fff3;box-shadow:inset 0 0 0 1px #2fd38a59}.result-card.bad{background:#2d1414;color:#ffe4e4;box-shadow:inset 0 0 0 1px #ff5c5c59;animation:shake .4s}.result-card h3{font-size:22px}.result-close{position:absolute;top:10px;inset-inline-end:10px;color:inherit;opacity:.7}.result-pill{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;font-weight:800;font-size:17px}.result-card.ok .result-pill{background:#2fd38a;color:#062014}.result-card.bad .result-pill{background:#ff5c5c;color:#fff}.result-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.result-meta .plan-chip{background:#ffffff1a;box-shadow:none;color:#fff;min-height:30px}.result-facts{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13.5px;opacity:.85}.desk-card{display:flex;gap:14px;align-items:center;padding:14px;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.desk-card .grow{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.desk-qr{padding:6px;border-radius:16px;background:#fff;flex:none}.desk-code{font-family:var(--mono);font-size:24px;font-weight:800;letter-spacing:.1em}.desk-code.xl{font-size:40px;color:#0a0b0d}.desk-full{position:fixed;inset:0;z-index:90;background:#fff;display:grid;place-items:center;animation:fade-in .25s}.desk-full-inner{display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px;text-align:center;color:#0a0b0d}.desk-full-inner .muted{color:#5f6874}.desk-full-brand{padding:6px 14px;border-radius:999px;background:#0a0b0d;color:var(--accent);font-weight:700}.desk-full-inner h2{font-size:28px}.date-input{width:auto;min-height:40px;font-size:14px;padding:0 10px}.live-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.live-row:last-child{border-bottom:0}.live-row.new{animation:live-in .6s var(--spring)}.live-row.new .live-avatar{box-shadow:0 0 0 4px var(--accent-soft)}.live-row.reversed{opacity:.5;text-decoration:line-through}@keyframes live-in{0%{opacity:0;transform:translateY(-14px) scale(.97);background:var(--accent-soft)}to{opacity:1;transform:none;background:transparent}}.live-avatar{--tier: var(--gold);width:42px;height:42px;border-radius:14px;display:grid;place-items:center;flex:none;font-weight:700;background:color-mix(in srgb,var(--tier) 22%,var(--surface-2));color:var(--text)}.live-time{font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-2)}.log-actions{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.log-list{max-height:58vh;overflow:auto;border-radius:14px;background:#0b0c0f;padding:8px 10px;font:11.5px/1.5 var(--mono);color:#cfd6dd;user-select:text;-webkit-user-select:text}.log-line{display:grid;grid-template-columns:auto auto 1fr;gap:8px;padding:3px 0;border-bottom:1px solid rgba(255,255,255,.05);word-break:break-word}.log-time{color:#6b7480}.log-tag{color:var(--accent)}.log-warn .log-msg{color:#ffd27a}.log-error .log-msg{color:#ff9a9a}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.qr-scanline,.sheen{display:none}}@media (min-width: 481px){[data-theme=light] body{background:#e6e8ec}[data-theme=dark] body{background:#050607}.app{box-shadow:0 0 40px #0000001f}}@media (max-width: 360px){.stat-row{grid-template-columns:repeat(2,1fr)}.hero-plan{font-size:26px}.live-clock{font-size:44px}}
