/* Unified layout (standalone in this file) */
:root {
  --site-max-width: 1600px;
  --site-gutter-x: 28px;
  --section-spacing-vertical: 26px;
}

.ee-wrap,
.section-container,
.skills-section,
.contact-section,
#projects,
#experience,
#education,
.main-section,
.section {
  max-width: var(--site-max-width);
  margin: 0 auto;
  padding: var(--section-spacing-vertical) var(--site-gutter-x);
  box-sizing: border-box;
}

.ee-heading,
.section-heading,
.skills-section h2,
.contact-section h2,
.section h2 {
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  text-align: left;
}

.project-container,
.ee-grid,
.edu-grid,
#ee-grid,
#edu-grid,
.project-container {
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 768px) {
  .ee-wrap,
  .section-container,
  .skills-section,
  .contact-section,
  .project-container {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    box-sizing: border-box;
  }
}

/* Experience section -- updated to use wider layout */
.ee-wrap{
  /* max-width and padding already set by unified rules above */
}
.ee-heading{
  font-size:clamp(1.6rem,2vw,2rem);
  font-weight:700;
  margin-bottom:14px;
  color:var(--text-color);
}

/* Controls */
.ee-controls{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:14px;
  flex-wrap:wrap;
  padding-right:6px;
}
.segmented{ display:inline-flex; gap:6px; padding:6px; border-radius:999px; background: rgba(0,0,0,.04); border:1px solid rgba(0,0,0,.06); }
.seg-btn{ padding:7px 12px; border-radius:999px; border:0; cursor:pointer; background:transparent; font-weight:600; color:var(--text-color); }
.seg-btn.is-active{ background: rgba(74,108,247,.12); color:var(--primary-color); box-shadow: inset 0 0 0 1px rgba(74,108,247,.18); }
.searchbar{ display:flex; align-items:center; gap:8px; padding:8px 12px; border-radius:12px; background: rgba(0,0,0,.03); border:1px solid rgba(0,0,0,.06); min-width:min(360px,40%); }
.searchbar input{ flex:1; border:0; outline:0; background:transparent; color:var(--text-color); font-size:14px; }

/* Grid: 3 columns on wide screens, 2 on medium, 1 on small */
.ee-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:22px;
}
@media (max-width:1400px){ .ee-grid{ grid-template-columns: repeat(2, 1fr); gap:18px; } }
@media (max-width:980px){ .ee-grid{ grid-template-columns: 1fr; gap:14px; } }

/* Card */
.ee-card{
  background: rgba(255,255,255,.94);
  border:1px solid rgba(0,0,0,.06);
  border-radius:12px;
  padding:14px;
  box-shadow: 0 10px 22px rgba(0,0,0,.06);
  display:flex;
  flex-direction:column;
  gap:10px;
  transition: transform .16s, box-shadow .16s;
}
.ee-card:hover{ transform:translateY(-6px); box-shadow: 0 18px 40px rgba(0,0,0,.08); }

/* Head */
.card-head{ display:flex; gap:12px; align-items:flex-start; }
.avatar{ width:56px; height:56px; border-radius:10px; object-fit:cover; border:1px solid rgba(0,0,0,.06); background:#fff; flex-shrink:0; }
.head-txt{ display:flex; flex-direction:column; gap:6px; }
.head-txt h4{ margin:0; font-size:1.02rem; color:var(--text-color); }
.meta{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }

/* badge / chips */
.badge{ font-size:.82rem; font-weight:700; color:var(--primary-color); background:rgba(74,108,247,.09); padding:6px 8px; border-radius:999px; border:1px solid rgba(74,108,247,.18); }
.badge.live{ color:#0a7a28; background: rgba(13,181,61,.08); border-color: rgba(13,181,61,.12); }
.chip{ display:inline-flex; gap:8px; align-items:center; font-size:.88rem; padding:6px 8px; border-radius:999px; border:1px solid rgba(0,0,0,.06); background: rgba(0,0,0,.03); }

/* content */
.brief-list{ margin:0; padding-left:18px; list-style:none; color:var(--text-color); }
.brief-list li{ margin:8px 0; font-size:.95rem; position:relative; padding-left:6px; }
.brief-list li::before{ content:'•'; position:absolute; left:-12px; color:var(--primary-color); font-weight:700; }

/* tags */
.tags{ display:flex; gap:8px; flex-wrap:wrap; margin-top:6px; list-style:none; padding:0; }
.tags li{ padding:6px 8px; border-radius:999px; background:rgba(0,0,0,.035); border:1px solid rgba(0,0,0,.06); font-size:.82rem; }

/* details */
.disclose{ display:flex; justify-content:space-between; align-items:center; padding:8px 10px; border-radius:10px; border:1px solid rgba(0,0,0,.06); background:transparent; cursor:pointer; }
.disclose i{ transition: transform .18s; }
.disclose[aria-expanded="true"] i{ transform: rotate(180deg); }
.details{ margin-top:8px; padding-left:18px; }
.details[hidden]{ display:none; }

/* type accent */
.type-intern{ border-left:4px solid rgba(74,108,247,.32); }
.type-full{ border-left:4px solid rgba(0,0,0,.12); }

/* appear */
@media (prefers-reduced-motion: no-preference){
  .ee-card{ opacity:0; transform: translateY(10px); transition: opacity .45s ease, transform .45s ease; }
  .ee-card.appear{ opacity:1; transform:none; }
}

/* dark mode */
body.dark-mode .ee-card{ background: rgba(22,22,24,.56); border-color: rgba(255,255,255,.06); box-shadow: 0 10px 24px rgba(0,0,0,.45); }
