:root{--green:#1f7a4d;--green-dark:#155c39;--bg:#f7f8f5;--card:#fff;--text:#222;--muted:#666;--border:#e3e5df;--danger:#c0392b;--warn:#e08e00;}
*{box-sizing:border-box}
body{margin:0;font-family:'Vazirmatn',Tahoma,sans-serif;background:var(--bg);color:var(--text);line-height:1.8}
.container{max-width:1100px;margin:0 auto;padding:0 16px}
a{color:inherit;text-decoration:none}
.site-header{background:var(--green);color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.header-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:14px 0;gap:10px}
.logo{font-weight:900;font-size:1.2rem;color:#fff}
.topnav{display:flex;gap:6px;flex-wrap:wrap}
.topnav a{padding:8px 14px;border-radius:20px;font-size:.92rem;transition:.2s}
.topnav a:hover{background:rgba(255,255,255,.15)}
.topnav a.active{background:#fff;color:var(--green-dark);font-weight:700}
.page-title,.section-title{font-size:1.5rem;margin:0 0 20px;position:relative;padding-right:14px}
.section-title::before{content:'';position:absolute;right:0;top:6px;bottom:6px;width:5px;border-radius:3px;background:var(--green)}
.section{padding-top:34px;padding-bottom:20px}
.section-alt{background:#eef3ec;padding:38px 0;margin-top:30px}
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;padding-bottom:40px}
.post-card{background:var(--card);border-radius:14px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.06);transition:.2s;display:block}
.post-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(0,0,0,.1)}
.post-card-img{height:170px;background:#eee;overflow:hidden}
.post-card-img img{width:100%;height:100%;object-fit:cover}
.no-img{display:flex;align-items:center;justify-content:center;height:100%;color:var(--muted)}
.post-card-body{padding:14px}
.post-card-body h3{margin:6px 0;font-size:1.05rem}
.post-cats{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.tag{background:#eaf5ee;color:var(--green-dark);font-size:.75rem;padding:3px 10px;border-radius:12px}
.loc{color:var(--muted);font-size:.85rem;margin:0}
.empty{color:var(--muted);padding:20px 0}
.slider{position:relative;height:440px;overflow:hidden;background:#155c39}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .8s;display:flex;align-items:center;color:#fff}
.slide.active{opacity:1;z-index:1}
.slide-inner h2{font-size:2.4rem;font-weight:900;margin:0 0 10px;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.slide-inner p{font-size:1.15rem;max-width:560px;margin:0 0 22px;text-shadow:0 1px 8px rgba(0,0,0,.35)}
.slide-btn{display:inline-block;background:#fff;color:var(--green-dark);padding:11px 26px;border-radius:26px;font-weight:700}
.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;background:rgba(255,255,255,.25);color:#fff;border:none;width:44px;height:44px;border-radius:50%;font-size:1.8rem;cursor:pointer}
.slider-prev{right:16px}.slider-next{left:16px}
.dots{position:absolute;bottom:14px;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:5}
.dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer}
.dot.active{background:#fff;width:26px;border-radius:6px}
.stats-bar{background:#fff;border-bottom:1px solid var(--border)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center;padding:18px 0}
.stats-grid b{display:block;font-size:1.7rem;color:var(--green)}
.stats-grid span{color:var(--muted);font-size:.85rem}
.cat-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.cat-tile{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px 8px;text-align:center;font-weight:700;transition:.2s}
.cat-tile span{display:block;font-size:2rem}
.cat-tile:hover{transform:translateY(-4px);color:var(--green-dark)}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}
.feature{background:#fff;border-radius:14px;padding:22px;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.feature.plain{border:1px solid var(--border);box-shadow:none}
.feature span{font-size:2.2rem}
.feature h3{margin:8px 0 6px;font-size:1.08rem}
.feature p{margin:0;color:var(--muted);font-size:.93rem}
.about p{max-width:820px;font-size:1.02rem}
.about h3{margin-top:22px;color:var(--green-dark)}
.cta{background:linear-gradient(135deg,#155c39,#1f7a4d);color:#fff;text-align:center;padding:44px 0}
.cta h2{margin:0 0 8px}.cta p{margin:0 0 18px}
.post-detail{padding:30px 0 60px}
.back-link{display:inline-block;margin-bottom:16px;color:var(--green-dark);font-weight:700}
.gallery-main{border-radius:14px;overflow:hidden;height:400px;background:#eee}
.gallery-main img{width:100%;height:100%;object-fit:cover}
.gallery-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:6px}
.gallery-thumbs img{width:80px;height:60px;object-fit:cover;border-radius:8px;cursor:pointer;opacity:.6;flex-shrink:0}
.gallery-thumbs img.active,.gallery-thumbs img:hover{opacity:1;outline:2px solid var(--green)}
.description{margin:20px 0;font-size:1.02rem;white-space:normal}
.location-box{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px;margin:20px 0}
.maps-link{display:inline-block;margin-top:10px;color:var(--green-dark);font-weight:700}
.comments-section{margin-top:30px}
.comment{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-bottom:10px}
.comment-head{display:flex;justify-content:space-between;align-items:center}
.comment-head .date{color:var(--muted);font-size:.8rem}
.notice{background:#eaf5ee;color:var(--green-dark);padding:10px 14px;border-radius:10px}
.comment-form{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px;margin-top:20px}
.comment-form input,.comment-form textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:8px;margin:6px 0 14px;font-family:inherit}
.comment-form button,.btn-primary{background:var(--green);color:#fff;border:none;padding:10px 22px;border-radius:8px;font-weight:700;cursor:pointer}
.site-footer{background:#fff;border-top:1px solid var(--border);margin-top:40px;padding:20px 0}
.site-footer .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.85rem}
.admin-link{color:var(--green-dark);font-weight:700}
.admin-login-body{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--green)}
.login-box{background:#fff;padding:30px;border-radius:16px;width:320px;text-align:center}
.login-box input{width:100%;padding:10px;margin:14px 0;border:1px solid var(--border);border-radius:8px}
.login-box button{width:100%;background:var(--green);color:#fff;border:none;padding:10px;border-radius:8px;font-weight:700;cursor:pointer}
.login-box .error{color:var(--danger)}
.login-box .back-link{display:block;margin-top:14px;font-size:.85rem}
.admin-main{padding:26px 0 60px}
.admin-tabs{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}
.tab-btn{background:#fff;border:1px solid var(--border);padding:10px 18px;border-radius:10px;cursor:pointer;font-family:inherit;font-weight:700}
.tab-btn.active{background:var(--green);color:#fff;border-color:var(--green)}
.tab-panel.hidden{display:none}
.post-form{background:#fff;border:1px solid var(--border);border-radius:14px;padding:22px;max-width:700px}
.post-form label{display:block;font-weight:700;margin:14px 0 6px}
.post-form input[type=text],.post-form textarea,.post-form input[type=file],.banner-edit input[type=text]{width:100%;padding:10px;border:1px solid var(--border);border-radius:8px;font-family:inherit}
.checkbox-row{display:flex;flex-wrap:wrap;gap:8px}
.checkbox-pill{background:#eaf5ee;border-radius:20px;padding:6px 12px;font-weight:400;display:flex;align-items:center;gap:6px;cursor:pointer}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hint{font-size:.85rem;color:var(--muted)}
.btn-primary{margin-top:20px;padding:12px 28px;font-size:1rem}
.admin-post-list{display:flex;flex-direction:column;gap:10px}
.admin-post-row{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:10px}
.admin-post-row img{width:60px;height:50px;object-fit:cover;border-radius:6px;background:#eee}
.admin-post-info{flex:1;display:flex;flex-direction:column;font-size:.9rem}
.admin-post-info span{color:var(--muted);font-size:.8rem}
.btn-small{padding:6px 14px;border-radius:8px;border:none;font-weight:700;cursor:pointer;font-size:.82rem;background:#eee;font-family:inherit}
.btn-small:disabled{opacity:.4;cursor:default}
.btn-danger{background:#fbe4e1;color:var(--danger)}
.btn-ok{background:#e2f5e6;color:var(--green-dark)}
.btn-warn{background:#fff2df;color:var(--warn)}
.admin-comment.faded{opacity:.65}
.post-ref{font-size:.82rem;color:var(--muted);margin:2px 0 6px}
.comment-actions{display:flex;gap:8px;margin-top:8px}
.comment-actions form{display:inline}
.banner-row{display:grid;grid-template-columns:220px 1fr auto;gap:14px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:12px;margin-bottom:12px;align-items:start}
.banner-preview{height:120px;border-radius:10px;color:#fff;display:flex;align-items:flex-end;padding:10px;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.banner-edit{display:flex;flex-direction:column;gap:8px}
.banner-edit .btn-small{align-self:flex-start}
.banner-actions{display:flex;flex-direction:column;gap:6px}
@media(max-width:760px){
  .slider{height:340px}.slide-inner h2{font-size:1.5rem}.slide-inner p{font-size:.95rem}
  .stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}
  .cat-tiles{grid-template-columns:repeat(2,1fr)}
  .grid-2{grid-template-columns:1fr}
  .banner-row{grid-template-columns:1fr}
  .header-inner{flex-direction:column;align-items:flex-start}
}
