.landing-container{max-width:1200px;margin:0 auto;padding:0 1rem}
.landing-section{padding:3rem 0}
.landing-section-title{text-align:center;font-size:1.8rem;margin-bottom:2rem;color:var(--text)}

/* Hero */
.landing-hero{position:relative;min-height:420px;background:linear-gradient(135deg,var(--primary),var(--primary-dark,#1d4ed8));background-size:cover;background-position:center;display:flex;align-items:center}
.landing-hero-overlay{width:100%;min-height:420px;display:flex;align-items:center;background:rgba(0,0,0,.35)}
.landing-hero-content{max-width:1200px;margin:0 auto;padding:3rem 2rem;color:#fff}
.landing-hero-content h1{font-size:2.8rem;margin-bottom:.5rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}
.landing-hero-content p{font-size:1.2rem;margin-bottom:1.5rem;opacity:.9}
.landing-hero-content .btn{font-size:1.1rem;padding:.8rem 2rem;border-radius:var(--radius)}

/* Category grid */
.landing-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}
.landing-cat-card{display:flex;flex-direction:column;align-items:center;padding:1.2rem;background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;text-decoration:none;color:var(--text)}
.landing-cat-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px rgba(0,0,0,.12);text-decoration:none}
.landing-cat-card img{width:80px;height:80px;object-fit:cover;border-radius:50%;margin-bottom:.5rem}
.landing-cat-card span{font-weight:600;text-align:center}

/* Product grid */
.landing-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.2rem}
.landing-product-card{display:block;background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:transform .2s,box-shadow .2s;text-decoration:none;color:var(--text)}
.landing-product-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px rgba(0,0,0,.12);text-decoration:none}
.landing-product-img{position:relative;height:200px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;overflow:hidden}
.landing-product-img .product-img-placeholder{font-size:3rem}
.landing-badge-sale{position:absolute;top:8px;left:8px;background:var(--danger,#dc2626);color:#fff;padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:600}
.landing-product-info{padding:1rem}
.landing-product-info h3{font-size:.95rem;margin-bottom:.3rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.landing-product-info .product-seller{font-size:.8rem;color:var(--text-secondary);margin-bottom:.3rem}
.landing-product-info .product-price{margin-bottom:.3rem}
.landing-product-info .price-current{font-weight:700;color:var(--primary);font-size:1.1rem}
.landing-product-info .price-old{text-decoration:line-through;color:#999;font-size:.85rem;margin-right:.4rem}
.landing-product-info .product-rating .star{color:#fbbf24;font-size:.85rem}
.landing-product-info .product-rating .star.filled{color:#f59e0b}
.landing-section-cta{text-align:center;margin-top:2rem}

/* Banner */
.landing-banner{padding:0}
.landing-banner-img{width:100%;max-height:400px;object-fit:cover;display:block}

/* Text block */
.landing-text-block{max-width:800px;margin:0 auto;text-align:center}
.landing-text-block h2{margin-bottom:1rem;color:var(--text)}
.landing-text-block p{line-height:1.8;color:var(--text-secondary)}

/* HTML block */
.landing-html{padding:2rem 0}

/* Carousel */
.landing-carousel{display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem;scroll-snap-type:x mandatory}
.landing-cat-card{min-width:140px;scroll-snap-align:start}
.landing-product-carousel{display:flex;gap:1.2rem;overflow-x:auto;padding-bottom:1rem;scroll-snap-type:x mandatory}
.landing-product-carousel .landing-product-card{min-width:240px;flex-shrink:0;scroll-snap-align:start}

/* Admin sections list */
.landing-sections-list{display:flex;flex-direction:column;gap:.5rem}
.landing-section-item{display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:box-shadow .2s}
.landing-section-item:hover{box-shadow:0 2px 8px rgba(0,0,0,.08)}
.landing-section-item.dragging{opacity:.5;box-shadow:0 4px 16px rgba(0,0,0,.2)}
.landing-section-drag{cursor:grab;font-size:1.2rem;color:var(--text-secondary);user-select:none;padding:0 .5rem}
.landing-section-drag:active{cursor:grabbing}
.landing-section-seq{min-width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--primary);color:#fff;border-radius:50%;font-size:.75rem;font-weight:700;flex-shrink:0}
.landing-section-info{flex:1;display:flex;align-items:center;gap:.5rem}
.landing-section-type-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;background:var(--primary);color:#fff}
.landing-section-actions{display:flex;gap:.4rem;align-items:center}

/* Admin empty state */
.admin-empty{text-align:center;padding:3rem;color:var(--text-secondary);font-style:italic}

/* Code editor */
.code-editor{font-family:'Courier New',monospace;font-size:.85rem;line-height:1.5;tab-size:2;background:#1e293b;color:#e2e8f0;border:1px solid #334155;border-radius:var(--radius);padding:.8rem;resize:vertical;width:100%;box-sizing:border-box}
.code-editor:focus{outline:2px solid var(--primary);border-color:var(--primary)}

/* Responsive */
@media(max-width:768px){
  .landing-hero-content h1{font-size:1.8rem}
  .landing-hero-overlay{min-height:300px}
  .landing-hero{min-height:300px}
  .landing-cat-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}
  .landing-product-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .landing-section-item{flex-wrap:wrap}
  .landing-section-actions{width:100%;justify-content:flex-end}
}
