:root{--color-bg: #111827;--color-primary: #6d5ef5;--color-accent: #16c5c7;--color-bg-elevated: #1a2333;--color-bg-elevated-2: #232e42;--color-border: #2c384d;--color-text-primary: #f4f6fb;--color-text-secondary: #a8b3c7;--color-text-muted: #6b7690;--color-success: #2fd67a;--color-warning: #f5b94e;--color-danger: #f5615e;--gradient-primary: linear-gradient(135deg, var(--color-primary), var(--color-accent));--font-family: "Inter", "Manrope", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--radius-pill: 999px;--shadow-glow-primary: 0 0 40px rgba(109, 94, 245, .35);--shadow-glow-accent: 0 0 40px rgba(22, 197, 199, .35);--shadow-card: 0 8px 30px rgba(0, 0, 0, .35);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-family);background:var(--color-bg);color:var(--color-text-primary);-webkit-font-smoothing:antialiased}button{font-family:inherit}a{color:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--radius-pill);padding:14px 32px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.btn:active{transform:scale(.98)}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-glow-primary)}.btn-primary:hover{box-shadow:var(--shadow-glow-primary),var(--shadow-glow-accent)}.btn-secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}input,select,textarea{font-family:inherit;font-size:16px;background:var(--color-bg-elevated-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);padding:12px 14px;outline:none;transition:border-color .15s ease}input:focus,select:focus,textarea:focus{border-color:var(--color-primary)}.field-label{display:block;font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.text-muted{color:var(--color-text-muted)}.container{max-width:480px;margin:0 auto;padding:24px}.profile-consent-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:24px;z-index:60}.profile-consent-modal{width:100%;max-width:460px;max-height:85dvh;overflow-y:auto;padding:28px}.profile-consent-modal h2{margin-top:0;font-size:19px}.profile-consent-modal h3{margin:18px 0 6px;font-size:14px;color:var(--color-text-primary)}.profile-consent-modal p{margin:0 0 4px;color:var(--color-text-secondary);line-height:1.6;font-size:13px}.profile-consent-modal__checkbox{display:flex;align-items:flex-start;gap:10px;margin-top:18px;font-size:12px;line-height:1.5;color:var(--color-text-secondary);cursor:pointer}.profile-consent-modal__checkbox input{margin-top:2px;flex-shrink:0}.profile-consent-modal__legal-links a{color:var(--color-accent);text-decoration:underline}.profile-consent-modal .btn{width:100%;margin-top:22px}.logo-animation{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.logo-animation__svg{width:100%;height:100%;display:block;overflow:visible}.logo-animation__arc{transform-box:view-box;transform-origin:center;will-change:transform}.logo-animation__arc--violet{fill:url(#rezyco-arc-violet)}.logo-animation__arc--cyan{fill:url(#rezyco-arc-cyan)}.logo-animation__dot{fill:#fff;filter:url(#rezyco-dot-glow);transform-box:fill-box;transform-origin:center;will-change:transform,opacity}.logo-animation--static .logo-animation__arc{transform:translate(0)}.logo-animation--static .logo-animation__dot{opacity:1;transform:scale(1)}.logo-animation--play .logo-animation__arc--violet{transform:translate(-58px);animation:rezyco-violet-move 1.8s cubic-bezier(.16,1,.3,1) forwards}.logo-animation--play .logo-animation__arc--cyan{transform:translate(58px);animation:rezyco-cyan-move 1.8s cubic-bezier(.16,1,.3,1) forwards}.logo-animation--play .logo-animation__dot{opacity:.35;transform:scale(.75);animation:rezyco-dot-resonance 1.8s ease-out forwards}@keyframes rezyco-violet-move{0%{transform:translate(-58px)}to{transform:translate(0)}}@keyframes rezyco-cyan-move{0%{transform:translate(58px)}to{transform:translate(0)}}@keyframes rezyco-dot-resonance{0%{opacity:.35;transform:scale(.75)}55%{opacity:.6;transform:scale(.9)}78%{opacity:.9;transform:scale(1)}88%{opacity:1;transform:scale(1.35)}95%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.logo-animation--play .logo-animation__arc,.logo-animation--play .logo-animation__dot{animation:none}.logo-animation--play .logo-animation__arc{transform:translate(0)}.logo-animation--play .logo-animation__dot{opacity:1;transform:scale(1)}}.brand-animation{width:100vw;height:100vh;min-width:100%;min-height:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 42%,#4e44b421,#12173714 32%,#080b1d00 62%),#080b1d}.brand-animation__content{display:flex;flex-direction:column;align-items:center;justify-content:center;transform:translateY(-2%)}.brand-animation__symbol{width:340px;height:282px;margin-bottom:8px}.brand-animation__wordmark{margin:0;display:flex;align-items:center;justify-content:center;font-family:Montserrat,Avenir Next,Helvetica Neue,Inter,Arial,sans-serif;font-size:78px;font-weight:500;line-height:1;letter-spacing:.08em;color:#fff}.brand-animation__letter{display:inline-block;opacity:0;transform:translateY(12px) scale(.98);filter:blur(4px);animation:brand-letter-reveal .8s cubic-bezier(.16,1,.3,1) forwards;animation-delay:1.55s}.brand-animation__letter--z{color:transparent;background:linear-gradient(135deg,#6d5ef5,#8b5cf6 28%,#6d5ef5 43%,#22d3ee 62%,#16c5c7 82%,#22d3ee);background-size:220% 100%;background-position:45% 50%;-webkit-background-clip:text;background-clip:text;animation:brand-letter-reveal .8s cubic-bezier(.16,1,.3,1) 1.55s forwards,brand-z-shimmer 1.35s ease-in-out 1.75s forwards}.brand-animation__slogan{margin:20px 0 0;padding-left:.45em;font-family:Montserrat,Avenir Next,Helvetica Neue,Inter,Arial,sans-serif;font-size:18px;font-weight:400;line-height:1;letter-spacing:.45em;white-space:nowrap;color:#cdc9ffd1;opacity:0;transform:translateY(10px);filter:blur(3px);animation:brand-slogan-reveal .9s cubic-bezier(.16,1,.3,1) 2.05s forwards}@keyframes brand-letter-reveal{0%{opacity:0;transform:translateY(12px) scale(.98);filter:blur(4px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes brand-z-shimmer{0%{background-position:10% 50%}60%{background-position:100% 50%}to{background-position:45% 50%}}@keyframes brand-slogan-reveal{0%{opacity:0;transform:translateY(10px);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@media(min-width:900px){.brand-animation__symbol{width:380px;height:315px}.brand-animation__wordmark{font-size:86px}.brand-animation__slogan{margin-top:22px;font-size:19px}}@media(prefers-reduced-motion:reduce){.brand-animation__letter,.brand-animation__letter--z,.brand-animation__slogan{animation:none;opacity:1;transform:none;filter:none}}.how-it-works-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.how-it-works-modal{width:100%;max-width:440px;max-height:85dvh;overflow-y:auto;padding:32px;text-align:center}.how-it-works-modal h2{margin-top:0;font-size:20px}.how-it-works-modal__section{text-align:left;margin-bottom:20px}.how-it-works-modal__section h3{margin:0 0 6px;font-size:15px;color:var(--color-text-primary)}.how-it-works-modal__section p{margin:0;color:var(--color-text-secondary);line-height:1.6;font-size:14px}.how-it-works-modal__tagline{font-weight:600;color:var(--color-text-primary);margin:24px 0;font-size:15px}.how-it-works-modal .btn{width:100%}:root{--rezyco-bg: #080b1d;--rezyco-purple: #6d5ef5;--rezyco-purple-light: #8b5cf6;--rezyco-cyan: #16c5c7;--rezyco-cyan-light: #22d3ee;--rezyco-white: #ffffff}.landing{position:relative;min-height:100dvh;width:100%;box-sizing:border-box;background:radial-gradient(circle at 50% 35%,#10152d,#080b1d 48%,#050713);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:46px;padding:28px 22px 42px;text-align:center;overflow-x:hidden}.landing__brand{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.landing__symbol{width:220px;height:184px;margin-bottom:22px;display:flex;align-items:center;justify-content:center}.landing__symbol .logo-animation{width:100%;height:100%}.landing__wordmark{margin:0;display:flex;align-items:center;justify-content:center;gap:11px;font-family:Montserrat,Avenir Next,Helvetica Neue,Inter,Arial,sans-serif;font-size:48px;font-weight:400;line-height:1;letter-spacing:.08em;color:var(--rezyco-white);opacity:0;transform:translateY(10px);animation:landing-wordmark-reveal .55s cubic-bezier(.2,.8,.2,1) 1.62s forwards}.landing__letter--z{display:inline-block;background:linear-gradient(135deg,#6d5ef5,#8b5cf6 28%,#6d5ef5 43%,#22d3ee 62%,#16c5c7 82%,#22d3ee);background-size:220% 100%;background-position:45% 50%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:landing-z-shimmer 1.45s ease-in-out 1.75s forwards}.landing__slogan{margin:22px 0 0;padding:0 8px;font-family:Montserrat,Avenir Next,Helvetica Neue,Inter,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.2;letter-spacing:.42em;color:#cdc9ffc7;text-transform:uppercase;white-space:nowrap;opacity:0;transform:translateY(7px);animation:landing-tagline-reveal .55s ease-out 1.92s forwards}.landing__actions{display:flex;flex-direction:column;gap:14px;width:100%;max-width:320px;opacity:0;transform:translateY(12px);pointer-events:none;animation:landing-actions-reveal .6s cubic-bezier(.2,.8,.2,1) 2.45s forwards}@keyframes landing-wordmark-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-z-shimmer{0%{background-position:10% 50%}50%{background-position:100% 50%}to{background-position:45% 50%}}@keyframes landing-tagline-reveal{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-actions-reveal{0%{opacity:0;transform:translateY(12px);pointer-events:none}99%{pointer-events:none}to{opacity:1;transform:translateY(0);pointer-events:auto}}@media(min-width:480px){.landing__symbol{width:300px;height:250px;margin-bottom:26px}.landing__wordmark{gap:14px;font-size:68px;letter-spacing:.08em}.landing__slogan{margin-top:24px;font-size:16px;letter-spacing:.48em}}@media(min-width:900px){.landing__symbol{width:340px;height:282px}.landing__wordmark{font-size:76px;gap:16px}.landing__slogan{font-size:17px}}@media(max-width:359px){.landing__symbol{width:190px;height:158px}.landing__wordmark{font-size:40px;gap:8px}.landing__slogan{font-size:10px;letter-spacing:.28em}}@media(prefers-reduced-motion:reduce){.landing__wordmark,.landing__letter--z,.landing__slogan,.landing__actions{animation:none}.landing__wordmark,.landing__slogan,.landing__actions{opacity:1;transform:none}.landing__letter--z{background-position:45% 50%}.landing__actions{pointer-events:auto}}.language-select{min-height:100dvh;display:flex;flex-direction:column;justify-content:center}.language-select h1{font-size:22px;text-align:center;margin-bottom:24px}.language-select__list{display:flex;flex-direction:column;gap:12px}.language-select__option{padding:16px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-primary);font-size:16px;font-weight:500;cursor:pointer;text-align:left;transition:border-color .15s ease,background .15s ease}.language-select__option:hover{border-color:var(--color-accent)}.language-select__option--active{border-color:var(--color-primary);background:var(--color-bg-elevated-2)}.age-gate{min-height:100dvh;display:flex;flex-direction:column;justify-content:center}.age-gate h1{font-size:22px;margin-bottom:4px}.age-gate__form{display:flex;flex-direction:column;gap:16px;margin-top:24px}.age-gate__dob{display:grid;grid-template-columns:1fr 1.6fr 1.2fr;gap:10px}.age-gate__dob-field input,.age-gate__dob-field select{width:100%}.age-gate__checkbox{display:flex;align-items:flex-start;gap:10px;font-size:14px;cursor:pointer}.age-gate__checkbox input{margin-top:3px}.age-gate__privacy{font-size:12px;line-height:1.6}.age-gate__error{color:var(--color-danger);font-size:14px}.device-account-notice{display:flex;flex-direction:column;gap:14px;padding:20px}.device-account-notice__title{font-weight:600}.device-account-notice__actions{display:flex;gap:10px;flex-wrap:wrap}.device-account-notice__dismiss{align-self:flex-start;background:none;border:none;padding:0;font-size:13px;color:var(--color-text-muted);text-decoration:underline;cursor:pointer}.country-city-select__city{position:relative}.country-city-select__suggestions{position:absolute;z-index:10;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow-y:auto;margin:0;padding:6px;list-style:none;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-card)}.country-city-select__suggestions li{margin:0;padding:0}.country-city-select__suggestions button{display:block;width:100%;text-align:left;background:none;border:none;border-radius:var(--radius-sm);padding:10px 12px;font-family:inherit;font-size:14px;color:var(--color-text-primary);cursor:pointer}.country-city-select__suggestions button:hover,.country-city-select__suggestions button.is-highlighted{background:var(--color-bg-elevated-2)}.country-city-select__empty{padding:10px 12px;font-size:14px;color:var(--color-text-muted)}.auth-form{min-height:100dvh;display:flex;flex-direction:column;justify-content:center}.auth-form h1{font-size:22px;margin-bottom:24px}.auth-form form{display:flex;flex-direction:column;gap:16px}.auth-form__privacy{font-size:12px;line-height:1.6}.auth-form__error{color:var(--color-danger);font-size:14px}.auth-form__switch{display:block;text-align:center;margin-top:20px;color:var(--color-accent);font-size:14px;text-decoration:none}.auth-form__switch:hover{text-decoration:underline}.dashboard{min-height:100dvh;display:flex;flex-direction:column}.dashboard__header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:640px;margin:0 auto;padding:16px 20px;border-bottom:1px solid var(--color-border)}.dashboard__nickname{font-weight:600}.dashboard__logout{background:none;border:none;color:var(--color-text-muted);font-size:13px;cursor:pointer}.dashboard__logout:hover{color:var(--color-danger)}.dashboard__content{flex:1;width:100%;max-width:640px;margin:0 auto;padding:20px 20px 90px;overflow-y:auto}.dashboard__tabs{position:fixed;bottom:0;left:0;right:0;width:100%;max-width:640px;margin:0 auto;display:flex;background:var(--color-bg-elevated);border-top:1px solid var(--color-border);padding:8px 0 calc(8px + env(safe-area-inset-bottom))}.dashboard__tab{flex:1;text-align:center;padding:8px 4px;font-size:14px;font-weight:600;color:var(--color-text-muted);text-decoration:none}.dashboard__tab.active{color:var(--color-accent)}.dashboard__tab-label{position:relative;display:inline-block}.dashboard__tab-dot{position:absolute;top:-3px;right:-9px;width:8px;height:8px;border-radius:50%}.dashboard__tab-dot--red{background:var(--color-danger)}.dashboard__tab-dot--green{background:var(--color-success)}@media(min-width:1024px){.dashboard__header,.dashboard__content,.dashboard__tabs{max-width:880px}.dashboard__content{padding-left:32px;padding-right:32px}}.profile-tab{display:flex;flex-direction:column;gap:20px;width:100%;max-width:420px;margin:0 auto}.profile-tab__photo{display:flex;flex-direction:column;align-items:center;gap:12px}.profile-tab__photo img,.profile-tab__photo-placeholder{width:128px;height:128px;border-radius:50%;object-fit:cover;background:var(--color-bg-elevated-2);border:2px solid var(--color-border)}.profile-tab__upload{font-size:13px;padding:8px 20px}.profile-tab__checkbox{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.profile-tab__preferences-section{display:flex;flex-direction:column;gap:16px;padding-top:20px;border-top:1px solid var(--color-border)}.profile-tab__preferences-title{margin:0;font-size:16px}.profile-tab__preferences-hint{margin:-8px 0 0;font-size:12px;color:var(--color-text-muted);line-height:1.5}.profile-tab__preference-group{display:flex;flex-direction:column;gap:8px}.profile-tab__required-mark{color:var(--color-danger);margin-left:3px}.profile-tab__preference-hint-text{margin:-4px 0 0;font-size:12px;color:var(--color-text-muted)}.profile-tab__preference-options{display:flex;flex-wrap:wrap;gap:10px 16px}.profile-tab__preferences-required-hint{margin:0;font-size:13px;color:var(--color-danger);line-height:1.5}.profile-tab__radio{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.profile-tab__error{margin:-8px 0 0;font-size:13px;color:var(--color-danger);text-align:center}.profile-tab__support{padding:16px;text-align:center}.profile-tab__support-text{margin:0 0 12px;font-size:13px;color:var(--color-text-secondary)}.profile-tab__support-cta{width:100%;text-decoration:none}.resonance-intro-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:24px;z-index:60}.resonance-intro-modal{width:100%;max-width:460px;max-height:85dvh;overflow-y:auto;padding:28px}.resonance-intro-modal h2{margin:0 0 6px;font-size:19px}.resonance-intro-modal__subtitle{margin:0 0 14px;font-size:13px;font-weight:600;color:var(--color-text-primary)}.resonance-intro-modal p{margin:0 0 12px;color:var(--color-text-secondary);line-height:1.6;font-size:13px}.resonance-intro-modal__legend{margin:0 0 14px;padding-left:18px;display:flex;flex-direction:column;gap:6px;color:var(--color-text-secondary);line-height:1.5;font-size:12px}.resonance-intro-modal__notice{font-size:12px;color:var(--color-text-muted)}.resonance-intro-modal .btn{width:100%;margin-top:10px}.questionnaire-tab{display:flex;flex-direction:column;gap:20px;width:100%;max-width:480px;margin:0 auto}.questionnaire-tab__intro{font-size:14px;color:var(--color-text-secondary);line-height:1.6}.questionnaire-tab__progress{height:8px;border-radius:var(--radius-pill);background:var(--color-bg-elevated-2);overflow:hidden}.questionnaire-tab__progress-bar{height:100%;background:var(--gradient-primary);transition:width .3s ease}.questionnaire-tab__progress-label{font-size:12px;margin-top:-12px}.question-field select,.question-field input,.question-field textarea{width:100%}.question-field__checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}.question-field__checkbox{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.resonance-section{display:flex;flex-direction:column;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.resonance-section__title{margin:0;font-size:16px}.resonance-section__question{display:flex;flex-direction:column;gap:8px}.resonance-section__options{display:flex;flex-wrap:wrap;gap:10px 16px}.resonance-section__radio{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-secondary);cursor:pointer}.questionnaire-tab__error{margin:-8px 0 0;font-size:13px;color:var(--color-danger);text-align:center}.rezy-score-info-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.rezy-score-info-modal{width:100%;max-width:440px;max-height:85dvh;overflow-y:auto;padding:32px;text-align:center}.rezy-score-info-modal h2{margin-top:0;font-size:20px}.rezy-score-info-modal__intro{color:var(--color-text-secondary);line-height:1.6;font-size:14px;margin:0 0 20px}.rezy-score-info-modal__tiers{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:14px;text-align:left}.rezy-score-info-modal__tier{display:flex;gap:10px}.rezy-score-info-modal__tier-dot{flex-shrink:0;width:10px;height:10px;border-radius:50%;margin-top:5px}.rezy-score-info-modal__tier--0 .rezy-score-info-modal__tier-dot{background:var(--color-text-muted)}.rezy-score-info-modal__tier--1 .rezy-score-info-modal__tier-dot{background:var(--color-warning)}.rezy-score-info-modal__tier--2 .rezy-score-info-modal__tier-dot{background:var(--color-accent)}.rezy-score-info-modal__tier--3 .rezy-score-info-modal__tier-dot{background:var(--color-success)}.rezy-score-info-modal__tier-text{flex:1;min-width:0}.rezy-score-info-modal__tier-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.rezy-score-info-modal__tier-label{font-weight:600;color:var(--color-text-primary);font-size:14px}.rezy-score-info-modal__tier-range{font-size:12px;color:var(--color-text-muted);white-space:nowrap}.rezy-score-info-modal__tier-description{margin:2px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.5}.rezy-score-info-modal .btn{width:100%}.matches-tab{display:flex;flex-direction:column;gap:16px}.matches-tab__header{display:flex;align-items:center;justify-content:space-between;gap:12px}@media(max-width:420px){.matches-tab__header{flex-direction:column;align-items:stretch}.matches-tab__generate{width:100%}}.matches-tab__header h1{font-size:20px;margin:0}.matches-tab__generate{font-size:13px;padding:10px 16px;white-space:nowrap}.matches-tab__score-info-trigger{align-self:flex-start;background:none;border:none;padding:0;margin:-8px 0 0;font-size:13px;color:var(--color-accent);text-decoration:underline;cursor:pointer}.matches-tab__empty{font-size:14px;line-height:1.6}.matches-tab__list{display:flex;flex-direction:column;gap:12px}.matches-tab__card{display:flex;gap:14px;padding:14px}.matches-tab__photo{width:72px;height:72px;border-radius:var(--radius-md);object-fit:cover;flex-shrink:0;background:var(--color-bg-elevated-2)}.matches-tab__info{display:flex;flex-direction:column;gap:4px;flex:1}.matches-tab__header-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.matches-tab__name{font-size:15px;font-weight:600;min-width:0}.matches-tab__location{font-size:13px}.matches-tab__score{font-size:15px;white-space:nowrap;flex-shrink:0}.matches-tab__score--tier-0{color:var(--color-text-muted)}.matches-tab__score--tier-1{color:var(--color-warning)}.matches-tab__score--tier-2{color:var(--color-accent)}.matches-tab__score--tier-3{color:var(--color-success)}.matches-tab__message-btn{align-self:flex-start;margin-top:6px;font-size:13px;padding:8px 18px}.matches-tab__report-note{font-size:12px;line-height:1.6;text-align:center;margin:4px 0 0}.matches-tab__report-note a{color:var(--color-accent);text-decoration:underline}.messages-tab h1{font-size:20px;margin:0 0 16px}.messages-tab__list{display:flex;flex-direction:column;gap:10px}.messages-tab__item{display:block;padding:14px 16px;text-decoration:none;color:inherit}.messages-tab__nickname{font-weight:600;margin-bottom:2px}.messages-tab__preview{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emoji-picker{position:absolute;bottom:calc(100% + 8px);left:0;z-index:20;width:min(320px,90vw);max-height:280px;overflow-y:auto;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:10px}.emoji-picker__group+.emoji-picker__group{margin-top:8px}.emoji-picker__group-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.emoji-picker__grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px}.emoji-picker__emoji{background:none;border:none;font-size:20px;line-height:1;padding:6px 0;border-radius:var(--radius-sm);cursor:pointer}.emoji-picker__emoji:hover,.emoji-picker__emoji:focus-visible{background:var(--color-bg-elevated-2)}.chat-page{display:flex;flex-direction:column;height:calc(100dvh - 180px)}.chat-page__e2e-notice{font-size:11px;color:var(--color-text-secondary);text-align:center;margin:0 0 8px}.chat-page__messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-bottom:12px}.chat-page__bubble{align-self:flex-start;max-width:75%;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 14px;font-size:14px}.chat-page__bubble--mine{align-self:flex-end;background:var(--gradient-primary);border:none;color:#fff}.chat-page__report-note{font-size:12px;line-height:1.5;text-align:center;margin:8px 0 0}.chat-page__report-note a{color:var(--color-accent);text-decoration:underline}.chat-page__blocked{color:var(--color-warning);font-size:13px;margin:8px 0}.chat-page__key-notice{color:var(--color-text-secondary);font-size:13px;text-align:center;margin:8px 0}.chat-page__image{display:block;max-width:240px;max-height:320px;width:100%;height:auto;border-radius:var(--radius-sm);object-fit:cover}.chat-page__composer{display:flex;align-items:center;gap:10px;padding-top:10px;border-top:1px solid var(--color-border)}.chat-page__composer input{flex:1;min-width:0}.chat-page__composer-tools{position:relative;display:flex;gap:4px;flex-shrink:0}.chat-page__composer .btn{flex-shrink:0;padding:10px 18px}.chat-page__tool-btn{background:none;border:none;font-size:20px;line-height:1;padding:6px;border-radius:var(--radius-sm);cursor:pointer}.chat-page__tool-btn:hover:not(:disabled){background:var(--color-bg-elevated)}.chat-page__tool-btn:disabled{opacity:.5;cursor:default}.legal-page{padding-top:32px;padding-bottom:48px}.legal-page.container{max-width:720px}.legal-page h1{font-size:22px;margin-bottom:4px}.legal-page__last-updated{font-size:12px;color:var(--color-text-muted);margin-bottom:20px}.legal-page__intro{line-height:1.7;font-size:14px;color:var(--color-text-secondary);margin-bottom:24px}.legal-page__placeholder-notice{background:var(--color-bg-elevated-2);border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:12px 16px;font-size:13px;color:var(--color-text-secondary);margin-bottom:20px}.legal-page__body{white-space:pre-wrap;line-height:1.7;font-size:14px;color:var(--color-text-secondary)}.legal-page__section{margin-bottom:22px}.legal-page__section h2{font-size:15px;color:var(--color-text-primary);margin:0 0 8px}.legal-page__section p{line-height:1.7;font-size:14px;color:var(--color-text-secondary);margin:0 0 8px}.legal-page__list{margin:0 0 8px;padding-left:22px;line-height:1.7;font-size:14px;color:var(--color-text-secondary)}.legal-page__list li{margin-bottom:4px}
