:root {
    --green-dark: #1B5E20;
    --green-main: #2E7D32;
    --green-medium: #4CAF50;
    --green-light: #81C784;
    --green-pale: #E8F5E9;
    --yellow: #FFC107;
    --yellow-dark: #FFA000;
    --orange: #FF9800;
    --white: #FFFFFF;
    --gray-50: #FAFAFA;
    --gray-100: #F5F5F5;
    --gray-200: #EEEEEE;
    --gray-300: #E0E0E0;
    --gray-400: #BDBDBD;
    --gray-500: #9E9E9E;
    --gray-600: #757575;
    --gray-700: #616161;
    --gray-800: #424242;
    --gray-900: #212121;
    --dark: #1a1a2e;
    --dark-lighter: #232340;
    --danger: #e53935;
    --danger-light: #ffebee;
    --success: #43A047;
    --info: #1E88E5;
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.08);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.1);
    --shadow-lg: 0 8px 30px rgba(0,0,0,0.12);
    --shadow-xl: 0 20px 60px rgba(0,0,0,0.15);
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-full: 50%;
    --transition: all 0.2s ease;
    --max-width: 1200px;
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--white);color:var(--gray-900);line-height:1.6;min-height:100vh;display:flex;flex-direction:column}
a{text-decoration:none;color:inherit;transition:var(--transition)}
button{cursor:pointer;border:none;background:none;font-family:inherit;transition:var(--transition)}
input,textarea,select{font-family:inherit;font-size:14px}
img{max-width:100%;display:block}

/* NAVBAR */
.navbar{background:var(--dark);position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,0.3)}
.navbar-inner{max-width:var(--max-width);margin:0 auto;padding:0 24px;height:60px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;flex-shrink:0}
.logo-mark{display:flex;align-items:center;gap:10px}
.logo-icon{height:34px;width:34px}
.logo-text{font-size:24px;font-weight:900;letter-spacing:-0.5px}
.logo-rol{color:var(--green-light)}
.logo-x{color:var(--yellow)}
.navbar-right{display:flex;align-items:center;gap:4px}
.nav-link{display:flex;align-items:center;gap:6px;color:var(--gray-300);padding:8px 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;position:relative;white-space:nowrap}
.nav-link:hover{color:var(--white);background:rgba(255,255,255,0.08)}
.nav-link svg{flex-shrink:0}
.badge{position:absolute;top:2px;right:2px;background:var(--danger);color:white;font-size:10px;font-weight:700;padding:1px 5px;border-radius:10px;min-width:16px;text-align:center}
.nav-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--green-main);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}
.nav-avatar img{width:100%;height:100%;object-fit:cover}
.nav-avatar svg{color:white}
.user-menu{position:relative}
.dropdown-menu{display:none;position:absolute;top:100%;right:0;margin-top:8px;background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);min-width:200px;padding:8px;z-index:1001;border:1px solid var(--gray-200)}
.dropdown-menu.active{display:block}
.dropdown-menu a{display:block;padding:10px 16px;color:var(--gray-800);font-size:14px;border-radius:var(--radius-sm);font-weight:500}
.dropdown-menu a:hover{background:var(--green-pale);color:var(--green-main)}
.dropdown-menu hr{border:none;border-top:1px solid var(--gray-200);margin:4px 0}
.btn-add-listing{display:flex;align-items:center;gap:6px;background:var(--green-medium);color:white;padding:10px 20px;border-radius:var(--radius-xl);font-size:14px;font-weight:600;margin-left:8px}
.btn-add-listing:hover{background:var(--green-main);transform:translateY(-1px);box-shadow:0 4px 12px rgba(76,175,80,0.4)}

/* INFO BAR */
.info-bar{background:var(--green-pale);border-bottom:1px solid #c8e6c9}
.info-bar-inner{max-width:var(--max-width);margin:0 auto;padding:8px 24px;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gray-700)}
.info-bar-link{color:var(--green-main);font-weight:600;margin-left:auto;cursor:pointer}
.info-bar-link:hover{color:var(--green-dark)}
.info-bar-close{color:var(--gray-500);font-size:16px;padding:4px;margin-left:12px}
.info-bar-close:hover{color:var(--gray-800)}
.info-bar.hidden{display:none}

/* SEARCH SECTION */
.search-section{background:linear-gradient(135deg,var(--gray-100) 0%,var(--green-pale) 100%);padding:40px 24px}
.search-container{max-width:800px;margin:0 auto}
.search-box{display:flex;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:visible;border:2px solid transparent;transition:var(--transition);position:relative}
.search-box:focus-within{border-color:var(--green-medium);box-shadow:var(--shadow-lg),0 0 0 3px rgba(76,175,80,0.15)}
.search-input-group{flex:1;display:flex;align-items:center;padding:0 20px;gap:10px;border-right:1px solid var(--gray-200)}
.search-input-group svg{color:var(--gray-400);flex-shrink:0}
.search-input-group input{flex:1;border:none;outline:none;padding:16px 0;font-size:15px;color:var(--gray-800);background:transparent}
.search-input-group input::placeholder{color:var(--gray-400)}

/* AUTOCOMPLETE LOCATION */
.search-location-wrap{position:relative;display:flex;align-items:center;padding:0 20px;gap:10px;min-width:220px}
.search-location-wrap svg{color:var(--gray-400);flex-shrink:0}
.search-location-wrap input{flex:1;border:none;outline:none;padding:16px 0;font-size:15px;color:var(--gray-800);background:transparent}
.search-location-wrap input::placeholder{color:var(--gray-400)}
.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--white);border:1px solid var(--gray-200);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-md);max-height:240px;overflow-y:auto;z-index:100;display:none}
.autocomplete-dropdown.open{display:block}
.autocomplete-item{padding:10px 16px;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:8px;color:var(--gray-700);transition:var(--transition)}
.autocomplete-item:hover,.autocomplete-item.highlighted{background:var(--green-pale);color:var(--green-main)}
.autocomplete-item svg{width:14px;height:14px;color:var(--gray-400);flex-shrink:0}
.autocomplete-item .match{font-weight:700;color:var(--green-main)}

.search-btn{display:flex;align-items:center;gap:8px;background:var(--green-medium);color:white;padding:16px 28px;font-size:15px;font-weight:600;border:none;cursor:pointer;transition:var(--transition);white-space:nowrap;border-radius:0 var(--radius-lg) var(--radius-lg) 0}
.search-btn:hover{background:var(--green-main)}

/* CATEGORIES */
.categories-section{padding:50px 24px;max-width:var(--max-width);margin:0 auto}
.section-title{text-align:center;font-size:26px;font-weight:700;color:var(--gray-900);margin-bottom:36px}
.categories-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:20px 28px}
.category-item{display:flex;flex-direction:column;align-items:center;gap:10px;cursor:pointer;transition:var(--transition);width:100px}
.category-item:hover{transform:translateY(-4px)}
.category-item:hover .category-icon{box-shadow:var(--shadow-md)}
.category-icon{width:72px;height:72px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:30px;transition:var(--transition);box-shadow:var(--shadow-sm)}
.category-name{font-size:11px;font-weight:600;color:var(--gray-700);text-align:center;line-height:1.3}
.cat-ciagniki .category-icon{background:#E8F5E9}.cat-kombajny .category-icon{background:#FFF3E0}
.cat-maszyny-polowe .category-icon{background:#E3F2FD}.cat-przyczepy .category-icon{background:#FCE4EC}
.cat-siewniki .category-icon{background:#F3E5F5}.cat-pojazdy .category-icon{background:#E0F2F1}
.cat-zwierzeta .category-icon{background:#FFF8E1}.cat-zboza .category-icon{background:#F1F8E9}
.cat-nawozy .category-icon{background:#EFEBE9}.cat-opryskiwacze .category-icon{background:#E8EAF6}
.cat-produkty .category-icon{background:#E0F7FA}.cat-bale .category-icon{background:#FFFDE7}
.cat-pasze .category-icon{background:#F9FBE7}.cat-uslugi .category-icon{background:#FBE9E7}
.cat-czesci .category-icon{background:#ECEFF1}.cat-ladowarki .category-icon{background:#EDE7F6}
.cat-kosiarki .category-icon{background:#E0F2F1}.cat-pluegi .category-icon{background:#FFF3E0}
.cat-brony .category-icon{background:#FCE4EC}.cat-rozrzutniki .category-icon{background:#F1F8E9}
.cat-leśnictwo .category-icon{background:#E8F5E9}.cat-inne .category-icon{background:var(--gray-100)}

/* LISTINGS */
.listings-section{padding:20px 24px 60px;max-width:var(--max-width);margin:0 auto}
.listings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.listings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.listing-card{background:var(--white);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);transition:var(--transition);cursor:pointer;position:relative}
.listing-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--gray-300)}
.listing-card-image{position:relative;width:100%;height:180px;background:var(--gray-100);overflow:hidden}
.listing-card-image img{width:100%;height:100%;object-fit:cover}
.listing-card-image .placeholder-img{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--gray-300);background:linear-gradient(135deg,var(--gray-100),var(--gray-200))}
.listing-favorite-btn{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:var(--radius-full);background:rgba(255,255,255,0.9);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);z-index:2;box-shadow:var(--shadow-sm)}
.listing-favorite-btn:hover{background:var(--white);transform:scale(1.1)}
.listing-favorite-btn svg{width:18px;height:18px;color:var(--gray-400);transition:var(--transition)}
.listing-favorite-btn.active svg{color:var(--danger);fill:var(--danger)}
.listing-sold-badge{position:absolute;top:10px;left:10px;background:var(--danger);color:white;padding:4px 12px;border-radius:var(--radius-sm);font-size:11px;font-weight:700;text-transform:uppercase}
.listing-card-body{padding:16px}
.listing-card-title{font-size:15px;font-weight:600;color:var(--gray-900);margin-bottom:8px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.listing-card-price{font-size:18px;font-weight:700;color:var(--green-main);margin-bottom:10px}
.listing-card-meta{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--gray-500)}
.listing-card-location{display:flex;align-items:center;gap:4px}

/* LISTING DETAIL */
.listing-detail{max-width:var(--max-width);margin:0 auto;padding:30px 24px}
.listing-detail-grid{display:grid;grid-template-columns:1fr 340px;gap:30px}
.listing-gallery{border-radius:var(--radius-lg);overflow:hidden;background:var(--gray-100);box-shadow:var(--shadow-sm)}
.gallery-main{width:100%;height:400px;display:flex;align-items:center;justify-content:center;background:var(--gray-200);overflow:hidden}
.gallery-main img{width:100%;height:100%;object-fit:contain;background:#f0f0f0}
.gallery-main .placeholder-img{font-size:80px;color:var(--gray-300)}
.gallery-thumbs{display:flex;gap:8px;padding:12px;overflow-x:auto}
.gallery-thumb{width:64px;height:64px;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;border:2px solid transparent;flex-shrink:0;transition:var(--transition)}
.gallery-thumb.active{border-color:var(--green-medium)}
.gallery-thumb img{width:100%;height:100%;object-fit:cover}
.listing-info{padding-top:10px}
.listing-title{font-size:24px;font-weight:700;color:var(--gray-900);margin-bottom:12px;line-height:1.3}
.listing-price{font-size:30px;font-weight:800;color:var(--green-main);margin-bottom:20px}
.listing-meta-row{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--gray-600);margin-bottom:8px}
.listing-meta-row svg{width:16px;height:16px;color:var(--gray-400);flex-shrink:0}
.listing-description{margin-top:24px;padding-top:24px;border-top:1px solid var(--gray-200)}
.listing-description h3{font-size:18px;font-weight:600;margin-bottom:12px}
.listing-description p{font-size:15px;color:var(--gray-700);line-height:1.7;white-space:pre-wrap}
.listing-sidebar{display:flex;flex-direction:column;gap:16px}
.sidebar-card{background:var(--white);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-sm);border:1px solid var(--gray-200)}
.seller-info{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.seller-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--green-medium);display:flex;align-items:center;justify-content:center;color:white;font-weight:700;font-size:18px;overflow:hidden;flex-shrink:0}
.seller-avatar img{width:100%;height:100%;object-fit:cover}
.seller-name{font-size:16px;font-weight:600;color:var(--gray-900)}
.seller-since{font-size:12px;color:var(--gray-500)}
.btn-full{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;border-radius:var(--radius-md);font-size:15px;font-weight:600;transition:var(--transition)}
.btn-primary{background:var(--green-medium);color:white}
.btn-primary:hover{background:var(--green-main);transform:translateY(-1px);box-shadow:0 4px 12px rgba(76,175,80,0.3)}
.btn-secondary{background:var(--white);color:var(--green-main);border:2px solid var(--green-medium)}
.btn-secondary:hover{background:var(--green-pale)}
.btn-outline{background:var(--white);color:var(--gray-700);border:2px solid var(--gray-300)}
.btn-outline:hover{border-color:var(--gray-400);background:var(--gray-50)}
.btn-danger{background:var(--danger);color:white}
.btn-danger:hover{background:#c62828}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.stat-item{text-align:center;padding:12px;background:var(--gray-50);border-radius:var(--radius-sm)}
.stat-value{font-size:20px;font-weight:700;color:var(--green-main)}
.stat-label{font-size:11px;color:var(--gray-500);margin-top:2px;font-weight:500}

/* AUTH PAGES */
.auth-page{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:40px 24px;background:var(--gray-50)}
.auth-card{background:var(--white);border-radius:var(--radius-lg);padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow-lg);border:1px solid var(--gray-200)}
.auth-title{font-size:24px;font-weight:700;text-align:center;margin-bottom:8px;color:var(--gray-900)}
.auth-subtitle{text-align:center;color:var(--gray-500);font-size:14px;margin-bottom:28px}
.form-group{margin-bottom:18px}
.form-label{display:block;font-size:14px;font-weight:600;color:var(--gray-700);margin-bottom:6px}
.form-input{width:100%;padding:12px 16px;border:2px solid var(--gray-300);border-radius:var(--radius-sm);font-size:15px;color:var(--gray-800);transition:var(--transition);background:var(--white)}
.form-input:focus{outline:none;border-color:var(--green-medium);box-shadow:0 0 0 3px rgba(76,175,80,0.1)}
.form-error{color:var(--danger);font-size:12px;margin-top:4px;display:none}
.form-error.visible{display:block}
.form-select{width:100%;padding:12px 16px;border:2px solid var(--gray-300);border-radius:var(--radius-sm);font-size:15px;color:var(--gray-800);background:var(--white);cursor:pointer;transition:var(--transition)}
.form-select:focus{outline:none;border-color:var(--green-medium);box-shadow:0 0 0 3px rgba(76,175,80,0.1)}
.form-textarea{width:100%;padding:12px 16px;border:2px solid var(--gray-300);border-radius:var(--radius-sm);font-size:15px;color:var(--gray-800);resize:vertical;min-height:120px;transition:var(--transition);background:var(--white)}
.form-textarea:focus{outline:none;border-color:var(--green-medium);box-shadow:0 0 0 3px rgba(76,175,80,0.1)}
.auth-link{text-align:center;margin-top:20px;font-size:14px;color:var(--gray-600)}
.auth-link a{color:var(--green-main);font-weight:600}
.auth-link a:hover{color:var(--green-dark);text-decoration:underline}

/* ADD LISTING */
.add-listing-page{max-width:700px;margin:0 auto;padding:30px 24px 60px}
.add-listing-page .auth-card{max-width:100%}
.image-upload-area{border:2px dashed var(--gray-300);border-radius:var(--radius-md);padding:30px;text-align:center;cursor:pointer;transition:var(--transition);background:var(--gray-50)}
.image-upload-area:hover{border-color:var(--green-medium);background:var(--green-pale)}
.image-upload-area svg{color:var(--gray-400);margin-bottom:8px}
.image-upload-area p{color:var(--gray-500);font-size:14px}
.image-previews{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.image-preview{width:80px;height:80px;border-radius:var(--radius-sm);overflow:hidden;position:relative}
.image-preview img{width:100%;height:100%;object-fit:cover}
.image-preview-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;border-radius:var(--radius-full);background:var(--danger);color:white;font-size:12px;display:flex;align-items:center;justify-content:center;cursor:pointer}

/* LOCATION AUTOCOMPLETE IN FORMS */
.location-autocomplete-wrap{position:relative}
.location-autocomplete-wrap .autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--white);border:2px solid var(--green-medium);border-top:none;border-radius:0 0 var(--radius-sm) var(--radius-sm);box-shadow:var(--shadow-md);max-height:200px;overflow-y:auto;z-index:50;display:none}
.location-autocomplete-wrap .autocomplete-dropdown.open{display:block}

/* MESSAGES */
.messages-page{max-width:var(--max-width);margin:0 auto;padding:30px 24px;min-height:60vh}
.messages-layout{display:grid;grid-template-columns:320px 1fr;gap:0;background:var(--white);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--gray-200);min-height:500px}
.conversations-list{border-right:1px solid var(--gray-200);overflow-y:auto}
.conversations-header{padding:20px;border-bottom:1px solid var(--gray-200);font-size:18px;font-weight:700}
.conversation-item{display:flex;align-items:center;gap:12px;padding:14px 20px;cursor:pointer;transition:var(--transition);border-bottom:1px solid var(--gray-100)}
.conversation-item:hover{background:var(--gray-50)}
.conversation-item.active{background:var(--green-pale);border-left:3px solid var(--green-medium)}
.conversation-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:var(--green-medium);display:flex;align-items:center;justify-content:center;color:white;font-weight:700;font-size:14px;flex-shrink:0;overflow:hidden}
.conversation-avatar img{width:100%;height:100%;object-fit:cover}
.conversation-info{flex:1;overflow:hidden}
.conversation-name{font-size:14px;font-weight:600;color:var(--gray-900);margin-bottom:1px}
.conversation-listing-title{font-size:11px;color:var(--green-main);font-weight:500;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.conversation-last-msg{font-size:12px;color:var(--gray-500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.conversation-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}
.conversation-time{font-size:11px;color:var(--gray-400)}
.conversation-unread-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--green-medium)}
.chat-area{display:flex;flex-direction:column}
.chat-header{padding:14px 20px;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;gap:12px}
.chat-header-info{flex:1}
.chat-header-info h3{font-size:16px;font-weight:600}
.chat-header-info p{font-size:12px;color:var(--gray-500)}
.chat-header-info p a{color:var(--green-main)}
.chat-header-info .listing-inactive-badge{display:inline-block;background:var(--danger-light);color:var(--danger);font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;margin-left:6px}
.chat-messages{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;background:var(--gray-50)}
.chat-message{max-width:75%;padding:10px 16px;border-radius:var(--radius-md);font-size:14px;line-height:1.5}
.chat-message.sent{align-self:flex-end;background:var(--green-medium);color:white;border-bottom-right-radius:4px}
.chat-message.received{align-self:flex-start;background:var(--white);color:var(--gray-800);border-bottom-left-radius:4px;border:1px solid var(--gray-200)}
.chat-message-time{font-size:10px;opacity:0.7;margin-top:4px;text-align:right}
.chat-input-area{padding:14px 20px;border-top:1px solid var(--gray-200);display:flex;gap:10px;align-items:center;background:var(--white)}
.chat-input{flex:1;padding:12px 16px;border:2px solid var(--gray-300);border-radius:var(--radius-xl);font-size:14px;outline:none;transition:var(--transition)}
.chat-input:focus{border-color:var(--green-medium)}
.chat-send-btn{width:44px;height:44px;border-radius:var(--radius-full);background:var(--green-medium);color:white;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.chat-send-btn:hover{background:var(--green-main);transform:scale(1.05)}
.chat-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--gray-400);font-size:16px;background:var(--gray-50)}

/* PROFILE */
.profile-page{max-width:var(--max-width);margin:0 auto;padding:30px 24px 60px}
.profile-header{display:flex;align-items:center;gap:24px;padding:30px;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);margin-bottom:30px}
.profile-avatar{width:80px;height:80px;border-radius:var(--radius-full);background:var(--green-medium);display:flex;align-items:center;justify-content:center;color:white;font-size:32px;font-weight:700;flex-shrink:0;overflow:hidden}
.profile-avatar img{width:100%;height:100%;object-fit:cover}
.profile-info h2{font-size:24px;font-weight:700;color:var(--gray-900)}
.profile-info p{color:var(--gray-500);font-size:14px;margin-top:4px}
.profile-stats{margin-left:auto;display:flex;gap:30px}
.profile-stat{text-align:center}
.profile-stat-value{font-size:24px;font-weight:700;color:var(--green-main)}
.profile-stat-label{font-size:12px;color:var(--gray-500)}

/* MY LISTINGS */
.my-listings-page{max-width:var(--max-width);margin:0 auto;padding:30px 24px 60px}
.my-listing-item{display:flex;gap:16px;padding:20px;background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);margin-bottom:12px;transition:var(--transition);cursor:pointer}
.my-listing-item:hover{box-shadow:var(--shadow-md)}
.my-listing-thumb{width:120px;height:90px;border-radius:var(--radius-sm);overflow:hidden;background:var(--gray-100);flex-shrink:0}
.my-listing-thumb img{width:100%;height:100%;object-fit:cover}
.my-listing-thumb .placeholder-img{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:30px;color:var(--gray-300)}
.my-listing-info{flex:1}
.my-listing-info h3{font-size:16px;font-weight:600;margin-bottom:4px;color:var(--gray-900)}
.my-listing-info .price{font-size:18px;font-weight:700;color:var(--green-main);margin-bottom:6px}
.my-listing-info .meta{font-size:12px;color:var(--gray-500)}
.my-listing-actions{display:flex;flex-direction:column;gap:6px;justify-content:center}
.my-listing-actions button{padding:8px 16px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;white-space:nowrap}
.btn-small{padding:8px 16px;border-radius:var(--radius-sm);font-size:12px;font-weight:600}

/* OFFERS */
.offers-section{margin-top:20px}
.offer-item{display:flex;align-items:center;gap:12px;padding:16px;background:var(--gray-50);border-radius:var(--radius-sm);margin-bottom:8px;border:1px solid var(--gray-200);flex-wrap:wrap}
.offer-amount{font-size:18px;font-weight:700;color:var(--green-main)}
.offer-status{padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase}
.offer-status.pending{background:#FFF3E0;color:#E65100}
.offer-status.accepted{background:#E8F5E9;color:#2E7D32}
.offer-status.rejected{background:#FFEBEE;color:#C62828}
.offer-actions{margin-left:auto;display:flex;gap:8px}
.offer-actions button{padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:600}

/* FAVORITES */
.favorites-page{max-width:var(--max-width);margin:0 auto;padding:30px 24px 60px}

/* NOTIFICATIONS */
.notifications-page{max-width:700px;margin:0 auto;padding:30px 24px 60px}
.notification-item{display:flex;align-items:start;gap:12px;padding:16px 20px;background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);margin-bottom:8px;cursor:pointer;transition:var(--transition)}
.notification-item:hover{box-shadow:var(--shadow-md)}
.notification-item.unread{border-left:3px solid var(--green-medium);background:var(--green-pale)}
.notification-icon{width:40px;height:40px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}
.notification-icon.message{background:#E3F2FD}
.notification-icon.offer{background:#FFF3E0}
.notification-icon.fav{background:#FCE4EC}
.notification-content{flex:1}
.notification-content p{font-size:14px;color:var(--gray-800);margin-bottom:4px}
.notification-content small{font-size:12px;color:var(--gray-500)}

/* STATIC PAGES */
.static-page{max-width:800px;margin:0 auto;padding:40px 24px 60px}
.static-page h1{font-size:28px;font-weight:800;margin-bottom:20px;color:var(--gray-900)}
.static-page h2{font-size:20px;font-weight:700;margin:24px 0 12px;color:var(--gray-800)}
.static-page p{font-size:15px;color:var(--gray-700);line-height:1.8;margin-bottom:12px}
.static-page ul{margin:12px 0;padding-left:24px}
.static-page ul li{font-size:15px;color:var(--gray-700);line-height:1.8;margin-bottom:6px}
.static-page .card{background:var(--white);border-radius:var(--radius-lg);padding:30px;box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);margin-bottom:20px}

/* MODAL */
.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:2000;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.modal{background:var(--white);border-radius:var(--radius-lg);padding:30px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-xl)}
.modal-close{position:absolute;top:12px;right:16px;font-size:20px;color:var(--gray-500);padding:4px}
.modal-close:hover{color:var(--gray-800)}
.modal h2{font-size:20px;font-weight:700;margin-bottom:20px}

/* TOAST */
.toast-container{position:fixed;bottom:24px;right:24px;z-index:3000;display:flex;flex-direction:column;gap:8px}
.toast{padding:14px 20px;border-radius:var(--radius-md);font-size:14px;font-weight:500;box-shadow:var(--shadow-lg);animation:slideInRight 0.3s ease;display:flex;align-items:center;gap:10px;min-width:300px}
.toast.success{background:var(--success);color:white}
.toast.error{background:var(--danger);color:white}
.toast.info{background:var(--info);color:white}
@keyframes slideInRight{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}
@keyframes slideOut{from{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}

/* FOOTER */
.footer{background:var(--dark);color:var(--gray-400);margin-top:auto}
.footer-inner{max-width:var(--max-width);margin:0 auto;padding:0 24px}
.footer-top{display:grid;grid-template-columns:1.2fr 2fr;gap:40px;padding:40px 0}
.footer-brand p{margin-top:16px;font-size:13px;line-height:1.7;color:var(--gray-500)}
.footer-logo-wrap{display:flex;align-items:center;gap:10px}
.footer-logo-icon{width:32px;height:32px}
.footer-logo-text{font-size:22px;font-weight:900}
.footer-author{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,0.08)}
.footer-author p{font-size:13px;color:var(--gray-500);margin-bottom:8px}
.yt-link{display:inline-flex;align-items:center;gap:8px;color:#FF0000;font-size:13px;font-weight:600;padding:6px 12px;background:rgba(255,0,0,0.1);border-radius:var(--radius-sm);transition:var(--transition)}
.yt-link:hover{background:rgba(255,0,0,0.2);color:#FF0000}
.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.footer-col h4{color:var(--white);font-size:14px;font-weight:600;margin-bottom:16px;text-transform:uppercase;letter-spacing:0.5px}
.footer-col a{display:block;font-size:13px;color:var(--gray-500);margin-bottom:10px;cursor:pointer}
.footer-col a:hover{color:var(--green-light)}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding:20px 0;text-align:center;font-size:12px;color:var(--gray-600)}

/* EMPTY STATE */
.empty-state{text-align:center;padding:60px 24px;color:var(--gray-500)}
.empty-state svg{color:var(--gray-300);margin-bottom:16px}
.empty-state h3{font-size:18px;font-weight:600;color:var(--gray-700);margin-bottom:8px}
.empty-state p{font-size:14px;margin-bottom:20px}

/* SEARCH RESULTS */
.search-results-page{max-width:var(--max-width);margin:0 auto;padding:30px 24px 60px}
.search-results-header{margin-bottom:20px}
.search-results-header h2{font-size:22px;font-weight:700}
.search-results-header p{color:var(--gray-500);font-size:14px;margin-top:4px}
.filters-bar{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}
.filter-chip{padding:8px 14px;border-radius:var(--radius-xl);font-size:12px;font-weight:500;border:1px solid var(--gray-300);background:var(--white);color:var(--gray-700);cursor:pointer;transition:var(--transition)}
.filter-chip.active{background:var(--green-medium);color:white;border-color:var(--green-medium)}
.filter-chip:hover{border-color:var(--green-medium)}

/* BREADCRUMB */
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gray-500);margin-bottom:20px;flex-wrap:wrap}
.breadcrumb a{color:var(--green-main);font-weight:500}
.breadcrumb a:hover{text-decoration:underline}

/* TABS */
.tabs{display:flex;gap:0;border-bottom:2px solid var(--gray-200);margin-bottom:24px}
.tab{padding:12px 20px;font-size:14px;font-weight:600;color:var(--gray-500);border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:var(--transition)}
.tab:hover{color:var(--gray-700)}
.tab.active{color:var(--green-main);border-bottom-color:var(--green-medium)}

.inline-alert{padding:12px 16px;border-radius:var(--radius-sm);font-size:14px;margin-bottom:16px;display:flex;align-items:center;gap:10px}
.inline-alert.info{background:#E3F2FD;color:#1565C0}
.inline-alert.warning{background:#FFF3E0;color:#E65100}
.inline-alert.success{background:#E8F5E9;color:#2E7D32}
.btn-group{display:flex;gap:8px;flex-direction:column}

.avatar-upload{position:relative;width:80px;height:80px;margin:0 auto 16px;cursor:pointer}
.avatar-upload .avatar-circle{width:80px;height:80px;border-radius:50%;background:var(--gray-200);display:flex;align-items:center;justify-content:center;overflow:hidden;border:3px solid var(--gray-300);transition:var(--transition)}
.avatar-upload:hover .avatar-circle{border-color:var(--green-medium)}
.avatar-upload .avatar-circle img{width:100%;height:100%;object-fit:cover}
.avatar-upload .avatar-overlay{position:absolute;bottom:0;right:0;width:24px;height:24px;border-radius:50%;background:var(--green-medium);color:white;display:flex;align-items:center;justify-content:center;font-size:12px;border:2px solid white}

#main-content{flex:1;animation:fadeIn 0.2s ease}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

.spinner{width:32px;height:32px;border:3px solid var(--gray-200);border-top-color:var(--green-medium);border-radius:50%;animation:spin 0.8s linear infinite;margin:40px auto}
@keyframes spin{to{transform:rotate(360deg)}}

::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--gray-100)}
::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}

@media(max-width:768px){
    .navbar-inner{padding:0 12px}
    .nav-link span{display:none}
    .btn-add-listing span{display:none}
    .btn-add-listing{padding:10px}
    .search-box{flex-direction:column}
    .search-input-group{border-right:none;border-bottom:1px solid var(--gray-200)}
    .search-location-wrap{min-width:auto}
    .search-btn{border-radius:0 0 var(--radius-lg) var(--radius-lg)}
    .categories-grid{gap:14px 18px}
    .category-item{width:75px}
    .category-icon{width:56px;height:56px;font-size:24px}
    .category-name{font-size:10px}
    .listings-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
    .listing-detail-grid{grid-template-columns:1fr}
    .messages-layout{grid-template-columns:1fr}
    .conversations-list.hidden-mobile{display:none}
    .chat-area.hidden-mobile{display:none}
    .profile-header{flex-direction:column;text-align:center}
    .profile-stats{margin-left:0}
    .footer-top{grid-template-columns:1fr}
    .footer-links{grid-template-columns:repeat(2,1fr)}
    .my-listing-item{flex-direction:column}
    .my-listing-thumb{width:100%;height:150px}
    .my-listing-actions{flex-direction:row;flex-wrap:wrap}
    .filters-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}
}