:root{font-family:IBM Plex Sans,Segoe UI,sans-serif;color:#f4f7fb;background:radial-gradient(circle at 20% 20%,#174e54,#0a1d2e 45%,#060d15)}*{box-sizing:border-box}body{margin:0;min-height:100vh}.container{max-width:860px;margin:0 auto;padding:16px}h1{margin:0 0 12px}.panel{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px;margin-bottom:12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}button,select,input[type=text],input[type=number],textarea{border-radius:10px;border:1px solid #70c6a4;background:#11283e;color:#f4f7fb;padding:8px 12px;margin-right:8px;font-family:inherit;font-size:14px}button:disabled{opacity:.5;cursor:not-allowed}button:not(:disabled):hover{background:#1a3d5a;cursor:pointer}textarea{width:100%;resize:vertical;margin-right:0}input[type=text],input[type=number],select{width:100%;margin-right:0}label{display:block;margin-bottom:12px;font-weight:500}label small{font-size:12px;color:#b9c7d8}.row{display:flex;align-items:center;gap:8px;margin-top:10px}.feed-list{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}.feed-card{background:#041622cc;border:1px solid rgba(112,198,164,.3);border-radius:12px;padding:10px}.feed-title-row{display:flex;justify-content:space-between;gap:8px}.gate{min-height:calc(100vh - 32px);display:flex;align-items:center;justify-content:center}.gate-card{width:100%;max-width:640px;background:#051423f2;border:1px solid rgba(112,198,164,.35);border-radius:16px;padding:20px}.check-row{display:flex;align-items:flex-start;gap:10px;margin:12px 0}.check-row a{color:#8deed2}.muted{color:#b9c7d8}.warn{color:#ffdb6d}.error{color:#ff8a8a}.ok{color:#78f7b8}.profile-setup{max-width:600px;margin:0 auto;padding:20px}.progress-bar{width:100%;height:6px;background:#ffffff1a;border-radius:3px;margin-bottom:24px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#70c6a4,#5ab88f);transition:width .3s ease}.step{margin-bottom:24px}.step h3{margin-bottom:16px;color:#8deed2}.button-group{display:flex;gap:12px;margin-top:24px}.button-group button{flex:1;margin:0}.photo-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:12px}.photo-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden}.photo-item img{width:100%;height:100%;object-fit:cover}.photo-item button{position:absolute;top:4px;right:4px;width:28px;height:28px;padding:0;margin:0;border-radius:50%;background:#000000b3;color:#fff;font-size:16px;line-height:1}.file-upload{margin-bottom:16px}.file-upload input[type=file]{display:none}.file-upload label{display:inline-block;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:8px;cursor:pointer;font-weight:600;transition:transform .2s,opacity .2s}.file-upload label:hover:not(.disabled){transform:translateY(-2px)}.file-upload label.disabled{opacity:.5;cursor:not-allowed}.preference-section{margin-bottom:20px}.preference-section h4{margin-bottom:10px;font-size:14px;font-weight:600;color:#b9c7d8}.chip-group{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:8px 16px;border-radius:20px;background:#ffffff14;border:1px solid rgba(112,198,164,.3);color:#f4f7fb;font-size:14px;cursor:pointer;transition:all .2s ease;margin:0}.chip:hover{background:#ffffff1f}.chip.selected{background:#70c6a4;border-color:#70c6a4;color:#0a1d2e;font-weight:600}.app-main{display:flex;flex-direction:column;min-height:100vh;background:radial-gradient(circle at 20% 20%,#174e54,#0a1d2e 45%,#060d15)}.app-header{text-align:center;padding:16px;background:#051423cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(112,198,164,.2)}.app-header h1{margin:0;font-size:28px;color:#8deed2}.swipe-container{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;position:relative}.swipe-card{width:100%;max-width:400px;height:600px;background:linear-gradient(135deg,#0a1520,#050b12);border-radius:20px;overflow:hidden;box-shadow:0 10px 40px #000000e6;position:relative;touch-action:none;-webkit-user-select:none;user-select:none;transition:transform .1s ease,opacity .1s ease;border:1px solid rgba(76,175,80,.2)}.card-photo{width:100%;height:60%;position:relative;cursor:pointer}.card-photo img{width:100%;height:100%;object-fit:cover}.photo-indicators{position:absolute;top:12px;left:0;right:0;display:flex;justify-content:center;gap:6px;padding:0 12px}.indicator{flex:1;height:4px;background:#fff6;border-radius:2px;transition:background .3s ease}.indicator.active{background:#ffffffe6}.card-info{height:40%;padding:20px;color:#e0e6ed;overflow-y:auto;background:#050b1280}.card-info h3{margin:0 0 8px;font-size:24px;color:#fff;font-weight:600}.card-info .location,.card-info .occupation{margin:4px 0;color:#8a9ba8;font-size:14px}.card-info .bio{margin:12px 0;color:#c8d1da;line-height:1.5}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.tag{padding:6px 12px;background:#4caf5026;border-radius:14px;font-size:13px;color:#81c784;font-weight:500;border:1px solid rgba(76,175,80,.3)}.tag.hobby{background:#ffa72626;color:#ffab40;border:1px solid rgba(255,167,38,.3)}.swipe-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;font-weight:900;padding:20px 40px;border-radius:12px;z-index:10;pointer-events:none}.swipe-indicator.like{color:#4caf50;border:4px solid #4caf50;transform:translate(-50%,-50%) rotate(-15deg)}.swipe-indicator.dislike{color:#f44336;border:4px solid #f44336;transform:translate(-50%,-50%) rotate(15deg)}.action-buttons{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:20px;z-index:5}.btn-dislike,.btn-like{width:60px;height:60px;border-radius:50%;border:2px solid;background:#fff;font-size:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;margin:0;padding:0}.btn-dislike{border-color:#f44336;color:#f44336}.btn-dislike:hover{background:#f44336;color:#fff;transform:scale(1.1)}.btn-like{border-color:#4caf50;color:#4caf50}.btn-like:hover{background:#4caf50;color:#fff;transform:scale(1.1)}.empty-feed{text-align:center;padding:40px 20px;color:#b9c7d8}.empty-feed h2{color:#8deed2;margin-bottom:12px}.match-notification{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:40px;border-radius:20px;text-align:center;z-index:1000;box-shadow:0 10px 50px #00000080;animation:matchPop .5s ease}@keyframes matchPop{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}50%{transform:translate(-50%,-50%) scale(1.1)}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.match-notification h2{margin:0 0 12px;font-size:32px}.error-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#f44336;color:#fff;padding:12px 24px;border-radius:8px;z-index:1000;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translate(-50%,100px);opacity:0}to{transform:translate(-50%);opacity:1}}.loading-indicator{text-align:center;margin-top:20px;color:#b9c7d8}.likes-page{max-width:600px;margin:0 auto;padding:20px 20px 100px}.likes-page h2{margin:0 0 24px;font-size:28px}.empty-state{text-align:center;padding:60px 20px}.empty-state p{margin:8px 0;font-size:16px}.likes-grid{display:grid;grid-template-columns:1fr;gap:16px}.like-card{background:linear-gradient(135deg,#1a2332,#0f1722);border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;display:flex;gap:16px;padding:12px;transition:transform .2s,box-shadow .2s;cursor:pointer}.like-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #70c6a433}.like-photo{width:100px;height:100px;flex-shrink:0;border-radius:12px;overflow:hidden;background:#ffffff0d}.like-photo img{width:100%;height:100%;object-fit:cover}.like-photo .avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:600;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.like-info{flex:1;display:flex;flex-direction:column;gap:4px}.like-info h3{margin:0;font-size:18px;color:#fff}.like-location{font-size:14px;color:#9ca7b3;margin:0}.like-bio{font-size:14px;color:#d0d7de;line-height:1.4;margin:4px 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.like-occupation{font-size:13px;color:#9ca7b3;margin:0}.like-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.like-tags .tag{padding:4px 10px;font-size:11px}.bottom-nav{position:fixed;bottom:12px;left:50%;transform:translate(-50%);display:flex;justify-content:space-around;width:calc(100% - 32px);max-width:400px;background:#11283ef2;border:1px solid rgba(112,198,164,.3);border-radius:20px;padding:6px 8px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 8px 32px #0006;z-index:9999}.bottom-nav button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 20px;background:transparent;border:none;border-radius:14px;color:#b9c7d8;font-size:10px;font-weight:500;cursor:pointer;transition:all .2s ease;margin:0;flex:1}.bottom-nav button:hover{background:#70c6a41a;color:#70c6a4}.bottom-nav button.active{background:linear-gradient(135deg,#70c6a433,#667eea33);color:#70c6a4}.bottom-nav button svg{width:24px;height:24px;flex-shrink:0}.app-main{min-height:100vh;display:flex;flex-direction:column;padding-bottom:100px}.app-header{padding:16px;text-align:center;background:#11283e99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(112,198,164,.2)}.app-header h1{margin:0;font-size:24px;background:linear-gradient(135deg,#70c6a4,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.app-content{flex:1;overflow-y:auto}.admin-page{max-width:800px;margin:0 auto;padding:20px}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:linear-gradient(135deg,#11283ee6,#0a1d2ee6);border:1px solid rgba(112,198,164,.3);border-radius:12px;padding:20px;text-align:center}.stat-value{font-size:32px;font-weight:700;color:#70c6a4;margin-bottom:8px}.stat-label{font-size:13px;color:#b9c7d8}.admin-section{background:#11283e99;border:1px solid rgba(112,198,164,.2);border-radius:16px;padding:24px}.admin-section h3{color:#70c6a4;margin-bottom:20px;font-size:18px}.users-table{display:flex;flex-direction:column;gap:12px}.user-row{display:flex;align-items:center;gap:16px;padding:12px;background:#0a1d2e80;border:1px solid rgba(112,198,164,.15);border-radius:12px;transition:all .2s ease}.user-row:hover{background:#0a1d2eb3;border-color:#70c6a44d}.user-avatar{width:50px;height:50px;border-radius:50%;overflow:hidden;flex-shrink:0}.user-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder-sm{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#fff}.user-info{flex:1;display:flex;flex-direction:column;gap:4px}.user-info strong{color:#e0e6ed;font-size:16px}.user-info .muted{font-size:13px;color:#8a9ba8}.delete-button{padding:8px 16px;background:#f4433633;border:1px solid rgba(244,67,54,.5);border-radius:8px;color:#f44336;cursor:pointer;transition:all .2s ease;font-size:18px}.delete-button:hover{background:#f443364d;border-color:#f44336}.delete-button:disabled{opacity:.5;cursor:not-allowed}.profile-page{max-width:600px;margin:0 auto;padding:20px}.profile-page h2{margin:0 0 24px;font-size:28px}.profile-section{background:#11283e99;border:1px solid rgba(112,198,164,.2);border-radius:16px;padding:20px;margin-bottom:16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.profile-section h3{margin:0 0 16px;font-size:18px;color:#70c6a4}.profile-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.profile-avatar{width:80px;height:80px;border-radius:50%;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#667eea,#764ba2)}.profile-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;color:#fff}.profile-info h3{margin:0 0 4px;font-size:22px;color:#f4f7fb}.profile-meta{margin:0;color:#b9c7d8;font-size:14px}.profile-bio{margin-top:12px}.profile-bio p{margin:0;line-height:1.6;color:#e0e7f1}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.toggle-row strong{display:block;margin-bottom:4px;color:#f4f7fb}.toggle{position:relative;display:inline-block;width:52px;height:28px;flex-shrink:0}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#70c6a433;border:1px solid rgba(112,198,164,.4);border-radius:24px;transition:.3s}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:3px;background:#b9c7d8;border-radius:50%;transition:.3s}.toggle input:checked+.toggle-slider{background:linear-gradient(135deg,#70c6a4,#667eea);border-color:#70c6a4}.toggle input:checked+.toggle-slider:before{transform:translate(24px);background:#fff}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-header h3{margin:0}.upload-button,.edit-button{padding:6px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:transform .2s}.upload-button:hover,.edit-button:hover{transform:translateY(-2px)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.photo-grid .photo-item{aspect-ratio:1;border-radius:12px;overflow:hidden;position:relative}.photo-grid .photo-item img{width:100%;height:100%;object-fit:cover}.photo-grid .remove-photo{position:absolute;top:6px;right:6px;width:28px;height:28px;padding:0;margin:0;border-radius:50%;background:#000000b3;border:none;color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.photo-grid .remove-photo:hover{background:#f00c}.photo-grid .main-badge{position:absolute;top:6px;left:6px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:10px;font-weight:600;padding:2px 8px;border-radius:12px;z-index:1}.photo-grid .set-main-photo{position:absolute;top:6px;left:6px;width:28px;height:28px;padding:0;margin:0;border-radius:50%;background:#000000b3;border:none;color:#fff;font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s;z-index:1}.photo-grid .set-main-photo:hover{background:#ffd700cc;transform:scale(1.1)}.edit-form{display:flex;flex-direction:column;gap:16px}.edit-form label{margin:0}.edit-form .button-group{display:flex;gap:8px;margin-top:8px}.edit-form .button-group button{flex:1;margin:0}.edit-form .button-group button.primary{background:linear-gradient(135deg,#667eea,#764ba2)}.profile-details{display:flex;flex-direction:column;gap:12px}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(112,198,164,.1)}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#b9c7d8;font-size:14px}.detail-row .value{color:#f4f7fb;font-weight:500}.messages-placeholder{text-align:center;padding:60px 20px}.messages-placeholder h2{margin:0 0 12px;font-size:24px}.messages-placeholder p{margin:0;color:#b9c7d8}
