/* Proje modülü — yalnızca --dj-* token'ları ve .proje- önekli sınıflar */
.proje-grid{display:grid;gap:var(--dj-gap,24px);grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}
.proje-grid--2{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr))}
.proje-grid--4{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
.proje-more{margin-top:36px;text-align:center}

/* durum rozetleri */
.proje-badge{display:inline-flex;align-items:center;min-height:26px;padding:0 12px;border-radius:999px;font-size:.78rem;font-weight:600;background:var(--dj-surface);color:var(--dj-text);box-shadow:0 2px 8px rgb(0 0 0 / .12)}
.proje-badge--ongoing{background:var(--dj-accent,var(--dj-primary));color:var(--dj-accent-ink,var(--dj-primary-ink))}
.proje-badge--completed{background:var(--dj-primary);color:var(--dj-primary-ink)}
.proje-badge--upcoming{background:var(--dj-dark,#1c1c1c);color:var(--dj-dark-ink,#fff)}

/* kart */
.proje-card{display:flex;flex-direction:column;padding:0;overflow:hidden;color:inherit;text-decoration:none}
.proje-card__media{position:relative;aspect-ratio:4/3;background:var(--dj-bg-alt);overflow:hidden}
.proje-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--dj-ease,ease)}
.proje-card:hover .proje-card__media img{transform:scale(1.04)}
.proje-card__media .proje-badge{position:absolute;top:12px;left:12px}
.proje-card__ph{position:absolute;inset:0;display:grid;place-items:center;color:var(--dj-muted)}
.proje-card__ph .ic{width:44px;height:44px}
.proje-card__body{display:flex;flex-direction:column;gap:10px;padding:20px 22px 24px;flex:1}
.proje-card__body h3{margin:0;font-size:1.2rem;line-height:1.3}
.proje-card__loc{display:flex;align-items:center;gap:6px;margin:0;color:var(--dj-muted);font-size:.9rem}
.proje-card__loc .ic{width:16px;height:16px;flex:none}
.proje-card__sum{margin:0;color:var(--dj-muted);font-size:.95rem}
.proje-card__meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin:auto 0 0;padding-top:4px;font-size:.88rem;color:var(--dj-muted)}

/* ilerleme çubuğu */
.proje-progress{display:grid;gap:8px}
.proje-progress__top{display:flex;justify-content:space-between;gap:12px;font-size:.88rem;color:var(--dj-muted)}
.proje-progress__top strong{color:var(--dj-text);font-size:.95rem}
.proje-progress__bar{height:10px;border-radius:999px;background:var(--dj-bg-alt);border:1px solid var(--dj-border);overflow:hidden}
.proje-progress__bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--dj-primary),var(--dj-accent,var(--dj-primary)))}

/* liste sekmeleri */
.proje-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}
.proje-tabs a{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 20px;border-radius:999px;border:1px solid var(--dj-border);color:var(--dj-text);text-decoration:none;font-weight:600;font-size:.92rem}
.proje-tabs a small{color:var(--dj-muted);font-weight:500}
.proje-tabs a:hover{border-color:var(--dj-primary)}
.proje-tabs a.is-active{background:var(--dj-primary);border-color:var(--dj-primary);color:var(--dj-primary-ink)}
.proje-tabs a.is-active small{color:inherit;opacity:.8}

/* portfolyo karoları */
.proje-tiles{display:grid;gap:var(--dj-gap,20px);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px}
.proje-tile{position:relative;display:block;overflow:hidden;border-radius:var(--dj-radius-lg);background:var(--dj-dark,#1c1c1c);color:#fff;text-decoration:none}
.proje-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--dj-ease,ease)}
.proje-tile:hover img{transform:scale(1.05)}
.proje-tile__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgb(0 0 0 / 0) 35%,rgb(0 0 0 / .72))}
.proje-tile__text{position:absolute;left:0;right:0;bottom:0;display:grid;gap:4px;padding:20px 22px;justify-items:start}
.proje-tile__text strong{font:700 1.15rem/1.3 var(--dj-font-heading,inherit)}
.proje-tile__text small{opacity:.85}
@media(min-width:900px){
  .proje-tiles{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:240px}
  .proje-tiles .proje-tile:nth-child(6n+1){grid-column:span 2;grid-row:span 2}
  .proje-tiles .proje-tile:nth-child(6n+4){grid-column:span 2}
  .proje-tiles--grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));grid-auto-rows:300px}
  .proje-tiles--grid .proje-tile:nth-child(n){grid-column:auto;grid-row:auto}
}

/* proje sayfası */
.proje-layout{display:grid;gap:40px;align-items:start}
.proje-main{min-width:0}
.proje-side{display:grid;gap:20px;min-width:0}
@media(min-width:1000px){
  .proje-layout{grid-template-columns:minmax(0,1fr) 380px;gap:56px}
  .proje-side{position:sticky;top:96px}
}
.proje-gallery__main{margin:0;aspect-ratio:16/10;border-radius:var(--dj-radius-lg);overflow:hidden;background:var(--dj-bg-alt)}
.proje-gallery__main img{width:100%;height:100%;object-fit:cover}
.proje-gallery__thumbs{display:flex;gap:10px;margin:12px 0 0;padding:0 0 6px;list-style:none;overflow-x:auto}
.proje-gallery__thumbs a{display:block;width:96px;aspect-ratio:4/3;border-radius:var(--dj-radius-md);overflow:hidden;border:2px solid transparent;opacity:.75;transition:opacity .2s,border-color .2s}
.proje-gallery__thumbs a:hover,.proje-gallery__thumbs a[aria-current="true"]{opacity:1;border-color:var(--dj-primary)}
.proje-gallery__thumbs img{width:100%;height:100%;object-fit:cover}
.proje-statuscard{padding:24px 26px;background:var(--dj-bg-alt);border-radius:var(--dj-radius-lg);display:grid;gap:10px}
.proje-statuscard p{margin:0}
.proje-facts{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:28px 0 0}
.proje-facts div{padding:16px 18px;background:var(--dj-bg-alt);border-radius:var(--dj-radius-md)}
.proje-facts dt{font-size:.82rem;color:var(--dj-muted);margin:0 0 4px}
.proje-facts dd{margin:0;font-weight:700}
.proje-block{margin-top:48px}
.proje-gallery+.proje-block{margin-top:28px}
.proje-block h2{margin:0 0 16px;font-size:var(--dj-fs-h3,1.4rem)}
.proje-features{display:grid;gap:10px 24px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));padding:0;list-style:none}
.proje-sidecard{display:grid;gap:14px;padding:26px;justify-items:start}
.proje-sidecard h3,.proje-sidecard p{margin:0}
.proje-sidecard .dj-form,.proje-actions{width:100%}
.proje-side__loc{display:flex;align-items:center;gap:8px}
.proje-side__loc .ic{width:18px;height:18px;color:var(--dj-primary)}
.proje-actions{display:grid;gap:10px}

/* daire tipleri */
.proje-units{display:grid;gap:var(--dj-gap,20px);grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}
.proje-unit{display:flex;flex-direction:column;padding:0;overflow:hidden}
.proje-unit__plan{display:grid;place-items:center;aspect-ratio:4/3;padding:14px;background:var(--dj-bg-alt)}
.proje-unit__plan img{max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply}
.proje-unit__body{display:grid;gap:8px;padding:18px 20px 22px}
.proje-unit__body h3{margin:0;font-size:1.1rem}
.proje-unit__facts{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;list-style:none;font-size:.9rem;color:var(--dj-muted)}
.proje-unit__facts li:first-child{color:var(--dj-text);font-weight:700}
.proje-unit__price{margin:0;font-weight:700;color:var(--dj-primary-text,var(--dj-primary))}
.proje-unit__project{margin:0;font-size:.88rem}
.proje-units--list{grid-template-columns:1fr}
.proje-units--list .proje-unit{flex-direction:row;align-items:stretch}
.proje-units--list .proje-unit__plan{flex:0 0 220px;aspect-ratio:auto}

/* günlük */
.proje-timeline{list-style:none;margin:20px 0 0;padding:0 0 0 22px;border-left:2px solid var(--dj-border);display:grid;gap:30px}
.proje-timeline>li{position:relative;display:grid;gap:8px;justify-items:start}
.proje-timeline>li::before{content:"";position:absolute;left:-30px;top:6px;width:14px;height:14px;border-radius:50%;background:var(--dj-primary);border:3px solid var(--dj-bg)}
.proje-timeline time{font-size:.85rem;font-weight:600;color:var(--dj-muted)}
.proje-timeline__pct{display:inline-flex;padding:2px 10px;border-radius:999px;background:var(--dj-primary-soft);color:var(--dj-primary-text,var(--dj-primary));font-size:.8rem;font-weight:700}
.proje-timeline h3{margin:0;font-size:1.05rem}
.proje-timeline p{margin:0;color:var(--dj-muted)}
.proje-timeline__photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:6px 0 0;padding:0;list-style:none;width:100%}
.proje-timeline__photos a{display:block;aspect-ratio:4/3;border-radius:var(--dj-radius-md);overflow:hidden}
.proje-timeline__photos img{width:100%;height:100%;object-fit:cover}
.proje-timeline--compact{gap:22px}

/* inşaat ilerleme bölümü */
.proje-progresslist{display:grid;gap:var(--dj-gap,24px)}
.proje-progressitem{display:grid;gap:28px;padding:clamp(22px,3vw,34px)}
.proje-progressitem__main{display:grid;gap:10px;align-content:start}
.proje-progressitem__main h3{margin:0}
.proje-progressitem__main p{margin:0}
.proje-progressitem__log h4{margin:0}
@media(min-width:900px){
  .proje-progressitem:not(.is-stacked){grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
}
