:root{font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0f0f23;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%}a{font-weight:500;color:#667eea;text-decoration:inherit}a:hover{color:#764ba2}*{margin:0;padding:0;box-sizing:border-box}.app{min-height:100vh;background:linear-gradient(135deg,#0f0f23,#1a1a2e,#16213e);color:#fff}.header{background:linear-gradient(180deg,rgba(0,0,0,.8) 0%,transparent 100%);padding:2rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.header-content{max-width:1200px;margin:0 auto}.logo{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center;justify-content:center;gap:.5rem}.logo-icon{font-size:2rem;-webkit-text-fill-color:initial}.tagline{color:#a0a0b0;margin-top:.5rem;font-size:1.1rem}.main{max-width:1400px;margin:0 auto;padding:2rem}.filters{margin-bottom:2rem}.search-box{margin-bottom:1.5rem}.search-input{width:100%;max-width:500px;padding:1rem 1.5rem;font-size:1rem;border:2px solid rgba(255,255,255,.1);border-radius:50px;background:#ffffff0d;color:#fff;outline:none;transition:all .3s ease}.search-input:focus{border-color:#667eea;background:#ffffff1a}.search-input::placeholder{color:#666}.category-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.category-tab{padding:.7rem 1.5rem;border:2px solid rgba(255,255,255,.2);border-radius:25px;background:transparent;color:#a0a0b0;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:500}.category-tab:hover{border-color:#667eea;color:#fff}.category-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff;font-weight:600}.region-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.region-tab{padding:.6rem 1.2rem;border:1px solid rgba(255,255,255,.2);border-radius:25px;background:transparent;color:#a0a0b0;cursor:pointer;transition:all .3s ease;font-size:.95rem}.region-tab:hover{border-color:#667eea;color:#fff}.region-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff;font-weight:600}.results-info{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.results-count{color:#a0a0b0;font-size:.95rem}.club-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.club-card{background:linear-gradient(145deg,#ffffff14,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:1.5rem;cursor:pointer;transition:all .3s ease}.club-card:hover{transform:translateY(-5px);border-color:#667eea;box-shadow:0 20px 40px #667eea33}.club-category-badge{display:inline-block;padding:.3rem .8rem;border-radius:12px;font-size:.75rem;font-weight:600;margin-bottom:.8rem}.club-card.night .club-category-badge{background:linear-gradient(135deg,#f093fb,#f5576c)}.club-card.club .club-category-badge{background:linear-gradient(135deg,#4facfe,#00f2fe)}.club-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.8rem}.club-name{font-size:1.3rem;font-weight:700;color:#fff}.club-rating{display:flex;gap:2px}.star{color:#3a3a4a;font-size:.9rem}.star.filled{color:gold}.club-location{display:flex;align-items:center;gap:.3rem;color:#a0a0b0;font-size:.9rem;margin-bottom:1rem}.location-icon{font-size:.85rem}.club-genres{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.genre-tag{padding:.3rem .8rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;font-size:.75rem;font-weight:600;color:#fff}.club-description{color:#c0c0d0;font-size:.9rem;line-height:1.5;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.club-info{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.info-item{display:flex;align-items:center;gap:.3rem;color:#a0a0b0;font-size:.85rem}.info-icon{font-size:.9rem}.club-features{display:flex;flex-wrap:wrap;gap:.4rem}.feature-tag{padding:.25rem .6rem;background:#ffffff1a;border-radius:10px;font-size:.7rem;color:#b0b0c0}.club-managers{margin-bottom:1rem}.managers-label{font-size:.75rem;color:#808090;margin-right:.5rem}.managers-list{display:inline-flex;flex-wrap:wrap;gap:.4rem;align-items:center}.manager-tag{padding:.2rem .6rem;background:#667eea4d;border-radius:8px;font-size:.75rem;color:#c0c0ff}.manager-more{font-size:.75rem;color:#808090}.managers-detail{display:flex;flex-direction:column;gap:.8rem}.manager-item{display:flex;align-items:center;gap:.8rem;padding:.8rem;background:#ffffff0d;border-radius:12px;flex-wrap:wrap}.manager-nickname{font-weight:600;color:#fff;min-width:80px}.manager-phone{color:#4facfe;text-decoration:none;font-weight:500}.manager-phone:hover{text-decoration:underline}.manager-note{font-size:.8rem;color:#f5576c}.modal-category{display:inline-block;padding:.3rem .8rem;border-radius:12px;font-size:.8rem;font-weight:600;margin-bottom:.5rem;background:linear-gradient(135deg,#667eea,#764ba2)}.no-results{text-align:center;padding:4rem 2rem;color:#a0a0b0}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal{background:linear-gradient(145deg,#1a1a2e,#0f0f23);border:1px solid rgba(255,255,255,.15);border-radius:24px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:1rem;right:1rem;background:#ffffff1a;border:none;color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:all .3s ease}.modal-close:hover{background:#fff3}.modal-header{padding:2rem 2rem 1rem;border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h2{font-size:1.8rem;font-weight:700;margin-bottom:.5rem;background:linear-gradient(135deg,#667eea,#f093fb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-rating{display:flex;gap:3px}.modal-body{padding:1.5rem 2rem 2rem}.modal-section{margin-bottom:1.5rem}.modal-section h3{font-size:.85rem;font-weight:600;color:#667eea;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px}.modal-section p{color:#d0d0e0;line-height:1.6}.modal-genres,.modal-features{display:flex;flex-wrap:wrap;gap:.5rem}.view-toggle{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem}.toggle-btn{padding:.8rem 2rem;border:2px solid rgba(255,255,255,.2);border-radius:30px;background:transparent;color:#a0a0b0;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:500}.toggle-btn:hover{border-color:#667eea;color:#fff}.toggle-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff}.recommend-section{max-width:800px;margin:0 auto}.recommend-form{background:linear-gradient(145deg,#ffffff14,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:2.5rem}.recommend-title{font-size:1.8rem;font-weight:700;text-align:center;margin-bottom:.5rem;background:linear-gradient(135deg,#667eea,#f093fb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.recommend-subtitle{text-align:center;color:#a0a0b0;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.9rem;font-weight:600;color:#c0c0d0;margin-bottom:.8rem}.photo-upload{width:150px;height:150px;margin:0 auto;border:2px dashed rgba(255,255,255,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;overflow:hidden}.photo-upload:hover{border-color:#667eea;background:#667eea1a}.photo-placeholder{display:flex;flex-direction:column;align-items:center;color:#808090}.photo-icon{font-size:2rem;margin-bottom:.5rem}.uploaded-photo{width:100%;height:100%;object-fit:cover}.gender-select{display:flex;gap:1rem;justify-content:center}.gender-btn{flex:1;max-width:200px;padding:1rem;border:2px solid rgba(255,255,255,.2);border-radius:16px;background:transparent;color:#a0a0b0;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:.5rem}.gender-btn:hover{border-color:#667eea;color:#fff}.gender-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff}.gender-icon{font-size:2rem}.form-input,.form-select{width:100%;padding:1rem 1.5rem;border:2px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff0d;color:#fff;font-size:1rem;outline:none;transition:all .3s ease}.form-input:focus,.form-select:focus{border-color:#667eea;background:#ffffff1a}.form-select{cursor:pointer}.form-select option{background:#1a1a2e;color:#fff}.recommend-btn{width:100%;padding:1rem;margin-top:1rem;border:none;border-radius:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.recommend-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #667eea66}.recommend-btn:disabled{opacity:.5;cursor:not-allowed}.recommend-result{animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.result-title{font-size:1.5rem;font-weight:700;color:#fff}.reset-btn{padding:.6rem 1.2rem;border:1px solid rgba(255,255,255,.3);border-radius:20px;background:transparent;color:#a0a0b0;cursor:pointer;transition:all .3s ease}.reset-btn:hover{border-color:#667eea;color:#fff}.result-profile{text-align:center;margin-bottom:2rem}.result-photo{width:120px;height:120px;border-radius:50%;object-fit:cover;border:3px solid #667eea;box-shadow:0 10px 30px #667eea4d}.recommended-clubs{margin-bottom:2rem}.section-title{font-size:1.2rem;font-weight:600;color:#fff;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.club-card.recommended{position:relative}.rank-badge{position:absolute;top:-10px;left:-10px;width:40px;height:40px;background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#fff;box-shadow:0 5px 15px #f093fb66}.booking-tips{background:linear-gradient(145deg,#ffffff14,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2rem}.tips-list{list-style:none}.tip-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.tip-item:last-child{border-bottom:none}.tip-number{width:28px;height:28px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;flex-shrink:0}.tip-text{color:#c0c0d0;line-height:1.6}.footer{text-align:center;padding:2rem;border-top:1px solid rgba(255,255,255,.1);color:#606070;font-size:.85rem}@media(max-width:1024px){.club-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.main{padding:1.5rem}}@media(max-width:768px){.header{padding:1.5rem 1rem}.logo{font-size:1.6rem}.logo-icon{font-size:1.5rem}.tagline{font-size:.9rem}.view-toggle{margin-top:1rem}.toggle-btn{padding:.6rem 1.2rem;font-size:.9rem}.main{padding:1rem}.search-input{padding:.8rem 1.2rem;font-size:.9rem}.category-tabs{justify-content:center}.category-tab{padding:.5rem 1rem;font-size:.85rem}.region-tabs{justify-content:center}.region-tab{padding:.5rem .8rem;font-size:.8rem}.club-grid{grid-template-columns:1fr;gap:1rem}.club-card{padding:1.2rem}.club-name{font-size:1.1rem}.club-description{font-size:.85rem}.modal{margin:.5rem;border-radius:16px}.modal-header{padding:1.5rem 1.2rem 1rem}.modal-header h2{font-size:1.4rem}.modal-body{padding:1rem 1.2rem 1.5rem}.recommend-form{padding:1.5rem}.recommend-title{font-size:1.4rem}.photo-upload{width:120px;height:120px}.gender-btn{padding:.8rem}.gender-icon{font-size:1.5rem}.booking-tips{padding:1.2rem}.tip-item{gap:.8rem;padding:.8rem 0}.tip-text{font-size:.9rem}.manager-item{padding:.6rem}.footer{padding:1.5rem 1rem;font-size:.8rem}}@media(max-width:480px){.header{padding:1rem .8rem}.logo{font-size:1.4rem}.tagline{font-size:.8rem}.toggle-btn{padding:.5rem 1rem;font-size:.85rem}.main{padding:.8rem}.category-tab{padding:.4rem .8rem;font-size:.8rem}.region-tab{padding:.4rem .6rem;font-size:.75rem}.club-card{padding:1rem;border-radius:16px}.club-category-badge{font-size:.7rem;padding:.2rem .6rem}.club-name{font-size:1rem}.club-location{font-size:.8rem}.club-description{font-size:.8rem;-webkit-line-clamp:2}.info-item{font-size:.75rem}.feature-tag{font-size:.65rem;padding:.2rem .5rem}.recommend-form{padding:1.2rem}.recommend-title{font-size:1.2rem}.recommend-subtitle,.form-group label{font-size:.85rem}.form-input,.form-select{padding:.8rem 1rem;font-size:.9rem}.recommend-btn{padding:.8rem;font-size:1rem}.result-title{font-size:1.2rem}.section-title{font-size:1rem}.rank-badge{width:32px;height:32px;font-size:.8rem;top:-8px;left:-8px}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff0d}::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}
