:root{--color-primary: #CCFF00;--color-primary-hover: #b3e600;--color-primary-dark: #99cc00;--color-bg: #0a0a0a;--color-surface: #1a1a1a;--color-text: #ffffff;--color-text-muted: #a0a0a0;--color-danger: #ff4444;--color-success: #00cc66;--color-focus: #CCFF00;--color-focus-outline: rgba(204, 255, 0, .5);--font-base: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Oswald", sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 2rem;--spacing-xl: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .7);--focus-width: 3px;--focus-offset: 2px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-base);background-color:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text)}h1{font-size:clamp(1.75rem,4vw,3.5rem)}h2{font-size:clamp(1.5rem,3vw,2.5rem)}h3{font-size:clamp(1.1rem,2.5vw,1.75rem)}a{text-decoration:none;color:inherit;transition:color .2s}a:hover{color:var(--color-primary)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:var(--focus-width) solid var(--color-focus);outline-offset:var(--focus-offset);border-radius:var(--radius-sm)}img{max-width:100%;display:block}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:#000;padding:8px 16px;text-decoration:none;font-weight:700;z-index:10000;border-radius:0 0 4px}.skip-link:focus{top:0}.container{max-width:1280px;margin:0 auto;padding:0 clamp(1rem,3vw,2rem);width:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-display);font-weight:700;text-transform:uppercase;border:none;cursor:pointer;transition:all .2s;font-size:1rem;letter-spacing:.05em;clip-path:polygon(10% 0,100% 0,100% 80%,90% 100%,0 100%,0 20%);min-height:44px;min-width:44px;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:#000}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-2px);color:#fff}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-outline{background-color:transparent;border:2px solid var(--color-text);color:var(--color-text);clip-path:none}.btn-outline:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.input-group{margin-bottom:var(--spacing-md)}.input-label{display:block;margin-bottom:var(--spacing-xs);color:var(--color-text);font-size:.875rem;font-weight:500}.input-field{width:100%;padding:var(--spacing-md);background-color:var(--color-surface);border:2px solid #333;color:var(--color-text);font-family:var(--font-base);font-size:1rem;transition:border-color .2s;border-radius:var(--radius-sm);min-height:44px}.input-field:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-focus-outline)}.input-field::placeholder{color:var(--color-text-muted);opacity:.7}.input-field[aria-invalid=true]{border-color:var(--color-danger)}.error-message{color:var(--color-danger);font-size:.875rem;margin-top:var(--spacing-xs);display:flex;align-items:center;gap:.25rem}.auth-layout{display:flex;min-height:100vh;align-items:center;justify-content:center;padding:1rem;background-image:linear-gradient(#000c,#000c),url(https://images.unsplash.com/photo-1534438327276-14e5300c3a48?ixlib=rb-1.2.1&auto=format&fit=crop&w=1950&q=80);background-size:cover;background-position:center}.auth-card{background:#0a0a0af2;padding:clamp(1.5rem,4vw,var(--spacing-xl));width:100%;max-width:480px;border:1px solid #333;border-radius:var(--radius-md)}.neon-text{color:var(--color-primary)}.live-region{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){.btn-outline,.input-field{border-width:3px}}.nav-desktop-menu{display:flex;align-items:center;flex:1;justify-content:space-between}.nav-mobile-toggle{display:none}@media(max-width:992px){.nav-desktop-menu{display:none!important}.nav-mobile-toggle{display:flex!important;margin-left:auto}}.nav-desktop-menu .btn,.nav-desktop-menu a,.nav-desktop-menu span{white-space:nowrap}.fitbaze-logo{font-family:Arial,sans-serif;font-weight:700;font-size:clamp(20px,3.5vw,40px);letter-spacing:0px;color:#fff;text-transform:none;-webkit-font-smoothing:antialiased;line-height:1;transition:color .3s ease}a:hover .fitbaze-logo,.fitbaze-logo:hover,.fitbaze-logo span{color:#adff2f}@media(max-width:1024px){.btn{font-size:.9rem;padding:.5rem 1.2rem}}@media(max-width:768px){.container{padding:0 1rem}.auth-card{padding:2rem 1.25rem}.btn{min-height:48px;min-width:48px;font-size:.875rem}}@media(max-width:480px){.container{padding:0 .75rem}.auth-card{padding:1.5rem 1rem}.btn{font-size:.85rem;padding:.5rem 1rem}}@keyframes cardEntrance{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shinySweep{0%{transform:translate(-100%) skew(-15deg)}to{transform:translate(200%) skew(-15deg)}}@keyframes pulseGlow{0%{box-shadow:0 0 15px #ffd70066}50%{box-shadow:0 0 30px #ffd700cc}to{box-shadow:0 0 15px #ffd70066}}.member-card-animated{animation:cardEntrance .6s cubic-bezier(.2,.8,.2,1) forwards;transition:transform .3s ease,box-shadow .3s ease;transform-style:preserve-3d;perspective:1000px}.member-card-animated:hover{transform:translateY(-10px) rotateX(5deg) rotateY(-5deg);box-shadow:0 20px 40px #0009}.member-card-premium{animation:pulseGlow 3s infinite}.member-card-animated:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,#fff0,#ffffff4d,#fff0);transform:skew(-15deg);animation:shinySweep 4s infinite 2s;pointer-events:none}.qr-container{transition:transform .3s ease}.member-card-animated:hover .qr-container{transform:scale(1.05) translateZ(20px)}.social-page{padding-top:2rem;padding-bottom:6rem;min-height:100vh}.social-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.social-header-title{font-size:clamp(1.5rem,4vw,2.2rem);font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.social-header-stats{display:flex;gap:.75rem}.social-stat-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:#ffffff0a;border:1px solid #2a2a2a;border-radius:50px;color:var(--color-text);font-family:var(--font-base);font-size:.85rem;cursor:pointer;transition:all .2s ease;min-height:40px}.social-stat-btn:hover{border-color:var(--color-primary);background:#ccff000f;color:var(--color-primary)}.social-stat-btn .stat-count{font-weight:700;color:var(--color-primary)}.feed-container{max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.feed-refresh-bar{display:flex;justify-content:center;margin-bottom:.5rem}.feed-refresh-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem 1rem;background:transparent;border:1px solid #2a2a2a;border-radius:50px;color:var(--color-text-muted);font-size:.8rem;cursor:pointer;transition:all .25s ease;font-family:var(--font-base)}.feed-refresh-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.feed-refresh-btn.refreshing svg{animation:spin .8s linear infinite}.post-card{background:#1a1a1ab3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid #2a2a2a;border-radius:16px;padding:1.25rem;transition:transform .2s ease,border-color .3s ease,box-shadow .3s ease;animation:postSlideIn .4s cubic-bezier(.2,.8,.2,1) both;position:relative}.post-card:hover{border-color:#3a3a3a;box-shadow:0 8px 32px #0000004d}.post-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.post-author-info{flex:1;min-width:0}.post-author-name{font-weight:600;font-size:.95rem;color:var(--color-text);line-height:1.2}.post-time{font-size:.75rem;color:var(--color-text-muted)}.post-content{font-size:.95rem;line-height:1.6;color:#e0e0e0;word-wrap:break-word;white-space:pre-wrap;margin-bottom:.75rem}.post-media-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;border-radius:12px;overflow:hidden}.post-media-img{max-width:100%;max-height:400px;object-fit:cover;flex:1 1 calc(50% - .5rem);border-radius:8px}.post-workout-data{background:#0003;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:.75rem 1rem;margin-bottom:.75rem}.post-sport-tag{display:inline-block;background:#ccff001a;color:var(--color-primary);padding:.2rem .6rem;border-radius:50px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.post-metrics{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.metric-item{display:flex;flex-direction:column}.metric-label{font-size:.65rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.metric-value{font-size:.9rem;font-weight:600;color:#fff}.post-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.04)}.post-visibility-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:50px;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.badge-public{background:#00cc661f;color:#0c6}.badge-followers{background:#6495ed1f;color:#6495ed}.badge-close-friends{background:#ffc1071f;color:#ffc107}.badge-only-me{background:#9c27b01f;color:#ce93d8}.post-menu-btn{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;padding:.3rem;border-radius:50%;transition:all .2s;display:flex;align-items:center}.post-menu-btn:hover{background:#ffffff14;color:var(--color-text)}.post-menu-dropdown{position:absolute;top:3.5rem;right:1rem;background:#1e1e1e;border:1px solid #333;border-radius:10px;overflow:hidden;z-index:50;min-width:180px;box-shadow:0 12px 40px #0009;animation:menuFadeIn .15s ease}.post-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;color:var(--color-text);font-family:var(--font-base);font-size:.85rem;cursor:pointer;transition:background .15s;text-align:left}.post-menu-item:hover{background:#ffffff0f}.post-menu-item.danger{color:var(--color-danger)}.user-avatar{display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;-webkit-user-select:none;user-select:none}.user-avatar-sm{width:32px;height:32px;font-size:.7rem}.user-avatar-md{width:42px;height:42px;font-size:.85rem}.user-avatar-lg{width:56px;height:56px;font-size:1.1rem}.user-avatar-ghost{background:linear-gradient(135deg,#4a4a4a,#2a2a2a)!important;color:#888!important}.avatar-img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.fab-compose{position:fixed;bottom:2rem;right:2rem;width:60px;height:60px;border-radius:50%;background:var(--color-primary);color:#000;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px #ccff0059;transition:all .25s cubic-bezier(.2,.8,.2,1);z-index:100;animation:fabBounceIn .5s cubic-bezier(.2,.8,.2,1) .3s both}.fab-compose:hover{transform:scale(1.1) rotate(90deg);box-shadow:0 8px 32px #ccff0080}.fab-compose:active{transform:scale(.95)}.compose-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease}.compose-panel{background:#141414;border:1px solid #2a2a2a;border-radius:20px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;animation:composePanelIn .3s cubic-bezier(.2,.8,.2,1)}.compose-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #1e1e1e}.compose-header h3{font-size:1.1rem;margin:0}.compose-close-btn{background:#ffffff0f;border:1px solid #2a2a2a;border-radius:50%;color:var(--color-text);width:36px;height:36px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.compose-close-btn:hover{background:#ffffff1a;border-color:#444}.compose-body{padding:1.5rem}.compose-textarea{width:100%;min-height:120px;max-height:300px;background:#ffffff08;border:1px solid #2a2a2a;border-radius:12px;color:var(--color-text);font-family:var(--font-base);font-size:1rem;padding:1rem;resize:vertical;line-height:1.6;transition:border-color .2s}.compose-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #ccff001a}.compose-textarea::placeholder{color:#555}select.compose-textarea option{background-color:var(--bg-surface, #1e1e1e);color:var(--color-text, #ffffff)}.compose-char-count{text-align:right;font-size:.75rem;color:var(--color-text-muted);margin-top:.4rem}.compose-char-count.warning{color:#ff9800}.compose-char-count.danger{color:var(--color-danger)}.compose-section-label{font-size:.8rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin:1.25rem 0 .6rem;font-weight:600}.visibility-selector{display:flex;gap:.5rem;flex-wrap:wrap}.visibility-option{display:flex;align-items:center;gap:.35rem;padding:.45rem .85rem;background:#ffffff08;border:1px solid #2a2a2a;border-radius:50px;color:var(--color-text-muted);font-family:var(--font-base);font-size:.8rem;cursor:pointer;transition:all .2s}.visibility-option:hover{border-color:#444;color:var(--color-text)}.visibility-option.active{border-color:var(--color-primary);background:#ccff0014;color:var(--color-primary)}.ghost-toggle{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#ffffff08;border:1px solid #2a2a2a;border-radius:12px;margin-top:.6rem;cursor:pointer;transition:all .2s}.ghost-toggle:hover{border-color:#444}.ghost-toggle.active{border-color:#9c27b080;background:#9c27b014}.ghost-toggle-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.ghost-toggle-label span:first-child{font-size:1.2rem}.ghost-toggle-desc{font-size:.7rem;color:var(--color-text-muted);margin-top:.15rem}.toggle-switch{position:relative;width:44px;height:24px;background:#333;border-radius:12px;transition:background .25s;flex-shrink:0}.toggle-switch.active{background:#9c27b0}.toggle-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .25s cubic-bezier(.4,0,.2,1)}.toggle-switch.active:after{transform:translate(20px)}.compose-footer{padding:1rem 1.5rem 1.5rem;border-top:1px solid #1e1e1e}.compose-submit-btn{width:100%;padding:.85rem;background:var(--color-primary);color:#000;border:none;border-radius:12px;font-family:var(--font-display);font-weight:700;font-size:1rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px}.compose-submit-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 16px #ccff004d}.compose-submit-btn:disabled{opacity:.5;cursor:not-allowed}.connections-overlay{position:fixed;inset:0;background:#000000a6;z-index:9998;animation:fadeIn .2s ease}.connections-drawer{position:fixed;top:0;right:0;bottom:0;width:min(88vw,380px);height:100dvh;background:#0d0d0d;border-left:1px solid #1e1e1e;z-index:9999;display:flex;flex-direction:column;animation:slideInFromRight .26s cubic-bezier(.4,0,.2,1) forwards;box-shadow:-12px 0 48px #000000f2}.connections-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid #1a1a1a;flex-shrink:0}.connections-header h3{margin:0;font-size:1.1rem}.connections-close-btn{background:#ffffff0f;border:1px solid #2a2a2a;border-radius:6px;color:#fff;cursor:pointer;padding:.4rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.connections-close-btn:hover{background:#ffffff1a}.connections-tabs{display:flex;border-bottom:1px solid #1a1a1a;flex-shrink:0}.connections-tab{flex:1;padding:.85rem;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-muted);font-family:var(--font-display);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s}.connections-tab:hover{color:var(--color-text)}.connections-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.connections-list{flex:1;overflow-y:auto;padding:.5rem}.connection-card{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:10px;transition:background .15s}.connection-card:hover{background:#ffffff08}.connection-info{flex:1;min-width:0}.connection-name{font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:.35rem}.close-friend-badge{font-size:.7rem}.connection-action-btn{padding:.4rem .85rem;border-radius:50px;font-family:var(--font-base);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid;min-height:32px}.follow-btn{background:var(--color-primary);color:#000;border-color:var(--color-primary)}.follow-btn:hover{background:var(--color-primary-hover);box-shadow:0 2px 12px #ccff0040}.unfollow-btn{background:transparent;color:var(--color-text-muted);border-color:#333}.unfollow-btn:hover{border-color:var(--color-danger);color:var(--color-danger)}.connections-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--color-text-muted)}.connections-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.connections-empty p{font-size:.9rem;line-height:1.5}.skeleton-card{background:#1a1a1a80;border:1px solid #1e1e1e;border-radius:16px;padding:1.25rem}.skeleton-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.skeleton-avatar{width:42px;height:42px;border-radius:50%;background:#222;animation:skeletonPulse 1.5s ease-in-out infinite}.skeleton-line{height:12px;border-radius:6px;background:#222;animation:skeletonPulse 1.5s ease-in-out infinite}.skeleton-line-short{width:40%}.skeleton-line-medium{width:65%}.skeleton-line-long{width:90%}.skeleton-content{display:flex;flex-direction:column;gap:.5rem}.empty-feed{text-align:center;padding:4rem 2rem;color:var(--color-text-muted)}.empty-feed-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.4}.empty-feed h3{color:var(--color-text);margin-bottom:.75rem;font-size:1.3rem}.empty-feed p{font-size:.95rem;line-height:1.5;max-width:360px;margin:0 auto}.scroll-sentinel{display:flex;justify-content:center;padding:2rem}.feed-loader{display:flex;align-items:center;gap:.5rem;color:var(--color-text-muted);font-size:.85rem}.feed-end{text-align:center;padding:1.5rem;color:#444;font-size:.8rem;font-style:italic}@keyframes postSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes composePanelIn{0%{opacity:0;transform:scale(.92) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes fabBounceIn{0%{opacity:0;transform:scale(0) rotate(-180deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes skeletonPulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}@media(max-width:768px){.social-page{padding-top:1.25rem}.social-header{flex-direction:column;align-items:flex-start;gap:.75rem}.post-card{border-radius:12px;padding:1rem}.fab-compose{bottom:1.5rem;right:1.5rem;width:54px;height:54px}.compose-panel{border-radius:16px 16px 0 0;max-width:100%;align-self:flex-end}.compose-overlay{align-items:flex-end;padding:0}}@media(max-width:480px){.visibility-selector{gap:.35rem}.visibility-option{font-size:.72rem;padding:.35rem .65rem}.social-stat-btn{font-size:.78rem;padding:.4rem .75rem}}@media(prefers-reduced-motion:reduce){.post-card,.compose-panel,.fab-compose,.connections-drawer{animation:none!important}}.post-actions-bar{display:flex;align-items:center;gap:.5rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.04);margin-top:.5rem}.action-btn{display:flex;align-items:center;gap:.4rem;background:transparent;border:none;color:var(--color-text);font-family:var(--font-base);font-size:.95rem;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s;position:relative}.action-btn:hover{background:#ffffff0d}.action-btn.reacted{color:var(--color-primary);font-weight:600}.action-btn.reacted svg{fill:var(--color-primary)}.reaction-picker{position:absolute;bottom:calc(100% + 5px);left:0;display:flex;gap:.2rem;background:#1a1a1a;border:1px solid #333;padding:.5rem;border-radius:30px;box-shadow:0 4px 12px #00000080;animation:fadeIn .15s ease;z-index:10}.reaction-emoji{background:transparent;border:none;font-size:1.5rem;cursor:pointer;padding:.2rem;border-radius:50%;transition:transform .2s}.reaction-emoji:hover{transform:scale(1.3);background:#ffffff1a}.comments-modal-overlay{position:fixed;inset:0;background:#000c;z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}.comments-modal{background:#141414;width:100%;max-width:500px;height:80vh;max-height:700px;border-radius:16px;border:1px solid #2a2a2a;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 10px 40px #00000080}.comments-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid #2a2a2a}.comments-header h3{margin:0;font-size:1.1rem}.comments-close-btn{background:transparent;border:none;color:var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.3rem;border-radius:50%;transition:background .2s}.comments-close-btn:hover{background:#ffffff1a}.comments-list{flex:1;overflow-y:auto;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.comments-divider{border:none;border-top:1px solid #2a2a2a;margin:0}.comment-item{display:flex;gap:.75rem}.author-caption{margin-bottom:.5rem}.comment-content{flex:1;background:transparent}.comment-content strong{display:block;font-size:.85rem;margin-bottom:.2rem}.comment-content p{margin:0;font-size:.95rem;line-height:1.4;word-break:break-word}.comment-time{font-size:.7rem;color:var(--color-text-muted);margin-top:.3rem;display:block}.comments-loading,.no-comments{display:flex;justify-content:center;align-items:center;padding:2rem;color:var(--color-text-muted)}.comments-input-area{padding:1rem 1.5rem;border-top:1px solid #2a2a2a;background:#1a1a1a}.comments-form{display:flex;align-items:center;gap:.5rem}.comments-form input{flex:1;background:#ffffff0d;border:1px solid #333;padding:.75rem 1rem;border-radius:50px;color:var(--color-text);font-size:.95rem;outline:none;transition:border-color .2s}.comments-form input:focus{border-color:var(--color-primary)}.comment-submit-btn{background:transparent;border:none;color:var(--color-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:.5rem;transition:opacity .2s}.comment-submit-btn:disabled{opacity:.3;cursor:not-allowed}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.dashboard-card{background:#111;border-radius:16px;padding:3rem 2rem;box-shadow:0 4px 20px #0003;border:1px solid #333;margin-bottom:2rem}.dashboard-form-grid{display:grid;gap:2rem}.dashboard-input-group{display:flex;flex-direction:column;gap:.8rem;position:relative}.dashboard-label{display:block;margin-bottom:.25rem;color:#fff;font-size:.875rem;font-weight:500}.dashboard-input{width:100%;padding:1rem;background-color:#1a1a1a;border:2px solid #333;color:#fff;font-size:1rem;transition:border-color .2s;border-radius:4px;min-height:44px;box-sizing:border-box}.dashboard-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #ccff0080;background:#1a1a1a}.dashboard-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1em}.hours-slider-container{background:#1a1a1a;padding:2rem;border-radius:12px;border:1px solid #333}.hours-slider-row{display:flex;align-items:center;gap:2rem}.time-input-group{flex:1;display:flex;flex-direction:column;gap:.8rem}.range-slider{width:100%;accent-color:var(--color-primary);height:6px;background:#333;border-radius:3px;appearance:none;cursor:pointer}.range-slider::-webkit-slider-thumb{appearance:none;width:20px;height:20px;background:var(--color-primary);border-radius:50%;cursor:pointer;transition:transform .1s;border:2px solid #111}.range-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;margin-top:1.5rem}.photo-card{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:16/9;border:1px solid #333;background:#1a1a1a}.delete-photo-btn{position:absolute;top:8px;right:8px;background:#0009;color:#fff;border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s}.delete-photo-btn:hover{background:#ef4444}.wizard-progress-container{margin-bottom:2rem;position:relative;padding:0 1rem}.wizard-progress-bar{height:4px;background:#ffffff1a;border-radius:2px;position:relative;z-index:1;margin:0 1rem}.wizard-progress-fill{height:100%;background:var(--color-primary);border-radius:2px;transition:width .3s ease}.wizard-steps{display:flex;justify-content:space-between;margin-top:-10px;position:relative;z-index:2}.wizard-step{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#888;font-size:.8rem;font-weight:500;transition:color .3s;cursor:default}.wizard-step.active,.wizard-step.completed{color:#fff}.wizard-step-dot{width:16px;height:16px;border-radius:50%;background:#1a1a1a;border:2px solid #333;transition:all .3s;display:flex;align-items:center;justify-content:center}.wizard-step.active .wizard-step-dot{border-color:var(--color-primary);background:var(--color-primary);box-shadow:0 0 0 4px #cf03}.wizard-step.completed .wizard-step-dot{background:var(--color-primary);border-color:var(--color-primary)}.wizard-actions{display:flex;justify-content:space-between;margin-top:2rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.staff-dashboard{max-width:600px;margin:0 auto;padding:20px;color:#fff}.staff-header{text-align:center;margin-bottom:30px}.gym-selector{margin-bottom:20px;padding:10px;width:100%;background:#333;color:#fff;border:1px solid #555;border-radius:8px}.scan-tabs{display:flex;justify-content:center;margin-bottom:20px;background:#222;border-radius:12px;padding:5px}.scan-tab{flex:1;padding:10px;background:transparent;color:#aaa;border:none;cursor:pointer;transition:all .3s ease;border-radius:8px}.scan-tab.active{background:#e11d48;color:#fff;font-weight:700}.scan-area{background:#1a1a1a;padding:20px;border-radius:16px;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #333}.input-group{width:100%;margin-bottom:15px}.staff-input{width:100%;padding:12px;background:#333;border:1px solid #444;color:#fff;border-radius:8px;font-size:16px}.action-btn{width:100%;padding:12px;background:#e11d48;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:background .3s}.action-btn:hover{background:#be123c}.scan-result{margin-top:20px;padding:20px;border-radius:12px;text-align:center;width:100%}.scan-result.success{background:#10b98133;border:1px solid #10b981;color:#10b981}.scan-result.error{background:#ef444433;border:1px solid #ef4444;color:#ef4444}.scanner-container{width:100%;overflow:hidden;border-radius:12px}
