.app{min-height:100vh}.loading{text-align:center;padding:40px;color:var(--color-text-secondary);font-size:16px}.empty-state{text-align:center;padding:60px 20px}.empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.home{position:relative;min-height:100vh;min-height:100svh;background:var(--color-ink);color:var(--color-ink-text);color-scheme:dark;--fs-eyebrow: .8125rem;--fs-small: .875rem;--fs-body: .9375rem;--fs-base: 1rem;--fs-title: 1.125rem;--fs-lead: clamp(1.0625rem, 1.5vw, 1.1875rem);--fs-h2: clamp(1.625rem, 3.4vw, 2.25rem);--fs-h1: clamp(2rem, 4.8vw, 3.25rem);--fs-wordmark: clamp(1.75rem, 3vw, 2.5rem);--fs-numeral: clamp(2.25rem, 4vw, 3rem);--fs-display: clamp(3.5rem, 10vw, 7.5rem);--font-emoji: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "Segoe UI Symbol", sans-serif}.home ::selection{background:color-mix(in srgb,var(--color-primary) 45%,transparent)}.home :is(a,button,input):focus-visible{outline:2px solid var(--color-peach);outline-offset:3px;border-radius:4px}.home-content{position:relative;z-index:1}.ambient{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}.ambient-field{position:absolute;will-change:transform;transition:transform .9s cubic-bezier(.22,1,.36,1)}.ambient-field-core{display:block;width:100%;height:100%;filter:blur(48px)}.ambient-field-left{top:-20%;left:-26vw;width:84vw;height:130%;transform:translate3d(calc(var(--mx, 0) * 20px),calc(var(--my, 0) * 10px),0)}.ambient-field-left .ambient-field-core{background:radial-gradient(ellipse 62% 48% at 42% 38%,color-mix(in srgb,var(--color-primary) 58%,transparent),transparent 74%);animation:field-approach-left 21s ease-in-out infinite alternate}.ambient-field-right{bottom:-24%;right:-26vw;width:84vw;height:130%;transform:translate3d(calc(var(--mx, 0) * -20px),calc(var(--my, 0) * -10px),0)}.ambient-field-right .ambient-field-core{background:radial-gradient(ellipse 62% 48% at 58% 62%,color-mix(in srgb,var(--color-secondary) 58%,transparent),transparent 74%);animation:field-approach-right 26s ease-in-out infinite alternate}@keyframes field-approach-left{to{transform:translate3d(7vw,-3vh,0) scale(1.06)}}@keyframes field-approach-right{to{transform:translate3d(-7vw,3vh,0) scale(1.06)}}.ambient-bloom{position:absolute;left:50%;top:44%;width:min(44vw,560px);aspect-ratio:1.4;transform:translate(-50%,-50%);background:radial-gradient(ellipse,color-mix(in srgb,var(--color-peach) 22%,transparent),color-mix(in srgb,var(--color-secondary) 13%,transparent) 45%,transparent 70%);animation:bloom-breathe 9s ease-in-out infinite alternate}@keyframes bloom-breathe{0%{opacity:.55;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1.07)}}.ambient-food{position:absolute;bottom:-8vh;left:calc(var(--x) * 1vw);font-family:var(--font-emoji);font-size:calc(var(--s) * 1px);line-height:1;opacity:0;filter:saturate(.8);will-change:transform,opacity;animation:food-rise calc(var(--d) * 1s) linear infinite;animation-delay:calc(var(--delay) * -1s)}@keyframes food-rise{0%{transform:translateZ(0) rotate(-9deg);opacity:0}12%{opacity:.22}85%{opacity:.18}to{transform:translate3d(var(--wob, 14px),-114vh,0) rotate(9deg);opacity:0}}.ambient-noise{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.home-hero{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 20px 56px}.home-wordmark{font-size:var(--fs-wordmark);font-weight:800;letter-spacing:-.04em;line-height:1;background:var(--gradient-wordmark);-webkit-background-clip:text;background-clip:text;color:transparent}.home-tagline{margin-top:14px;font-size:var(--fs-h1);font-weight:700;letter-spacing:-.025em;line-height:1.12;text-wrap:balance}.home-tagline-accent{background:var(--gradient-warm);-webkit-background-clip:text;background-clip:text;color:transparent}.home-sub{margin-top:16px;max-width:34em;font-size:var(--fs-lead);line-height:1.55;color:var(--color-ink-text-dim)}.home-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:46px;height:46px;border-radius:13px;font-family:var(--font-emoji);font-size:24px;line-height:1;background:color-mix(in srgb,var(--tint) 15%,var(--color-glass));border:1px solid color-mix(in srgb,var(--tint) 32%,var(--color-glass-border));box-shadow:var(--shadow-glass),0 6px 18px color-mix(in srgb,var(--tint) 16%,transparent)}.home-messages{list-style:none;margin-top:44px;display:flex;gap:16px;width:100%;max-width:940px}.home-message{flex:1;display:flex}.home-message-card{flex:1;display:flex;flex-direction:column;gap:14px;text-align:left}.home-message-title{font-size:var(--fs-title);font-weight:650;letter-spacing:-.01em}.home-message-body{margin-top:6px;font-size:var(--fs-body);line-height:1.55;color:var(--color-ink-text-dim)}.home-cta{margin-top:44px;width:100%;display:flex;flex-direction:column;align-items:center}.home-cities{margin-top:16px;font-size:var(--fs-small);color:var(--color-ink-text-dim)}.home-cities strong{color:var(--color-ink-text);font-weight:600}.waitlist-form{display:flex;align-items:stretch;gap:10px;width:100%;max-width:480px;flex-wrap:wrap;justify-content:center}.waitlist-input{flex:1 1 240px;min-width:0;padding:14px 18px;font-size:var(--fs-base);font-family:inherit;color:var(--color-ink-text);background:var(--color-glass);border:1px solid var(--color-glass-border);border-radius:12px;transition:border-color .2s ease,background-color .2s ease}.waitlist-input::placeholder{color:color-mix(in srgb,var(--color-ink-text-dim) 75%,transparent)}.waitlist-input:hover{border-color:color-mix(in srgb,var(--color-ink-text) 26%,transparent)}.waitlist-input:focus{background:color-mix(in srgb,var(--color-ink-text) 9%,transparent)}.waitlist-submit{white-space:nowrap}.waitlist-error{width:100%;font-size:var(--fs-small);color:var(--color-peach)}.waitlist-success{display:flex;align-items:center;gap:10px;padding:14px 22px;font-size:var(--fs-base);border:1px solid color-mix(in srgb,var(--color-teal) 40%,transparent);border-radius:12px;background:color-mix(in srgb,var(--color-teal) 10%,transparent)}.waitlist-success-mark{color:var(--color-teal);font-weight:700}.home-section{max-width:960px;margin:0 auto;padding:88px 20px}.home-h2{font-size:var(--fs-h2);font-weight:700;letter-spacing:-.02em;text-align:center;text-wrap:balance}.home-lead{margin:14px auto 0;max-width:40em;font-size:var(--fs-lead);line-height:1.55;text-align:center;color:var(--color-ink-text-dim)}.home-scale{position:relative;list-style:none;margin:34px auto 0;max-width:720px;display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.home-scale-step{position:relative;padding-top:20px;font-size:var(--fs-eyebrow);text-align:center;color:var(--color-ink-text-dim)}.home-scale:before{content:"";position:absolute;top:5px;left:10%;right:10%;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary) 55%,var(--color-peach));opacity:.4;border-radius:1px}.home-scale-step:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:12px;height:12px;border-radius:50%;background:color-mix(in srgb,var(--color-primary),var(--color-peach) calc(var(--i) / var(--n) * 100%));box-shadow:0 0 0 4px var(--color-ink)}.home-match{list-style:none;margin-top:40px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.home-match-item{padding:16px 18px;border-radius:14px;background:var(--color-glass);border:1px solid var(--color-glass-border)}.home-match-label{font-size:var(--fs-title);font-weight:650;letter-spacing:-.01em}.home-match-note{margin-top:4px;font-size:var(--fs-body);line-height:1.5;color:var(--color-ink-text-dim)}.home-steps{list-style:none;margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.home-step{padding-left:4px}.home-step-num{display:block;font-size:var(--fs-numeral);font-weight:800;letter-spacing:-.03em;line-height:1;background:linear-gradient(150deg,var(--tint),color-mix(in srgb,var(--tint) 55%,#ffffff));-webkit-background-clip:text;background-clip:text;color:transparent}.home-step-title{margin-top:16px;font-size:var(--fs-title);font-weight:650;letter-spacing:-.01em}.home-step-body{margin-top:8px;font-size:var(--fs-body);line-height:1.6;color:var(--color-ink-text-dim)}.home-faq{margin-top:40px;display:grid;grid-template-columns:repeat(2,1fr);gap:14px 32px}.home-faq-q{font-size:var(--fs-title);font-weight:650;letter-spacing:-.01em}.home-faq-a{margin-top:6px;font-size:var(--fs-body);line-height:1.6;color:var(--color-ink-text-dim)}.home-closing{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:640px;padding-top:24px;padding-bottom:120px}.home-period{color:var(--color-peach)}.home-closing-line{margin-top:14px;margin-bottom:32px;font-size:var(--fs-lead);line-height:1.6;color:var(--color-ink-text-dim)}.home-footer{border-top:1px solid var(--color-glass-border);padding:40px 24px 56px;display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.home-footer-wordmark{font-size:var(--fs-title);font-weight:800;letter-spacing:-.03em;background:var(--gradient-wordmark);-webkit-background-clip:text;background-clip:text;color:transparent}.home-footer-desc{max-width:46em;font-size:var(--fs-small);line-height:1.55;color:var(--color-ink-text-dim)}.home-footer-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 8px}.home-footer-links a,.home-signin{font-size:var(--fs-small);color:var(--color-ink-text-dim);padding:10px 12px;transition:color .2s ease}.home-footer-links a:hover,.home-signin:hover{color:var(--color-ink-text)}.home-signin{background:none;border:none;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--color-ink-text-dim) 50%,transparent)}.home-footer-note{font-size:var(--fs-eyebrow);color:var(--color-ink-text-dim)}.home-intro-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;padding:24px}.intro-live.intro-full .home-intro-overlay{display:grid;place-items:center;text-align:center}.home-intro-overlay>p{grid-area:1 / 1;opacity:0}.home-intro-wordmark{font-size:var(--fs-display);font-weight:800;letter-spacing:-.04em;line-height:1;background:var(--gradient-wordmark);-webkit-background-clip:text;background-clip:text;color:transparent}.home-intro-tagline{font-size:clamp(2.25rem,6vw,4.5rem);font-weight:700;letter-spacing:-.025em;line-height:1.12;text-wrap:balance}@keyframes title-card{0%{opacity:0;transform:translateY(14px) scale(.985)}26%{opacity:1;transform:none}74%{opacity:1;transform:none}to{opacity:0;transform:translateY(-10px)}}.intro-full .home-intro-wordmark{animation:title-card 2.7s cubic-bezier(.33,0,.24,1) both}.intro-full .home-intro-tagline{animation:title-card 2.7s cubic-bezier(.33,0,.24,1) 3s both}@keyframes rise-in{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes bubble-in{0%{opacity:0;transform:translateY(34px) scale(.94)}to{opacity:1;transform:none}}@keyframes slow-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.intro-full .home-wordmark{animation:rise-in 1s cubic-bezier(.22,1,.36,1) 6s both}.intro-full .home-tagline{animation:rise-in 1s cubic-bezier(.22,1,.36,1) 6.15s both}.intro-full .home-sub{animation:rise-in 1s cubic-bezier(.22,1,.36,1) 6.35s both}.intro-full .home-message{animation:bubble-in .95s cubic-bezier(.34,1.5,.64,1) both}.intro-full .home-message:nth-child(1){animation-delay:6.6s}.intro-full .home-message:nth-child(2){animation-delay:6.95s}.intro-full .home-message:nth-child(3){animation-delay:7.3s}.intro-full .home-cta{animation:slow-fade-in 1.8s ease 7.7s both}.intro-full :is(main,.home-footer){animation:slow-fade-in 1.8s ease 7.7s both}.intro-fast .home-wordmark{animation:rise-in .45s ease-out both}.intro-fast :is(.home-tagline,.home-sub){animation:rise-in .45s ease-out .12s both}.intro-fast .home-message{animation:bubble-in .45s cubic-bezier(.34,1.56,.64,1) both}.intro-fast .home-message:nth-child(1){animation-delay:.22s}.intro-fast .home-message:nth-child(2){animation-delay:.3s}.intro-fast .home-message:nth-child(3){animation-delay:.38s}.intro-fast :is(.home-cta,main,.home-footer){animation:rise-in .45s ease-out .5s both}@media (max-width: 767px){.home-hero{padding:36px 18px 44px}.home-sub{margin-top:12px}.home-messages{flex-direction:column;gap:10px;max-width:440px;margin-top:26px}.home-message-card{flex-direction:row;align-items:center;gap:13px}.home-icon{width:42px;height:42px;font-size:22px}.home-message-body{margin-top:3px;line-height:1.45}.home-cta{margin-top:26px}.home-cities{margin-top:12px;padding:0 24px}.home-section{padding:64px 20px}.home-match,.home-faq{grid-template-columns:1fr;gap:12px;margin-top:28px}.home-steps{grid-template-columns:1fr;gap:26px;margin-top:28px}.home-scale{gap:2px;margin-top:30px}.home-scale-step{font-size:10.5px;line-height:1.25}.home-scale:before{left:12%;right:12%}.home-closing{padding-bottom:88px}.ambient-field-core{filter:blur(36px)}.ambient-field-left,.ambient-field-right{width:110vw}.ambient-field-left{left:-60vw}.ambient-field-right{right:-60vw}.ambient-food:nth-child(2n){display:none}.home-message-text{flex:1}}@media (prefers-reduced-motion: reduce){.ambient .ambient-field-core,.ambient .ambient-bloom{animation:none}.ambient .ambient-food{display:none}.ambient-field{transition:none}.home .home-intro-overlay{display:none}.home .home-wordmark,.home .home-tagline,.home .home-sub,.home .home-message,.home .home-cta,.home main,.home .home-footer{animation:none}}.landing{min-height:100vh;background:var(--color-bg);display:flex;align-items:center;justify-content:center;padding:20px}.landing-container{max-width:600px;width:100%}.logo-section{margin-bottom:32px}.logo{font-size:48px;font-weight:800;background:var(--gradient-wordmark);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px;letter-spacing:-1px}.tagline{font-size:14px;color:var(--color-text-muted);font-weight:500;letter-spacing:2px;text-transform:uppercase}.hero-title{font-size:48px;font-weight:800;color:var(--color-text);margin-bottom:16px;line-height:1.2}.gradient-text{background:var(--gradient-warm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:18px;color:var(--color-text-secondary);margin-bottom:48px;line-height:1.6}.features-grid{display:grid;gap:24px;margin-bottom:48px;text-align:left}.feature-icon{font-size:32px;flex-shrink:0}.feature-text strong{display:block;font-size:16px;font-weight:600;color:var(--color-text);margin-bottom:4px}.feature-text p{font-size:14px;color:var(--color-text-secondary);margin:0}.auth-form{margin-bottom:24px}.auth-form h3{font-size:20px;font-weight:600;color:var(--color-text);margin-bottom:20px}.email-input{width:100%;padding:16px;font-size:16px;font-family:inherit;color:var(--color-text);background:var(--color-glass);border:2px solid var(--color-border);border-radius:12px;margin-bottom:16px;transition:border-color .2s}.email-input::placeholder{color:var(--color-text-muted)}.email-input:focus{outline:none;border-color:var(--color-primary)}.error-text{color:var(--color-danger-text);font-size:14px;margin-top:12px}.launch-cities{font-size:14px;color:var(--color-text-muted);margin-top:24px}.launch-cities strong{color:var(--color-primary-bright);font-weight:600}.check-icon{width:80px;height:80px;margin:0 auto 24px;background:var(--gradient-success);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;color:#fff;font-weight:700}.email-sent-card h2{font-size:32px;font-weight:700;color:var(--color-text);margin-bottom:16px}.sent-message{font-size:16px;color:var(--color-text-secondary);margin-bottom:24px;line-height:1.6}.sent-message strong{color:var(--color-text)}.hint{font-size:14px;color:var(--color-text-muted);margin-bottom:24px;line-height:1.6}.hint a{color:var(--color-primary-bright);text-decoration:none;font-weight:600}.hint a:hover{text-decoration:underline}.legal{min-height:100vh;min-height:100svh;background:var(--color-ink);color:var(--color-ink-text);color-scheme:dark;padding:32px 20px 72px}.legal :is(a,button):focus-visible{outline:2px solid var(--color-peach);outline-offset:3px;border-radius:4px}.legal-inner{max-width:42em;margin:0 auto}.legal-wordmark{display:inline-block;font-size:20px;font-weight:800;letter-spacing:-.03em;background:var(--gradient-wordmark);-webkit-background-clip:text;background-clip:text;color:transparent}.legal-title{margin-top:40px;font-size:clamp(28px,4vw,38px);font-weight:700;letter-spacing:-.02em;text-wrap:balance}.legal-updated{margin-top:10px;font-size:14px;color:var(--color-ink-text-dim)}.legal-intro{margin-top:20px;font-size:16px;line-height:1.65;color:var(--color-ink-text-dim)}.legal-section{margin-top:36px}.legal-section h2{font-size:19px;font-weight:650;letter-spacing:-.01em}.legal-section p,.legal-section li{margin-top:10px;font-size:15.5px;line-height:1.65;color:var(--color-ink-text-dim)}.legal-section ul{margin-top:4px;padding-left:22px}.legal-section li{margin-top:6px}.legal-section strong{color:var(--color-ink-text);font-weight:600}.legal a{color:var(--color-ink-text);text-decoration:underline;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--color-ink-text-dim) 60%,transparent);transition:text-decoration-color .2s ease}.legal a:hover{text-decoration-color:var(--color-peach)}.legal a.legal-wordmark{text-decoration:none}.legal-footer{margin-top:56px;padding-top:24px;border-top:1px solid var(--color-glass-border);display:flex;flex-wrap:wrap;gap:8px 24px;font-size:14px;color:var(--color-ink-text-dim)}@media (max-width: 767px){.legal{padding:24px 18px 56px}.legal-title{margin-top:32px}}.interest-selector{display:flex;flex-direction:column;gap:24px}.selected-summary{padding:20px;background:var(--color-primary-tint);border:2px solid var(--color-info-border);border-radius:16px}.selected-count{font-size:16px;font-weight:600;color:var(--color-primary-bright);margin-bottom:12px}.hint-text{color:var(--color-text-muted);font-weight:400;font-size:14px}.selected-badges{display:flex;flex-wrap:wrap;gap:8px}.selected-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--color-surface);color:var(--color-primary-bright);border:2px solid var(--color-primary);border-radius:16px;font-size:13px;font-weight:600}.selected-badge.more{background:var(--color-primary-tint);color:var(--color-primary-bright);border-color:var(--color-primary-tint)}.remove-badge{background:none;border:none;color:var(--color-primary-bright);font-size:14px;font-weight:700;cursor:pointer;padding:0;margin-left:4px;line-height:1}.remove-badge:hover{color:var(--color-danger-text)}.categories-list{display:flex;flex-direction:column;gap:12px}.category-section{background:var(--color-glass);border:2px solid var(--color-border);border-radius:16px;overflow:hidden;transition:border-color .2s}.category-section:hover{border-color:var(--color-primary)}.category-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--color-bg);border:none;cursor:pointer;transition:background-color .2s;font-family:inherit}.category-header:hover,.category-header.expanded,.category-header.has-selections{background:var(--color-primary-tint)}.category-info{display:flex;align-items:center;gap:12px}.category-emoji{font-size:24px}.category-label{font-size:16px;font-weight:600;color:var(--color-text)}.category-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;background:var(--color-primary-tint);color:var(--color-primary-bright);border:1px solid var(--color-primary);border-radius:12px;font-size:12px;font-weight:700}.expand-icon{font-size:12px;color:var(--color-text-muted);transition:transform .2s}.category-header.expanded .expand-icon{transform:rotate(90deg)}.category-section .interests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;padding:20px;background:transparent;animation:slideDown .3s ease}@media (prefers-reduced-motion: reduce){.category-section .interests-grid{animation:none}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.category-section .interest-chip{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;transition:border-color .2s,background-color .2s,transform .2s;font-family:inherit;color:var(--color-text);position:relative}.category-section .interest-chip:hover{border-color:var(--color-primary);background:var(--color-primary-tint);transform:translateY(-2px)}.category-section .interest-chip.selected{background:var(--gradient-primary);border-color:var(--color-primary);color:#fff}.category-section .interest-emoji{font-size:32px}.category-section .interest-label{font-size:13px;font-weight:600;text-align:center}.check-mark{position:absolute;top:8px;right:8px;width:20px;height:20px;background:#fff;color:var(--color-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.quick-actions{display:flex;gap:12px;justify-content:center}.quick-action-btn{padding:10px 20px;background:transparent;color:var(--color-primary);border:2px solid var(--color-primary);border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s}.quick-action-btn:hover{background:var(--color-primary-tint)}.comfort-slider-container{padding:20px;background:var(--color-bg);border-radius:16px;border:2px solid var(--color-border);transition:border-color .2s}.comfort-slider-container:hover{border-color:var(--color-primary)}.comfort-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:16px}.comfort-label{font-size:16px;font-weight:600;color:var(--color-text);margin-bottom:4px}.comfort-description{font-size:13px;color:var(--color-text-secondary);line-height:1.4}.comfort-indicator{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.comfort-emoji{font-size:32px}.comfort-text{font-size:12px;font-weight:700;text-transform:uppercase;white-space:nowrap}.comfort-slider-track{position:relative}.comfort-slider{width:100%;height:12px;border-radius:6px;outline:none;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.comfort-slider::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:32px;height:32px;border-radius:50%;background:#fff;border:4px solid currentColor;cursor:pointer;box-shadow:0 2px 8px #0003;transition:transform .2s}.comfort-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.comfort-slider::-webkit-slider-thumb:active{transform:scale(.95)}.comfort-slider::-moz-range-thumb{width:32px;height:32px;border-radius:50%;background:#fff;border:4px solid currentColor;cursor:pointer;box-shadow:0 2px 8px #0003}.comfort-labels-row{display:flex;justify-content:space-between;padding:8px 0 0;margin:0 -4px}.comfort-tick-label{font-size:20px;opacity:.3;transition:opacity .2s}.comfort-slider:hover~.comfort-labels-row .comfort-tick-label{opacity:.6}@media (max-width: 768px){.comfort-header{flex-direction:column;gap:12px}.comfort-indicator{flex-direction:row;gap:8px;align-self:flex-start}.comfort-emoji{font-size:24px}}.onboarding{min-height:100vh;background:var(--color-bg);display:flex;align-items:center;justify-content:center;padding:20px}.onboarding-container{max-width:600px;width:100%}.progress-bar{width:100%;height:8px;background:var(--color-glass);border:1px solid var(--color-glass-border);border-radius:4px;margin-bottom:12px;overflow:hidden}.progress-fill{height:100%;background:var(--gradient-warm);transition:width .3s ease}.progress-text{text-align:center;color:var(--color-text-secondary);font-size:14px;margin-bottom:20px;font-weight:600}.onboarding-card{background:var(--color-surface);border-radius:24px;padding:48px;box-shadow:var(--shadow-hero)}.onboarding-card h2{font-size:32px;font-weight:700;color:var(--color-text);margin-bottom:8px}.step-subtitle{font-size:16px;color:var(--color-text-secondary);margin-bottom:32px}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--color-text);margin-bottom:8px}.input,.textarea,.select{width:100%;padding:12px 16px;font-size:16px;border:2px solid var(--color-border);border-radius:12px;font-family:inherit;color:var(--color-text);background:var(--color-glass);transition:border-color .2s}.input::placeholder,.textarea::placeholder{color:var(--color-text-muted)}.select option{background-color:var(--color-surface);color:var(--color-text)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--color-primary)}.textarea{resize:vertical;min-height:120px}.input-hint{font-size:12px;color:var(--color-text-muted);margin-top:4px}.radio-group{display:flex;flex-direction:column;gap:12px}.radio-label{display:flex;align-items:center;gap:12px;padding:16px;background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;transition:border-color .2s,background-color .2s}.radio-label:hover{border-color:var(--color-primary);background:var(--color-primary-tint)}.radio-label input[type=radio]{width:20px;height:20px;cursor:pointer}.radio-label input[type=radio]:checked+span{font-weight:600;color:var(--color-primary-bright)}.info-box{padding:16px;background:var(--color-info-bg);border:2px solid var(--color-info-border);border-radius:12px;margin-top:24px}.info-box p{font-size:14px;color:var(--color-info-text);margin:0}.info-box.success{background:var(--color-success-bg);border-color:var(--color-success-border)}.info-box.success p{color:var(--color-success-text)}.summary-card{background:var(--color-bg);border-radius:16px;padding:24px;margin-bottom:24px}.summary-section{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--color-border)}.summary-section:last-child{border-bottom:none}.summary-label{font-size:14px;color:var(--color-text-secondary);font-weight:600}.summary-value{font-size:14px;color:var(--color-text);text-align:right}.button-row{display:flex;gap:12px;margin-top:32px}.interests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:16px}.interest-chip{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;transition:border-color .2s,background-color .2s,transform .2s;font-family:inherit;color:var(--color-text)}.interest-chip:hover{border-color:var(--color-primary);background:var(--color-primary-tint);transform:translateY(-2px)}.interest-chip.selected{background:var(--gradient-primary);border-color:var(--color-primary);color:#fff}.interest-emoji{font-size:32px}.interest-label{font-size:14px;font-weight:600}.selected-count{text-align:center;font-size:14px;color:var(--color-text-secondary);font-weight:600}.hint-text{color:var(--color-text-muted);font-weight:400}.bio-prompts{display:flex;flex-direction:column;gap:24px;margin-bottom:24px}.prompt-group{display:flex;flex-direction:column}.prompt-label{font-size:15px;font-weight:600;color:var(--color-primary-bright);margin-bottom:8px}.prompt-textarea{width:100%;padding:12px 16px;font-size:15px;border:2px solid var(--color-border);border-radius:12px;font-family:inherit;color:var(--color-text);background:var(--color-glass);resize:vertical;min-height:60px;transition:border-color .2s}.prompt-textarea::placeholder{color:var(--color-text-muted)}.prompt-textarea:focus{outline:none;border-color:var(--color-primary)}.char-count{font-size:11px;color:var(--color-text-muted);text-align:right;margin-top:4px}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.checkbox-label{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:border-color .2s,background-color .2s}.checkbox-label:hover{border-color:var(--color-primary);background:var(--color-primary-tint)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label input[type=checkbox]:checked+span{font-weight:600;color:var(--color-primary-bright)}.radio-group-horizontal{display:flex;gap:12px;flex-wrap:wrap}.radio-chip{flex:1;min-width:100px;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;background:var(--color-bg);border:2px solid var(--color-border);border-radius:12px;cursor:pointer;transition:border-color .2s,background-color .2s}.radio-chip:hover{border-color:var(--color-primary);background:var(--color-primary-tint)}.radio-chip input[type=radio]{display:none}.radio-chip input[type=radio]:checked+span{font-weight:600}.radio-chip:has(input:checked){background:var(--gradient-primary);border-color:var(--color-primary);color:#fff}.range-inputs{display:flex;flex-direction:column;gap:12px}.range-slider{width:100%;height:8px;border-radius:4px;background:var(--color-border);outline:none;cursor:pointer}.range-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:var(--gradient-primary);cursor:pointer;box-shadow:var(--shadow-primary)}.range-slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--gradient-primary);cursor:pointer;box-shadow:var(--shadow-primary);border:none}.summary-card.large{padding:32px}.profile-preview{display:flex;align-items:center;gap:20px;padding-bottom:20px;margin-bottom:20px;border-bottom:2px solid var(--color-border-light)}.profile-avatar-preview{width:80px;height:80px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:700}.profile-info-preview h3{font-size:24px;font-weight:700;color:var(--color-text);margin-bottom:4px}.profile-info-preview p{font-size:14px;color:var(--color-text-secondary)}.interests-preview{display:flex;flex-wrap:wrap;gap:8px}.interest-tag{display:inline-block;padding:6px 12px;background:var(--color-primary-tint);color:var(--color-primary-bright);border-radius:12px;font-size:13px;font-weight:600}.fit-summary-compact{display:flex;flex-direction:column;gap:8px}.fit-item-compact{display:flex;align-items:center;gap:8px;padding:10px;background:var(--color-glass);border-radius:8px;font-size:13px;color:var(--color-text)}.fit-icon-small{font-size:18px}.hard-nos-list{display:flex;flex-wrap:wrap;gap:8px}.no-tag{padding:6px 12px;background:var(--color-danger-bg);color:var(--color-danger-text);border-radius:12px;font-size:12px;font-weight:600}.bio-preview{display:flex;flex-direction:column;gap:12px}.bio-prompt-preview{font-size:14px;line-height:1.5;color:var(--color-text)}.bio-prompt-preview strong{color:var(--color-primary-bright);display:block;margin-bottom:4px}.lifestyle-sliders{display:flex;flex-direction:column;gap:16px;max-height:500px;overflow-y:auto;padding-right:8px}.lifestyle-sliders::-webkit-scrollbar{width:6px}.lifestyle-sliders::-webkit-scrollbar-track{background:var(--color-glass);border-radius:3px}.lifestyle-sliders::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:3px}.lifestyle-sliders::-webkit-scrollbar-thumb:hover{background:var(--color-secondary)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface);border-top:1px solid var(--color-border);padding:8px 0;padding-bottom:max(8px,env(safe-area-inset-bottom));display:flex;justify-content:space-around;align-items:center;box-shadow:0 -2px 10px #00000014;z-index:1000}.bottom-nav-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;background:transparent;border:none;cursor:pointer;transition:all .2s;color:var(--color-text-muted);font-family:inherit;min-width:0}.bottom-nav-btn.active{color:var(--color-primary)}.bottom-nav-btn:active{transform:scale(.9)}.nav-icon{font-size:24px;display:block}.nav-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}@media (min-width: 769px){.bottom-nav{display:none}}@media (max-width: 768px){.nav:not(.chat-header){display:none!important}}.discovery-feed{min-height:100vh;background:var(--color-bg);display:flex;flex-direction:column}.feed-container{max-width:600px;margin:0 auto;padding:20px 16px 100px;width:100%;flex:1}@media (max-width: 768px){.feed-container{padding:16px 12px 100px}.nav{display:none}.discovery-feed:after{content:"";position:fixed;bottom:0;left:0;right:0;height:70px;pointer-events:none}}.feed-title{font-size:36px;font-weight:700;letter-spacing:-.02em;color:var(--color-text);margin-bottom:8px}.feed-subtitle{font-size:16px;color:var(--color-text-secondary);margin-bottom:32px}.profile-card{background:var(--color-glass);border:1px solid var(--color-glass-border);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-glass);margin:0 auto;max-width:450px}@media (max-width: 768px){.profile-card{border-radius:16px}}.profile-image-placeholder{width:100%;height:450px;background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;position:relative}@media (max-width: 768px){.profile-image-placeholder{height:400px}}.profile-initial{font-size:140px;font-weight:700;color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.2)}@media (max-width: 768px){.profile-initial{font-size:100px}}.profile-info{padding:32px}.profile-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.profile-header h2{font-size:28px;font-weight:700;color:var(--color-text);margin-bottom:4px}.profile-location{font-size:14px;color:var(--color-text-secondary)}.profile-reliability{text-align:right}.reliability-badge{display:block;font-size:13px;font-weight:600;margin-bottom:4px}.meets-count{display:block;font-size:12px;color:var(--color-text-muted)}.profile-bio-section{margin-bottom:20px}.bio-prompt{margin-bottom:16px}.bio-prompt-title{font-size:13px;font-weight:600;color:var(--color-primary-bright);margin-bottom:6px}.bio-answer{font-size:15px;color:var(--color-text);line-height:1.5}.profile-interests{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.interest-badge{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:var(--color-primary-tint);color:var(--color-primary-bright);border-radius:16px;font-size:13px;font-weight:600}.interest-badge.more{background:var(--color-glass);border:1px solid var(--color-glass-border);color:var(--color-text-secondary)}.fit-preview{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;padding:20px;background:var(--color-glass);border:1px solid var(--color-border-light);border-radius:12px}.fit-preview-item{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--color-text-secondary)}.fit-icon{font-size:20px}.action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px 20px 24px}@media (max-width: 768px){.action-buttons{position:fixed;bottom:70px;left:0;right:0;background:transparent;padding:16px;z-index:50}}.action-btn{padding:18px 32px;font-size:18px;font-weight:700;border-radius:50px;border:none;cursor:pointer;transition:transform .2s,background-color .2s,box-shadow .2s;display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;box-shadow:0 4px 12px #00000059}@media (max-width: 768px){.action-btn{font-size:16px;padding:16px 24px}}.pass-btn{background:var(--color-surface);color:var(--color-danger-text);border:3px solid var(--color-danger)}.pass-btn:hover{background:var(--color-danger-bg)}.pass-btn:active{transform:scale(.95);background:var(--color-danger-bg)}.like-btn{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-primary)}.like-btn:hover{box-shadow:var(--shadow-primary-lg)}.like-btn:active{transform:scale(.95)}.action-icon{font-size:28px}@media (max-width: 768px){.action-icon{font-size:24px}}.feed-hint{text-align:center;color:var(--color-text-muted);font-size:14px;margin-top:24px}.match-modal{text-align:center}.match-icon{font-size:64px;margin-bottom:16px}.match-modal h2{font-size:32px;font-weight:700;color:var(--color-text);margin-bottom:8px}.match-modal p{font-size:16px;color:var(--color-text-secondary);margin-bottom:32px}.match-profiles{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:32px}.match-avatar{width:80px;height:80px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700}.match-hearts{font-size:32px}.reputation-compact{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rep-badge{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:12px;font-size:13px;font-weight:600}.meets-count-compact{font-size:12px;color:var(--color-text-muted)}.reputation-detailed{display:flex;flex-direction:column;gap:20px;padding:24px;background:var(--color-bg);border-radius:16px}.rep-section{display:flex;align-items:flex-start;gap:16px}.rep-icon{font-size:32px;width:40px;text-align:center;flex-shrink:0}.rep-info{flex:1}.rep-label{font-size:14px;font-weight:600;color:var(--color-text);margin-bottom:8px}.rep-score-bar{width:100%;height:12px;background:var(--color-border);border-radius:6px;overflow:hidden;margin-bottom:6px}.rep-score-fill{height:100%;border-radius:6px;transition:width .5s ease}.rep-text{font-size:13px;font-weight:600}.rep-stats{display:flex;justify-content:center;padding-top:16px;border-top:2px solid var(--color-border)}.rep-stat{display:flex;flex-direction:column;align-items:center;gap:4px}.rep-stat-value{font-size:28px;font-weight:700;background:var(--gradient-warm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.rep-stat-label{font-size:12px;color:var(--color-text-secondary);font-weight:600;text-transform:uppercase}.fit-card-content{display:flex;flex-direction:column;gap:24px}.fit-section h3{font-size:20px;font-weight:600;color:var(--color-text);margin-bottom:16px}.fit-list{display:flex;flex-direction:column;gap:12px}.fit-item{display:flex;justify-content:space-between;padding:12px 16px;background:var(--color-bg);border-radius:8px}.fit-label{font-size:14px;color:var(--color-text-secondary);font-weight:500}.fit-value{font-size:14px;color:var(--color-text);font-weight:600}.preference-badge{display:flex;align-items:center;gap:12px;padding:16px;background:var(--color-info-bg);border:2px solid var(--color-info-border);border-radius:12px;color:var(--color-info-text)}.pref-icon{font-size:24px}.reputation-display{display:flex;flex-direction:column;align-items:center;padding:24px;background:var(--color-bg);border-radius:12px}.rep-score{font-size:48px;font-weight:700;background:var(--gradient-success);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.rep-label{font-size:16px;font-weight:600;color:var(--color-success-text);margin-bottom:4px}.rep-meets{font-size:13px;color:var(--color-text-secondary)}.fit-quote{padding:20px;background:var(--color-bg);border-left:4px solid var(--color-primary);border-radius:8px;font-size:15px;font-style:italic;color:var(--color-text);line-height:1.6}.hard-nos-display{display:flex;flex-wrap:wrap;gap:8px}.hard-no-tag{padding:8px 12px;background:var(--color-danger-bg);color:var(--color-danger-text);border-radius:12px;font-size:13px;font-weight:600}.interests-display{display:flex;flex-wrap:wrap;gap:8px}.interest-tag-modal{padding:8px 14px;background:var(--color-primary-tint);color:var(--color-primary-bright);border-radius:14px;font-size:13px;font-weight:600}.bio-prompts-display{display:flex;flex-direction:column;gap:16px}.bio-prompt-item{padding:16px;background:var(--color-bg);border-radius:12px}.bio-prompt-q{font-size:13px;font-weight:600;color:var(--color-primary-bright);margin-bottom:8px}.bio-prompt-a{font-size:14px;color:var(--color-text);line-height:1.5}.avg-response-hint{text-align:center;font-size:13px;color:var(--color-text-secondary);margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border)}.profile-page{min-height:100vh;background:var(--color-bg)}.profile-container{max-width:800px;margin:0 auto;padding:40px 20px 100px}@media (max-width: 768px){.profile-container{padding:20px 16px 100px}}.profile-header-section{background:var(--color-glass);border:1px solid var(--color-glass-border);border-radius:16px;padding:48px 32px;text-align:center;margin-bottom:24px;box-shadow:var(--shadow-glass)}.profile-avatar-large{width:120px;height:120px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;margin:0 auto 20px}.profile-header-section h1{font-size:32px;font-weight:700;color:var(--color-text);margin-bottom:8px}.profile-email{font-size:14px;color:var(--color-text-secondary);margin-bottom:4px}.profile-location{font-size:14px;color:var(--color-text-muted)}.profile-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.profile-stat{background:var(--color-glass);border:1px solid var(--color-glass-border);border-radius:16px;padding:24px;text-align:center;box-shadow:var(--shadow-glass)}.profile-stat .stat-value{font-size:32px;font-weight:700;background:var(--gradient-warm);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.profile-stat .stat-label{font-size:13px;color:var(--color-text-secondary);font-weight:600;margin-bottom:4px}.profile-stat .stat-badge{font-size:11px;color:var(--color-text-muted)}.profile-section{background:var(--color-glass);border:1px solid var(--color-glass-border);border-radius:16px;padding:32px;margin-bottom:24px;box-shadow:var(--shadow-glass)}.profile-section h2{font-size:20px;font-weight:600;color:var(--color-text);margin-bottom:20px}.fit-summary{display:flex;flex-direction:column;gap:16px}.fit-row{display:flex;align-items:flex-start;gap:16px;padding:16px;background:var(--color-bg);border-radius:12px}.fit-row .fit-icon{font-size:24px}.fit-row .fit-label{font-size:12px;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;margin-bottom:4px}.fit-row .fit-value{font-size:15px;color:var(--color-text);font-weight:500}.edit-button{width:100%;padding:12px;background:transparent;color:var(--color-primary);border:2px solid var(--color-primary);border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;margin-top:16px;transition:background-color .2s}.edit-button:hover{background:var(--color-primary-tint)}.bio-text{font-size:15px;color:var(--color-text);line-height:1.6;margin-bottom:16px}.empty-fit{text-align:center;padding:32px}.empty-fit p{font-size:16px;color:var(--color-text-secondary);margin-bottom:20px}.settings-list{display:flex;flex-direction:column}.setting-item{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px;background:transparent;border:none;border-bottom:1px solid var(--color-border-light);font-size:15px;color:var(--color-text);cursor:pointer;transition:background-color .2s;text-align:left}.setting-item:hover{background:var(--color-glass)}.setting-item:last-child{border-bottom:none}.setting-item.danger{color:var(--color-danger-text)}.matches-page{min-height:100vh;background:var(--color-bg)}.matches-container{max-width:1200px;margin:0 auto;padding:40px 20px 100px}@media (max-width: 768px){.matches-container{padding:20px 0 100px}.matches-container h1,.page-subtitle{padding:0 16px}}.matches-container h1{font-size:36px;font-weight:700;color:var(--color-text);margin-bottom:8px}.page-subtitle{font-size:16px;color:var(--color-text-secondary);margin-bottom:32px}.matches-list{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}.match-item{display:flex;align-items:center;gap:16px;padding:20px;background:var(--color-glass);border-radius:16px;cursor:pointer;transition:border-color .2s,background-color .2s;border:1px solid var(--color-glass-border);box-shadow:var(--shadow-glass)}.match-item:hover{border-color:var(--color-primary)}.match-item.active{border-color:var(--color-primary);background:var(--color-primary-tint)}.match-avatar{width:60px;height:60px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;flex-shrink:0}.match-info{flex:1;min-width:0}.match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.match-name{font-size:16px;font-weight:600;color:var(--color-text)}.match-time{font-size:12px;color:var(--color-text-muted)}.match-last-message{font-size:14px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unread-badge{width:28px;height:28px;background:var(--color-primary-bright);color:var(--color-ink);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.chat-preview,.empty-state{background:var(--color-surface);border-radius:16px;padding:32px;text-align:center}.chat-preview .chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--color-border-light)}.chat-preview .chat-header h3{font-size:20px;font-weight:600;color:var(--color-text)}.plan-button{padding:10px 20px;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:box-shadow .2s}.plan-button:hover{box-shadow:var(--shadow-primary)}.chat-preview-content{text-align:left}.preview-message{display:flex;gap:12px;padding:16px;background:var(--color-bg);border-radius:12px;margin-bottom:16px}.preview-avatar{width:40px;height:40px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.preview-text{flex:1}.preview-text p{font-size:14px;color:var(--color-text);margin-bottom:4px}.preview-time{font-size:12px;color:var(--color-text-muted)}.open-chat-hint{text-align:center;font-size:13px;color:var(--color-text-muted);font-style:italic}.empty-icon{font-size:64px;margin-bottom:16px}.empty-state p{font-size:16px;color:var(--color-text-secondary)}.chat-preview-content .preview-message{cursor:default}.chat-preview-content .open-chat-hint{padding:16px;background:var(--color-primary-tint);border:2px solid var(--color-info-border);border-radius:12px;text-align:center;font-size:14px;color:var(--color-primary-bright);font-weight:500}.plan-detail-content{display:flex;flex-direction:column;gap:24px}.plan-activity-header{display:flex;align-items:center;gap:20px;padding:24px;background:var(--color-bg);border-radius:16px}.activity-icon-large{font-size:64px}.plan-activity-header h3{font-size:24px;font-weight:700;color:var(--color-text);margin-bottom:4px}.plan-date-large{font-size:16px;color:var(--color-text-secondary)}.plan-info-section{display:flex;flex-direction:column;gap:16px}.info-item{display:flex;align-items:flex-start;gap:16px;padding:16px;background:var(--color-bg);border-radius:12px}.info-icon{font-size:24px}.info-label{font-size:12px;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;margin-bottom:4px}.info-value{font-size:15px;color:var(--color-text);font-weight:500}.status-badge{display:inline-block;padding:4px 12px;background:var(--color-success-bg);color:var(--color-success-text);border-radius:8px;font-size:13px}.meet-key-section{padding:24px;background:var(--color-warning-bg);border:2px solid var(--color-warning-border);border-radius:16px;text-align:center}.meet-key-section h4{font-size:18px;font-weight:600;color:var(--color-text);margin-bottom:8px}.meet-key-desc{font-size:14px;color:var(--color-warning-text);margin-bottom:20px}.meet-key-display{display:flex;justify-content:center;gap:8px;margin-bottom:12px}.key-digit{width:48px;height:56px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;background:var(--color-surface);border:3px solid var(--color-warning);border-radius:12px;color:var(--color-text)}.meet-key-hint{font-size:12px;color:var(--color-text-muted)}.verification-section{padding:24px;background:var(--color-bg);border-radius:16px;text-align:center}.verification-section h4{font-size:18px;font-weight:600;color:var(--color-text);margin-bottom:8px}.verify-desc{font-size:14px;color:var(--color-text-secondary);margin-bottom:20px}.key-input-grid{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.key-input{width:48px;height:56px;text-align:center;font-size:24px;font-weight:700;font-family:inherit;color:var(--color-text);background:var(--color-glass);border:3px solid var(--color-border);border-radius:12px;transition:border-color .2s,box-shadow .2s}.key-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 10%,transparent)}.verification-success{padding:32px;background:var(--color-success-bg);border:3px solid var(--color-success-border);border-radius:16px;text-align:center}.success-icon-large{width:80px;height:80px;margin:0 auto 20px;background:var(--color-success);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700}.verification-success h3{font-size:24px;font-weight:700;color:var(--color-success-text);margin-bottom:8px}.verification-success p{font-size:15px;color:var(--color-success-text);margin-bottom:24px}.post-meet-actions{display:flex;gap:12px;justify-content:center}.plan-actions-section{padding:20px;background:var(--color-bg);border-radius:12px;text-align:center}.action-hint{font-size:14px;color:var(--color-text-secondary);margin-bottom:16px}.action-buttons-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reschedule-form{display:flex;flex-direction:column;gap:12px;margin-top:16px}.danger-button{padding:12px 24px;background:var(--color-surface);color:var(--color-danger-text);border:2px solid var(--color-danger);border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s}.danger-button:hover{background:var(--color-danger-bg)}.plans-page{min-height:100vh;background:var(--color-bg)}.plans-container{max-width:1000px;margin:0 auto;padding:40px 20px 100px}@media (max-width: 768px){.plans-container{padding:20px 16px 100px}}.plans-container h1{font-size:36px;font-weight:700;color:var(--color-text);margin-bottom:8px}.plans-grid{display:grid;gap:20px;margin-bottom:32px}.plan-card{background:var(--color-glass);border-radius:16px;padding:24px;cursor:pointer;transition:border-color .2s,box-shadow .2s;border:1px solid var(--color-glass-border);box-shadow:var(--shadow-glass)}.plan-card:hover{border-color:var(--color-primary)}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.plan-activity{font-size:20px;font-weight:600;color:var(--color-text)}.plan-status{padding:6px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-accepted{background:var(--color-success-bg);color:var(--color-success-text)}.status-proposed{background:var(--color-warning-bg);color:var(--color-warning-text)}.plan-partner{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:15px;color:var(--color-text-secondary)}.partner-avatar{width:32px;height:32px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.plan-details{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.plan-detail{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--color-text-secondary)}.detail-icon{font-size:16px}.meet-key-indicator{padding:12px;background:var(--color-success-bg);border:2px solid var(--color-success-border);border-radius:8px;text-align:center;font-size:13px;font-weight:600;color:var(--color-success-text)}.plan-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.accept-button,.decline-button{padding:10px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s}.accept-button{background:var(--color-success);color:#fff}.accept-button:hover{background:color-mix(in srgb,var(--color-success) 85%,black)}.decline-button{background:var(--color-bg);color:var(--color-text-secondary)}.decline-button:hover{background:var(--color-surface-hover)}.plan-creation-hint{background:var(--color-surface);border-radius:16px;padding:32px;text-align:center}.plan-creation-hint p{font-size:16px;color:var(--color-text-secondary);margin-bottom:16px}.venues-page{min-height:100vh;background:var(--color-bg)}.venues-container{max-width:1200px;margin:0 auto;padding:40px 20px 100px}@media (max-width: 768px){.venues-container{padding:20px 16px 100px}}.venues-container h1{font-size:36px;font-weight:700;color:var(--color-text);margin-bottom:8px}.venue-filters{display:flex;gap:12px;margin-bottom:24px}.filter-button{padding:12px 24px;background:var(--color-surface);border:2px solid var(--color-border);border-radius:12px;font-size:16px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:border-color .2s,color .2s,background-color .2s}.filter-button.active{background:var(--gradient-primary);color:#fff;border-color:var(--color-primary)}.filter-button:hover:not(.active){border-color:var(--color-primary);color:var(--color-primary)}.venues-count{font-size:14px;color:var(--color-text-secondary);margin-bottom:24px}.venues-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px;margin-bottom:32px}.venue-card-detailed{background:var(--color-glass);border-radius:16px;padding:24px;border:1px solid var(--color-glass-border);box-shadow:var(--shadow-glass);transition:border-color .2s,box-shadow .2s}.venue-card-detailed:hover{border-color:var(--color-primary)}.venue-card-detailed .venue-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.venue-card-detailed .venue-name{font-size:18px;font-weight:600;color:var(--color-text);margin-bottom:4px}.venue-card-detailed .venue-address{font-size:13px;color:var(--color-text-secondary);line-height:1.4}.venue-card-detailed .venue-rating{font-size:18px}.venue-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.venue-badge{padding:6px 12px;border-radius:12px;font-size:12px;font-weight:600}.badge-gf-only{background:var(--color-success-bg);color:var(--color-success-text)}.badge-separate{background:var(--color-info-bg);color:var(--color-info-text)}.badge-fryer{background:var(--color-warning-bg);color:var(--color-warning-text)}.venue-reliability{margin-bottom:16px}.reliability-indicator{display:inline-block;padding:6px 12px;border-radius:12px;font-size:12px;font-weight:600}.venue-actions{display:grid;grid-template-columns:1fr}.venue-action-btn{padding:10px 16px;background:var(--gradient-primary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s,background-color .2s}.venue-action-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-primary)}.loading-state{text-align:center;padding:60px 20px}.spinner-large{width:50px;height:50px;border:4px solid var(--color-border);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner-large{animation-duration:2s}}.loading-state p{color:var(--color-text-secondary);font-size:16px}.empty-hint{font-size:14px;color:var(--color-text-muted);margin-top:8px}.chat-page{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg)}.chat-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:16px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000000d;position:sticky;top:0;z-index:100}.back-button{padding:8px 16px;background:transparent;border:2px solid var(--color-border);border-radius:8px;font-size:14px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:border-color .2s,color .2s}.back-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.chat-header-info{display:flex;align-items:center;gap:12px;flex:1;margin-left:20px}.chat-avatar{width:48px;height:48px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.chat-header-text h3{font-size:18px;font-weight:600;color:var(--color-text);margin-bottom:2px}.chat-header-actions{display:flex;gap:8px}@media (max-width: 768px){.chat-header{flex-wrap:wrap;padding:12px 16px;row-gap:8px}.chat-header-info{margin-left:8px}.chat-header-actions{width:100%;justify-content:flex-end}}.header-action-btn{padding:8px 16px;background:var(--color-surface);border:2px solid var(--color-border);border-radius:8px;font-size:14px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:border-color .2s,color .2s,background-color .2s,box-shadow .2s}.header-action-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.header-action-btn.primary{background:var(--gradient-primary);border-color:var(--color-primary);color:#fff}.header-action-btn.primary:hover{box-shadow:var(--shadow-primary)}.fit-card-pinned{padding:12px 24px;background:var(--color-warning-bg);border-bottom:2px solid var(--color-warning-border)}.fit-card-banner{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--color-glass);border:2px solid var(--color-warning-border);border-radius:12px;font-size:14px;font-weight:600;color:var(--color-text);cursor:pointer;transition:border-color .2s,box-shadow .2s;text-align:left}.fit-card-banner:hover{border-color:var(--color-primary)}.fit-preview-text{flex:1;font-size:12px;color:var(--color-text-secondary);font-weight:400}.view-details{font-size:13px;color:var(--color-primary-bright)}.messages-container{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.message{display:flex;align-items:flex-end;gap:12px;max-width:70%}.message.me{margin-left:auto;flex-direction:row-reverse}.message-avatar{width:36px;height:36px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.message-bubble{padding:12px 16px;border-radius:18px;background:var(--color-surface);border:1px solid var(--color-border-light);color:var(--color-text)}.message.me .message-bubble{background:var(--gradient-primary);border:none;color:#fff}.message-text{font-size:15px;line-height:1.4;margin-bottom:4px}.message-time{font-size:11px;color:var(--color-text-muted)}.message.me .message-time{color:#ffffffb3}.message-input-container{background:var(--color-surface);border-top:1px solid var(--color-border);padding:16px 24px;display:flex;flex-wrap:wrap;gap:12px}.message-input{flex:1;padding:12px 16px;border:2px solid var(--color-border);border-radius:24px;font-size:15px;font-family:inherit;color:var(--color-text);background:var(--color-glass);transition:border-color .2s}.message-input::placeholder{color:var(--color-text-muted)}.message-input:focus{outline:none;border-color:var(--color-primary)}.send-button{padding:12px 32px;background:var(--gradient-primary);color:#fff;border:none;border-radius:24px;font-size:15px;font-weight:600;cursor:pointer;transition:box-shadow .2s,opacity .2s}.send-button:hover:not(:disabled){box-shadow:var(--shadow-primary)}.send-button:disabled{opacity:.5;cursor:not-allowed}.header-action-btn.danger{color:var(--color-danger-text);border-color:var(--color-danger)}.header-action-btn.danger:hover{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger-text)}.unmatch-banner{padding:16px 24px;background:var(--color-warning-bg);border-bottom:2px solid var(--color-warning-border);text-align:center}.unmatch-banner p{font-size:14px;font-weight:600;color:var(--color-warning-text);margin-bottom:12px}.unmatch-actions{display:flex;gap:12px;justify-content:center;margin-bottom:8px}.unmatch-cancel,.unmatch-confirm{padding:8px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s;border:none}.unmatch-cancel{background:var(--color-surface);color:var(--color-text-secondary);border:2px solid var(--color-border)}.unmatch-cancel:hover{background:var(--color-surface-hover)}.unmatch-confirm{background:var(--color-danger);color:#fff}.unmatch-confirm:hover{background:color-mix(in srgb,var(--color-danger) 85%,black)}.unmatch-hint{font-size:11px;color:var(--color-warning-text);margin:0}.plan-hint{text-align:center;font-size:14px;color:var(--color-text-secondary);margin-bottom:24px}.plan-type-selection{display:flex;flex-direction:column;gap:20px}.plan-type-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.plan-type-card{padding:24px;background:var(--color-bg);border:3px solid var(--color-border);border-radius:16px;cursor:pointer;transition:border-color .2s,transform .2s,box-shadow .2s;text-align:center;font-family:inherit;color:inherit}.plan-type-card:hover{border-color:var(--color-primary);transform:translateY(-4px)}.plan-type-card.recommended{border-color:var(--color-warning-border);background:var(--color-warning-bg)}.plan-type-badge{display:inline-block;padding:4px 12px;background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border);border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;margin-bottom:12px}.plan-type-badge.success{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.plan-type-emoji{font-size:48px;margin-bottom:12px}.plan-type-card h3{font-size:20px;font-weight:700;color:var(--color-text);margin-bottom:8px}.plan-type-card p{font-size:14px;color:var(--color-text-secondary);line-height:1.5;margin-bottom:12px}.plan-examples{list-style:none;padding:0;font-size:13px;color:var(--color-text-muted);display:flex;flex-direction:column;gap:4px}.plan-details{display:flex;flex-direction:column;gap:24px}.change-type-btn{align-self:flex-start;padding:8px 16px;background:transparent;border:2px solid var(--color-border);border-radius:8px;font-size:14px;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:border-color .2s,color .2s}.change-type-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.plan-details h3{font-size:18px;font-weight:600;color:var(--color-text);margin-bottom:12px}.activity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.activity-card{padding:20px 16px;background:var(--color-bg);border:3px solid var(--color-border);border-radius:12px;cursor:pointer;transition:border-color .2s,transform .2s,background-color .2s;text-align:center;font-family:inherit;color:inherit}.activity-card:hover{border-color:var(--color-primary);transform:translateY(-2px)}.activity-card.selected{background:var(--gradient-primary);border-color:var(--color-primary);color:#fff}.activity-emoji{font-size:36px;margin-bottom:8px}.activity-label{font-size:16px;font-weight:600;margin-bottom:4px}.activity-location{font-size:13px;opacity:.8;margin-bottom:8px}.activity-description{font-size:12px;opacity:.7;line-height:1.3}.datetime-inputs{display:grid;grid-template-columns:1fr 1fr;gap:16px}.input-group{display:flex;flex-direction:column}.input-group label{font-size:14px;font-weight:600;color:var(--color-text);margin-bottom:8px}.input-group .input{padding:12px;border:2px solid var(--color-border);border-radius:8px;font-size:15px;font-family:inherit;color:var(--color-text);background:var(--color-glass);transition:border-color .2s}.input-group .input:focus{outline:none;border-color:var(--color-primary)}.compatibility-notice{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--color-success-bg);border:2px solid var(--color-success-border);border-radius:12px;margin-bottom:20px}.compat-icon{font-size:24px}.compatibility-notice strong{display:block;color:var(--color-success-text);font-size:15px;margin-bottom:4px}.compatibility-notice p{font-size:13px;color:var(--color-success-text);margin:0}.venue-list{display:flex;flex-direction:column;gap:12px}.venue-card-selectable{width:100%;padding:16px;background:var(--color-bg);border:3px solid var(--color-border);border-radius:12px;cursor:pointer;transition:border-color .2s,background-color .2s;text-align:left;font-family:inherit;color:inherit}.venue-card-selectable:hover{border-color:var(--color-primary)}.venue-card-selectable.selected{background:var(--color-primary-tint);border-color:var(--color-primary)}.venue-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.venue-name{font-size:16px;font-weight:600;color:var(--color-text)}.venue-rating{font-size:14px}.venue-badges-compact{display:flex;gap:6px;flex-wrap:wrap}.badge-compact{padding:4px 8px;background:var(--color-glass);border:1px solid var(--color-border);border-radius:8px;font-size:11px;font-weight:600;color:var(--color-primary-bright)}@media (max-width: 768px){.plan-type-cards{grid-template-columns:1fr}.activity-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-primary:#667eea;--color-secondary:#764ba2;--color-primary-tint:#f0f4ff;--color-text:#1a1a1a;--color-text-secondary:#666;--color-text-muted:#999;--color-surface:#fff;--color-surface-hover:#e9ecef;--color-bg:#f8f9fa;--color-border:#e0e0e0;--color-border-light:#f0f0f0;--color-success:#28a745;--color-success-text:#155724;--color-success-bg:#d4edda;--color-success-border:#c3e6cb;--color-teal:#20c997;--color-warning:#ffc107;--color-warning-text:#856404;--color-warning-bg:#fff3cd;--color-warning-border:#ffd966;--color-danger:#dc3545;--color-danger-text:#721c24;--color-danger-bg:#f8d7da;--color-danger-border:#f5c6cb;--color-info-text:#004085;--color-info-bg:#e7f3ff;--color-info-border:#b3d9ff;--color-ink:#0a0a12;--color-ink-raised:#12121e;--color-ink-hover:#1c1c2e;--color-ink-text:#f2f2f9;--color-ink-text-dim:#9b9db8;--color-ink-text-mute:#7e809c;--color-glass:#f2f2f90f;--color-glass-border:#f2f2f924;--color-glass-hover:#f2f2f91f;--color-primary-bright:#8ea2ff;--color-peach:#ffab8f;--color-peach-deep:#ff8b66;--shadow-card:0 2px 8px #00000014;--shadow-card-lg:0 10px 40px #00000026;--shadow-hero:0 20px 60px #0000004d;--shadow-primary:0 4px 15px #667eea66;--shadow-primary-lg:0 6px 20px #667eea99;--shadow-glass:inset 0 1px 0 #f2f2f917;--animate-fade-in:fade-in .2s;--animate-slide-up:slide-up .3s;--animate-slide-up-mobile:slide-up-mobile .3s}}@layer base,components;@layer utilities{.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{top:0;right:0;bottom:0;left:0}.top-1{top:var(--spacing)}.right-1{right:var(--spacing)}.bottom-1{bottom:var(--spacing)}.left-1{left:var(--spacing)}.z-\[1000\]{z-index:1000}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-auto{margin:auto}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mb-1{margin-bottom:var(--spacing)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.aspect-\[3\/4\]{aspect-ratio:3/4}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-7{height:calc(var(--spacing) * 7)}.h-10{height:calc(var(--spacing) * 10)}.h-20{height:calc(var(--spacing) * 20)}.h-\[120px\]{height:120px}.h-full{height:100%}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-20{width:calc(var(--spacing) * 20)}.w-\[120px\]{width:120px}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[500px\]{max-width:500px}.max-w-\[600px\]{max-width:600px}.max-w-\[700px\]{max-width:700px}.max-w-\[calc\(100\%-2\.25rem\)\]{max-width:calc(100% - 2.25rem)}.max-w-sm{max-width:var(--container-sm)}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-\[640px\]{min-width:640px}.flex-1{flex:1}.flex-\[2\]{flex:2}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.animate-fade-in{animation:var(--animate-fade-in)}.animate-slide-up{animation:var(--animate-slide-up)}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-y{resize:vertical}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-border{border-color:var(--color-border)}.border-border-light{border-color:var(--color-border-light)}.border-glass-border{border-color:var(--color-glass-border)}.border-primary{border-color:var(--color-primary)}.bg-\[rgba\(0\,0\,0\,0\.7\)\]{background-color:#000000b3}.bg-\[rgba\(0\,0\,0\,0\.55\)\]{background-color:#0000008c}.bg-bg{background-color:var(--color-bg)}.bg-border-light{background-color:var(--color-border-light)}.bg-danger-bg{background-color:var(--color-danger-bg)}.bg-glass{background-color:var(--color-glass)}.bg-ink-text{background-color:var(--color-ink-text)}.bg-primary{background-color:var(--color-primary)}.bg-surface{background-color:var(--color-surface)}.bg-transparent{background-color:#0000}.bg-warning-bg{background-color:var(--color-warning-bg)}.bg-\[image\:var\(--gradient-primary\)\]{background-image:var(--gradient-primary)}.object-cover{object-fit:cover}.p-0{padding:0}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-10{padding:calc(var(--spacing) * 10)}.p-12{padding:calc(var(--spacing) * 12)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-7{padding-inline:calc(var(--spacing) * 7)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[15px\]{font-size:15px}.text-\[28px\]{font-size:28px}.leading-\[normal\]{--tw-leading:normal;line-height:normal}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-danger-text{color:var(--color-danger-text)}.text-ink-text{color:var(--color-ink-text)}.text-primary{color:var(--color-primary)}.text-text{color:var(--color-text)}.text-text-muted{color:var(--color-text-muted)}.text-text-secondary{color:var(--color-text-secondary)}.text-warning-text{color:var(--color-warning-text)}.text-white{color:var(--color-white)}.opacity-50{opacity:.5}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-card{--tw-shadow:0 2px 8px var(--tw-shadow-color,#00000014);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-glass{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#f2f2f917);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hero{--tw-shadow:0 20px 60px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-primary{--tw-shadow:0 4px 15px var(--tw-shadow-color,#667eea66);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-\[ease\]{--tw-ease:ease;transition-timing-function:ease}.outline-none{--tw-outline-style:none;outline-style:none}.placeholder\:text-text-muted::placeholder{color:var(--color-text-muted)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:border-primary:hover{border-color:var(--color-primary)}.hover\:bg-surface-hover:hover{background-color:var(--color-surface-hover)}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:text-text:hover{color:var(--color-text)}}.focus\:border-primary:focus{border-color:var(--color-primary)}@media (hover:hover){.hover\:enabled\:-translate-y-0\.5:hover:enabled{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:enabled\:bg-glass-hover:hover:enabled{background-color:var(--color-glass-hover)}.hover\:enabled\:bg-primary-tint:hover:enabled{background-color:var(--color-primary-tint)}.hover\:enabled\:bg-white:hover:enabled{background-color:var(--color-white)}.hover\:enabled\:shadow-primary-lg:hover:enabled{--tw-shadow:0 6px 20px var(--tw-shadow-color,#667eea99);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}@media (prefers-reduced-motion:reduce){.motion-reduce\:animate-none{animation:none}}@media not all and (min-width:48rem){.max-md\:p-4{padding:calc(var(--spacing) * 4)}.max-md\:p-8{padding:calc(var(--spacing) * 8)}}@media (min-width:48rem){.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}:root{--gradient-primary:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-success:linear-gradient(135deg, #28a745 0%, #20c997 100%);--gradient-wordmark:linear-gradient(180deg, #fff 0%, #c9cfff 95%);--gradient-warm:linear-gradient(90deg, #8ea2ff 0%, #b493e6 45%, #ffab8f 100%)}:root[data-theme=ink]{color-scheme:dark;--color-text:var(--color-ink-text);--color-text-secondary:var(--color-ink-text-dim);--color-text-muted:var(--color-ink-text-mute);--color-surface:var(--color-ink-raised);--color-surface-hover:var(--color-ink-hover);--color-bg:var(--color-ink);--color-border:var(--color-glass-border);--color-border-light:var(--color-glass);--color-primary-tint:#667eea29;--color-success-text:#7fd898;--color-success-bg:#28a74526;--color-success-border:#28a74566;--color-warning-text:#ffd75e;--color-warning-bg:#ffc1071f;--color-warning-border:#ffc10759;--color-danger-text:#ff8f9a;--color-danger-bg:#dc354524;--color-danger-border:#dc354566;--color-info-text:#8ec2ff;--color-info-bg:#4d94ff1f;--color-info-border:#4d94ff59}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up-mobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}@layer base{*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg);overscroll-behavior:none;touch-action:pan-y}#root{min-height:100vh;min-height:-webkit-fill-available}html{height:-webkit-fill-available;background:var(--color-bg)}button{font-family:inherit}a{color:inherit;text-decoration:none}[data-theme=ink] body{color:var(--color-text)}[data-theme=ink] :is(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--color-peach);outline-offset:3px}}.nav{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:16px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000000d;position:sticky;top:0;z-index:100}.nav-brand{font-size:20px;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;cursor:pointer;-webkit-user-select:none;user-select:none}.nav-actions{display:flex;gap:8px;align-items:center}.nav-button{padding:8px 16px;background:transparent;border:none;border-radius:8px;font-size:14px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.nav-button:hover{background:var(--color-bg);color:var(--color-primary)}.nav-user{font-size:14px;color:var(--color-text-secondary);padding:8px 16px;background:var(--color-bg);border-radius:20px}
