@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAa0ABQAAAAADOwAAAZHAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJtP01WQVJGBmA/U1RBVIEcAGQvXBEICoMkgmcLFgAwhEwBNgIkAyYEIAWGXAdiDAcbOgtRlHLSRcD8TEzkdoghPRuspKefbVnJIM5yRfA8vZv9uTNJSCZY21Scrigr6qyJ/C3sE1OFKuVP3e+lxUTbYio1zb/kFdk2bufY2BlhWERRBrcDUBhB5GEpd2Cy+MDxqf9zLPX+XVsk5r+s50d6IpWLatqbdT6f2MAikiOKQocbjya2QT0DqPDX4R0jQBgAUAiCRhDA0EkvYeLk9X3I2bEWI8jBAihIANm+kUWQBgggWChcBBdFhXlAUgOCAgBA0AgKjUJ8HKvjddFCKSgAVklEBYAeEJgCQJH0qB3B+neDg4sAA4hAD0AVIEAA0IACJGeaUjMIIIhBUE/zNABjTQMBwEVRcwcYBUCObLERABAgjAA1M/ZSa9hSi4OlpsnZ2KBOVUsAZlRGl1W0NZ6gSwhQPIAFs7YFL0QS91vRQgdgx2VDAnIegKpQvwAJIoLgooBAGtCJcHizg0TDiz8vhPgIcVXaDJu37ZyDAIjFy4AAiC1JAA0olJwN6nFAACQk/zfQVUuA3t5ELKMT9hpBSRj+HBSggYCIAIEkUoC4PCIQIWHGA8+IStxf0PW15ntP22gc+Wo+BLyQAHECQiAVd+c3Ba8gZ4NOACBaLOhsbIMkAXEmuHsSAvkf4oJaAogH6nEQAzoBIEihUAwAA0AACAObAGcANYAAABaqgMmpWAhiiVyrvNyqFV8tMQ5Iyq6r9Lf7W82i8ILl2cv8zbfdJ5lnPzSnvt/XXPfRR/5pH3xA+u5uS0798EPJ3Fft33w36Wc+8E/7aIB/9fvvb1pE9erNXLB9mkw//cSg8Cnx03VGXDvZnRzKqV9Xkhn7eRHb3wVjHpg19nkZpX9bBU+vnHegrsuQcbW9Bi7oO33h+8SU0Tly/MbeYUuG1cftVz6oNxrW0qH1iezq446fkDFo/rgvTkqt7zmteFzncZ0uxXti09FFF2z+C7CODpjUudOE5NSeb3bv/mbPKcmOEzpWQ3VBgBAuj/AOY3qMm7UvgA8qo3+qvAUBBAX0wADQG4AG+jCKaSxkBe/zvcTG8jRpRZgqhCog4sd++cOo7J+/RdvaaMoc78Ri/PNPSclx6fDvG1Kt3qQFi1rq+5EaavTtt9TVvfvucYsA5wc4oESU+E1ikF9TkrOkIsIH5Fawx7SBNLnMcWlM3skBluCmQNs7GeyFvYVDamsqwhxx18n/+WdxzDgOLU1AqbUlb3m+KOT9+ONvY/7XlrdLS//5v7nN97XHj0VzJpJvz4spq0V7ioXDuv2YrSxtF/KZmvbWfKtorXSh8dfvgGu+ev/nFSaXM6jyuCE/f/EpmuP7Rqu8R98vP/+tXUdrOgKlZP9Q/s+fRF9+3CHZd4EugfPv158me9X7v/6aSMCxMJmIr//65bNXngl7+uiPP5oKx+y27D8trp+psUzMacpm80XlnYeMAct0LynxhNYgaP3dtn8/LBAi+ksr+7NvjjtJV+UXrz0uLXV1x08AZRN1S2A8EaVE5afk/dfGjz//+fdHn36Xdttz2d9/z+bawZ8/slNN1aYtq+ZPGzNuPGdwOsfYflwmHCkPgs5DcKizvdpS/3gEUMW9/lvQvWp1bGTW1fpngC/uSVYAfH3TeSusL8TtlHUD4KAAEHjahk4YpuffGwEBN/dUmpHqdHyJ3Ap8O3UlQ4gCNrMRwLBBKiskL6a+RoBi/9XGlgc8L4/CUejQxaiIyqmomdhktOhfgDbDfaNDb4+yKIPd6IgmzDa0CByijWFmL2dlSRKagTIWXeIU9HDphoZiJeBTjAefHMxDhVSRFUgVcOkW3EGMahYVMFjWHhMluB2wAcbHYqF1LpsDF9C6s+CI2fDgh4wSuFEyGadjXAmIk3CugIRibLIti9ZtC8S4VSqfikGqPaoI122XyRYLBmsOmdiiTpqK1OklUQzpMcZmQRQV4M4oJCMkfRQXK+qvjifUcQd1bRdetW/LWjacYxvcttnVjWg5h0q4xw6rZyejSpZVZ78LzC4uyDNRQ4bymHSTMyM+SZ7D75mg/7YTlmNz7W8T00h0VEiGKB+F7iWYZFvSTiA4LVxttm2ATt5EoUWLJbY4EnLGrfsvEROlHtzlKn3H9VUT5tU/2dt3/EBv7foYzV/W4upyj04woO/gh6Vwwt3WGQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.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{--font-sans: "Plus Jakarta Sans Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}:root{--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 24px;--text-2xl: 32px;--text-display: clamp(34px, 6vw, 60px);--text-title: clamp(26px, 4vw, 38px);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 999px;--duration-fast: .15s;--duration-base: .2s;--duration-slow: .3s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--maxw: 1120px;--touch-target: 44px}[data-theme=light]{color-scheme:light;--color-bg: #fff8f5;--color-surface: #ffffff;--color-surface-2: #fff1ea;--color-border: #f0ddd4;--color-border-strong: #e2c6b8;--color-text: #2b2118;--color-text-muted: #6e5f55;--color-primary: #ff6b4a;--color-primary-strong: #c73a18;--color-on-primary: #2a1205;--color-secondary: #ffb347;--color-accent: #4ad6c2;--color-accent-strong: #0e7e6e;--color-success: #1b7f37;--color-success-bg: #e5f6e9;--color-danger: #c62b2b;--color-danger-bg: #fce9e7;--color-focus-ring: #c73a18;--color-primary-soft: #ffe3da;--color-star: #f5a623;--gradient-brand: linear-gradient(135deg, #ffb347, #ff6b4a);--shadow-sm: 0 1px 3px rgba(80, 40, 20, .08);--shadow-md: 0 6px 18px rgba(80, 40, 20, .1);--shadow-lg: 0 16px 40px rgba(80, 40, 20, .14)}[data-theme=dark]{color-scheme:dark;--color-bg: #12151c;--color-surface: #1a1f29;--color-surface-2: #232a37;--color-border: #2e3645;--color-border-strong: #3d4759;--color-text: #f2ede9;--color-text-muted: #a8a099;--color-primary: #ff6b4a;--color-primary-strong: #ff8a6e;--color-on-primary: #2a1205;--color-secondary: #ffb347;--color-accent: #4ad6c2;--color-accent-strong: #4ad6c2;--color-success: #4cc465;--color-success-bg: #15301c;--color-danger: #f87168;--color-danger-bg: #3a1a18;--color-focus-ring: #ff8a6e;--color-primary-soft: #3b241c;--color-star: #f5a623;--gradient-brand: linear-gradient(135deg, #ffb347, #ff6b4a);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 8px 24px rgba(0, 0, 0, .45);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .55)}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%}html{font-family:var(--font-sans)}body{margin:0;background:var(--color-bg);color:var(--color-text);font-size:var(--text-base);line-height:1.55;-webkit-font-smoothing:antialiased;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}a{color:inherit;text-decoration:none}h1,h2,h3,h4{line-height:1.15;margin:0 0 .4em;font-weight:700;letter-spacing:-.02em}p{margin:0 0 1em;color:var(--color-text-muted)}button,input,select,textarea{font:inherit}img,svg{vertical-align:middle}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.container{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--space-4)}.row{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}.space-between{justify-content:space-between}.center{text-align:center}.muted{color:var(--color-text-muted)}.mt{margin-block-start:var(--space-4)}.mb{margin-block-end:var(--space-4)}.link{color:var(--color-accent-strong);cursor:pointer;font-weight:600}.error{color:var(--color-danger);font-size:var(--text-sm);margin-block:var(--space-2)}.success{color:var(--color-success);font-size:var(--text-sm);margin-block:var(--space-2)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}[dir=rtl] .icon-flip{transform:scaleX(-1)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-width:var(--touch-target);min-height:var(--touch-target);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-full);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.icon-btn:hover{background:var(--color-surface-2);color:var(--color-text)}.icon-btn .lang-label{font-size:var(--text-sm);font-weight:600}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target);padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-full);font-size:15px;font-weight:600;white-space:nowrap;cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),filter var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.ui-btn-primary:hover,.ui-btn-danger:hover{filter:brightness(1.05);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.ui-btn-secondary:hover,.ui-btn-ghost:hover{border-color:var(--color-border-strong);background:color-mix(in srgb,var(--color-surface-2) 94%,var(--color-text))}.ui-btn:active{transform:translateY(1px);box-shadow:none}.ui-btn:disabled{opacity:.5;cursor:not-allowed}.ui-btn-primary{background:var(--gradient-brand);color:var(--color-on-primary)}.ui-btn-secondary{background:var(--color-surface-2);color:var(--color-text);border:1px solid var(--color-border)}.ui-btn-ghost{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.ui-btn-danger{background:var(--color-danger);color:var(--color-surface)}[data-theme=dark] .ui-btn-danger{color:var(--color-text)}.ui-btn-sm{min-height:36px;padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}@media (pointer: coarse){.ui-btn-sm,.ui-tab{min-height:var(--touch-target)}}.ui-btn-block{width:100%}.ui-spin{animation:ui-spin .8s linear infinite}@keyframes ui-spin{to{transform:rotate(360deg)}}.ui-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.ui-card-pad-none{padding:0;overflow:hidden}.ui-card-pad-sm{padding:var(--space-3)}.ui-card-pad-md{padding:var(--space-4) var(--space-5)}.ui-card-pad-lg{padding:var(--space-6)}.ui-card-interactive{transition:box-shadow var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.ui-card-interactive:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}.ui-badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:700;padding:3px var(--space-3);border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-text-muted)}.ui-badge-brand{color:var(--color-primary-strong)}.ui-badge-success{background:var(--color-success-bg);color:var(--color-success)}.ui-badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.ui-badge-accent{color:var(--color-accent-strong)}.ui-field{margin-block-end:var(--space-4)}.ui-field>label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);margin-block-end:var(--space-2)}.ui-field-req{color:var(--color-danger)}.ui-input{width:100%;min-height:var(--touch-target);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-size:var(--text-base)}.ui-input:focus{outline:none;border-color:var(--color-primary-strong)}.ui-input.has-error{border-color:var(--color-danger)}.ui-textarea{min-height:88px;resize:vertical}.ui-phone{position:relative;display:flex;gap:var(--space-2);align-items:stretch}.ui-phone-country{flex:0 0 auto;display:inline-flex;align-items:center;gap:var(--space-2);padding-inline:var(--space-3);min-block-size:44px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer}.ui-phone-country:disabled{opacity:.6;cursor:default}.ui-flag{inline-size:1.5rem;block-size:1.1rem;object-fit:cover;border-radius:2px;flex:0 0 auto}.ui-phone-dial{font-size:var(--text-base);font-variant-numeric:tabular-nums}.ui-phone-caret{color:var(--color-text-muted)}.ui-phone-number{flex:1 1 auto;min-inline-size:0}.ui-phone-menu{position:absolute;inset-block-start:calc(100% + 4px);inset-inline:0;z-index:50;max-block-size:320px;display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg, 0 12px 32px rgba(0, 0, 0, .18));overflow:hidden}.ui-phone-search{display:flex;align-items:center;gap:var(--space-2);padding-inline:var(--space-3);border-block-end:1px solid var(--color-border);color:var(--color-text-muted)}.ui-phone-search input{flex:1 1 auto;border:0;outline:none;background:transparent;color:var(--color-text);padding-block:var(--space-3);font-size:var(--text-base)}.ui-phone-list{margin:0;padding:var(--space-1);list-style:none;overflow-y:auto}.ui-phone-opt{display:flex;align-items:center;gap:var(--space-3);padding-inline:var(--space-3);min-block-size:44px;border-radius:var(--radius-sm);cursor:pointer}.ui-phone-opt:hover,.ui-phone-opt.is-sel{background:var(--color-surface-2)}.ui-phone-opt-name{flex:1 1 auto}.ui-phone-opt-dial{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.ui-phone-empty{padding:var(--space-3);color:var(--color-text-muted);text-align:center}.ui-field-hint{font-size:var(--text-xs);color:var(--color-text-muted);margin-block-start:var(--space-1)}.ui-field-error{font-size:var(--text-xs);color:var(--color-danger);margin-block-start:var(--space-1)}.ui-alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);margin-block:var(--space-3)}.ui-alert-danger{background:var(--color-danger-bg);color:var(--color-danger)}.ui-alert-success{background:var(--color-success-bg);color:var(--color-success)}.ui-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:var(--space-4);background:#0000008c;animation:ui-fade-in var(--duration-base) var(--ease-out)}.ui-modal{width:100%;max-width:440px;max-height:calc(100dvh - var(--space-6));overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:ui-pop-in var(--duration-base) var(--ease-out)}.ui-modal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-block-end:1px solid var(--color-border)}.ui-modal-head h3{margin:0;font-size:var(--text-lg)}.ui-modal-body{padding:var(--space-5)}.ui-modal-overlay.is-closing{animation:ui-fade-out var(--duration-fast) var(--ease-in) forwards}.ui-modal-overlay.is-closing .ui-modal{animation:ui-pop-out var(--duration-fast) var(--ease-in) forwards}@keyframes ui-fade-in{0%{opacity:0}}@keyframes ui-pop-in{0%{opacity:0;transform:scale(.96)}}@keyframes ui-fade-out{to{opacity:0}}@keyframes ui-pop-out{to{opacity:0;transform:scale(.96)}}@keyframes ui-pop-bounce{0%{transform:scale(.6)}60%{transform:scale(1.25)}to{transform:scale(1)}}@media (max-width: 560px){.ui-modal-overlay{place-items:end stretch;padding:0;padding-block-start:var(--space-6)}.ui-modal{max-width:none;border-start-start-radius:var(--radius-lg);border-start-end-radius:var(--radius-lg);border-end-start-radius:0;border-end-end-radius:0;border-inline:none;border-block-end:none;padding-block-end:env(safe-area-inset-bottom);animation:ui-sheet-in var(--duration-slow) var(--ease-out)}.ui-modal-overlay.is-closing .ui-modal{animation:ui-sheet-out var(--duration-base) var(--ease-in) forwards}}@keyframes ui-sheet-in{0%{transform:translateY(24px);opacity:0}}@keyframes ui-sheet-out{to{transform:translateY(24px);opacity:0}}.ui-progress{block-size:8px;border-radius:var(--radius-full);background:var(--color-surface-2);overflow:hidden}.ui-progress>span{display:block;block-size:100%;background:var(--gradient-brand);border-radius:var(--radius-full);transition:inline-size var(--duration-slow) var(--ease-out)}.ui-ring-track{fill:none;stroke:var(--color-surface-2)}.ui-ring-fill{fill:none;stroke:var(--color-primary);stroke-linecap:round;transition:stroke-dashoffset var(--duration-slow) var(--ease-out)}.ui-ring-spin{animation:ui-ring-spin .9s linear infinite}@keyframes ui-ring-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.ui-ring-spin{animation-duration:2.4s}}.ui-stamps{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ui-stamp{display:grid;place-items:center;inline-size:28px;block-size:28px;border-radius:var(--radius-full);border:1px dashed var(--color-border-strong);color:var(--color-border-strong)}.ui-stamp.is-filled{background:var(--gradient-brand);border:none;color:var(--color-on-primary)}.ui-skeleton-group{display:grid;gap:var(--space-2)}.ui-skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-surface-2) 25%,var(--color-border) 50%,var(--color-surface-2) 75%);background-size:200% 100%;animation:ui-shimmer 1.4s ease infinite}.ui-skeleton-text{block-size:14px}.ui-skeleton-card{block-size:120px;border-radius:var(--radius-lg)}.ui-skeleton-circle{inline-size:48px;block-size:48px;border-radius:var(--radius-full)}@keyframes ui-shimmer{to{background-position:-200% 0}}.ui-toasts{position:fixed;inset-block-end:calc(var(--space-5) + env(safe-area-inset-bottom));inset-inline-start:50%;transform:translate(-50%);z-index:200;display:grid;gap:var(--space-2);justify-items:center;max-inline-size:calc(100vw - var(--space-6))}[dir=rtl] .ui-toasts{transform:translate(50%)}.ui-toast{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-full);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-md);font-size:var(--text-sm);font-weight:600;animation:ui-toast-in var(--duration-base) var(--ease-out)}.ui-toast-success{color:var(--color-success)}.ui-toast-danger{color:var(--color-danger)}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(8px)}}.ui-toast.is-leaving{animation:ui-toast-out var(--duration-slow) var(--ease-in) forwards}@keyframes ui-toast-out{to{opacity:0;transform:translateY(8px)}}.ui-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);background:var(--color-surface-2);border-radius:var(--radius-full)}.ui-tab{flex:1;min-height:38px;padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-full);background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.ui-tab.is-active{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.ui-empty{display:grid;justify-items:center;text-align:center;gap:var(--space-2);padding:var(--space-7) var(--space-4)}.ui-empty-ico{display:grid;place-items:center;inline-size:56px;block-size:56px;border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-primary-strong);margin-block-end:var(--space-2)}.ui-empty h3{margin:0;font-size:var(--text-lg)}.ui-empty p{margin:0;max-width:38ch}.ui-code{display:grid;justify-items:center;gap:var(--space-2)}.ui-code-box{font-size:clamp(28px,11vw,40px);font-weight:800;letter-spacing:.12em;font-variant-numeric:tabular-nums;text-align:center;padding:var(--space-4) var(--space-5);background:var(--color-surface-2);border-radius:var(--radius-lg);width:100%}.ui-code-box.is-expired{opacity:.4;text-decoration:line-through}.ui-code-timer{margin:0;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.ui-code-timer.is-low{color:var(--color-danger);font-weight:700}.ui-code-expired{margin:0;font-size:var(--text-sm);color:var(--color-danger)}.ui-code-input{display:flex;gap:var(--space-2);justify-content:center}.ui-code-cellbox{position:relative;display:block;inline-size:clamp(40px,13vw,56px);block-size:clamp(48px,15vw,64px);background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;clip-path:inset(0 round var(--radius-md));transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.ui-code-cellbox:focus-within{border-color:var(--color-primary-strong);box-shadow:0 0 0 3px var(--color-primary-soft)}.ui-code-cellbox.is-filled{border-color:var(--color-border-strong)}.ui-code-cellbox:has(.ui-code-cell:disabled){opacity:.6}.ui-code-liquid{position:absolute;inset-inline-start:50%;inset-block-start:100%;inline-size:220%;aspect-ratio:1;margin-inline-start:-110%;border-radius:42%;background:var(--color-primary-soft);translate:0 4%;rotate:0deg;transition:translate .6s cubic-bezier(.34,1.3,.5,1);animation:ui-liquid-spin 7s linear infinite;pointer-events:none}.ui-code-liquid:after{content:"";position:absolute;top:-2%;right:-2%;bottom:-2%;left:-2%;border-radius:45% 47% 43% 46%;background:var(--color-primary);opacity:.14;animation:ui-liquid-spin 4.5s linear infinite reverse}.ui-code-cellbox:focus-within .ui-code-liquid{translate:0 -6%}.ui-code-cellbox.is-filled .ui-code-liquid{translate:0 -34%}.ui-code-input.is-complete .ui-code-liquid{animation:ui-liquid-spin 7s linear infinite,ui-liquid-swell .7s var(--ease-out) calc(var(--cell-i, 0) * 70ms)}@keyframes ui-liquid-spin{to{rotate:360deg}}@keyframes ui-liquid-swell{40%{translate:0 -46%}}.ui-code-cell{position:relative;inline-size:100%;block-size:100%;padding:0;text-align:center;font-size:var(--text-2xl);font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text);background:transparent;border:none;caret-color:var(--color-primary-strong)}.ui-code-cell:focus{outline:none}.ui-code-cellbox.is-filled .ui-code-cell{animation:ui-code-pop .3s var(--ease-out)}@keyframes ui-code-pop{0%{scale:.6}60%{scale:1.15}to{scale:1}}@media (prefers-reduced-motion: reduce){.ui-code-liquid,.ui-code-liquid:after,.ui-code-input.is-complete .ui-code-liquid,.ui-code-cellbox.is-filled .ui-code-cell{animation:none}.ui-code-liquid{transition:none}}.ui-pw{display:flex;align-items:center;gap:var(--space-3);margin-block:calc(-1 * var(--space-2)) var(--space-4)}.ui-pw.is-w1{--pw-color: var(--color-danger);--pw-pct: 25%}.ui-pw.is-w2{--pw-color: var(--color-secondary);--pw-pct: 50%}.ui-pw.is-w3{--pw-color: color-mix(in srgb, var(--color-success) 55%, var(--color-secondary));--pw-pct: 75%}.ui-pw.is-w4{--pw-color: var(--color-success);--pw-pct: 100%}.ui-pw-icon{inline-size:40px;block-size:40px;flex-shrink:0;color:var(--pw-color);overflow:visible}.ui-pw-icon g,.ui-pw-icon path,.ui-pw-icon rect,.ui-pw-icon circle{transform-box:fill-box;transition:opacity var(--duration-slow) var(--ease-out),translate var(--duration-slow) var(--ease-out),rotate var(--duration-slow) var(--ease-out),scale var(--duration-slow) var(--ease-out),fill var(--duration-slow) var(--ease-out),stroke var(--duration-slow) var(--ease-out)}.ui-pw-body{fill:var(--pw-color)}.ui-pw-shackle{stroke:var(--pw-color);transform-origin:bottom right}.is-w1 .ui-pw-shackle{translate:2px -3px;rotate:16deg}.ui-pw-hole{fill:var(--color-surface)}.ui-pw-pick{stroke:var(--color-text-muted);opacity:0;transform-origin:0% 50%}.is-w1 .ui-pw-pick{opacity:1;animation:ui-pw-wiggle .5s ease-in-out infinite alternate}@keyframes ui-pw-wiggle{0%{rotate:-6deg;translate:.5px 0}to{rotate:8deg;translate:-2px 0}}.ui-pw-lock{transform-origin:center}.is-w2 .ui-pw-lock{animation:ui-pw-settle .45s var(--ease-out)}@keyframes ui-pw-settle{0%{rotate:-5deg}55%{rotate:3deg}to{rotate:0deg}}.ui-pw-rivets{fill:var(--color-surface);opacity:0}.is-w3 .ui-pw-rivets{opacity:.9}.ui-pw-vault{stroke:var(--pw-color);opacity:0;scale:.7;transform-origin:center}.ui-pw-dial{fill:var(--pw-color);stroke:none}.is-w4 .ui-pw-lock{opacity:0;scale:.7}.is-w4 .ui-pw-vault{opacity:1;scale:1;animation:ui-pw-clunk .5s var(--ease-out)}.ui-pw-spokes{transform-origin:center}.is-w4 .ui-pw-spokes{animation:ui-pw-spin .8s var(--ease-out)}@keyframes ui-pw-spin{0%{rotate:-120deg}to{rotate:0deg}}@keyframes ui-pw-clunk{0%{scale:.7}70%{scale:1.08}to{scale:1}}.ui-pw-info{flex:1;min-inline-size:0;display:flex;flex-direction:column;gap:var(--space-1)}.ui-pw-bar{block-size:6px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-border) 60%,transparent);overflow:hidden}.ui-pw-fill{block-size:100%;border-radius:inherit;inline-size:var(--pw-pct);background:var(--pw-color);transition:inline-size .45s cubic-bezier(.34,1.3,.64,1),background .3s var(--ease-out)}.ui-pw-label{font-size:var(--text-sm);color:var(--color-text-muted)}.is-w1 .ui-pw-label{color:var(--color-danger)}.is-w4 .ui-pw-label{color:var(--color-success)}@media (prefers-reduced-motion: reduce){.is-w1 .ui-pw-pick,.is-w2 .ui-pw-lock,.is-w4 .ui-pw-vault,.is-w4 .ui-pw-spokes{animation:none}.ui-pw-icon g,.ui-pw-icon path,.ui-pw-icon rect,.ui-pw-icon circle,.ui-pw-fill{transition:none}}.receipt-flow{max-width:560px;overflow-wrap:anywhere}.receipt-dropzone{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center;padding:var(--space-6) var(--space-4);border:2px dashed var(--color-border-strong);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out)}.receipt-dropzone:hover,.receipt-dropzone:focus-within{border-color:var(--color-primary-strong);background:var(--color-surface-2)}.receipt-dropzone-ico{display:grid;place-items:center;inline-size:56px;block-size:56px;border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-primary-strong)}.receipt-preview{max-block-size:140px;max-inline-size:100%;border-radius:var(--radius-md);object-fit:contain}.receipt-analyzing{display:grid;gap:var(--space-2);justify-items:center;text-align:center;padding-block:var(--space-4)}.receipt-analyzing-ring{margin-block-end:var(--space-2)}.receipt-extract{display:grid;gap:var(--space-2)}.receipt-items{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-1)}.receipt-items li{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);padding-block:var(--space-1);border-block-end:1px solid var(--color-border)}.receipt-items li:last-child{border-block-end:none}.business-code-card{margin-block-end:var(--space-4)}.business-code-head{display:flex;align-items:center;gap:var(--space-2);color:var(--color-primary-strong)}.business-code-value{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-3)}.business-code-value code{font-family:var(--font-mono, monospace);font-size:var(--text-xl);font-weight:700;letter-spacing:.12em;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text)}.ui-stepper{display:flex;list-style:none;margin:0 0 var(--space-4);padding:0}.ui-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);position:relative}.ui-step:not(:first-child):before{content:"";position:absolute;inset-block-start:14px;inset-inline-end:calc(50% + 18px);inset-inline-start:calc(-50% + 18px);block-size:2px;background:var(--color-border)}.ui-step.is-done:not(:first-child):before,.ui-step.is-active:not(:first-child):before{background:var(--color-primary)}.ui-step-dot{display:grid;place-items:center;inline-size:28px;block-size:28px;border-radius:var(--radius-full);background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:700;z-index:1}.ui-step.is-done .ui-step-dot{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.ui-step.is-active .ui-step-dot{border-color:var(--color-primary-strong);color:var(--color-primary-strong)}.ui-step.is-error .ui-step-dot{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger)}.ui-step-label{font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted);text-align:center;padding-inline:var(--space-1)}.ui-step.is-active .ui-step-label{color:var(--color-text)}.ui-step.is-error .ui-step-label{color:var(--color-danger)}.nav-greeting{font-size:var(--text-sm);font-weight:600;color:var(--color-primary-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-inline-size:18ch}.nav-signout{font-size:var(--text-sm);color:var(--color-text-muted)}.auth-google-btn{text-decoration:none;gap:var(--space-3)}.phone-verify-icon{display:flex;justify-content:center;margin-block-end:var(--space-4);color:var(--color-primary-strong)}@keyframes pvi-ring{0%,60%,to{transform:rotate(0)}10%{transform:rotate(-18deg)}20%{transform:rotate(18deg)}30%{transform:rotate(-12deg)}40%{transform:rotate(12deg)}50%{transform:rotate(-6deg)}}@keyframes pvi-pop{0%,to{transform:scale(1);opacity:1}40%{transform:scale(1.12);opacity:1}70%{transform:scale(.96);opacity:.85}}.phone-verify-icon .pvi-phone{animation:pvi-ring 2.4s ease-in-out infinite;transform-origin:50% 10%}.phone-verify-icon .pvi-sms{animation:pvi-pop 1.8s ease-in-out infinite}.lang-picker{position:relative}.lang-trigger{gap:var(--space-1);padding-inline:var(--space-3);border-radius:var(--radius-full)}.lang-chevron{transition:transform var(--duration-fast) var(--ease-out);opacity:.6}.lang-chevron.open{transform:rotate(180deg)}.lang-dropdown{position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;min-width:160px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;z-index:200;animation:ui-fade-in var(--duration-fast) var(--ease-out)}.lang-option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;background:transparent;cursor:pointer;text-align:start;transition:background var(--duration-fast) var(--ease-out)}.lang-option:hover{background:var(--color-surface-2)}.lang-option.is-active{background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.lang-option.is-active .lang-option-native{color:var(--color-primary-strong);font-weight:700}.lang-option-native{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.lang-option-en{font-size:11px;color:var(--color-text-muted)}.lang-option-main{display:flex;align-items:center;gap:var(--space-2)}.lang-flag{inline-size:1.25rem;block-size:.9375rem}.brand{font-weight:800;font-size:20px;letter-spacing:-.02em;display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text)}.brand-dot{color:var(--color-primary-strong)}.site-nav{position:sticky;inset-block-start:0;z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:color-mix(in srgb,var(--color-bg) 80%,transparent);border-block-end:1px solid var(--color-border)}.site-nav-inner{display:flex;align-items:center;justify-content:space-between;min-height:64px;gap:var(--space-3)}.site-nav-links{position:relative;display:flex;align-items:center;gap:var(--space-4)}.site-nav-links>a{color:var(--color-text-muted);font-weight:500;min-height:var(--touch-target);display:inline-flex;align-items:center}.site-nav-links>a:hover{color:var(--color-text)}.nav-menu-btn{display:none;align-items:center;justify-content:center;inline-size:var(--touch-target);block-size:var(--touch-target);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.nav-menu-btn:hover{border-color:var(--color-border-strong)}.nav-menu{position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline-end:0;z-index:50;display:none;flex-direction:column;min-inline-size:220px;padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:ui-pop-in var(--duration-fast) var(--ease-out)}.nav-menu.is-closing{animation:ui-fade-out var(--duration-fast) var(--ease-in) forwards}.nav-menu-link{display:flex;align-items:center;gap:var(--space-2);min-block-size:var(--touch-target);padding-inline:var(--space-3);border-radius:var(--radius-sm);color:var(--color-text);font-weight:500;transition:background var(--duration-fast) var(--ease-out)}.nav-menu-link:hover{background:var(--color-surface-2)}@media (max-width: 900px){.site-nav-links .nav-anchor{display:none}.nav-menu-btn{display:inline-flex}.nav-menu{display:flex}}@media (max-width: 560px){.site-nav-links{gap:var(--space-2)}.site-nav-links .nav-cta{display:none}}.shell{min-height:100dvh;display:flex;flex-direction:column}.shell-header{position:sticky;inset-block-start:0;z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:color-mix(in srgb,var(--color-bg) 80%,transparent);border-block-end:1px solid var(--color-border)}.shell-header-inner{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--space-4);display:flex;align-items:center;gap:var(--space-3);min-height:64px}.shell-role{font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted)}.shell-header-end{margin-inline-start:auto;display:flex;align-items:center;gap:var(--space-2)}.shell-menu-btn{display:none}.shell-body{flex:1;display:grid;grid-template-columns:240px 1fr;max-width:var(--maxw);margin-inline:auto;width:100%}.shell-mode-none .shell-body{grid-template-columns:1fr;max-width:800px}.shell-content{padding:var(--space-6) var(--space-5);min-width:0}.shell-content>*{animation:shell-tab-in var(--duration-base) var(--ease-out)}@keyframes shell-tab-in{0%{opacity:0;transform:translateY(6px)}}.shell-content h1{font-size:28px;margin-block-end:var(--space-1)}.shell-nav-item{display:flex;align-items:center;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600;cursor:pointer;text-align:start;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.shell-nav-item:hover{background:var(--color-surface-2);color:var(--color-text)}.shell-nav-item.is-active{background:var(--color-surface-2);color:var(--color-primary-strong)}.shell-sidebar{display:none;flex-direction:column;gap:var(--space-1);padding:var(--space-5) var(--space-3);border-inline-end:1px solid var(--color-border)}.shell-tabbar{position:fixed;inset-inline:0;inset-block-end:0;z-index:50;display:flex;background:var(--color-surface);border-block-start:1px solid var(--color-border);padding-block-end:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.shell-tabbar .shell-nav-item{flex:1;min-width:0;flex-direction:column;justify-content:center;gap:2px;min-height:56px;border-radius:0;font-size:11px;padding:var(--space-2) var(--space-1)}.shell-tabbar .shell-nav-item>span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-mode-tabs .shell-content{padding-block-end:calc(72px + env(safe-area-inset-bottom))}.shell-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0000008c;animation:ui-fade-in var(--duration-base) var(--ease-out)}.shell-drawer{position:absolute;inset-block:0;inset-inline-start:0;width:min(300px,84vw);background:var(--color-surface);border-inline-end:1px solid var(--color-border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:shell-drawer-in var(--duration-slow) var(--ease-out)}@keyframes shell-drawer-in{0%{transform:translate(-100%)}}[dir=rtl] .shell-drawer{animation-name:shell-drawer-in-rtl}@keyframes shell-drawer-in-rtl{0%{transform:translate(100%)}}.shell-drawer-overlay.is-closing{animation:ui-fade-out var(--duration-base) var(--ease-in) forwards}.shell-drawer-overlay.is-closing .shell-drawer{animation:shell-drawer-out var(--duration-base) var(--ease-in) forwards}[dir=rtl] .shell-drawer-overlay.is-closing .shell-drawer{animation-name:shell-drawer-out-rtl}@keyframes shell-drawer-out{to{transform:translate(-100%)}}@keyframes shell-drawer-out-rtl{to{transform:translate(100%)}}.shell-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-block-end:1px solid var(--color-border)}.shell-drawer-nav{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) var(--space-3);overflow-y:auto}@media (min-width: 1024px){.shell-sidebar{display:flex}.shell-tabbar,.shell-drawer-overlay{display:none}.shell-mode-tabs .shell-content{padding-block-end:var(--space-6)}}@media (max-width: 1023px){.shell-body{grid-template-columns:1fr}.shell-mode-drawer .shell-menu-btn{display:inline-flex}}@media (max-width: 560px){.shell-content{padding-inline:var(--space-4)}.shell-role{display:none}}@media (max-width: 374px){.shell-header-inner,.site-nav-inner{padding-inline:var(--space-3);gap:var(--space-2)}.shell-header-inner .lang-label,.site-nav-inner .lang-label{display:none}}.auth-wrap{min-height:calc(100dvh - 64px);display:grid;place-items:center;padding:var(--space-6) var(--space-4);position:relative;overflow:hidden}.auth-wrap:before{content:"";position:absolute;inset-block-start:-30%;inset-inline-end:-10%;width:480px;height:480px;background:radial-gradient(circle,color-mix(in srgb,var(--color-primary) 16%,transparent),transparent 60%);filter:blur(10px);pointer-events:none}.auth-panel{width:100%;max-width:440px;position:relative}.auth-scene{isolation:isolate;--scene-accent: var(--color-primary);--scene-accent-strong: var(--color-primary-strong);--aurora-strength: 15%;--glass-edge: rgba(255, 255, 255, .55);--seal-opacity: .1}[data-theme=dark] .auth-scene{--aurora-strength: 26%;--glass-edge: rgba(255, 255, 255, .1);--seal-opacity: .14}.auth-scene.is-teal{--scene-accent: var(--color-accent);--scene-accent-strong: var(--color-accent-strong)}.auth-wrap.auth-scene:before{content:none}.auth-aurora{position:absolute;top:-12%;right:-12%;bottom:-12%;left:-12%;pointer-events:none;background:radial-gradient(620px 480px at 82% 6%,color-mix(in srgb,var(--scene-accent) var(--aurora-strength),transparent),transparent 65%),radial-gradient(540px 440px at 6% 92%,color-mix(in srgb,var(--color-secondary) var(--aurora-strength),transparent),transparent 65%),radial-gradient(480px 420px at 10% 14%,color-mix(in srgb,var(--color-accent) 10%,transparent),transparent 60%);animation:auth-aurora-drift 70s ease-in-out infinite alternate}@keyframes auth-aurora-drift{to{translate:3% -3%;scale:1.12}}.auth-dots{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.auth-ember{position:absolute;inset-inline-start:var(--x);inset-block-end:-12px;inline-size:var(--s);block-size:var(--s);border-radius:50%;background:var(--scene-accent);opacity:0;animation:auth-ember-rise var(--d) linear var(--dl) infinite}.auth-ember:nth-child(3n){background:var(--color-secondary)}@keyframes auth-ember-rise{0%{translate:0 0;opacity:0}12%{opacity:.55}80%{opacity:.22}to{translate:10px -92vh;opacity:0}}.auth-bokeh{position:absolute;inset-inline-start:var(--x);inset-block-start:var(--y);inline-size:var(--s);block-size:var(--s);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--scene-accent) 50%,transparent),transparent 70%);filter:blur(6px);opacity:.35;animation:auth-bokeh-float var(--d) ease-in-out infinite alternate}@keyframes auth-bokeh-float{to{translate:16px -24px}}.auth-seal{position:absolute;inset-inline-start:50%;inset-block-start:50%;inline-size:min(430px,92vw);block-size:min(430px,92vw);margin-inline-start:calc(min(430px,92vw)/-2 + 200px);margin-block-start:calc(min(430px,92vw)/-2 - 150px);color:var(--scene-accent);opacity:var(--seal-opacity);rotate:-12deg;animation:auth-seal-sway 26s ease-in-out infinite alternate;pointer-events:none}@keyframes auth-seal-sway{to{rotate:-6deg;translate:0 -14px}}.auth-scene .auth-panel{z-index:1;background:color-mix(in srgb,var(--color-surface) 68%,transparent);-webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4);border:1px solid color-mix(in srgb,var(--color-surface) 35%,var(--color-border));box-shadow:inset 0 1px 0 var(--glass-edge),var(--shadow-lg);transition:box-shadow var(--duration-slow) var(--ease-out)}.auth-scene .auth-panel:focus-within{box-shadow:inset 0 1px 0 var(--glass-edge),0 0 0 1px color-mix(in srgb,var(--scene-accent) 40%,transparent),0 14px 70px color-mix(in srgb,var(--scene-accent) 28%,transparent),var(--shadow-lg)}.auth-scene .ui-input{background:color-mix(in srgb,var(--color-surface) 55%,transparent)}.auth-scene .ui-code-cellbox{background:color-mix(in srgb,var(--color-surface-2) 62%,transparent)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.auth-scene .auth-panel{background:var(--color-surface)}}@media (prefers-reduced-motion: reduce){.auth-aurora,.auth-bokeh,.auth-seal{animation:none}.auth-ember{animation:none;inset-block-end:auto;inset-block-start:var(--y);opacity:.3}}.auth-panel h2{font-size:var(--text-xl)}.auth-tabs{margin-block-end:var(--space-5)}.auth-role-note{font-size:var(--text-sm);margin-block-start:calc(-1 * var(--space-1))}.auth-links{font-size:var(--text-sm)}.auth-status-ico{display:grid;place-items:center;inline-size:56px;block-size:56px;border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-primary-strong);margin-inline:auto;margin-block-end:var(--space-3)}.auth-status-ico.is-ok{background:var(--color-success-bg);color:var(--color-success)}.link-btn{border:none;background:none;padding:0;min-height:var(--touch-target);color:var(--color-accent-strong);cursor:pointer;font-weight:600;font-size:inherit}.link-btn:hover{text-decoration:underline}.loyalty-card{display:grid;gap:var(--space-3);align-content:start}.loyalty-card.is-almost{border-color:var(--color-secondary)}.loyalty-card.has-accent{border-block-start:3px solid var(--card-accent)}.loyalty-card-head{display:flex;align-items:center;gap:var(--space-3)}.loyalty-card-ico{position:relative;display:grid;place-items:center;flex-shrink:0;inline-size:40px;block-size:40px;border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-primary-strong)}.loyalty-card-ico-badge{position:absolute;inset-block-end:-4px;inset-inline-end:-4px;display:grid;place-items:center;inline-size:18px;block-size:18px;border-radius:50%;background:var(--color-primary-strong);color:var(--color-on-primary);box-shadow:0 0 0 2px var(--color-surface)}.loyalty-card.has-accent .loyalty-card-ico-badge{background:var(--card-accent)}.loyalty-card.has-accent .loyalty-card-ico{background:color-mix(in srgb,var(--card-accent) 16%,transparent);color:var(--card-accent)}.loyalty-card-logo{inline-size:100%;block-size:100%;object-fit:cover;border-radius:var(--radius-md)}.logo-row{display:flex;align-items:center;gap:var(--space-3)}.logo-preview{display:grid;place-items:center;inline-size:48px;block-size:48px;border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-primary-strong);overflow:hidden}.logo-preview img{inline-size:100%;block-size:100%;object-fit:cover}.theme-row{display:flex;gap:var(--space-2)}.theme-swatch{inline-size:32px;block-size:32px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.theme-swatch:hover{transform:scale(1.1)}.theme-swatch.is-on{border-color:var(--color-text);outline:2px solid var(--color-surface)}.icon-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:var(--space-2)}.icon-swatch{display:inline-flex;align-items:center;justify-content:center;inline-size:44px;block-size:44px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.icon-swatch.is-on{border-color:var(--color-primary-strong);color:var(--color-primary-strong);box-shadow:inset 0 0 0 1px var(--color-primary-strong)}.plan-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-3)}.plan-type-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;text-align:start;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.plan-type-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.plan-type-card.is-on{border-color:var(--color-primary-strong);box-shadow:inset 0 0 0 1px var(--color-primary-strong)}.plan-type-card .plan-type-name{font-weight:600}.plan-type-card .plan-type-desc{font-size:var(--text-sm);color:var(--color-text-muted)}.plan-tier-row{display:flex;align-items:flex-end;gap:var(--space-2)}.plan-tier-row .ui-field{flex:1}.wizard-foot{display:flex;justify-content:space-between;gap:var(--space-2);margin-block-start:var(--space-4)}.product-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block-start:var(--space-2)}.product-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding-inline:var(--space-2);padding-block:var(--space-1);border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-surface-2);font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.product-chip button{display:inline-flex;cursor:pointer;color:var(--color-text-muted)}.wizard-mode-row{display:flex;gap:var(--space-2);margin-block-end:var(--space-3)}.loyalty-card-reward.is-hero{font-size:var(--text-lg);font-weight:700}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4);margin-block-start:var(--space-4)}.kpi-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3);margin-block-start:var(--space-3)}.kpi-card{display:grid;gap:var(--space-1);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.kpi-card-value{font-size:var(--text-2xl);font-weight:800;color:var(--color-primary-strong);font-variant-numeric:tabular-nums}.kpi-card-label{font-size:var(--text-sm);color:var(--color-text-muted)}.chart-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.chart-title{margin:0 0 var(--space-2);font-size:var(--text-base)}.chart-svg{inline-size:100%;block-size:auto}.chart-axis{stroke:var(--color-border);stroke-width:1}.chart-empty{text-align:center;padding-block:var(--space-5)}.chart-legend{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-block-start:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.chart-legend-item{display:inline-flex;align-items:center;gap:var(--space-1)}.chart-swatch{inline-size:12px;block-size:12px;border-radius:3px;display:inline-block}.bar-chart{display:flex;align-items:flex-end;gap:var(--space-2);block-size:180px;padding-block-start:var(--space-3)}.bar-col{flex:1 1 0;display:flex;flex-direction:column;align-items:center;gap:2px;min-inline-size:0;block-size:100%}.bar-track{flex:1;inline-size:60%;display:flex;align-items:flex-end}.bar-fill{inline-size:100%;background:var(--color-primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;min-block-size:2px}.bar-value{font-size:var(--text-xs);font-variant-numeric:tabular-nums}.bar-label{font-size:var(--text-xs);color:var(--color-text-muted);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-inline-size:100%}.donut{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.donut-svg{inline-size:150px;block-size:150px;flex:0 0 auto}.donut-total{font-size:1.6rem;font-weight:800;fill:var(--color-text)}.stack{display:grid;gap:var(--space-2)}.receipt-view-img{display:block;max-inline-size:100%;block-size:auto;border-radius:var(--radius-md)}.ticket-thread{display:grid;gap:var(--space-2);max-block-size:50vh;overflow-y:auto;margin-block:var(--space-3)}.ticket-msg{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2)}.ticket-msg.is-admin{background:color-mix(in srgb,var(--color-primary) 12%,transparent)}.ticket-msg-meta{font-size:var(--text-xs);color:var(--color-text-muted);margin-block-end:2px}.ticket-attach{max-inline-size:220px;border-radius:var(--radius-sm);margin-block-start:var(--space-2);display:block}.seg-nav{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block:var(--space-3)}.seg-btn{padding-inline:var(--space-3);padding-block:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;min-block-size:40px;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.seg-btn.is-on{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.section-h{margin-block:var(--space-4) var(--space-2);font-size:var(--text-lg)}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block-start:var(--space-2)}.hours-grid{display:grid;gap:var(--space-2);margin-block-start:var(--space-3)}.hours-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--space-2)}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:var(--space-2);margin-block-start:var(--space-3)}.biz-card{display:flex;align-items:center;gap:var(--space-3)}.loyalty-card-names{display:grid;min-width:0;flex:1}.loyalty-card-names .muted{font-size:var(--text-sm)}.loyalty-card-reward{margin:0;font-weight:600;color:var(--color-text)}.loyalty-card-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.loyalty-card-almost{font-size:var(--text-sm);font-weight:700;color:var(--color-primary-strong)}.loyalty-card.is-uploadable{cursor:pointer}.loyalty-card-hint{display:inline-flex;align-items:center;gap:var(--space-1);margin-inline-start:auto;font-size:var(--text-sm);font-weight:600;color:var(--color-primary-strong)}.loyalty-stack{position:relative}.loyalty-stack.has-stack{padding-block-start:30px}.loyalty-ghost{position:absolute;inset-inline:calc(11px * var(--i, 1));inset-block-start:calc(30px - 15px * var(--i, 1));z-index:calc(4 - var(--i, 1));block-size:46px;overflow:hidden;display:flex;align-items:flex-start;justify-content:flex-start;padding:6px var(--space-3) 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);border:1px solid var(--color-border);border-block-end:none;box-shadow:0 -3px 8px -4px #00000038;filter:grayscale(.4);opacity:.95;font-size:var(--text-xs);font-weight:600;color:var(--color-text-muted)}.loyalty-stack>.loyalty-card{position:relative;z-index:5}.loyalty-stack-badge{position:absolute;inset-block-start:4px;inset-inline-end:var(--space-3);z-index:6;font-size:var(--text-sm);font-weight:800;letter-spacing:.01em;color:var(--color-primary-strong)}.loyalty-card.is-completed{filter:grayscale(.45);opacity:.9}.loyalty-card-redeemed{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted)}.loyalty-card-feedback-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);margin-block-start:var(--space-3);inline-size:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-weight:700;font-size:var(--text-sm);cursor:pointer}.loyalty-card-feedback-done{display:inline-flex;align-items:center;gap:var(--space-1);margin-block-start:var(--space-3);font-size:var(--text-sm);font-weight:600;color:var(--color-success)}.feedback-questions{display:flex;flex-direction:column;gap:var(--space-3);margin-block:var(--space-3)}.feedback-q{display:flex;flex-direction:column;gap:var(--space-1)}.feedback-q-label{font-size:var(--text-sm);font-weight:600}.star-rating{display:inline-flex;gap:var(--space-1)}.star{border:none;background:none;cursor:pointer;padding:2px;color:var(--color-border);line-height:0}.star.is-on{color:var(--color-star)}.star.is-on svg{fill:var(--color-star);animation:ui-pop-bounce var(--duration-slow) var(--ease-out)}.feedback-hint{margin-block-start:var(--space-2);font-size:var(--text-sm);text-align:center}.redeem-actions{display:grid;gap:var(--space-2)}.redeem-honored-hint{font-size:var(--text-sm);margin:0}.loyalty-card-addr{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-1);margin-block-start:var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--color-primary-strong);text-decoration:none}.loyalty-card-addr:hover{text-decoration:underline}.loyalty-card-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-block-start:var(--space-2)}.loyalty-card-foot .loyalty-card-addr{margin-block-start:0;align-self:auto}.loyalty-card-hours{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);white-space:nowrap}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4);margin-block-start:var(--space-4)}.list-rows{display:grid;gap:var(--space-3);margin-block-start:var(--space-3)}.row-card{display:flex;align-items:center;gap:var(--space-3);overflow-wrap:anywhere}@media (max-width: 640px){.row-card{flex-wrap:wrap}.row-card>.row{flex-basis:100%;justify-content:flex-end}}.row-card.is-read{opacity:.6}.birthday-row{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-2)}.ui-check{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.plan-window{margin-block-start:var(--space-3)}.plan-window-body{display:flex;flex-direction:column;gap:var(--space-3);margin-block-start:var(--space-2)}.plan-window-days{display:flex;flex-wrap:wrap;gap:var(--space-2)}.day-chip{min-inline-size:44px;min-block-size:36px;padding-inline:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.day-chip.is-on{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}@media (pointer: coarse){.seg-btn,.day-chip{min-block-size:var(--touch-target)}}.plan-window-times{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.plan-edit-form{width:100%;display:flex;flex-direction:column;gap:var(--space-3)}.plan-edit-heading{font-size:var(--text-base)}.plan-edit-actions{justify-content:flex-start;gap:var(--space-2)}.row-main{flex:1;min-width:0}.row-ico{display:grid;place-items:center;flex-shrink:0;inline-size:40px;block-size:40px;border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-primary-strong)}.row-sub{font-size:var(--text-sm)}.row-meta{font-size:var(--text-xs);margin-block-start:var(--space-1)}.form-editing-tag{display:inline-block;margin-block-end:var(--space-3);padding:2px var(--space-2);font-size:var(--text-xs);font-weight:700;color:var(--color-primary-strong);background:var(--color-surface-2);border-radius:var(--radius-full)}.unread-dot{flex-shrink:0;inline-size:8px;block-size:8px;border-radius:var(--radius-full);background:var(--color-primary)}.feed-section{margin-block-start:var(--space-5)}.feed-section h3{margin-block-end:var(--space-2)}.form-card{max-width:560px}.redeem-modal{display:grid;gap:var(--space-3)}.redeem-reward{margin:0}.slide-confirm{position:relative;block-size:56px;border-radius:999px;background:var(--color-surface-2);border:1px solid var(--color-border);overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:none;margin-block-start:var(--space-2)}.slide-confirm.is-disabled{opacity:.6}.slide-confirm-fill{position:absolute;inset-block:0;inset-inline-start:0;border-radius:999px;background:var(--gradient-brand);transition:inline-size var(--duration-slow) var(--ease-out)}.slide-confirm-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-weight:700;color:var(--color-primary-strong);pointer-events:none;transition:opacity var(--duration-slow) var(--ease-out)}.slide-confirm-thumb{position:absolute;inset-block:4px;inset-inline-start:4px;inline-size:48px;display:grid;place-items:center;border-radius:50%;background:var(--color-primary);color:var(--color-on-primary);cursor:grab;touch-action:none;transition:transform var(--duration-slow) var(--ease-out)}.slide-confirm.is-dragging .slide-confirm-fill,.slide-confirm.is-dragging .slide-confirm-label,.slide-confirm.is-dragging .slide-confirm-thumb{transition:none}.slide-confirm.is-done .slide-confirm-thumb{cursor:default}.redeem-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:var(--space-4);background:color-mix(in srgb,var(--color-bg) 80%,black);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);perspective:900px}.redeem-sheet{inline-size:min(420px,100%);display:grid;gap:var(--space-4);text-align:center}.redeem-celebrate h2{margin-block:var(--space-2) var(--space-1)}.redeem-burst{display:inline-grid;place-items:center;inline-size:56px;block-size:56px;border-radius:50%;background:var(--gradient-brand);color:var(--color-on-primary)}.redeem-holo{position:relative;overflow:hidden;isolation:isolate;padding:var(--space-6) var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:radial-gradient(120% 90% at 50% 0%,#1a2330,#0c1016 60%,#070a0e);border:1px solid color-mix(in srgb,#5bd0c4 22%,transparent);box-shadow:0 18px 50px -20px #000000b3,inset 0 1px #ffffff0f;transform:rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));transform-style:preserve-3d;transition:transform 90ms ease-out;display:grid;gap:var(--space-3)}.redeem-holo-dots{position:absolute;top:0;right:0;bottom:0;left:0;inline-size:100%;block-size:100%;z-index:0;pointer-events:none}.redeem-holo-content{position:relative;z-index:1;display:grid;gap:var(--space-3)}.redeem-holo-reward{margin:0;font-weight:700;font-size:var(--text-lg);color:#f3f7fb;text-shadow:0 1px 8px rgba(0,0,0,.5)}.redeem-holo .ui-code-box{color:#fff;background:#ffffff0f;border-color:#ffffff29}.redeem-holo .ui-code-timer{color:#ffffffb8}.redeem-live-hint{font-size:var(--text-sm)}@media (prefers-reduced-motion: reduce){.redeem-holo{transition:none;transform:none}}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-4);margin-block:var(--space-4) var(--space-5)}.kpi{display:grid;gap:var(--space-1)}.kpi-num{font-size:28px;font-weight:800;color:var(--color-text);font-variant-numeric:tabular-nums}.kpi-num.kpi-ok{color:var(--color-success)}.kpi-lbl{color:var(--color-text-muted);font-size:var(--text-sm)}.callout{border-color:var(--color-secondary)}.callout p{margin-block:var(--space-2) var(--space-3)}.biz-switcher{margin-block-end:var(--space-4)}.biz-switcher-row{display:flex;align-items:flex-end;gap:var(--space-3)}.biz-switcher-row>:first-child{flex:1;min-width:0}.biz-switcher-row .ui-field{margin-block-end:0}.biz-cards-wrap{margin-block-end:var(--space-5)}.biz-cards-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-block-end:var(--space-3)}.biz-cards-title{font-size:var(--text-lg);font-weight:700;margin:0}.biz-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:var(--space-3)}.biz-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);cursor:pointer;border:1px solid var(--color-border);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.biz-card:hover{border-color:var(--color-primary-strong)}.biz-card.is-active{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary) inset}.biz-card-actions{position:absolute;inset-block-start:var(--space-2);inset-inline-end:var(--space-2);display:flex;gap:var(--space-1)}.biz-card-btn{display:inline-flex;align-items:center;justify-content:center;inline-size:30px;block-size:30px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer}.biz-card-btn:hover{border-color:var(--color-primary-strong);color:var(--color-primary-strong)}.biz-card-btn-danger:hover{border-color:var(--color-danger);color:var(--color-danger)}.biz-card-logo{display:inline-flex;align-items:center;justify-content:center;inline-size:40px;block-size:40px;border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-primary-strong);overflow:hidden;margin-block-end:var(--space-1)}.biz-card-logo img{inline-size:100%;block-size:100%;object-fit:cover}.biz-card-name{font-size:var(--text-base);padding-inline-end:64px;word-break:break-word}.biz-card-status{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--color-text-muted)}.biz-card-status.ok{color:var(--color-success)}.biz-card-code{font-family:var(--font-mono, monospace);font-size:var(--text-xs);letter-spacing:.04em;color:var(--color-text-muted)}.biz-card-managing{margin-block-start:var(--space-1);font-size:var(--text-xs);font-weight:700;color:var(--color-primary-strong)}.biz-edit-hint{font-size:var(--text-sm);margin-block-start:var(--space-2)}.photo-add{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);cursor:pointer}.photo-add:hover{border-color:var(--color-primary-strong);color:var(--color-primary-strong)}.photo-preview{position:relative;inline-size:100%;max-inline-size:240px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.photo-preview-img{display:block;inline-size:100%;block-size:auto;max-block-size:180px;object-fit:cover}.photo-remove{position:absolute;inset-block-start:var(--space-2);inset-inline-end:var(--space-2);display:inline-flex;align-items:center;justify-content:center;inline-size:24px;block-size:24px;border:none;border-radius:50%;background:#0009;color:#fff;cursor:pointer}.row-thumb{inline-size:56px;block-size:56px;border-radius:var(--radius-md);object-fit:cover;flex-shrink:0}.feed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.feed-card{display:flex;flex-direction:column}.feed-banner{inline-size:100%;block-size:150px;object-fit:cover;display:block}.feed-body{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4)}.feed-head{display:flex;align-items:center;gap:var(--space-2);margin-block-end:var(--space-1)}.feed-logo{display:inline-flex;align-items:center;justify-content:center;inline-size:28px;block-size:28px;border-radius:50%;background:var(--color-surface-2);color:var(--color-primary-strong);overflow:hidden;flex-shrink:0}.feed-logo img{inline-size:100%;block-size:100%;object-fit:cover}.feed-store{font-weight:600;font-size:var(--text-sm);color:var(--color-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-tag{font-size:var(--text-xs);font-weight:600;color:var(--color-primary-strong);background:var(--color-primary-soft);padding:2px var(--space-2);border-radius:var(--radius-full);flex-shrink:0}.feed-title{font-size:var(--text-base)}.feed-text{margin:0;font-size:var(--text-sm)}.feed-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1) var(--space-3);margin-block-start:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.feed-meta-link,.feed-meta-item{display:inline-flex;align-items:center;gap:var(--space-1)}.feed-meta-link{color:var(--color-primary-strong);font-weight:600;text-decoration:none}.feed-meta-link:hover{text-decoration:underline}.feed-foot{display:flex;align-items:center;gap:var(--space-4);margin-block-start:var(--space-3);padding-block-start:var(--space-2);border-block-start:1px solid var(--color-border)}.feed-like{display:inline-flex;align-items:center;gap:var(--space-1);border:none;background:none;cursor:pointer;font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);padding:var(--space-1) 0;transition:color var(--duration-fast) var(--ease-out)}.feed-like:hover,.feed-like.is-liked{color:var(--color-primary-strong)}.feed-like.is-liked svg{fill:var(--color-primary-strong);animation:ui-pop-bounce var(--duration-slow) var(--ease-out)}.feed-views{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.feed-foot-discovery{font-size:var(--text-sm)}.feed-distance{color:var(--color-primary-strong);font-weight:600}.feed-nearby{margin-block-start:var(--space-6)}.feed-nearby-head{margin-block-end:var(--space-1)}.feed-locate{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-5);color:var(--color-text-muted)}.feed-locate span{flex:1;min-width:12ch}.card-hours{margin-block-start:var(--space-2);font-size:var(--text-sm)}.card-hours>summary{display:inline-flex;align-items:center;gap:var(--space-1);cursor:pointer;color:var(--color-text-muted);list-style:none}.card-hours>summary::-webkit-details-marker{display:none}.card-hours-week{list-style:none;margin:var(--space-2) 0 0;padding:0;display:flex;flex-direction:column;gap:2px}.card-hours-week li{display:flex;justify-content:space-between;gap:var(--space-4);color:var(--color-text-muted)}.card-hours-week li.is-today{color:var(--color-text);font-weight:600}.location-hint{font-size:var(--text-sm);margin-block-end:var(--space-2)}.location-picker-map{block-size:240px;inline-size:100%;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border);z-index:0}.location-picker-bar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-2)}.location-picker-coords{font-family:monospace;font-size:var(--text-xs)}.tab-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.tab-head h1{margin-block-end:var(--space-1)}.ai-chat{display:flex;flex-direction:column;gap:var(--space-2);max-height:40vh;overflow-y:auto;margin-block-end:var(--space-3)}.ai-msg{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);max-width:85%;white-space:pre-wrap;word-break:break-word}.ai-msg-user{align-self:flex-end;background:var(--color-primary);color:var(--color-on-primary)}.ai-msg-ai{align-self:flex-start;background:var(--color-surface-2);color:var(--color-text)}.ai-msg-attach{display:flex;align-items:center;gap:var(--space-1);margin-block-start:var(--space-1);font-size:var(--text-xs);opacity:.85}.ai-compose{display:flex;flex-direction:column;gap:var(--space-2)}.ai-compose .ui-field{margin-block-end:0}.ai-compose-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.ai-transparency{margin-block-start:var(--space-3);font-size:var(--text-xs);line-height:1.5}.ai-attach-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);cursor:pointer;min-height:44px}.ai-attach-btn:hover{border-color:var(--color-primary-strong);color:var(--color-primary-strong)}.ai-attach-btn.is-disabled{opacity:.5;pointer-events:none}.ai-thumbs{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ai-thumb{position:relative;inline-size:64px;block-size:64px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.ai-thumb img{inline-size:100%;block-size:100%;object-fit:cover}.ai-thumb-x{position:absolute;inset-block-start:2px;inset-inline-end:2px;display:inline-flex;align-items:center;justify-content:center;inline-size:20px;block-size:20px;border:none;border-radius:50%;background:#0009;color:#fff;cursor:pointer}.verify-code-input{font-size:var(--text-xl);font-weight:700;letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}.toolbar-row{display:flex;justify-content:space-between;align-items:end;gap:var(--space-3);flex-wrap:wrap;margin-block-end:var(--space-4)}.toolbar-row p{margin:0}.toolbar-row .ui-field{margin-block-end:0}@media (max-width: 560px){.toolbar-row{flex-direction:column;align-items:stretch}.toolbar-row .row{align-items:end}.toolbar-row .ui-field{flex:1}}.check-row{display:flex;align-items:center;gap:var(--space-2);min-height:var(--touch-target);cursor:pointer}.check-row input[type=checkbox]{inline-size:18px;block-size:18px;accent-color:var(--color-primary)}.hero{padding-block:90px 70px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset-block-start:-40%;inset-inline-end:10%;width:600px;height:600px;background:radial-gradient(circle,color-mix(in srgb,var(--color-primary) 22%,transparent),transparent 60%);filter:blur(10px);pointer-events:none;animation:heroDrift 22s ease-in-out infinite alternate}.hero:after{content:"";position:absolute;inset-block-end:-50%;inset-inline-start:-10%;width:500px;height:500px;background:radial-gradient(circle,color-mix(in srgb,var(--color-accent) 14%,transparent),transparent 60%);filter:blur(10px);pointer-events:none;animation:heroDrift 26s ease-in-out infinite alternate-reverse}@keyframes heroDrift{0%{transform:translateZ(0)}to{transform:translate3d(-28px,22px,0)}}.audience-img{inline-size:calc(100% + 2 * var(--space-6));margin-inline:calc(-1 * var(--space-6));margin-block-start:calc(-1 * var(--space-6));margin-block-end:var(--space-4);aspect-ratio:5 / 3;object-fit:cover;border-start-start-radius:var(--radius-lg);border-start-end-radius:var(--radius-lg)}.hero-grid{position:relative;display:grid;gap:var(--space-7);align-items:center}.story{padding-block:var(--space-4)}.story-pin{position:relative;block-size:calc(100dvh - var(--story-nav-h, 16px) - 16px);overflow:hidden;border-radius:var(--radius-lg);background:#140d0b;box-shadow:var(--shadow-lg)}.story-fallback,.story-canvas{position:absolute;top:0;right:0;bottom:0;left:0;inline-size:100%;block-size:100%}.story-fallback{object-fit:cover}.story-canvas{display:none}.story.is-live .story-canvas{display:block}.story.is-live .story-fallback{display:none}.story-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(10,6,5,.82) 0%,rgba(10,6,5,.25) 38%,transparent 65%);pointer-events:none}.story-copy{position:absolute;inset-inline:0;inset-block-end:0;padding:var(--space-6) clamp(var(--space-6),5vw,var(--space-8));padding-block-end:calc(var(--space-6) + env(safe-area-inset-bottom));max-inline-size:640px;color:#fff;text-align:start}.story-eyebrow{display:inline-block;font-size:var(--text-sm);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-secondary);margin-block-end:var(--space-2)}.story-copy h2{margin:0 0 var(--space-2);font-size:var(--text-title);line-height:1.15;color:#fff}.story-copy p{margin:0;color:#ffffffc7;font-size:var(--text-base)}.hero h1{font-size:var(--text-display);letter-spacing:-.03em;max-width:16ch}.hero .lead{font-size:clamp(17px,2.4vw,21px);max-width:52ch}.hero-card{display:none;max-width:360px;transform:rotate(2deg)}.hero-card .ui-card{box-shadow:var(--shadow-lg)}.hero-card-demo{position:relative}.hero-card-toast{position:absolute;inset-inline:var(--space-3);inset-block-end:var(--space-3);display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--gradient-brand);color:var(--color-on-primary);font-weight:700;box-shadow:var(--shadow-md);animation:hero-toast-in var(--duration-slow) var(--ease-out)}@keyframes hero-toast-in{0%{opacity:0;translate:0 14px;scale:.94}}.hero-burst{position:absolute;top:50%;right:50%;bottom:50%;left:50%;inline-size:0;block-size:0;z-index:3;pointer-events:none}.hero-burst-dot{position:absolute;inline-size:9px;block-size:9px;margin:-4.5px 0 0 -4.5px;border-radius:var(--radius-full);background:var(--color-primary);opacity:0;animation:hero-burst-fly .95s var(--ease-out) var(--dl, 0ms) both}.hero-burst-dot:nth-child(3n){background:var(--color-secondary)}.hero-burst-dot:nth-child(4n){background:var(--color-accent)}.hero-burst-dot:nth-child(5n){background:var(--color-star)}@keyframes hero-burst-fly{0%{opacity:0;transform:rotate(var(--a)) translateY(-12px) scale(.6)}15%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateY(-160px) scale(1)}}.hero-gift{position:absolute;inset-inline-start:50%;inset-block-start:-6%;translate:-50% -50%;z-index:3;display:grid;place-items:center;inline-size:84px;block-size:84px;border-radius:var(--radius-full);background:var(--gradient-brand);color:var(--color-on-primary);box-shadow:var(--shadow-lg),0 0 0 4px var(--color-surface);animation:hero-gift-pop .6s var(--ease-out),hero-gift-float 2.2s ease-in-out .6s infinite alternate}@keyframes hero-gift-pop{0%{scale:0;rotate:-16deg}60%{scale:1.12;rotate:6deg}to{scale:1;rotate:0deg}}@keyframes hero-gift-float{0%{translate:-50% -50%}to{translate:-50% -60%}}.hero-card-demo.is-redeemed .loyalty-card{animation:hero-card-pop .5s var(--ease-out)}@keyframes hero-card-pop{40%{scale:1.04}}.hero-cue{position:absolute;z-index:2;pointer-events:none;display:grid;place-items:center}.hero-cue-ring{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:var(--radius-full);border:2px solid var(--color-primary);opacity:0;animation:hero-cue-ping 1.8s var(--ease-out) infinite}.hero-cue-ring-2{animation-delay:.6s}@keyframes hero-cue-ping{0%{scale:.65;opacity:.9}70%{scale:1.5;opacity:0}to{opacity:0}}.hero-cue-pointer{color:var(--color-primary-strong);filter:drop-shadow(0 1px 2px rgba(255,255,255,.9));animation:hero-cue-tap 1.8s ease-in-out infinite}@keyframes hero-cue-tap{0%,to{translate:5px 8px;scale:1}50%{translate:1px 2px;scale:.88}}.hero-cue.is-swipe{overflow:hidden;border-radius:var(--radius-full)}.hero-cue.is-swipe .hero-cue-ring{display:none}.hero-cue.is-swipe:before{content:"";position:absolute;inset-block:0;inline-size:38%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);animation:hero-cue-sweep 1.7s ease-in-out infinite}@keyframes hero-cue-sweep{0%{translate:-110% 0}to{translate:300% 0}}.hero-cue.is-swipe .hero-cue-pointer{position:absolute;inset-block-start:50%;margin-block-start:-6px;animation:hero-cue-slide 1.7s ease-in-out infinite}@keyframes hero-cue-slide{0%{inset-inline-start:14%;opacity:0}20%{opacity:1}80%{inset-inline-start:72%;opacity:1}to{inset-inline-start:76%;opacity:0}}@media (prefers-reduced-motion: reduce){.hero-card-toast,.hero-cue-ring,.hero-cue-pointer,.hero-cue.is-swipe .hero-cue-pointer,.hero-card-demo.is-redeemed .loyalty-card,.hero-gift{animation:none}.hero-burst{display:none}.hero-cue.is-swipe:before{display:none}.hero-cue-ring{opacity:.5;scale:1.2}.hero-cue-ring-2{display:none}.hero-cue.is-swipe .hero-cue-pointer{inset-inline-start:45%;opacity:.8}}@media (min-width: 1024px){.hero-grid{grid-template-columns:1.2fr .8fr}.hero-card{display:block;justify-self:center}}.pill{display:inline-block;padding:var(--space-1) var(--space-4);border-radius:var(--radius-full);background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-accent-strong);font-size:var(--text-sm);font-weight:600;margin-block-end:var(--space-4)}.cta-row{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-block-start:var(--space-5)}.section{padding-block:70px}.section h2{font-size:var(--text-title)}.section .sub{max-width:56ch;margin-block-end:var(--space-6)}.split{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.audience h3{font-size:var(--text-xl)}.tag{display:inline-block;font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary-strong);margin-block-end:var(--space-2)}.tag-accent{color:var(--color-accent-strong)}#features.section,#proof.section{background:var(--color-surface)}.check-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.check-list li{display:flex;align-items:flex-start;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm)}.check-list li svg{flex-shrink:0;margin-block-start:2px;color:var(--color-success)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.feature-ico{display:grid;place-items:center;inline-size:44px;block-size:44px;border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-primary-strong);margin-block-end:var(--space-3)}.feature-card:nth-child(2n) .feature-ico,.step:nth-child(2n) .step-ico{background:color-mix(in srgb,var(--color-accent) 16%,var(--color-surface));color:var(--color-accent-strong)}.feature-card h4{margin-block-end:var(--space-1);font-size:17px}.feature-card p{margin:0;font-size:var(--text-sm)}.demo-wrap{margin:0 auto var(--space-6);max-inline-size:760px}.demo-frame{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:16 / 9;background:#140d0b}.demo-frame video{display:block;inline-size:100%;block-size:100%;object-fit:cover}.demo-toggle{position:absolute;inset-inline-end:var(--space-3);inset-block-end:var(--space-3);inline-size:var(--touch-target);block-size:var(--touch-target);display:grid;place-items:center;border:none;border-radius:var(--radius-full);background:#0a06058c;color:#fff;cursor:pointer;transition:background var(--duration-base) var(--ease-out)}.demo-toggle:hover{background:#0a0605bf}.demo-toggle:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.demo-caption{margin:var(--space-3) auto 0;max-inline-size:560px;text-align:center;color:var(--color-text-muted);font-size:var(--text-sm)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.step{position:relative;padding-block-start:var(--space-5)!important}.step-num{position:absolute;inset-block-start:-14px;inset-inline-start:var(--space-4);display:grid;place-items:center;inline-size:30px;block-size:30px;border-radius:var(--radius-full);background:var(--gradient-brand);color:var(--color-on-primary);font-weight:800}.step p{margin:0;font-size:var(--text-sm)}.stats-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);margin-block-end:var(--space-6)}.stat-block{display:grid;justify-items:center;gap:var(--space-1);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-surface-2)}.stat-value{font-size:var(--text-2xl);font-weight:800;color:var(--color-primary-strong);font-variant-numeric:tabular-nums}.stat-label{font-size:var(--text-sm);color:var(--color-text-muted)}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.testimonial p{font-size:var(--text-sm);color:var(--color-text)}.testimonial-quote{color:var(--color-accent-strong);margin-block-end:var(--space-2)}.testimonial-by{display:grid;font-size:var(--text-sm)}.cta-band{text-align:center;padding:var(--space-7) var(--space-5);border-radius:var(--radius-lg);background:radial-gradient(560px 320px at 85% 0%,color-mix(in srgb,var(--color-primary) 30%,transparent),transparent 65%),radial-gradient(480px 280px at 8% 100%,color-mix(in srgb,var(--color-secondary) 20%,transparent),transparent 65%),#140d0b;color:#fff}.cta-band h2{font-size:var(--text-title);color:#fff}.cta-band p{color:#fffc;max-width:52ch;margin-inline:auto}.cta-band .cta-row{justify-content:center}.cta-band-ghost{color:#fff;border-color:#fff6}.site-footer{border-block-start:1px solid var(--color-border);padding-block:var(--space-6);color:var(--color-text-muted);font-size:var(--text-sm)}.site-footer a{min-height:var(--touch-target);display:inline-flex;align-items:center}.site-footer a:hover{color:var(--color-text)}@media (max-width: 900px){.split,.testimonial-grid{grid-template-columns:1fr}.feature-grid,.steps{grid-template-columns:1fr 1fr}.steps{gap:var(--space-5)}}@media (max-width: 560px){.feature-grid,.steps,.stats-strip{grid-template-columns:1fr}.section{padding-block:48px}.hero{padding-block:56px 40px}.cta-band{padding-inline:var(--space-4)}}.site-nav-links>a{gap:var(--space-1)}.nav-signin{color:var(--color-text-muted);font-weight:500;min-height:var(--touch-target);display:inline-flex;align-items:center;white-space:nowrap;gap:var(--space-1)}.nav-signin:hover{color:var(--color-text)}.step-ico{display:grid;place-items:center;inline-size:48px;block-size:48px;border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-primary-strong);margin-block:var(--space-3) var(--space-2)}.stamp-reveal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:var(--space-4);padding-block-end:calc(var(--space-4) + env(safe-area-inset-bottom));background:color-mix(in srgb,#1a0f0a 62%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .22s ease}.stamp-reveal-backdrop.is-in{opacity:1}.stamp-reveal{inline-size:100%;max-inline-size:360px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6);text-align:center;transform:scale(.92) translateY(10px);opacity:0;transition:transform .34s cubic-bezier(.22,1.2,.36,1),opacity .24s ease}.stamp-reveal.is-in{transform:none;opacity:1}.stamp-reveal-head{display:flex;align-items:center;gap:var(--space-3);justify-content:center;text-align:start}.stamp-reveal-logo{inline-size:44px;block-size:44px;border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-primary-strong);display:grid;place-items:center;overflow:hidden;flex:none}.stamp-reveal-logo img{inline-size:100%;block-size:100%;object-fit:cover}.stamp-reveal-names{display:flex;flex-direction:column;min-inline-size:0}.stamp-reveal-names strong{font-size:var(--text-lg)}.stamp-reveal-stage{position:relative;block-size:118px;display:grid;place-items:center;margin-block:var(--space-3)}.stamp-reveal-seal{position:relative;z-index:2;inline-size:84px;block-size:84px;border-radius:var(--radius-full);background:var(--reveal-accent, var(--color-primary));color:var(--color-on-primary);display:grid;place-items:center;box-shadow:0 8px 20px color-mix(in srgb,var(--reveal-accent, var(--color-primary)) 45%,transparent);animation:stampThunk .5s cubic-bezier(.3,1.5,.5,1) .14s both}.stamp-reveal-ripple{position:absolute;top:50%;right:50%;bottom:50%;left:50%;z-index:1;inline-size:84px;block-size:84px;margin:-42px 0 0 -42px;border-radius:var(--radius-full);border:2px solid var(--reveal-accent, var(--color-primary));animation:stampRipple .7s ease-out .2s both}.stamp-reveal-burst{position:absolute;top:50%;right:50%;bottom:50%;left:50%;z-index:1;inline-size:0;block-size:0}.stamp-reveal-dot{position:absolute;inline-size:8px;block-size:8px;margin:-4px 0 0 -4px;border-radius:var(--radius-full);background:var(--reveal-accent, var(--color-primary));opacity:0;animation:stampDot .62s ease-out .22s both;transform:rotate(var(--a)) translateY(-12px)}.stamp-reveal-dot:nth-child(2n){background:var(--color-success)}.stamp-reveal-gain{display:flex;align-items:baseline;justify-content:center;gap:var(--space-2)}.stamp-reveal-plus{font-size:var(--text-2xl);font-weight:700;color:var(--color-primary-strong);font-variant-numeric:tabular-nums}.stamp-reveal-progress{display:flex;align-items:center;gap:var(--space-3);margin-block:var(--space-4)}.stamp-reveal-bar{flex:1;block-size:8px;border-radius:var(--radius-full);background:var(--color-surface-2);overflow:hidden}.stamp-reveal-bar-fill{display:block;block-size:100%;border-radius:var(--radius-full);background:var(--reveal-accent, var(--color-primary));inline-size:0;transition:inline-size .7s cubic-bezier(.22,1,.36,1) .1s}.stamp-reveal-count{font-variant-numeric:tabular-nums;color:var(--color-text-muted);font-size:var(--text-sm);white-space:nowrap}.stamp-reveal-remain{font-size:var(--text-sm);margin-block:0}.stamp-reveal-reward{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-success-bg);color:var(--color-success);font-weight:600;font-size:var(--text-sm)}.stamp-reveal-more{list-style:none;margin:var(--space-3) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.stamp-reveal-more li{display:flex;align-items:center;gap:var(--space-2);justify-content:center;color:var(--color-text-muted);font-size:var(--text-sm)}@keyframes stampThunk{0%{transform:scale(1.7) rotate(-14deg);opacity:0}60%{transform:scale(.9) rotate(4deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes stampRipple{0%{transform:scale(.35);opacity:.65}to{transform:scale(2.6);opacity:0}}@keyframes stampDot{0%{transform:rotate(var(--a)) translateY(-12px) scale(1);opacity:0}25%{opacity:1}to{transform:rotate(var(--a)) translateY(-66px) scale(.3);opacity:0}}@media (prefers-reduced-motion: reduce){.stamp-reveal-backdrop,.stamp-reveal{transition:none}.stamp-reveal-seal,.stamp-reveal-bar-fill{animation:none;transition:none}}.receipt-adding{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-weight:600}.rewards-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;justify-content:space-between;margin-block:var(--space-4) var(--space-4)}.seg{display:inline-flex;gap:2px;padding:3px;border-radius:var(--radius-full);background:var(--color-surface-2);border:1px solid var(--color-border)}.seg-btn{display:inline-flex;align-items:center;gap:6px;border:none;background:none;font:inherit;font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);cursor:pointer;padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);min-block-size:36px;transition:background .15s ease,color .15s ease}.seg-btn:hover{color:var(--color-text)}.seg-btn.is-on{background:var(--color-surface);color:var(--color-primary-strong);box-shadow:var(--shadow-sm)}.seg-count{font-variant-numeric:tabular-nums;font-size:var(--text-xs);padding-inline:6px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-primary) 16%,transparent);color:var(--color-primary-strong)}.seg-btn:not(.is-on) .seg-count{background:transparent;color:var(--color-text-muted)}@media (max-width: 560px){.rewards-toolbar{gap:var(--space-2)}.seg,.seg-btn{flex:1;justify-content:center}}.welcome{--w-bg0: #140d0b;--w-bg1: #2c1714;--w-ink: #ffffff;--w-ink-dim: rgba(255, 255, 255, .66);--w-line: rgba(255, 255, 255, .12);--w-shopper: var(--color-primary);--w-business: #38b2ac;position:fixed;top:0;left:0;inline-size:100vw;block-size:100dvh;min-block-size:100dvh;z-index:60;overflow-x:hidden;overflow-y:auto;display:grid;place-items:center;padding:clamp(var(--space-4),4vw,var(--space-6));padding-block-end:calc(clamp(var(--space-4),4vw,var(--space-6)) + env(safe-area-inset-bottom));background:radial-gradient(130% 100% at 50% 0%,var(--w-bg1),var(--w-bg0) 60%);color:var(--w-ink);text-align:center}.welcome-video{position:absolute;top:0;right:0;bottom:0;left:0;inline-size:100%;block-size:100%;object-fit:cover;opacity:.55;animation:welcomeVideoIn 1.2s ease-out both;pointer-events:none}.welcome-glow{position:absolute;inset:-25% -25% auto -25%;block-size:80%;background:radial-gradient(46% 60% at 50% 20%,color-mix(in srgb,var(--color-primary) 42%,transparent),transparent 70%);filter:blur(24px);animation:welcomeGlow 9s ease-in-out infinite alternate;pointer-events:none}.welcome-particles{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.welcome-particle{position:absolute;inset-block-end:-12px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-primary) 72%,#fff 10%);opacity:0;animation-name:welcomeFloat;animation-timing-function:ease-in;animation-iteration-count:infinite}.welcome-intro{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-shadow:0 1px 14px rgba(10,6,5,.6)}.welcome-brand{font-size:clamp(3rem,12vw,6rem);font-weight:800;letter-spacing:-.03em;line-height:1;animation:welcomeRise .9s cubic-bezier(.22,1,.36,1) both}.welcome-brand .brand-dot,.welcome-choose-brand .brand-dot{color:var(--color-primary)}.welcome-motto{font-size:clamp(var(--text-lg),2.6vw,var(--text-2xl));color:var(--w-ink-dim);margin:0;animation:welcomeRise .9s ease-out .35s both}.welcome-progress{inline-size:min(280px,62vw);block-size:3px;border-radius:var(--radius-full);background:var(--w-line);overflow:hidden;margin-block-start:var(--space-2)}.welcome-progress-fill{display:block;block-size:100%;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--color-primary),#ffd0a6);transform-origin:left;transform:scaleX(0);animation:welcomeFill 3.8s linear .2s both}[dir=rtl] .welcome-progress-fill{transform-origin:right}.welcome-preparing{font-size:var(--text-sm);color:var(--w-ink-dim);margin:0;letter-spacing:.02em;animation:welcomeRise .9s ease-out .6s both}.welcome-skip{position:absolute;inset-block-end:calc(var(--space-5) + env(safe-area-inset-bottom));inset-inline-end:var(--space-5);z-index:2;min-block-size:var(--touch-target);padding-inline:var(--space-4);border:1px solid var(--w-line);border-radius:var(--radius-full);background:transparent;color:var(--w-ink-dim);font-size:var(--text-sm);font-weight:600;cursor:pointer;opacity:0;animation:welcomeSkipIn .4s ease-out 1.2s forwards;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.welcome-skip:hover{color:var(--w-ink);border-color:var(--w-ink-dim)}.welcome.is-leaving .welcome-intro,.welcome.is-leaving .welcome-skip,.welcome.is-leaving .welcome-video{animation:welcomeOut .35s var(--ease-in) forwards}.welcome-choose{position:relative;z-index:1;inline-size:100%;max-inline-size:1000px;display:flex;flex-direction:column;align-items:center;gap:var(--space-5);animation:welcomeRise .6s ease-out both}.welcome-choose-brand{font-size:clamp(1.6rem,5vw,2.2rem);font-weight:800;letter-spacing:-.02em}.welcome-choose-hint{font-size:clamp(var(--text-lg),3vw,var(--text-xl));color:var(--w-ink-dim);margin:0}.welcome-split{inline-size:100%;display:grid;grid-template-columns:1fr 1fr;gap:clamp(var(--space-3),2vw,var(--space-5))}.welcome-panel{--sq: var(--w-shopper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);min-block-size:min(46vh,420px);padding:clamp(var(--space-5),4vw,var(--space-6));border-radius:var(--radius-lg);border:1px solid var(--w-line);background:radial-gradient(120% 90% at 50% 0%,color-mix(in srgb,var(--sq) 20%,transparent),transparent 62%),#ffffff0a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--w-ink);cursor:pointer;text-align:center;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;animation:welcomeSquareIn .6s cubic-bezier(.22,1.1,.36,1) both}.welcome-panel.is-shopper{--sq: var(--w-shopper);animation-delay:.08s}.welcome-panel.is-business{--sq: var(--w-business);animation-delay:.18s}.welcome-panel:hover,.welcome-panel:focus-visible{transform:translateY(-6px);border-color:color-mix(in srgb,var(--sq) 65%,transparent);background:radial-gradient(120% 90% at 50% 0%,color-mix(in srgb,var(--sq) 34%,transparent),transparent 60%),#ffffff0d;box-shadow:0 22px 50px color-mix(in srgb,var(--sq) 32%,transparent);outline:none}.welcome-panel-ico{inline-size:76px;block-size:76px;border-radius:var(--radius-full);display:grid;place-items:center;background:color-mix(in srgb,var(--sq) 24%,transparent);color:var(--sq)}.welcome-panel strong{font-size:clamp(var(--text-xl),3vw,var(--text-2xl))}.welcome-panel-body{color:var(--w-ink-dim);font-size:var(--text-base);max-inline-size:24ch}.welcome-panel-cta{display:inline-flex;align-items:center;gap:6px;margin-block-start:var(--space-2);font-weight:700;color:var(--sq)}.welcome-learn{color:var(--w-ink-dim)!important;font-size:var(--text-sm);padding:var(--space-2)}.welcome-learn:hover{color:var(--w-ink)!important}@media (max-width: 640px){.welcome-split{grid-template-columns:1fr}.welcome-panel{min-block-size:0;padding-block:var(--space-5)}}@keyframes welcomeGlow{0%{transform:translateY(-3%) scale(1);opacity:.85}to{transform:translateY(3%) scale(1.12);opacity:1}}@keyframes welcomeFloat{0%{transform:translateY(0) scale(1);opacity:0}12%{opacity:.85}to{transform:translateY(-104vh) scale(.35);opacity:0}}@keyframes welcomeRise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes welcomeFill{to{transform:scaleX(1)}}@keyframes welcomeSquareIn{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:none}}@keyframes welcomeVideoIn{0%{opacity:0}to{opacity:.55}}@keyframes welcomeSkipIn{to{opacity:1}}@keyframes welcomeOut{to{opacity:0;transform:translateY(-10px)}}@media (prefers-reduced-motion: reduce){.welcome-glow,.welcome-brand,.welcome-motto,.welcome-preparing,.welcome-progress-fill,.welcome-choose,.welcome-panel,.welcome-skip,.welcome-video{animation:none}.welcome-progress-fill{transform:scaleX(1)}.welcome-skip{opacity:1}.welcome-video{display:none}}.svc-thumb{inline-size:56px;block-size:56px;border-radius:var(--radius-md);object-fit:cover;flex:none}.cal-toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-block:var(--space-4) var(--space-3)}.cal-nav{display:flex;align-items:center;gap:var(--space-2)}.cal-heading{font-size:var(--text-lg);margin-inline-start:auto}.cal-time{display:grid;grid-template-columns:52px 1fr;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface)}.cal-axis{border-inline-end:1px solid var(--color-border)}.cal-axis-h{block-size:40px;font-size:var(--text-xs);color:var(--color-text-muted);text-align:end;padding-inline-end:6px;transform:translateY(-6px)}.cal-axis{padding-block-start:40px}.cal-axis .cal-axis-h:first-child{margin-block-start:-40px}.cal-cols{display:grid;overflow-x:auto}.cal-cols-1{grid-template-columns:1fr}.cal-cols-7{grid-template-columns:repeat(7,minmax(88px,1fr))}.cal-col{border-inline-start:1px solid var(--color-border)}.cal-col:first-child{border-inline-start:none}.cal-col.is-today{background:color-mix(in srgb,var(--color-primary) 6%,transparent)}.cal-col-head{display:flex;flex-direction:column;align-items:center;padding-block:6px;border-block-end:1px solid var(--color-border);font-size:var(--text-xs);color:var(--color-text-muted);position:sticky;inset-block-start:0;background:inherit}.cal-col-head strong{font-size:var(--text-base);color:var(--color-text)}.cal-col-body{position:relative;block-size:480px}.cal-hour-line{block-size:40px;border-block-end:1px solid var(--color-border)}.cal-event{position:absolute;inset-inline:3px;border:none;border-radius:6px;background:var(--color-primary);color:var(--color-on-primary);padding:3px 6px;text-align:start;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;gap:1px;min-block-size:14px;box-shadow:var(--shadow-sm)}.cal-event-t{font-size:10px;opacity:.85;font-variant-numeric:tabular-nums}.cal-event-n{font-size:var(--text-xs);font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cal-pop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:var(--space-4);background:#0006}.cal-pop-card{inline-size:min(360px,92vw)}.cal-month{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.cal-month-dow{background:var(--color-surface-2);text-align:center;padding-block:6px;font-size:var(--text-xs);color:var(--color-text-muted);font-weight:600}.cal-month-cell{background:var(--color-surface);min-block-size:92px;border:none;text-align:start;padding:4px;display:flex;flex-direction:column;gap:2px;cursor:pointer;font:inherit}.cal-month-cell.is-out{background:var(--color-surface-2);color:var(--color-text-muted)}.cal-month-cell.is-today .cal-month-num{background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--radius-full);inline-size:22px;block-size:22px;display:grid;place-items:center}.cal-month-num{font-size:var(--text-sm);font-weight:600}.cal-month-chip{font-size:10px;background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary-strong);border-radius:4px;padding:1px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-month-more{font-size:10px;color:var(--color-text-muted)}.svc-picker{display:grid;gap:var(--space-2);margin-block:var(--space-3)}.svc-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;text-align:start;font:inherit;color:var(--color-text);transition:border-color .15s ease,background .15s ease}.svc-option:hover{border-color:var(--color-border-strong)}.svc-option.is-on{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.svc-option-img{inline-size:48px;block-size:48px;border-radius:var(--radius-md);object-fit:cover;flex:none}.svc-option-body{display:flex;flex-direction:column;gap:2px;min-inline-size:0}.svc-option-desc{font-size:var(--text-xs)}.svc-option-x{margin-inline-start:auto;color:var(--color-primary-strong)}.booking-summary{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2);margin-block:var(--space-3);font-weight:600}.biz-card{position:relative}.fav-remove{position:absolute;inset-block-start:6px;inset-inline-end:6px;inline-size:24px;block-size:24px;border-radius:var(--radius-full);border:none;background:var(--color-surface-2);color:var(--color-text-muted);cursor:pointer;display:grid;place-items:center}.fav-remove:hover{background:var(--color-danger-bg, var(--color-surface-2));color:var(--color-danger)}.bk-layout{display:grid;grid-template-columns:minmax(280px,340px) 1fr;gap:var(--space-5);margin-block:var(--space-3)}.bk-panel{min-inline-size:0}.bk-cal{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-3)}.bk-cal-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-block-end:var(--space-2)}.bk-cal-head strong{font-size:var(--text-base)}.bk-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.bk-cal-dow{text-align:center;font-size:var(--text-xs);color:var(--color-text-muted);font-weight:600;padding-block:4px}.bk-cal-day{aspect-ratio:1 / 1;border:none;background:none;border-radius:var(--radius-md);font:inherit;font-size:var(--text-sm);color:var(--color-text);cursor:pointer;display:grid;place-items:center;transition:background .12s ease,color .12s ease}.bk-cal-day:hover:not(:disabled){background:var(--color-surface-2)}.bk-cal-day:disabled{color:color-mix(in srgb,var(--color-text-muted) 45%,transparent);cursor:default}.bk-cal-day.is-out{color:color-mix(in srgb,var(--color-text-muted) 55%,transparent)}.bk-cal-day.is-today{box-shadow:inset 0 0 0 1px var(--color-border-strong)}.bk-cal-day.is-sel,.bk-cal-day.is-sel:hover{background:var(--color-primary);color:var(--color-on-primary);font-weight:700;box-shadow:none}.bk-slots{display:flex;flex-direction:column;gap:var(--space-4)}.bk-slot-group{display:flex;flex-direction:column;gap:var(--space-2)}.bk-slot-period{font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.bk-slot-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:var(--space-2)}.bk-slot{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.bk-slot:hover{border-color:var(--color-primary-strong);color:var(--color-primary-strong)}.bk-slot.is-sel{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary)}.bk-slots-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-block-size:160px;color:var(--color-text-muted);border:1px dashed var(--color-border);border-radius:var(--radius-lg);text-align:center;padding:var(--space-4)}.bk-confirm-bar{position:sticky;inset-block-end:calc(var(--space-3) + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-3) var(--space-4);margin-block-start:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-primary);box-shadow:var(--shadow-lg)}.bk-confirm-info{display:flex;flex-direction:column;gap:2px}.bk-confirm-info span{color:var(--color-text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}@media (max-width: 760px){.bk-layout{grid-template-columns:1fr;gap:var(--space-4)}}.vacancy-inputs{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-2)}.vacancy-inputs .ui-field{margin-block-end:0}.vacancy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:var(--space-2);margin-block-start:var(--space-2)}.vacancy-choice{display:flex;flex-direction:column;gap:2px;align-items:flex-start;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;text-align:start;transition:border-color .12s ease,background .12s ease}.vacancy-choice:hover:not(:disabled){border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,transparent)}.vacancy-choice.is-taken{opacity:.5;cursor:not-allowed}.vacancy-choice.is-taken .muted{color:var(--color-danger)}.loyalty-card-msg-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);margin-block-start:var(--space-3);inline-size:100%;min-block-size:36px;padding:var(--space-2) var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);font-size:var(--text-sm);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.loyalty-card-msg-btn:hover{color:var(--color-primary-strong);border-color:var(--color-primary);background:var(--color-primary-soft)}@media (pointer: coarse){.loyalty-card-msg-btn{min-block-size:44px}}.fb-row{animation:fb-msg-in var(--duration-base) var(--ease-out) var(--dl, 0ms) both}.fb-row-logo{display:grid;place-items:center;flex-shrink:0;inline-size:36px;block-size:36px;border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-text-muted);overflow:hidden}.fb-row-logo img{inline-size:100%;block-size:100%;object-fit:cover}.fb-row .row-sub{display:flex;align-items:center;gap:var(--space-2)}.fb-biz-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-2);max-block-size:240px;overflow-y:auto}.fb-biz-option{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);min-block-size:44px;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.fb-biz-option.is-on{border-color:var(--color-primary);background:var(--color-primary-soft)}.fb-biz-logo{display:grid;place-items:center;inline-size:32px;block-size:32px;border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-text-muted);overflow:hidden}.fb-biz-logo img{inline-size:100%;block-size:100%;object-fit:cover}.fb-biz-option.is-on .fb-biz-logo{animation:ui-pop-bounce var(--duration-slow) var(--ease-out)}.fb-biz-name{max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-biz-pill{display:flex;align-items:center;gap:var(--space-2);margin-block-end:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface-2);font-size:var(--text-sm)}.fb-chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.fb-chip{display:inline-flex;align-items:center;gap:var(--space-1);min-block-size:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.fb-chip.is-on{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.fb-chip.is-on svg{animation:ui-pop-bounce var(--duration-slow) var(--ease-out)}.fb-anon{display:flex;align-items:flex-start;gap:var(--space-2);margin-block-start:var(--space-3);cursor:pointer}.fb-anon input{margin-block-start:3px}.fb-anon-hint{display:block;font-size:var(--text-xs)}.fb-anon-note,.fb-reopen-hint{font-size:var(--text-sm)}.fb-thread-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-block:var(--space-2)}.fb-thread-rating{margin-block-end:var(--space-2)}.fb-msg{animation:fb-msg-in var(--duration-base) var(--ease-out) var(--dl, 0ms) both}.fb-rail{display:flex;align-items:flex-start;gap:var(--space-1);margin-block:var(--space-3)}.fb-rail-step{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.fb-rail-dot{position:relative;inline-size:12px;block-size:12px;border-radius:var(--radius-full);background:var(--color-surface-2);border:1px solid var(--color-border);transition:background-color var(--duration-slow) var(--ease-out),border-color var(--duration-slow) var(--ease-out);transition-delay:var(--d, 0ms)}.fb-rail.is-armed .fb-rail-dot.is-lit{background:var(--color-primary);border-color:transparent}.fb-rail.is-armed .fb-rail-dot.is-current:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;background:var(--color-primary);opacity:0;animation:fb-ping 1.4s ease-out .6s 2}.fb-rail-label{font-size:var(--text-xs);color:var(--color-text-muted)}.fb-rail-bar{flex:1;block-size:4px;margin-block-start:4px;border-radius:var(--radius-full);background:var(--color-surface-2);overflow:hidden}.fb-rail-bar-fill{display:block;block-size:100%;inline-size:0;border-radius:inherit;background:var(--color-primary);transition:inline-size .5s cubic-bezier(.22,1,.36,1);transition-delay:var(--d, 0ms)}.fb-rail.is-armed .fb-rail-bar-fill.is-filled{inline-size:100%}.fb-unread-dot{position:relative;display:inline-block;inline-size:8px;block-size:8px;border-radius:var(--radius-full);background:var(--color-primary);vertical-align:middle;margin-inline-end:var(--space-1)}.fb-unread-dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--color-primary);animation:fb-ping 1.6s ease-out 3}.fb-resolve-panel{margin-block-start:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-2);animation:fb-msg-in var(--duration-base) var(--ease-out) both}.star-rating.is-readonly{display:inline-flex;gap:2px}.star-rating.is-readonly .star{padding:0;cursor:default}.star-rating.is-readonly .star.is-on svg{animation:none}.fb-sent-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:var(--space-4);padding-block-end:calc(var(--space-4) + env(safe-area-inset-bottom));background:color-mix(in srgb,#1a0f0a 62%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.fb-sent-backdrop.is-in{opacity:1}.fb-sent{inline-size:100%;max-inline-size:360px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6);text-align:center;transform:scale(.92) translateY(10px);opacity:0;transition:transform var(--duration-slow) var(--ease-out),opacity var(--duration-slow) var(--ease-out)}.fb-sent.is-in{transform:none;opacity:1}.fb-sent-title{margin-block:var(--space-3) var(--space-1)}.fb-sent-stage{position:relative;display:grid;place-items:center;block-size:104px}.fb-sent-medallion{display:grid;place-items:center;inline-size:84px;block-size:84px;border-radius:var(--radius-full);background:var(--gradient-brand);color:var(--color-on-primary);box-shadow:var(--shadow-lg),0 0 0 4px var(--color-surface)}.fb-sent.is-in .fb-sent-medallion{animation:fb-sent-pop .6s var(--ease-out)}.fb-sent.is-in .fb-sent-medallion svg{animation:fb-sent-plane .7s var(--ease-out) .15s both}.fb-sent-ring{position:absolute;inline-size:84px;block-size:84px;border-radius:var(--radius-full);border:2px solid var(--color-primary);opacity:0}.fb-sent.is-in .fb-sent-ring{animation:fb-sent-ring .7s ease-out .2s both}.fb-sent .fb-rail{justify-content:center}@keyframes fb-msg-in{0%{opacity:0;transform:translateY(8px)}}@keyframes fb-ping{0%{transform:scale(.6);opacity:.8}to{transform:scale(2.1);opacity:0}}@keyframes fb-sent-pop{0%{scale:0;rotate:-14deg}60%{scale:1.12;rotate:5deg}to{scale:1;rotate:0deg}}@keyframes fb-sent-plane{0%{transform:translate(-6px,6px) rotate(-18deg);opacity:0}60%{transform:translate(2px,-3px) rotate(4deg);opacity:1}to{transform:translate(0) rotate(0)}}@keyframes fb-sent-ring{0%{transform:scale(.4);opacity:.6}to{transform:scale(2.4);opacity:0}}@media (prefers-reduced-motion: reduce){.fb-row,.fb-msg,.fb-chip.is-on svg,.fb-biz-option.is-on .fb-biz-logo,.fb-resolve-panel,.fb-sent.is-in .fb-sent-medallion,.fb-sent.is-in .fb-sent-medallion svg{animation:none}.fb-rail-dot,.fb-rail-bar-fill,.fb-sent-backdrop,.fb-sent{transition:none}.fb-unread-dot:after,.fb-rail.is-armed .fb-rail-dot.is-current:after,.fb-sent.is-in .fb-sent-ring{animation:none;opacity:0}}.pricing-toggle-wrap{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin-block:var(--space-5);text-align:center}.seg-lg .seg-btn{min-block-size:48px;font-size:var(--text-base);padding-inline:var(--space-5)}.price-card{max-inline-size:460px;margin-inline:auto;text-align:center;border:2px solid var(--color-border-strong);box-shadow:var(--shadow-md)}.price-swap{animation:price-swap-in var(--duration-slow) var(--ease-out)}.price-row{display:inline-flex;align-items:baseline;justify-content:center;gap:var(--space-3);margin-block:var(--space-3) var(--space-2)}.price-strike{color:var(--color-text-muted);font-size:var(--text-xl);font-weight:700;text-decoration:line-through;text-decoration-color:var(--color-danger);text-decoration-thickness:3px}.price-current{font-size:56px;line-height:1;font-weight:800;letter-spacing:-.02em}.price-period{color:var(--color-text-muted);font-size:var(--text-sm)}.price-extra{font-weight:600;margin-block-start:var(--space-2)}.price-extra-hint{font-size:var(--text-xs);color:var(--color-text-muted)}.price-guarantees{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2) var(--space-4);margin-block:var(--space-4)}.price-guarantee{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.price-guarantee svg{color:var(--color-success)}.price-flip-note{font-size:var(--text-xs);color:var(--color-text-muted);max-inline-size:44ch;margin-inline:auto;margin-block-start:var(--space-4)}.price-included-badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-full);background:var(--color-primary-soft);color:var(--color-primary-strong);font-size:var(--text-xs);font-weight:700}@keyframes price-swap-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.billing-status-card{display:flex;flex-direction:column;gap:var(--space-2)}.billing-status-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.billing-flip-callout{margin-block-start:var(--space-3);border-inline-start:3px solid var(--color-accent)}.billing-flip-ahead{font-size:var(--text-sm);margin-block-start:var(--space-2)}.billing-invoice{margin-block:var(--space-4)}.billing-line{display:flex;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-2);font-size:var(--text-sm)}.billing-line-amount{font-variant-numeric:tabular-nums;white-space:nowrap}.billing-line-total{border-block-start:1px solid var(--color-border);font-weight:700;font-size:var(--text-base)}.billing-actions{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.billing-hint{font-size:var(--text-sm)}.billing-guarantee{font-size:var(--text-xs);color:var(--color-text-muted)}.billing-allowance{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);margin-block-end:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2)}.billing-allowance-meter{font-size:var(--text-sm);font-weight:600}.admin-billing{margin-block-start:var(--space-4);padding-block-start:var(--space-3);border-block-start:1px solid var(--color-border)}@media (prefers-reduced-motion: reduce){.price-swap{animation:none}}.price-benefits,.price-guarantees-list{list-style:none;padding:0;margin-block:var(--space-4) 0;display:grid;gap:var(--space-2);text-align:start;max-inline-size:340px;margin-inline:auto}.price-benefits li,.price-guarantees-list li{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);animation:price-li-in var(--duration-base) var(--ease-out) var(--dl, 0ms) both}.price-benefits li svg{color:var(--color-primary-strong);flex-shrink:0;margin-block-start:2px}.price-guarantees-list{margin-block-start:var(--space-3);padding-block-start:var(--space-3);border-block-start:1px dashed var(--color-border);margin-block-end:var(--space-4)}.price-guarantees-list li{color:var(--color-text-muted)}.price-guarantees-list li svg{color:var(--color-success);flex-shrink:0;margin-block-start:2px}@keyframes price-li-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}[dir=rtl] .price-benefits li,[dir=rtl] .price-guarantees-list li{animation-name:price-li-in-rtl}@keyframes price-li-in-rtl{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:none}}.billing-included{margin-block-start:var(--space-3)}.billing-included-list{list-style:none;padding:0;margin-block:var(--space-2) 0;display:grid;gap:var(--space-2)}.billing-included-list li{display:flex;align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);animation:price-li-in var(--duration-base) var(--ease-out) var(--dl, 0ms) both}.billing-included-list li svg{color:var(--color-success);flex-shrink:0;margin-block-start:2px}.billing-choose-callout strong{display:inline-flex;align-items:center;gap:var(--space-2)}.billing-addon-note{font-size:var(--text-sm);margin-block-start:var(--space-2)}@media (prefers-reduced-motion: reduce){.price-benefits li,.price-guarantees-list li,.billing-included-list li{animation:none}}.billing-prepare-notice{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-block-end:var(--space-4);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-inline-start:3px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary-soft);font-size:var(--text-sm);animation:price-li-in var(--duration-base) var(--ease-out)}.billing-prepare-notice svg{color:var(--color-primary-strong);flex-shrink:0}.billing-prepare-notice span{flex:1;min-inline-size:200px}@media (prefers-reduced-motion: reduce){.billing-prepare-notice{animation:none}}.billing-packs{margin-block-start:var(--space-3)}.billing-packs-list{display:grid;gap:var(--space-1);margin-block-start:var(--space-2)}.billing-pack-row{align-items:center;flex-wrap:wrap}.billing-pack-name{font-weight:600;min-inline-size:120px}.billing-pack-meter{flex:1;font-size:var(--text-xs)}.billing-allowance-extra{font-size:var(--text-xs);color:var(--color-primary-strong);font-weight:600}
