:root,[data-theme=light]{--color-primary: #b69464;--color-primary-soft: #c9ad84;--color-primary-deep: #86683c;--color-primary-contrast: #fbf8f2;--color-accent: #b69464;--color-accent-soft: #d4b585;--color-accent-deep: #86683c;--color-sage: #87a878;--color-sage-soft: #a6c198;--color-sage-deep: #5e7e54;--color-bg: #fbf8f2;--color-surface: #f7f2e9;--color-surface-2: #efe9dd;--color-border: #e1d9c9;--color-border-strong: #c9bea8;--color-text: #1f1f1f;--color-text-soft: #5a5550;--color-text-muted: #8a8278;--color-success: #4f7d4a;--color-danger: #b54243;--color-warning: #c98a3a;--color-info: #3a6b8f;--color-scrim: rgba(31, 31, 31, .55);--color-focus-ring: rgba(182, 148, 100, .6)}[data-theme=dark]{--color-primary: #c9a975;--color-primary-soft: #d9bd91;--color-primary-deep: #86683c;--color-primary-contrast: #141414;--color-accent: #c9a975;--color-accent-soft: #d9bd91;--color-accent-deep: #86683c;--color-bg: #141414;--color-surface: #1f1f1f;--color-surface-2: #262626;--color-border: #333333;--color-border-strong: #4a4a4a;--color-text: #f4efe3;--color-text-soft: #c4bcb3;--color-text-muted: #8a8278;--color-success: #8db988;--color-danger: #e07b7c;--color-warning: #e0a96d;--color-info: #7eaecc;--color-scrim: rgba(0, 0, 0, .7);--color-focus-ring: rgba(201, 169, 117, .55)}:root{--font-display: "Cormorant Garamond", "Playfair Display", Georgia, "Times New Roman", serif;--font-body: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-script: "Italiana", "Cormorant Garamond", Georgia, serif;--font-mono: "JetBrains Mono", "SF Mono", Menlo, monospace;--fs-xs: .75rem;--fs-sm: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.375rem;--fs-2xl: 1.75rem;--fs-3xl: 2.25rem;--fs-4xl: 2.875rem;--fs-5xl: 3.75rem;--fs-6xl: 4.75rem;--lh-tight: 1.1;--lh-snug: 1.25;--lh-normal: 1.5;--lh-loose: 1.7;--tracking-tight: -.01em;--tracking-normal: 0;--tracking-wide: .04em;--tracking-widest: .18em}html{font-family:var(--font-body);font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,.display{font-family:var(--font-display);font-weight:500;line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);color:var(--color-text)}h1,.h1{font-size:clamp(var(--fs-3xl),5vw,var(--fs-5xl))}h2,.h2{font-size:clamp(var(--fs-2xl),4vw,var(--fs-4xl))}h3,.h3{font-size:clamp(var(--fs-xl),2.5vw,var(--fs-2xl))}h4,.h4{font-size:var(--fs-lg)}.eyebrow{font-family:var(--font-body);font-size:var(--fs-xs);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-accent-deep);font-weight:500}.script{font-family:var(--font-script);font-weight:400;letter-spacing:var(--tracking-tight);line-height:var(--lh-tight)}.tabular{font-variant-numeric:tabular-nums}.text-muted{color:var(--color-text-soft)}.text-dim{color:var(--color-text-muted)}:root{--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-2xl: 32px;--radius-full: 999px;--shadow-sm: 0 1px 2px rgba(26, 22, 20, .05);--shadow-md: 0 4px 14px rgba(26, 22, 20, .06);--shadow-lg: 0 12px 32px rgba(26, 22, 20, .1);--shadow-xl: 0 24px 60px rgba(26, 22, 20, .14);--z-base: 1;--z-sticky: 10;--z-overlay: 50;--z-modal: 100;--z-toast: 200;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--duration-fast: .16s;--duration-base: .26s;--duration-slow: .48s}*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body{height:100%}body{background:var(--color-bg);color:var(--color-text);line-height:var(--lh-normal);-webkit-text-size-adjust:100%;text-size-adjust:100%}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer;padding:0}a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}p,h1,h2,h3,h4{overflow-wrap:break-word}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--color-accent-soft);color:var(--color-text)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}[dir=rtl] body{unicode-bidi:plaintext}[dir=rtl] .app-shell{grid-template-columns:1fr 260px}@media(max-width:900px){[dir=rtl] .app-shell{grid-template-columns:1fr;display:block}[dir=rtl] .app-shell__sidebar{left:auto;right:0;transform:translate(100%);border-left:1px solid var(--color-border);border-right:none;box-shadow:-8px 0 32px #28180600}[dir=rtl] .app-shell__sidebar.is-open{transform:translate(0);box-shadow:-8px 0 32px #2818062e}}[dir=rtl] .app-shell__sidebar{border-right:none;border-left:1px solid var(--color-border);order:2}[dir=rtl] .app-shell__main{order:1}[dir=rtl] .btn-arrow-back:before{content:"→"}[dir=ltr] .btn-arrow-back:before{content:"←"}[dir=rtl] .input,[dir=rtl] .textarea,[dir=rtl] .select{text-align:right}[dir=rtl] .auth-shell{direction:rtl}[dir=rtl] .auth-shell__hero{order:2}[dir=rtl] .auth-shell__form{order:1}[dir=rtl] .toast-stack{right:auto;left:var(--space-4)}[dir=rtl] .activity-row .text-dim:last-child{text-align:left}[lang=he]{--font-display: "David Libre", "Frank Ruhl Libre", "Times New Roman", serif;--font-body: "Rubik", "Assistant", "Heebo", system-ui, sans-serif}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--fs-sm);font-weight:600;letter-spacing:.2px;white-space:nowrap;line-height:1;padding:.75rem 1.25rem;border-radius:var(--radius-full);border:1px solid transparent;background:var(--color-text);color:var(--color-primary-contrast);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),transform var(--duration-fast) var(--ease-out)}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn[disabled],.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;transform:none}.btn--primary{background:var(--color-primary);color:var(--color-primary-contrast)}.btn--primary:hover{background:var(--color-primary-deep)}.btn--gold{background:var(--color-accent);color:var(--color-text)}.btn--gold:hover{background:var(--color-accent-deep);color:var(--color-primary-contrast)}.btn--outline{background:transparent;color:var(--color-text);border-color:var(--color-border-strong)}.btn--outline:hover{background:var(--color-surface-2)}.btn--ghost{background:transparent;color:var(--color-text)}.btn--ghost:hover{background:var(--color-surface-2)}.btn--danger{background:var(--color-danger);color:#fff}.btn--danger:hover{filter:brightness(.92)}.btn--sm{padding:.5rem .875rem;font-size:var(--fs-xs)}.btn--lg{padding:1rem 1.75rem;font-size:var(--fs-md)}.btn--block{width:100%}.btn--icon{width:40px;height:40px;padding:0;border-radius:var(--radius-full)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.card--lg{padding:var(--space-8)}.card--flush{padding:0}.card--elevated{box-shadow:var(--shadow-md)}.card--accent{border-top:3px solid var(--color-accent)}.card__title{font-family:var(--font-display);font-size:var(--fs-xl);margin-bottom:var(--space-2)}.card__subtitle{color:var(--color-text-soft);font-size:var(--fs-sm);margin-bottom:var(--space-4)}.card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.card__footer{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex;gap:var(--space-3);justify-content:flex-end}.kpi{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.kpi__label{font-size:var(--fs-xs);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-text-soft);font-weight:600}.kpi__value{font-family:var(--font-display);font-size:clamp(var(--fs-3xl),4vw,var(--fs-4xl));font-variant-numeric:tabular-nums;color:var(--color-primary);line-height:1}.kpi__hint{font-size:var(--fs-sm);color:var(--color-text-soft)}.kpi--accent .kpi__value{color:var(--color-accent-deep)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field__label{font-size:var(--fs-sm);font-weight:600;color:var(--color-text);letter-spacing:.2px}.field__hint{font-size:var(--fs-xs);color:var(--color-text-muted)}.field__error{font-size:var(--fs-xs);color:var(--color-danger)}.input,.textarea,.select{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border-strong);background:var(--color-surface);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--fs-md);line-height:1.4;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.input:hover,.textarea:hover,.select:hover{border-color:var(--color-text-soft)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-focus-ring)}.textarea{resize:vertical;min-height:100px}.input[disabled]{background:var(--color-surface-2);color:var(--color-text-muted);cursor:not-allowed}.input--lg{padding:1rem 1.25rem;font-size:var(--fs-lg);border-radius:var(--radius-lg)}.check{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--fs-sm);user-select:none}.check input{width:18px;height:18px;accent-color:var(--color-primary)}.modal-backdrop{position:fixed;inset:0;background:var(--color-scrim);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);animation:modal-fade var(--duration-base) var(--ease-out)}.modal{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;padding:var(--space-8);box-shadow:var(--shadow-xl);animation:modal-rise var(--duration-base) var(--ease-out)}@media(max-width:600px){.modal-backdrop,.modal-overlay{padding:0;align-items:flex-end}.modal{max-width:100%;max-height:92vh;padding:var(--space-5);border-radius:20px 20px 0 0;animation:modal-slide-up .28s cubic-bezier(.4,0,.2,1)}.modal__header{margin-bottom:var(--space-4);padding-bottom:var(--space-3)}.modal__footer{padding-top:var(--space-3);margin-top:var(--space-4)}}@keyframes modal-slide-up{0%{opacity:.5;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal__title{font-family:var(--font-display);font-size:var(--fs-2xl);margin-bottom:var(--space-3)}.modal__desc{color:var(--color-text-soft);margin-bottom:var(--space-6);font-size:var(--fs-sm);line-height:1.6}.modal__actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.modal__header{padding-bottom:var(--space-4);margin-bottom:var(--space-5);border-bottom:1px solid var(--color-border)}.modal__body{padding-bottom:var(--space-2)}.modal__footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);margin-top:var(--space-5);border-top:1px solid var(--color-border)}.modal-overlay{position:fixed;inset:0;background:var(--color-scrim);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal, 1000);animation:modal-fade var(--duration-base) var(--ease-out)}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.toast-stack{position:fixed;right:var(--space-4);bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);z-index:var(--z-toast)}.toast{background:var(--color-text);color:var(--color-primary-contrast);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--fs-sm);min-width:260px;box-shadow:var(--shadow-lg);animation:modal-rise var(--duration-base) var(--ease-out)}.toast--success{background:var(--color-success)}.toast--danger{background:var(--color-danger)}.container{width:100%;margin-inline:auto;padding-inline:var(--space-4);max-width:var(--container-xl)}.container--narrow{max-width:var(--container-md)}.container--wide{max-width:var(--container-xl)}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.stack--sm{gap:var(--space-2)}.stack--lg{gap:var(--space-8)}.row{display:flex;gap:var(--space-4);align-items:center}.row--wrap{flex-wrap:wrap}.row--between{justify-content:space-between}.grid{display:grid;gap:var(--space-4)}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:900px){.grid--3,.grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;position:relative}.app-shell__sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);padding:0;display:flex;flex-direction:column}.app-shell__sidebar-inner{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-6) var(--space-4);flex:1;min-height:100%;overflow-y:auto}.app-shell__brand{display:flex;align-items:center;gap:10px;margin-bottom:24px;text-decoration:none;color:inherit}.app-shell__brand-mark{width:36px;height:36px;border-radius:10px;background:var(--color-primary);display:grid;place-items:center;color:var(--color-accent);font-family:var(--font-display);font-size:22px;flex-shrink:0}.app-shell__brand-name{font-size:1.25rem;line-height:1}.app-shell__brand-sub{color:var(--color-text-soft);font-size:11px;letter-spacing:.18em;text-transform:uppercase;margin-top:2px}.app-shell__nav{display:flex;flex-direction:column;gap:var(--space-2)}.app-shell__sidebar-foot{margin-top:auto;padding-top:var(--space-6)}.app-shell__user{display:flex;flex-direction:column;gap:var(--space-2)}.app-shell__user-label{color:var(--color-text-soft);font-size:11px}.app-shell__user-email{font-size:13px;font-weight:600;word-break:break-all}.app-shell__main{padding:var(--space-8);background:var(--color-bg);min-width:0}.app-shell__header{margin-bottom:32px}.app-shell__topbar,.app-shell__backdrop{display:none}.nav-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-soft);font-size:var(--fs-sm);font-weight:500;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);text-decoration:none}.nav-link__icon{width:22px;display:inline-flex;justify-content:center;color:var(--color-accent);font-size:14px}.nav-link:hover{background:var(--color-surface-2);color:var(--color-text)}.nav-link.is-active{background:var(--color-surface-2);color:var(--color-primary);font-weight:600}.nav-link.is-active .nav-link__icon{color:var(--color-primary)}@media(max-width:900px){.app-shell{display:block}.app-shell__sidebar{position:fixed;top:0;left:0;height:100vh;height:100dvh;width:84vw;max-width:320px;z-index:60;transform:translate(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);box-shadow:8px 0 32px #28180600;border-right:1px solid var(--color-border);overscroll-behavior:contain}.app-shell__sidebar.is-open{transform:translate(0);box-shadow:8px 0 32px #2818062e}.app-shell__sidebar-inner{padding:calc(env(safe-area-inset-top,0) + 20px) 18px 24px}.app-shell__backdrop{display:block;position:fixed;inset:0;background:#1e120400;backdrop-filter:blur(0);z-index:55;pointer-events:none;transition:background .22s ease,backdrop-filter .22s ease}.app-shell__backdrop.is-visible{background:#1e12046b;backdrop-filter:blur(3px);pointer-events:auto}body.drawer-open{overflow:hidden}.app-shell__topbar{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:40;background:#fffcf4eb;-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--color-border);padding:calc(env(safe-area-inset-top,0) + 10px) 14px 10px;margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) 16px}.app-shell__topbar-title{flex:1;min-width:0;text-align:center}.app-shell__topbar-eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-soft);line-height:1;margin-bottom:2px}.app-shell__topbar-page{font-family:var(--font-display);font-size:17px;font-weight:500;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-shell__hamburger{appearance:none;background:transparent;border:1px solid var(--color-border);border-radius:10px;width:40px;height:40px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;flex-shrink:0}.app-shell__hamburger span{display:block;width:18px;height:1.5px;background:var(--color-text);border-radius:2px}.app-shell__avatar{appearance:none;width:40px;height:40px;border-radius:50%;background:var(--color-primary);color:var(--color-primary-contrast);border:0;font-family:var(--font-body);font-weight:700;font-size:14px;cursor:pointer;flex-shrink:0;box-shadow:0 1px 4px #3c280a2e}.app-shell__main{padding:var(--space-4);padding-bottom:calc(env(safe-area-inset-bottom,0) + var(--space-6))}.app-shell__header{display:none}.nav-link{padding:14px 12px;font-size:15px;border-radius:12px}.nav-link__icon{font-size:16px;width:26px}}@media(min-width:901px){.app-shell__topbar{display:none!important}}.divider-gold{display:block;width:60px;height:1px;background:var(--color-accent);margin-block:var(--space-4)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.25rem .625rem;border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:600;background:var(--color-surface-2);color:var(--color-text-soft);border:1px solid var(--color-border)}.badge--success{background:#e6f0e3;color:var(--color-success);border-color:transparent}.badge--warning{background:#fbf0dd;color:var(--color-warning);border-color:transparent}.badge--danger{background:#f8e2e2;color:var(--color-danger);border-color:transparent}.badge--accent{background:#f8efd6;color:var(--color-accent-deep);border-color:transparent}.fade-in{animation:fade-in var(--duration-slow) var(--ease-out) both}.fade-in-up{animation:fade-in-up var(--duration-slow) var(--ease-out) both}.fade-in-down{animation:fade-in-down var(--duration-slow) var(--ease-out) both}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.delay-1{animation-delay:80ms}.delay-2{animation-delay:.16s}.delay-3{animation-delay:.24s}.delay-4{animation-delay:.32s}body{background:radial-gradient(circle at 20% 0%,rgba(201,169,97,.07),transparent 60%),radial-gradient(circle at 80% 100%,rgba(123,45,58,.05),transparent 60%),var(--color-bg)}.landing-nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--color-bg) 92%,transparent);backdrop-filter:saturate(160%) blur(10px);-webkit-backdrop-filter:saturate(160%) blur(10px);border-bottom:1px solid var(--color-border)}.landing-nav__inner{max-width:var(--container-xl);margin-inline:auto;padding:14px var(--space-6);display:flex;align-items:center;gap:var(--space-6)}.landing-nav__links{display:flex;gap:var(--space-6);flex:1;justify-content:center}.landing-nav__actions{display:flex;align-items:center;gap:var(--space-3)}@media(max-width:820px){.landing-nav__links{display:none}}.landing-nav__burger{display:none;margin-left:auto;background:transparent;border:1px solid var(--color-border-strong);border-radius:12px;width:42px;height:42px;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease,border-color .16s ease}.landing-nav__burger:hover{background:var(--color-surface-2)}.landing-nav__burger:active{transform:scale(.96)}.burger-icon{display:inline-flex;flex-direction:column;justify-content:space-between;width:18px;height:12px}.burger-icon span{display:block;height:1.5px;background:var(--color-text);border-radius:2px;transition:transform .25s var(--ease-out),opacity .2s ease}.burger-icon span:nth-child(1){width:100%}.burger-icon span:nth-child(2){width:75%;align-self:flex-end}.burger-icon span:nth-child(3){width:100%}@media(max-width:820px){.landing-nav__actions{display:none}.landing-nav__burger{display:inline-flex}}@media(max-width:640px){.landing-nav__inner{padding-inline:var(--space-3);gap:var(--space-2)}.brand__name{font-size:18px}.brand__mark{width:28px;height:28px;font-size:17px}.landing-nav__burger{width:40px;height:40px}}:root{--menu-ease: cubic-bezier(.32, .72, 0, 1);--menu-ease-fast: cubic-bezier(.4, 0, 1, 1);--menu-dur: .38s;--menu-dur-fade: .26s}.mobile-menu-backdrop{position:fixed;inset:0;background:#14100e00;backdrop-filter:blur(0px) saturate(100%);-webkit-backdrop-filter:blur(0px) saturate(100%);z-index:1100;transition:background var(--menu-dur-fade) var(--menu-ease),backdrop-filter var(--menu-dur-fade) var(--menu-ease),-webkit-backdrop-filter var(--menu-dur-fade) var(--menu-ease);will-change:background,backdrop-filter}.mobile-menu-backdrop.is-open{background:#14100e73;backdrop-filter:blur(10px) saturate(140%);-webkit-backdrop-filter:blur(10px) saturate(140%)}.mobile-menu{position:fixed;top:0;right:0;bottom:0;z-index:1101;width:min(92vw,420px);height:100dvh;background:var(--color-bg);padding:max(env(safe-area-inset-top,0px),16px) var(--space-5) max(env(safe-area-inset-bottom,0px),16px);display:flex;flex-direction:column;overflow-y:auto;box-shadow:-24px 0 64px -24px #00000059;transform:translate3d(100%,0,0);transition:transform var(--menu-dur) var(--menu-ease);will-change:transform}.mobile-menu.is-open{transform:translateZ(0)}.mobile-menu__head{display:flex;align-items:center;justify-content:space-between;padding-block:var(--space-2)}.mobile-menu__close{width:40px;height:40px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-soft);display:grid;place-items:center;cursor:pointer;transition:background .18s ease,color .18s ease,transform .2s var(--menu-ease)}.mobile-menu__close:hover{background:var(--color-surface-2);color:var(--color-text)}.mobile-menu__close:active{transform:scale(.92)}.mobile-menu__slogan{font-family:var(--font-display);font-style:italic;color:var(--color-accent);font-size:1.125rem;letter-spacing:.04em;margin:var(--space-3) 0 var(--space-5);opacity:0;transform:translate3d(0,12px,0);transition:opacity .42s var(--menu-ease) var(--stagger, 0ms),transform .52s var(--menu-ease) var(--stagger, 0ms);will-change:opacity,transform}.mobile-menu.is-open .mobile-menu__slogan{opacity:1;transform:translateZ(0)}.mobile-menu__list{display:flex;flex-direction:column;gap:10px;margin-bottom:var(--space-5)}.mobile-menu__row{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);text-decoration:none;font-size:1rem;font-weight:500;opacity:0;transform:translate3d(0,14px,0);transition:opacity .46s var(--menu-ease) var(--stagger, 0ms),transform .54s var(--menu-ease) var(--stagger, 0ms),background .18s ease,border-color .18s ease;will-change:opacity,transform}.mobile-menu.is-open .mobile-menu__row{opacity:1;transform:translateZ(0)}.mobile-menu__row:hover{background:var(--color-surface-2);border-color:var(--color-border-strong)}.mobile-menu__row:active{background:var(--color-surface-2);transition-duration:80ms}.mobile-menu__glyph{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(180deg,var(--color-surface-2),var(--color-bg));border:1px solid var(--color-border);color:var(--color-primary);font-family:var(--font-display);font-size:16px;flex:none}.mobile-menu__row-label{flex:1}.mobile-menu__row-arrow{color:var(--color-text-muted);display:inline-flex;transition:transform .24s var(--menu-ease),color .2s ease}.mobile-menu__row:hover .mobile-menu__row-arrow{transform:translate(3px);color:var(--color-text)}.mobile-menu__cta{margin-top:auto;margin-bottom:var(--space-3);opacity:0;transform:translate3d(0,14px,0);transition:opacity .46s var(--menu-ease) var(--stagger, 0ms),transform .54s var(--menu-ease) var(--stagger, 0ms),background .2s ease,color .2s ease;will-change:opacity,transform}.mobile-menu.is-open .mobile-menu__cta{opacity:1;transform:translateZ(0)}.mobile-menu__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);opacity:0;transition:opacity .48s var(--menu-ease) var(--stagger, 0ms)}.mobile-menu.is-open .mobile-menu__foot{opacity:1}.mobile-menu__legal{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}@media(prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu-backdrop,.mobile-menu__row,.mobile-menu__slogan,.mobile-menu__cta,.mobile-menu__foot{transition-duration:.01ms!important;transition-delay:0ms!important}}@media(max-width:380px){.mobile-menu{padding-inline:var(--space-4)}}.nav-link-top{font-size:13px;font-weight:500;color:var(--color-text-soft);transition:color var(--duration-fast) var(--ease-out);padding:4px 0;border-bottom:1px solid transparent}.nav-link-top:hover{color:var(--color-primary);border-bottom-color:var(--color-accent)}.brand{display:inline-flex;align-items:center;gap:10px}.brand__mark{width:32px;height:32px;border-radius:8px;background:var(--color-primary);color:var(--color-accent);font-family:var(--font-display);font-size:20px;display:grid;place-items:center;font-weight:500}.brand__name{font-family:var(--font-display);font-size:22px;font-weight:500;color:var(--color-text);letter-spacing:.5px}.lang-switcher{display:inline-flex;gap:2px;background:var(--color-surface-2);padding:4px;border-radius:var(--radius-full);border:1px solid var(--color-border)}.lang-pill{padding:4px 10px;font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--color-text-soft);border-radius:var(--radius-full);transition:background var(--duration-fast),color var(--duration-fast)}.lang-pill:hover{color:var(--color-text)}.lang-pill.is-active{background:var(--color-primary);color:var(--color-primary-contrast)}.lang-switcher--dark{background:#ffffff0f;border-color:#ffffff1f}.lang-switcher--dark .lang-pill{color:#ffffffb3}.lang-switcher--dark .lang-pill:hover{color:#fff}.hero{position:relative;isolation:isolate;padding:clamp(96px,14vw,180px) 0 clamp(80px,10vw,120px);background:var(--color-bg);overflow:hidden}.hero__bg{position:absolute;left:50%;bottom:0;transform:translate(-50%);width:min(120px,30vw);height:1px;background:var(--color-primary);opacity:.4;z-index:0}.hero__inner{max-width:960px;margin-inline:auto;text-align:center;color:var(--color-text);padding-inline:var(--space-6);position:relative;z-index:1}.hero__title{font-family:var(--font-display);font-weight:400;font-size:clamp(2.5rem,7vw,5rem);line-height:1.05;margin:var(--space-3) 0;color:var(--color-text);letter-spacing:-.01em}.hero__slogan{display:inline-flex;align-items:center;gap:18px;margin:var(--space-3) 0 var(--space-6);font-family:var(--font-display);font-style:italic;font-weight:400;font-size:clamp(1.25rem,2.4vw,1.875rem);color:var(--color-accent);letter-spacing:.04em;line-height:1}.hero__slogan:before,.hero__slogan:after{content:"";display:inline-block;width:clamp(40px,8vw,80px);height:1px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent);opacity:.7}.hero__subtitle{font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.55;color:var(--color-text-soft);max-width:640px;margin:0 auto var(--space-8)}.hero__ctas{display:inline-flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.hero__stats{margin-top:clamp(60px,8vw,90px);display:flex;gap:clamp(24px,4vw,64px);justify-content:center;flex-wrap:wrap;color:var(--color-text)}.hero__stat{text-align:center;min-width:120px}.hero__stat-value{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);color:var(--color-primary);line-height:1;font-variant-numeric:tabular-nums}.hero__stat-label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-soft);margin-top:8px}@media(max-width:640px){.hero{padding:clamp(56px,14vw,80px) 0 clamp(40px,8vw,56px)}.hero__inner .eyebrow{font-size:11px;letter-spacing:.22em}.hero__title{font-size:clamp(2rem,9vw,2.75rem);margin:12px 0}.hero__slogan{font-size:clamp(1rem,4.5vw,1.25rem);gap:12px;margin:8px 0 18px}.hero__slogan:before,.hero__slogan:after{width:clamp(28px,8vw,48px)}.hero__subtitle{font-size:.9375rem;margin-bottom:20px}.hero__ctas,.hero__ctas .btn{width:100%}.hero__cta--secondary{display:none}.hero__stats{margin-top:clamp(28px,7vw,40px);gap:clamp(16px,5vw,28px)}.hero__stat{min-width:88px}.hero__stat-value{font-size:clamp(1.5rem,7vw,2rem)}.hero__stat-label{font-size:10px;letter-spacing:.14em}}.login-sheet{padding-bottom:calc(var(--safe-bottom, 0px) + 28px)}.login-sheet__close{position:absolute;top:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--color-border);background:var(--color-bg);border-radius:50%;color:var(--color-text-soft);cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease}.login-sheet__close:hover{background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-border-strong)}.login-options{display:flex;flex-direction:column;gap:12px;margin-top:8px}.login-option{display:flex;align-items:center;gap:16px;padding:18px;border-radius:16px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);text-decoration:none;transition:transform .2s var(--ease-out),border-color .2s ease,box-shadow .2s ease,background .2s ease;min-height:76px}.login-option:active{transform:scale(.985)}.login-option__icon{flex:none;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--color-surface-2);color:var(--color-primary)}.login-option__body{flex:1;min-width:0}.login-option__title{font-family:var(--font-display);font-size:1.0625rem;font-weight:500;line-height:1.2;margin-bottom:4px}.login-option__subtitle{font-size:.8125rem;color:var(--color-text-soft);line-height:1.4}.login-option__arrow{flex:none;color:var(--color-text-muted);transition:transform .2s var(--ease-out),color .2s ease}.login-option--primary{border-color:var(--color-accent);background:linear-gradient(180deg,color-mix(in srgb,var(--color-accent) 7%,var(--color-bg)) 0%,var(--color-bg) 100%)}.login-option--primary .login-option__icon{background:var(--color-accent);color:#fff}.login-option--primary:hover{border-color:var(--color-primary);box-shadow:0 8px 24px -12px color-mix(in srgb,var(--color-accent) 60%,transparent)}.login-option--primary:hover .login-option__arrow{transform:translate(3px);color:var(--color-primary)}.login-option--secondary:hover{border-color:var(--color-border-strong);background:var(--color-surface-2)}.login-option--secondary:hover .login-option__arrow{transform:translate(3px);color:var(--color-text)}.login-sheet-backdrop.is-closing{animation:fade-in .2s reverse forwards}.login-sheet-backdrop.is-closing .sheet{animation:slide-up .2s reverse forwards}.landing-nav__signin{padding:7px 14px;font-size:13px;letter-spacing:.02em;white-space:nowrap;background:transparent;color:var(--color-text);border:1px solid var(--color-primary);border-radius:999px;font-weight:500;cursor:pointer;transition:background .18s ease,color .18s ease}.landing-nav__signin:hover{background:var(--color-primary);color:#fff}@media(max-width:640px){.landing-nav__signin{padding:6px 12px;font-size:12.5px}}.section{padding:clamp(64px,9vw,120px) 0}.section--alt{background:var(--color-surface-2)}.section--dark{background:var(--color-text);color:#fff}.section--cta{background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-surface-2) 100%)}.section__head{text-align:center;max-width:760px;margin:0 auto clamp(40px,6vw,72px)}.section__title{font-family:var(--font-display);font-weight:500;font-size:clamp(2rem,4vw,3.25rem);line-height:1.1;letter-spacing:-.01em;margin-top:12px}.concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}@media(max-width:880px){.concept-grid{grid-template-columns:1fr}}.concept-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);position:relative;transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.concept-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.concept-card__index{font-family:var(--font-display);font-size:4rem;line-height:1;color:var(--color-accent);opacity:.4;position:absolute;top:12px;inset-inline-end:20px;font-variant-numeric:tabular-nums}.concept-card__title{font-family:var(--font-display);font-size:1.5rem;margin-bottom:var(--space-3)}.concept-card__body{color:var(--color-text-soft);line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5)}@media(max-width:880px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.features-grid{grid-template-columns:1fr}}.feature-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:border-color var(--duration-fast) var(--ease-out)}.feature-card:hover{border-color:var(--color-accent)}.feature-card__icon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent-deep) 100%);color:var(--color-primary-contrast);display:grid;place-items:center;font-size:18px;margin-bottom:var(--space-4)}.feature-card__title{font-family:var(--font-display);font-size:1.35rem;margin-bottom:var(--space-2)}.feature-card__body{color:var(--color-text-soft);line-height:1.55;font-size:14.5px}.partners{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--space-12);align-items:center;color:#ffffffe0}@media(max-width:900px){.partners{grid-template-columns:1fr}.partners__visual{display:none}}.partners__body{line-height:1.7;font-size:16px;margin:var(--space-4) 0 var(--space-6)}.partners__list{list-style:none;padding:0;margin:0 0 var(--space-8);display:flex;flex-direction:column;gap:var(--space-3)}.partners__list li{padding-inline-start:26px;position:relative;line-height:1.5}.partners__list li:before{content:"";position:absolute;inset-inline-start:0;top:9px;width:14px;height:1px;background:var(--color-accent)}.partners__visual{height:420px;border-radius:var(--radius-2xl);background:linear-gradient(180deg,#00000026,#0000),url(https://images.unsplash.com/photo-1519225421980-715cb0215aed?w=1400&q=85) center/cover no-repeat}.faq-list{display:flex;flex-direction:column;gap:var(--space-2)}.faq-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:0 var(--space-6);transition:border-color var(--duration-fast) var(--ease-out)}.faq-item[open]{border-color:var(--color-accent)}.faq-item summary{cursor:pointer;list-style:none;padding:var(--space-5) 0;font-family:var(--font-display);font-size:1.25rem;font-weight:500;position:relative;padding-inline-end:36px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;inset-inline-end:4px;top:50%;transform:translateY(-50%);color:var(--color-accent);font-size:24px;transition:transform var(--duration-fast) var(--ease-out)}.faq-item[open] summary:after{content:"−"}.faq-item p{padding-bottom:var(--space-5);color:var(--color-text-soft);line-height:1.7}.cta__body{color:var(--color-text-soft);font-size:1.05rem;line-height:1.55;margin:var(--space-4) 0 var(--space-8)}.footer{background:var(--color-text);color:#ffffffbf;padding:var(--space-12) 0 var(--space-6)}.footer__inner{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:var(--space-8);align-items:start}@media(max-width:880px){.footer__inner{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1 / -1}}.footer__brand .brand__mark{background:var(--color-primary)}.footer__brand .brand__name{color:#fff}.footer__tagline{margin-top:var(--space-3);font-style:italic;max-width:280px;line-height:1.5;font-size:14px}.footer__col{display:flex;flex-direction:column;gap:var(--space-2)}.footer__col-title{font-family:var(--font-display);font-size:1.1rem;color:#fff;margin-bottom:var(--space-2)}.footer__col a{color:#ffffffa6;font-size:14px;transition:color var(--duration-fast) var(--ease-out)}.footer__col a:hover{color:var(--color-accent)}.footer__bottom{margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid rgba(255,255,255,.1)}.footer__bottom .lang-switcher--dark .lang-pill.is-active{background:var(--color-accent);color:var(--color-text)}.wedding-placeholder{min-height:100vh;display:grid;place-items:center;position:relative;isolation:isolate;text-align:center;padding:var(--space-12) var(--space-6)}.wedding-placeholder__bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 50% 20%,rgba(201,169,97,.15),transparent 60%),radial-gradient(circle at 80% 80%,rgba(123,45,58,.1),transparent 60%),var(--color-bg)}:root{--app-header-h: 56px;--app-bottom-h: 64px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}.app-shell{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--color-bg);color:var(--color-text)}.app-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);height:calc(var(--app-header-h) + var(--safe-top));padding:var(--safe-top) var(--space-5) 0;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.app-header__title{font-family:var(--font-display);font-weight:400;font-size:1.125rem;letter-spacing:-.01em;margin:0;flex:1;text-align:center}.app-header__back,.app-header__action{width:40px;height:40px;display:grid;place-items:center;border-radius:999px;border:none;background:transparent;color:var(--color-text);cursor:pointer}.app-header__back:hover,.app-header__action:hover{background:var(--color-surface-2)}.app-header__brand{font-family:var(--font-display);font-size:1.5rem;font-weight:400;letter-spacing:-.01em;flex:1;text-align:center}.app-screen{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--app-bottom-h) + var(--safe-bottom) + var(--space-6))}.app-screen--centered{display:flex;flex-direction:column;justify-content:center;padding:0 var(--space-6) calc(var(--app-bottom-h) + var(--safe-bottom) + var(--space-6))}.app-section{padding:var(--space-6) var(--space-5)}.app-section--hero{padding-top:var(--space-8);padding-bottom:var(--space-4)}.app-eyebrow{font-family:var(--font-body);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);font-weight:500}.app-bottom-nav{flex-shrink:0;position:relative;display:grid;grid-template-columns:repeat(var(--bottom-cols, 2),1fr);height:calc(var(--app-bottom-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--color-bg);border-top:1px solid var(--color-border)}.app-bottom-nav__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--color-text-muted);text-decoration:none;font-size:11px;letter-spacing:.05em;font-weight:500;transition:color .2s}.app-bottom-nav__item.is-active{color:var(--color-primary)}.app-bottom-nav__icon{font-size:18px;line-height:1}.wedding-card{display:block;margin:var(--space-3) var(--space-5);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;color:var(--color-text);text-decoration:none;transition:transform .15s,box-shadow .15s}.wedding-card:active{transform:scale(.99)}.wedding-card__couple{font-family:var(--font-display);font-size:1.5rem;font-weight:400;letter-spacing:-.01em;margin-bottom:var(--space-1)}.wedding-card__date{font-size:.875rem;color:var(--color-text-soft);letter-spacing:.02em}.wedding-card__hairline{height:1px;background:var(--color-primary);opacity:.4;margin:var(--space-3) 0;width:40px}.wedding-card__meta{display:flex;align-items:center;justify-content:space-between;font-size:.8125rem;color:var(--color-text-soft)}.wedding-card__countdown{font-family:var(--font-display);font-size:1.125rem;color:var(--color-primary)}.wedding-hero{padding:var(--space-8) var(--space-5) var(--space-6);text-align:center;border-bottom:1px solid var(--color-border)}.wedding-hero__couple{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,8vw,2.75rem);letter-spacing:-.01em;line-height:1.1;margin:var(--space-2) 0}.wedding-hero__ampersand{display:block;color:var(--color-primary);font-style:italic;font-size:.85em;margin:4px 0}.wedding-hero__date{font-size:.9375rem;color:var(--color-text-soft);letter-spacing:.05em;margin-bottom:var(--space-4)}.wedding-hero__countdown{display:inline-flex;gap:var(--space-3);margin-top:var(--space-2)}.wedding-hero__countdown-cell{text-align:center;min-width:56px}.wedding-hero__countdown-value{font-family:var(--font-display);font-size:1.75rem;color:var(--color-primary);font-variant-numeric:tabular-nums;line-height:1}.wedding-hero__countdown-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);margin-top:4px}.guest-table-card{margin:var(--space-4) var(--space-5);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;text-align:center}.guest-table-card__label{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-2)}.guest-table-card__name{font-family:var(--font-display);font-size:1.75rem;color:var(--color-primary);margin:var(--space-1) 0}.guest-table-card__seat{font-size:.875rem;color:var(--color-text-soft)}.venue-card{margin:var(--space-3) var(--space-5);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px}.venue-card__type{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-2);font-weight:500}.venue-card__name{font-family:var(--font-display);font-size:1.25rem;margin-bottom:var(--space-1)}.venue-card__address{font-size:.875rem;color:var(--color-text-soft);margin-bottom:var(--space-4)}.venue-card__time{display:inline-block;font-size:.8125rem;color:var(--color-text-soft);margin-bottom:var(--space-4)}.venue-card__actions{display:flex;gap:var(--space-2)}.venue-card__action{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;height:40px;background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:999px;color:var(--color-text);text-decoration:none;font-size:13px;font-weight:500}.venue-card__action:active{background:var(--color-surface-2)}.personal-message{margin:var(--space-4) var(--space-5);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-primary);border-radius:16px;text-align:center}.personal-message__quote{font-family:var(--font-display);font-style:italic;font-size:1.0625rem;line-height:1.5;color:var(--color-text)}.otp-input-row{display:flex;gap:var(--space-2);justify-content:center;margin:var(--space-4) 0}.otp-input{width:44px;height:56px;text-align:center;font-size:1.5rem;font-family:var(--font-display);border:1px solid var(--color-border-strong);border-radius:12px;background:var(--color-surface);color:var(--color-text);font-variant-numeric:tabular-nums}.otp-input:focus{outline:2px solid var(--color-primary);outline-offset:2px;border-color:var(--color-primary)}.empty-state{text-align:center;padding:var(--space-12) var(--space-6)}.empty-state__icon{font-size:48px;margin-bottom:var(--space-4);color:var(--color-primary);opacity:.7}.empty-state__title{font-family:var(--font-display);font-size:1.5rem;margin-bottom:var(--space-2)}.empty-state__body{color:var(--color-text-soft);font-size:.9375rem;max-width:320px;margin:0 auto}.venue-card__photos{display:flex;gap:var(--space-2);margin:var(--space-3) calc(var(--space-5) * -1) var(--space-4);padding:0 var(--space-5);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.venue-card__photos::-webkit-scrollbar{display:none}.venue-card__photo{flex:0 0 auto;width:200px;height:140px;border-radius:12px;background-size:cover;background-position:center;scroll-snap-align:start;border:1px solid var(--color-border)}.venue-card__contacts{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.venue-contact{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.venue-contact__info{flex:1;min-width:0}.venue-contact__role{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted)}.venue-contact__name{font-size:.875rem;color:var(--color-text);font-weight:500;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.venue-contact__actions{display:flex;gap:6px;flex-shrink:0}.venue-contact__pill{width:36px;height:36px;border-radius:999px;display:grid;place-items:center;background:var(--color-bg);border:1px solid var(--color-border-strong);color:var(--color-primary);font-size:16px;text-decoration:none}.venue-contact__pill:active{background:var(--color-surface-2)}.vendor-card{margin:var(--space-3) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;overflow:hidden}.vendor-card__cover{height:140px;background-size:cover;background-position:center;background-color:var(--color-surface-2)}.vendor-card__body{padding:var(--space-4) var(--space-5)}.vendor-card__category{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--color-primary);font-weight:500;margin-bottom:4px}.vendor-card__name{font-family:var(--font-display);font-size:1.25rem;font-weight:400;margin-bottom:var(--space-2)}.vendor-card__desc{font-size:.875rem;color:var(--color-text-soft);line-height:1.5;margin-bottom:var(--space-3)}.vendor-card__actions{display:flex;gap:6px;flex-wrap:wrap}.vendor-card__action{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:999px;color:var(--color-text);text-decoration:none;font-size:12px;font-weight:500}.vendor-card__action:active{background:var(--color-surface-2)}.gift-cta{margin:var(--space-4) var(--space-5);padding:var(--space-6);background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 12%,var(--color-surface)) 0%,var(--color-surface) 100%);border:1px solid var(--color-primary);border-radius:20px;text-align:center;position:relative;overflow:hidden}.gift-cta__icon{font-size:28px;margin-bottom:var(--space-2)}.gift-cta__title{font-family:var(--font-display);font-size:1.25rem;font-weight:400;margin-bottom:var(--space-1)}.gift-cta__body{font-size:.875rem;color:var(--color-text-soft);margin-bottom:var(--space-4)}.gift-cta__button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--color-primary);color:#fff;padding:12px 28px;border-radius:999px;border:none;font-weight:500;font-size:14px;cursor:pointer;letter-spacing:.05em;transition:transform .15s}.gift-cta__button:active{transform:scale(.97)}.sheet-backdrop{position:fixed;inset:0;background:#14100e99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;z-index:1000;animation:fade-in var(--duration-base) var(--ease-out) both}.sheet{width:100%;max-width:540px;max-height:92vh;background:var(--color-surface);border-radius:24px 24px 0 0;padding:var(--space-5) var(--space-5) calc(var(--safe-bottom) + var(--space-6));overflow-y:auto;animation:slide-up var(--duration-base) var(--ease-out);position:relative}@media(min-width:720px){.sheet-backdrop{align-items:center}.sheet{border-radius:24px;max-height:86vh}}.sheet__handle{width:36px;height:4px;background:var(--color-border-strong);border-radius:999px;margin:0 auto var(--space-4)}.sheet__title{font-family:var(--font-display);font-weight:400;font-size:1.5rem;margin:0 0 var(--space-2);text-align:center}.sheet__subtitle{text-align:center;color:var(--color-text-soft);font-size:.9375rem;margin-bottom:var(--space-5)}@keyframes slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.amount-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:var(--space-3)}.amount-chip{padding:14px 0;border:1px solid var(--color-border);background:var(--color-bg);border-radius:12px;font-size:16px;font-weight:500;color:var(--color-text);cursor:pointer;text-align:center;transition:all .15s}.amount-chip.is-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.amount-input-row{position:relative;margin-bottom:var(--space-4)}.amount-input-row .input{text-align:center;font-size:26px;font-weight:600;font-family:var(--font-body);letter-spacing:0;padding:14px 44px 14px 14px}.amount-input-row .input::-webkit-outer-spin-button,.amount-input-row .input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.amount-input-row .input[type=number]{-moz-appearance:textfield;appearance:textfield}.amount-input-row__suffix{position:absolute;right:18px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);font-size:20px;font-weight:500;pointer-events:none}.skeleton{background:linear-gradient(90deg,var(--color-surface-2) 25%,var(--color-border) 50%,var(--color-surface-2) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.toast-stack{position:fixed;bottom:calc(var(--app-bottom-h) + var(--safe-bottom) + 16px);left:50%;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{background:var(--color-text);color:var(--color-bg);padding:10px 20px;border-radius:999px;font-size:13px;box-shadow:0 4px 16px #00000026;max-width:calc(100vw - 32px);pointer-events:auto}.toast--success{background:var(--color-success);color:#fff}.toast--danger{background:var(--color-danger);color:#fff}
