.ilm-container{max-width:1200px;margin:0 auto;padding:0 20px}.ilm-search-form{background:linear-gradient(135deg,var(--ilm-primary),var(--ilm-accent));padding:40px 20px;border-radius:12px;margin:20px 0;color:white;text-align:center}.ilm-search-form h2{font-size:2.5rem;margin-bottom:10px;font-weight:700}.ilm-search-form p{font-size:1.2rem;margin-bottom:30px;opacity:.9}.ilm-search-fields{display:flex;gap:15px;max-width:600px;margin:0 auto;flex-wrap:wrap;justify-content:center}.ilm-search-field{flex:1;min-width:200px}.ilm-search-field select,.ilm-search-field input{width:100%;padding:15px;border:none;border-radius:8px;font-size:16px;background:#fff;color:var(--ilm-text)}.ilm-search-btn{background:var(--ilm-secondary);color:white;border:none;padding:15px 30px;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;min-width:150px}.ilm-search-btn:hover{background:#2f855a;transform:translateY(-2px)}.ilm-properties-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;margin:40px 0}.ilm-property-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--ilm-shadow);transition:all .3s ease;border:1px solid var(--ilm-border)}.ilm-property-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px -5px rgba(0,0,0,.15)}.ilm-property-image{width:100%;height:200px;object-fit:cover;background:var(--ilm-light)}.ilm-property-content{padding:20px}.ilm-property-price{background:var(--ilm-primary);color:white;padding:8px 15px;border-radius:20px;font-weight:700;font-size:14px;display:inline-block;margin-bottom:10px}.ilm-property-title{font-size:1.3rem;font-weight:700;margin-bottom:8px;color:var(--ilm-text)}.ilm-property-location{color:#718096;margin-bottom:15px;display:flex;align-items:center;gap:5px}.ilm-property-features{display:flex;gap:15px;margin-bottom:15px;font-size:14px;color:#4a5568}.ilm-property-rating{display:flex;align-items:center;gap:5px;margin-bottom:15px}.ilm-stars{color:var(--ilm-accent)}.ilm-property-amenities{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.ilm-amenity{background:var(--ilm-light);padding:4px 8px;border-radius:12px;font-size:12px;color:var(--ilm-text)}.ilm-view-btn{background:var(--ilm-secondary);color:white;text-decoration:none;padding:12px 20px;border-radius:8px;display:inline-block;font-weight:700;transition:all .3s ease;width:100%;text-align:center}.ilm-view-btn:hover{background:#2f855a;color:white;text-decoration:none}.ilm-property-detail{max-width:1000px;margin:0 auto;padding:20px}.ilm-property-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:300px 150px;gap:10px;margin-bottom:30px;border-radius:12px;overflow:hidden}.ilm-gallery-main{grid-row:span 2}.ilm-gallery-image{width:100%;height:100%;object-fit:cover}.ilm-property-info{display:grid;grid-template-columns:2fr 1fr;gap:40px;margin-bottom:40px}.ilm-property-description h3{color:var(--ilm-text);margin-bottom:15px;font-size:1.5rem}.ilm-property-description p{line-height:1.6;color:#4a5568;margin-bottom:20px}.ilm-booking-card{background:#fff;padding:30px;border-radius:12px;box-shadow:var(--ilm-shadow);border:1px solid var(--ilm-border);height:fit-content;position:sticky;top:20px}.ilm-booking-price{font-size:2rem;font-weight:700;color:var(--ilm-text);margin-bottom:20px}.ilm-booking-form{display:flex;flex-direction:column;gap:15px}.ilm-booking-form input,.ilm-booking-form textarea{padding:12px;border:1px solid var(--ilm-border);border-radius:8px;font-size:16px}.ilm-booking-form textarea{resize:vertical;min-height:80px}.ilm-book-btn{background:var(--ilm-primary);color:white;border:none;padding:15px;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease}.ilm-book-btn:hover{background:#c53030}.ilm-dashboard{max-width:1000px;margin:0 auto;padding:20px}.ilm-dashboard-header{background:var(--ilm-light);padding:30px;border-radius:12px;margin-bottom:30px;text-align:center}.ilm-dashboard-nav{display:flex;gap:20px;margin-bottom:30px;border-bottom:1px solid var(--ilm-border)}.ilm-nav-tab{padding:15px 20px;background:0 0;border:none;cursor:pointer;font-size:16px;color:#718096;border-bottom:3px solid transparent;transition:all .3s ease}.ilm-nav-tab.active{color:var(--ilm-primary);border-bottom-color:var(--ilm-primary)}.ilm-bookings-list{display:flex;flex-direction:column;gap:20px}.ilm-booking-item{background:#fff;padding:20px;border-radius:12px;box-shadow:var(--ilm-shadow);border:1px solid var(--ilm-border);display:flex;gap:20px;align-items:center}.ilm-booking-image{width:100px;height:80px;object-fit:cover;border-radius:8px}.ilm-booking-info{flex:1}.ilm-booking-status{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase}.ilm-status-confirmed{background:#c6f6d5;color:#22543d}.ilm-status-pending{background:#fef5e7;color:#744210}.ilm-status-cancelled{background:#fed7d7;color:#742a2a}.ilm-message{padding:15px 20px;border-radius:8px;margin:20px 0}.ilm-message.success{background:#c6f6d5;color:#22543d;border:1px solid #9ae6b4}.ilm-message.error{background:#fed7d7;color:#742a2a;border:1px solid #fc8181}.ilm-message.info{background:#bee3f8;color:#2a4365;border:1px solid #90cdf4}.ilm-loading{display:flex;justify-content:center;align-items:center;padding:40px}.ilm-spinner{width:40px;height:40px;border:4px solid var(--ilm-border);border-top:4px solid var(--ilm-primary);border-radius:50%;animation:ilm-spin 1s linear infinite}@media (max-width:768px){.ilm-search-fields{flex-direction:column}.ilm-search-field{min-width:100%}.ilm-properties-grid{grid-template-columns:1fr}.ilm-property-info{grid-template-columns:1fr}.ilm-property-gallery{grid-template-columns:1fr;grid-template-rows:250px}.ilm-gallery-main{grid-row:span 1}.ilm-booking-item{flex-direction:column;text-align:center}.ilm-dashboard-nav{flex-direction:column;gap:0}.ilm-nav-tab{border-bottom:1px solid var(--ilm-border);border-right:none}}.ilm-text-center{text-align:center}.ilm-text-left{text-align:left}.ilm-text-right{text-align:right}.ilm-mb-20{margin-bottom:20px}.ilm-mt-20{margin-top:20px}.ilm-hidden{display:none}.ilm-flex{display:flex}.ilm-grid{display:grid}.ilm-gap-20{gap:20px}