.header{background:linear-gradient(135deg,#1e3a5f,#2d5a87);padding:1rem 2rem;position:fixed;top:0;left:0;right:0;z-index:100;box-shadow:0 2px 10px #0000001a}.header-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:2rem}.logo{display:flex;align-items:center;gap:.5rem;cursor:pointer;text-decoration:none}.logo-icon{width:2rem;height:2rem}.logo-text{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:-.5px}.search-container{flex:1;max-width:600px;display:flex;position:relative}.search-input{width:100%;padding:.75rem 5.5rem .75rem 1rem;border:none;border-radius:8px;font-size:1rem;outline:none;background:#fff}.search-input:focus{box-shadow:0 0 0 3px #ffffff4d}.search-buttons{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.35rem}.search-button{background:#f97316;border:none;padding:.5rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.search-button:hover{background:#ea580c}.search-button svg{width:20px;height:20px;color:#fff}.ai-search-button{position:relative;background:transparent;border:1.5px solid #9ca3af;padding:.4rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.ai-search-button:hover{border-color:#6366f1;background:#6366f11a}.ai-search-button svg{width:18px;height:18px;color:#6b7280;transition:color .2s}.ai-search-button:hover svg{color:#6366f1}.ai-badge{position:absolute;top:-6px;right:-6px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.55rem;font-weight:700;padding:1px 3px;border-radius:3px;line-height:1}.header-actions{display:flex;align-items:center;gap:1rem;margin-left:auto}.create-ad-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#f97316;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.create-ad-button:hover{background:#ea580c}.create-ad-icon{font-size:1.2rem}.icon-button{width:42px;height:42px;border-radius:50%;background:#ffffff1a;border:2px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.icon-button:hover{background:#fff3;border-color:#ffffff80}.icon-button svg{width:20px;height:20px}.icon-button.user-logged-in{background:#f97316;border-color:#f97316}.icon-button.user-logged-in:hover{background:#ea580c;border-color:#ea580c}.messages-button{position:relative}.unread-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;border-radius:9px;display:flex;align-items:center;justify-content:center;border:2px solid #1e3a5f;line-height:1}.settings-menu-container{position:relative}.settings-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:200px;overflow:hidden;z-index:200}.dropdown-section{padding:1rem}.dropdown-label{display:block;font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.language-options{display:flex;flex-direction:column;gap:.5rem}.language-option{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s;font-size:.9rem;color:#374151}.language-option:hover{background:#f3f4f6;border-color:#d1d5db}.language-option.active{background:#dbeafe;border-color:#3b82f6;color:#1e40af}.language-option .flag{font-size:1.1rem}.user-menu-container{position:relative}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:180px;overflow:hidden;z-index:200}.dropdown-user-info{padding:.75rem 1rem;background:#f9fafb}.dropdown-user-name{font-weight:600;color:#1f2937;font-size:.95rem}.dropdown-item{display:block;width:100%;padding:.75rem 1rem;text-align:left;color:#374151;text-decoration:none;background:none;border:none;font-size:.9rem;cursor:pointer;transition:background .2s}.dropdown-item:hover{background:#f3f4f6}.dropdown-item.logout{color:#dc2626}.dropdown-item.admin-item{background:linear-gradient(135deg,#f5f3ff,#ede9fe);padding:.5rem 1rem}.dropdown-item.admin-item:hover{background:linear-gradient(135deg,#ede9fe,#ddd6fe)}.admin-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .75rem;background:linear-gradient(135deg,#7c3aed,#8b5cf6);color:#fff;font-size:.8rem;font-weight:600;border-radius:4px}.user-dropdown hr{margin:0;border:none;border-top:1px solid #e5e7eb}@media(max-width:768px){.header{padding:.75rem 1rem}.header-content{gap:.75rem}.header-actions{gap:.5rem}.create-ad-button{padding:0;width:42px;height:42px;border-radius:50%;justify-content:center}.create-ad-text{display:none}.create-ad-icon{font-size:1.4rem;margin:0}.logo-text{font-size:1.2rem}.logo-icon{width:1.5rem;height:1.5rem}.icon-button{width:38px;height:38px}}.admin-header{background:linear-gradient(135deg,#4c1d95,#6d28d9);padding:1rem 2rem;position:fixed;top:0;left:0;right:0;z-index:100;box-shadow:0 2px 10px #00000026}.admin-header-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.admin-header-left{display:flex;align-items:center}.admin-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none}.admin-logo-icon{width:2rem;height:2rem}.admin-logo-text{font-size:1.5rem;font-weight:700;color:#fff;letter-spacing:-.5px}.admin-label{margin-left:.75rem;padding:.3rem .6rem;background:#fff3;color:#fff;font-size:.75rem;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.admin-header-actions{display:flex;align-items:center;gap:1.5rem}.back-to-site-link{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:6px;color:#fff;text-decoration:none;font-size:.9rem;font-weight:500;transition:all .2s}.back-to-site-link:hover{background:#fff3;border-color:#ffffff80}.back-to-site-link svg{width:18px;height:18px}.admin-user-menu-container{position:relative}.admin-user-button{width:42px;height:42px;border-radius:50%;background:#fff3;border:2px solid rgba(255,255,255,.4);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.admin-user-button:hover{background:#ffffff4d;border-color:#fff9}.admin-user-button svg{width:20px;height:20px}.admin-user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:180px;overflow:hidden;z-index:200}.admin-dropdown-user-info{padding:.75rem 1rem;background:#f5f3ff}.admin-dropdown-user-name{font-weight:600;color:#1f2937;font-size:.95rem}.admin-dropdown-item{display:block;width:100%;padding:.75rem 1rem;text-align:left;color:#374151;text-decoration:none;background:none;border:none;font-size:.9rem;cursor:pointer;transition:background .2s}.admin-dropdown-item:hover{background:#f3f4f6}.admin-dropdown-item.logout{color:#dc2626}.admin-user-dropdown hr{margin:0;border:none;border-top:1px solid #e5e7eb}@media(max-width:768px){.admin-header{padding:.75rem 1rem}.admin-logo-text{font-size:1.25rem}.back-to-site-link{width:42px;height:42px;padding:0;border-radius:50%;justify-content:center}.back-to-site-link span{display:none}}.admin-landing-page{min-height:calc(100vh - 70px);padding:2rem;background:linear-gradient(135deg,#f5f3ff,#ede9fe,#f5f3ff)}.admin-landing-content{max-width:900px;margin:0 auto}.admin-landing-header{text-align:center;margin-bottom:3rem}.admin-landing-header h1{font-size:2rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.admin-landing-header p{font-size:1.1rem;color:#6b7280;margin:0}.admin-task-grid{display:flex;flex-direction:column;gap:1rem}.admin-task-card{display:flex;align-items:center;gap:1.5rem;padding:1.5rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;border:1px solid #e5e7eb;text-decoration:none;transition:all .2s ease}.admin-task-card:hover{box-shadow:0 8px 24px #0000001a;border-color:var(--card-color);transform:translateY(-2px)}.admin-task-icon{width:60px;height:60px;border-radius:12px;background:linear-gradient(135deg,var(--card-color),color-mix(in srgb,var(--card-color) 80%,#000));display:flex;align-items:center;justify-content:center;flex-shrink:0}.admin-task-icon svg{width:28px;height:28px;color:#fff}.admin-task-info{flex:1}.admin-task-info h3{margin:0 0 .25rem;font-size:1.15rem;font-weight:600;color:#1f2937}.admin-task-info p{margin:0;font-size:.9rem;color:#6b7280}.admin-task-arrow{flex-shrink:0}.admin-task-arrow svg{width:24px;height:24px;color:#9ca3af;transition:all .2s}.admin-task-card:hover .admin-task-arrow svg{color:var(--card-color);transform:translate(4px)}@media(max-width:768px){.admin-landing-page{padding:1.5rem 1rem}.admin-task-card{padding:1rem 1.25rem;gap:1rem}.admin-task-icon{width:50px;height:50px}.admin-task-icon svg{width:24px;height:24px}.admin-task-info h3{font-size:1rem}.admin-task-info p{font-size:.85rem}}.admin-users-page{min-height:calc(100vh - 70px);padding:2rem;background:linear-gradient(135deg,#f5f3ff,#ede9fe,#f5f3ff)}.admin-users-content{max-width:1200px;margin:0 auto}.admin-users-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.admin-users-back-link{display:inline-flex;align-items:center;gap:.5rem;color:#6b7280;text-decoration:none;font-size:.9rem;transition:color .2s}.admin-users-back-link:hover{color:#1f2937}.admin-users-back-link svg{width:16px;height:16px}.admin-users-title{margin:0 0 1.5rem;font-size:1.75rem;font-weight:700;color:#1f2937}.admin-users-search{display:flex;gap:.5rem;margin-bottom:1rem}.admin-users-search-input{flex:1;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.9rem;outline:none;transition:border-color .2s}.admin-users-search-input:focus{border-color:#7c3aed}.admin-users-search-btn{padding:.75rem 1rem;background:#7c3aed;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.admin-users-search-btn:hover{background:#6d28d9}.admin-users-search-btn svg{width:18px;height:18px}.admin-users-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;min-height:400px}.admin-users-loading,.admin-users-error,.admin-users-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:#6b7280}.admin-users-list-container{display:grid;grid-template-columns:1fr;gap:0}.admin-users-list-container.with-detail{grid-template-columns:1fr 400px}.admin-users-list{max-height:calc(100vh - 360px);overflow-y:auto}.admin-user-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .15s}.admin-user-item:hover{background:#f9fafb}.admin-user-item.selected{background:#faf5ff;border-left:3px solid #7c3aed;padding-left:calc(1.25rem - 3px)}.admin-user-item:last-child{border-bottom:none}.admin-user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#a78bfa);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;flex-shrink:0}.admin-user-info{flex:1;min-width:0}.admin-user-info h3{font-size:.9rem;color:#1f2937;margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-user-meta{display:flex;align-items:center;gap:.75rem;font-size:.8rem;color:#6b7280}.admin-user-email{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-user-badges{display:flex;gap:.35rem}.admin-user-badge{padding:.1rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600}.badge-admin{background:#ede9fe;color:#7c3aed}.badge-blocked{background:#fef3c7;color:#b45309}.badge-disabled{background:#fee2e2;color:#dc2626}.admin-user-blocked-value{color:#b45309;font-weight:600}.admin-user-detail{border-left:1px solid #e5e7eb;padding:1.5rem;max-height:calc(100vh - 360px);overflow-y:auto}.admin-user-detail-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.admin-user-detail-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#a78bfa);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.4rem;flex-shrink:0}.admin-user-detail-header h2{font-size:1.25rem;color:#1f2937;margin:0 0 .15rem}.admin-user-detail-email{color:#6b7280;font-size:.85rem;margin:0}.admin-user-detail-info{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.admin-user-detail-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f3f4f6}.admin-user-detail-label{font-size:.85rem;color:#6b7280;font-weight:500}.admin-user-detail-value{font-size:.85rem;color:#1f2937;text-align:right}.admin-user-id{font-family:monospace;font-size:.75rem}.admin-user-success-message{background:#dcfce7;border:1px solid #86efac;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.85rem;color:#166534;font-weight:500}.btn-success{background:#16a34a;color:#fff;border:none;padding:.625rem 1rem;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-success:hover:not(:disabled){background:#15803d}.btn-success:disabled{opacity:.6;cursor:not-allowed}.admin-user-detail-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-user-detail-actions button{flex:1;min-width:100px}@media(max-width:900px){.admin-users-page{padding:1rem}.admin-users-list-container.with-detail{grid-template-columns:1fr}.admin-user-detail{border-left:none;border-top:1px solid #e5e7eb}}.commercial-ads{display:flex;flex-direction:column;gap:1rem}.commercial-title{font-size:.85rem;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.commercial-list{display:flex;flex-direction:column;gap:.75rem}.commercial-loading{height:120px}.commercial-card{display:flex;flex-direction:column;align-items:center;border-radius:12px;text-decoration:none;color:#fff;transition:all .2s;overflow:hidden;position:relative}.commercial-card:hover{transform:scale(1.02);box-shadow:0 4px 12px #0003}.commercial-card-text{padding:1.25rem 1rem;background:#1e3a5f}.commercial-card-image{min-height:100px;background:#f3f4f6}.commercial-card-image.clickable{cursor:pointer}.commercial-card-img{width:100%;height:auto;display:block;object-fit:cover}.commercial-card-placeholder{width:100%;height:100px;display:flex;align-items:center;justify-content:center;background:#e5e7eb;color:#6b7280;font-size:.85rem;text-align:center;padding:.5rem}.commercial-overlay-text{position:absolute;left:0;right:0;padding:.5rem .75rem;color:#fff;font-size:.8rem;font-weight:500;line-height:1.3;pointer-events:none}.commercial-overlay-text--below{bottom:0;background:linear-gradient(transparent,#000000b3)}.commercial-overlay-text--above{top:0;background:linear-gradient(rgba(0,0,0,.7),transparent)}.commercial-grayscale{filter:grayscale(100%)}.commercial-dots{position:absolute;bottom:6px;left:50%;transform:translate(-50%);display:flex;gap:4px;pointer-events:none}.commercial-dot{width:6px;height:6px;border-radius:50%;background:#ffffff80;transition:background .3s}.commercial-dot.active{background:#fff}.commercial-dots--top{bottom:auto;top:6px}.commercial-company{font-size:1rem;font-weight:700;margin-bottom:.25rem}.commercial-tagline{font-size:.8rem;text-align:center;opacity:.9;line-height:1.3}.commercial-info{margin-top:.5rem;padding:1rem;background:#f9fafb;border-radius:8px;text-align:center}.commercial-info p{font-size:.85rem;color:#6b7280;margin-bottom:.5rem}.commercial-link{font-size:.85rem;color:#1e3a5f;text-decoration:none;font-weight:600}.commercial-link:hover{text-decoration:underline}@media(max-width:1200px){.commercial-ads{display:none}}.ad-image-placeholder,.ad-image-loading{display:flex;align-items:center;justify-content:center;background:#f3f4f6;color:#9ca3af;width:100%;height:100%;min-height:120px}.ad-image-placeholder span{font-size:2rem}.ad-image-loading .loading-spinner{width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:#1e3a5f;border-radius:50%;animation:spin 1s linear infinite}.ad-detail-page{min-height:100vh;background:#f3f4f6;padding:2rem 1rem}.ad-detail-loading,.ad-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;padding:2rem;text-align:center}.ad-detail-loading .loading-spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#1e3a5f;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.ad-detail-error h2{font-size:1.5rem;color:#1f2937;margin-bottom:1rem}.ad-detail-error button{padding:.75rem 1.5rem;background:#1e3a5f;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem}.ad-detail-error button:hover{background:#2d5a87}.ad-detail-container{max-width:1400px;margin:0 auto}.ad-detail-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#1e3a5f;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.ad-detail-back-button:hover{background:#1e3a5f;color:#fff;border-color:#1e3a5f}.ad-detail-back-button svg{width:18px;height:18px}.ad-detail-content{display:grid;grid-template-columns:1fr 350px 220px;gap:1.5rem}.ad-detail-commercial{position:sticky;top:90px;height:fit-content}.ad-detail-main{display:flex;flex-direction:column;gap:1.5rem}.ad-image-gallery{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.ad-main-image{position:relative;aspect-ratio:16 / 10;background:#f3f4f6;display:flex;align-items:center;justify-content:center}.ad-main-image img{width:100%;height:100%;object-fit:cover}.no-image{text-align:center;color:#9ca3af}.no-image span{font-size:4rem;display:block;margin-bottom:.5rem}.image-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background:#ffffffe6;border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;color:#1f2937}.image-nav:hover{background:#fff;box-shadow:0 2px 8px #00000026}.image-nav.prev{left:1rem}.image-nav.next{right:1rem}.ad-thumbnails{display:flex;gap:.5rem;padding:1rem;overflow-x:auto}.thumbnail{width:80px;height:60px;border:2px solid transparent;border-radius:6px;overflow:hidden;cursor:pointer;padding:0;background:none;transition:border-color .2s;flex-shrink:0}.thumbnail.active{border-color:#1e3a5f}.thumbnail img{width:100%;height:100%;object-fit:cover}.ad-detail-info{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000d}.ad-detail-header{margin-bottom:1rem}.ad-detail-header h1{font-size:1.75rem;color:#1f2937;margin-bottom:.75rem}.ad-meta{display:flex;gap:.5rem;flex-wrap:wrap}.listing-type-badge{display:inline-block;padding:.35rem .75rem;background:#7c3aed;color:#fff;border-radius:20px;font-size:.8rem;font-weight:600}.condition-badge{padding:.35rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.company-badge{padding:.35rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;background:#f3e8ff;color:#7c3aed}.ad-price-display{padding:1rem 0;border-bottom:1px solid #e5e7eb;margin-bottom:1rem}.price-amount{font-size:2rem;font-weight:700;color:#1e3a5f}.price-type{font-size:1rem;color:#6b7280;margin-left:.5rem}.ad-location-date{display:flex;gap:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem}.ad-location,.ad-date{display:flex;align-items:center;gap:.5rem;color:#6b7280;font-size:.95rem}.ad-location svg,.ad-date svg{width:18px;height:18px}.ad-description-section,.ad-details-section{margin-bottom:1.5rem}.ad-description-section h2,.ad-details-section h2{font-size:1.1rem;color:#1f2937;margin-bottom:.75rem}.ad-description-text{color:#4b5563;line-height:1.7;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word}.ad-details-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item dt{font-size:.85rem;color:#6b7280}.detail-item dd{font-size:.95rem;color:#1f2937;font-weight:500;margin:0}.ad-detail-sidebar{display:flex;flex-direction:column;gap:1rem}.seller-card,.message-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.seller-card h3,.message-card h3{font-size:1rem;color:#1f2937;margin-bottom:1rem}.seller-info{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.seller-avatar{width:50px;height:50px;background:#f3f4f6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.seller-details{display:flex;flex-direction:column}.seller-name{font-weight:600;color:#1f2937}.seller-type{font-size:.85rem;color:#6b7280}.show-contact-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem;background:#1e3a5f;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.show-contact-btn:hover{background:#2d5a87}.show-contact-btn svg{width:18px;height:18px}.contact-info-revealed{background:#f0fdf4;border-radius:8px;padding:1rem}.contact-phone,.contact-email{display:flex;align-items:center;gap:.5rem;color:#166534;font-weight:500;margin-bottom:.5rem}.contact-phone:last-child,.contact-email:last-child{margin-bottom:0}.contact-phone svg,.contact-email svg{width:16px;height:16px}.message-description{color:#6b7280;font-size:.9rem;margin-bottom:1rem;line-height:1.5}.message-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem}.message-btn svg{width:18px;height:18px}.login-hint{color:#6b7280;font-size:.85rem;text-align:center;margin-top:.75rem}.btn-primary{padding:.875rem 1.5rem;background:#f97316;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.safety-tips{background:#fefce8;border:1px solid #fef08a;border-radius:12px;padding:1.25rem}.safety-tips h4{font-size:.9rem;color:#854d0e;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.safety-tips h4:before{content:"⚠️"}.safety-tips ul{margin:0;padding-left:1.25rem}.safety-tips li{font-size:.85rem;color:#713f12;line-height:1.5;margin-bottom:.35rem}.safety-tips li:last-child{margin-bottom:0}@media(max-width:1200px){.ad-detail-content{grid-template-columns:1fr 350px}.ad-detail-commercial{display:none}}@media(max-width:900px){.ad-detail-content{grid-template-columns:1fr}.ad-detail-header h1{font-size:1.5rem}.price-amount{font-size:1.75rem}}@media(max-width:640px){.ad-detail-page{padding:1rem .5rem}.ad-detail-info{padding:1.25rem}.ad-location-date{flex-direction:column;gap:.75rem}.ad-details-list{grid-template-columns:1fr}}.admin-ads-page{min-height:calc(100vh - 70px);padding:2rem;background:linear-gradient(135deg,#f5f3ff,#ede9fe,#f5f3ff)}.admin-ads-content{max-width:1200px;margin:0 auto}.admin-ads-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.admin-ads-header h1{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0}.admin-ads-back-link{display:inline-flex;align-items:center;gap:.5rem;color:#6b7280;text-decoration:none;font-size:.9rem;transition:color .2s}.admin-ads-back-link:hover{color:#1f2937}.admin-ads-back-link svg{width:16px;height:16px}.admin-ads-tabs{display:flex;gap:0;background:#fff;border-radius:12px 12px 0 0;border:1px solid #e5e7eb;border-bottom:none;overflow:hidden}.admin-ads-tab{flex:1;padding:.875rem 1rem;background:none;border:none;font-size:.9rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent;white-space:nowrap}.admin-ads-tab:hover{color:#374151;background:#f9fafb}.admin-ads-tab.active{color:#7c3aed;border-bottom-color:#7c3aed;background:#faf5ff}.admin-ads-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#e5e7eb;color:#6b7280;font-size:.75rem;font-weight:600;margin-left:.5rem}.admin-ads-tab.active .admin-ads-tab-badge{background:#ede9fe;color:#7c3aed}.admin-ads-panel{background:#fff;border:1px solid #e5e7eb;border-radius:0 0 12px 12px;min-height:400px}.admin-ads-loading,.admin-ads-error,.admin-ads-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:#6b7280}.admin-ads-list-container{display:grid;grid-template-columns:1fr;gap:0}.admin-ads-list-container.with-detail{grid-template-columns:1fr 400px}.admin-ads-list{max-height:calc(100vh - 320px);overflow-y:auto}.admin-ad-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .15s}.admin-ad-item:hover{background:#f9fafb}.admin-ad-item.selected{background:#faf5ff;border-left:3px solid #7c3aed;padding-left:calc(1.25rem - 3px)}.admin-ad-item:last-child{border-bottom:none}.admin-ad-thumbnail{width:56px;height:56px;border-radius:6px;overflow:hidden;flex-shrink:0;background:#f3f4f6}.admin-ad-thumbnail img{width:100%;height:100%;object-fit:cover}.admin-ad-thumbnail.placeholder{display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.65rem}.admin-ad-info{flex:1;min-width:0}.admin-ad-info h3{font-size:.9rem;color:#1f2937;margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-ad-meta{display:flex;align-items:center;gap:.75rem;font-size:.8rem;color:#6b7280}.admin-ad-price{font-weight:500;color:#374151}.admin-ad-owner{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-ad-date{white-space:nowrap}.admin-ad-detail{border-left:1px solid #e5e7eb;padding:1.5rem;max-height:calc(100vh - 320px);overflow-y:auto}.admin-ad-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.admin-ad-detail-header h2{font-size:1.25rem;color:#1f2937;margin:0}.admin-ad-detail-image{margin-bottom:1rem}.admin-ad-detail-image .admin-ad-thumbnail{width:100%;height:200px;border-radius:8px}.admin-ad-detail-info{margin-bottom:1.5rem}.admin-ad-detail-price{font-size:1.5rem;font-weight:600;color:#7c3aed;margin:0 0 .75rem}.admin-ad-detail-description{color:#4b5563;line-height:1.6;margin:0 0 1rem;white-space:pre-wrap;font-size:.9rem}.admin-ad-detail-meta{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;color:#6b7280}.admin-ad-detail-meta p{margin:0}.admin-ad-detail-meta strong{color:#374151}.admin-ad-detail-actions{display:flex;gap:.5rem;flex-wrap:wrap}.admin-ad-detail-actions button{flex:1;min-width:100px}.btn-approve{background:#16a34a;color:#fff;border:none;padding:.625rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-approve:hover:not(:disabled){background:#15803d}.btn-approve:disabled{opacity:.6;cursor:not-allowed}.btn-resubmit{background:#7c3aed;color:#fff;border:none;padding:.625rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-resubmit:hover:not(:disabled){background:#6d28d9}.btn-resubmit:disabled{opacity:.6;cursor:not-allowed}.admin-btn-danger{background:#dc2626;color:#fff;border:none;padding:.625rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.admin-btn-danger:hover:not(:disabled){background:#b91c1c}.admin-btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-warn{background:#f59e0b;color:#fff;border:none;padding:.625rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-warn:hover:not(:disabled){background:#d97706}.btn-warn:disabled{opacity:.6;cursor:not-allowed}.admin-confirm-modal{max-width:400px;text-align:center;background:#fff;border-radius:12px;padding:2rem;box-shadow:0 20px 60px #00000026}.admin-confirm-modal h3{color:#1f2937;margin:0 0 .5rem;font-size:1.1rem}.admin-confirm-modal p{color:#6b7280;margin:0 0 .5rem;font-size:.9rem}.admin-confirm-modal .delete-ad-title{font-weight:500;color:#1f2937;margin-bottom:1.5rem}.admin-modal-actions{display:flex;gap:.75rem;justify-content:center}.admin-modal-actions button{min-width:120px}.btn-preview{background:#2563eb;color:#fff;border:none;padding:.625rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-preview:hover{background:#1d4ed8}.admin-preview-overlay{position:fixed;inset:0;z-index:1000;background:#f3f4f6;display:flex;flex-direction:column;overflow:hidden}.admin-preview-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1.5rem;background:#1e3a5f;color:#fff;flex-shrink:0}.admin-preview-label{font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.admin-preview-label:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#f59e0b}.admin-preview-close{display:inline-flex;align-items:center;gap:.4rem;background:#ffffff26;border:none;color:#fff;padding:.4rem .75rem;border-radius:6px;font-size:.85rem;cursor:pointer;transition:background .2s}.admin-preview-close:hover{background:#ffffff40}.admin-preview-close svg{width:16px;height:16px}.admin-preview-content{flex:1;overflow-y:auto}@media(max-width:900px){.admin-ads-page{padding:1rem}.admin-ads-tabs{overflow-x:auto}.admin-ads-tab{padding:.75rem .5rem;font-size:.8rem}.admin-ads-list-container.with-detail{grid-template-columns:1fr}.admin-ad-detail{border-left:none;border-top:1px solid #e5e7eb}}.my-ads-page{max-width:1200px;margin:0 auto;padding:1.5rem;min-height:calc(100vh - 80px)}.my-ads-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.my-ads-header h1{font-size:1.5rem;color:#1f2937;margin:0}.back-button{background:none;border:none;color:#1e3a5f;font-size:1rem;cursor:pointer;padding:.5rem;display:flex;align-items:center;gap:.25rem}.back-button:hover{text-decoration:underline}.my-ads-loading,.my-ads-error,.my-ads-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:#6b7280}.my-ads-empty .btn-primary{margin-top:1rem}.my-ads-content{display:grid;grid-template-columns:350px 1fr;gap:1.5rem}@media(max-width:900px){.my-ads-content{grid-template-columns:1fr}}.ads-list{display:flex;flex-direction:column;gap:.75rem;max-height:calc(100vh - 200px);overflow-y:auto}.ad-list-item{display:flex;gap:1rem;padding:.75rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.ad-list-item:hover{border-color:#1e3a5f;box-shadow:0 2px 4px #0000001a}.ad-list-item.selected{border-color:#1e3a5f;background:#f8fafc}.ad-thumbnail{width:80px;height:80px;border-radius:6px;overflow:hidden;flex-shrink:0;background:#f3f4f6}.ad-thumbnail img{width:100%;height:100%;object-fit:cover}.ad-thumbnail.placeholder{display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.75rem}.ad-list-item-info{flex:1;min-width:0}.ad-list-item-info h3{font-size:.95rem;color:#1f2937;margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ad-price{font-size:.9rem;color:#374151;font-weight:500;margin:0 0 .5rem}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.status-published{background:#dcfce7;color:#166534}.status-waiting{background:#fef3c7;color:#92400e}.status-not_approved{background:#fee2e2;color:#dc2626}.ad-detail-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.ad-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.ad-detail-header h2{font-size:1.25rem;color:#1f2937;margin:0}.ad-detail-image{margin-bottom:1rem}.ad-detail-image .ad-thumbnail{width:100%;height:200px;border-radius:8px}.image-carousel{position:relative;width:100%;height:240px;border-radius:8px;overflow:hidden;background:#f3f4f6}.carousel-image{width:100%;height:100%;object-fit:cover;display:block}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;background:#ffffffd9;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #00000026;transition:background .2s;padding:0}.carousel-arrow:hover{background:#fff}.carousel-arrow svg{width:18px;height:18px;color:#374151}.carousel-arrow-left{left:8px}.carousel-arrow-right{right:8px}.carousel-dots{position:absolute;bottom:8px;left:50%;transform:translate(-50%);display:flex;gap:6px}.carousel-dot{width:8px;height:8px;border-radius:50%;background:#fff9;cursor:pointer;transition:background .2s}.carousel-dot.active{background:#fff;box-shadow:0 0 2px #0000004d}.ad-detail-info{margin-bottom:1.5rem}.ad-detail-price{font-size:1.5rem;font-weight:600;color:#1e3a5f;margin:0 0 1rem}.ad-detail-description{color:#4b5563;line-height:1.6;margin:0 0 1rem;white-space:pre-wrap}.ad-detail-meta{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;color:#6b7280}.ad-detail-meta strong{color:#374151}.ad-detail-actions{display:flex;gap:.75rem}.ad-detail-actions button{flex:1}.ad-detail-warning{margin-top:1rem;padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.9rem}.delete-confirm-modal{max-width:400px;text-align:center}.delete-confirm-modal h3{color:#1f2937;margin-bottom:.5rem}.delete-confirm-modal p{color:#6b7280;margin-bottom:.5rem}.delete-ad-title{font-weight:500;color:#1f2937;margin-bottom:1.5rem}.modal-actions{display:flex;gap:.75rem;justify-content:center}.modal-actions button{min-width:100px}.image-upload-container{display:flex;flex-direction:column;gap:1rem}.image-upload-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;border:2px dashed #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s;color:#6b7280;background:#fafafa}.image-upload-dropzone:hover{border-color:#1e3a5f;background:#f8fafc}.image-upload-dropzone.drag-active{border-color:#1e3a5f;background:#e8f0f8;border-style:solid}.file-input-hidden{display:none}.upload-text{font-size:.95rem;font-weight:500;color:#374151}.upload-hint{font-size:.8rem;color:#9ca3af;margin-top:.25rem}.upload-error{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.875rem}.uploaded-images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem}.uploaded-image-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.thumbnail-container{position:relative;width:100px;height:100px;border-radius:8px;overflow:hidden;background:#f3f4f6;display:flex;align-items:center;justify-content:center}.thumbnail-image{width:100%;height:100%;object-fit:cover}.thumbnail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem}.spinner{width:24px;height:24px;border:3px solid #e5e7eb;border-top-color:#1e3a5f;border-radius:50%;animation:spin .8s linear infinite}.progress-text{font-size:.7rem;color:#6b7280}.thumbnail-error{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#fef2f2}.error-icon{font-size:1.5rem}.remove-button{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;border:none;background:#0009;color:#fff;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.remove-button:hover{background:#000c}.file-name{font-size:.7rem;color:#6b7280;text-align:center;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-error{font-size:.65rem;color:#dc2626;text-align:center;max-width:100px}.upload-info{font-size:.75rem;color:#9ca3af;text-align:center}@media(max-width:500px){.uploaded-images-grid{grid-template-columns:repeat(3,1fr)}.thumbnail-container{width:80px;height:80px}}.category-sidebar{display:flex;flex-direction:column;gap:1rem}.filter-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.filter-toggle-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem 1.25rem;background:#fff;border:none;cursor:pointer;transition:background .2s}.filter-toggle-button:hover{background:#f9fafb}.filter-toggle-left{display:flex;align-items:center;gap:.75rem}.filter-icon{width:20px;height:20px;color:#1e3a5f}.filter-toggle-text{font-size:1rem;font-weight:600;color:#1f2937}.filter-active-badge{width:8px;height:8px;background:#f97316;border-radius:50%;margin-left:.25rem}.filter-chevron-icon{width:20px;height:20px;color:#6b7280;transition:transform .2s}.filter-toggle-button.expanded .filter-chevron-icon{transform:rotate(180deg)}.filter-content{padding:0 1.25rem 1.25rem;border-top:1px solid #e5e7eb}.filter-group{margin-top:1rem}.filter-group:last-child{margin-bottom:0}.filter-label{display:block;font-size:.85rem;font-weight:500;color:#4b5563;margin-bottom:.5rem}.filter-options{display:flex;flex-wrap:wrap;gap:.5rem}.filter-option{padding:.4rem .75rem;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;font-size:.8rem;color:#4b5563;cursor:pointer;transition:all .2s}.filter-option:hover{background:#e5e7eb;border-color:#d1d5db}.filter-option.active{background:#1e3a5f;border-color:#1e3a5f;color:#fff}.filter-price-range{display:flex;align-items:center;gap:.5rem}.filter-price-input{flex:1;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.85rem;color:#374151;background:#fff;min-width:0}.filter-price-input:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 2px #1e3a5f1a}.filter-price-input::placeholder{color:#9ca3af}.filter-price-input::-webkit-outer-spin-button,.filter-price-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.filter-price-input[type=number]{-moz-appearance:textfield}.filter-price-separator{color:#9ca3af;font-size:.9rem;flex-shrink:0}.filter-location-input{width:100%;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.85rem;color:#374151;background:#fff;box-sizing:border-box}.filter-location-input:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 2px #1e3a5f1a}.filter-location-input::placeholder{color:#9ca3af}.category-card{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #00000014}.category-card-title{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .75rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.category-list{display:flex;flex-direction:column;gap:.25rem}.category-group{display:flex;flex-direction:column}.category-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:none;border:none;border-radius:8px;cursor:pointer;transition:all .2s;text-align:left;width:100%}.category-item:hover{background:#f3f4f6}.category-item.active{background:#dbeafe;color:#1e40af}.category-item.all-categories{margin-bottom:.5rem;border-bottom:1px solid #e5e7eb;border-radius:8px 8px 0 0;padding-bottom:.75rem}.category-icon{width:28px;height:28px}.category-name{flex:1;font-size:.95rem;font-weight:500;color:#374151}.category-item.active .category-name{color:#1e40af;font-weight:600}.expand-icon{font-size:.7rem;color:#9ca3af;transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}.subcategory-list{display:flex;flex-direction:column;margin-left:2.5rem;padding:.25rem 0}.subcategory-item{padding:.5rem .75rem;background:none;border:none;border-left:2px solid #e5e7eb;text-align:left;font-size:.9rem;color:#6b7280;cursor:pointer;transition:all .2s}.subcategory-item:hover{color:#1e40af;border-left-color:#1e40af;background:#f8fafc}.subcategory-item.active{color:#1e40af;font-weight:600;border-left-color:#1e40af;background:#eff6ff}@media(max-width:1024px){.filter-card,.category-card{padding:1rem}.filter-toggle-button{padding:.875rem 1rem}.filter-content{padding:0 1rem 1rem}.category-item{padding:.6rem}.subcategory-list{margin-left:2rem}}.ad-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014;cursor:pointer;transition:all .2s}.ad-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.ad-image-container{position:relative;aspect-ratio:16 / 10;overflow:hidden}.ad-image{width:100%;height:100%;object-fit:cover}.ad-condition{position:absolute;top:.75rem;left:.75rem;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600}.condition-new{background:#dcfce7;color:#166534}.condition-like-new{background:#dbeafe;color:#1e40af}.condition-used{background:#fef3c7;color:#92400e}.ad-listing-type-badge{position:absolute;top:.75rem;left:.75rem;padding:.25rem .75rem;background:#7c3aed;color:#fff;border-radius:20px;font-size:.75rem;font-weight:600;z-index:1}.ad-company-badge{position:absolute;top:.75rem;right:.75rem;padding:.25rem .75rem;background:#1e3a5f;color:#fff;border-radius:20px;font-size:.75rem;font-weight:600}.ad-new-badge{position:absolute;bottom:.75rem;left:.75rem;padding:.25rem .75rem;background:#f97316;color:#fff;border-radius:20px;font-size:.75rem;font-weight:600;animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.8}}.ad-content{padding:1rem}.ad-title{font-size:1rem;font-weight:600;color:#1f2937;margin-bottom:.5rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ad-description{font-size:.85rem;color:#6b7280;margin-bottom:.75rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ad-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #f3f4f6}.ad-location{font-size:.8rem;color:#6b7280}.ad-date{font-size:.75rem;color:#9ca3af}.ad-footer{display:flex;justify-content:space-between;align-items:flex-end}.ad-price{display:flex;flex-direction:column;font-size:1.2rem;font-weight:700;color:#1e3a5f}.price-negotiable{font-size:.7rem;font-weight:400;color:#6b7280;margin-top:.1rem}.ad-seller{display:flex;flex-direction:column;align-items:flex-end;font-size:.8rem;color:#6b7280}.seller-rating{font-size:.75rem;color:#f59e0b;margin-top:.1rem}@media(max-width:640px){.ad-card{display:flex;flex-direction:row}.ad-image-container{width:120px;min-width:120px;aspect-ratio:1}.ad-content{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:.75rem}.ad-title{font-size:.9rem}.ad-description{display:none}.ad-price{font-size:1rem}.ad-condition,.ad-new-badge,.ad-company-badge{display:none}}.ad-list{display:flex;flex-direction:column;gap:1rem}.ad-list-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.ad-count{font-size:.95rem;color:#6b7280}.ad-sort{padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.9rem;color:#374151;background:#fff;cursor:pointer}.ad-sort:focus{outline:none;border-color:#1e3a5f}.ad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.ad-list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#6b7280}.loading-spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#1e3a5f;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.ad-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#fff;border-radius:12px}.empty-icon{font-size:3rem;margin-bottom:1rem}.ad-list-empty h3{font-size:1.2rem;color:#1f2937;margin-bottom:.5rem}.ad-list-empty p{color:#6b7280;font-size:.95rem}.ad-list-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#fef2f2;border-radius:12px;border:1px solid #fecaca}.error-icon{font-size:3rem;margin-bottom:1rem}.ad-list-error h3{font-size:1.2rem;color:#991b1b;margin-bottom:.5rem}.ad-list-error p{color:#b91c1c;font-size:.95rem}.ad-list-sentinel{height:1px}.ad-list-loading-more{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2rem 1rem;color:#6b7280}.ad-list-loading-more .loading-spinner{width:24px;height:24px;margin-bottom:0}.ad-list-loading-more p{margin:0;font-size:.9rem}@media(max-width:640px){.ad-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative;padding:2rem}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#374151}.modal-content h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem}.btn-primary{padding:.75rem 1.5rem;background:#1e3a5f;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#2d5a87}.btn-secondary{padding:.75rem 1.5rem;background:#fff;color:#374151;border:1px solid #e5e7eb;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f9fafb;border-color:#d1d5db}.create-ad-modal{max-width:600px}.login-prompt,.submission-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem 1rem}.prompt-icon,.success-icon{font-size:3rem;margin-bottom:1rem}.login-prompt h3,.submission-success h3{font-size:1.25rem;color:#1f2937;margin-bottom:.5rem}.login-prompt p,.submission-success p{color:#6b7280;margin-bottom:1rem}.submission-success p:first-of-type{margin-bottom:1.5rem}.submission-success .success-info{font-size:.95rem;color:#374151;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.75rem 1rem;margin-bottom:.75rem}.submission-success .success-location{font-size:.9rem;color:#6b7280;margin-bottom:1.5rem}.submission-success .btn-primary{margin-top:.5rem}.create-ad-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:#374151}.form-group input[type=text],.form-group input[type=number],.form-group textarea,.form-group select{padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 3px #1e3a5f1a}.form-group select:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.image-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;border:2px dashed #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s;color:#6b7280}.image-upload:hover{border-color:#1e3a5f;background:#f8fafc}.upload-icon{font-size:2rem;margin-bottom:.5rem}.image-upload small{font-size:.8rem;color:#9ca3af;margin-top:.25rem}.municipality-status{font-size:.85rem;margin-top:.25rem}.municipality-status.loading{color:#6b7280}.municipality-status.found{color:#16a34a;font-weight:500}.municipality-status.error{color:#dc2626}.form-group input.input-error{border-color:#dc2626}.form-group input.input-error:focus{box-shadow:0 0 0 3px #dc26261a}.form-group input.input-valid{border-color:#16a34a}.form-group input.input-valid:focus{box-shadow:0 0 0 3px #16a34a1a}.form-error{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.9rem}.edit-info-box{padding:.75rem 1rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1e40af;font-size:.9rem}.edit-info-box p{margin:0}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.form-actions button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:500px){.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.sign-in-modal{max-width:420px}.sign-in-header{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem}.sign-in-icon{width:2.5rem;height:2.5rem;margin-bottom:.5rem}.sign-in-header h2{margin:0}.mode-tabs{display:flex;background:#f3f4f6;border-radius:8px;padding:4px;margin-bottom:1.5rem}.mode-tab{flex:1;padding:.75rem;background:none;border:none;border-radius:6px;font-size:.95rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.mode-tab.active{background:#fff;color:#1f2937;box-shadow:0 1px 3px #0000001a}.sign-in-form{display:flex;flex-direction:column;gap:1rem}.sign-in-form .form-group{display:flex;flex-direction:column;gap:.5rem}.sign-in-form label{font-size:.9rem;font-weight:500;color:#374151}.sign-in-form input[type=text],.sign-in-form input[type=email],.sign-in-form input[type=password]{padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .2s}.sign-in-form input:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 3px #1e3a5f1a}.forgot-password{font-size:.85rem;color:#1e3a5f;text-decoration:none;align-self:flex-end}.forgot-password:hover{text-decoration:underline}.submit-btn{width:100%;padding:.875rem;font-size:1rem;margin-top:.5rem}.social-login{margin-top:1.5rem}.divider{display:flex;align-items:center;margin-bottom:1rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.divider span{padding:0 1rem;font-size:.85rem;color:#9ca3af}.social-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.75rem;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:.95rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s;margin-bottom:.75rem}.social-btn:hover{background:#f9fafb;border-color:#d1d5db}.social-btn span{font-size:1.2rem}.terms-note{margin-top:1.5rem;font-size:.8rem;color:#9ca3af;text-align:center;line-height:1.5}.terms-note a{color:#1e3a5f;text-decoration:none}.terms-note a:hover{text-decoration:underline}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label span{font-size:.95rem;color:#374151}.form-hint{display:block;margin-top:.35rem;font-size:.8rem;color:#6b7280}.form-error{padding:.75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.9rem;text-align:center}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.registration-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem 0}.registration-success .success-icon{width:80px;height:80px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.registration-success .success-icon svg{width:40px;height:40px;stroke:#fff}.registration-success h2{margin:0 0 1rem;color:#1e3a5f;font-size:1.5rem}.registration-success p{color:#4b5563;line-height:1.7;margin:0 0 2rem}.my-account-modal{max-width:550px}.my-account-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 0;color:#6b7280}.my-account-loading .spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#1e3a5f;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.my-account-error{text-align:center;padding:2rem 0;color:#dc2626}.my-account-error p{margin-bottom:1rem}.my-account-success{background:#d1fae5;color:#065f46;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;text-align:center}.my-account-save-error{background:#fee2e2;color:#dc2626;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;text-align:center}.my-account-form{display:flex;flex-direction:column;gap:1.5rem}.form-section{border-bottom:1px solid #e5e7eb;padding-bottom:1.5rem}.form-section:last-of-type{border-bottom:none;padding-bottom:0}.form-section h3{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.375rem}.form-input{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9375rem;color:#1f2937;background:#fff;transition:border-color .2s,background-color .2s}.form-input:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 3px #1e3a5f1a}.form-input.disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.form-input::placeholder{color:#9ca3af}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:480px){.form-row{grid-template-columns:1fr}}.form-actions{display:flex;gap:.75rem;padding-top:.5rem}.form-actions .btn-primary,.form-actions .btn-secondary{flex:1}.form-actions .btn-primary:disabled,.form-actions .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.change-password-form{display:flex;flex-direction:column;gap:0}.password-rules{font-size:.8rem;color:#6b7280;margin:.25rem 0 1rem;line-height:1.5}.delete-account-section{border-top:1px solid #fecaca;border-bottom:none;padding-top:1.5rem}.delete-account-warning{background:#fee2e2;color:#991b1b;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.875rem;line-height:1.5}.btn-danger-outline{background:transparent;color:#dc2626;border:1px solid #dc2626;padding:.625rem 1.25rem;border-radius:8px;font-size:.9375rem;cursor:pointer;transition:background .2s,color .2s}.btn-danger-outline:hover{background:#fee2e2}.btn-danger{background:#dc2626;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .2s}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-danger:disabled{opacity:.6;cursor:not-allowed}select.form-input{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.settings-loading{padding:1rem 0;color:#6b7280}.settings-section{margin-top:1.5rem}.settings-section-title{font-size:1rem;font-weight:600;color:#374151;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0}.settings-toggle-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.settings-toggle-label{font-size:.9375rem;font-weight:500;color:#1f2937}.settings-toggle-description{font-size:.8125rem;color:#6b7280}.settings-toggle-switch{position:relative;display:inline-block;width:48px;height:26px;flex-shrink:0}.settings-toggle-switch input{opacity:0;width:0;height:0}.settings-toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#d1d5db;border-radius:26px;transition:background-color .2s}.settings-toggle-slider:before{content:"";position:absolute;width:20px;height:20px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:transform .2s}.settings-toggle-switch input:checked+.settings-toggle-slider{background-color:#2563eb}.settings-toggle-switch input:checked+.settings-toggle-slider:before{transform:translate(22px)}.settings-toggle-switch input:disabled+.settings-toggle-slider{opacity:.6;cursor:not-allowed}.settings-error{margin-top:.75rem;font-size:.875rem;color:#dc2626}.terms-page{min-height:100vh;background:#f3f4f6;padding:2rem 1rem}.terms-container{max-width:800px;margin:0 auto}.terms-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#1e3a5f;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.terms-back-button:hover{background:#1e3a5f;color:#fff;border-color:#1e3a5f}.terms-back-button svg{width:18px;height:18px}.terms-content{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 2px 8px #0000000d}.terms-content h1{font-size:2rem;color:#1e3a5f;margin-bottom:.5rem}.terms-updated{color:#6b7280;font-size:.9rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.terms-content section{margin-bottom:2rem}.terms-content h2{font-size:1.25rem;color:#1f2937;margin-bottom:.75rem}.terms-content p{color:#4b5563;line-height:1.7;margin-bottom:.75rem}.terms-content ul{margin:.75rem 0;padding-left:1.5rem}.terms-content li{color:#4b5563;line-height:1.7;margin-bottom:.5rem}.terms-contact{margin-top:1rem;padding:1rem;background:#f9fafb;border-radius:8px}.terms-contact a{color:#1e3a5f;font-weight:500}.terms-contact a:hover{text-decoration:underline}.terms-divider{border:none;border-top:2px solid #e5e7eb;margin:3rem 0 2.5rem}@media(max-width:640px){.terms-content{padding:1.5rem}.terms-content h1{font-size:1.5rem}.terms-content h2{font-size:1.1rem}}.about-page{min-height:100vh;background:#f3f4f6;padding:2rem 1rem}.about-container{max-width:800px;margin:0 auto}.about-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#1e3a5f;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.about-back-button:hover{background:#1e3a5f;color:#fff;border-color:#1e3a5f}.about-back-button svg{width:18px;height:18px}.about-content{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 2px 8px #0000000d}.about-content h1{font-size:2rem;color:#1e3a5f;margin-bottom:1.5rem;text-align:center}.about-intro{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb}.about-lead{font-size:1.15rem;color:#4b5563;line-height:1.8;text-align:center}.about-section{margin-bottom:2rem;padding:1.5rem;background:#f9fafb;border-radius:10px;position:relative}.about-icon{width:48px;height:48px;background:linear-gradient(135deg,#1e3a5f,#2d5a8a);border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.about-icon svg{width:24px;height:24px;stroke:#fff}.about-section h2{font-size:1.25rem;color:#1f2937;margin-bottom:.75rem}.about-section p{color:#4b5563;line-height:1.7}.about-cta{margin-top:2.5rem;padding:2rem;background:linear-gradient(135deg,#1e3a5f,#2d5a8a);border-radius:12px;text-align:center}.about-cta p{color:#fff;font-size:1.1rem;line-height:1.7;margin:0}@media(max-width:640px){.about-content{padding:1.5rem}.about-content h1{font-size:1.5rem}.about-section{padding:1rem}.about-section h2{font-size:1.1rem}.about-cta{padding:1.5rem}}.contact-page{min-height:100vh;background:#f3f4f6;padding:2rem 1rem}.contact-container{max-width:1000px;margin:0 auto}.contact-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#1e3a5f;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.contact-back-button:hover{background:#1e3a5f;color:#fff;border-color:#1e3a5f}.contact-back-button svg{width:18px;height:18px}.contact-content{display:grid;grid-template-columns:1fr 1.2fr;gap:2rem}.contact-info{background:#1e3a5f;color:#fff;border-radius:12px;padding:2.5rem}.contact-info h1{font-size:1.75rem;margin-bottom:1rem}.contact-intro{opacity:.9;line-height:1.6;margin-bottom:2rem}.contact-details{display:flex;flex-direction:column;gap:1.5rem}.contact-detail-item{display:flex;gap:1rem;align-items:flex-start}.contact-icon{font-size:1.5rem;width:40px;height:40px;background:#ffffff1a;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-detail-item h3{font-size:.9rem;font-weight:600;margin-bottom:.25rem;opacity:.8}.contact-detail-item a,.contact-detail-item p{color:#fff;font-size:.95rem;line-height:1.5}.contact-detail-item a:hover{text-decoration:underline}.contact-form-container{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 2px 8px #0000000d}.contact-form h2{font-size:1.5rem;color:#1f2937;margin-bottom:1.5rem}.contact-form .form-group{margin-bottom:1.25rem}.contact-form label{display:block;font-size:.9rem;font-weight:500;color:#374151;margin-bottom:.5rem}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:#1e3a5f;box-shadow:0 0 0 3px #1e3a5f1a}.contact-form textarea{resize:vertical;min-height:120px}.contact-form .submit-btn{width:100%;padding:1rem;font-size:1rem;margin-top:.5rem}.btn-primary{background:#f97316;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#ea580c}.contact-success{text-align:center;padding:2rem}.contact-success .success-icon{font-size:4rem;display:block;margin-bottom:1rem}.contact-success h2{font-size:1.5rem;color:#1f2937;margin-bottom:.75rem}.contact-success p{color:#6b7280;margin-bottom:1.5rem;line-height:1.6}.contact-success .btn-primary{padding:.75rem 2rem}.contact-error{color:#dc2626;font-size:.875rem;margin-bottom:.5rem}.contact-verify-info{font-size:.875rem;color:#4b5563;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem}.contact-code-hint{font-size:.8125rem;color:#6b7280;margin-top:.375rem;margin-bottom:0}.contact-resend-btn{background:none;border:none;color:#2563eb;font-size:.875rem;cursor:pointer;padding:0;margin-top:.75rem;text-decoration:underline}.contact-resend-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.contact-content{grid-template-columns:1fr}.contact-info{padding:1.5rem}.contact-info h1{font-size:1.5rem}.contact-form-container{padding:1.5rem}}.messages-page{min-height:100vh;background:#f3f4f6;padding:2rem 1rem}.messages-container{max-width:1200px;margin:0 auto}.messages-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#1e3a5f;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.messages-back-button:hover{background:#1e3a5f;color:#fff;border-color:#1e3a5f}.messages-back-button svg{width:18px;height:18px}.messages-login-prompt{background:#fff;border-radius:12px;padding:3rem;text-align:center;box-shadow:0 2px 8px #0000000d;max-width:400px;margin:2rem auto}.messages-login-prompt .prompt-icon{font-size:4rem;display:block;margin-bottom:1rem}.messages-login-prompt h2{font-size:1.5rem;color:#1f2937;margin-bottom:.75rem}.messages-login-prompt p{color:#6b7280;margin-bottom:1.5rem;line-height:1.6}.messages-login-prompt .btn-primary{padding:.875rem 2rem;background:#f97316;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.messages-login-prompt .btn-primary:hover{background:#ea580c}.messages-content{display:grid;grid-template-columns:350px 1fr;gap:1.5rem;height:calc(100vh - 200px);min-height:500px}.conversations-list{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;overflow:hidden}.conversations-list h2{font-size:1.25rem;color:#1f2937;padding:1.25rem;border-bottom:1px solid #e5e7eb;margin:0}.conversations{flex:1;overflow-y:auto}.conversation-item{display:flex;gap:.875rem;padding:1rem 1.25rem;background:none;border:none;border-bottom:1px solid #f3f4f6;cursor:pointer;text-align:left;width:100%;transition:background .2s}.conversation-item:hover{background:#f9fafb}.conversation-item.active{background:#dbeafe;border-left:3px solid #3b82f6}.conversation-avatar{width:48px;height:48px;background:#f3f4f6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.conversation-info{flex:1;min-width:0}.conversation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.conversation-name{font-weight:600;color:#1f2937;font-size:.95rem}.conversation-time{font-size:.8rem;color:#9ca3af}.conversation-ad{font-size:.8rem;color:#6b7280;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-preview{font-size:.85rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.5rem}.unread-badge{background:#f97316;color:#fff;font-size:.7rem;font-weight:700;padding:.15rem .4rem;border-radius:10px;flex-shrink:0}.no-conversations{padding:3rem 1.5rem;text-align:center;color:#9ca3af}.no-conversations span{font-size:3rem;display:block;margin-bottom:.75rem}.conversations-loading,.messages-loading{display:flex;justify-content:center;align-items:center;padding:2rem}.conversations-error{padding:1.5rem;text-align:center;color:#dc2626}.loading-spinner-small{width:24px;height:24px;border:2px solid #e5e7eb;border-top-color:#1e3a5f;border-radius:50%;animation:spin .8s linear infinite}.loading-spinner-tiny{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.new-conversation-prompt,.no-messages{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;text-align:center;padding:2rem}.new-conversation-prompt span{font-size:3rem;margin-bottom:1rem}.conversation-item.new-conversation{background:#fffbeb;border-left:3px solid #f97316}.conversation-item.conversation-read-only{opacity:.55}.conversation-item.conversation-read-only .conversation-name,.conversation-item.conversation-read-only .conversation-ad{color:#9ca3af}.chat-read-only-banner{padding:.75rem 1.25rem;background:#fef3c7;border-bottom:1px solid #fde68a;color:#92400e;font-size:.9rem;text-align:center}.chat-area{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;overflow:hidden}.chat-header{padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.chat-recipient{display:flex;align-items:center;gap:.875rem}.chat-avatar{width:44px;height:44px;background:#e5e7eb;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.chat-recipient-info{display:flex;flex-direction:column}.chat-recipient-name{font-weight:600;color:#1f2937;font-size:1rem}.chat-ad-title{font-size:.85rem;color:#6b7280}.chat-messages{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.chat-message{display:flex;max-width:75%}.chat-message.own{align-self:flex-end}.chat-message.other{align-self:flex-start}.message-bubble{padding:.75rem 1rem;border-radius:16px;position:relative}.chat-message.own .message-bubble{background:#1e3a5f;color:#fff;border-bottom-right-radius:4px}.chat-message.other .message-bubble{background:#f3f4f6;color:#1f2937;border-bottom-left-radius:4px}.message-bubble p{margin:0 0 .25rem;line-height:1.4;font-size:.95rem}.message-time{font-size:.7rem;opacity:.7;display:block;text-align:right}.chat-message.own .message-time{color:#ffffffb3}.chat-input-form{display:flex;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e5e7eb;background:#f9fafb}.chat-input-form input{flex:1;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:24px;font-size:.95rem;outline:none;transition:border-color .2s}.chat-input-form input:focus{border-color:#1e3a5f}.send-button{width:44px;height:44px;background:#f97316;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.send-button:hover{background:#ea580c}.send-button svg{width:20px;height:20px}.no-chat-selected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af}.no-chat-selected span{font-size:4rem;margin-bottom:1rem}.no-chat-selected p{font-size:1.1rem}@media(max-width:900px){.messages-content{grid-template-columns:1fr;height:auto}.conversations-list{max-height:300px}.chat-area{min-height:400px}}@media(max-width:640px){.messages-page{padding:1rem .5rem}.conversation-item{padding:.875rem 1rem}.chat-messages{padding:1rem}.chat-message{max-width:85%}}.help-page{min-height:100vh;background:#f3f4f6;padding:2rem 1rem}.help-container{max-width:900px;margin:0 auto}.help-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#1e3a5f;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.help-back-button:hover{background:#1e3a5f;color:#fff;border-color:#1e3a5f}.help-back-button svg{width:18px;height:18px}.help-content{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 2px 8px #0000000d}.help-header{text-align:center;margin-bottom:2.5rem}.help-header h1{font-size:2rem;color:#1e3a5f;margin-bottom:.75rem}.help-header p{color:#6b7280;font-size:1.1rem}.faq-categories{display:flex;flex-direction:column;gap:2rem}.faq-category h2{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;color:#1f2937;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb}.category-icon{font-size:1.5rem}.faq-items{display:flex;flex-direction:column;gap:.5rem}.faq-item{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:all .2s}.faq-item.open{border-color:#1e3a5f;box-shadow:0 2px 8px #1e3a5f1a}.faq-question{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#fff;border:none;cursor:pointer;text-align:left;font-size:.95rem;font-weight:500;color:#1f2937;transition:background .2s}.faq-question:hover{background:#f9fafb}.faq-item.open .faq-question{background:#f0f7ff;color:#1e3a5f}.faq-chevron{width:20px;height:20px;color:#9ca3af;transition:transform .2s;flex-shrink:0}.faq-chevron.open{transform:rotate(180deg);color:#1e3a5f}.faq-answer{padding:0 1.25rem 1.25rem;background:#f9fafb}.faq-answer p{color:#4b5563;line-height:1.7;margin:0}.faq-link{display:inline-block;margin-top:1rem;padding:.5rem 1rem;background:#1e3a5f;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s}.faq-link:hover{background:#2d5a87}.help-contact-section{margin-top:3rem;padding-top:2rem;border-top:1px solid #e5e7eb}.help-contact-text{text-align:center;color:#6b7280;font-size:.95rem}.help-contact-link{background:none;border:none;padding:0;color:#2d5a87;font-size:.95rem;cursor:pointer;text-decoration:underline}.help-contact-link:hover{color:#1e3a5f}@media(max-width:640px){.help-content{padding:1.5rem}.help-header h1{font-size:1.5rem}.faq-category h2{font-size:1.1rem}.faq-question{padding:.875rem 1rem;font-size:.9rem}.faq-answer{padding:0 1rem 1rem}}.advertise-page{min-height:100vh;background:#f3f4f6;padding:2rem 1rem}.advertise-container{max-width:1000px;margin:0 auto}.advertise-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#1e3a5f;border:1px solid #e5e7eb;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.advertise-back-button:hover{background:#1e3a5f;color:#fff;border-color:#1e3a5f}.advertise-back-button svg{width:18px;height:18px}.advertise-content{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 2px 8px #0000000d}.advertise-header{text-align:center;margin-bottom:2rem}.advertise-header h1{font-size:2rem;color:#1e3a5f;margin-bottom:.75rem}.advertise-header p{color:#6b7280;font-size:1.1rem;max-width:600px;margin:0 auto}.promo-banner{background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;padding:1.5rem 2rem;display:flex;align-items:center;gap:1.5rem;margin-bottom:3rem;color:#fff}.promo-icon{font-size:3rem}.promo-text h2{font-size:1.5rem;margin-bottom:.25rem}.promo-text p{opacity:.95;font-size:1rem}.pricing-section{margin-bottom:3rem}.pricing-section h2{text-align:center;font-size:1.5rem;color:#1f2937;margin-bottom:2rem}.pricing-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.pricing-card{border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;position:relative;transition:all .2s}.pricing-card:hover{border-color:#1e3a5f;box-shadow:0 4px 12px #1e3a5f1a}.pricing-card.popular{border:2px solid #f97316;transform:scale(1.02)}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#f97316;color:#fff;padding:.25rem 1rem;border-radius:20px;font-size:.8rem;font-weight:600}.pricing-card-header{text-align:center;padding-bottom:1rem;border-bottom:1px solid #e5e7eb;margin-bottom:1rem}.pricing-card-header h3{font-size:1.1rem;color:#1f2937;margin-bottom:.75rem}.price{display:flex;align-items:baseline;justify-content:center;gap:.25rem}.price-amount{font-size:2.5rem;font-weight:700;color:#1e3a5f}.price-currency{font-size:1.25rem;color:#6b7280}.price-period{display:block;font-size:.85rem;color:#9ca3af;margin-top:.25rem}.pricing-features{list-style:none;padding:0;margin:0 0 1.5rem;flex:1}.pricing-features li{padding:.5rem 0;color:#4b5563;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.pricing-features li:before{content:"✓";color:#10b981;font-weight:600}.pricing-card .btn-primary,.pricing-card .btn-secondary{width:100%;padding:.875rem 1rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.pricing-card .btn-primary{background:#f97316;color:#fff;border:none}.pricing-card .btn-primary:hover{background:#ea580c}.pricing-card .btn-secondary{background:#fff;color:#1e3a5f;border:2px solid #1e3a5f}.pricing-card .btn-secondary:hover{background:#1e3a5f;color:#fff}.pricing-footnote{text-align:center;color:#6b7280;font-size:.85rem;margin-top:1.5rem;font-style:italic}.advertise-info h2{text-align:center;font-size:1.5rem;color:#1f2937;margin-bottom:2rem}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.info-item{text-align:center}.info-icon{width:2.5rem;height:2.5rem;display:block;margin:0 auto 1rem}.info-item h3{font-size:1.1rem;color:#1f2937;margin-bottom:.5rem}.info-item p{color:#6b7280;font-size:.9rem;line-height:1.6}@media(max-width:768px){.advertise-content{padding:1.5rem}.advertise-header h1{font-size:1.5rem}.promo-banner{flex-direction:column;text-align:center;gap:1rem}.pricing-cards{grid-template-columns:1fr}.pricing-card.popular{transform:none;order:-1}.info-grid{grid-template-columns:1fr;gap:1.5rem}}.verify-email-page{min-height:100vh;background:#f3f4f6;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.verify-email-container{max-width:480px;width:100%}.verify-email-content{background:#fff;border-radius:12px;padding:3rem 2.5rem;box-shadow:0 2px 8px #0000000d;text-align:center}.verify-email-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}.verify-email-icon.success{background:linear-gradient(135deg,#10b981,#059669)}.verify-email-icon.error{background:linear-gradient(135deg,#ef4444,#dc2626)}.verify-email-icon.loading{background:linear-gradient(135deg,#1e3a5f,#2d5a8a)}.verify-email-icon svg{width:40px;height:40px;stroke:#fff}.verify-email-icon.loading svg.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.verify-email-content h1{font-size:1.5rem;color:#1e3a5f;margin-bottom:1rem}.verify-email-content p{color:#4b5563;line-height:1.7;margin-bottom:2rem}.verify-email-button{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;background:linear-gradient(135deg,#1e3a5f,#2d5a8a);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.verify-email-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1e3a5f4d}@media(max-width:640px){.verify-email-content{padding:2rem 1.5rem}.verify-email-icon{width:64px;height:64px}.verify-email-icon svg{width:32px;height:32px}.verify-email-content h1{font-size:1.25rem}}.county-dropdown{position:relative}.county-dropdown-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;font-size:.9rem;color:#374151;white-space:nowrap}.county-dropdown-button:hover{border-color:#d1d5db}.county-dropdown-button.has-selection{border-color:#1e3a5f;color:#1e3a5f}.county-dropdown-icon{width:16px;height:16px;flex-shrink:0}.county-dropdown-label{max-width:180px;overflow:hidden;text-overflow:ellipsis}.county-dropdown-chevron{width:14px;height:14px;flex-shrink:0;transition:transform .2s ease}.county-dropdown-chevron.open{transform:rotate(180deg)}.county-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:100;min-width:280px;max-height:400px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;padding:.5rem 0}.county-clear-button{display:block;width:100%;padding:.5rem 1rem;text-align:left;background:none;border:none;border-bottom:1px solid #f3f4f6;cursor:pointer;font-size:.85rem;color:#dc2626}.county-clear-button:hover{background:#fef2f2}.county-neighbour-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-bottom:1px solid #f3f4f6;font-size:.85rem;color:#374151;cursor:pointer}.county-neighbour-toggle input[type=checkbox]{accent-color:#1e3a5f}.county-list{padding:.25rem 0}.county-item-group{border-bottom:1px solid #f9fafb}.county-item-row{display:flex;align-items:center}.county-item{flex:1;padding:.5rem 1rem;text-align:left;background:none;border:none;cursor:pointer;font-size:.9rem;color:#374151}.county-item:hover{background:#f3f4f6}.county-item.selected{background:#eff6ff;color:#1e3a5f;font-weight:500}.county-expand-btn{padding:.5rem;background:none;border:none;cursor:pointer;color:#9ca3af;display:flex;align-items:center}.county-expand-btn:hover{color:#374151}.county-expand-btn svg{width:14px;height:14px;transition:transform .2s ease}.county-expand-btn.expanded svg{transform:rotate(180deg)}.municipality-list{padding:.25rem 0 .25rem 1.5rem;background:#fafafa}.municipality-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.85rem;color:#4b5563;cursor:pointer}.municipality-item:hover{background:#f3f4f6}.municipality-item input[type=checkbox]{accent-color:#1e3a5f}.mobile-filter-overlay{position:fixed;inset:0;z-index:1000;background:#00000080;display:flex;flex-direction:column;justify-content:flex-end}.mobile-filter-panel{background:#f3f4f6;border-radius:16px 16px 0 0;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-filter-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:#fff;border-radius:16px 16px 0 0;border-bottom:1px solid #e5e7eb;flex-shrink:0}.mobile-filter-header h2{margin:0;font-size:1.1rem;font-weight:600;color:#1f2937}.mobile-filter-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#f3f4f6;border:none;border-radius:50%;cursor:pointer}.mobile-filter-close:hover{background:#e5e7eb}.mobile-filter-close svg{width:20px;height:20px}.mobile-filter-body{flex:1;overflow-y:auto;padding:1rem;-webkit-overflow-scrolling:touch}.mobile-filter-footer{padding:1rem 1.25rem;background:#fff;border-top:1px solid #e5e7eb;flex-shrink:0}.mobile-filter-apply{width:100%;padding:.875rem;background:#1e3a5f;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.mobile-filter-apply:hover{background:#2d5a87}.mobile-filter-trigger{display:none}@media(max-width:900px){.mobile-filter-trigger{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:500;color:#374151;box-shadow:0 1px 3px #0000001a;white-space:nowrap}.mobile-filter-trigger:hover{border-color:#d1d5db;background:#f9fafb}.mobile-filter-trigger.has-filters{border-color:#1e3a5f;color:#1e3a5f}.mobile-filter-trigger svg{width:18px;height:18px;flex-shrink:0}.mobile-filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#f97316;color:#fff;border-radius:10px;font-size:.75rem;font-weight:600}}.app{min-height:100vh;display:flex;flex-direction:column;background:#f3f4f6;padding-top:72px}.main-content{flex:1;display:grid;grid-template-columns:280px 1fr 220px;gap:1.5rem;max-width:1400px;margin:0 auto;padding:1.5rem;width:100%;box-sizing:border-box}.sidebar-left{position:sticky;top:1.5rem;height:fit-content;max-height:calc(100vh - 72px - 3rem);overflow-y:auto;transition:width .3s ease}.sidebar-left.collapsed{width:50px;min-width:50px}.sidebar-toggle{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem;background:#1e3a5f;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;margin-bottom:.75rem;transition:background .2s}.sidebar-toggle:hover{background:#2d5a87}.sidebar-toggle svg{width:20px;height:20px;flex-shrink:0}.sidebar-left.collapsed .sidebar-toggle{justify-content:center;padding:.75rem .5rem}.main-content.sidebar-collapsed{grid-template-columns:50px 1fr 220px}.sidebar-right{position:sticky;top:1.5rem;height:fit-content}.content-area{min-width:0}.content-search{margin-bottom:1.5rem}.search-row{display:flex;gap:.75rem;align-items:stretch}.content-search .search-container{flex:1;min-width:0;display:flex;position:relative}.content-search .search-input{width:100%;padding:.875rem 6rem .875rem 1.25rem;border:1px solid #e5e7eb;border-radius:12px;font-size:1rem;outline:none;background:#fff;box-shadow:0 1px 3px #0000001a}.content-search .search-input:focus{border-color:#1e3a5f;box-shadow:0 0 0 3px #1e3a5f1a}.content-search .search-buttons{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.5rem}.content-header{margin-bottom:1.5rem}.content-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.content-header h1{font-size:1.75rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.search-info{font-size:.95rem;color:#6b7280;margin:0}.footer{background:#1e3a5f;color:#fff;padding:2.5rem 1.5rem;margin-top:auto}.footer-content{max-width:1400px;margin:0 auto;text-align:center}.footer-brand{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.5rem}.footer-logo{width:1.5rem;height:1.5rem}.footer-name{font-size:1.25rem;font-weight:700}.footer-tagline{font-size:.95rem;opacity:.8;margin-bottom:1.5rem}.footer-links{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin-bottom:1.5rem}.footer-links a{color:#fff;text-decoration:none;font-size:.9rem;opacity:.8;transition:opacity .2s}.footer-links a:hover{opacity:1}.footer-copyright{font-size:.85rem;opacity:.6;margin:0}@media(max-width:1200px){.main-content{grid-template-columns:260px 1fr}.main-content.sidebar-collapsed{grid-template-columns:50px 1fr}.sidebar-right{display:none}}@media(max-width:900px){.main-content{grid-template-columns:1fr;padding:1rem}.main-content.sidebar-collapsed{grid-template-columns:1fr}.sidebar-left{display:none}.content-header h1{font-size:1.5rem}}@media(max-width:768px){.app{padding-top:60px}}@media(max-width:640px){.footer-links{gap:1rem}}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1f2937;background-color:#f3f4f6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;max-width:none;margin:0;padding:0}a{color:#1e3a5f;text-decoration:none}a:hover{color:#2d5a87}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}p{margin:0}button,input,textarea,select{font-family:inherit}img{max-width:100%;height:auto}
