.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#1a1a1a,#2a2a2a);padding:20px}.auth-card{background:#2a2a2a;border:2px solid #c0c0c0;border-radius:12px;padding:40px;max-width:400px;width:100%;box-shadow:0 8px 32px #8b00004d}.auth-card h1{font-size:2.5rem;text-align:center;margin-bottom:10px;color:#8b0000}.auth-card .subtitle{text-align:center;color:silver;margin-bottom:30px}.form-group input{width:100%;padding:12px}.auth-card button{width:100%;padding:12px;margin-bottom:10px;background:#8b0000;border-color:#8b0000}.auth-card button:hover{background:#a00000}.auth-card button:disabled{opacity:.6;cursor:not-allowed}.auth-card .secondary{background:transparent;border-color:silver;color:silver}.auth-card .secondary:hover{background:#333}.error-message{background:#8b000033;border:1px solid #8b0000;color:#ff6b6b;padding:12px;border-radius:8px;margin-bottom:20px;text-align:center}.terms{text-align:center;font-size:.85rem;color:#999;margin-top:20px}.home-container{display:flex;flex-direction:column;min-height:100vh}.navbar{background:#2a2a2a;border-bottom:2px solid #c0c0c0;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:70px;position:sticky;top:0;z-index:100}.nav-brand h1{margin:0;font-size:1.8rem;color:#8b0000}.nav-links{display:flex;gap:20px}.nav-links a{padding:8px 16px;border-radius:6px;transition:all .3s ease;border:1px solid transparent}.nav-links a:hover{border-color:#8b0000;background:#8b00001a}.home-content{flex:1;padding:40px 20px;max-width:1200px;margin:0 auto;width:100%}.welcome-section{text-align:center;margin-bottom:40px}.welcome-section h2{font-size:2rem;margin-bottom:10px}.welcome-section p{font-size:1.1rem;color:silver}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px}.action-card{background:#2a2a2a;border:2px solid #c0c0c0;border-radius:12px;padding:30px;text-align:center;transition:all .3s ease;display:flex;flex-direction:column;align-items:center}.action-card:hover{border-color:#8b0000;transform:translateY(-5px);box-shadow:0 10px 30px #8b000033}.action-card .icon{font-size:3rem;margin-bottom:15px}.action-card h3{margin-bottom:10px;color:#fff}.action-card p{color:silver;font-size:.9rem}.features{background:#2a2a2a;border:2px solid #c0c0c0;border-radius:12px;padding:30px}.features h3{margin-bottom:20px;color:#8b0000}.features ul{list-style:none}.features li{padding:10px 0;color:silver;border-bottom:1px solid #444}.features li:last-child{border-bottom:none}.profile-container{padding:20px;max-width:600px;margin:0 auto}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.profile-header h2{font-size:2rem}.edit-btn{padding:10px 20px}.profile-content{background:#2a2a2a;border:2px solid #c0c0c0;border-radius:12px;padding:30px}.profile-photo{width:200px;height:200px;border-radius:12px;object-fit:cover;display:block;margin:0 auto 30px;border:2px solid #c0c0c0}.profile-form{margin-bottom:30px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:silver;font-weight:500}.form-group input,.form-group textarea{width:100%}.form-group textarea{resize:vertical;min-height:100px}.profile-form button{width:100%;padding:12px;margin-top:20px;background:#8b0000;border-color:#8b0000}.profile-info{text-align:center}.profile-info h3{font-size:1.5rem;margin-bottom:15px}.profile-info .bio{color:silver;margin-bottom:30px;font-size:1rem;line-height:1.5}.profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}.stat{background:#1a1a1a;padding:20px;border-radius:8px;border:1px solid #444}.stat .label{display:block;color:silver;font-size:.9rem;margin-bottom:5px}.stat .value{display:block;font-size:1.5rem;color:#8b0000;font-weight:700}.profile-actions{display:flex;gap:10px}.logout-btn{flex:1;background:#8b0000;border-color:#8b0000;padding:12px}.logout-btn:hover{background:#a00000}.loading{text-align:center;padding:40px;color:silver}.chat-container{display:flex;height:calc(100vh - 70px);gap:20px;padding:20px}.conversations-list{width:300px;background:#2a2a2a;border:2px solid #c0c0c0;border-radius:12px;padding:20px;overflow-y:auto}.conversations-list h2{margin-bottom:20px}.conversation-item{display:flex;align-items:center;gap:15px;padding:15px;border-radius:8px;cursor:pointer;transition:all .3s ease;border:1px solid transparent;margin-bottom:10px}.conversation-item:hover{background:#8b00001a;border-color:#8b0000}.conversation-item.active{background:#8b000033;border-color:#8b0000}.conversation-item .user-photo{width:50px;height:50px;border-radius:50%;object-fit:cover}.conversation-info{flex:1;min-width:0}.conversation-info h4{margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-info p{color:silver;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{background:#8b0000;color:#fff;border-radius:50%;width:25px;height:25px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.chat-main{flex:1;display:flex;flex-direction:column;background:#2a2a2a;border:2px solid #c0c0c0;border-radius:12px;overflow:hidden}.chat-header{display:flex;align-items:center;gap:15px;padding:20px;border-bottom:2px solid #444}.chat-header img{width:50px;height:50px;border-radius:50%;object-fit:cover}.chat-header h3{margin:0}.messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:10px}.message{background:#1a1a1a;padding:12px 15px;border-radius:8px;max-width:70%;border-left:3px solid #8b0000}.message p{margin:0 0 5px;line-height:1.4}.message small{color:#999;font-size:.8rem}.no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:silver;font-size:1.1rem}.message-input{display:flex;gap:10px;padding:20px;border-top:2px solid #444}.message-input input{flex:1}.message-input button{padding:10px 20px}.loading,.empty{padding:20px;text-align:center;color:silver}.discover-container{padding:20px;max-width:1200px;margin:0 auto}.discover-container h2{margin-bottom:30px;font-size:2rem}.filters{display:flex;gap:20px;align-items:center;background:#2a2a2a;border:2px solid #c0c0c0;border-radius:12px;padding:20px;margin-bottom:30px}.filters label{display:flex;align-items:center;gap:15px;flex:1}.filters input[type=range]{flex:1;min-width:200px}.filters span{min-width:100px;color:#8b0000;font-weight:700}.filters button{padding:10px 20px}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.user-card{background:#2a2a2a;border:2px solid #c0c0c0;border-radius:12px;overflow:hidden;transition:all .3s ease}.user-card:hover{transform:translateY(-5px);border-color:#8b0000;box-shadow:0 10px 30px #8b000033}.user-image{width:100%;height:300px;object-fit:cover}.user-info{padding:20px}.user-info h3{margin-bottom:10px;color:#fff}.user-info p{color:silver;margin-bottom:10px;font-size:.9rem}.user-info .distance{color:#8b0000;font-weight:700;margin-bottom:15px}.user-info button{width:100%;padding:10px}.loading,.empty{text-align:center;padding:40px 20px;color:silver;font-size:1.1rem}.premium-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#000;padding:24px}.premium-card{max-width:640px;width:100%;background:#111;border-radius:16px;padding:24px;border:1px solid #333;color:#fff}.premium-header{text-align:center;margin-bottom:24px}.premium-header h2{margin:8px 0 0}.badge{display:inline-block;padding:4px 10px;border-radius:999px;background:#1a1a1a;color:#fc3;font-size:12px;font-weight:700;text-transform:uppercase}.premium-details{border-radius:12px;border:1px solid #333;padding:16px;margin-bottom:20px}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #222}.detail-row:last-child{border-bottom:none}.label{color:#aaa;font-size:14px}.value{font-size:14px;font-weight:600}.status-active{color:#4caf50}.premium-warning{border-radius:12px;border:1px solid #8b0000;background:#2a1a1a;padding:16px;margin-bottom:20px}.premium-warning h3{margin-top:0;margin-bottom:8px}.premium-warning p{margin-top:0;margin-bottom:12px}.premium-benefits{margin-bottom:20px}.premium-benefits h3{margin-top:0;margin-bottom:8px}.premium-benefits ul{padding-left:20px;margin:0}.premium-benefits li{margin-bottom:4px}.primary-btn,.danger-btn{width:100%;padding:10px 14px;border-radius:999px;border:none;font-size:15px;font-weight:600;cursor:pointer;margin-bottom:10px}.primary-btn{background:#8b0000;color:#fff}.danger-btn{background:transparent;color:#ff6b6b;border:1px solid #8b0000}.secondary-link{width:100%;background:transparent;border:none;color:#aaa;text-decoration:underline;margin-top:4px;cursor:pointer}.premium-loading{text-align:center}.gallery-container{max-width:960px;margin:40px auto;padding:0 16px;color:#fff}.gallery-subtitle{color:#ccc;margin-bottom:16px}.gallery-actions{display:flex;gap:12px;margin-bottom:20px}.gallery-upload-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border-radius:999px;background:#8b0000;color:#fff;font-weight:600;font-size:14px;cursor:pointer;overflow:hidden}.gallery-upload-btn input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.gallery-loading,.gallery-empty{margin-top:24px;color:#ccc}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.gallery-item{position:relative;border-radius:8px;overflow:hidden;background:#111}.gallery-image{width:100%;height:180px;object-fit:cover;display:block}.gallery-delete-btn{position:absolute;top:4px;right:4px;border:none;background:#0009;color:#fff;border-radius:999px;width:24px;height:24px;cursor:pointer}.user-profile-container{max-width:640px;margin:40px auto;padding:0 16px;color:#fff}.user-profile-card{background:#111;border-radius:16px;padding:24px;border:1px solid #333;text-align:center}.user-profile-photo{width:160px;height:160px;border-radius:999px;object-fit:cover;margin-bottom:16px}.user-profile-card h2{margin:0 0 8px}.user-profile-card .bio{color:#ccc}.user-profile-card .distance{color:#fc3;margin-bottom:8px}.back-btn{margin-bottom:16px;background:transparent;border:none;color:#ccc;cursor:pointer}.user-profile-loading{text-align:center}.settings-container{max-width:800px;margin:40px auto;padding:0 16px;color:#fff}.settings-section{margin-bottom:24px}.settings-section h3{margin-bottom:8px}.settings-section ul{margin:0;padding-left:20px}.settings-section li{margin-bottom:4px}.backend-info{font-size:14px}.backend-info code{background:#111;padding:2px 4px;border-radius:4px}.legal-page{max-width:800px;margin:40px auto;padding:0 16px;color:#fff}.legal-page ul{padding-left:20px}.app{min-height:100vh;display:flex;flex-direction:column}.loading-container{display:flex;align-items:center;justify-content:center;height:100vh;flex-direction:column}.spinner{border:4px solid #444;border-top:4px solid #8b0000;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.server-status{position:fixed;bottom:20px;right:20px;background:#000c;color:silver;padding:10px 15px;border-radius:8px;font-size:.85rem;border:1px solid #c0c0c0}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#1a1a1a;color:#fff}html{scroll-behavior:smooth}button{cursor:pointer;background-color:#000;color:#fff;border:2px solid #c0c0c0;padding:10px 20px;border-radius:8px;font-size:1rem;transition:all .3s ease}button:hover{background-color:#8b0000;border-color:#8b0000}input,textarea,select{background:#2a2a2a;color:#fff;border:1px solid #c0c0c0;padding:10px;border-radius:8px;font-family:inherit}input:focus,textarea:focus,select:focus{outline:none;border-color:#8b0000;box-shadow:0 0 5px #8b0000}a{color:silver;text-decoration:none;transition:color .3s ease}a:hover{color:#8b0000}
