*{box-sizing:border-box}:root{--color-bg: #f4f4f5;--color-surface: #ffffff;--color-text: #18181b;--color-text-subtle: #71717a;--color-text-muted: #a1a1aa;--color-accent: #3b82f6;--color-border: #e4e4e7;--color-error: #ef4444;--color-success: #059669;--color-warning: #f59e0b;--radius-card: 14px;--radius-button: 10px;--radius-input: 8px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.5;font-weight:400;color:var(--color-text);background-color:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;line-height:1.2;color:var(--color-text)}a{color:var(--color-text);text-decoration:none}a:hover{text-decoration:none}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}.loading{text-align:center;padding:48px;color:var(--color-text-subtle);font-size:1.1rem}.layout{min-height:100vh;display:flex;flex-direction:column}.navbar{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.nav-container{max-width:1200px;margin:0 auto;padding:12px 24px;display:flex;justify-content:space-between;align-items:center;position:relative}.nav-right{display:flex;align-items:center;gap:12px}.nav-logo{font-size:1.25rem;font-weight:700;color:var(--color-text);text-decoration:none;display:flex;align-items:center;gap:10px}.nav-logo-icon{width:34px;height:34px;border-radius:8px;background:var(--color-text);color:var(--color-surface);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;flex-shrink:0}.nav-logo-text{color:var(--color-text);letter-spacing:-.02em}.hamburger-button{display:none;flex-direction:column;justify-content:space-around;width:28px;height:28px;background:transparent;border:none;cursor:pointer;padding:0;z-index:10}.hamburger-line{width:100%;height:2.5px;background:var(--color-text);border-radius:2px;transition:all .3s ease;transform-origin:center}.hamburger-line.open:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger-line.open:nth-child(2){opacity:0}.hamburger-line.open:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.nav-links{display:flex;align-items:center;gap:6px}.nav-links a{color:var(--color-text);text-decoration:none;font-weight:500;font-size:.9rem;padding:7px 14px;border-radius:var(--radius-button);transition:background-color .2s,color .2s}.nav-links a:hover{background-color:var(--color-bg)}.nav-links a.active{background-color:var(--color-text);color:var(--color-surface)}.logout-button{background:none;color:var(--color-text-subtle);border:1px solid var(--color-border);padding:7px 14px;border-radius:var(--radius-button);cursor:pointer;font-weight:500;font-size:.9rem;transition:background-color .2s,color .2s}.logout-button:hover{background-color:var(--color-bg);color:var(--color-text)}.notification-container{position:relative}.notification-button{position:relative;display:flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;background:none;border:none;color:var(--color-text);border-radius:var(--radius-button);cursor:pointer;transition:background-color .2s}.notification-button:hover{background-color:var(--color-bg)}.notification-icon{width:22px;height:22px;color:var(--color-text)}.notification-badge{position:absolute;top:2px;right:2px;background-color:var(--color-error);color:var(--color-surface);border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;border:2px solid var(--color-surface)}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:380px;max-width:90vw;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:0 8px 30px #00000014;z-index:1000;max-height:480px;display:flex;flex-direction:column;overflow:hidden}.notification-dropdown-header{padding:14px 18px;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.notification-dropdown-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-text)}.notification-dropdown-content{overflow-y:auto;max-height:400px}.notification-empty{padding:40px 20px;text-align:center;color:var(--color-text-muted)}.notification-empty p{margin:0}.notification-dropdown-item{padding:14px 18px;border-bottom:1px solid var(--color-border);transition:background-color .2s}.notification-dropdown-item:hover{background-color:var(--color-bg)}.notification-dropdown-item:last-child{border-bottom:none}.notification-dropdown-message{margin-bottom:8px}.notification-dropdown-message p{margin:0 0 4px;color:var(--color-text);font-size:.9rem;line-height:1.5}.notification-dropdown-time{font-size:.78rem;color:var(--color-text-muted)}.notification-dropdown-actions{display:flex;gap:8px;margin-top:8px}.notification-dropdown-link{padding:6px 14px;background:var(--color-text);color:var(--color-surface);text-decoration:none;border-radius:var(--radius-input);font-size:.82rem;font-weight:500;transition:opacity .2s;border:none;display:inline-block;position:relative;z-index:1}.notification-dropdown-link:hover{opacity:.85;color:var(--color-surface);text-decoration:none}.notification-dropdown-dismiss{padding:6px 14px;background:var(--color-text-subtle);color:var(--color-surface);border:none;border-radius:var(--radius-input);font-size:.82rem;font-weight:500;cursor:pointer;transition:opacity .2s}.notification-dropdown-dismiss:hover{opacity:.85}.main-content{flex:1;max-width:900px;width:100%;margin:0 auto;padding:28px 24px}@media(max-width:768px){.hamburger-button{display:flex}.menu-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background:#0006;z-index:99}.nav-links{position:fixed;top:0;right:-100%;height:100vh;width:75%;max-width:300px;background:var(--color-surface);flex-direction:column;align-items:stretch;justify-content:flex-start;padding:80px 20px 24px;gap:4px;transition:right .3s ease;box-shadow:-4px 0 16px #00000014;z-index:100}.nav-links.open{right:0}.nav-links a{width:100%;padding:12px 16px;text-align:left;border-radius:var(--radius-button);font-size:.95rem}.nav-links .logout-button{width:100%;text-align:left;margin-top:12px}.notification-dropdown{right:-8px;left:auto;width:calc(100vw - 32px);max-width:380px}.main-content{padding:20px 16px}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f4f4f5;padding:20px}.auth-card{background:#fff;border:1px solid #e4e4e7;border-radius:16px;padding:40px;width:100%;max-width:420px}.auth-logo{width:48px;height:48px;background:#18181b;color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 16px;letter-spacing:-.5px}.auth-card h1{text-align:center;color:#18181b;margin-bottom:8px;font-size:1.75rem;font-weight:700;letter-spacing:-.5px}.auth-subtitle{text-align:center;color:#71717a;margin-bottom:32px;font-size:.925rem}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group input{padding:12px 16px;background:#fafafa;border:1px solid #e4e4e7;border-radius:10px;font-size:1rem;color:#18181b;transition:border-color .2s}.form-group input::placeholder{color:#a1a1aa}.form-group input:focus{outline:none;border-color:#18181b;background:#fff}.auth-button{background:#18181b;color:#fff;border:none;padding:14px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;margin-top:4px}.auth-button:hover:not(:disabled){background:#27272a}.auth-button:disabled{opacity:.4;cursor:not-allowed}.error-message{background:#fee2e2;color:#dc2626;padding:12px 16px;border-radius:10px;border:1px solid #fecaca;font-size:.875rem;line-height:1.5}.success-message{background:#d1fae5;color:#059669;padding:12px 16px;border-radius:10px;border:1px solid #a7f3d0;font-size:.875rem;line-height:1.5;margin-bottom:4px}.resend-verification-section{margin-top:24px;padding:20px;background:#fafafa;border:1px solid #e4e4e7;border-radius:14px;text-align:center}.resend-text{margin-bottom:12px;color:#71717a;font-size:.925rem}.resend-button{width:100%;padding:12px;background:#18181b;color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;margin-bottom:12px}.resend-button:hover:not(:disabled){background:#27272a}.resend-button:disabled{opacity:.4;cursor:not-allowed}.go-to-login-button{width:100%;padding:12px;background:transparent;color:#18181b;border:1px solid #e4e4e7;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.go-to-login-button:hover{background:#f4f4f5}.loading-spinner{text-align:center;font-size:3rem;margin:24px 0;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.auth-footer{text-align:center;margin-top:24px;color:#71717a;font-size:.9rem}.auth-footer a{color:#18181b;text-decoration:none;font-weight:600}.auth-footer a:hover{text-decoration:underline}.auth-divider{display:flex;align-items:center;margin:24px 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid #e4e4e7}.auth-divider span{padding:0 16px;color:#a1a1aa;font-size:.75rem;font-weight:600;letter-spacing:.05em}.google-auth-button{width:100%;background:#fff;color:#18181b;border:1px solid #e4e4e7;padding:14px;border-radius:12px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s;display:flex;align-items:center;justify-content:center}.google-auth-button:hover:not(:disabled){background:#fafafa;border-color:#d4d4d8}.google-auth-button:disabled{opacity:.4;cursor:not-allowed}.dashboard{max-width:1000px;margin:0 auto}.dashboard-header{margin-bottom:32px}.dashboard-subtitle{font-size:.95rem;color:#71717a;margin:0 0 4px}.dashboard-header h1{font-size:2rem;font-weight:700;color:#18181b;margin:0}.dashboard-hero{background:#18181b;border-radius:14px;padding:36px 32px;margin-bottom:24px}.hero-label{text-transform:uppercase;font-size:12px;font-weight:700;color:#a1a1aa;letter-spacing:.5px;margin-bottom:12px}.hero-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 8px}.hero-description{font-size:.95rem;color:#a1a1aa;margin:0 0 24px;line-height:1.5}.hero-button{display:inline-block;background:#fff;color:#18181b;font-weight:600;font-size:.95rem;padding:12px 24px;border-radius:12px;text-decoration:none;transition:opacity .15s}.hero-button:hover{opacity:.9}.dashboard-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:48px}.action-card{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:24px;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}.action-card:hover{border-color:#a1a1aa;box-shadow:0 2px 8px #0000000d}.action-card h3{font-size:1.05rem;font-weight:600;color:#18181b;margin:0 0 6px}.action-card p{font-size:.875rem;color:#71717a;margin:0;line-height:1.4}.dashboard-info{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:36px 32px}.dashboard-info h2{text-align:center;color:#18181b;margin:0 0 32px;font-size:1.4rem;font-weight:700}.info-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.step{text-align:center}.step-number{width:44px;height:44px;border-radius:50%;background:#18181b;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.15rem;font-weight:700;margin:0 auto 14px}.step h3{color:#18181b;margin:0 0 6px;font-size:.95rem;font-weight:600}.step p{color:#71717a;font-size:.85rem;margin:0;line-height:1.4}.notifications-card{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:24px;margin-bottom:24px}.notifications-header{margin-bottom:20px}.notifications-header h2{color:#18181b;font-size:1.3rem;font-weight:700;margin:0}.notifications-list{display:flex;flex-direction:column;gap:12px}.notification-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;background:#f4f4f5;border-radius:10px;border-left:3px solid #18181b;transition:background .15s}.notification-item:hover{background:#e4e4e7}.notification-content{flex:1}.notification-message{font-size:.95rem;color:#18181b;margin:0 0 6px;font-weight:500}.notification-time{font-size:.8rem;color:#71717a;margin:0}.notification-actions{display:flex;gap:8px;margin-left:16px}.notification-link-button{padding:8px 16px;background:#18181b;color:#fff;text-decoration:none;border-radius:10px;font-size:.875rem;font-weight:500;transition:opacity .15s}.notification-link-button:hover{opacity:.85;text-decoration:none}.notification-dismiss-button{padding:8px 16px;background:#fff;color:#18181b;border:1px solid #e4e4e7;border-radius:10px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.notification-dismiss-button:hover{background:#f4f4f5}@media(max-width:768px){.dashboard-actions{grid-template-columns:1fr}.info-steps{grid-template-columns:1fr 1fr;gap:20px}.dashboard-hero{padding:28px 24px}.notification-item{flex-direction:column}.notification-actions{margin-left:0;margin-top:12px;width:100%}.notification-link-button,.notification-dismiss-button{flex:1;text-align:center}}@media(max-width:480px){.info-steps{grid-template-columns:1fr}}.profile-page{max-width:1000px;margin:0 auto}.page-header{margin-bottom:32px}.page-header h1{font-size:2rem;font-weight:700;color:#18181b;margin:0}.profile-sections{display:flex;flex-direction:column;gap:24px}.profile-section{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:32px}.profile-section h2{font-size:1.3rem;font-weight:700;color:#18181b;margin:0 0 24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.section-header h2{margin:0}.profile-info{display:flex;flex-direction:column;gap:20px}.info-item{display:flex;flex-direction:column;gap:6px}.info-item label{text-transform:uppercase;font-size:12px;font-weight:700;color:#71717a;letter-spacing:.5px}.info-value{font-size:1rem;color:#18181b;padding:8px 0}.info-value-with-action{display:flex;align-items:center;gap:12px}.info-value-with-action .info-value{flex:1}.inline-form{display:flex;flex-direction:column;gap:12px}.inline-input{padding:10px 14px;background:#fafafa;border:1px solid #e4e4e7;border-radius:10px;font-size:1rem;color:#18181b;transition:border-color .15s}.inline-input:focus{outline:none;border-color:#18181b}.inline-form-actions{display:flex;gap:8px}.password-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-weight:600;color:#18181b;font-size:.875rem}.form-group input{padding:12px 14px;background:#fafafa;border:1px solid #e4e4e7;border-radius:10px;font-size:1rem;color:#18181b;transition:border-color .15s}.form-group input:focus{outline:none;border-color:#18181b}.form-group select,.form-select{padding:12px 14px;background:#fafafa;border:1px solid #e4e4e7;border-radius:10px;font-size:1rem;color:#18181b;transition:border-color .15s;cursor:pointer}.form-group select:focus,.form-select:focus{outline:none;border-color:#18181b}.form-actions{display:flex;gap:12px}.primary-button{background:#18181b;color:#fff;border:none;padding:12px 24px;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .15s}.secondary-button{background:#fff;color:#18181b;border:1px solid #e4e4e7;padding:12px 24px;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s}.secondary-button:hover{background:#f4f4f5}.edit-button{background:#f4f4f5;color:#18181b;border:1px solid #e4e4e7;padding:8px 16px;border-radius:10px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s}.edit-button:hover{background:#e4e4e7}.motorcycles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.motorcycle-card{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:20px;transition:border-color .15s}.motorcycle-card:hover{border-color:#a1a1aa}.motorcycle-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.motorcycle-header h3{margin:0;font-size:1.05rem;font-weight:600;color:#18181b}.motorcycle-actions{display:flex;gap:6px}.icon-button{background:#f4f4f5;border:1px solid #e4e4e7;font-size:.8rem;font-weight:500;color:#18181b;cursor:pointer;padding:6px 12px;border-radius:8px;transition:background .15s}.icon-button:hover{background:#e4e4e7}.icon-button-danger{color:#dc2626}.icon-button-danger:hover{background:#fee2e2;border-color:#fecaca}.motorcycle-details{display:flex;flex-direction:column;gap:6px}.detail-item{display:flex;gap:8px;font-size:.9rem}.detail-label{font-weight:600;color:#71717a}.empty-state{text-align:center;padding:48px 20px;color:#71717a}.empty-state h3{margin:0 0 6px;color:#18181b;font-weight:600}.empty-state p{margin:0;color:#71717a;font-size:.9rem}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:32px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0000001f}.modal-content h3{margin:0 0 24px;color:#18181b;font-size:1.3rem;font-weight:700}.motorcycle-form{display:flex;flex-direction:column;gap:20px}.loading{text-align:center;padding:60px 20px;font-size:1.1rem;color:#71717a}.error-message{background:#fee2e2;color:#dc2626;padding:12px 16px;border-radius:10px;border:1px solid #fecaca;margin-bottom:20px;font-size:.9rem;font-weight:500}.success-message{background:#d1fae5;color:#059669;padding:12px 16px;border-radius:10px;border:1px solid #a7f3d0;margin-bottom:20px;font-size:.9rem;font-weight:500}@media(max-width:768px){.profile-section{padding:24px}.section-header{flex-direction:column;align-items:flex-start;gap:16px}.section-header .primary-button{width:100%}.motorcycles-grid{grid-template-columns:1fr}.info-value-with-action{flex-direction:column;align-items:flex-start}.inline-form-actions{width:100%}.inline-form-actions button{flex:1}}.create-ride-page{max-width:700px;margin:0 auto}.create-ride-page h1{color:#18181b;margin-bottom:6px;font-size:1.5rem;font-weight:700}.page-subtitle{color:#71717a;margin-bottom:28px;font-size:.95rem}.ride-form{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:28px}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:22px}.form-group label{font-weight:600;color:#18181b;font-size:.9rem}.form-group input,.form-group select{padding:12px;background:#fafafa;border:1px solid #e4e4e7;border-radius:10px;font-size:.95rem;color:#18181b;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3b82f6;background:#fff}.location-section{background:#f4f4f5;border:1px solid #e4e4e7;border-radius:14px;padding:22px;margin-bottom:22px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h3{margin:0;color:#18181b;font-size:1rem;font-weight:600}.location-inputs{display:flex;flex-direction:column;gap:16px}.link-button{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:.85rem;font-weight:500;text-decoration:none;padding:0}.link-button:hover{opacity:.75}.form-actions{display:flex;gap:12px;margin-top:28px}.primary-button:disabled{opacity:.5;cursor:not-allowed}.secondary-button{background:#fff;color:#18181b;border:1px solid #e4e4e7;padding:12px 24px;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:border-color .2s}.secondary-button:hover{border-color:#d4d4d8}.warning-message{background:#fffbeb;color:#92400e;padding:12px 16px;border-radius:10px;border:1px solid #fde68a;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.empty-state{text-align:center;padding:64px 20px;background:#f4f4f5;border-radius:14px;border:1px solid #e4e4e7}.empty-icon{width:56px;height:56px;border-radius:50%;background:#e4e4e7;color:#71717a;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:1.5rem}.empty-state h2{color:#18181b;margin-bottom:8px;font-weight:600}.empty-state p{color:#71717a;margin-bottom:24px;font-size:.95rem}.privacy-message{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:.8rem;color:#a1a1aa}.privacy-icon{font-size:.85rem}.privacy-text{font-size:.8rem}.autocomplete-container{position:relative}.autocomplete-container input{width:100%}.suggestions-container{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e4e4e7;border-top:none;border-radius:0 0 10px 10px;max-height:200px;overflow-y:auto;z-index:10;box-shadow:0 4px 12px #00000014}.suggestion-item{display:flex;align-items:center;gap:10px;padding:11px 14px;width:100%;background:#fff;border:none;border-bottom:1px solid #f4f4f5;cursor:pointer;text-align:left;transition:background-color .15s}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background:#f4f4f5}.suggestion-icon{font-size:.95rem;flex-shrink:0}.suggestion-text{flex:1;color:#18181b;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.display-address{margin-top:8px;padding:8px 12px;background:#eff6ff;border:1px solid #dbeafe;border-radius:10px;font-size:.85rem;color:#3b82f6}.group-details-page{max-width:1000px;margin:0 auto}.group-header{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:24px;margin-bottom:16px}.group-header h1{margin:0 0 16px;font-size:1.4rem;font-weight:700;color:#18181b}.group-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.group-header .info-label{font-size:.75rem;font-weight:700;color:#71717a;text-transform:uppercase;letter-spacing:.03em}.group-header .info-value{font-size:.95rem;font-weight:600;color:#18181b}.group-header .info-value.location-link{color:#3b82f6;text-decoration:none;cursor:pointer;transition:opacity .2s}.group-header .info-value.location-link:hover{opacity:.75}.group-content{display:grid;grid-template-columns:1fr 1.5fr;gap:20px}.users-section,.comments-section{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:22px}.users-section h2,.comments-section h2{margin:0 0 18px;color:#18181b;font-size:1.1rem;font-weight:700}.users-list{display:flex;flex-direction:column;gap:10px}.user-card{display:flex;align-items:center;gap:12px;padding:12px;background:#f4f4f5;border-radius:12px}.user-avatar{width:40px;height:40px;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;flex-shrink:0}.user-info{flex:1}.user-name{font-weight:600;color:#18181b;font-size:.95rem}.user-email{font-size:.8rem;color:#71717a}.pin-info-banner{display:flex;align-items:center;gap:8px;background:#fffbeb;border:1px solid #fde68a;padding:8px 12px;border-radius:10px;margin-bottom:14px;font-size:.8rem}.pin-info-icon{font-size:.85rem;flex-shrink:0}.pin-info-text{color:#92400e;line-height:1.3;flex:1}.pin-info-text strong{color:#78350f;font-weight:600}.pin-info-dismiss{background:none;border:none;color:#92400e;cursor:pointer;font-size:1.1rem;line-height:1;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s;flex-shrink:0}.pin-info-dismiss:hover{background-color:#92400e1a}.pinned-messages-section{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e4e4e7}.pinned-section-title{font-size:.75rem;font-weight:700;color:#71717a;text-transform:uppercase;letter-spacing:.03em;margin:0 0 12px;display:flex;align-items:center;gap:6px}.pinned-messages-list{display:flex;flex-direction:column;gap:8px}.comments-list{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;max-height:500px;overflow-y:auto;padding-right:4px}.comment-card{background:#f4f4f5;border-radius:10px;padding:12px 14px}.comment-card.pinned{background:#fffbeb;border-left:3px solid #f59e0b}.comment-header{margin-bottom:6px;display:flex;justify-content:space-between;align-items:flex-start}.comment-author{display:flex;align-items:center;gap:8px;flex:1}.pin-icon{font-size:.7rem;margin-right:2px;flex-shrink:0}.comment-actions{display:flex;align-items:center;gap:4px}.comment-pin-button{background:none;border:none;font-size:.65rem;cursor:pointer;padding:3px 6px;border-radius:6px;transition:background-color .2s;opacity:.6;flex-shrink:0}.comment-pin-button:hover{background-color:#f59e0b1f;opacity:1}.comment-delete-button{background:none;border:none;font-size:.65rem;cursor:pointer;padding:3px 6px;border-radius:6px;transition:background-color .2s;opacity:.6;flex-shrink:0}.comment-delete-button:hover{background-color:#ef44441a;opacity:1}.comment-avatar{width:22px;height:22px;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.65rem;flex-shrink:0}.comment-name{font-weight:600;color:#18181b;font-size:.85rem}.comment-time{font-size:.7rem;color:#a1a1aa}.comment-message{color:#18181b;line-height:1.4;white-space:pre-wrap;word-wrap:break-word;font-size:.85rem}.comment-form{border-top:1px solid #e4e4e7;padding-top:18px}.comment-form textarea{width:100%;padding:12px;background:#fafafa;border:1px solid #e4e4e7;border-radius:10px;font-size:.95rem;font-family:inherit;resize:vertical;margin-bottom:10px;color:#18181b;transition:border-color .2s}.comment-form textarea:focus{outline:none;border-color:#3b82f6;background:#fff}.comment-form-footer{display:flex;justify-content:space-between;align-items:center}.char-count{font-size:.8rem;color:#a1a1aa}.primary-button{background:#18181b;color:#fff;border:none;padding:10px 20px;border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .2s}.primary-button:disabled{opacity:.4;cursor:not-allowed}.empty-text{color:#a1a1aa;text-align:center;padding:32px;font-size:.9rem}@media(max-width:768px){.group-content{grid-template-columns:1fr}}.ride-availabilities-page{max-width:900px;margin:0 auto}.ride-card,.group-card-item{background:#fff;border:1px solid #e4e4e7;border-radius:16px;padding:20px}.matched-badge{display:inline-flex;align-items:center;gap:5px;background:#d1fae5;color:#059669;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:8px;border:1px solid #a7f3d0}.matched-dot{width:7px;height:7px;border-radius:50%;background:#059669}.card-actions{display:flex;gap:8px;padding-top:16px;border-top:1px solid #f4f4f5;flex-wrap:wrap}.card-action-btn{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:10px;border:1px solid #e4e4e7;background:#fff;font-size:.85rem;font-weight:600;color:#18181b;cursor:pointer;text-decoration:none;transition:background .15s;text-align:center}.card-action-btn:hover{background:#f4f4f5;color:#18181b}.card-action-delete{color:#ef4444;border-color:#fecaca;background:#fef2f2}.card-action-delete:hover{background:#fee2e2}@media(max-width:640px){.page-header{flex-direction:column;align-items:flex-start;gap:16px}.primary-button{width:100%;text-align:center}.card-actions{flex-direction:column}.card-action-btn{flex:none;width:100%}}.ride-availability-details-page{max-width:1000px;margin:0 auto}.back-button{background:none;border:none;color:#18181b;cursor:pointer;font-size:.95rem;font-weight:500;margin-bottom:20px;padding:8px 0;text-decoration:none;display:inline-block}.back-button:hover{color:#3b82f6;text-decoration:none}.ride-header{background:#fff;border:1px solid #e4e4e7;border-radius:14px;padding:24px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.ride-header-content{flex:1}.ride-header h1{margin:0 0 16px;font-size:1.4rem;font-weight:700;color:#18181b}.ride-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.info-item{display:flex;flex-direction:column;gap:2px}.ride-header .info-label{font-size:.75rem;font-weight:700;color:#71717a;text-transform:uppercase;letter-spacing:.03em}.ride-header .info-value{font-size:.95rem;font-weight:600;color:#18181b}.ride-header .info-value.location-link{color:#3b82f6;text-decoration:none;cursor:pointer;transition:opacity .2s}.ride-header .info-value.location-link:hover{opacity:.75}.ride-header-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-end;flex-shrink:0}.group-link-button{background:#eff6ff;color:#3b82f6;border:1px solid #dbeafe;padding:10px 20px;border-radius:12px;text-decoration:none;font-weight:600;font-size:.9rem;transition:background-color .2s;white-space:nowrap}.group-link-button:hover{background:#dbeafe;color:#3b82f6;text-decoration:none}.delete-button{background:#fef2f2;color:#ef4444;border:1px solid #fecaca;padding:10px 20px;border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .2s;white-space:nowrap}.delete-button:hover{background:#fee2e2}.error-container{text-align:center;padding:48px}.error-message{background:#fee2e2;color:#dc2626;padding:12px 16px;border-radius:10px;border:1px solid #fecaca;margin-bottom:20px;font-size:.9rem}.primary-button{background:#18181b;color:#fff;border:none;padding:12px 24px;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:opacity .2s}.primary-button:hover{opacity:.85}@media(max-width:768px){.ride-header{flex-direction:column}.ride-header-actions{flex-direction:row;width:100%;justify-content:flex-end}.ride-info{margin-right:0}}.my-groups-page{max-width:900px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px}.page-header h1{color:#18181b;margin:0;font-size:1.75rem;font-weight:800;letter-spacing:-.02em}.page-header-count{font-size:.8rem;color:#71717a;font-weight:500}.primary-button{background:#18181b;color:#fff;border:none;padding:10px 20px;border-radius:12px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s;text-decoration:none;display:inline-block}.primary-button:hover{background:#27272a;color:#fff}.tab-row{display:flex;gap:8px;margin-bottom:20px}.tab-btn{padding:8px 20px;border-radius:10px;border:1px solid #e4e4e7;background:#fff;font-size:.875rem;font-weight:600;color:#71717a;cursor:pointer;transition:all .15s}.tab-btn:hover{border-color:#d4d4d8}.tab-active{background:#18181b;color:#fff;border-color:#18181b}.tab-active:hover{background:#27272a;border-color:#27272a}.error-message{background:#fee2e2;color:#dc2626;padding:12px 16px;border-radius:10px;border:1px solid #fecaca;margin-bottom:20px;font-size:.875rem}.cards-list{display:flex;flex-direction:column;gap:14px}.group-card-item{display:block;background:#fff;border:1px solid #e4e4e7;border-radius:16px;padding:20px;text-decoration:none;color:inherit;transition:border-color .15s}.group-card-item:hover{border-color:#d4d4d8;color:inherit}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.card-label{font-size:.75rem;font-weight:700;color:#71717a;letter-spacing:.04em}.riders-badge{display:inline-flex;align-items:center;gap:5px;background:#eff6ff;color:#3b82f6;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:8px;border:1px solid #dbeafe}.card-date{font-size:1.4rem;font-weight:800;color:#18181b;letter-spacing:-.02em;margin-bottom:2px}.card-time{font-size:.875rem;color:#71717a;font-weight:500;margin-bottom:16px}.card-details{display:flex;flex-direction:column;gap:12px;padding-top:16px;border-top:1px solid #f4f4f5;margin-bottom:16px}.card-detail-row{display:flex;align-items:center;gap:10px}.detail-icon{width:32px;height:32px;border-radius:8px;background:#f4f4f5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.detail-label{font-size:.85rem;font-weight:500;color:#71717a;width:60px;flex-shrink:0}.detail-value{flex:1;font-size:.85rem;font-weight:600;color:#18181b;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions{padding-top:16px;border-top:1px solid #f4f4f5}.card-action-link{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:10px;border:1px solid #e4e4e7;font-size:.85rem;font-weight:600;color:#18181b;transition:background .15s}.group-card-item:hover .card-action-link{background:#f4f4f5}.empty-state{text-align:center;padding:60px 20px}.empty-icon-circle{width:64px;height:64px;border-radius:50%;background:#e4e4e7;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.empty-state h3{color:#18181b;margin-bottom:6px;font-weight:700;font-size:1.1rem}.empty-state p{color:#71717a;margin-bottom:24px;font-size:.9rem}.loading{text-align:center;padding:48px;color:#71717a;font-size:1rem}@media(max-width:640px){.page-header{flex-direction:column;align-items:flex-start;gap:16px}.primary-button{width:100%;text-align:center}}#root{min-height:100vh}
