/* Mobil-first • Aydınlık • Flat • İnce fontlar */
:root{
  --bg:#fafbfd;
  --card:#ffffff;
  --text:#1a202c;
  --muted:#6b7280;
  --border:#e5e7eb;
  --primary:#3b82f6;
  --primary-light:#eff6ff;
  --danger:#ef4444;
  --danger-light:#fef2f2;
  --success:#10b981;
  --success-light:#f0fdf4;
  --shadow:0 1px 3px rgba(0,0,0,.04), 0 1px 2px rgba(0,0,0,.03);
  --shadow-lg:0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -2px rgba(0,0,0,.04);
  --radius-sm:10px;
  --radius:14px;
  --radius-lg:18px;
  --radius-full:9999px;
}

*{box-sizing:border-box}
html,body{height:100%;margin:0}

body{
  font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,sans-serif;
  font-weight:300;
  background:var(--bg);
  color:var(--text);
  line-height:1.7;
  font-size:16px;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

a{color:inherit;text-decoration:none}

/* Container */
.container{
  max-width:1140px;
  margin:0 auto;
  padding:24px 20px;
}
@media (min-width:720px){
  .container{padding:32px 28px}
}
@media (max-width:600px){
  .container{padding:0}
}

/* Topbar */
.topbar{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(140%) blur(12px);
  border-bottom:1px solid var(--border);
  z-index:100;
  box-shadow:0 1px 2px rgba(0,0,0,.02);
}
.topbar__inner{
  max-width:1140px;
  margin:0 auto;
  padding:16px 20px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
@media (min-width:720px){
  .topbar__inner{padding:18px 28px}
}

.topbar__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.topbar__left{display:flex;align-items:center;gap:10px}
.topbar__hamburger{
  width:44px;height:44px;
  border-radius:14px;
  border:1px solid var(--border);
  background:#fff;
  display:none;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.topbar__hamburger i{color:var(--muted);font-size:18px}
.topbar__hamburger:hover{border-color:rgba(59,130,246,.28)}
.topbar__hamburger:hover i{color:var(--primary)}
@media (max-width:600px){
  .topbar__hamburger{display:inline-flex}
  .topbar__inner{padding:10px 12px}
}
.topbar__user{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
}
.brand__mark{
  width:48px;
  height:48px;
  border-radius:var(--radius);
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, var(--primary-light) 0%, rgba(59,130,246,.12) 100%);
  font-size:22px;
  color:var(--primary);
}
.brand__text{
  font-weight:600;
  letter-spacing:-.02em;
  font-size:18px;
  color:var(--text);
}
@media (max-width:520px){
  .brand__text{display:none}
}

/* App shell + left sidebar */
.appShell{
  --side-collapsed: 72px;
  --side-expanded: 260px;
  --side-w: var(--side-collapsed);
  --topbar-h: 76px; /* JS updates this */
  display:block;
  min-height:100vh;
  padding-top:var(--topbar-h);
}
.appShell.is-sidenav-open{--side-w: var(--side-expanded);}
.sideNav{
  position:fixed;
  left:0;
  top:var(--topbar-h);
  height:calc(100vh - var(--topbar-h));
  width:var(--side-w);
  border-right:1px solid var(--border);
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(140%) blur(12px);
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:14px 10px;
  transition:width 200ms ease;
  z-index:120;
  overflow:hidden; /* keep shell clean; scroll links area instead */
}
.sideNav__brand{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px;
  border-radius:14px;
}
.sideNav__brand:hover{background:rgba(59,130,246,.06)}
.sideNav__mark{
  width:40px;height:40px;border-radius:14px;
  display:grid;place-items:center;
  background:linear-gradient(135deg, var(--primary-light) 0%, rgba(59,130,246,.12) 100%);
  color:var(--primary);
  font-size:18px;
  flex:0 0 40px;
}
.sideNav__links{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:0 6px;
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:thin;          /* Firefox */
  scrollbar-color:var(--border) transparent;
}
.sideNav__links::-webkit-scrollbar{width:6px}
.sideNav__links::-webkit-scrollbar-track{background:transparent}
.sideNav__links::-webkit-scrollbar-thumb{background:rgba(0,0,0,.16);border-radius:999px}
.sideNav__links::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.24)}

/* Dashboard photo modal: ensure it's always above transforms and lock scroll */
body.is-photo-modal-open{overflow:hidden}
body.is-photo-modal-open .appMain{transform:none !important}
body.is-photo-modal-open .sideNav{transform:none !important}
.sideNav__item{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 16px;
  border-radius:14px;
  color:var(--text);
  font-weight:600;
  white-space:nowrap;
  background:rgba(0,0,0,.015);
  border:1px solid rgba(0,0,0,.03);
}
.sideNav__item i{

  text-align:center;
  border-radius:10px;
  padding:6;
  margin-left: -7px;
  background:rgba(0,0,0,.03);
}
.sideNav__item.is-disabled{
  opacity:.55;
  cursor:default;
  pointer-events:none;
}
.sideNav__exc i{color:var(--primary)}
.sideNav__item i{color:var(--muted);font-size:16px}
.sideNav__item span{
  font-size: 14px;
  opacity:0;
  max-width:0;
  overflow:hidden;
  transition:opacity 140ms ease, max-width 200ms ease;
}
.appShell.is-sidenav-open .sideNav__item span{opacity:1;max-width:160px;}
.sideNav__item:hover{background:rgba(59,130,246,.06)}
.sideNav__item:hover i{color:var(--primary)}

/* Color accents per menu item (rcChips-like) */
.sideNav__item--switch i{background:rgba(59,130,246,.10);color:#2563eb}
.sideNav__item--exc i{background:rgba(139,92,246,.10);color:#7c3aed}
.sideNav__item--finds i{background:rgba(100,116,139,.10);color:#475569}
.sideNav__item--new i{background:rgba(16,185,129,.10);color:#059669}
.sideNav__item--map i{background:rgba(59,130,246,.10);color:#2563eb}
.sideNav__item--bulk i{background:rgba(251,191,36,.12);color:#d97706}
.sideNav__item--admin i{background:rgba(239,68,68,.10);color:#b91c1c}
.sideNav__sep{height:1px;background:var(--border);margin:8px 10px}
.sideNav__title{
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted);
  padding:0 14px;
  font-weight:800;
  opacity:0;
  max-height:0;
  overflow:hidden;
  transition:opacity 140ms ease, max-height 200ms ease;
}
.appShell.is-sidenav-open .sideNav__title{opacity:1;max-height:24px;margin-top:2px}
.sideNav__bottom{margin-top:auto;padding:0 6px}
.sideNav__logout{margin-top:10px}
.sideNav__logout i{color:var(--danger)}
.sideNav__logout:hover{background:rgba(239,68,68,.06)}
.sideNav__logout:hover i{color:var(--danger)}
.sideNav__toggle{
  width:100%;
  border:none;
  background:transparent;
  cursor:pointer;
}
.sideNav__toggle i{transition:transform 200ms ease}
.appShell.is-sidenav-open .sideNav__toggle i{transform:rotate(180deg)}
.appMain{
  margin-left:var(--side-w);
  min-width:0;
  transition:margin-left 200ms ease, transform 200ms ease;
}
.appShell.is-authless .appMain{margin-left:0}

.sideNavOverlay{
  position:fixed;
  inset:var(--topbar-h) 0 0 0;
  background:rgba(0,0,0,.35);
  z-index:110; /* below sideNav(120), above appMain */
}
@media (max-width:768px){
  /* On mobile/tablet: keep space for collapsed sidebar */
  .topbar{z-index:110}
  .topbar__user .pill{
    font-size:0;
    padding:10px 12px;
  }
  .topbar__user .pill i{
    font-size:16px;
  }
  .topbar__user .btn{
    padding:10px 14px;
    font-size:0;
  }
  .topbar__user .btn i{
    font-size:18px;
  }
  /* Admin panel header buttons */
  .card > div:first-child > div:last-child .btn{
    padding:10px 14px;
    font-size:0;
  }
  .card > div:first-child > div:last-child .btn i{
    font-size:18px;
  }
}

@media (max-width:1024px){
  .appShell.is-sidenav-open .sideNavOverlay{display:block !important;}
  body.is-sidenav-modal{overflow:hidden}
  /* Don't resize content; shift it */
  .appMain{margin-left:var(--side-collapsed);transform:translateX(0)}
  .appShell.is-sidenav-open .appMain{transform:translateX(calc(var(--side-expanded) - var(--side-collapsed)))}
}

@media (max-width:600px){
  /* Phone: sidebar hidden by default; open via hamburger */
  .appMain{margin-left:0;transform:translateX(0)}
  .sideNav{width:var(--side-expanded);transform:translateX(-110%);transition:transform 220ms ease, box-shadow 220ms ease}
  .appShell.is-sidenav-open .sideNav{transform:translateX(0);box-shadow:0 18px 40px rgba(0,0,0,.22)}
  .appShell.is-sidenav-open .appMain{transform:translateX(var(--side-expanded))}
  .sideNav__toggle span{opacity:1;max-width:160px} /* on phone, always show label inside drawer */
}

/* Hero */
.hero{
  padding:32px 0 40px;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute;
  inset:50px -40px auto -40px;
  height:340px;
  background-image:url("../gobeklitepe.svg");
  background-repeat:no-repeat;
  background-position:80% 20%;
  background-size:620px auto;
  opacity:.10;
  filter:grayscale(1) contrast(1.05);
  pointer-events:none;
  z-index:0;
}
.hero > *{
  position:relative;
  z-index:1;
}
@media (max-width:768px){
  .hero::before{
    height:260px;
    background-position:90% 18%;
    background-size:460px auto;
    opacity:.09;
  }
}
@media (max-width:420px){
  .hero::before{
    height:220px;
    background-position:95% 12%;
    background-size:380px auto;
    opacity:.08;
  }
}
.hero h1{
  font-size:32px;
  font-weight:600;
  letter-spacing:-.03em;
  margin:0 0 12px;
  color:var(--text);
}
@media (min-width:720px){
  .hero h1{font-size:42px}
}
.hero .lead{
  font-size:17px;
  color:var(--muted);
  max-width:640px;
  margin:0 auto 28px;
  line-height:1.7;
}

/* Card */
.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  padding:28px;
  box-shadow:var(--shadow);
  margin-bottom:20px;
}
@media (min-width:720px){
  .card{padding:36px}
}
@media (max-width:600px){
  .card{padding:15px}
}
.card--soft{
  box-shadow:none;
  background:var(--bg);
}

/* Typography */
.title{
  font-size:24px;
  font-weight:600;
  letter-spacing:-.02em;
  margin:0 0 8px;
  color:var(--text);
}
.lead{
  color:var(--muted);
  line-height:1.7;
  margin:0;
  font-size:15px;
}
.muted{
  color:var(--muted);
  font-size:15px;
}

/* Buttons */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 22px;
  border-radius:var(--radius);
  border:1px solid var(--border);
  font-weight:500;
  font-size:15px;
  cursor:pointer;
  transition:all 180ms ease;
  background:#fff;
  color:var(--text);
  text-align:center;
}
.btn:hover{
  box-shadow:0 4px 6px -1px rgba(0,0,0,.08);
  transform:translateY(-1px);
}
.btn:active{transform:translateY(0)}

.btn--primary{
  background:var(--primary);
  border-color:var(--primary);
  color:#fff;
}
.btn--primary:hover{
  background:#2563eb;
  box-shadow:0 6px 12px -2px rgba(59,130,246,.3);
}

.btn--ghost{
  background:transparent;
  border-color:var(--border);
}
.btn--ghost:hover{
  background:rgba(0,0,0,.02);
}

.btn--danger{
  background:var(--danger-light);
  border-color:#fecaca;
  color:var(--danger);
}
.btn--danger:hover{
  background:var(--danger);
  color:#fff;
}

.btn--success{
  background:var(--success-light);
  border-color:#a7f3d0;
  color:#065f46;
}
.btn--success:hover{
  background:var(--success);
  border-color:var(--success);
  color:#fff;
}

.btn--block{width:100%}

/* Icon-only button helper */
.btn--icon{
  width:40px;
  height:40px;
  padding:0;
  border-radius:14px;
}
.btn--icon i{font-size:16px}

/* Icon badge (şeffaf arka plan icon) */
.icon-badge{
  width:44px;
  height:44px;
  border-radius:var(--radius);
  display:inline-grid;
  place-items:center;
  background:rgba(59,130,246,.08);
  color:var(--primary);
  font-size:18px;
}
.icon-badge--success{
  background:rgba(16,185,129,.08);
  color:var(--success);
}
.icon-badge--danger{
  background:rgba(239,68,68,.08);
  color:var(--danger);
}

/* Grid */
.grid{
  display:grid;
  gap:16px;
}
.grid--2{
  grid-template-columns:1fr;
}
@media (min-width:860px){
  .grid--2{grid-template-columns:1fr 1fr}
}

/* Steps */
.steps{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0 0;
}
.step{
  padding:10px 16px;
  border-radius:var(--radius-full);
  border:1px solid var(--border);
  color:var(--muted);
  font-weight:500;
  font-size:14px;
  background:#fff;
}
.step.is-active{
  color:var(--primary);
  border-color:var(--primary);
  background:var(--primary-light);
  font-weight:600;
}
.step.is-done{
  color:var(--text);
  border-color:var(--success);
  background:var(--success-light);
}

/* Forms */
label{
  display:block;
  font-size:14px;
  font-weight:500;
  color:var(--text);
  margin:16px 0 8px;
}
input,select,textarea{
  width:100%;
  padding:14px 16px;
  border-radius:var(--radius);
  border:1px solid var(--border);
  background:#fff;
  color:var(--text);
  outline:none;
  font-family:inherit;
  font-size:15px;
  transition:border-color 150ms ease, box-shadow 150ms ease;
}
select{
  padding:14px 16px;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  padding-right:40px;
}
input:focus,select:focus,textarea:focus{
  border-color:var(--primary);
  box-shadow:0 0 0 3px rgba(59,130,246,.1);
}
textarea{
  min-height:110px;
  resize:vertical;
  line-height:1.6;
}
input::placeholder,textarea::placeholder{
  color:#9ca3af;
}

.row{
  display:grid;
  gap:16px;
}
/* 3-column form rows (used on view/bulk pages) */
.row--3{
  grid-template-columns:1fr;
}
@media (min-width:760px){
  .row--2{grid-template-columns:1fr 1fr}
  .row--3{grid-template-columns:repeat(2, minmax(0, 1fr))}
}

/* Alerts */
.alert{
  padding:16px 20px;
  border-radius:var(--radius);
  border:1px solid var(--border);
  background:#fafbfd;
  font-size:15px;
  line-height:1.6;
}
.alert--ok{
  border-color:#a7f3d0;
  background:var(--success-light);
  color:#065f46;
}
.alert--err{
  border-color:#fecaca;
  background:var(--danger-light);
  color:#991b1b;
}
.alert--success{
  border-color:#a7f3d0;
  background:var(--success-light);
  color:#065f46;
}

/* Pills */
.pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 16px;
  border:1px solid var(--border);
  border-radius:var(--radius-full);
  color:var(--muted);
  font-weight:500;
  font-size:14px;
  cursor:pointer;
  transition:all 150ms ease;
  background:#fff;
}
.pill:hover{
  border-color:var(--primary);
  color:var(--primary);
  background:var(--primary-light);
}
.pill.is-on{
  border-color:var(--primary);
  background:var(--primary-light);
  color:var(--primary);
  font-weight:600;
}

/* Photos */
.photos{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
}
@media (min-width:600px){
  .photos{grid-template-columns:repeat(3,1fr)}
}
@media (min-width:860px){
  .photos{grid-template-columns:repeat(4,1fr)}
}
.photo{
  border:1px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  background:#fff;
  position:relative;
  aspect-ratio:1;
}
.photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.photo__del{
  position:absolute;
  top:10px;
  right:10px;
  background:rgba(0,0,0,.65);
  backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
  border-radius:var(--radius-sm);
  padding:8px 10px;
  font-size:14px;
  cursor:pointer;
  transition:all 150ms ease;
}
.photo__del:hover{
  background:rgba(239,68,68,.85);
}

/* Footer */
.footer{
  border-top:1px solid var(--border);
  margin-top:48px;
  color:var(--muted);
  font-size:14px;
}
.footer .container{
  padding-top:18px;
  padding-bottom:18px;
  text-align:center;
}

/* Map */
#map{
  width:100%;
  height:360px;
  border-radius:var(--radius-lg);
  border:1px solid var(--border);
  overflow:hidden;
  box-shadow:var(--shadow);
}
@media (min-width:720px){
  #map{height:440px}
}

/* Tabs */
.tabs{
  display:flex;
  gap:6px;
  flex-wrap:nowrap;
  border-bottom:2px solid var(--border);
  margin-bottom:24px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.tabs::-webkit-scrollbar{
  height:4px;
}
.tabs::-webkit-scrollbar-thumb{
  background:var(--border);
  border-radius:2px;
}
.tab{
  padding:12px 20px;
  border-radius:var(--radius) var(--radius) 0 0;
  color:var(--muted);
  font-weight:500;
  font-size:14px;
  cursor:pointer;
  transition:all 150ms ease;
  border:1px solid transparent;
  border-bottom:none;
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
  flex-shrink:0;
}
.tab:hover{
  color:var(--text);
  background:rgba(59,130,246,.04);
}
.tab.is-active{
  color:var(--primary);
  background:#fff;
  border-color:var(--border);
  border-bottom:2px solid #fff;
  margin-bottom:-2px;
  font-weight:600;
}
.tab .badge{
  background:var(--primary-light);
  color:var(--primary);
  padding:3px 8px;
  border-radius:var(--radius-full);
  font-size:12px;
  font-weight:600;
  min-width:24px;
  text-align:center;
}
.tab.is-active .badge{
  background:var(--primary);
  color:#fff;
}

/* Report card (list item) */
.report-card{
  display:block;
  padding:20px;
  border:1px solid var(--border);
  border-radius:var(--radius);
  background:#fff;
  transition:all 180ms ease;
  cursor:pointer;
}
.report-card:hover{
  border-color:var(--primary);
  box-shadow:0 4px 12px rgba(59,130,246,.12);
  transform:translateY(-2px);
}
.report-card__header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:12px;
}
.report-card__id{
  font-weight:600;
  font-size:17px;
  letter-spacing:-.01em;
  color:var(--text);
}
.report-card__date{
  color:var(--muted);
  font-size:13px;
}
.report-card__meta{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  font-size:14px;
  color:var(--muted);
}
.report-card__meta span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 12px;
  border-radius:var(--radius-full);
  background:rgba(0,0,0,.03);
  font-weight:500;
}
.report-card__meta .meta-city{
  background:rgba(16,185,129,.08);
  color:#059669;
}
.report-card__meta .meta-citizen{
  background:rgba(59,130,246,.08);
  color:#2563eb;
}
.report-card__meta .meta-museum{
  background:rgba(139,92,246,.08);
  color:#7c3aed;
}
.report-card__meta .meta-archaeologist{
  background:rgba(251,191,36,.08);
  color:#d97706;
}
.report-card__meta .meta-status{
  background:rgba(100,116,139,.08);
  color:#475569;
}

/* Report card: mobile-friendly toggle + actions */
.rcHeaderLeft{display:flex;align-items:center;gap:10px;min-width:0}
.rcHeaderRight{display:flex;align-items:center;gap:10px;flex-shrink:0}
.rcHeaderActions{display:flex;align-items:center;gap:8px}
.rcDeleteBtn{
  width:40px;height:40px;
  padding:0;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.rcDeleteInHeader{display:none}
.rcDeleteInActions{display:inline-flex}
.rcToggle{
  width:40px;height:40px;
  padding:0;
  border-radius:14px;
  display:none;
  align-items:center;
  justify-content:center;
}
.rcChips{display:flex;gap:12px;flex-wrap:wrap}
.rcActions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.rcActions .btn{
  padding:10px 14px;
  min-height:40px;
  height:40px;
  line-height:1.1;
  border-radius:14px;
  gap:8px;
  white-space:nowrap;
}
.rcActions button.btn{
  -webkit-appearance:none;
  appearance:none;
  font:inherit;
  padding:10px 14px;
}
.rcActions a.btn{
  -webkit-appearance:none;
  appearance:none;
  text-decoration:none;
}
.rcActions .rcBtnText{line-height:1;display:inline-flex;align-items:center}
.rcActions i{line-height:1}
.rcActions .badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:20px;
  height:20px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(59,130,246,.10);
  color:#2563eb;
  font-size:12px;
  font-weight:700;
  line-height:1;
}
.rcBtnText{display:none}
@media (max-width:600px){
  .report-card{padding:14px}
  .report-card__header{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }
  .rcHeaderLeft{width:100%;flex-wrap:wrap}
  .rcHeaderRight{width:100%;justify-content:space-between;flex-shrink:1}
  .report-card__id{
    max-width:100%;
    overflow-wrap:anywhere;
    word-break:break-word;
    line-height:1.25;
  }
  .report-card__date{font-size:12px}

  .rcToggle{display:inline-flex}
  .rcDeleteInHeader{display:inline-flex}
  .rcDeleteInActions{display:none}
  .report-card .rcMeta{display:none}
  .report-card.is-open .rcMeta{
    display:flex;
    flex-direction:column;
    justify-content:initial !important;
    align-items:stretch !important;
    gap:10px;
  }
  .rcChips{width:100%}
  .report-card__meta span{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .rcActions{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px;
    justify-content:stretch;
  }
  .rcActions .btn{
    justify-content:center;
    padding:10px 12px;
    font-size:14px;
    min-height:40px;
    line-height:1.1;
    border-radius:14px;
  }
  .rcBtnLabel{grid-column:1 / -1;width:100%;justify-content:center}
  .rcBtnText{display:inline}
}

/* Admin users cards */
.userCard{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:14px;
  align-items:start;
}
.userCard__name{
  font-weight:800;
  font-size:16px;
  margin-bottom:8px;
}
.userCard__meta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.userCard__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
}
@media (max-width:760px){
  .userCard{grid-template-columns:1fr}
  .userCard__actions{justify-content:flex-start}
}

/* Director members cards (reuse userCard) */
.memberCard__units{grid-column:1 / -1;margin-top:10px}

/* Excavation list cards (used by admin + my_excavations) */
.exc-card{cursor:pointer}
.exc-list .exc-card:nth-child(even){background:#f6f7f9}
.exc-card.is-active{
  border-color:#a7f3d0;
  box-shadow:0 0 0 3px rgba(16,185,129,.14);
}

/* Info card (modern bilgi kartı) */
.info-card{
  display:flex;
  align-items:flex-start;
  gap:16px;
  padding:20px;
  border:1px solid var(--border);
  border-radius:var(--radius);
  background:#fff;
  margin-bottom:16px;
}
.info-card__icon{
  width:48px;
  height:48px;
  border-radius:var(--radius);
  display:grid;
  place-items:center;
  background:rgba(59,130,246,.08);
  color:var(--primary);
  font-size:20px;
  flex-shrink:0;
}
.info-card__content{flex:1}
.info-card__label{
  font-weight:600;
  font-size:13px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:6px;
}
.info-card__value{
  font-size:16px;
  color:var(--text);
  line-height:1.5;
}

/* Info lines (icon + label + value) */
.info-lines{
  display:grid;
  gap:10px;
}
.info-line{
  display:grid;
  grid-template-columns:22px 120px 1fr;
  gap:10px;
  align-items:flex-start;
}
@media (max-width:520px){
  .info-line{
    grid-template-columns:22px 1fr;
  }
}
.info-line__icon{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:6px;
  background:rgba(59,130,246,.08);
  color:var(--primary);
  font-size:12px;
  margin-top:2px;
}
.info-line__label{
  font-weight:700;
  color:var(--text);
  font-size:14px;
}
.info-line__value{
  color:var(--muted);
  font-size:15px;
  line-height:1.6;
  word-break:break-word;
}
@media (max-width:520px){
  .info-line__label{
    grid-column:2;
  }
  .info-line__value{
    grid-column:2;
  }
}

/* Accordion */
.accordion{
  border:1px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  margin-bottom:16px;
  background:#fff;
}
.accordion-item{
  border-bottom:1px solid var(--border);
}
.accordion-item:last-child{border-bottom:none}
.accordion-header{
  padding:18px 20px;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  background:#fff;
  transition:background 150ms ease;
}
.accordion-header:hover{
  background:rgba(59,130,246,.03);
}
.accordion-header__title{
  font-weight:600;
  font-size:16px;
  color:var(--text);
  display:flex;
  align-items:center;
  gap:10px;
}
.accordion-header__icon{
  width:36px;
  height:36px;
  border-radius:var(--radius-sm);
  display:grid;
  place-items:center;
  background:rgba(59,130,246,.08);
  color:var(--primary);
}
.accordion-header__arrow{
  color:var(--muted);
  transition:transform 200ms ease;
}
.accordion-header.is-open .accordion-header__arrow{
  transform:rotate(180deg);
}
.accordion-body{
  max-height:0;
  overflow:hidden;
  transition:max-height 300ms ease;
}
.accordion-body.is-open{
  max-height:2000px;
}
.accordion-body__content{
  padding:20px;
  border-top:1px solid var(--border);
}

/* Utility */
.text-center{text-align:center}
.text-right{text-align:right}
.mt-2{margin-top:8px}
.mt-3{margin-top:16px}
.mt-4{margin-top:24px}
.mb-2{margin-bottom:8px}
.mb-3{margin-bottom:16px}
.mb-4{margin-bottom:24px}
