@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--blue:#8a4935;--blue-dark:#4a3428;--blue-deep:#2b211b;--blue-light:#f3ebdd;--blue-wash:#faf7f0;--coral:#b28a55;--coral-wash:#f3ebdd;--ink:#2b211b;--muted:#6e5c50;--line:#ded0bc;--surface:#faf7f0;--canvas:#f3ebdd;--on-primary:#fff;--on-primary-strong:#fff;--on-strong:#fff;--primary-hover:#743d2e;--focus-ring:#8a49353d;--focus-color:#8a4935;--rail-muted:#d8c8b4;--success:#13795b;--shadow:0 20px 55px -28px #2b211b57;--radius:14px;--font-body:"Inter Variable", sans-serif;--font-display:"Inter Variable", sans-serif}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth}body,html{background:var(--canvas)}body{color:var(--ink);font-family:var(--font-body);margin:0;font-size:16px;line-height:1.5}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent;color:inherit}::selection{color:var(--canvas);background:var(--blue-dark)}:focus-visible{outline:3px solid var(--focus-color);outline-offset:3px}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--blue-wash)}::-webkit-scrollbar-thumb{border:3px solid var(--blue-wash);background:var(--coral);border-radius:999px}h1,h2,h3,p{margin-top:0}h1,h2{text-wrap:balance}h1{font-family:var(--font-display);letter-spacing:-.03em;line-height:.98}.brand-mark,h2,h3{letter-spacing:-.02em}.brand-mark{color:var(--blue-dark);align-items:center;font-weight:800;display:inline-flex}.brand-mark img{-o-object-fit:contain;object-fit:contain;width:clamp(148px,16vw,198px);height:auto}.brand-mark--compact{background:var(--canvas);border-radius:16px;align-self:center;padding:10px}.brand-mark--compact img{width:74px;height:74px}.brand-mark__fallback{align-items:center;gap:10px;display:inline-flex}.brand-mark__fallback strong{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.locale-switch{position:relative}.locale-switch summary{border:1px solid var(--line);width:44px;height:44px;color:var(--blue-dark);cursor:pointer;background:#faf7f0f0;border-radius:50%;place-items:center;list-style:none;display:grid}.locale-switch summary::-webkit-details-marker{display:none}.locale-switch[open] summary{background:var(--blue-light)}.locale-menu{z-index:12;background:var(--surface);border-radius:12px;min-width:150px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 36px -20px #2b211b6b}.locale-menu button{min-height:40px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 12px;font-size:.82rem;font-weight:800}.locale-menu button.active,.locale-menu button:hover{color:var(--blue-deep);background:var(--blue-light)}.app-button{cursor:pointer;border:0;border-radius:13px;justify-content:center;align-items:center;gap:9px;min-height:52px;padding:0 22px;font-weight:800;text-decoration:none;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s,background .18s;display:inline-flex}.app-button:hover:not(:disabled){transform:translateY(-2px)}.app-button:active:not(:disabled){transform:translateY(0)}.app-button:disabled{cursor:not-allowed;opacity:.55}.app-button--primary{color:var(--on-primary);background:var(--blue);box-shadow:0 12px 28px -16px #4a3428b8}.app-button--primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 16px 32px -16px #4a3428cc}.app-button--secondary{color:var(--blue-dark);background:var(--blue-light)}.button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:17px;height:17px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(1turn)}}.paper-star{background:var(--surface);box-shadow:var(--shadow);border-radius:14px;flex:none;position:relative;overflow:hidden}.paper-star--small{border:1px solid var(--line);width:54px;height:66px;box-shadow:none}.paper-star--medium{width:112px;height:138px}.paper-star--large{border-radius:24px;width:clamp(210px,32vw,340px);height:clamp(270px,41vw,430px)}.paper-star__fold{aspect-ratio:1;background:var(--blue-light);clip-path:polygon(0 0,100% 100%,0 100%);width:23%;position:absolute;top:0;right:0}.paper-star svg{width:52%;fill:var(--blue-dark);position:absolute;top:24%;left:24%}.paper-star__footer{gap:7%;width:36%;display:flex;position:absolute;bottom:10%;left:50%;transform:translate(-50%)}.paper-star__footer i{aspect-ratio:1;background:var(--blue);border-radius:50%;width:28%}.paper-star__footer i:last-child{background:var(--coral);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 94%,50% 72%,21% 94%,32% 57%,2% 35%,39% 35%);border-radius:3px}.entry-page{background:linear-gradient(115deg,var(--surface) 0 52%,var(--blue) 52%);min-height:100svh;overflow:hidden}.entry-header{z-index:2;justify-content:space-between;padding:28px 36px;display:flex;position:relative}.entry-composition,.entry-header{align-items:center;max-width:1240px;margin:0 auto}.entry-composition{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);min-height:calc(100svh - 100px);padding:40px 36px 70px;display:grid}.entry-copy{z-index:1;max-width:610px;padding-right:70px;position:relative}.restaurant-note{color:var(--blue-dark);margin-bottom:25px;font-weight:800}.entry-copy h1{max-width:9ch;margin-bottom:26px;font-size:clamp(3.4rem,6.2vw,6rem)}.entry-copy>p:not(.restaurant-note){max-width:52ch;color:var(--muted);margin-bottom:34px;font-size:1.08rem}.entry-actions{align-items:center;gap:24px;display:flex}.text-link{color:var(--blue-dark);text-underline-offset:5px;font-weight:800}.entry-art{place-items:center;min-height:570px;display:grid;position:relative}.entry-brand-emblem{z-index:2;aspect-ratio:1;background:var(--canvas);border-radius:50%;place-items:center;width:clamp(260px,35vw,420px);padding:clamp(40px,6vw,74px);animation:.9s cubic-bezier(.16,1,.3,1) both settle-page;display:grid;position:relative;box-shadow:0 30px 70px -34px #2b211b9e}.entry-brand-emblem img{width:100%;height:auto;display:block}.entry-orbit{border:2px solid #ffffff61;border-radius:50%;position:absolute}.entry-orbit--one{width:520px;height:520px}.entry-orbit--two{width:390px;height:390px}.floating-point{z-index:3;background:var(--coral);border-radius:50%;width:24px;height:24px;position:absolute;box-shadow:0 12px 24px -8px #2b211b4d}.floating-point--one{top:14%;right:17%}.floating-point--two{background:var(--blue-dark);width:15px;height:15px;bottom:28%;right:5%}.floating-point--three{background:var(--surface);width:19px;height:19px;bottom:10%;left:16%}@keyframes settle-page{0%{filter:blur(7px);opacity:.5;transform:translateY(35px)scale(.97)}to{filter:blur();opacity:1;transform:translateY(0)scale(1)}}.auth-page{background:var(--surface);min-height:100svh}.auth-header{grid-template-columns:1fr auto 1fr;align-items:center;width:min(1160px,100% - 48px);margin:0 auto;padding:24px 0;display:grid}.auth-header .locale-switch{justify-self:end}.icon-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.auth-stage{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(40px,7vw,100px);width:min(1160px,100% - 48px);min-height:calc(100svh - 104px);margin:0 auto;display:grid}.auth-visual{background:var(--canvas);border-radius:24px;overflow:hidden}.auth-visual img{aspect-ratio:3/2;-o-object-fit:contain;object-fit:contain;width:100%;padding:clamp(60px,9vw,120px);display:block}.phone-field{align-items:stretch;gap:10px;display:flex}.phone-field__country{flex:none}.phone-field select{border:1px solid var(--line);background:var(--surface);height:100%;color:var(--ink);font:inherit;cursor:pointer;border-radius:11px;padding:0 10px}.phone-field select:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.phone-field input{flex:1;min-width:0}.auth-alternative{color:var(--muted);text-align:center;margin:16px 0 0;font-size:.86rem}.auth-link{color:var(--blue);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.auth-link:hover{color:var(--primary-hover)}.auth-link:focus-visible{outline:2px solid var(--focus-color);outline-offset:3px;border-radius:4px}.auth-form{max-width:430px;padding:44px 0}.step-indicator{gap:8px;margin-bottom:42px;display:flex}.step-indicator span{background:var(--line);border-radius:999px;width:46px;height:5px}.step-indicator .complete{background:var(--blue)}.auth-title{align-items:center;gap:12px;display:flex}.auth-title svg{color:var(--blue-dark)}.auth-form h1{margin-bottom:12px;font-size:clamp(2.5rem,5vw,4.6rem)}.auth-form>p{color:var(--muted);margin-bottom:32px}.auth-form label{margin-bottom:9px;font-weight:800;display:block}.auth-form input,.redemption-search input,.sale-form input{background:var(--surface);width:100%;min-height:54px;color:var(--ink);border:1px solid #c9b89f;border-radius:12px;padding:0 16px;transition:border-color .16s,box-shadow .16s}.auth-form input:focus,.redemption-search input:focus,.sale-form input:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 4px #8a49352e}.password-input{position:relative}.password-input input{padding-inline-end:56px}.password-input button{width:42px;height:42px;color:var(--blue-dark);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-input button:hover{background:var(--blue-light)}.auth-form small{color:var(--muted);margin:8px 0 24px;display:block}.registration-fields{gap:20px;display:grid}.registration-fields label{margin-bottom:9px}.auth-form .app-button{width:100%;margin-top:22px}.auth-form .privacy-note{margin:26px 0 0;font-size:.82rem;line-height:1.6}.form-error{font-size:.86rem;font-weight:700;color:#8a3029!important;margin:14px 0 0!important}.demo-credentials{text-align:center;margin-top:18px!important}.field-with-icon{position:relative}.field-with-icon>svg{z-index:1;color:var(--muted);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.field-with-icon input{padding-left:46px}.wallet-page{background:var(--canvas);min-height:100svh;padding-bottom:100px}.wallet-state{width:min(720px,100% - 32px);min-height:280px;color:var(--muted);justify-content:center;align-items:center;gap:12px;margin:40px auto;font-weight:700;display:flex}.wallet-state--error{text-align:center;flex-direction:column}.wallet-state--error p{max-width:40ch;margin-bottom:10px}.wallet-header{justify-content:space-between;align-items:center;width:min(720px,100% - 32px);margin:0 auto;padding:20px 0;display:flex}.avatar-button{background:var(--blue-dark);width:42px;height:42px;color:var(--canvas);cursor:pointer;border:0;border-radius:50%;font-size:.75rem;font-weight:800}.wallet-hero{background:var(--blue);width:min(720px,100% - 32px);color:var(--on-primary);border-radius:24px;margin:0 auto 30px;padding:clamp(27px,6vw,48px);position:relative;overflow:hidden}.wallet-hero>div:first-child{z-index:1;position:relative}.wallet-hero p{margin-bottom:8px;font-weight:700}.wallet-hero span{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;font-weight:800}.wallet-hero h1{font-family:var(--font-body);font-variant-numeric:tabular-nums;margin:5px 0 26px;font-size:clamp(4rem,15vw,7rem)}.wallet-hero h1 small{font-family:var(--font-body);letter-spacing:0;text-transform:none;font-size:1rem}.wallet-hero .paper-star{opacity:.96;position:absolute;top:-21px;right:36px;transform:rotate(7deg)}.wallet-hero .paper-star svg{fill:var(--blue-deep)}.balance-progress{z-index:1;background:#ffffff8c;border-radius:999px;width:min(340px,76%);height:8px;position:relative;overflow:hidden}.balance-progress span{border-radius:inherit;background:var(--coral);height:100%;display:block}.wallet-hero>p:last-child{z-index:1;max-width:38ch;margin:12px 0 0;font-size:.9rem;position:relative}.wallet-section{width:min(720px,100% - 32px);margin:0 auto 30px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-heading h2{margin:0;font-size:1.25rem}.section-heading svg{color:var(--blue-dark)}.reward-stack{border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:0 16px 42px -34px #2b211b80}.reward-row{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr auto;align-items:center;gap:16px;padding:18px;display:grid}.reward-row:last-child{border-bottom:0}.reward-cost{background:var(--blue-light);text-align:center;border-radius:12px;place-content:center;width:62px;height:62px;display:grid}.reward-cost strong{font-size:1.3rem;line-height:1}.reward-cost span{color:var(--muted);margin-top:4px;font-size:.64rem}.reward-cost--image{overflow:hidden}.reward-cost--image img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.reward-row h3{margin:0 0 3px;font-size:1rem}.reward-points-inline{color:var(--blue-dark);margin-bottom:4px;font-size:.72rem;font-weight:800;display:inline-block}.reward-row p{color:var(--muted);margin:0;font-size:.78rem}.reward-row button{background:var(--blue);width:40px;height:40px;color:var(--canvas);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.reward-row button:disabled{color:#78909c;cursor:not-allowed;background:#ecf2f4}.reward-availability{border:2px solid var(--muted);border-radius:50%;width:12px;height:12px}.reward-availability.eligible{border-color:var(--success);background:var(--success);box-shadow:0 0 0 4px #13795b1f}.activity-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.activity-list li{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;padding:17px 2px;display:flex}.activity-list span{gap:4px;display:grid}.activity-list small{color:var(--muted)}.activity-empty{padding:24px 0}.activity-empty,.activity-state{border-block:1px solid var(--line);color:var(--muted)}.activity-state{justify-content:center;align-items:center;gap:10px;min-height:96px;display:flex}.activity-state--error{flex-wrap:wrap}.activity-pagination button,.activity-state button{min-height:44px;color:var(--blue-dark);font:inherit;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:.78rem;font-weight:800;display:inline-flex}.activity-pagination{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:16px;display:grid}.activity-pagination>span{color:var(--muted);text-align:center;white-space:nowrap;font-size:.78rem;font-weight:750}.activity-pagination button:first-child{justify-self:start}.activity-pagination button:last-child{justify-self:end}.activity-pagination button:disabled{cursor:not-allowed;opacity:.45}.positive{color:var(--success)}.negative{color:var(--coral)}.mobile-nav{z-index:5;padding:10px max(20px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));border-top:1px solid var(--line);background:var(--surface);justify-content:center;gap:70px;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav a{min-width:60px;min-height:48px;color:var(--blue-dark);cursor:pointer;text-transform:capitalize;background:0 0;border:0;border-radius:10px;place-items:center;gap:3px;padding:5px 14px;font-size:.7rem;font-weight:800;text-decoration:none;display:grid}.mobile-nav a.active,.mobile-nav a:hover{background:var(--blue-light);color:var(--blue-dark)}.mobile-nav a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.redemptions-empty>span,.redemptions-header-mark{background:var(--blue-light);width:44px;height:44px;color:var(--blue-dark);border-radius:12px;place-items:center;display:grid}.redemptions-main{width:min(720px,100% - 32px);margin:28px auto 0}.redemptions-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px;display:flex}.redemptions-heading h1{margin-bottom:8px;font-size:clamp(2.4rem,7vw,4rem)}.redemptions-heading p{max-width:54ch;color:var(--muted)}.redemptions-heading>strong{color:var(--blue-dark);font-variant-numeric:tabular-nums;flex:none;margin-bottom:5px;font-size:.82rem}.redemptions-empty,.redemptions-state{background:var(--surface);min-height:260px;color:var(--muted);text-align:center;border-radius:16px;align-content:center;justify-items:center;padding:32px;display:grid}.redemptions-state{grid-auto-flow:column;gap:10px}.redemptions-state--error{grid-auto-flow:row;gap:18px}.redemptions-state button{border:1px solid var(--line);min-height:44px;color:var(--blue-dark);font:inherit;cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:7px;padding:0 14px;font-size:.78rem;font-weight:800;display:inline-flex}.redemptions-empty>span{margin-bottom:18px}.redemptions-empty h2{color:var(--ink);margin-bottom:7px;font-size:1.25rem}.redemptions-empty p{max-width:42ch}.redemptions-list{background:var(--surface);box-shadow:var(--shadow);border-radius:16px;margin:0;padding:0;list-style:none;transition:opacity .18s;overflow:hidden}.redemptions-list[aria-busy=true]{opacity:.58}.redemptions-inline-error{border:1px solid var(--coral);background:var(--surface);min-height:52px;color:var(--coral);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:10px 12px 10px 16px;font-size:.8rem;font-weight:750;display:flex}.redemptions-inline-error button{min-height:36px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:9px;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.redemptions-list li{border-bottom:1px solid var(--line);grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:18px;min-height:104px;padding:18px 22px;display:grid}.redemptions-list li:last-child{border-bottom:0}.redemption-visual{background:var(--blue-light);width:68px;height:68px;color:var(--blue-dark);border-radius:12px;place-items:center;display:grid;overflow:hidden}.redemption-visual img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.redemption-copy{min-width:0}.redemption-copy h2{text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:1rem;overflow:hidden}.redemption-copy p{color:var(--muted);margin-bottom:5px;font-size:.84rem}.redemption-copy time{color:var(--muted);font-size:.74rem}.redemption-points{color:var(--coral);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.9rem}.earned-toast{z-index:10;right:max(22px,env(safe-area-inset-right));bottom:calc(92px + env(safe-area-inset-bottom));background:var(--blue-deep);max-width:calc(100vw - 44px);color:var(--canvas);border-radius:14px;align-items:center;gap:6px;padding:10px 20px 10px 10px;display:flex;position:fixed;box-shadow:0 24px 50px -20px #2b211bb3}.earned-toast img{-o-object-fit:contain;object-fit:contain;width:70px;height:70px}.earned-toast div{display:grid}.earned-toast strong{color:#d8b982;font-size:1.05rem}.earned-toast span{color:#e7dccb;font-size:.8rem}.celebration-enter-active,.celebration-leave-active{transition:transform .42s cubic-bezier(.16,1,.3,1),opacity .22s,filter .42s}.celebration-enter-from,.celebration-leave-to{opacity:0;filter:blur(7px);transform:translateY(22px)scale(.96)}.admin-shell{background:var(--canvas);grid-template-columns:244px 1fr;min-height:100svh;display:grid}.admin-rail{background:var(--blue-deep);height:100svh;color:var(--on-strong);flex-direction:column;padding:24px 18px;display:flex;position:sticky;top:0}.admin-rail .brand-mark{margin:0 10px 42px}.admin-rail nav{gap:5px;display:grid}.admin-rail nav a{min-height:48px;color:var(--rail-muted);border-radius:12px;align-items:center;gap:12px;padding:0 13px;font-size:.88rem;font-weight:700;text-decoration:none;display:flex}.admin-rail nav a.active{color:var(--on-primary);background:var(--blue)}.rail-locale{justify-content:center;margin-top:auto;padding:0 10px 10px;display:flex}.rail-profile{border-top:1px solid #ffffff21;align-items:center;gap:10px;padding:16px 10px 4px;display:flex}.branding-workspace{max-width:1600px}.branding-header .app-button{flex:none}.branding-loading{min-height:320px;color:var(--muted);justify-content:center;align-items:center;gap:10px;font-weight:700;display:flex}.branding-layout{grid-template-columns:minmax(0,1.22fr) minmax(340px,.78fr);align-items:start;gap:clamp(28px,4vw,58px);display:grid}.branding-form{gap:22px;display:grid}.branding-section{border-radius:var(--radius);background:var(--surface);padding:26px;box-shadow:0 16px 40px -34px #2b211b7a}.branding-section__heading{margin-bottom:22px}.branding-preview__heading h2,.branding-section__heading h2{margin-bottom:5px;font-size:1.25rem}.branding-preview__heading p,.branding-section__heading p{max-width:64ch;color:var(--muted);margin:0;font-size:.84rem}.brand-color-grid>label,.branding-name-field{gap:8px;display:grid}.brand-color-grid>label>span:first-child,.branding-name-field>span{color:var(--blue-deep);font-size:.78rem;font-weight:800}.brand-color-control input[type=text],.branding-name-field input{border:1px solid var(--line);background:var(--canvas);width:100%;min-height:48px;color:var(--ink);border-radius:11px;padding:0 14px}.brand-color-control input[type=text]:focus,.branding-name-field input:focus{border-color:var(--blue);box-shadow:0 0 0 4px var(--focus-ring);outline:0}.brand-color-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;display:grid}.brand-color-grid>label:first-child{grid-column:1/-1}.brand-color-control{grid-template-columns:48px 1fr;gap:8px;display:grid}.brand-color-control input[type=color]{border:1px solid var(--line);background:var(--canvas);cursor:pointer;border-radius:11px;width:48px;height:48px;padding:4px}.branding-contrast-error,.branding-page-feedback--error{color:#8a3029;margin:16px 0 0;font-size:.82rem;font-weight:800}.brand-assets-grid{gap:14px;display:grid}.brand-asset-field{border-top:1px solid var(--line);grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:15px;padding:14px;display:grid}.brand-asset-field:first-child{border-top:0}.brand-asset-preview{background:var(--blue-light);width:92px;height:68px;color:var(--blue-dark);border-radius:11px;place-items:center;display:grid;overflow:hidden}.brand-asset-preview--compactLogo{width:68px}.brand-asset-preview img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.brand-asset-field strong{font-size:.9rem}.brand-asset-field p{color:var(--muted);margin:3px 0 0;font-size:.74rem}.brand-asset-actions{align-items:center;gap:8px;display:flex}.brand-asset-actions button,.brand-asset-actions label{border:1px solid var(--line);min-height:42px;color:var(--blue-dark);font:inherit;cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:7px;padding:0 12px;font-size:.72rem;font-weight:800;display:inline-flex}.brand-asset-actions button:hover,.brand-asset-actions label:hover{background:var(--blue-light)}.brand-asset-actions input{opacity:0;width:1px;height:1px;position:absolute}.branding-preview{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:26px;position:sticky;top:34px}.branding-preview__heading{grid-template-columns:auto 1fr;align-items:start;gap:11px;margin-bottom:22px;display:grid}.branding-preview__heading>svg{color:var(--blue)}.brand-preview-canvas{background:var(--canvas);color:var(--ink);border-radius:14px;padding:22px;overflow:hidden}.brand-preview-canvas>header{justify-content:space-between;align-items:center;gap:14px;min-height:48px;margin-bottom:24px;display:flex}.brand-preview-canvas>header>img{-o-object-fit:contain;object-fit:contain;-o-object-position:left center;object-position:left center;width:min(170px,62%);max-height:48px}.brand-preview-canvas>header>span{background:var(--surface);border-radius:10px;place-items:center;width:42px;height:42px;display:grid;overflow:hidden}.brand-preview-canvas>header>span img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.brand-preview-balance{background:var(--blue);min-height:150px;color:var(--on-primary);border-radius:14px;align-content:center;padding:24px;display:grid;position:relative}.brand-preview-balance .paper-star{position:absolute;top:16px;right:16px;transform:rotate(5deg)}.brand-preview-login{border:1px solid var(--line);background:var(--canvas);border-radius:12px;min-height:92px;margin-bottom:14px;position:relative;overflow:hidden}.brand-preview-login img{-o-object-fit:contain;object-fit:contain;width:100%;height:92px;display:block}.brand-preview-login span{background:var(--surface);color:var(--ink);border-radius:7px;padding:4px 7px;font-size:.64rem;font-weight:800;position:absolute;bottom:8px;right:8px}.brand-preview-balance span{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:800}.brand-preview-balance strong{letter-spacing:-.04em;font-size:clamp(2.3rem,5vw,3.7rem)}.brand-preview-reward{background:var(--surface);border-radius:12px;align-items:center;gap:11px;min-height:62px;margin:14px 0;padding:0 15px;font-size:.82rem;font-weight:800;display:flex}.brand-preview-reward i{background:var(--coral);border-radius:50%;width:11px;height:11px}.brand-preview-action{background:var(--blue);width:100%;min-height:48px;color:var(--on-primary);border:0;border-radius:11px;justify-content:center;align-items:center;font-weight:800;display:flex}.branding-page-feedback{z-index:9;background:var(--surface);max-width:430px;box-shadow:var(--shadow);border-radius:12px;padding:14px 18px;position:fixed;bottom:28px;right:28px}.rail-profile span{font-size:.82rem;font-weight:800}.rail-profile small{color:var(--rail-muted);font-weight:500}.admin-workspace{min-width:0;padding:42px clamp(28px,5vw,74px)}.admin-header{justify-content:space-between;align-items:flex-start;margin-bottom:42px;display:flex}.admin-header h1{margin-bottom:8px;font-size:clamp(2.8rem,4.5vw,4.8rem)}.admin-header p{color:var(--muted)}.admin-header--action{gap:28px}.admin-header--action .app-button{flex:none}.directory-refresh{min-height:44px;color:var(--blue-deep);font:inherit;cursor:pointer;background:0 0;border:1px solid #b28a55;border-radius:12px;align-items:center;gap:8px;padding:0 15px;font-size:.8rem;font-weight:800;display:inline-flex}.directory-refresh:hover:not(:disabled){background:var(--surface)}.directory-refresh:focus-visible{outline-offset:3px;outline:3px solid #8a493547}.directory-refresh:disabled{cursor:wait;opacity:.62}.admin-directory{width:100%;max-width:1440px}.admin-inline-form{border-radius:var(--radius);background:var(--blue-light);margin:-12px 0 34px;padding:28px}.form-heading{margin-bottom:22px}.form-heading h2{margin-bottom:5px;font-size:1.25rem}.form-heading p{color:var(--muted);margin:0;font-size:.86rem}.form-grid{grid-template-columns:minmax(180px,1.4fr) minmax(130px,.7fr) minmax(210px,1fr) minmax(110px,.55fr) auto;align-items:end;gap:16px;display:grid}.form-grid--customers{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto}.form-grid--reward{grid-template-columns:minmax(220px,1.4fr) minmax(150px,.7fr) minmax(170px,.8fr) auto}.product-form-layout{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:22px;display:grid}.product-fields,.reward-fields{grid-template-columns:repeat(3,minmax(150px,1fr))}.reward-fields .field-wide{grid-column:span 2}.image-upload{cursor:pointer;gap:8px;display:grid}.image-upload input{opacity:0;width:1px;height:1px;position:absolute}.image-upload>img,.image-upload>span{-o-object-fit:cover;object-fit:cover;border:1px dashed #b28a55;border-radius:14px;width:100%;height:132px}.image-upload>span{background:var(--surface);color:var(--blue-dark);place-content:center;justify-items:center;gap:8px;font-size:.78rem;font-weight:800;display:grid}.form-note,.image-upload small{color:var(--muted);font-size:.72rem}.admin-feedback{margin:-14px 0 22px;font-size:.84rem;font-weight:700}.admin-feedback--error{color:#8a342c}.admin-feedback--success{color:var(--success)}.form-grid label{gap:7px;min-width:0;display:grid}.form-grid label>span{color:var(--blue-deep);font-size:.78rem;font-weight:800}.directory-search input,.form-grid input,.form-grid select{background:var(--surface);width:100%;min-height:48px;color:var(--ink);border:1px solid #c9b89f;border-radius:11px;padding:0 14px}.directory-search input:focus,.form-grid input:focus,.form-grid select:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 4px #8a49352e}.directory-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.directory-toolbar>span{color:var(--muted);flex:none;font-size:.8rem;font-weight:700}.directory-filters{flex:none;align-items:center;gap:12px;display:flex}.directory-filters select{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;border-radius:11px;padding:0 34px 0 12px;font-size:.78rem;font-weight:750}.directory-filters select:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.directory-filters>span{color:var(--muted);white-space:nowrap;font-size:.8rem;font-weight:700}.directory-search{width:min(100%,440px);display:block;position:relative}.directory-search svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.directory-search input{padding-left:45px}.admin-table-wrap{border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:0 18px 42px -36px #2b211b8c}.admin-table-wrap.directory-is-loading{opacity:.58;transition:opacity .16s}.directory-pagination{margin-top:18px}.admin-table{border-collapse:collapse;text-align:left;width:100%}.admin-table th{color:var(--muted);background:var(--blue-wash);letter-spacing:.04em;text-transform:uppercase;padding:14px 20px;font-size:.72rem}.admin-table td{border-top:1px solid var(--line);color:var(--muted);vertical-align:middle;padding:18px 20px;font-size:.88rem}.admin-table td strong{color:var(--ink)}.customer-directory-row{cursor:pointer;transition:background-color .16s}.customer-directory-row:focus-within,.customer-directory-row:hover{background:var(--blue-light)}.customer-row-trigger{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:flex-start;padding:0}.customer-row-trigger svg{color:var(--muted);margin-left:auto}.customer-row-trigger:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px;border-radius:8px}.product-identity,.table-identity{align-items:center;gap:12px;display:flex}.product-directory-row{cursor:pointer;transition:background-color .16s}.product-directory-row:focus-within,.product-directory-row:hover{background:var(--blue-light)}.product-row-trigger{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:flex-start;padding:0}.product-row-trigger>svg{color:var(--muted);margin-left:auto}.product-row-trigger:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px;border-radius:8px}.product-identity>img,.product-identity>span{background:var(--blue-light);-o-object-fit:cover;object-fit:cover;border-radius:12px;flex:0 0 48px;place-content:center;width:48px;height:48px;display:grid}.product-identity>div{gap:3px;display:grid}.product-identity small{max-width:42ch;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.table-identity i{background:var(--blue-light);width:38px;height:38px;color:var(--blue-dark);border-radius:50%;place-items:center;font-size:.68rem;font-style:normal;font-weight:800;display:grid}.rule-summary{color:var(--ink);gap:2px;font-weight:700;display:grid}.rule-summary small{color:var(--muted);font-weight:500}.status-toggle{color:#526e7b;cursor:pointer;background:#edf2f4;border:0;border-radius:999px;min-height:34px;padding:0 12px;font-size:.72rem;font-weight:800}.status-toggle.active{color:#126044;background:#dff7ef}.status-badge{color:#526e7b;background:#edf2f4;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:.72rem;font-weight:800;display:inline-flex}.status-badge.active{color:#126044;background:#dff7ef}.product-directory-row--static{cursor:default}.reward-admin-actions{align-items:center;gap:8px;display:flex}.reward-delete-button{border:1px solid var(--line);color:#8a342c;cursor:pointer;background:0 0;border-radius:11px;flex:none;place-items:center;width:44px;height:44px;padding:0;display:grid}.reward-delete-button:hover{background:#f6e7e3}.reward-delete-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.reward-admin-list{border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:0 18px 42px -36px #2b211b8c}.reward-admin-row{border-bottom:1px solid var(--line);grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:20px;padding:20px 22px;display:grid}.reward-admin-row:last-child{border-bottom:0}.reward-admin-row--detailed{grid-template-columns:58px 76px minmax(0,1fr) auto}.reward-admin-visual{background:var(--blue-wash);width:54px;height:54px;color:var(--blue-dark);border-radius:13px;place-content:center;display:grid;overflow:hidden}.reward-admin-visual img{-o-object-fit:cover;object-fit:cover;width:54px;height:54px}.reward-title-line{align-items:baseline;gap:10px;display:flex}.reward-title-line>span{color:var(--blue-dark);font-size:.7rem;font-weight:800}.reward-admin-copy small{color:var(--blue-dark);margin-top:7px;font-size:.72rem;font-weight:700;display:block}.reward-admin-cost{background:var(--blue-light);text-align:center;border-radius:12px;place-content:center;width:68px;height:68px;display:grid}.reward-admin-cost strong{font-size:1.35rem;line-height:1}.reward-admin-cost span{color:var(--muted);margin-top:4px;font-size:.65rem}.reward-admin-copy h2{margin-bottom:3px;font-size:1rem}.reward-admin-copy p{color:var(--muted);margin:0;font-size:.82rem}.admin-empty-state{border-radius:var(--radius);background:var(--surface);text-align:center;place-content:center;min-height:300px;padding:40px;display:grid}.admin-empty-state svg{color:var(--blue-dark);margin:0 auto 16px}.admin-empty-state h2{margin-bottom:7px;font-size:1.2rem}.admin-empty-state p{max-width:40ch;color:var(--muted);margin:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sale-layout{grid-template-columns:minmax(420px,1.1fr) minmax(360px,.9fr);gap:clamp(32px,6vw,80px);max-width:1100px;display:grid}.sale-form{align-content:start;gap:36px;display:grid}.sale-form section{gap:11px;display:grid}.sale-form label{font-weight:800}.search-input{grid-template-columns:1fr auto;display:grid}.search-input input{border-radius:12px 0 0 12px}.search-input button{background:var(--blue-dark);color:var(--canvas);cursor:pointer;border:0;border-radius:0 12px 12px 0;padding:0 20px;font-weight:800}.search-input button:disabled{cursor:wait;opacity:.65}.customer-match{background:var(--blue-light);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-top:3px;padding:14px;display:grid}.customer-avatar{background:var(--blue-dark);width:42px;height:42px;color:var(--canvas);border-radius:50%;place-items:center;font-size:.72rem;font-weight:800;display:grid}.customer-match span{display:grid}.customer-match small{color:var(--muted)}.customer-match svg{color:var(--success)}.money-input{position:relative}.money-input span{color:var(--muted);position:absolute;top:50%;left:18px;transform:translateY(-50%)}.money-input input{font-variant-numeric:tabular-nums;padding-left:42px;font-size:1.2rem}.money-input-lead span{color:var(--blue);font-size:clamp(1.5rem,3.4vw,2.1rem);font-weight:800;left:clamp(18px,2.4vw,26px)}.sale-form .money-input-lead input{letter-spacing:-.02em;border-width:2px;border-radius:18px;min-height:clamp(84px,11vw,104px);padding-left:clamp(52px,7vw,70px);font-size:clamp(2.1rem,5vw,3rem);font-weight:800}.sale-form .money-input-lead input::placeholder{color:color-mix(in srgb,var(--muted) 42%,transparent);font-weight:700}.money-input-lead input::-webkit-inner-spin-button{appearance:none;margin:0}.money-input-lead input::-webkit-outer-spin-button{appearance:none;margin:0}.money-input-lead input[type=number]{appearance:textfield}.field-heading{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.field-heading label{margin:0}.field-optional{border:1px solid var(--line);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:700}.field-hint{color:var(--muted);margin:0;font-size:.86rem}.sale-form .sale-customer{border-top:1px solid var(--line);padding-top:28px}.redemption-workspace{width:100%;max-width:1480px}.redemption-search{width:min(100%,780px);margin:-10px 0 28px}.redemption-search>label{margin-bottom:9px;font-weight:800;display:block}.redemption-success{color:#215c47;background:#dcecdf;border-radius:12px;align-items:center;gap:10px;width:fit-content;max-width:760px;margin:-10px 0 24px;padding:14px 17px;font-size:.84rem;font-weight:800;display:flex}.redemption-layout{grid-template-columns:minmax(0,1.45fr) minmax(310px,.72fr);align-items:start;gap:clamp(24px,4vw,52px);display:grid}.redemption-options{min-width:0}.redemption-customer{background:var(--blue-deep);min-height:88px;color:var(--canvas);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:34px;padding:15px 18px;display:grid}.redemption-customer>div:nth-child(2){gap:3px;min-width:0;display:grid}.redemption-customer>div:last-child span,.redemption-customer>div:nth-child(2) span{color:#d8c8b4;font-size:.73rem}.redemption-customer>div:last-child{justify-items:end;gap:2px;display:grid}.redemption-customer>div:last-child strong{font-variant-numeric:tabular-nums;font-size:1.25rem}.redemption-customer .customer-avatar{color:var(--canvas);background:var(--blue)}.redemption-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:15px;display:flex}.redemption-heading h2{margin:0 0 5px;font-size:1.3rem}.redemption-heading p{color:var(--muted);margin:0;font-size:.84rem}.redemption-heading svg{color:var(--blue);flex:none}.redemption-list{background:var(--surface);border-radius:14px;overflow:hidden;box-shadow:0 18px 44px -36px #2b211b8f}.redemption-option{border-bottom:1px solid var(--line);grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:15px;min-height:92px;padding:15px 17px;transition:background .16s;display:grid}.redemption-option:last-child{border-bottom:0}.redemption-option--selected{background:var(--blue-light)}.redemption-cost-mark,.redemption-option>img{background:var(--blue-light);border-radius:12px;width:60px;height:60px;overflow:hidden}.redemption-option>img{-o-object-fit:cover;object-fit:cover}.redemption-cost-mark{text-align:center;place-content:center;display:grid}.redemption-cost-mark strong{font-size:1.25rem;line-height:1}.redemption-cost-mark span,.redemption-option-copy small,.redemption-option-copy span{color:var(--muted);font-size:.72rem}.redemption-option-copy{gap:3px;min-width:0;display:grid}.redemption-option-copy>strong{font-size:.94rem}.redemption-option-copy small{color:var(--blue-dark);font-weight:800}.redemption-option>button{background:var(--blue-dark);min-height:42px;color:var(--canvas);font:inherit;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:.74rem;font-weight:800;display:inline-flex}.redemption-option>button:hover:not(:disabled){background:var(--blue)}.redemption-option>button:focus-visible{outline-offset:3px;outline:3px solid #b28a556b}.redemption-option>button:disabled{color:var(--muted);cursor:not-allowed;background:#ebe5db}.redemption-confirmation{background:var(--surface);box-shadow:var(--shadow);border-radius:14px;padding:28px;position:sticky;top:34px}.redemption-confirmation>svg{color:var(--blue)}.redemption-confirmation h2{margin:15px 0 7px;font-size:1.35rem}.redemption-confirmation>p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.55}.redemption-confirmation dl{margin:24px 0}.redemption-confirmation dl>div{color:var(--muted);justify-content:space-between;gap:18px;padding:10px 0;font-size:.82rem;display:flex}.redemption-confirmation dd{color:var(--ink);text-align:right;margin:0;font-weight:800}.redemption-confirmation .redemption-balance-result{border-top:1px solid var(--line);color:var(--ink);margin-top:8px;padding-top:18px}.redemption-balance-result dd{color:var(--success);font-variant-numeric:tabular-nums;font-size:1.1rem}.redemption-confirmation .redemption-select-hint{min-height:116px;padding:24px 0}.redemption-confirmation .app-button{width:100%}.sale-preview{align-self:start;position:sticky;top:35px}.preview-paper{background:var(--surface);box-shadow:var(--shadow);border-radius:14px;padding:34px;position:relative;overflow:hidden}.paper-fold{background:var(--blue-light);clip-path:polygon(0 0,100% 100%,0 100%);width:62px;height:62px;position:absolute;top:0;right:0}.preview-title{align-items:center;gap:14px;margin-bottom:30px;display:flex}.preview-title>div{display:grid}.preview-title span{color:var(--muted);font-size:.78rem}.preview-title strong{font-size:1.05rem}.preview-paper dl{margin:0}.preview-paper dl div{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;padding:11px 0;display:flex}.preview-paper dd{color:var(--ink);margin:0;font-weight:700}.preview-paper .total-line{border-top:1px solid var(--line);color:var(--ink);margin-top:9px;padding-top:18px;font-weight:800}.preview-paper .total-line dd{font-size:1.35rem}.points-result{background:var(--blue-light);border-radius:12px;justify-content:space-between;align-items:center;margin:22px 0;padding:18px;display:flex}.points-result span{color:var(--muted);font-size:.8rem}.points-result strong{color:var(--blue-dark);font-size:1.15rem}.preview-paper .app-button{width:100%}.preview-paper>p{color:var(--muted);margin:16px 0 0;font-size:.75rem;line-height:1.6}.admin-toast{z-index:10;background:var(--blue-deep);max-width:430px;color:var(--canvas);border-radius:13px;align-items:center;gap:11px;padding:16px 20px;font-size:.88rem;font-weight:700;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 20px 45px -20px #2b211bbf}.admin-toast svg{color:#72e5bd;flex:none}.toast-enter-active,.toast-leave-active{transition:transform .32s cubic-bezier(.16,1,.3,1),opacity .18s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(18px)}.profile-layout{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:clamp(20px,3vw,34px);display:grid}.profile-plate{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);gap:22px;padding:30px 26px;display:grid}.profile-avatar{background:var(--coral-wash);width:60px;height:60px;color:var(--blue);border-radius:50%;place-items:center;display:grid}.profile-facts{gap:18px;margin:0;display:grid}.profile-facts dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:4px;font-size:.74rem;font-weight:700}.profile-facts dd{overflow-wrap:anywhere;margin:0;font-size:.98rem;font-weight:700}.profile-actions{gap:clamp(20px,3vw,30px);display:grid}.profile-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);gap:20px;padding:30px 28px;display:grid}.profile-card--quiet{background:var(--canvas);box-shadow:none}.profile-card--quiet p{color:var(--muted);margin:0;font-size:.88rem}.profile-card__heading{color:var(--blue);align-items:center;gap:10px;display:flex}.profile-card__heading h2{color:var(--ink);margin:0;font-size:1.06rem}.profile-alert{border:1px solid var(--coral);background:var(--coral-wash);color:var(--ink);border-radius:12px;align-items:flex-start;gap:12px;padding:16px 18px;display:flex}.profile-alert strong{font-size:.92rem;display:block}.profile-alert p{margin:4px 0 0;font-size:.86rem}.profile-form{gap:18px;display:grid}.profile-form label{gap:7px;min-width:0;display:grid}.profile-form label>span{font-size:.82rem;font-weight:700}.profile-form small{color:var(--muted);font-size:.76rem}.profile-form input,.profile-form select{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;border-radius:11px;padding:13px 14px}.profile-form input:focus-visible,.profile-form select:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.profile-form .app-button{justify-self:start}.team-layout{grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:start;gap:clamp(20px,3vw,34px);display:grid}.team-roster{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.team-state{color:var(--muted);margin:0;padding:34px 28px;font-size:.9rem}.team-list{margin:0;padding:0;list-style:none}.team-list li+li{border-top:1px solid var(--line)}.team-row{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:16px;padding:18px 24px;display:flex}.team-row:hover{background:var(--canvas)}.team-row:focus-visible{outline:2px solid var(--focus-color);outline-offset:-2px}.team-row__identity{flex:1;gap:3px;min-width:0;display:grid}.team-row__identity strong{overflow-wrap:anywhere;align-items:center;gap:8px;font-size:.95rem;display:flex}.team-row__identity small{color:var(--muted);overflow-wrap:anywhere;font-size:.8rem}.team-badge{background:var(--coral-wash);color:var(--blue);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:.68rem;font-style:normal;font-weight:800}.team-row__role{color:var(--muted);flex-shrink:0;font-size:.82rem;font-weight:700}.team-invite{border:1px solid var(--line);border-radius:var(--radius);background:var(--canvas);gap:20px;padding:28px 26px;display:grid}.team-handover-backdrop{z-index:60;background:#1714128c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.team-handover{background:var(--surface);width:min(100%,460px);box-shadow:var(--shadow);border-radius:18px;gap:18px;padding:32px 30px;display:grid}.team-handover p{color:var(--muted);margin:0;font-size:.9rem}.team-password{border:1px dashed var(--coral);background:var(--coral-wash);color:var(--ink);letter-spacing:.08em;text-align:center;-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;border-radius:12px;padding:16px 18px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.24rem;font-weight:700;display:block}.team-handover__actions{flex-wrap:wrap;gap:12px;display:flex}.team-member-backdrop{z-index:55;background:#1714126b;justify-content:flex-end;display:flex;position:fixed;inset:0}.team-member{background:var(--surface);width:min(100%,420px);box-shadow:var(--shadow);align-content:start;gap:20px;padding:30px 28px;display:grid;overflow-y:auto}.team-member__header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.team-member__header h2{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:1.1rem}.team-member__email{color:var(--muted);overflow-wrap:anywhere;margin:-12px 0 0;font-size:.86rem}.team-member__field{gap:7px;display:grid}.team-member__field>span{font-size:.82rem;font-weight:700}.team-member__field select{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;border-radius:11px;padding:13px 14px}.team-member__field select:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.team-member__note{color:var(--muted);margin:0;font-size:.82rem}.team-member__actions{justify-items:start;gap:12px;display:grid}.console-shell{background:var(--canvas);min-height:100vh;padding:42px clamp(24px,5vw,74px)}.console-header{flex-wrap:wrap;justify-content:space-between;gap:20px;margin-bottom:34px}.console-header,.console-identity{align-items:flex-start;display:flex}.console-identity{color:var(--blue);gap:14px}.console-identity h1{color:var(--ink);margin:0;font-size:clamp(1.6rem,3vw,2.1rem)}.console-identity p{color:var(--muted);margin:6px 0 0;font-size:.92rem}.console-layout{grid-template-columns:minmax(0,1fr) minmax(300px,400px);align-items:start;gap:clamp(20px,3vw,34px);display:grid}.console-roster{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.console-list{margin:0;padding:0;list-style:none}.console-list li+li{border-top:1px solid var(--line)}.console-list li.inactive{background:var(--canvas)}.console-list li.inactive .console-tenant__identity{opacity:.62}.console-tenant{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.console-tenant__identity{min-width:0;color:var(--blue);align-items:flex-start;gap:12px;display:flex}.console-tenant__identity strong{color:var(--ink);overflow-wrap:anywhere;align-items:center;gap:8px;font-size:.98rem;display:flex}.console-tenant__identity small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-size:.8rem;display:block}.console-tenant__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.console-link{color:var(--muted);align-items:center;gap:6px;font-size:.8rem;font-weight:700;text-decoration:none;display:inline-flex}.console-link:hover{color:var(--blue)}.console-link:focus-visible{outline:2px solid var(--focus-color);outline-offset:3px;border-radius:6px}.console-icon-button{border:1px solid var(--line);width:42px;height:42px;color:var(--muted);cursor:pointer;background:0 0;border-radius:11px;place-items:center;padding:0;display:grid}.console-icon-button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.console-icon-button--danger:hover:not(:disabled){color:#8a342c;border-color:#8a342c}.console-icon-button:disabled{opacity:.45;cursor:not-allowed}.console-icon-button:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.console-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);gap:20px;padding:28px 26px;display:grid}.console-header__actions{align-items:center;gap:12px;display:flex}.console-login{background:var(--canvas);place-items:center;min-height:100svh;padding:24px;display:grid}.console-login__plate{border:1px solid var(--line);background:var(--surface);width:min(100%,420px);box-shadow:var(--shadow);border-radius:20px;gap:24px;padding:40px 34px;display:grid}.console-login__mark{background:var(--coral-wash);width:58px;height:58px;color:var(--blue);border-radius:16px;place-items:center;display:grid}.console-login__title h1{margin:0;font-size:1.5rem}.console-login__title p{color:var(--muted);margin:6px 0 0;font-size:.88rem}.console-login__field{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:11px;align-items:center;gap:10px;padding:0 14px;display:flex}.console-login__field:focus-within{outline:2px solid var(--focus-color);outline-offset:2px}.console-login__field input{width:100%;color:var(--ink);font:inherit;background:0 0;border:0;padding:13px 0}.console-login__field input:focus-visible{outline:none}.console-login__reveal{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:6px;display:grid}.console-login__reveal:hover{color:var(--blue)}.console-login__reveal:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.platform-banner{z-index:40;background:var(--blue);color:var(--on-primary);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:10px;margin:0;padding:11px clamp(16px,3vw,28px);font-size:.84rem;font-weight:700;display:flex;position:sticky;top:0}.platform-banner a{color:inherit;text-decoration:underline}.platform-banner a:focus-visible{outline:2px solid var(--on-primary);outline-offset:3px;border-radius:4px}@media (width<=900px){.console-layout,.profile-layout,.team-layout{grid-template-columns:1fr}.team-member{width:100%}.entry-page{background:linear-gradient(180deg,var(--surface) 0 55%,var(--blue) 55%)}.entry-composition{grid-template-columns:1fr;padding-top:22px}.entry-copy{max-width:690px;padding-right:0}.entry-copy h1{max-width:11ch}.entry-art{min-height:480px}.auth-stage{grid-template-columns:1fr}.auth-visual{display:none}.auth-form{width:min(100%,480px);margin:0 auto}.admin-shell{grid-template-columns:82px 1fr}.admin-rail{padding-inline:13px}.admin-rail .brand-mark{margin-inline:auto}.admin-rail nav a{justify-content:center}.admin-rail nav a:not(.active){color:var(--rail-muted)}.admin-rail nav a{font-size:0}.rail-profile span{display:none}.rail-profile{justify-content:center}.branding-layout,.redemption-layout,.sale-layout{grid-template-columns:1fr}.branding-preview,.redemption-confirmation{position:static}.form-grid,.form-grid--customers,.form-grid--reward{grid-template-columns:repeat(2,minmax(0,1fr))}.product-form-layout{grid-template-columns:150px minmax(0,1fr)}.product-fields,.reward-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.sale-preview{position:static}}@media (width<=600px){.entry-header{padding:18px 20px}.entry-header .brand-mark span{display:none}.entry-composition{min-height:calc(100svh - 78px);padding:24px 20px 45px}.restaurant-note{margin-bottom:15px}.entry-copy h1{margin-bottom:18px;font-size:clamp(3rem,15vw,4.4rem)}.entry-copy>p:not(.restaurant-note){margin-bottom:25px}.entry-actions{flex-direction:column;align-items:flex-start;gap:17px}.entry-art{min-height:390px}.entry-orbit--one{width:360px;height:360px}.entry-orbit--two{width:280px;height:280px}.auth-header{grid-template-columns:auto 1fr auto;width:calc(100% - 32px)}.auth-header .brand-mark{justify-self:center}.auth-header .brand-mark span{display:none}.auth-stage{width:calc(100% - 40px);min-height:calc(100svh - 94px)}.auth-form{padding:24px 0 46px}.auth-form h1{font-size:2.9rem}.wallet-header .brand-mark img{width:142px;height:auto}.wallet-hero{padding:27px 24px}.wallet-hero .paper-star{opacity:.88;transform-origin:100% 0;right:20px;transform:scale(.82)rotate(7deg)}.wallet-hero h1{font-size:4.4rem}.reward-row{grid-template-columns:60px 1fr auto;gap:11px;padding:15px 13px}.reward-cost{width:56px;height:56px}.redemptions-main{margin-top:18px}.redemptions-heading{flex-direction:column;align-items:flex-start;gap:10px}.redemptions-heading h1{font-size:2.7rem}.redemptions-heading>strong{margin:0}.redemptions-list li{grid-template-columns:56px minmax(0,1fr);gap:13px;padding:16px 14px}.redemption-visual{width:56px;height:56px}.redemption-points{grid-column:2}.admin-shell{padding-bottom:78px;display:block}.admin-rail{z-index:7;height:auto;padding:9px 14px calc(9px + env(safe-area-inset-bottom));flex-direction:row;position:fixed;inset:auto 0 0}.admin-rail>.brand-mark,.rail-profile{display:none}.admin-rail nav{scrollbar-width:none;scroll-snap-type:x proximity;grid-template-columns:none;grid-auto-columns:minmax(70px,1fr);grid-auto-flow:column;gap:3px;width:100%;overflow-x:auto}.admin-rail nav::-webkit-scrollbar{display:none}.admin-rail nav a{scroll-snap-align:start;flex-direction:column;gap:2px;min-height:50px;padding:0;font-size:.57rem}.admin-workspace{padding:25px 18px}.redemption-customer{grid-template-columns:auto minmax(0,1fr)}.redemption-customer>div:last-child{border-top:1px solid #f3ebdd2e;grid-column:1/-1;grid-template-columns:1fr auto;justify-items:start;padding-top:13px}.redemption-option{grid-template-columns:58px minmax(0,1fr)}.redemption-option>button{grid-column:1/-1}.admin-header{margin-bottom:30px}.admin-header--action{flex-direction:column;align-items:stretch}.admin-header--action .app-button{width:100%}.directory-refresh{justify-content:center}.admin-header h1{font-size:2.8rem}.admin-header p{max-width:30ch}.sale-layout{flex-direction:column;gap:32px;display:flex}.admin-inline-form{padding:20px 16px}.branding-header{flex-direction:column;align-items:stretch;gap:22px}.branding-header .app-button{width:100%}.branding-preview,.branding-section{padding:20px 16px}.brand-color-grid{grid-template-columns:1fr}.brand-color-grid>label:first-child{grid-column:auto}.brand-asset-field{grid-template-columns:68px minmax(0,1fr)}.brand-asset-preview{width:68px;height:60px}.brand-asset-actions{grid-column:1/-1}.form-grid,.form-grid--customers,.form-grid--reward,.product-fields,.product-form-layout,.reward-fields{grid-template-columns:1fr}.reward-fields .field-wide{grid-column:auto}.directory-toolbar{flex-direction:column;align-items:stretch;gap:9px}.directory-filters{justify-content:space-between;width:100%}.admin-table-wrap{box-shadow:none;background:0 0;overflow:visible}.admin-table thead{display:none}.admin-table,.admin-table tbody,.admin-table td,.admin-table tr{width:100%;display:block}.admin-table tr{border-radius:var(--radius);background:var(--surface);margin-bottom:12px;overflow:hidden}.admin-table td{text-align:right;justify-content:space-between;align-items:center;gap:20px;padding:13px 16px;display:flex}.admin-table td:before{content:attr(data-label);color:var(--muted);text-align:left;text-transform:uppercase;font-size:.7rem;font-weight:800}.admin-table td:first-child{border-top:0}.reward-admin-row{grid-template-columns:64px minmax(0,1fr);gap:13px;padding:16px}.reward-admin-row--detailed{grid-template-columns:54px minmax(0,1fr)}.reward-admin-row--detailed .reward-admin-cost{display:none}.reward-admin-cost{width:60px;height:60px}.reward-admin-row .reward-admin-actions{grid-column:1/-1;width:100%}.reward-admin-row .status-toggle{flex:1}.sale-form{gap:28px}.cashier-reward-row{grid-template-columns:48px minmax(0,1fr)}.search-input{grid-template-columns:1fr;gap:8px}.search-input button,.search-input input{border-radius:12px;min-height:50px}.preview-paper{padding:26px 22px}.admin-toast{right:18px;bottom:calc(80px + env(safe-area-inset-bottom));left:18px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
