.navigation{position:fixed;top:0;left:0;right:0;height:var(--nav-height);background:var(--color-surface);display:flex;justify-content:space-between;align-items:center;padding:0 16px;border-bottom:1px solid var(--color-border-light);z-index:100}.nav-brand{display:flex;align-items:center;flex-shrink:0}.brand-name{font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary);letter-spacing:-.02em}.nav-links{display:flex;gap:4px;flex-shrink:1;min-width:0}.nav-link{display:flex;align-items:center;padding:8px 14px;border-radius:var(--radius-full);text-decoration:none;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:500;transition:background .15s ease,color .15s ease;position:relative;white-space:nowrap}.nav-link:hover{background:var(--color-primary-soft);color:var(--color-primary)}.nav-link.active{background:var(--color-primary);color:#fff}.nav-text{font-size:var(--font-size-sm)}.match-badge{position:absolute;top:2px;right:2px;background:var(--color-primary);color:#fff;font-size:10px;font-weight:600;min-width:16px;height:16px;padding:0 4px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;border:2px solid var(--color-surface)}.nav-link.active .match-badge{background:#fff;color:var(--color-primary);border-color:var(--color-primary)}@media (max-width: 480px){.navigation{padding:0 10px}.nav-links{gap:2px}.nav-link{padding:8px 10px}.nav-text{font-size:13px}.brand-name{font-size:var(--font-size-base)}}@media (max-width: 380px){.navigation{padding:0 8px}.nav-links{gap:1px}.nav-link{padding:7px 8px}.nav-text{font-size:12px}.brand-name{font-size:14px}.match-badge{min-width:14px;height:14px;font-size:9px;top:1px;right:1px}}.demo-signin-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:48px 24px;background:var(--color-bg)}.demo-signin-card{width:100%;max-width:300px;text-align:center}.demo-signin-title{font-size:36px;font-weight:700;color:var(--color-primary);margin-bottom:48px;letter-spacing:-.03em}.demo-signin-form{display:flex;flex-direction:column;gap:20px}.demo-field{text-align:right}.demo-field input{width:100%;padding:16px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-surface);transition:border-color .15s ease}.demo-field input:focus{outline:none;border-color:var(--color-primary)}.demo-field input::placeholder{color:var(--color-text-muted)}.demo-field-error{display:block;color:#dc2626;font-size:var(--font-size-xs);margin-top:8px}.demo-field-label{display:block;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:10px;font-weight:500}.demo-radio-group{display:flex;gap:8px}.demo-radio-option{flex:1;display:flex;align-items:center;justify-content:center;padding:12px 8px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:border-color .15s ease,background .15s ease}.demo-radio-option input{display:none}.demo-radio-option span{font-size:var(--font-size-sm);color:var(--color-text)}.demo-radio-option:hover{border-color:var(--color-primary)}.demo-radio-option.selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.demo-radio-option.selected span{color:var(--color-primary);font-weight:500}.demo-signin-btn{width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background .15s ease;margin-top:12px}.demo-signin-btn:hover{background:var(--color-primary-dark)}@media (max-width: 380px){.demo-signin-page{padding:32px 16px}.demo-signin-title{font-size:32px;margin-bottom:36px}.demo-signin-form{gap:16px}.demo-field input{padding:14px}.demo-radio-group{gap:6px}.demo-radio-option{padding:10px 6px}.demo-radio-option span{font-size:13px}.demo-signin-btn{padding:14px;margin-top:8px}}.report-page{width:100%;max-width:420px;padding-bottom:20px;max-height:calc(100dvh - var(--nav-height) - 24px);overflow-y:auto}.report-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-lg)}@media (max-width: 480px){.report-page{max-height:calc(100dvh - var(--nav-height) - 16px)}.report-card{padding:20px;border-radius:var(--radius-lg)}}.report-title{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);margin-bottom:8px}.report-about{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:24px}.report-section{margin-bottom:24px}.report-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);margin-bottom:12px}.reason-options{display:flex;flex-direction:column;gap:12px}.reason-option{display:flex;align-items:center;gap:10px;cursor:pointer}.reason-option input[type=radio]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}.reason-option span{font-size:var(--font-size-base);color:var(--color-text)}.report-section textarea{width:100%;padding:14px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:inherit;color:var(--color-text);background:var(--color-surface);resize:vertical;min-height:100px;transition:border-color .15s ease}.report-section textarea:focus{outline:none;border-color:var(--color-primary)}.report-section textarea::placeholder{color:var(--color-text-muted)}.report-buttons{display:flex;flex-direction:column;gap:12px;margin-top:8px}.report-save-btn{width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background .15s ease}.report-save-btn:hover:not(:disabled){background:var(--color-primary-dark)}.report-save-btn:disabled{background:var(--color-text-muted);cursor:not-allowed}.report-cancel-btn{width:100%;padding:16px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:background .15s ease}.report-cancel-btn:hover{background:var(--color-bg)}.report-saved-message{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6;margin-bottom:24px;padding:16px;background:var(--color-bg);border-radius:var(--radius-md)}.report-dismiss-btn{width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background .15s ease}.report-dismiss-btn:hover{background:var(--color-primary-dark)}.report-about-section{margin-bottom:20px}@media (min-width: 1280px) and (max-height: 800px){.report-page{max-height:calc(800px - var(--nav-height) - 48px);overflow:visible}.report-card{padding:20px}.report-title{font-size:var(--font-size-lg);margin-bottom:6px}.report-about-section{margin-bottom:14px}.report-about{margin-bottom:0}.report-section{margin-bottom:16px}.report-label{margin-bottom:8px}.reason-options{gap:8px}.reason-option input[type=radio]{width:16px;height:16px}.reason-option span{font-size:var(--font-size-sm)}.report-section textarea{min-height:60px;padding:10px}.report-buttons{gap:10px;margin-top:6px}.report-save-btn,.report-cancel-btn{padding:12px}}.profile-page{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:12px;padding-bottom:20px}@media (max-width: 480px){.profile-page{gap:10px}}.profile-card{background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);width:100%}.profile-photo-section{position:relative;width:100%}.profile-photo-container{width:100%;aspect-ratio:1;background:var(--color-bg)}.photo-actions{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-lg)}.change-photo-btn{background:none;border:none;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-muted);cursor:default}.change-photo-btn.disabled{opacity:1}.photo-note{font-size:var(--font-size-xs);color:var(--color-text-muted);opacity:.8}.profile-info{padding:24px}.profile-name{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text);margin-bottom:4px;letter-spacing:-.02em}.profile-location{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:24px}.profile-section{margin-bottom:24px}.profile-section h2{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}.profile-bio{font-size:var(--font-size-base);color:var(--color-text);line-height:1.6}.interests-list{display:flex;flex-wrap:wrap;gap:8px}.interest-tag{padding:8px 14px;background:var(--color-primary-soft);color:var(--color-primary);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500}.edit-profile-btn{display:block;width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background .15s ease;text-decoration:none;text-align:center;margin-bottom:16px}.edit-profile-btn:hover{background:var(--color-primary-dark)}.anon-chat-link{display:block;background:var(--color-bg);border-radius:var(--radius-lg);padding:16px 20px;text-decoration:none;margin-bottom:16px;transition:background .15s ease}.anon-chat-link:hover{background:var(--color-border)}.anon-chat-title{display:block;font-size:var(--font-size-base);font-weight:600;color:var(--color-text);margin-bottom:2px}.anon-chat-desc{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted)}.settings-link{display:block;color:var(--color-text-secondary);font-size:var(--font-size-sm);text-decoration:none;text-align:center;transition:color .15s ease}@media (min-width: 768px){.profile-photo-container{aspect-ratio:4/3}}@media (max-width: 480px){.profile-info{padding:20px}.profile-name{font-size:var(--font-size-xl)}}.edit-profile-page{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;padding-bottom:20px}.edit-card{background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);width:100%}@media (max-width: 480px){.edit-card{border-radius:var(--radius-lg)}}.edit-photo-section{position:relative;width:100%;aspect-ratio:4/3;background:var(--color-bg)}.edit-photo{width:100%;height:100%;object-fit:cover}.photo-unavailable{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-lg)}.photo-unavailable-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-muted)}.photo-unavailable-note{font-size:var(--font-size-xs);color:var(--color-text-muted);opacity:.8}.edit-form{padding:24px}.form-field{margin-bottom:20px}.form-field label{display:block;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.06em}.form-field input[type=text],.form-field input[type=number],.form-field textarea{width:100%;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-surface);transition:border-color .15s ease;font-family:inherit}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--color-primary)}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--color-text-muted)}.form-field textarea{resize:vertical;min-height:80px}.char-count{display:block;text-align:left;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:6px}.field-error{display:block;color:#dc2626;font-size:var(--font-size-xs);margin-top:6px}.interests-input-row{display:flex;gap:8px}.interests-input-row input{flex:1}.add-interest-btn{padding:14px 20px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);cursor:pointer;transition:background .15s ease;white-space:nowrap}.add-interest-btn:hover{background:var(--color-border)}.interests-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.interest-tag{display:inline-flex;align-items:center;gap:6px;background:var(--color-primary-soft);color:var(--color-primary);padding:8px 12px;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500}.remove-interest-btn{background:none;border:none;color:var(--color-primary);font-size:18px;line-height:1;cursor:pointer;padding:0;margin:0;opacity:.7;transition:opacity .15s ease}.remove-interest-btn:hover{opacity:1}.interests-count{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:8px}.form-actions{display:flex;flex-direction:column;gap:12px;margin-top:28px}.save-btn{width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background .15s ease}.save-btn:hover{background:var(--color-primary-dark)}.cancel-btn{width:100%;padding:16px;background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:background .15s ease}.cancel-btn:hover{background:var(--color-bg)}.settings-page{width:100%;max-width:420px;padding-bottom:20px}.settings-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:24px;box-shadow:var(--shadow-lg)}@media (max-width: 480px){.settings-card{padding:20px;border-radius:var(--radius-lg)}}.settings-title{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);margin-bottom:24px}.settings-section{padding:16px 0;border-bottom:1px solid var(--color-border)}.settings-section:last-child{border-bottom:none;padding-bottom:0}.settings-row{display:flex;align-items:center;justify-content:space-between}.settings-row-header{margin-bottom:12px}.settings-row-content{display:flex;flex-direction:column;gap:4px}.settings-label{font-size:var(--font-size-base);font-weight:500;color:var(--color-text)}.settings-note{font-size:var(--font-size-xs);color:var(--color-text-muted)}.toggle-btn{width:48px;height:28px;border-radius:14px;border:none;cursor:pointer;position:relative;transition:background .2s ease}.toggle-btn.off{background:var(--color-border)}.toggle-btn.on{background:var(--color-primary)}.toggle-knob{position:absolute;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:left .2s ease;box-shadow:var(--shadow-sm)}.toggle-btn.off .toggle-knob{left:3px}.toggle-btn.on .toggle-knob{left:23px}.settings-empty{font-size:var(--font-size-sm);color:var(--color-text-muted)}.blocked-list{display:flex;flex-direction:column;gap:8px}.blocked-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.blocked-item span{font-size:var(--font-size-sm);color:var(--color-text)}.unblock-btn{padding:8px 14px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;transition:background .15s ease}.unblock-btn:hover{background:var(--color-border)}.settings-link{display:block;width:100%;padding:0;background:none;border:none;text-align:right;font-size:var(--font-size-base);font-weight:500;color:var(--color-text);cursor:pointer;transition:color .15s ease}.settings-link:hover{color:var(--color-primary)}.logout-btn{display:block;width:100%;padding:16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:500;color:var(--color-text);cursor:pointer;text-align:center;transition:background .15s ease}.logout-btn:hover{background:var(--color-bg)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}.modal-content{background:var(--color-surface);border-radius:var(--radius-xl);padding:24px;width:100%;max-width:400px;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-lg)}@media (max-width: 480px){.modal-overlay{padding:12px}.modal-content{padding:20px;border-radius:var(--radius-lg)}}.modal-content h2{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text);margin-bottom:16px}.modal-text{margin-bottom:24px}.modal-text p{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;margin-bottom:12px}.modal-text p:last-child{margin-bottom:0}.modal-close{display:block;width:100%;padding:16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:background .15s ease}.modal-close:hover{background:var(--color-primary-dark)}.browse-page{width:100%;max-width:420px;height:calc(100dvh - var(--nav-height) - 32px);display:flex;flex-direction:column;gap:16px}@media (max-width: 480px){.browse-page{gap:12px;height:calc(100dvh - var(--nav-height) - 24px)}}.browse-page--empty{justify-content:center;align-items:center}.profile-card{flex:1;min-height:0;position:relative;border-radius:var(--radius-xl);overflow:hidden;background:var(--color-surface);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s cubic-bezier(.4,0,.2,1)}.profile-card.swipe-left{transform:translate(-110%) rotate(-8deg);opacity:0}.profile-card.swipe-right{transform:translate(110%) rotate(8deg);opacity:0}.card-photo-section{position:relative;flex:1;min-height:0}.profile-photo{width:100%;height:100%;object-fit:cover}.photo-overlay{position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(to top,rgba(0,0,0,.75) 0%,rgba(0,0,0,.3) 50%,transparent 100%);pointer-events:none}.photo-info{position:absolute;bottom:0;right:0;left:0;padding:20px 24px;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,rgba(0,0,0,.4) 70%,transparent 100%)}.profile-name{font-size:var(--font-size-2xl);font-weight:700;letter-spacing:-.02em;margin-bottom:4px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9),0 2px 8px rgba(0,0,0,.6)}.profile-location{font-size:var(--font-size-base);font-weight:400;color:#fffffff2;text-shadow:0 1px 3px rgba(0,0,0,.9),0 2px 8px rgba(0,0,0,.6)}@media (max-width: 480px){.photo-info{padding:16px 20px}.profile-name{font-size:var(--font-size-xl)}.profile-location{font-size:var(--font-size-sm)}}.card-details{flex:0 1 auto;padding:12px 16px;overflow:hidden}@media (max-width: 480px){.card-details{padding:10px 14px}.card-section{margin-bottom:10px}.card-section h2{font-size:12px;margin-bottom:4px}.card-section p{font-size:13px;line-height:1.4}.card-details .interest-tag{padding:3px 8px;font-size:11px}}.card-section{margin-bottom:12px}.card-section:last-child{margin-bottom:0}.card-section h2{font-size:13px;font-weight:600;color:var(--color-text-muted);margin-bottom:6px}.card-section p{font-size:var(--font-size-sm);color:var(--color-text);line-height:1.5}.card-details .interests-list{display:flex;flex-wrap:wrap;gap:6px}.card-details .interest-tag{padding:4px 10px;background:var(--color-bg);border-radius:var(--radius-full);font-size:12px;color:var(--color-text-secondary)}.action-buttons{display:flex;justify-content:space-between;gap:16px;flex-shrink:0;padding:0 4px}.action-btn{flex:1;padding:16px 20px;border-radius:var(--radius-lg);border:none;font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}@media (max-width: 480px){.action-buttons{gap:12px;padding:0}.action-btn{padding:14px 16px;font-size:var(--font-size-base)}}.action-btn:active{transform:scale(.97)}.pass-btn{background:var(--color-surface);color:var(--color-text-secondary);box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.pass-btn:hover{background:var(--color-bg)}.like-btn{background:var(--color-primary);color:#fff;box-shadow:0 4px 16px #e940574d}.like-btn:hover{box-shadow:0 6px 20px #e9405766}.empty-state{text-align:center;padding:40px 32px}.empty-state h2{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);margin-bottom:12px}.empty-state p{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6}@media (min-width: 768px){.browse-page{max-width:380px;max-height:calc(100dvh - var(--nav-height) - 48px)}.action-buttons{gap:32px}}@media (min-width: 1280px) and (max-height: 800px){.browse-page{max-height:calc(800px - var(--nav-height) - 48px);gap:10px}.card-details{padding:10px 14px}.card-section{margin-bottom:8px}.card-section h2{font-size:12px;margin-bottom:3px}.card-section p{font-size:13px;line-height:1.4}.card-details .interest-tag{padding:3px 8px;font-size:11px}.photo-info{padding:16px 20px}.profile-name{font-size:var(--font-size-xl)}.action-btn{padding:12px 16px;font-size:var(--font-size-base)}}@media (max-height: 650px){.browse-page{gap:12px}.photo-info{padding:16px}.profile-name{font-size:var(--font-size-lg)}.action-btn{padding:14px 16px;font-size:var(--font-size-base)}}.matches-page{width:100%;max-width:540px;display:flex;flex-direction:column;gap:16px;padding-bottom:20px}@media (max-width: 480px){.matches-page{gap:12px}}.matches-page--empty{justify-content:center;align-items:center;min-height:calc(100dvh - var(--nav-height) - 80px)}.matches-header{display:flex;align-items:baseline;gap:10px}.matches-title{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text)}.matches-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}.matches-list{display:flex;flex-direction:column;gap:16px}.match-card{display:flex;gap:16px;padding:16px;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);align-items:flex-start}.match-photo{width:88px;height:88px;border-radius:var(--radius-md);object-fit:cover;flex-shrink:0}.match-info{flex:1;min-width:0}.match-info h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin-bottom:2px}.match-location{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:8px}.match-bio{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-btn{padding:10px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;flex-shrink:0;transition:background .15s ease;text-decoration:none;text-align:center;align-self:center}.chat-btn:hover{background:var(--color-primary-dark)}.no-matches{text-align:center;padding:40px 32px}.no-matches h2{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);margin-bottom:12px}.no-matches p{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6;max-width:280px;margin:0 auto}@media (max-width: 480px){.match-card{flex-direction:column;align-items:stretch}.match-photo{width:100%;height:auto;aspect-ratio:16/9}.chat-btn{width:100%;align-self:stretch;margin-top:12px}}.chats-page{width:100%;max-width:480px;padding:0}@media (min-width: 480px){.chats-page{padding:0 16px}}.chats-title{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);margin-bottom:20px}.chats-empty{text-align:center;padding:60px 24px}.chats-empty p{font-size:var(--font-size-lg);color:var(--color-text);margin-bottom:8px}.chats-empty-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.chats-list{display:flex;flex-direction:column;gap:4px}.chat-item{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--color-surface);border-radius:var(--radius-lg);text-decoration:none;transition:background .15s ease}.chat-item:hover{background:var(--color-bg)}.chat-avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;flex-shrink:0}.chat-info{flex:1;min-width:0}.chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.chat-time{font-size:var(--font-size-xs);color:var(--color-text-muted)}.chat-preview{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-page{width:100%;max-width:480px;height:calc(100dvh - var(--nav-height) - 24px);display:flex;flex-direction:column;background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}@media (max-width: 480px){.chat-page{height:calc(100dvh - var(--nav-height) - 16px);border-radius:var(--radius-lg)}}.chat-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--color-border);position:relative}.back-btn{background:none;border:none;font-size:20px;color:var(--color-text);cursor:pointer;padding:4px 8px;transition:color .15s ease}.back-btn:hover{color:var(--color-primary)}.chat-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover}.chat-header-info{flex:1}.chat-name{font-size:var(--font-size-base);font-weight:600;color:var(--color-text)}.actions-btn{background:none;border:none;font-size:20px;color:var(--color-text-muted);cursor:pointer;padding:4px 8px;transition:color .15s ease}.actions-btn:hover{color:var(--color-text)}.actions-menu{position:absolute;top:100%;left:16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;z-index:10}.actions-menu button{display:block;width:100%;padding:12px 24px;background:none;border:none;text-align:right;font-size:var(--font-size-sm);color:var(--color-text);cursor:pointer;transition:background .15s ease}.actions-menu button:hover{background:var(--color-bg)}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.chat-compose{padding:12px 16px;border-top:1px solid var(--color-border)}.anon-chat-page{width:100%;max-width:480px;height:calc(100dvh - var(--nav-height) - 32px);display:flex;flex-direction:column;background:var(--color-surface);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg)}.anon-header{display:flex;align-items:flex-start;justify-content:space-between;padding:16px;border-bottom:1px solid var(--color-border);gap:8px}.anon-title-section{display:flex;flex-direction:column;gap:2px;min-width:0;flex-shrink:1}.anon-title{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text)}.anon-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted)}.anon-actions{display:flex;gap:6px;flex-shrink:0}.anon-action-btn{padding:8px 12px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;transition:background .15s ease;white-space:nowrap}.anon-action-btn:hover{background:var(--color-border)}@media (max-width: 400px){.anon-header{padding:12px;flex-wrap:wrap}.anon-actions{gap:4px}.anon-action-btn{padding:6px 10px;font-size:11px}}.anon-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.empty-chat{flex:1;display:flex;align-items:center;justify-content:center}.empty-chat p{color:var(--color-text-muted);font-size:var(--font-size-sm)}.message{max-width:75%;padding:12px 16px;border-radius:var(--radius-lg);font-size:var(--font-size-sm);line-height:1.5}.message.mine{align-self:flex-start;background:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.message.theirs{align-self:flex-end;background:var(--color-bg);color:var(--color-text);border-bottom-left-radius:4px}.message p{margin:0}.message-receipt{display:block;text-align:left;font-size:11px;margin-top:4px;color:#fff9}.message-receipt.read{color:#60a5fa}.reveal-section{padding:12px 16px;border-top:1px solid var(--color-border);text-align:center}.reveal-btn{padding:10px 24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);cursor:pointer;transition:background .15s ease}.reveal-btn:hover{background:var(--color-bg)}.reveal-status p,.reveal-request p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:8px}.reveal-cancel-btn{padding:8px 16px;background:none;border:none;font-size:var(--font-size-xs);color:var(--color-text-muted);cursor:pointer;text-decoration:underline}.reveal-response-btns{display:flex;gap:8px;justify-content:center}.reveal-accept-btn,.reveal-decline-btn{padding:10px 20px;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .15s ease}.reveal-accept-btn{background:var(--color-primary);color:#fff;border:none}.reveal-accept-btn:hover{background:var(--color-primary-dark)}.reveal-decline-btn{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.reveal-decline-btn:hover{background:var(--color-bg)}.anon-compose{padding:12px 16px;border-top:1px solid var(--color-border)}.compose-error{display:block;color:#dc2626;font-size:var(--font-size-xs);margin-bottom:8px}.compose-row{display:flex;gap:8px}.compose-row input{flex:1;padding:12px 16px;border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);color:var(--color-text);background:var(--color-bg);transition:border-color .15s ease}.compose-row input:focus{outline:none;border-color:var(--color-primary)}.compose-row input::placeholder{color:var(--color-text-muted)}.send-btn{padding:12px 20px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background .15s ease}.send-btn:hover{background:var(--color-primary-dark)}.demo-controls{padding:16px;background:var(--color-bg);border-top:1px solid var(--color-border)}.demo-label{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:10px;font-weight:500}.demo-buttons{display:flex;gap:8px;flex-wrap:wrap}.demo-buttons button{padding:8px 14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;transition:background .15s ease}.demo-buttons button:hover{background:var(--color-border)}.safety-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100;padding:24px}.safety-modal{background:var(--color-surface);border-radius:var(--radius-lg);padding:24px;width:100%;max-width:400px;max-height:80vh;overflow-y:auto}.safety-modal h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin-bottom:16px}.safety-text{margin-bottom:24px}.safety-text p{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;margin-bottom:12px}.safety-text p:last-child{margin-bottom:0}.safety-dismiss{display:block;width:100%;padding:14px;background:var(--color-text);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:500;cursor:pointer}.safety-dismiss:hover{opacity:.85}@media (max-width: 480px){.safety-modal-overlay{padding:16px}.safety-modal{padding:20px}}.match-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:200;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.match-modal{background:var(--color-surface);border-radius:var(--radius-xl);padding:40px 32px;max-width:340px;width:90%;text-align:center;animation:scaleIn .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.match-celebration{margin-bottom:24px}.match-hearts{font-size:48px;display:block;margin-bottom:16px;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.match-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-primary);margin-bottom:8px}.match-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary)}.match-profile{margin-bottom:28px}.match-photo{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid var(--color-primary);margin-bottom:12px}.match-name{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text)}.match-chat-btn{width:100%;padding:16px 24px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-lg);font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 4px 16px #e940574d}.match-chat-btn:hover{box-shadow:0 6px 20px #e9405766}.match-chat-btn:active{transform:scale(.98)}@media (max-width: 380px){.match-modal{padding:32px 24px}.match-hearts{font-size:40px}.match-title{font-size:var(--font-size-xl)}.match-photo{width:100px;height:100px}.match-chat-btn{padding:14px 20px;font-size:var(--font-size-base)}}.app{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.main-content{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:12px;padding-top:calc(var(--nav-height) + 12px);padding-bottom:12px}@media (min-width: 480px){.main-content{padding:16px;padding-top:calc(var(--nav-height) + 16px)}}@media (min-width: 768px){.main-content{padding:24px;padding-top:calc(var(--nav-height) + 24px)}}@media (min-height: 700px){.main-content{align-items:center}}*{margin:0;padding:0;box-sizing:border-box}:root{--color-bg: #f7f5f3;--color-surface: #ffffff;--color-text: #1c1917;--color-text-secondary: #57534e;--color-text-muted: #a8a29e;--color-primary: #e94057;--color-primary-dark: #d63850;--color-primary-soft: #fef2f3;--color-border: #e7e5e4;--color-border-light: #f5f5f4;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 2px 8px rgba(0,0,0,.08);--shadow-lg: 0 4px 16px rgba(0,0,0,.1);--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 22px;--font-size-2xl: 28px;--nav-height: 56px}body{font-family:Heebo,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--color-bg);min-height:100vh;min-height:100dvh;direction:rtl;color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased}#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}button{font-family:inherit}
