:root{--primary:#2563eb;--primary-dark:#1d4ed8;--primary-light:#DBEAFE;--primary-rgb:37,99,235;--secondary:#3b82f6;--accent:#0ea5e9;--accent-soft:#DBEAFE;--warning:#f59e0b;--danger:#ef4444;--dark:#1e293b;--bg:#f0f4ff;--bg-card:#ffffff;--bg-nav:#ffffff;--navbar-bg:var(--dark);--text:#1e293b;--text-secondary:#64748b;--text-muted:#94a3b8;--border:#cbd5e1;--border-light:#e2e8f0;--radius:20px;--radius-sm:14px;--radius-lg:28px;--radius-pill:50px;--transition:all 0.25s cubic-bezier(0.34,1.56,0.64,1);--font:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--nav-height:64px;--bottom-nav-height:56px;--home-feature-height:450px;--mobile-feature-height:25vh;--mobile-weather-height:27vh;--shadow-clay-sm:6px 6px 12px rgba(0,0,0,0.06),-4px -4px 10px rgba(255,255,255,0.8);--shadow-clay:8px 8px 16px rgba(0,0,0,0.08),-6px -6px 14px rgba(255,255,255,0.85);--shadow-clay-lg:12px 12px 24px rgba(0,0,0,0.1),-8px -8px 20px rgba(255,255,255,0.9);--shadow-clay-inset:inset 4px 4px 8px rgba(0,0,0,0.06),inset -4px -4px 8px rgba(255,255,255,0.8);--shadow-clay-sm-inset:inset 3px 3px 6px rgba(0,0,0,0.05),inset -3px -3px 6px rgba(255,255,255,0.7);--shadow-clay-pressed:inset 4px 4px 10px rgba(0,0,0,0.1),inset -2px -2px 6px rgba(255,255,255,0.5);--shadow-sm:0 1px 3px rgba(0,0,0,0.08);--shadow:0 4px 12px rgba(0,0,0,0.1);--shadow-lg:0 8px 30px rgba(0,0,0,0.12)}[data-theme="dark"]{--primary:#60a5fa;--primary-dark:#2563eb;--primary-light:#1e3a5f;--accent-soft:rgba(96,165,250,0.16);--bg:#0f172a;--bg-card:#1e293b;--bg-nav:#1e293b;--text:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border:#334155;--border-light:#1e293b;--shadow-clay-sm:6px 6px 12px rgba(0,0,0,0.3),-4px -4px 10px rgba(255,255,255,0.03);--shadow-clay:8px 8px 16px rgba(0,0,0,0.35),-6px -6px 14px rgba(255,255,255,0.04);--shadow-clay-lg:12px 12px 24px rgba(0,0,0,0.4),-8px -8px 20px rgba(255,255,255,0.05);--shadow-clay-inset:inset 4px 4px 8px rgba(0,0,0,0.25),inset -4px -4px 8px rgba(255,255,255,0.03);--shadow-clay-sm-inset:inset 3px 3px 6px rgba(0,0,0,0.2),inset -3px -3px 6px rgba(255,255,255,0.02);--shadow-clay-pressed:inset 4px 4px 10px rgba(0,0,0,0.3),inset -2px -2px 6px rgba(255,255,255,0.03);--shadow-sm:0 1px 3px rgba(0,0,0,0.3);--shadow:0 4px 12px rgba(0,0,0,0.4);--shadow-lg:0 8px 30px rgba(0,0,0,0.5);--dark:#f1f5f9}[data-theme="dark"] .text-dark{color:var(--text)!important}[data-theme="dark"] .text-muted,[data-theme="dark"] .text-body-secondary{color:var(--text-secondary)!important}[data-theme="dark"] .bg-light{background:var(--border-light)!important}[data-theme="dark"] .bg-white,[data-theme="dark"] .card,[data-theme="dark"] .modal-content,[data-theme="dark"] .offcanvas,[data-theme="dark"] .list-group-item{background:var(--bg-card)!important;color:var(--text);border-color:var(--border)}[data-theme="dark"] .modal-header,[data-theme="dark"] .modal-footer{border-color:var(--border)}[data-theme="dark"] .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}[data-theme="dark"] .alert-success{background:#0f2a1e;color:#86efac}[data-theme="dark"] .alert-error,[data-theme="dark"] .alert-danger{background:#2a0f0f;color:#fca5a5}[data-theme="dark"] .alert-info{background:#1e1b4b;color:#E8C8B0}[data-theme="dark"] .alert-warning{background:#332b0f;color:#fde68a}[data-theme="dark"] .star-rating span{color:#334155}[data-theme="dark"] .footer-lahan{background:var(--bg-card)}[data-theme="dark"] .footer-lahan h6{color:var(--text)}[data-theme="dark"] .footer-lahan a{color:var(--text-secondary)}[data-theme="dark"] .footer-lahan a:hover{color:var(--text)}[data-theme="dark"] .footer-brand{color:var(--text)}[data-theme="dark"] .footer-bottom p{color:var(--text-muted)}[data-theme="dark"] .social-icon{color:var(--text-secondary)!important}*,*::before,*::after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.6;min-height:100vh;transition:background 0.3s ease,color 0.3s ease}.theme-toggle{position:relative;width:52px;height:28px;border:none;background:var(--bg);border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition);flex-shrink:0;padding:0;box-shadow:var(--shadow-clay-sm-inset)}.theme-toggle:hover{transform:scale(1.05)}.theme-toggle .toggle-track{position:relative;width:100%;height:100%;border-radius:var(--radius-pill);background:var(--border-light);transition:background 0.3s ease;overflow:hidden}[data-theme="dark"] .theme-toggle .toggle-track{background:var(--border)}.theme-toggle .toggle-thumb{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--bg-card);box-shadow:var(--shadow-clay-sm);transition:transform 0.35s cubic-bezier(0.68,-0.55,0.27,1.55);display:flex;align-items:center;justify-content:center;font-size:11px;z-index:2}[data-theme="dark"] .theme-toggle .toggle-thumb{transform:translateX(24px)}.theme-toggle .toggle-thumb i{transition:opacity 0.2s ease,transform 0.3s ease}.theme-toggle .toggle-thumb .icon-sun{opacity:1;color:var(--warning)!important}.theme-toggle .toggle-thumb .icon-moon{opacity:0;position:absolute}[data-theme="dark"] .theme-toggle .toggle-thumb .icon-sun{opacity:0}[data-theme="dark"] .theme-toggle .toggle-thumb .icon-moon{opacity:1}[data-theme="dark"] .theme-toggle .toggle-thumb{background:var(--bg-card)}.navbar-lahan{background:var(--bg-nav);padding:0 1.5rem;height:var(--nav-height);position:sticky;top:0;z-index:1030;transition:background 0.3s ease;box-shadow:0 4px 20px rgba(0,0,0,0.04);border-bottom:1px solid var(--border-light)}.navbar-lahan .navbar-brand{display:flex;align-items:center;gap:0.5rem;font-weight:700;font-size:1.25rem;color:var(--text);text-decoration:none}.navbar-lahan .navbar-brand img{height:36px;width:auto}.navbar-lahan .navbar-nav .nav-link{color:var(--text-secondary);font-weight:500;padding:0.5rem 1rem;border-radius:var(--radius-pill);transition:var(--transition);margin:0 2px}.navbar-lahan .navbar-nav .nav-link:hover{color:var(--primary);background:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow-clay-sm)}.navbar-lahan .navbar-nav .nav-link:active{transform:translateY(0) scale(0.97);box-shadow:var(--shadow-clay-sm-inset)}.navbar-lahan .navbar-nav .nav-link.active{color:var(--primary);background:var(--primary-light);box-shadow:var(--shadow-clay-sm)}.navbar-lahan .profile-trigger{background:var(--bg);border:none;display:flex;align-items:center;gap:0.5rem;padding:0.25rem 0.75rem 0.25rem 0.25rem;border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition);color:var(--text);box-shadow:var(--shadow-clay-sm)}.navbar-lahan .profile-trigger:hover{transform:translateY(-1px);box-shadow:var(--shadow-clay)}.navbar-lahan .profile-trigger:active{transform:translateY(0) scale(0.97);box-shadow:var(--shadow-clay-sm-inset)}.navbar-lahan .profile-avatar{width:36px;height:36px;border-radius:50%;background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:0.875rem;overflow:hidden}.navbar-lahan .profile-avatar img{width:100%;height:100%;object-fit:cover}.navbar-lahan .nav-icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--bg);color:var(--text-secondary);font-size:1.05rem;border:none;cursor:pointer;text-decoration:none;box-shadow:var(--shadow-clay-sm);transition:var(--transition)}.navbar-lahan .nav-icon-btn:hover{color:var(--primary);background:var(--primary-light);transform:translateY(-1px);box-shadow:var(--shadow-clay)}.navbar-lahan .nav-icon-btn:active{transform:translateY(0) scale(0.97);box-shadow:var(--shadow-clay-sm-inset)}.navbar-lahan .nav-badge{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px var(--bg-nav)}@media (min-width:768px){.navbar-lahan .navbar-collapse{margin-right:0.75rem}}@media (min-width:768px) and (max-width:1199.98px){.navbar-lahan{padding-inline:clamp(0.75rem,2vw,1.25rem)}.navbar-lahan>.container-fluid{flex-wrap:nowrap;min-width:0}.navbar-lahan .navbar-brand{flex-shrink:0;gap:0.375rem;font-size:clamp(1rem,1.5vw,1.125rem);white-space:nowrap}.navbar-lahan .navbar-brand img{height:clamp(30px,3.5vw,34px)}.navbar-lahan .navbar-collapse{display:flex!important;flex:1 1 auto;min-width:0;margin-right:clamp(0.375rem,1vw,0.625rem)}.navbar-lahan .navbar-nav{flex:1 1 auto;flex-wrap:nowrap;min-width:0}.navbar-lahan .navbar-nav .nav-link{margin-inline:0;padding:0.45rem clamp(0.35rem,0.9vw,0.65rem);font-size:clamp(0.78rem,1.15vw,0.875rem);white-space:nowrap}.navbar-lahan .nav-search-btn{flex:0 0 auto;gap:0;min-height:36px;margin-left:0.25rem!important;padding:6px 9px}.navbar-lahan .nav-search-btn span,.navbar-lahan .nav-search-btn kbd{display:none}.navbar-lahan .navbar-actions{flex-shrink:0;gap:0.375rem!important}.navbar-lahan .profile-trigger{padding:0.25rem}.navbar-lahan .profile-trigger>span{display:none!important}.navbar-lahan .profile-avatar,.navbar-lahan .nav-icon-btn{width:36px;height:36px}.navbar-lahan .navbar-actions .btn{padding:0.35rem 0.5rem;font-size:0.75rem;white-space:nowrap}}.nav-search-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--radius-pill);padding:6px 16px;background:var(--bg);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:var(--transition);outline:none;box-shadow:var(--shadow-clay-sm)}.nav-search-btn:hover{border-color:var(--primary);background:var(--primary-light);color:var(--text);transform:translateY(-1px);box-shadow:var(--shadow-clay)}.nav-search-btn:active{transform:translateY(0) scale(0.97);box-shadow:var(--shadow-clay-sm-inset)}.nav-search-btn i{font-size:13px;color:var(--text-muted)}.nav-search-btn span{color:var(--text-muted)}.nav-search-btn kbd{font-size:10px;border:1px solid var(--border);border-radius:6px;padding:1px 5px;background:var(--bg-card);color:var(--text-muted);font-family:inherit}.home-feature-row{align-items:stretch}.home-feature-row>[class*="col-"]{display:flex}.hero-carousel-wrap{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-card);width:100%;height:var(--home-feature-height);min-height:var(--home-feature-height);box-shadow:var(--shadow-clay-lg)}.hero-carousel-wrap .carousel,.hero-carousel-wrap .carousel-inner,.hero-carousel-wrap .carousel-item{height:100%!important}.hero-carousel-wrap img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-carousel-wrap .carousel-indicators{position:absolute;bottom:0.5rem;margin:0;gap:0.375rem;z-index:5}.hero-carousel-wrap .carousel-indicators button{width:8px;height:8px;border-radius:50%;border:none;background:rgba(255,255,255,0.5);transition:var(--transition)}.hero-carousel-wrap .carousel-indicators button.active{background:white;width:24px;border-radius:4px}.hero-carousel-wrap .carousel-control-prev,.hero-carousel-wrap .carousel-control-next{width:44px;height:44px;top:50%;transform:translateY(-50%);bottom:auto;background:rgba(255,255,255,0.85);border-radius:50%;opacity:0;transition:opacity 0.3s ease,transform 0.3s ease;margin:0 0.75rem;box-shadow:var(--shadow-clay-sm);color:var(--text);font-size:16px}.hero-carousel-wrap:hover .carousel-control-prev,.hero-carousel-wrap:hover .carousel-control-next{opacity:1}.hero-carousel-wrap .carousel-control-prev:hover,.hero-carousel-wrap .carousel-control-next:hover{transform:translateY(-50%) scale(1.05);box-shadow:var(--shadow-clay)}.hero-carousel-wrap .hero-overlay{position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(transparent,rgba(15,23,42,0.7));z-index:2;pointer-events:none}.hero-carousel-wrap .hero-overlay h1{font-size:1.75rem}@media (max-width:767.98px){.hero-carousel-wrap{height:var(--mobile-feature-height);min-height:var(--mobile-feature-height);border-radius:var(--radius)}.hero-carousel-wrap .hero-overlay{padding:0.75rem}.hero-carousel-wrap .hero-overlay h1{font-size:1rem}.hero-carousel-wrap .hero-overlay p{font-size:0.75rem}}@media (min-width:768px) and (max-width:991.98px){.home-feature-row{--home-feature-height:25vh}.hero-carousel-wrap{height:var(--home-feature-height);min-height:var(--home-feature-height)}}@media (min-width:992px){.home-feature-row{--home-feature-height:450px}.hero-carousel-wrap{height:var(--home-feature-height);min-height:var(--home-feature-height)}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--bg-nav);border-top:1px solid var(--border-light);display:flex;z-index:1030;padding:0.25rem 0;padding-bottom:calc(0.25rem + env(safe-area-inset-bottom,0px));height:var(--bottom-nav-height);transition:background 0.3s ease;box-shadow:0 -4px 20px rgba(0,0,0,0.04)}.bottom-nav .bn-link{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.125rem;padding:0.125rem;color:var(--text-muted);text-decoration:none;font-size:0.625rem;font-weight:500;border:none;background:none;cursor:pointer;transition:var(--transition);border-radius:var(--radius)}.bottom-nav .bn-link i{font-size:1.125rem}.bottom-nav .bn-link.active{color:var(--primary)}.bottom-nav .bn-link:hover{color:var(--primary);background:var(--primary-light)}@media (min-width:768px){.bottom-nav{display:none}}.page-hero{background:var(--bg-card);border-radius:var(--radius-lg);padding:1.5rem 2rem;box-shadow:var(--shadow-clay)}.page-hero .eyebrow{font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--primary);margin-bottom:0.25rem}.page-hero h1{font-size:1.5rem;font-weight:700;color:var(--text)}@media (max-width:767.98px){.page-hero{padding:1rem;border-radius:var(--radius)}.page-hero h1{font-size:1.125rem}}.card-lahan{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-clay-sm);transition:box-shadow 0.3s ease,transform 0.3s ease;border:1px solid var(--border-light)}.card-lahan:hover{box-shadow:var(--shadow-clay);transform:translateY(-3px)}.card-lahan .card-img-top{height:192px;object-fit:cover;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.auth-page{min-height:calc(100vh - var(--nav-height));display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(135deg,var(--bg) 0%,var(--border-light) 100%)}.auth-card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-clay-lg);width:100%;max-width:480px;padding:2.5rem;border:1px solid var(--border-light)}.auth-card h2{font-size:1.5rem;font-weight:700;margin-bottom:0.25rem;color:var(--text)}.auth-card .auth-subtitle{color:var(--text-secondary);font-size:0.875rem;margin-bottom:1.5rem}.auth-card .form-label{font-weight:500;font-size:0.875rem;margin-bottom:0.375rem;color:var(--text)}.auth-card .btn-primary{width:100%;padding:0.75rem;font-weight:600;border-radius:var(--radius-pill)}.auth-card .auth-divider{height:1px;background:var(--border);margin:1.5rem 0}.auth-card .auth-link{color:var(--primary);text-decoration:none;font-weight:500}.auth-card .auth-link:hover{text-decoration:underline}.btn{border-radius:var(--radius-pill)!important;font-weight:500;transition:var(--transition)}.btn-primary{background:var(--primary);border:none;color:white;padding:0.5rem 1.5rem;box-shadow:0 4px 12px rgba(var(--primary-rgb),0.3)}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 20px rgba(var(--primary-rgb),0.35)}.btn-primary:active{transform:translateY(0) scale(0.97);box-shadow:var(--shadow-clay-pressed)}.btn-outline-primary{border:1px solid var(--primary);color:var(--primary);background:transparent;padding:0.5rem 1.5rem}.btn-outline-primary:hover{background:var(--primary);color:white;transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--primary-rgb),0.2)}.btn-outline-secondary{border:1px solid var(--border);color:var(--text-secondary);background:var(--bg-card);padding:0.5rem 1.5rem;box-shadow:var(--shadow-clay-sm)}.btn-outline-secondary:hover{background:var(--border-light);transform:translateY(-1px);box-shadow:var(--shadow-clay)}.btn-outline-secondary:active{box-shadow:var(--shadow-clay-sm-inset)}.btn-outline-danger{border:1px solid var(--danger);color:var(--danger);background:transparent;padding:0.5rem 1.5rem}.btn-outline-danger:hover{background:var(--danger);color:white;transform:translateY(-1px)}.btn-sm{padding:0.35rem 1rem!important;font-size:0.8rem!important}.form-control,.form-select{border:1px solid var(--border);border-radius:var(--radius-sm)!important;padding:0.625rem 0.875rem;font-size:0.875rem;transition:var(--transition);background:var(--bg-card);color:var(--text);box-shadow:var(--shadow-clay-sm-inset)}.form-control::placeholder,textarea::placeholder,input::placeholder{color:var(--text-muted);opacity:1}.form-select option{background:var(--bg-card);color:var(--text)}.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:var(--shadow-clay-sm-inset),0 0 0 3px rgba(var(--primary-rgb),0.1);outline:none}.alert{border:none;border-radius:var(--radius-sm);padding:0.875rem 1rem;font-size:0.875rem;box-shadow:var(--shadow-clay-sm)}.alert-success{background:#E8F0E8;color:#2A5C3A}.alert-error,.alert-danger{background:#F5E0E0;color:#8B2A2A}.alert-info{background:var(--primary-light);color:var(--primary-dark)}.alert-warning{background:#F5EDD0;color:#8B6A2A}.alert .alert-link{font-weight:600}.review-card{background:var(--border-light);border-radius:var(--radius);padding:1rem;margin-bottom:0.75rem;box-shadow:var(--shadow-clay-sm-inset);border:1px solid var(--border-light)}.review-card .star-rating{color:var(--warning);font-size:1rem;letter-spacing:2px}.star-rating span{font-size:1.5rem;color:var(--border);cursor:pointer;transition:var(--transition);user-select:none}.star-rating span:hover{color:var(--warning)}.community-post{background:var(--bg-card);border-radius:var(--radius);padding:1.25rem;margin-bottom:0.75rem;border:1px solid var(--border-light);transition:var(--transition);box-shadow:var(--shadow-clay-sm)}.community-post:hover{box-shadow:var(--shadow-clay)}.hotel-card{border-radius:var(--radius-lg)!important;overflow:hidden}.hotel-card .hotel-image-wrap{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.hotel-card .hotel-image-wrap img,.hotel-card .hotel-image-wrap .carousel,.hotel-card .hotel-image-wrap .carousel-inner,.hotel-card .hotel-image-wrap .carousel-item{height:100%!important}.hotel-card .hotel-image-wrap img{width:100%;height:100%;object-fit:cover}.hotel-card .hotel-meta{display:flex;align-items:center;gap:0.5rem;color:var(--text-secondary);font-size:0.875rem}.hotel-card .rating-badge{position:absolute;top:8px;right:8px;background:rgba(15,23,42,0.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:white;padding:2px 10px;border-radius:var(--radius-pill);font-size:0.75rem;font-weight:600;letter-spacing:0.02em;z-index:2}.hotel-card .card-body{padding:0.875rem 1rem 1rem}.hotel-card .hotel-name{font-size:0.95rem;line-height:1.3;color:var(--text)}.hotel-card .hotel-location{color:var(--text-secondary);font-size:0.8rem;display:flex;align-items:center;gap:4px}.hotel-card .hotel-location i{font-size:0.7rem;color:var(--text-muted)}.hotel-card .feature-badge{display:inline-flex;align-items:center;gap:4px;background:var(--border-light);color:var(--text-secondary);padding:2px 10px;border-radius:var(--radius-pill);font-size:0.7rem;font-weight:500}.hotel-card .feature-badge i{font-size:0.6rem}.hotel-card .price{font-size:1.05rem;font-weight:700;color:var(--primary);line-height:1.2}.hotel-card .price small{font-size:0.7rem;font-weight:400;color:var(--text-muted)}.hotel-card .btn-sm{padding:0.35rem 0.85rem;font-size:0.8rem;border-radius:var(--radius-pill);white-space:nowrap}.hotel-card .carousel-control-prev,.hotel-card .carousel-control-next{width:32px;height:32px;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.85);border-radius:50%;opacity:0;transition:opacity 0.25s ease;color:var(--text);font-size:12px;box-shadow:var(--shadow-clay-sm)}.hotel-card:hover .carousel-control-prev,.hotel-card:hover .carousel-control-next{opacity:1}.hotel-card .carousel-control-prev{left:6px}.hotel-card .carousel-control-next{right:6px}.hotel-card .carousel-indicators{bottom:4px;margin-bottom:2px;gap:3px}.hotel-card .carousel-indicators button{width:6px;height:6px;border-radius:50%;border:none;background:rgba(255,255,255,0.5);opacity:1}.hotel-card .carousel-indicators button.active{background:white;width:18px;border-radius:3px}.food-card-link{text-decoration:none;color:inherit;display:block}.food-card-link:hover{color:inherit}.food-card-title{color:var(--text)}.food-card-placeholder{height:192px;background:var(--border-light);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.guide-icon{font-size:2rem;color:var(--primary)}.news-tabs{display:flex;gap:0.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.news-tab{padding:0.5rem 1.5rem;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-weight:500;font-size:0.875rem;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-clay-sm)}.news-tab.active{background:var(--primary);color:white;border-color:var(--primary);box-shadow:0 4px 12px rgba(var(--primary-rgb),0.3)}.news-tab:hover{border-color:var(--primary);transform:translateY(-1px)}.news-tab:active{transform:translateY(0) scale(0.97);box-shadow:var(--shadow-clay-sm-inset)}.news-section{display:none}.news-section.active{display:block}.video-container{width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--border-light)}.video-container video,.video-container img{width:100%;height:100%;object-fit:cover}.footer-lahan{background:var(--dark);color:#cbd5e1;padding:3.5rem 0 0;margin-top:3rem}.footer-lahan h6{color:#fff;font-weight:600;font-size:0.8125rem;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:1rem}.footer-lahan a{color:#cbd5e1;text-decoration:none;transition:color 0.2s}.footer-lahan a:hover{color:#fff}.footer-brand{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:0.75rem}.footer-brand img{height:32px;width:auto}.footer-desc{font-size:0.875rem;line-height:1.6;margin-bottom:1.25rem;color:#cbd5e1}.footer-social{display:flex;gap:10px}.social-icon{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,0.06);display:flex;align-items:center;justify-content:center;color:var(--text-muted)!important;font-size:1rem;transition:all 0.2s;box-shadow:4px 4px 8px rgba(0,0,0,0.2),-2px -2px 6px rgba(255,255,255,0.03)}.social-icon:hover{background:var(--primary);color:#fff!important;transform:translateY(-2px);box-shadow:6px 6px 12px rgba(0,0,0,0.25),-3px -3px 8px rgba(255,255,255,0.05)}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:0.5rem}.footer-links a{font-size:0.875rem;position:relative;padding-left:0;transition:padding 0.2s}.footer-links a:hover{padding-left:4px}.footer-contact{list-style:none;padding:0;margin:0}.footer-contact li{display:flex;align-items:center;gap:10px;font-size:0.875rem;margin-bottom:0.625rem}.footer-contact i{width:16px;color:var(--primary);font-size:0.875rem}.footer-bottom{margin-top:2.5rem;padding:1.25rem 0;border-top:1px solid rgba(255,255,255,0.08);text-align:center}.footer-bottom p{font-size:0.8125rem;margin:0;color:#94a3b8}@media (max-width:767.98px){.footer-lahan{padding-top:2.5rem}.footer-lahan .col-6{margin-bottom:1.5rem}.footer-lahan .col-md-5{margin-bottom:1.5rem}.footer-bottom{margin-top:1.5rem}}.empty-state{text-align:center;padding:3rem 1.5rem;color:var(--text-secondary)}.empty-state i{font-size:3rem;margin-bottom:1rem;color:var(--text-muted)}.empty-state h5{color:var(--text)}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:3rem}.spinner{width:2.5rem;height:2.5rem;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 0.8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.text-gradient{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.reveal{opacity:0;transform:translateY(20px);transition:opacity 0.6s ease,transform 0.6s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media (max-width:767.98px){main{padding-bottom:calc(var(--bottom-nav-height) + 1rem)}.navbar-lahan{padding:0 0.55rem;height:56px}.navbar-lahan .navbar-brand span{font-size:1.15rem}.navbar-lahan .navbar-brand img{height:45px}.container{padding-left:0.75rem;padding-right:0.75rem}.page-hero{padding:0.75rem 1rem}.page-hero h1{font-size:1.125rem}.page-hero .eyebrow{font-size:0.625rem}.card-lahan .card-img-top{height:140px}.row.g-4{--bs-gutter-y:0.75rem;--bs-gutter-x:0.75rem}}.info-panel{flex:1;overflow-y:auto;max-height:240px}.info-panel::-webkit-scrollbar{width:4px}.info-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.info-list{display:flex;flex-direction:column;gap:6px;transition:opacity 0.25s ease,transform 0.25s ease}.info-list.d-none{display:none!important}.info-list.swap-in{animation:listSwapIn 0.25s ease}@keyframes listSwapIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.info-item{padding:0.625rem 0.75rem;border-radius:var(--radius);transition:opacity 0.15s}.info-item-title{font-weight:600;font-size:0.8125rem;color:var(--text)}.info-item-desc{font-size:0.75rem;color:var(--text-secondary);margin-top:2px}.search-overlay{position:fixed;inset:0;z-index:9999;background:rgba(15,23,42,0.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:none;flex-direction:column}.search-overlay.open{display:flex;animation:searchFadeIn 0.2s ease}@keyframes searchFadeIn{from{opacity:0}to{opacity:1}}.search-overlay-header{background:var(--bg-nav);padding:12px 16px;border-bottom:1px solid var(--border)}.search-overlay-input-wrap{display:flex;align-items:center;gap:10px;background:var(--bg);border-radius:var(--radius-pill);padding:4px 16px;box-shadow:var(--shadow-clay-sm-inset)}.search-overlay-icon{color:var(--text-muted);font-size:14px}.search-overlay-input{border:none!important;background:transparent!important;padding:12px 0!important;font-size:16px;box-shadow:none!important}.search-overlay-input:focus{outline:none}.search-overlay-close{border:none;background:var(--bg);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:18px;cursor:pointer;box-shadow:var(--shadow-clay-sm)}.search-overlay-close:hover{transform:scale(1.05)}.search-overlay-close:active{box-shadow:var(--shadow-clay-sm-inset)}.search-overlay-body{flex:1;overflow-y:auto;background:var(--bg-nav);padding:12px 16px 80px}.search-overlay-filters{display:flex;gap:8px;overflow-x:auto;padding-bottom:12px;margin-bottom:8px;scrollbar-width:none}.search-overlay-filters::-webkit-scrollbar{display:none}.search-chip{flex-shrink:0;border:none;padding:7px 18px;border-radius:var(--radius-pill);font-size:13px;font-weight:500;background:var(--bg);color:var(--text-secondary);cursor:pointer;transition:var(--transition);white-space:nowrap;box-shadow:var(--shadow-clay-sm)}.search-chip.active{background:var(--primary);color:#fff;box-shadow:0 4px 12px rgba(var(--primary-rgb),0.3)}.search-chip:hover:not(.active){background:var(--border-light);transform:translateY(-1px)}.search-chip:active{transform:translateY(0) scale(0.97);box-shadow:var(--shadow-clay-sm-inset)}.search-overlay-results{flex:1}.search-result-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border);text-decoration:none;color:var(--text)}.search-result-item:last-child{border-bottom:none}.search-result-icon{width:44px;height:44px;border-radius:var(--radius);background:var(--bg);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--primary);font-size:16px;box-shadow:var(--shadow-clay-sm)}.search-result-info{flex:1;min-width:0}.search-result-title{font-weight:600;font-size:14px}.search-result-cat{font-size:11px;color:var(--text-muted)}.search-hint{padding:40px 0!important}.mobile-drawer-overlay{position:fixed;inset:0;z-index:9998;background:rgba(15,23,42,0.5);display:none}.mobile-drawer-overlay.open{display:block}.mobile-drawer{position:fixed;top:0;right:0;bottom:0;width:280px;max-width:80vw;z-index:9999;background:var(--bg-nav);display:flex;flex-direction:column;transform:translateX(100%);transition:transform 0.25s ease;box-shadow:-4px 0 20px rgba(0,0,0,0.1);border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.mobile-drawer.open{transform:translateX(0)}.mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border)}.mobile-drawer-header .navbar-brand{font-size:18px;gap:8px}.mobile-drawer-header .navbar-brand img{height:28px}.mobile-drawer-close{border:none;background:var(--bg);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-clay-sm)}.mobile-drawer-close:hover{transform:scale(1.05)}.mobile-drawer-close:active{box-shadow:var(--shadow-clay-sm-inset)}.mobile-drawer-body{flex:1;overflow-y:auto;padding:8px 0}.mobile-drawer-section{padding:8px 16px}.mobile-drawer-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted);margin-bottom:8px}.mobile-drawer-link{display:flex;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;color:var(--text);font-size:15px;font-weight:500;border-radius:var(--radius);transition:var(--transition)}.mobile-drawer-link:hover{background:var(--primary-light);color:var(--primary)}.mobile-drawer-link i{width:20px;text-align:center;color:var(--text-secondary);font-size:16px}.mobile-drawer-link.text-danger i{color:var(--danger)}.mobile-drawer-footer{border-top:1px solid var(--border);padding:8px 16px}.mobile-drawer-footer .mobile-drawer-link{font-size:14px}.bn-hamburger{border:none;background:none;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;cursor:pointer;color:var(--text-secondary)}.bn-hamburger span{font-size:10px}.fade-in{animation:fadeIn 0.3s ease}@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.grid-label{overflow-wrap:break-word;word-break:break-word;hyphens:auto;line-height:1.3;max-width:100%}@media (max-width:575.98px){.grid-label{font-size:0.6875rem}}@media (pointer:coarse){.btn,.bn-link,.nav-link,.profile-trigger{min-height:44px;min-width:44px}.btn{padding:0.625rem 1.25rem}}html,body{overflow-x:hidden;width:100%}img,video,iframe{max-width:100%}.dropdown-menu{border:1px solid var(--border-light);border-radius:var(--radius);box-shadow:var(--shadow-clay-lg);padding:8px;background:var(--bg-card)}.dropdown-menu .dropdown-item{border-radius:var(--radius-sm);padding:0.5rem 0.75rem;color:var(--text);transition:var(--transition)}.dropdown-menu .dropdown-item:hover{background:var(--primary-light);color:var(--primary)}.dropdown-menu .dropdown-item i{color:var(--text-secondary)}.dropdown-menu .dropdown-divider{border-color:var(--border)}.card-lahan.p-3.p-md-4.text-center{border-radius:var(--radius-lg);transition:var(--transition)}.card-lahan.p-3.p-md-4.text-center:hover{transform:translateY(-4px);box-shadow:var(--shadow-clay)}.card-lahan.p-3.p-md-4.text-center:active{transform:translateY(-1px) scale(0.97);box-shadow:var(--shadow-clay-sm-inset)}.card-lahan.p-3.p-md-4.text-center i{font-size:1.5rem;width:56px;height:56px;display:flex;align-items:center;justify-content:center;margin:0 auto 0.5rem;background:var(--primary-light);border-radius:var(--radius);transition:var(--transition)}.card-lahan.p-3.p-md-4.text-center:hover i{background:var(--primary);color:white!important;transform:scale(1.1)}.card-lahan.p-3.p-md-4.text-center img{width:56px;height:56px;display:block;margin:0 auto 0.5rem;object-fit:contain;padding:4px;background:var(--primary-light);border-radius:var(--radius);transition:var(--transition)}.card-lahan.p-3.p-md-4.text-center:hover img{background:var(--primary);transform:scale(1.1)}[class*="-filter-row"],[class*="-filter-bar"],[class*="-filter-chip"],[class*="-filter-btn"],.shop-chips,.shop-chip,.rent-filter-chips,.rent-chip,.rent-chip-sm,.mp-filter-row,.mp-chip{box-shadow:none!important}
