:root {
  --bg: #041124;
  --bg2: #071a34;
  --panel: #0a203d;
  --panel2: #0d294d;
  --line: rgba(111, 166, 255, .20);
  --blue: #1264ff;
  --green: #16df66;
  --red: #ff5a67;
  --text: #f6f8ff;
  --muted: #a7b4c8;
  --radius: 22px;
  --shadow: 0 22px 70px rgba(0,0,0,.38);
}

* { box-sizing: border-box; }
html { background: #020914; }
body {
  margin: 0;
  min-height: 100vh;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--text);
  background:
    radial-gradient(circle at 50% -10%, rgba(18,100,255,.20), transparent 34%),
    linear-gradient(180deg, #020914, #06162d);
}
button, input, select { font: inherit; }
button { cursor: pointer; }
[hidden] { display: none !important; }

.shell {
  min-height: 100vh;
  width: min(100%, 480px);
  margin: 0 auto;
  padding: max(22px, env(safe-area-inset-top)) 18px max(22px, env(safe-area-inset-bottom));
}
.brand {
  text-align: center;
  margin: 18px 0 28px;
}
.brand-mark {
  width: 82px; height: 82px;
  display: grid; place-items: center;
  margin: 0 auto 14px;
  border-radius: 25px;
  font-size: 2.35rem;
  background: linear-gradient(145deg, #1470ff, #0a3da8);
  box-shadow: 0 0 42px rgba(18,100,255,.30);
}
.brand h1 { margin: 0; font-size: 1.75rem; letter-spacing: -.04em; }
.brand h1 span { color: var(--green); }
.brand p { margin: 7px 0 0; color: var(--muted); font-size: .88rem; }

.panel {
  border: 1px solid var(--line);
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(13,41,77,.97), rgba(6,23,46,.98));
  box-shadow: var(--shadow);
  overflow: hidden;
}
.tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 6px;
  background: rgba(3,14,31,.48);
  border-bottom: 1px solid var(--line);
}
.tab {
  min-height: 46px;
  border: 0;
  border-radius: 15px;
  color: var(--muted);
  background: transparent;
  font-weight: 900;
}
.tab.active {
  color: white;
  background: linear-gradient(135deg, var(--blue), #0749c9);
}
.form-wrap { padding: 22px; }
.form { display: grid; gap: 14px; }
.form h2 { margin: 0 0 4px; font-size: 1.45rem; letter-spacing: -.03em; }
.form-intro { margin: 0 0 6px; color: var(--muted); font-size: .9rem; }
.field { display: grid; gap: 7px; }
.field label { font-size: .84rem; font-weight: 850; }
.input, .select {
  width: 100%;
  min-height: 50px;
  padding: 11px 13px;
  border: 1px solid var(--line);
  border-radius: 15px;
  color: white;
  outline: 0;
  background: rgba(4,18,39,.92);
}
.input:focus, .select:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 4px rgba(18,100,255,.13);
}
.row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.btn {
  min-height: 52px;
  padding: 0 17px;
  border: 0;
  border-radius: 16px;
  font-weight: 950;
}
.btn-primary {
  color: white;
  background: linear-gradient(135deg, #1470ff, #0749c9);
  box-shadow: 0 12px 28px rgba(18,100,255,.26);
}
.btn-secondary {
  color: white;
  border: 1px solid var(--line);
  background: rgba(4,18,39,.88);
}
.btn:disabled { opacity: .58; cursor: wait; }
.link-btn {
  border: 0;
  padding: 2px;
  color: #5da0ff;
  background: transparent;
  font-weight: 800;
}
.form-footer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}
.notice {
  padding: 13px 14px;
  border-radius: 14px;
  font-size: .87rem;
  border: 1px solid var(--line);
  background: rgba(4,18,39,.75);
}
.notice.success { color: #9dffc2; border-color: rgba(22,223,102,.35); }
.notice.error { color: #ffb4ba; border-color: rgba(255,90,103,.40); }
.notice.info { color: #bcd5ff; }
.helper { color: var(--muted); font-size: .76rem; }
.loading {
  min-height: 100vh;
  display: grid;
  place-items: center;
  color: var(--muted);
}

/* UYGULAMA */
.app-shell {
  min-height: 100vh;
  width: min(100%, 480px);
  margin: 0 auto;
  position: relative;
  background:
    radial-gradient(circle at top right, rgba(18,100,255,.14), transparent 28%),
    linear-gradient(180deg, #041124, #06162d);
}
.app-main {
  height: calc(100vh - 82px - env(safe-area-inset-bottom));
  overflow-y: auto;
  padding: max(22px, env(safe-area-inset-top)) 18px 28px;
}
.app-section { display: none; }
.app-section.active { display: block; }
.topbar {
  display: flex; align-items: center; justify-content: space-between;
  gap: 14px; margin-bottom: 20px;
}
.topbar h1 { margin: 0; font-size: 1.75rem; letter-spacing: -.04em; }
.topbar p { margin: 5px 0 0; color: var(--muted); font-size: .88rem; }
.avatar {
  width: 48px; height: 48px;
  display: grid; place-items: center;
  border-radius: 50%;
  background: linear-gradient(145deg, #d8e7f7, #7996bd);
  color: #112744; font-weight: 950;
}
.card {
  padding: 19px;
  margin-bottom: 14px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgba(13,41,77,.94), rgba(7,27,53,.96));
  box-shadow: 0 14px 38px rgba(0,0,0,.25);
}
.card h2, .card h3 { margin-top: 0; }
.status {
  width: fit-content;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 900;
}
.status.pending { color: #ffd78a; background: rgba(255,169,23,.13); }
.status.approved, .status.active { color: #91ffba; background: rgba(22,223,102,.13); }
.status.rejected, .status.suspended { color: #ffb2b8; background: rgba(255,90,103,.14); }
.data-list { display: grid; gap: 10px; }
.data-row {
  display: flex; justify-content: space-between; gap: 18px;
  padding: 11px 0; border-bottom: 1px solid var(--line);
}
.data-row:last-child { border-bottom: 0; }
.data-row span { color: var(--muted); }
.empty {
  padding: 26px 18px;
  text-align: center;
  color: var(--muted);
  border: 1px dashed var(--line);
  border-radius: 18px;
}
.bottom-nav {
  position: fixed;
  left: 50%; bottom: 0;
  transform: translateX(-50%);
  width: min(100%, 480px);
  height: calc(82px + env(safe-area-inset-bottom));
  padding: 7px 6px env(safe-area-inset-bottom);
  display: grid;
  grid-template-columns: repeat(5,1fr);
  border-top: 1px solid var(--line);
  background: rgba(4,17,36,.97);
  backdrop-filter: blur(18px);
}
.nav-btn {
  border: 0;
  border-radius: 16px;
  color: var(--muted);
  background: transparent;
  font-size: .68rem;
  font-weight: 800;
}
.nav-btn strong { display: block; font-size: 1.35rem; margin-bottom: 2px; }
.nav-btn.active { color: #4a91ff; }
.nav-btn.qr { margin-top: -18px; color: white; background: linear-gradient(145deg,#1470ff,#0749c9); }
.logout { width: 100%; margin-top: 8px; color: white; background: #b73d4b; }
.config-warning {
  margin-top: 18px;
  padding: 14px;
  border: 1px solid rgba(255,169,23,.45);
  border-radius: 14px;
  color: #ffe0a1;
  background: rgba(255,169,23,.08);
  font-size: .84rem;
}
@media (max-width: 390px) {
  .row { grid-template-columns: 1fr; }
  .form-wrap { padding: 18px; }
}
/* ADMIN PANELİ */
.admin-shell {
  width: min(calc(100% - 32px), 1180px);
  margin: 0 auto;
  padding: 30px 0 50px;
}
.admin-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 22px;
  margin-bottom: 24px;
}
.admin-header h1 {
  margin: 5px 0;
  font-size: clamp(2rem, 5vw, 3.5rem);
  letter-spacing: -.05em;
}
.admin-header p { margin: 0; color: var(--muted); }
.admin-kicker {
  color: var(--green);
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .1em;
}
.admin-metrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 15px;
  margin-bottom: 20px;
}
.metric-card {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(13,41,77,.94), rgba(7,27,53,.96));
  box-shadow: 0 14px 38px rgba(0,0,0,.25);
}
.metric-card span {
  display: block;
  color: var(--muted);
  font-weight: 750;
  font-size: .84rem;
}
.metric-card strong {
  display: block;
  margin-top: 7px;
  font-size: 2rem;
}
.admin-panel {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(13,41,77,.94), rgba(7,27,53,.96));
  box-shadow: var(--shadow);
}
.admin-panel-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
}
.admin-panel-head h2 { margin: 0 0 5px; }
.admin-panel-head p { margin: 0; color: var(--muted); }
.admin-refresh { width: auto; }
.admin-table-wrap { overflow-x: auto; }
.admin-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}
.admin-table th,
.admin-table td {
  padding: 13px 12px;
  text-align: left;
  border-bottom: 1px solid var(--line);
}
.admin-table th {
  color: var(--muted);
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .05em;
}
@media (max-width: 760px) {
  .admin-header,
  .admin-panel-head { align-items: stretch; flex-direction: column; }
  .admin-metrics { grid-template-columns: repeat(2, 1fr); }
}
/* ÖĞRENCİ BAŞVURU VE KART ATAMA MODÜLÜ */
body.modal-open {
  overflow: hidden;
}

.admin-toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
}

.admin-filter {
  min-width: 190px;
}

.applications-grid {
  display: grid;
  gap: 16px;
}

.application-card {
  padding: 19px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(4, 18, 39, .72);
}

.application-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 16px;
}

.application-head h3 {
  margin: 0 0 5px;
  font-size: 1.15rem;
}

.application-head p {
  margin: 0;
  color: var(--muted);
}

.application-info {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 22px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.application-info-row {
  min-width: 0;
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .10);
}

.application-info-row span {
  color: var(--muted);
  font-size: .8rem;
}

.application-info-row strong {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: .88rem;
}

.application-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 16px;
}

.application-actions .btn {
  width: auto;
  padding-inline: 18px;
}

.btn-danger {
  color: white;
  background: linear-gradient(135deg, #d94a58, #a92c39);
}

.btn-danger-outline {
  color: #ff9ea7;
  border: 1px solid rgba(255, 90, 103, .42);
  background: rgba(255, 90, 103, .08);
}

.textarea {
  width: 100%;
  min-height: 110px;
  padding: 12px 13px;
  border: 1px solid var(--line);
  border-radius: 15px;
  color: white;
  outline: 0;
  resize: vertical;
  background: rgba(4, 18, 39, .92);
}

.textarea:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 4px rgba(18, 100, 255, .13);
}

.admin-modal[hidden] {
  display: none;
}

.admin-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 18px;
}

.admin-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(1, 7, 17, .78);
  backdrop-filter: blur(10px);
}

.admin-modal-card {
  width: min(100%, 560px);
  max-height: min(88vh, 760px);
  overflow-y: auto;
  position: relative;
  z-index: 1;
  padding: 23px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: linear-gradient(180deg, #0d294d, #06172e);
  box-shadow: 0 30px 90px rgba(0, 0, 0, .58);
}

.admin-modal-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 20px;
}

.admin-modal-head h2 {
  margin: 5px 0;
}

.admin-modal-head p {
  margin: 0;
  color: var(--muted);
}

.modal-close {
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border: 1px solid var(--line);
  border-radius: 50%;
  color: white;
  background: rgba(4, 18, 39, .88);
  font-size: 1.5rem;
}

@media (max-width: 760px) {
  .admin-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .admin-filter {
    width: 100%;
  }

  .application-info {
    grid-template-columns: 1fr;
  }

  .application-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .application-actions .btn {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .application-head {
    flex-direction: column;
  }

  .application-info-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* 003 İŞLETME BAŞVURU MODÜLÜ */
.business-entry {
  margin-top: 18px;
  min-height: 74px;
  padding: 13px 14px;
  display: grid;
  grid-template-columns: 48px 1fr auto;
  align-items: center;
  gap: 12px;
  border: 1px solid rgba(22, 223, 102, .30);
  border-radius: 17px;
  color: white;
  background: rgba(22, 223, 102, .07);
  text-decoration: none;
}

.business-entry-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: rgba(22, 223, 102, .13);
  font-size: 1.35rem;
}

.business-entry strong,
.business-entry small {
  display: block;
}

.business-entry small {
  margin-top: 4px;
  color: var(--muted);
  font-size: .76rem;
  line-height: 1.35;
}

.business-entry-arrow {
  color: var(--green);
  font-size: 1.5rem;
}

.back-link {
  display: inline-block;
  margin-bottom: 18px;
  color: #6da9ff;
  font-weight: 850;
  text-decoration: none;
}

.business-signup-shell {
  width: min(100%, 620px);
}

.consent-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.45;
}

.consent-row input {
  margin-top: 4px;
}

.admin-metrics {
  grid-template-columns: repeat(5, 1fr);
}

.admin-module-tabs {
  display: flex;
  gap: 8px;
  margin-bottom: 14px;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: rgba(4, 18, 39, .72);
}

.admin-module-tab {
  min-height: 45px;
  padding: 0 18px;
  border: 0;
  border-radius: 13px;
  color: var(--muted);
  background: transparent;
  font-weight: 900;
}

.admin-module-tab.active {
  color: white;
  background: linear-gradient(135deg, #1470ff, #0749c9);
}

.admin-module-panel {
  display: none;
}

.admin-module-panel.active {
  display: block;
}

.business-dashboard {
  width: min(calc(100% - 32px), 980px);
  margin: 0 auto;
  padding: 30px 0 54px;
}

.business-dashboard-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 22px;
}

.business-dashboard-header h1 {
  margin: 5px 0;
  font-size: clamp(2rem, 5vw, 3.4rem);
  letter-spacing: -.05em;
}

.business-dashboard-header p {
  margin: 0;
  color: var(--muted);
}

.business-status-card {
  padding: 22px;
  margin-bottom: 18px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(13, 41, 77, .94), rgba(7, 27, 53, .96));
  box-shadow: var(--shadow);
}

.business-status-card h2 {
  margin: 5px 0 7px;
}

.business-status-card p {
  margin: 0;
  color: var(--muted);
}

.business-label {
  color: var(--green);
  font-size: .76rem;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.business-dashboard-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  margin-bottom: 18px;
}

.business-advantage-rate {
  margin: 14px 0;
  color: var(--green);
  font-size: 3rem;
  font-weight: 950;
  letter-spacing: -.06em;
}

@media (max-width: 900px) {
  .admin-metrics {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 700px) {
  .business-dashboard-header,
  .business-status-card {
    align-items: stretch;
    flex-direction: column;
  }

  .business-dashboard-grid {
    grid-template-columns: 1fr;
  }

  .admin-module-tabs {
    display: grid;
    grid-template-columns: 1fr;
  }
}

/* 004 KAYITLI İŞLETME GİRİŞİ AYRIMI */
.business-options {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.business-options .business-entry {
  margin-top: 0;
}

.business-login-entry {
  border-color: rgba(47, 126, 255, .38);
  background: rgba(47, 126, 255, .09);
}

.business-login-entry .business-entry-icon {
  background: rgba(47, 126, 255, .15);
}

.business-login-entry .business-entry-arrow {
  color: #6da9ff;
}

.business-login-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}

.link-anchor {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

/* 005 KAMPANYA YÖNETİMİ */
.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.btn-link {
  width: auto;
  text-decoration: none;
}

.module-action-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 12px;
  margin-top: 17px;
}

.module-action-card {
  min-height: 82px;
  padding: 15px;
  display: grid;
  grid-template-columns: 50px 1fr auto;
  align-items: center;
  gap: 13px;
  border: 1px solid rgba(22, 223, 102, .30);
  border-radius: 18px;
  color: white;
  background: rgba(22, 223, 102, .07);
  text-decoration: none;
}

.module-action-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  color: var(--green);
  background: rgba(22, 223, 102, .13);
  font-size: 1.35rem;
  font-weight: 950;
}

.module-action-card strong,
.module-action-card small {
  display: block;
}

.module-action-card small {
  margin-top: 5px;
  color: var(--muted);
  line-height: 1.35;
}

.campaign-layout {
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(420px, 1.25fr);
  gap: 18px;
  align-items: start;
}

.campaign-form-panel {
  position: sticky;
  top: 18px;
}

.campaign-section-head,
.campaign-card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.campaign-section-head h2,
.campaign-card-head h3 {
  margin: 5px 0;
}

.campaign-card-head p {
  margin: 0;
  color: var(--muted);
  font-size: .8rem;
}

.compact-btn {
  width: auto;
  padding-inline: 16px;
}

.campaign-list {
  display: grid;
  gap: 15px;
}

.campaign-card {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(4, 18, 39, .72);
}

.campaign-rate {
  margin: 14px 0 6px;
  color: var(--green);
  font-size: 2.4rem;
  font-weight: 950;
  letter-spacing: -.06em;
}

.campaign-description {
  margin: 0 0 15px;
  color: #e7f0ff;
  line-height: 1.55;
}

.campaign-details {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.campaign-detail {
  display: grid;
  grid-template-columns: 125px 1fr;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .10);
}

.campaign-detail:last-child {
  border-bottom: 0;
}

.campaign-detail span {
  color: var(--muted);
  font-size: .8rem;
}

.campaign-detail strong {
  overflow-wrap: anywhere;
  font-size: .88rem;
  line-height: 1.45;
}

.campaign-admin-metrics {
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 950px) {
  .campaign-layout {
    grid-template-columns: 1fr;
  }

  .campaign-form-panel {
    position: static;
  }
}

@media (max-width: 700px) {
  .header-actions,
  .campaign-section-head {
    align-items: stretch;
    flex-direction: column;
  }

  .header-actions .btn,
  .compact-btn {
    width: 100%;
  }

  .campaign-admin-metrics {
    grid-template-columns: repeat(2, 1fr);
  }

  .campaign-detail {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* 005-A KAMPANYA FORMU TAŞMA DÜZELTMESİ */
.campaign-layout,
.campaign-form-panel,
.campaign-form-panel .form,
.campaign-form-panel .row,
.campaign-form-panel .field {
  min-width: 0;
}

.campaign-form-panel .row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.campaign-form-panel .input,
.campaign-form-panel .select,
.campaign-form-panel .textarea {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

@media (max-width: 700px) {
  .campaign-form-panel .row {
    grid-template-columns: 1fr;
  }
}

/* 005-B YÖNETİM PANELİ ÜST BUTON DÜZELTMESİ */
.admin-header .header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex: 0 0 auto;
}

.admin-header .header-actions .btn {
  width: auto;
  min-width: 0;
  padding-left: 20px;
  padding-right: 20px;
  white-space: nowrap;
}

@media (max-width: 700px) {
  .admin-header .header-actions {
    width: 100%;
    align-items: stretch;
    flex-direction: column;
  }

  .admin-header .header-actions .btn {
    width: 100%;
  }
}

/* 005-C YÖNETİM ÜST BUTONLARINI AŞAĞI AL */
@media (min-width: 701px) {
  .admin-header .header-actions {
    align-self: flex-end;
    margin-bottom: 6px;
  }
}

/* 005-D YÖNETİM ÜST BUTONLARI KESİN HİZA */
@media (min-width: 701px) {
  .admin-header .header-actions {
    transform: translateY(35px);
  }
}

/* YÖNETİM BUTONLARI SON HİZA DÜZELTMESİ */
@media (min-width: 701px) {
  .admin-header .header-actions {
    align-self: center;
    margin-bottom: 0;
    transform: none;
  }

  .admin-header .header-actions .btn {
    min-height: 64px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    text-align: center;
  }
}

/* 006 ÖĞRENCİ KEŞFET - GERÇEK KAMPANYALAR */
.discover-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  margin-bottom: 14px;
}

.discover-toolbar .btn {
  width: auto;
  min-width: 92px;
}

.student-campaign-list {
  display: grid;
  gap: 14px;
}

.student-campaign-card {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 22px;
  background:
    radial-gradient(circle at top right, rgba(22, 223, 102, .10), transparent 32%),
    linear-gradient(180deg, rgba(13, 41, 77, .96), rgba(6, 24, 48, .98));
  box-shadow: 0 14px 38px rgba(0, 0, 0, .24);
}

.student-campaign-main {
  padding: 18px;
}

.student-campaign-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}

.student-campaign-head h2 {
  margin: 0 0 6px;
  font-size: 1.12rem;
  line-height: 1.25;
}

.student-campaign-business {
  margin: 0;
  color: var(--muted);
  font-size: .82rem;
}

.student-campaign-rate {
  flex: 0 0 auto;
  min-width: 68px;
  padding: 9px 10px;
  border-radius: 16px;
  color: var(--green);
  background: rgba(22, 223, 102, .10);
  text-align: center;
  font-size: 1.35rem;
  font-weight: 950;
  letter-spacing: -.05em;
}

.student-campaign-description {
  margin: 15px 0;
  color: #edf4ff;
  line-height: 1.55;
}

.student-campaign-meta {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--line);
}

.student-campaign-meta-row {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .10);
}

.student-campaign-meta-row:last-child {
  border-bottom: 0;
}

.student-campaign-meta-row span {
  color: var(--muted);
  font-size: .78rem;
}

.student-campaign-meta-row strong {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: .84rem;
  line-height: 1.4;
}

.student-campaign-footer {
  padding: 12px 18px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  background: rgba(2, 13, 29, .35);
  font-size: .76rem;
}

.discover-lock-card {
  padding: 20px;
  border: 1px solid rgba(255, 169, 23, .32);
  border-radius: 20px;
  color: #ffe0a1;
  background: rgba(255, 169, 23, .07);
}

.discover-lock-card h2 {
  margin: 0 0 8px;
  color: white;
  font-size: 1.1rem;
}

.discover-lock-card p {
  margin: 0;
  line-height: 1.5;
}

@media (max-width: 390px) {
  .discover-toolbar {
    grid-template-columns: 1fr;
  }

  .discover-toolbar .btn {
    width: 100%;
  }

  .student-campaign-head {
    flex-direction: column;
  }

  .student-campaign-meta-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }

  .student-campaign-footer {
    flex-direction: column;
  }
}

/* 007 QR İŞLEM, CÜZDAN VE GÜN SONU RAPORU */
.student-qr-card {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(22, 223, 102, .12), transparent 35%),
    linear-gradient(180deg, rgba(13, 41, 77, .96), rgba(6, 24, 48, .98));
  box-shadow: var(--shadow);
}

.student-qr-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
}

.student-qr-head h2 {
  margin: 5px 0 7px;
}

.student-qr-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.student-qr-box {
  width: min(100%, 270px);
  min-height: 270px;
  margin: 22px auto 15px;
  padding: 24px;
  display: grid;
  place-items: center;
  border-radius: 24px;
  color: #26364f;
  background: white;
  text-align: center;
}

.student-qr-box img,
.student-qr-box canvas {
  max-width: 100%;
  height: auto !important;
}

.student-short-code,
.student-qr-countdown {
  padding: 13px 15px;
  margin-bottom: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: rgba(2, 13, 29, .35);
}

.student-short-code span,
.student-qr-countdown span {
  color: var(--muted);
  font-size: .8rem;
}

.student-short-code strong {
  color: var(--green);
  font-size: 1.25rem;
  letter-spacing: .14em;
}

.student-qr-countdown strong {
  font-variant-numeric: tabular-nums;
}

.wallet-refresh {
  width: auto;
  padding-inline: 17px;
}

.wallet-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.wallet-transaction-list {
  display: grid;
  gap: 13px;
}

.wallet-transaction-card {
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(4, 18, 39, .76);
}

.wallet-transaction-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 13px;
}

.wallet-transaction-head h2 {
  margin: 0 0 5px;
  font-size: 1.05rem;
}

.wallet-transaction-head p {
  margin: 0;
  color: var(--muted);
  font-size: .78rem;
}

.wallet-advantage {
  color: var(--green);
  font-size: 1.05rem;
  font-weight: 950;
  white-space: nowrap;
}

.wallet-details {
  display: grid;
  border-top: 1px solid var(--line);
}

.wallet-detail-row {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 9px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .10);
}

.wallet-detail-row span {
  color: var(--muted);
  font-size: .79rem;
}

.wallet-detail-row strong {
  text-align: right;
  overflow-wrap: anywhere;
  font-size: .84rem;
}

.checkout-layout {
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(380px, 1.1fr);
  gap: 18px;
  align-items: start;
}

.scanner-actions {
  display: flex;
  gap: 10px;
  margin-bottom: 13px;
}

.scanner-actions .btn {
  width: auto;
}

.qr-reader {
  overflow: hidden;
  margin-bottom: 14px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #050d18;
}

.manual-code-form {
  margin-top: 14px;
}

.code-input {
  text-transform: uppercase;
  letter-spacing: .08em;
}

.checkout-panel {
  position: sticky;
  top: 18px;
}

.verified-student-card {
  display: grid;
  gap: 0;
  margin: 14px 0 18px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.verified-student-card > div {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .10);
}

.verified-student-card > div:last-child {
  border-bottom: 0;
}

.verified-student-card span {
  color: var(--muted);
  font-size: .8rem;
}

.smart-calculator {
  display: grid;
  gap: 0;
  margin: 4px 0 15px;
  padding: 6px 15px;
  border: 1px solid rgba(22, 223, 102, .25);
  border-radius: 18px;
  background: rgba(22, 223, 102, .05);
}

.smart-calculator > div {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 11px 0;
  border-bottom: 1px solid rgba(22, 223, 102, .12);
}

.smart-calculator > div:last-child {
  border-bottom: 0;
}

.smart-calculator span {
  color: var(--muted);
  font-size: .82rem;
}

.smart-calculator-total strong {
  color: var(--green);
  font-size: 1.15rem;
}

.transaction-receipt {
  margin-top: 18px;
  padding: 22px;
  border: 1px solid rgba(22, 223, 102, .35);
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(22, 223, 102, .13), transparent 35%),
    linear-gradient(180deg, rgba(13, 41, 77, .96), rgba(6, 24, 48, .98));
  box-shadow: var(--shadow);
}

.transaction-receipt h2 {
  margin: 6px 0 17px;
}

.report-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 320px) auto;
  gap: 12px;
  align-items: end;
}

.report-toolbar .field {
  margin-bottom: 0;
}

.report-toolbar .btn {
  width: auto;
  min-height: 48px;
}

.report-metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.report-transaction-list {
  display: grid;
  gap: 13px;
}

.report-transaction-card {
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(4, 18, 39, .76);
}

.report-transaction-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 12px;
}

.report-transaction-head h3 {
  margin: 0 0 5px;
}

.report-transaction-head p {
  margin: 0;
  color: var(--muted);
  font-size: .78rem;
}

.report-transaction-head > strong {
  color: var(--green);
  font-size: 1.05rem;
}

.report-transaction-details {
  display: grid;
  border-top: 1px solid var(--line);
}

.report-transaction-details > div {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 9px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .10);
}

.report-transaction-details span {
  color: var(--muted);
  font-size: .79rem;
}

.report-transaction-details b {
  text-align: right;
  font-size: .84rem;
}

@media (max-width: 900px) {
  .checkout-layout {
    grid-template-columns: 1fr;
  }

  .checkout-panel {
    position: static;
  }

  .report-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  .student-qr-head,
  .wallet-transaction-head,
  .report-transaction-head {
    flex-direction: column;
  }

  .wallet-metrics {
    grid-template-columns: 1fr;
  }

  .report-toolbar {
    grid-template-columns: 1fr;
  }

  .report-toolbar .btn,
  .scanner-actions .btn {
    width: 100%;
  }

  .scanner-actions {
    flex-direction: column;
  }

  .verified-student-card > div,
  .wallet-detail-row,
  .report-transaction-details > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .wallet-detail-row strong,
  .report-transaction-details b {
    text-align: left;
  }
}

/* 008 KEŞFET / İŞLETMELER */
.discover-module-tabs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin-bottom: 14px;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: rgba(4, 18, 39, .72);
}

.discover-module-tab {
  min-height: 44px;
  padding: 0 14px;
  border: 0;
  border-radius: 13px;
  color: var(--muted);
  background: transparent;
  font-weight: 900;
}

.discover-module-tab.active {
  color: white;
  background: linear-gradient(135deg, #1470ff, #0749c9);
}

.discover-module-panel {
  display: none;
}

.discover-module-panel.active {
  display: block;
}

.business-discover-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(170px, 210px) auto;
  gap: 10px;
  margin-bottom: 14px;
}

.business-discover-toolbar .btn {
  width: auto;
  min-width: 92px;
}

.student-business-list {
  display: grid;
  gap: 14px;
}

.student-business-card {
  overflow: hidden;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background:
    radial-gradient(circle at top right, rgba(47, 126, 255, .11), transparent 35%),
    linear-gradient(180deg, rgba(13, 41, 77, .96), rgba(6, 24, 48, .98));
  box-shadow: 0 14px 38px rgba(0, 0, 0, .23);
}

.student-business-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
}

.student-business-category {
  display: inline-block;
  margin-bottom: 7px;
  color: var(--green);
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.student-business-head h2 {
  margin: 0 0 5px;
  font-size: 1.14rem;
  line-height: 1.25;
}

.student-business-head p {
  margin: 0;
  color: var(--muted);
  font-size: .82rem;
}

.student-business-advantage {
  flex: 0 0 auto;
  min-width: 94px;
  padding: 10px 12px;
  border-radius: 17px;
  color: var(--green);
  background: rgba(22, 223, 102, .09);
  text-align: center;
}

.student-business-advantage span,
.student-business-advantage strong {
  display: block;
}

.student-business-advantage span {
  color: var(--muted);
  font-size: .65rem;
}

.student-business-advantage strong {
  margin-top: 3px;
  font-size: 1.35rem;
  letter-spacing: -.05em;
}

.student-business-description {
  margin: 15px 0;
  color: #edf4ff;
  line-height: 1.55;
}

.student-business-summary {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 11px 0;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: .76rem;
}

.student-business-details {
  border-top: 1px solid rgba(111, 166, 255, .10);
}

.student-business-details summary {
  padding: 12px 0 2px;
  color: #80b0ff;
  cursor: pointer;
  font-size: .8rem;
  font-weight: 900;
}

.student-business-detail-body {
  display: grid;
  margin-top: 9px;
  border-top: 1px solid rgba(111, 166, 255, .10);
}

.student-business-info-row {
  display: grid;
  grid-template-columns: 105px minmax(0, 1fr);
  gap: 11px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .10);
}

.student-business-info-row span {
  color: var(--muted);
  font-size: .77rem;
}

.student-business-info-row strong {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: .82rem;
  line-height: 1.4;
}

@media (max-width: 680px) {
  .business-discover-toolbar {
    grid-template-columns: 1fr;
  }

  .business-discover-toolbar .btn {
    width: 100%;
  }
}

@media (max-width: 430px) {
  .student-business-head,
  .student-business-summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .student-business-info-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
}

/* 009 KEŞFET / HARİTA VE İŞLETME KONUMU */
.discover-module-tabs {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.business-map-toolbar {
  display: grid;
  grid-template-columns: minmax(190px, 260px) auto;
  gap: 10px;
  margin-bottom: 13px;
}

.business-map-toolbar .btn {
  width: auto;
}

.student-business-map {
  height: 430px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #d8e2eb;
  box-shadow: var(--shadow);
}

.student-map-business-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 13px;
}

.student-map-business-card {
  min-width: 0;
  padding: 13px 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 13px;
  border: 1px solid var(--line);
  border-radius: 17px;
  color: white;
  background: rgba(4, 18, 39, .78);
  text-align: left;
}

.student-map-business-card:hover {
  border-color: rgba(22, 223, 102, .52);
  background: rgba(12, 42, 73, .92);
}

.student-map-business-card > span {
  min-width: 0;
}

.student-map-business-card strong,
.student-map-business-card small {
  display: block;
}

.student-map-business-card strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.student-map-business-card small {
  margin-top: 4px;
  color: var(--muted);
}

.student-map-business-card > b {
  flex: 0 0 auto;
  color: var(--green);
  font-size: 1.05rem;
}

.student-map-popup {
  min-width: 190px;
  color: #10223a;
}

.student-map-popup span,
.student-map-popup strong,
.student-map-popup b {
  display: block;
}

.student-map-popup span {
  margin-bottom: 3px;
  color: #337454;
  font-size: .72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.student-map-popup strong {
  margin-bottom: 5px;
  font-size: .98rem;
}

.student-map-popup b {
  margin-bottom: 7px;
  color: #087640;
  font-size: .83rem;
}

.student-map-popup p {
  margin: 0;
  color: #4e6074;
  font-size: .78rem;
  line-height: 1.4;
}

.business-location-modal-card {
  width: min(760px, calc(100vw - 28px));
}

.admin-location-map {
  height: 380px;
  margin-bottom: 15px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #d8e2eb;
}

.leaflet-container {
  font-family: inherit;
}

@media (max-width: 680px) {
  .business-map-toolbar {
    grid-template-columns: 1fr;
  }

  .business-map-toolbar .btn {
    width: 100%;
  }

  .student-business-map {
    height: 360px;
  }

  .student-map-business-list {
    grid-template-columns: 1fr;
  }

  .admin-location-map {
    height: 330px;
  }
}

@media (max-width: 420px) {
  .discover-module-tabs {
    grid-template-columns: 1fr;
  }
}

/* 009B İŞLETMENİN KENDİ KONUMU */
.business-location-self-panel {
  max-width: 900px;
  margin-inline: auto;
}

.business-self-location-status {
  margin: 14px 0;
  padding: 12px 14px;
  border: 1px solid var(--line);
  border-radius: 15px;
  color: var(--muted);
  background: rgba(4, 18, 39, .72);
  line-height: 1.45;
}

.notice.success {
  border-color: rgba(22, 223, 102, .35);
  color: #8cf0b4;
  background: rgba(22, 223, 102, .08);
}

/* 010 SLOT KAMPANYA, AKILLI HESAP VE ÇİFT ONAY */
.field-help {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: .74rem;
  line-height: 1.4;
}

.business-advantage-form {
  margin-top: 17px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}

.slot-overview-panel {
  margin-bottom: 17px;
  padding: 19px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: linear-gradient(180deg, rgba(13, 41, 77, .96), rgba(6, 24, 48, .98));
}

.slot-overview-panel h2,
.slot-overview-panel p {
  margin: 5px 0 0;
}

.slot-overview-panel p {
  color: var(--muted);
}

.slot-counter {
  flex: 0 0 auto;
  padding: 9px 13px;
  border-radius: 999px;
  color: var(--green);
  background: rgba(22, 223, 102, .09);
  font-weight: 900;
}

.campaign-slot-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 11px;
  margin-bottom: 17px;
}

.campaign-slot-overview {
  min-height: 138px;
  padding: 15px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  border: 1px solid var(--line);
  border-radius: 19px;
  color: white;
  background: rgba(4, 18, 39, .78);
  text-align: left;
}

.campaign-slot-overview span {
  color: var(--green);
  font-size: .7rem;
  font-weight: 950;
  letter-spacing: .08em;
}

.campaign-slot-overview strong {
  line-height: 1.35;
}

.campaign-slot-overview b {
  margin-top: auto;
  color: #9fc2ff;
  font-size: .8rem;
}

.campaign-slot-overview.empty {
  border-style: dashed;
  opacity: .76;
}

.campaign-slot-overview:hover {
  border-color: rgba(22, 223, 102, .55);
}

.campaign-price-preview {
  margin: -2px 0 15px;
  padding: 11px 13px;
  border: 1px solid var(--line);
  border-radius: 14px;
  color: var(--muted);
  background: rgba(4, 18, 39, .58);
  font-size: .8rem;
  line-height: 1.45;
}

.campaign-price-preview.success {
  border-color: rgba(22, 223, 102, .35);
  color: #8cf0b4;
}

.campaign-price-preview.error {
  border-color: rgba(255, 91, 91, .35);
  color: #ffb1b1;
}

.campaign-fixed-pricing,
.student-campaign-fixed-price {
  display: flex;
  align-items: baseline;
  gap: 9px;
  flex-wrap: wrap;
}

.campaign-fixed-pricing span,
.student-campaign-fixed-price span {
  color: var(--muted);
  text-decoration: line-through;
}

.campaign-fixed-pricing strong,
.student-campaign-fixed-price strong {
  color: var(--green);
  font-size: 1.35rem;
}

.campaign-fixed-pricing b,
.student-campaign-fixed-price b {
  color: #9fc2ff;
  font-size: .75rem;
}

.student-campaign-fixed-price {
  flex: 0 0 auto;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
}

.checkout-slot-section {
  margin: 6px 0 15px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.checkout-slot-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 11px;
}

.checkout-slot-heading h3 {
  margin: 4px 0 0;
}

.checkout-slot-heading > span {
  color: var(--green);
  font-size: .78rem;
  font-weight: 900;
  white-space: nowrap;
}

.checkout-campaign-slots {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.checkout-slot-card {
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: rgba(4, 18, 39, .68);
}

.checkout-slot-card.selected {
  border-color: rgba(22, 223, 102, .55);
  background: rgba(22, 223, 102, .07);
}

.checkout-slot-card > div:first-child span,
.checkout-slot-card > div:first-child strong {
  display: block;
}

.checkout-slot-card > div:first-child span {
  margin-bottom: 4px;
  color: var(--green);
  font-size: .66rem;
  font-weight: 950;
}

.checkout-slot-price {
  margin: 10px 0;
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.checkout-slot-price span {
  color: var(--muted);
  text-decoration: line-through;
  font-size: .78rem;
}

.checkout-slot-price b {
  color: #9fc2ff;
}

.slot-quantity-control {
  display: grid;
  grid-template-columns: 38px 1fr 38px;
  gap: 7px;
  align-items: center;
}

.slot-quantity-control button {
  min-height: 36px;
  border: 1px solid var(--line);
  border-radius: 10px;
  color: white;
  background: rgba(35, 97, 190, .4);
  font-size: 1.1rem;
  font-weight: 950;
}

.slot-quantity-control strong {
  text-align: center;
  font-size: 1.05rem;
}

.compact-empty {
  padding: 13px;
  margin-top: 8px;
}

.smart-calculator-expanded > div {
  padding-block: 9px;
}

.transaction-waiting {
  margin-top: 18px;
  padding: 22px;
  border: 1px solid rgba(255, 191, 72, .32);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(70, 48, 13, .42), rgba(6, 24, 48, .98));
  box-shadow: var(--shadow);
}

.transaction-waiting h2 {
  margin: 6px 0;
}

.transaction-waiting > p {
  margin: 0 0 14px;
  color: var(--muted);
}

.waiting-countdown {
  width: fit-content;
  margin-bottom: 14px;
  padding: 9px 14px;
  border-radius: 999px;
  color: #ffd27a;
  background: rgba(255, 191, 72, .1);
  font-size: 1.1rem;
  font-weight: 950;
  font-variant-numeric: tabular-nums;
}

.student-transaction-approval {
  padding: 20px;
  border: 1px solid rgba(255, 191, 72, .35);
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(255, 191, 72, .13), transparent 35%),
    linear-gradient(180deg, rgba(13, 41, 77, .96), rgba(6, 24, 48, .98));
  box-shadow: var(--shadow);
}

.student-approval-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.student-approval-head h2 {
  margin: 5px 0;
}

.student-approval-head p {
  margin: 0;
  color: var(--muted);
}

.student-approval-slots {
  display: grid;
  gap: 8px;
  margin: 16px 0;
}

.student-approval-slot-row {
  padding: 10px 12px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: rgba(4, 18, 39, .55);
}

.student-approval-slot-row span {
  color: var(--muted);
  font-size: .78rem;
}

.student-approval-slot-row strong {
  text-align: right;
  font-size: .8rem;
}

.student-approval-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 14px;
}

@media (max-width: 900px) {
  .campaign-slot-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .slot-overview-panel,
  .checkout-slot-heading,
  .student-approval-head,
  .student-approval-slot-row {
    flex-direction: column;
  }

  .campaign-slot-grid,
  .checkout-campaign-slots,
  .student-approval-actions {
    grid-template-columns: 1fr;
  }

  .student-campaign-fixed-price {
    align-items: flex-start;
  }

  .student-approval-slot-row strong {
    text-align: left;
  }
}

/* HARİTA GÖRÜNÜMÜ KRİTİK YEDEK DÜZELTMESİ */
.leaflet-container {
  position: relative;
  overflow: hidden;
  outline: 0;
  background: #d8e2eb;
  touch-action: pan-x pan-y;
}

.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  user-select: none;
  -webkit-user-drag: none;
}

.leaflet-container img.leaflet-tile,
.leaflet-container img.leaflet-marker-icon,
.leaflet-container img.leaflet-marker-shadow {
  max-width: none !important;
  max-height: none !important;
}

.leaflet-tile {
  visibility: hidden;
}

.leaflet-tile-loaded {
  visibility: inherit;
}

.leaflet-pane { z-index: 400; }
.leaflet-tile-pane { z-index: 200; }
.leaflet-overlay-pane { z-index: 400; }
.leaflet-shadow-pane { z-index: 500; }
.leaflet-marker-pane { z-index: 600; }
.leaflet-tooltip-pane { z-index: 650; }
.leaflet-popup-pane { z-index: 700; }

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none;
}

.leaflet-top { top: 0; }
.leaflet-right { right: 0; }
.leaflet-bottom { bottom: 0; }
.leaflet-left { left: 0; }

.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: auto;
  float: left;
  clear: both;
}

.leaflet-right .leaflet-control {
  float: right;
}

.leaflet-top .leaflet-control {
  margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
  margin-left: 10px;
}

.leaflet-right .leaflet-control {
  margin-right: 10px;
}


/* 011 MAĞAZA FOTOĞRAFI + HARİTA BİLGİ KARTI + NAVİGASYON */
.business-storefront-panel {
  margin-top: 18px;
}

.business-storefront-heading h2 {
  margin: 5px 0 8px;
}

.business-storefront-heading p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.business-storefront-layout {
  display: grid;
  grid-template-columns: minmax(280px, 1.05fr) minmax(280px, .95fr);
  gap: 18px;
  margin-top: 18px;
  align-items: start;
}

.business-storefront-preview {
  aspect-ratio: 16 / 9;
  min-height: 220px;
  overflow: hidden;
  display: grid;
  place-items: center;
  border: 1px dashed rgba(111, 166, 255, .34);
  border-radius: 21px;
  background: rgba(2, 13, 29, .5);
}

.business-storefront-preview img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.business-storefront-preview > div {
  padding: 25px;
  color: var(--muted);
  text-align: center;
}

.business-storefront-preview strong,
.business-storefront-preview span {
  display: block;
}

.business-storefront-preview strong {
  margin-bottom: 7px;
  color: white;
}

.business-storefront-preview span {
  font-size: .82rem;
  line-height: 1.45;
}

.business-storefront-form {
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 19px;
  background: rgba(2, 13, 29, .32);
}

.business-storefront-actions {
  display: flex;
  gap: 10px;
}

.business-storefront-actions .btn {
  width: auto;
  flex: 1 1 0;
}

.student-business-storefront-image {
  width: calc(100% + 36px);
  height: clamp(170px, 27vw, 260px);
  margin: -18px -18px 17px;
  display: block;
  object-fit: cover;
  border-bottom: 1px solid var(--line);
}

.student-map-popup {
  width: 230px;
}

.student-map-popup-image {
  width: calc(100% + 24px);
  height: 120px;
  margin: -12px -12px 10px;
  display: block;
  object-fit: cover;
  border-radius: 10px 10px 0 0;
}

.student-map-directions {
  margin-top: 10px;
  min-height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  color: white !important;
  background: #087640;
  font-size: .8rem;
  font-weight: 900;
  text-decoration: none;
}

.student-map-directions:hover {
  background: #066334;
}

@media (max-width: 760px) {
  .business-storefront-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 460px) {
  .business-storefront-actions {
    flex-direction: column;
  }

  .business-storefront-actions .btn {
    width: 100%;
  }

  .student-map-popup {
    width: 205px;
  }
}

/* 012 İŞLETME FOTOĞRAFI, DETAY SAYFASI VE RİZE HARİTA BAŞLANGICI */
.student-business-photo-link {
  display: block;
  margin: -18px -18px 17px;
  text-decoration: none;
}

.student-business-photo-link .student-business-storefront-image {
  width: 100%;
  margin: 0;
}

.student-business-photo-placeholder {
  min-height: 150px;
  margin: -18px -18px 17px;
  display: grid;
  place-items: center;
  padding: 20px;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  background:
    linear-gradient(135deg, rgba(18, 100, 255, .11), rgba(22, 223, 102, .06)),
    rgba(4, 18, 39, .72);
  text-align: center;
  text-decoration: none;
  font-size: .82rem;
  font-weight: 800;
}

.student-business-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 14px;
}

.student-business-open {
  width: auto;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-inline: 18px;
  text-decoration: none;
}

.business-detail-shell {
  width: min(100%, 760px);
  min-height: 100vh;
  margin: 0 auto;
  padding: max(16px, env(safe-area-inset-top)) 16px max(28px, env(safe-area-inset-bottom));
}

.business-detail-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.business-detail-topbar > span {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 850;
}

.business-detail-back {
  width: auto;
  min-height: 44px;
}

.business-detail-hero,
.business-detail-card {
  overflow: hidden;
  margin-bottom: 14px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(47, 126, 255, .12), transparent 35%),
    linear-gradient(180deg, rgba(13, 41, 77, .97), rgba(6, 23, 46, .98));
  box-shadow: 0 16px 44px rgba(0, 0, 0, .25);
}

.business-detail-photo-wrap {
  min-height: 220px;
  background: rgba(4, 18, 39, .72);
}

.business-detail-photo-wrap img {
  width: 100%;
  height: clamp(230px, 45vw, 390px);
  display: block;
  object-fit: cover;
}

.business-detail-photo-placeholder {
  min-height: 230px;
  display: grid;
  place-items: center;
  padding: 24px;
  color: var(--muted);
  background:
    linear-gradient(135deg, rgba(18, 100, 255, .12), rgba(22, 223, 102, .06));
  text-align: center;
  font-weight: 850;
}

.business-detail-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  padding: 20px 20px 12px;
}

.business-detail-heading h1 {
  margin: 6px 0 5px;
  font-size: clamp(1.55rem, 5vw, 2.15rem);
  letter-spacing: -.04em;
}

.business-detail-heading p {
  margin: 0;
  color: var(--muted);
}

.business-detail-rate {
  flex: 0 0 auto;
  min-width: 118px;
  padding: 12px 14px;
  border-radius: 18px;
  color: var(--green);
  background: rgba(22, 223, 102, .09);
  text-align: center;
}

.business-detail-rate span,
.business-detail-rate strong {
  display: block;
}

.business-detail-rate span {
  color: var(--muted);
  font-size: .68rem;
}

.business-detail-rate strong {
  margin-top: 3px;
  font-size: 1.55rem;
}

.business-detail-description {
  margin: 0;
  padding: 0 20px 22px;
  color: #edf4ff;
  line-height: 1.6;
}

.business-detail-card {
  padding: 20px;
}

.business-detail-card h2 {
  margin: 0 0 14px;
}

.business-detail-info-list {
  display: grid;
  border-top: 1px solid var(--line);
}

.business-detail-info-list > div {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .11);
}

.business-detail-info-list span {
  color: var(--muted);
  font-size: .8rem;
}

.business-detail-info-list strong {
  overflow-wrap: anywhere;
  font-size: .88rem;
}

.business-detail-directions {
  margin-top: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.business-detail-section-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 15px;
}

.business-detail-section-head h2 {
  margin: 5px 0 0;
}

.business-detail-campaigns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}

.business-detail-campaign-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(4, 18, 39, .74);
}

.business-detail-campaign-image {
  width: 100%;
  height: 165px;
  display: block;
  object-fit: cover;
  border-bottom: 1px solid var(--line);
}

.business-detail-campaign-body {
  padding: 15px;
}

.business-detail-campaign-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.business-detail-campaign-head span {
  color: var(--green);
  font-size: .69rem;
  font-weight: 950;
  letter-spacing: .07em;
}

.business-detail-campaign-head h3 {
  margin: 5px 0 0;
  font-size: 1rem;
  line-height: 1.3;
}

.business-detail-campaign-price {
  flex: 0 0 auto;
  text-align: right;
}

.business-detail-campaign-price span,
.business-detail-campaign-price strong {
  display: block;
}

.business-detail-campaign-price span {
  color: var(--muted);
  font-size: .72rem;
  text-decoration: line-through;
}

.business-detail-campaign-price strong {
  margin-top: 3px;
  color: var(--green);
  font-size: 1.08rem;
}

.business-detail-campaign-body > p {
  margin: 13px 0;
  color: #edf4ff;
  font-size: .84rem;
  line-height: 1.5;
}

.business-detail-campaign-meta {
  display: grid;
  border-top: 1px solid rgba(111, 166, 255, .12);
}

.business-detail-campaign-meta > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid rgba(111, 166, 255, .09);
}

.business-detail-campaign-meta span {
  color: var(--muted);
  font-size: .72rem;
}

.business-detail-campaign-meta strong {
  text-align: right;
  font-size: .76rem;
}

.business-detail-campaign-terms {
  align-items: flex-start;
  flex-direction: column;
}

.business-detail-campaign-terms strong {
  text-align: left;
  line-height: 1.45;
}

@media (max-width: 620px) {
  .business-detail-heading,
  .business-detail-section-head,
  .business-detail-campaign-head {
    flex-direction: column;
  }

  .business-detail-rate {
    width: 100%;
  }

  .business-detail-campaigns {
    grid-template-columns: 1fr;
  }

  .business-detail-campaign-price {
    text-align: left;
  }
}

@media (max-width: 430px) {
  .student-business-actions,
  .student-business-open {
    width: 100%;
  }

  .business-detail-info-list > div {
    grid-template-columns: 1fr;
    gap: 5px;
  }
}

/* 016 ADMIN ANONİM İŞLEM HARİTASI VE RAPORLAMA */
.analytics-shell {
  width: min(1500px, calc(100% - 34px));
  padding-bottom: 56px;
}

.analytics-header {
  align-items: flex-start;
}

.analytics-header-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.analytics-privacy-note,
.analytics-filter-panel,
.analytics-map-panel,
.analytics-panel,
.analytics-report-footer {
  margin-top: 18px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(18, 100, 255, .10), transparent 34%),
    linear-gradient(180deg, rgba(13, 41, 77, .97), rgba(6, 23, 46, .98));
  box-shadow: 0 18px 48px rgba(0, 0, 0, .22);
}

.analytics-privacy-note {
  padding: 16px 18px;
  border-color: rgba(22, 223, 102, .30);
  background:
    linear-gradient(135deg, rgba(22, 223, 102, .10), rgba(18, 100, 255, .08)),
    rgba(6, 23, 46, .95);
}

.analytics-privacy-note strong {
  color: var(--green);
  font-size: .92rem;
}

.analytics-privacy-note p {
  margin: 5px 0 0;
  color: var(--muted);
  line-height: 1.55;
}

.analytics-filter-panel,
.analytics-map-panel,
.analytics-panel {
  padding: 22px;
}

.analytics-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.analytics-section-head.compact {
  margin-bottom: 14px;
}

.analytics-section-head h2 {
  margin: 4px 0 0;
  font-size: clamp(1.25rem, 2.5vw, 1.7rem);
  letter-spacing: -.035em;
}

.analytics-section-head p {
  margin: 6px 0 0;
  color: var(--muted);
  line-height: 1.45;
}

.analytics-filter-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.analytics-filter-wide {
  grid-column: span 2;
}

.analytics-filter-help {
  margin: 14px 0 0;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.55;
}

.analytics-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.analytics-metric-card {
  min-height: 126px;
  display: grid;
  align-content: center;
  gap: 8px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background:
    radial-gradient(circle at top right, rgba(18, 100, 255, .16), transparent 44%),
    linear-gradient(180deg, rgba(13, 41, 77, .98), rgba(6, 23, 46, .98));
  box-shadow: 0 14px 34px rgba(0, 0, 0, .22);
}

.analytics-metric-card.accent {
  border-color: rgba(22, 223, 102, .34);
  background:
    radial-gradient(circle at top right, rgba(22, 223, 102, .17), transparent 44%),
    linear-gradient(180deg, rgba(13, 41, 77, .98), rgba(6, 23, 46, .98));
}

.analytics-metric-card span {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 850;
}

.analytics-metric-card strong {
  font-size: clamp(1.35rem, 3vw, 2rem);
  line-height: 1.05;
  letter-spacing: -.045em;
}

.analytics-map-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.analytics-view-button {
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: 13px;
  color: var(--muted);
  background: rgba(4, 18, 39, .86);
  font-weight: 900;
}

.analytics-view-button.active {
  color: white;
  border-color: rgba(18, 100, 255, .65);
  background: linear-gradient(135deg, #1470ff, #0749c9);
}

.analytics-map {
  width: 100%;
  height: clamp(440px, 58vh, 700px);
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #d9e7eb;
}

.analytics-marker-shell,
.student-map-marker-shell {
  border: 0 !important;
  background: transparent !important;
}

.analytics-map-pin {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  position: relative;
  border: 4px solid white;
  border-radius: 50% 50% 50% 10%;
  color: white;
  background: linear-gradient(145deg, #1470ff, #0749c9);
  box-shadow: 0 10px 24px rgba(3, 17, 39, .42);
  transform: rotate(-45deg);
}

.analytics-map-pin::after {
  content: "";
  position: absolute;
  inset: 8px;
  border-radius: 50%;
  background: rgba(4, 18, 39, .28);
}

.analytics-map-pin b {
  position: relative;
  z-index: 1;
  max-width: 34px;
  overflow: hidden;
  color: white;
  font-size: .70rem;
  line-height: 1;
  transform: rotate(45deg);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.analytics-map-popup {
  min-width: 240px;
  color: #07162b;
}

.analytics-map-popup-category {
  display: block;
  margin-bottom: 5px;
  color: #087640;
  font-size: .74rem;
  font-weight: 950;
  text-transform: uppercase;
}

.analytics-map-popup > strong {
  display: block;
  font-size: 1.02rem;
}

.analytics-map-popup > p {
  margin: 5px 0 10px;
  color: #4e5d70;
  font-size: .78rem;
  line-height: 1.4;
}

.analytics-popup-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
}

.analytics-popup-grid > div {
  display: grid;
  gap: 2px;
  padding: 8px;
  border-radius: 10px;
  background: #edf4fb;
}

.analytics-popup-grid span {
  color: #5f6e80;
  font-size: .66rem;
}

.analytics-popup-grid b {
  font-size: .78rem;
}

.analytics-grid-two {
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: 18px;
}

.analytics-breakdown-list {
  display: grid;
  gap: 14px;
}

.analytics-breakdown-row {
  display: grid;
  gap: 8px;
}

.analytics-breakdown-row > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 14px;
}

.analytics-breakdown-row strong {
  font-size: .92rem;
}

.analytics-breakdown-row span,
.analytics-breakdown-row small {
  color: var(--muted);
  font-size: .78rem;
}

.analytics-bar-track {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(4, 18, 39, .88);
}

.analytics-bar-track span {
  height: 100%;
  display: block;
  border-radius: inherit;
  background: linear-gradient(90deg, #1470ff, #16df66);
}

.analytics-mini-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.analytics-mini-stat {
  min-height: 112px;
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: rgba(4, 18, 39, .58);
}

.analytics-mini-stat span,
.analytics-mini-stat small {
  color: var(--muted);
  font-size: .73rem;
}

.analytics-mini-stat strong {
  font-size: 1.05rem;
}

.analytics-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 18px;
}

.analytics-table {
  width: 100%;
  min-width: 920px;
  border-collapse: collapse;
  background: rgba(4, 18, 39, .45);
}

.analytics-table th,
.analytics-table td {
  padding: 13px 14px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}

.analytics-table th {
  color: var(--muted);
  background: rgba(4, 18, 39, .90);
  font-size: .74rem;
  font-weight: 950;
  text-transform: uppercase;
}

.analytics-table td {
  font-size: .84rem;
}

.analytics-table tbody tr:last-child td {
  border-bottom: 0;
}

.analytics-table tbody tr:hover td {
  background: rgba(18, 100, 255, .07);
}

.analytics-export-history {
  display: grid;
  gap: 9px;
}

.analytics-history-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: rgba(4, 18, 39, .55);
}

.analytics-history-row > div {
  display: grid;
  gap: 3px;
}

.analytics-history-row span {
  color: var(--muted);
  font-size: .76rem;
}

.analytics-history-row b {
  color: var(--green);
  white-space: nowrap;
}

.analytics-report-footer {
  padding: 16px 18px;
  color: var(--muted);
  font-size: .78rem;
  line-height: 1.55;
}

.analytics-report-footer strong {
  color: var(--text);
}

.print-only {
  display: none;
}

/* Fotoğraf yoksa dış görsele bağlı olmayan konum pini */
.location-photo-placeholder {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 12px;
  text-align: center;
}

.location-pin-symbol {
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  position: relative;
  border: 4px solid rgba(255, 255, 255, .94);
  border-radius: 50% 50% 50% 12%;
  background: linear-gradient(145deg, #1470ff, #0749c9);
  box-shadow: 0 12px 28px rgba(0, 0, 0, .28);
  transform: rotate(-45deg);
}

.location-pin-symbol::after {
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: white;
}

.location-pin-symbol.small {
  width: 38px;
  height: 38px;
  border-width: 3px;
}

.location-pin-symbol.small::after {
  width: 11px;
  height: 11px;
}

.student-map-popup-placeholder {
  min-height: 108px;
  display: grid;
  place-items: center;
  margin-bottom: 10px;
  border-radius: 13px;
  background: linear-gradient(135deg, rgba(18, 100, 255, .13), rgba(22, 223, 102, .08));
}

.student-map-marker-pin {
  width: 34px;
  height: 34px;
  display: block;
  position: relative;
  border: 3px solid white;
  border-radius: 50% 50% 50% 9px;
  background: linear-gradient(145deg, #16df66, #087640);
  box-shadow: 0 8px 18px rgba(3, 17, 39, .42);
  transform: rotate(-45deg);
}

.student-map-marker-pin > span {
  width: 10px;
  height: 10px;
  position: absolute;
  top: 9px;
  left: 9px;
  border-radius: 50%;
  background: white;
}

@media (max-width: 1100px) {
  .analytics-filter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .analytics-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .analytics-grid-two {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .analytics-shell {
    width: min(100%, 760px);
    padding-inline: 12px;
  }

  .analytics-header,
  .analytics-section-head {
    flex-direction: column;
  }

  .analytics-header-actions,
  .analytics-map-actions,
  .analytics-section-head .header-actions {
    width: 100%;
  }

  .analytics-header-actions .btn,
  .analytics-section-head .header-actions .btn {
    flex: 1;
  }

  .analytics-filter-grid {
    grid-template-columns: 1fr 1fr;
  }

  .analytics-filter-wide {
    grid-column: span 2;
  }

  .analytics-map {
    height: 500px;
  }
}

@media (max-width: 480px) {
  .analytics-filter-grid,
  .analytics-metrics,
  .analytics-mini-grid {
    grid-template-columns: 1fr;
  }

  .analytics-filter-wide {
    grid-column: auto;
  }

  .analytics-filter-panel,
  .analytics-map-panel,
  .analytics-panel {
    padding: 16px;
  }

  .analytics-map-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .analytics-map-actions .analytics-view-button:last-child {
    grid-column: span 2;
  }

  .analytics-map {
    height: 430px;
  }
}

@media print {
  @page {
    size: A4 landscape;
    margin: 12mm;
  }

  html,
  body {
    color: #111;
    background: white !important;
  }

  body {
    font-family: Arial, sans-serif;
  }

  .no-print,
  .loading,
  .leaflet-control-container,
  .analytics-export-history,
  #analyticsExportEmpty {
    display: none !important;
  }

  .print-only {
    display: block !important;
  }

  .analytics-shell {
    width: 100%;
    max-width: none;
    padding: 0;
  }

  .analytics-header,
  .analytics-privacy-note {
    display: none;
  }

  .analytics-report-header {
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 2px solid #138d4c;
  }

  .analytics-report-header span {
    color: #138d4c;
    font-size: 9pt;
    font-weight: 700;
  }

  .analytics-report-header h1 {
    margin: 4px 0;
    font-size: 18pt;
  }

  .analytics-report-header p {
    margin: 0;
    color: #555;
    font-size: 8.5pt;
  }

  .analytics-metrics {
    grid-template-columns: repeat(4, 1fr);
    gap: 7px;
    margin-top: 0;
  }

  .analytics-metric-card,
  .analytics-metric-card.accent,
  .analytics-map-panel,
  .analytics-panel,
  .analytics-report-footer {
    color: #111;
    border: 1px solid #bbb;
    background: white !important;
    box-shadow: none;
    break-inside: avoid;
  }

  .analytics-metric-card {
    min-height: 72px;
    padding: 10px;
  }

  .analytics-metric-card span,
  .analytics-section-head p,
  .analytics-breakdown-row span,
  .analytics-breakdown-row small,
  .analytics-mini-stat span,
  .analytics-mini-stat small,
  .analytics-report-footer {
    color: #555;
  }

  .analytics-metric-card strong {
    font-size: 13pt;
  }

  .analytics-map-panel,
  .analytics-panel {
    margin-top: 10px;
    padding: 12px;
  }

  .analytics-map {
    height: 360px;
    border: 1px solid #aaa;
  }

  .analytics-grid-two {
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }

  .analytics-mini-stat,
  .analytics-table-wrap {
    border-color: #bbb;
    background: white;
  }

  .analytics-table {
    min-width: 0;
    color: #111;
    background: white;
  }

  .analytics-table th {
    color: #222;
    background: #eee;
  }

  .analytics-table th,
  .analytics-table td {
    padding: 6px;
    border-color: #ccc;
    font-size: 7.5pt;
  }

  .analytics-bar-track {
    background: #ddd;
  }

  .analytics-bar-track span {
    background: #138d4c;
  }
}

/* ========================================================================== 
   017 • VERİ STANDARDİZASYONU, İŞ İLANI, ŞEHİR İSTEK KUTUSU, BİLDİRİMLER
   ========================================================================== */
.controlled-field-note,
.field-help,
.muted-copy {
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.5;
}

.student-subpage {
  width: min(1160px, calc(100% - 28px));
  margin: 0 auto;
  padding: 28px 0 60px;
}

.student-subpage-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(13,35,68,.98), rgba(4,17,36,.98));
  box-shadow: var(--shadow);
}

.student-subpage-header h1 { margin: 5px 0 8px; font-size: clamp(1.7rem, 4vw, 2.55rem); }
.student-subpage-header p { margin: 0; max-width: 720px; color: var(--muted); line-height: 1.65; }

.student-plan-panel,
.student-service-panel {
  margin-top: 20px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(10,28,54,.86);
}

.student-plan-grid,
.student-service-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.student-plan-card,
.student-service-card {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255,255,255,.035);
}

.student-plan-card.green { border-color: rgba(35,220,128,.42); }
.student-plan-card.blue { border-color: rgba(67,146,255,.42); }
.student-plan-card h3,
.student-service-card h3 { margin: 0 0 7px; }
.student-plan-card p,
.student-service-card p { margin: 0; color: var(--muted); line-height: 1.55; }
.student-plan-price { display: block; margin-top: 12px; font-size: 1.45rem; font-weight: 900; }

.access-badge,
.access-lock-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .02em;
}

.access-badge.green,
.access-lock-badge { color: #a6ffca; background: rgba(24,202,103,.12); border: 1px solid rgba(24,202,103,.30); }
.access-badge.blue { color: #c3dcff; background: rgba(67,146,255,.13); border: 1px solid rgba(67,146,255,.30); }
.access-locked { position: relative; border-color: rgba(255,192,72,.36) !important; }
.access-locked::after { content: "🔒"; position: absolute; top: 12px; right: 12px; font-size: 1.05rem; }
.access-lock-note { color: #ffd88a; font-size: .82rem; line-height: 1.45; }
.business-detail-lock { margin: 14px 0; padding: 13px 15px; border: 1px solid rgba(255,192,72,.35); border-radius: 14px; color: #ffe2a2; background: rgba(255,177,40,.08); }

.header-actions,
.form-actions,
.student-job-actions,
.notification-actions,
.upgrade-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.form-grid-two { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.checkbox-line { display: flex; align-items: center; gap: 9px; min-height: 45px; font-weight: 800; }
.section-spacer { margin-top: 28px; }

/* İş ilanları */
.business-job-list,
.student-job-list { display: grid; gap: 14px; margin-top: 18px; }
.business-job-card,
.student-job-card {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(14,36,68,.90), rgba(7,22,43,.94));
}
.student-job-head,
.business-job-head { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; }
.student-job-head span,
.business-job-head span { color: var(--green); font-size: .76rem; font-weight: 900; letter-spacing: .05em; }
.student-job-head h2,
.business-job-head h3 { margin: 5px 0 6px; }
.student-job-head p,
.business-job-head p,
.student-job-description { color: var(--muted); line-height: 1.58; }
.student-job-meta { display: grid; gap: 7px; margin: 14px 0; padding: 12px; border-radius: 14px; background: rgba(255,255,255,.035); }
.student-job-meta span { color: var(--muted); }
.student-job-meta strong { color: var(--text); }
.mini-metrics { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; margin-top: 12px; }
.mini-metrics span { padding: 9px; border-radius: 11px; text-align: center; color: var(--muted); background: rgba(255,255,255,.045); }
.mini-metrics strong { display: block; color: var(--text); font-size: 1.05rem; }

/* Şehir İstek Kutusu */
.survey-privacy-note {
  margin: 18px 0;
  padding: 16px 18px;
  border: 1px solid rgba(29,211,112,.30);
  border-radius: 17px;
  background: rgba(29,211,112,.07);
}
.survey-privacy-note p { margin: 5px 0 0; color: var(--muted); }
.survey-list { display: grid; gap: 18px; }
.survey-card { padding: 22px; border: 1px solid var(--line); border-radius: 22px; background: rgba(9,27,52,.94); }
.survey-card.answered { border-color: rgba(29,211,112,.30); }
.survey-card-head { display: flex; justify-content: space-between; gap: 16px; }
.survey-card-head span { color: var(--green); font-size: .76rem; font-weight: 900; }
.survey-card-head h2 { margin: 5px 0 6px; }
.survey-card-head p { margin: 0; color: var(--muted); line-height: 1.55; }
.survey-card-head b { white-space: nowrap; color: #bcd5ff; font-size: .8rem; }
.survey-answer-form { display: grid; gap: 15px; margin-top: 18px; }
.survey-question { margin: 0; padding: 16px; border: 1px solid var(--line); border-radius: 16px; }
.survey-question legend { padding: 0 8px; font-weight: 850; }
.survey-question legend em { color: #ff8b95; }
.survey-options { display: grid; gap: 9px; }
.survey-option { display: flex; gap: 10px; align-items: center; padding: 11px 12px; border-radius: 12px; background: rgba(255,255,255,.035); cursor: pointer; }
.survey-rating { display: flex; gap: 9px; flex-wrap: wrap; }
.survey-rating label input { position: absolute; opacity: 0; }
.survey-rating label span { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 12px; cursor: pointer; font-weight: 900; }
.survey-rating label input:checked + span { border-color: var(--green); background: rgba(29,211,112,.16); }

/* Öğrenci bildirimleri */
.notification-list { display: grid; gap: 14px; margin-top: 18px; }
.notification-card { padding: 20px; border: 1px solid var(--line); border-radius: 20px; background: rgba(9,27,52,.94); }
.notification-card.unread { border-color: rgba(29,211,112,.42); box-shadow: inset 4px 0 0 var(--green); }
.notification-card.read { opacity: .83; }
.notification-card-head { display: flex; justify-content: space-between; color: var(--muted); font-size: .78rem; }
.notification-card-head span { color: var(--green); font-weight: 900; }
.notification-card h2 { margin: 10px 0 7px; }
.notification-card p { color: var(--muted); line-height: 1.6; }

/* Admin sistem merkezi */
.system-shell { width: min(1440px, calc(100% - 28px)); }
.system-tabs { display: flex; gap: 8px; overflow-x: auto; margin: 20px 0; padding: 7px; border: 1px solid var(--line); border-radius: 16px; background: rgba(8,24,47,.9); }
.system-tab { flex: 0 0 auto; padding: 11px 15px; border: 0; border-radius: 11px; color: var(--muted); background: transparent; font: inherit; font-weight: 850; cursor: pointer; }
.system-tab.active { color: #07172b; background: var(--green); }
.system-panel { display: none; }
.system-panel.active { display: block; }
.system-two-column { display: grid; grid-template-columns: minmax(340px,.78fr) minmax(0,1.45fr); gap: 18px; }
.system-form { display: grid; align-content: start; gap: 14px; }
.system-form h2,.system-form h3 { margin: 0; }
.reference-summary-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.reference-summary-card { padding: 14px; border: 1px solid var(--line); border-radius: 14px; text-align: left; color: var(--text); background: rgba(255,255,255,.035); cursor: pointer; }
.reference-summary-card span { display: block; color: var(--muted); font-size: .78rem; }
.reference-summary-card strong { font-size: 1.45rem; }
.reference-list { margin-top: 18px; max-height: 560px; overflow: auto; }
.reference-row { display: flex; justify-content: space-between; gap: 12px; padding: 11px 3px; border-bottom: 1px solid var(--line); }
.reference-row small { display: block; margin-top: 3px; color: var(--muted); }
.reference-row > span { color: var(--green); font-size: .76rem; font-weight: 850; }
.business-standard-list,.upgrade-request-list,.admin-survey-list,.notification-suggestion-list,.admin-notification-list { display: grid; gap: 12px; }
.business-standard-row,.upgrade-request-row,.admin-survey-row,.notification-suggestion,.admin-notification-row { display: flex; justify-content: space-between; gap: 18px; padding: 17px; border: 1px solid var(--line); border-radius: 17px; background: rgba(9,27,52,.88); }
.business-standard-row.needs-fix { border-color: rgba(255,177,40,.43); }
.business-standard-row.standardized { border-color: rgba(29,211,112,.24); }
.business-standard-row p,.upgrade-request-row p,.admin-survey-row p,.notification-suggestion p,.admin-notification-row p { margin: 5px 0; color: var(--muted); }
.business-standard-row small,.upgrade-request-row small,.admin-survey-row small,.notification-suggestion small,.admin-notification-row small { color: var(--muted); }
.business-standard-action { display: grid; grid-template-columns: minmax(190px,1fr) auto; gap: 9px; align-items: center; }
.system-metric-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; margin: 18px 0; }
.system-metric { padding: 17px; border: 1px solid var(--line); border-radius: 16px; background: rgba(9,27,52,.9); }
.system-metric span { display: block; color: var(--muted); font-size: .78rem; }
.system-metric strong { font-size: 1.55rem; }
.system-table-wrap { overflow-x: auto; }
.system-table { width: 100%; border-collapse: collapse; }
.system-table th,.system-table td { padding: 12px; border-bottom: 1px solid var(--line); text-align: left; }
.system-table th { color: #bcd5ff; font-size: .78rem; }
.system-table td small { display: block; color: var(--muted); margin-top: 4px; }
.survey-builder-head,.survey-builder-question-head,.survey-report-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.survey-builder-question { margin-bottom: 12px; padding: 14px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.025); }
.survey-builder-question .field { margin-top: 11px; }
.admin-survey-row > div:last-child { display: flex; gap: 8px; align-items: center; }
.survey-report { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.survey-report-question { padding: 14px 0; border-bottom: 1px solid var(--line); }
.survey-report-option { display: flex; justify-content: space-between; padding: 8px 10px; margin-top: 6px; border-radius: 9px; background: rgba(255,255,255,.035); }
.notification-suggestion { align-items: center; }
.notification-suggestion p { max-width: 680px; }

@media (max-width: 980px) {
  .system-two-column { grid-template-columns: 1fr; }
  .system-metric-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .reference-summary-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 680px) {
  .student-subpage-header,.student-job-head,.survey-card-head,.business-standard-row,.upgrade-request-row,.admin-survey-row,.notification-suggestion { flex-direction: column; }
  .student-plan-grid,.student-service-grid,.form-grid-two,.system-metric-grid { grid-template-columns: 1fr; }
  .student-subpage-header .btn { width: 100%; }
  .business-standard-action { grid-template-columns: 1fr; width: 100%; }
  .business-standard-action .btn { width: 100%; }
  .reference-summary-grid { grid-template-columns: 1fr 1fr; }
  .system-shell,.student-subpage { width: min(100% - 20px, 1000px); }
}
.survey-breakdown-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 16px 0; }
.survey-breakdown-card { padding: 13px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.025); }
.survey-breakdown-card h4 { margin: 0 0 8px; }
@media (max-width:680px){.survey-breakdown-grid{grid-template-columns:1fr;}}


/* =========================================================
   018 • ADMIN GÖRSEL YENİLEME
   İşlevsel seçicilere dokunmadan daha kurumsal ve kompakt arayüz
   ========================================================= */
.admin-shell {
  width: min(1460px, calc(100% - 40px));
  padding: 24px 0 56px;
}
.admin-shell::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 12% 0%, rgba(18,100,255,.13), transparent 30%),
    radial-gradient(circle at 88% 8%, rgba(22,223,102,.07), transparent 25%);
  z-index: -1;
}
.admin-header-card {
  position: relative;
  overflow: hidden;
  min-height: 126px;
  margin-bottom: 12px;
  padding: 24px 26px;
  border: 1px solid rgba(111,166,255,.22);
  border-radius: 20px;
  background: linear-gradient(125deg, rgba(12,35,66,.96), rgba(6,21,42,.97));
  box-shadow: 0 18px 46px rgba(0,0,0,.24);
}
.admin-header-card::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 36%;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--blue), var(--green));
}
.admin-title-block { min-width: 0; }
.admin-header h1 {
  margin: 5px 0 6px;
  font-size: clamp(1.9rem, 3.2vw, 2.75rem);
  line-height: 1.02;
  letter-spacing: -.045em;
}
.admin-header p {
  max-width: 720px;
  font-size: .91rem;
}
.admin-kicker { font-size: .72rem; letter-spacing: .13em; }
.admin-logout-button {
  min-height: 42px;
  padding-inline: 17px;
  border-radius: 12px;
  color: #d7e4f8;
  background: rgba(2,12,27,.50);
}
.admin-global-nav {
  position: sticky;
  top: 10px;
  z-index: 900;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin: 0 0 18px;
  padding: 6px;
  border: 1px solid rgba(111,166,255,.20);
  border-radius: 16px;
  background: rgba(4,17,36,.90);
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
  backdrop-filter: blur(16px);
}
.admin-global-nav a {
  min-height: 43px;
  display: grid;
  place-items: center;
  padding: 8px 13px;
  border-radius: 11px;
  color: #aebdd1;
  text-decoration: none;
  font-size: .88rem;
  font-weight: 850;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}
.admin-global-nav a:hover {
  color: #fff;
  background: rgba(255,255,255,.055);
}
.admin-global-nav a.active {
  color: #fff;
  background: linear-gradient(135deg, rgba(18,100,255,.98), rgba(8,70,189,.98));
  box-shadow: 0 8px 20px rgba(18,100,255,.22);
}

.admin-metrics,
.analytics-metrics {
  grid-template-columns: repeat(auto-fit, minmax(175px, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}
.metric-card,
.analytics-metric-card {
  position: relative;
  min-height: 112px;
  padding: 18px 18px 16px;
  overflow: hidden;
  border-radius: 17px;
  background: linear-gradient(155deg, rgba(14,43,80,.94), rgba(7,25,49,.96));
  box-shadow: 0 10px 28px rgba(0,0,0,.18);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.metric-card:hover,
.analytics-metric-card:hover {
  transform: translateY(-2px);
  border-color: rgba(111,166,255,.38);
  box-shadow: 0 16px 34px rgba(0,0,0,.24);
}
.metric-card::before,
.analytics-metric-card::before {
  content: attr(data-icon);
  position: absolute;
  top: 14px;
  right: 15px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(111,166,255,.20);
  border-radius: 10px;
  color: #9dc4ff;
  background: rgba(18,100,255,.08);
  font-weight: 950;
}
.metric-card span,
.analytics-metric-card span {
  max-width: calc(100% - 44px);
  font-size: .78rem;
  font-weight: 760;
}
.metric-card strong,
.analytics-metric-card strong {
  margin-top: 12px;
  font-size: clamp(1.65rem, 2.5vw, 2.15rem);
  letter-spacing: -.035em;
}
.analytics-metric-card.accent {
  border-color: rgba(22,223,102,.36);
  background: linear-gradient(155deg, rgba(10,63,65,.88), rgba(7,31,50,.96));
}
.analytics-metric-card.accent::before {
  color: #8dffb8;
  border-color: rgba(22,223,102,.25);
  background: rgba(22,223,102,.09);
}

.admin-module-tabs,
.system-tabs {
  gap: 6px;
  margin-bottom: 14px;
  padding: 6px;
  border-radius: 15px;
  background: rgba(5,19,39,.86);
  box-shadow: none;
}
.system-tabs {
  position: sticky;
  top: 75px;
  z-index: 850;
  margin-top: 0;
  backdrop-filter: blur(16px);
}
.admin-module-tab,
.system-tab {
  min-height: 41px;
  padding: 0 15px;
  border-radius: 10px;
  font-size: .86rem;
}
.admin-module-tab.active {
  background: linear-gradient(135deg, #1264ff, #0848bd);
}
.system-tab.active {
  color: #062016;
  background: linear-gradient(135deg, #23e576, #13c75f);
  box-shadow: 0 7px 18px rgba(22,223,102,.18);
}

.admin-panel,
.analytics-filter-panel,
.analytics-map-panel,
.analytics-panel,
.analytics-privacy-note {
  border-radius: 19px;
  box-shadow: 0 14px 38px rgba(0,0,0,.19);
}
.admin-panel { padding: 20px; }
.admin-panel-head { margin-bottom: 15px; }
.admin-panel-head h2,
.analytics-section-head h2 {
  font-size: clamp(1.18rem, 2vw, 1.55rem);
  letter-spacing: -.025em;
}
.admin-panel-head p,
.analytics-section-head p { font-size: .88rem; }

.btn {
  min-height: 44px;
  padding: 0 15px;
  border-radius: 12px;
  font-size: .88rem;
  letter-spacing: -.01em;
  transition: transform .16s ease, filter .16s ease, border-color .16s ease;
}
.btn:hover:not(:disabled) { transform: translateY(-1px); filter: brightness(1.07); }
.btn-primary { box-shadow: 0 8px 20px rgba(18,100,255,.20); }
.input,
.select {
  min-height: 46px;
  border-radius: 12px;
  background: rgba(3,15,33,.78);
}
.textarea { border-radius: 12px; background: rgba(3,15,33,.78); }
.field label { color: #dce7f8; font-size: .79rem; }

.applications-grid { gap: 11px; }
.application-card {
  padding: 17px 18px;
  border-radius: 15px;
  background: rgba(3,16,35,.63);
  box-shadow: inset 3px 0 0 rgba(18,100,255,.28);
  transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.application-card:hover {
  transform: translateY(-1px);
  border-color: rgba(111,166,255,.32);
  background: rgba(5,23,47,.78);
}
.application-head { margin-bottom: 13px; }
.application-info-row { padding: 9px 0; }
.application-actions { margin-top: 13px; }

.admin-table-wrap,
.system-table-wrap,
.analytics-table-wrap {
  border: 1px solid rgba(111,166,255,.16);
  border-radius: 14px;
  background: rgba(3,15,31,.42);
}
.admin-table th,
.system-table th,
.analytics-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  color: #bdd4f5;
  background: #09213e;
}
.admin-table td,
.system-table td,
.analytics-table td { border-bottom-color: rgba(111,166,255,.11); }
.admin-table tbody tr:hover td,
.system-table tbody tr:hover td,
.analytics-table tbody tr:hover td { background: rgba(18,100,255,.045); }

.system-shell,
.analytics-shell { width: min(1540px, calc(100% - 40px)); }
.system-two-column { gap: 14px; }
.system-form { gap: 12px; }
.reference-summary-card,
.system-metric,
.analytics-mini-stat,
.analytics-breakdown-row {
  border-radius: 12px;
  background: rgba(255,255,255,.028);
}
.reference-summary-card:hover { border-color: rgba(22,223,102,.38); }
.business-standard-row,
.upgrade-request-row,
.admin-survey-row,
.notification-suggestion,
.admin-notification-row {
  border-radius: 14px;
  background: rgba(4,18,39,.67);
}
.analytics-filter-grid { gap: 11px; }
.analytics-map { border-radius: 14px; }
.analytics-privacy-note {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 14px;
  padding: 15px 18px;
}
.analytics-privacy-note strong {
  margin: 0;
  padding: 7px 10px;
  border-radius: 9px;
  color: #9dffc2;
  background: rgba(22,223,102,.08);
  white-space: nowrap;
}
.analytics-privacy-note p { margin: 0; }

.admin-modal-card {
  border-radius: 19px;
  box-shadow: 0 28px 80px rgba(0,0,0,.55);
}

@media (max-width: 900px) {
  .admin-shell,
  .system-shell,
  .analytics-shell { width: min(100% - 22px, 100%); }
  .admin-header-card { min-height: 0; padding: 20px; }
  .admin-global-nav { top: 6px; grid-template-columns: repeat(4, minmax(125px,1fr)); overflow-x: auto; }
  .admin-global-nav a { white-space: nowrap; }
  .system-tabs { top: 66px; }
  .analytics-privacy-note { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .admin-header-card { align-items: stretch; flex-direction: column; gap: 16px; }
  .admin-logout-button { width: 100%; }
  .admin-global-nav { display: flex; }
  .admin-global-nav a { flex: 0 0 auto; min-width: 138px; }
  .metric-card,
  .analytics-metric-card { min-height: 103px; }
  .admin-panel { padding: 16px; }
  .admin-toolbar { width: 100%; align-items: stretch; flex-direction: column; }
  .admin-filter,
  .admin-refresh { width: 100%; }
  .application-info { grid-template-columns: 1fr; }
  .application-info-row { grid-template-columns: 108px 1fr; }
  .application-actions { align-items: stretch; flex-direction: column; }
  .application-actions .btn { width: 100%; }
  .system-tabs { top: 65px; }
}

@media print {
  .admin-global-nav { display: none !important; }
}

/* =========================================================
   019 — KOMPAKT ADMIN, İŞLETME PERFORMANSI, GÜNLÜK SLOTLAR
   ========================================================= */
.admin-global-nav {
  grid-template-columns: repeat(6, minmax(140px, 1fr));
}

.compact-admin-shell { padding-bottom: 42px; }
.compact-admin-header { min-height: 132px; }

.compact-metric-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 0;
}
.compact-metric-card {
  min-height: 118px;
  padding: 18px;
  border: 1px solid rgba(111, 166, 255, .2);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(17, 54, 99, .94), rgba(7, 29, 59, .96));
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .17);
}
.compact-metric-card span { color: #b7cff4; font-size: .86rem; font-weight: 800; }
.compact-metric-card strong { color: #fff; font-size: clamp(1.6rem, 2.3vw, 2.25rem); line-height: 1; }
.compact-metric-card small { color: #7f9dc6; font-size: .76rem; }
.compact-metric-card.accent {
  border-color: rgba(22, 223, 102, .42);
  background: linear-gradient(145deg, rgba(10, 83, 77, .92), rgba(7, 43, 63, .96));
}

.nav-alert-badge {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  margin-left: 7px;
  padding: 0 6px;
  border-radius: 999px;
  color: #fff;
  background: #ef3f5f;
  font-size: .72rem;
  font-weight: 900;
  box-shadow: 0 0 0 4px rgba(239, 63, 95, .12);
}

.compact-workflow-panel { padding: 20px; }
.workflow-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.workflow-card {
  min-height: 104px;
  padding: 15px;
  border: 1px solid rgba(111, 166, 255, .18);
  border-radius: 15px;
  background: rgba(3, 18, 39, .72);
  color: inherit;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.workflow-card:hover {
  transform: translateY(-2px);
  border-color: rgba(33, 112, 255, .62);
  background: rgba(8, 36, 74, .9);
}
.workflow-card > div { display: flex; align-items: center; gap: 12px; min-width: 0; }
.workflow-card strong { display: block; color: #fff; font-size: .98rem; }
.workflow-card p { margin: 5px 0 0; color: #91abd0; font-size: .78rem; line-height: 1.35; }
.workflow-icon {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  color: #52ff99;
  background: rgba(22, 223, 102, .1);
  font-weight: 900;
}
.workflow-count,
.workflow-arrow { color: #fff; font-size: 1.35rem; }
.workflow-card.has-warning {
  border-color: rgba(239, 63, 95, .62);
  box-shadow: inset 0 0 0 1px rgba(239, 63, 95, .08), 0 0 26px rgba(239, 63, 95, .08);
}
.workflow-card.has-warning .workflow-count {
  min-width: 34px;
  height: 34px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: #ef3f5f;
}
.dashboard-shortcuts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.dashboard-shortcuts a {
  padding: 18px;
  border: 1px solid rgba(111, 166, 255, .16);
  border-radius: 15px;
  background: rgba(4, 18, 39, .58);
  color: inherit;
  text-decoration: none;
}
.dashboard-shortcuts strong { display: block; color: #fff; margin-bottom: 5px; }
.dashboard-shortcuts span { color: #91abd0; font-size: .82rem; }

/* İşletme performansı */
.performance-filter-panel { padding: 20px; }
.performance-filter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.performance-filter-grid .field { margin: 0; }
.performance-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.performance-summary-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.performance-report-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin: 26px 2px 14px;
}
.performance-report-head h2 { margin: 5px 0 0; }
.performance-report-head p { margin: 0; max-width: 640px; color: #91abd0; text-align: right; }
.performance-category-list { display: grid; gap: 18px; }
.performance-category-section {
  padding: 16px;
  border: 1px solid rgba(111, 166, 255, .16);
  border-radius: 17px;
  background: rgba(5, 24, 50, .58);
}
.performance-category-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.performance-category-head h3 { margin: 0; color: #fff; }
.performance-category-head span {
  padding: 6px 10px;
  border-radius: 999px;
  color: #a9c4e9;
  background: rgba(255,255,255,.05);
  font-size: .76rem;
  font-weight: 800;
}
.business-performance-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.business-performance-card {
  padding: 14px;
  border: 1px solid rgba(111, 166, 255, .15);
  border-radius: 14px;
  background: rgba(3, 17, 37, .78);
}
.business-performance-card.has-data { border-color: rgba(22, 223, 102, .26); }
.business-performance-card.no-data { opacity: .72; }
.business-performance-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(111, 166, 255, .12);
}
.business-performance-title strong { display: block; color: #fff; }
.business-performance-title span { display: block; margin-top: 4px; color: #819bc0; font-size: .76rem; }
.business-performance-title > b {
  color: #7affad;
  font-size: .68rem;
  white-space: nowrap;
}
.business-performance-card.no-data .business-performance-title > b { color: #859ab8; }
.business-performance-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 11px 0;
}
.performance-card-metric {
  min-height: 58px;
  padding: 9px;
  border-radius: 10px;
  background: rgba(255,255,255,.035);
}
.performance-card-metric span { display: block; color: #819bc0; font-size: .69rem; }
.performance-card-metric strong { display: block; margin-top: 4px; color: #fff; font-size: .91rem; }
.performance-modal-card { width: min(760px, calc(100% - 24px)); }
.business-performance-print { padding: 8px 4px 18px; }
.performance-print-brand { color: #00e46d; font-weight: 900; letter-spacing: .12em; font-size: .75rem; }
.business-performance-print h2 { margin: 8px 0 3px; font-size: 2rem; }
.performance-print-subtitle,
.performance-print-period { color: #9bb4d8; }
.performance-print-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}
.performance-print-grid > div {
  padding: 14px;
  border: 1px solid rgba(111, 166, 255, .18);
  border-radius: 12px;
  background: rgba(255,255,255,.03);
}
.performance-print-grid .wide { grid-column: 1 / -1; }
.performance-print-grid span { display: block; color: #8da8cd; font-size: .78rem; }
.performance-print-grid strong { display: block; margin-top: 5px; color: #fff; font-size: 1.35rem; }
.performance-print-note { margin: 18px 0 0; color: #8fa7c9; font-size: .8rem; line-height: 1.55; }

/* Kompakt kampanya logu */
.campaign-log-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.compact-campaign-log-panel { padding: 20px; }
.campaign-log-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1.5fr) minmax(180px, .7fr) minmax(180px, .7fr);
  gap: 10px;
  margin: 12px 0;
}
.campaign-log-table-wrap { max-height: 68vh; }
.campaign-log-table td { vertical-align: middle; }
.campaign-log-table td strong { display: block; color: #fff; }
.campaign-log-table td small { display: block; margin-top: 3px; color: #829dc2; }
.campaign-log-table .btn { min-width: 74px; }

/* İşletme günlük/saatlik slot alanı */
.campaign-schedule-box {
  padding: 14px;
  border: 1px solid rgba(22, 223, 102, .24);
  border-radius: 13px;
  background: rgba(22, 223, 102, .055);
}
.campaign-schedule-box.timed {
  border-color: rgba(33, 112, 255, .36);
  background: rgba(33, 112, 255, .06);
}
.campaign-schedule-box strong { color: #fff; }
.campaign-schedule-box > p { margin: 5px 0 0; color: #9ab4d7; font-size: .82rem; line-height: 1.45; }
.campaign-schedule-box .row { margin-top: 12px; }

@media (max-width: 1180px) {
  .compact-metric-grid,
  .performance-summary-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .workflow-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .business-performance-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-global-nav { display: flex; overflow-x: auto; }
  .admin-global-nav a { flex: 0 0 auto; min-width: 150px; white-space: nowrap; }
}
@media (max-width: 760px) {
  .compact-metric-grid,
  .performance-summary-grid,
  .workflow-card-grid,
  .dashboard-shortcuts,
  .business-performance-grid,
  .performance-filter-grid,
  .campaign-log-metrics { grid-template-columns: 1fr; }
  .performance-report-head { align-items: flex-start; flex-direction: column; }
  .performance-report-head p { text-align: left; }
  .campaign-log-toolbar { grid-template-columns: 1fr; }
  .performance-actions .btn { width: 100%; }
  .compact-metric-card { min-height: 100px; }
}

@media print {
  body { background: #fff !important; color: #111 !important; }
  .no-print,
  .loading,
  #performanceError,
  .performance-actions { display: none !important; }
  .admin-shell { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
  .compact-metric-grid,
  .performance-summary-grid { grid-template-columns: repeat(5, 1fr) !important; }
  .compact-metric-card,
  .performance-category-section,
  .business-performance-card,
  .business-performance-print,
  .performance-print-grid > div {
    background: #fff !important;
    color: #111 !important;
    border-color: #ccc !important;
    box-shadow: none !important;
  }
  .compact-metric-card strong,
  .compact-metric-card span,
  .compact-metric-card small,
  .performance-category-head h3,
  .business-performance-title strong,
  .performance-card-metric strong,
  .business-performance-print h2,
  .performance-print-grid strong { color: #111 !important; }
  .performance-category-section { break-inside: avoid; }
  .business-performance-card { break-inside: avoid; }
  .admin-modal { position: static !important; background: #fff !important; }
  .admin-modal-card { width: 100% !important; max-width: none !important; border: 0 !important; box-shadow: none !important; }
  body.single-business-print #performanceApp { display: none !important; }
  body.single-business-print #businessPerformanceModal { display: block !important; position: static !important; }
  body:not(.single-business-print) #businessPerformanceModal { display: none !important; }
}

/* =========================================================
   020 — KOMPAKT TABLOLAR, RAPOR DIŞA AKTARMA, YENİ ADMIN KİMLİĞİ
   ========================================================= */
body {
  background:
    radial-gradient(circle at 8% 4%, rgba(38, 112, 255, .14), transparent 28%),
    radial-gradient(circle at 92% 10%, rgba(22, 223, 102, .10), transparent 25%),
    radial-gradient(circle at 55% 100%, rgba(151, 74, 255, .08), transparent 32%),
    #020b19;
}

.admin-header-card {
  position: relative;
  overflow: hidden;
  min-height: 112px;
  padding: 18px 20px;
  border-color: rgba(102, 164, 255, .25);
  background:
    linear-gradient(115deg, rgba(10, 42, 82, .98), rgba(5, 23, 49, .97) 58%, rgba(7, 48, 51, .94));
}
.admin-header-card::after {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  right: -90px;
  top: -150px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(35, 229, 118, .18), transparent 66%);
  pointer-events: none;
}
.admin-title-block {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  column-gap: 16px;
  align-items: center;
}
.admin-title-block > .admin-brand-link { grid-row: 1 / span 3; }
.admin-title-block > .admin-kicker,
.admin-title-block > h1,
.admin-title-block > p { grid-column: 2; }

.admin-brand-link {
  display: flex;
  align-items: center;
  gap: 11px;
  color: inherit;
  text-decoration: none;
}
.admin-brand-mark {
  position: relative;
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 17px;
  color: #fff;
  background: linear-gradient(145deg, #1e74ff, #0c4cc1 56%, #0e9654);
  box-shadow: 0 13px 28px rgba(3, 15, 36, .45), inset 0 1px 0 rgba(255,255,255,.18);
  overflow: hidden;
}
.admin-brand-mark i {
  position: absolute;
  width: 34px;
  height: 21px;
  border: 2px solid rgba(255,255,255,.26);
  border-radius: 8px;
  transform: rotate(-13deg) translate(-3px, -2px);
}
.admin-brand-mark b { position: relative; z-index: 2; font-size: .9rem; letter-spacing: -.04em; }
.admin-brand-copy { display: none; }
.admin-brand-copy strong { color: #fff; }
.admin-brand-copy small { color: #8faad0; }
.admin-title-block h1 { margin: 2px 0 3px; }
.admin-title-block p { margin: 0; }

.admin-global-nav {
  border-color: rgba(105, 164, 255, .18);
  background: rgba(2, 13, 30, .88);
}
.admin-global-nav a:nth-child(1).active { background: linear-gradient(135deg, #1671ff, #0c4ec7); }
.admin-global-nav a:nth-child(2).active { background: linear-gradient(135deg, #8a54ff, #6432d8); }
.admin-global-nav a:nth-child(3).active { background: linear-gradient(135deg, #0fbf70, #087c4c); }
.admin-global-nav a:nth-child(4).active { background: linear-gradient(135deg, #16a6d9, #0d668f); }
.admin-global-nav a:nth-child(5).active { background: linear-gradient(135deg, #e99524, #b45f10); }
.admin-global-nav a:nth-child(6).active { background: linear-gradient(135deg, #e54d77, #aa254d); }

.compact-metric-grid { gap: 10px; }
.compact-metric-card {
  min-height: 96px;
  padding: 14px 15px;
  border-radius: 14px;
  box-shadow: 0 9px 24px rgba(0,0,0,.16);
}
.compact-metric-card strong { font-size: clamp(1.35rem, 2vw, 1.9rem); }
.compact-metric-card.tone-blue { border-color: rgba(62,143,255,.35); background: linear-gradient(145deg, rgba(15,70,142,.88), rgba(6,30,62,.96)); }
.compact-metric-card.tone-green { border-color: rgba(34,215,126,.35); background: linear-gradient(145deg, rgba(7,98,69,.84), rgba(5,35,48,.96)); }
.compact-metric-card.tone-purple { border-color: rgba(153,100,255,.34); background: linear-gradient(145deg, rgba(72,45,130,.84), rgba(22,25,57,.96)); }
.compact-metric-card.tone-amber { border-color: rgba(255,178,63,.35); background: linear-gradient(145deg, rgba(121,76,19,.82), rgba(45,31,27,.96)); }
.compact-metric-card.tone-emerald { border-color: rgba(45,233,142,.42); }

.compact-workflow-panel { padding: 15px; }
.workflow-card-grid { gap: 9px; }
.workflow-card {
  min-height: 78px;
  padding: 11px 12px;
  border-radius: 13px;
}
.workflow-icon { width: 36px; height: 36px; flex-basis: 36px; border-radius: 10px; }
.workflow-card p { display: none; }
.workflow-card strong { font-size: .88rem; }
.dashboard-shortcuts { gap: 9px; margin-top: 10px; }
.dashboard-shortcuts a { padding: 13px 15px; }

/* Başvurular: kart yerine tablo */
.application-summary-bar {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 8px;
  margin-bottom: 13px;
}
.application-summary-bar > div {
  min-height: 66px;
  padding: 11px 13px;
  border: 1px solid rgba(111,166,255,.16);
  border-radius: 12px;
  background: rgba(5,24,49,.70);
}
.application-summary-bar span { display: block; color: #8da8cc; font-size: .72rem; }
.application-summary-bar strong { display: block; margin-top: 3px; color: #fff; font-size: 1.25rem; }
.application-summary-bar .warning { border-color: rgba(239,63,95,.34); background: rgba(86,23,43,.32); }
.application-summary-bar .warning strong { color: #ff8aa5; }

.admin-module-tabs { margin-bottom: 10px; }
.admin-module-tab { min-height: 37px; }
.admin-module-panel { padding: 14px; }
.admin-module-panel .admin-panel-head { margin-bottom: 10px; }
.admin-module-panel .admin-panel-head h2 { font-size: 1.05rem; }
.admin-module-panel .admin-panel-head p { display: none; }
.admin-toolbar { gap: 8px; }
.admin-filter { min-width: 190px; }

.application-table-shell,
.performance-table-wrap {
  width: 100%;
  overflow: auto;
  border: 1px solid rgba(111,166,255,.16);
  border-radius: 13px;
  background: rgba(2,14,31,.55);
}
.application-table,
.performance-table {
  width: 100%;
  min-width: 1040px;
  border-collapse: collapse;
  color: #dce8f9;
}
.application-table th,
.performance-table th {
  padding: 9px 11px;
  color: #a9c4e8;
  background: #08203c;
  border-bottom: 1px solid rgba(111,166,255,.20);
  font-size: .70rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-align: left;
  white-space: nowrap;
}
.application-table td,
.performance-table td {
  padding: 9px 11px;
  border-bottom: 1px solid rgba(111,166,255,.10);
  font-size: .78rem;
  vertical-align: middle;
}
.application-table-row:hover td,
.performance-table tbody tr:hover td { background: rgba(27,96,190,.06); }
.table-identity { min-width: 145px; }
.table-identity strong { display: block; color: #fff; font-size: .82rem; }
.table-identity small { display: block; margin-top: 3px; color: #8da8cc; font-size: .70rem; }
.table-identity span { display: block; margin-top: 3px; color: #62dca0; font-size: .68rem; }
.table-date-cell { white-space: nowrap; color: #9fb6d6; }
.table-actions-cell { min-width: 235px; }
.table-action-group { display: flex; flex-wrap: wrap; gap: 5px; }
.table-btn { min-height: 31px; padding: 0 9px; border-radius: 8px; font-size: .70rem; }
.application-detail-row td { padding: 0 !important; background: rgba(9,32,61,.72); }
.application-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 0 14px;
  padding: 12px 14px;
  border-left: 3px solid #1e74ff;
}
.application-detail-grid .application-info-row { padding: 6px 0; }
.application-detail-grid .application-info-row span { font-size: .68rem; }
.application-detail-grid .application-info-row strong { font-size: .76rem; }

/* İşletme performansı: kategori altında Excel tipi tablo */
.performance-category-list { gap: 11px; }
.performance-category-section.performance-table-section {
  padding: 0;
  border-radius: 14px;
  overflow: hidden;
  background: rgba(4,19,40,.67);
}
.compact-category-head {
  min-height: 45px;
  margin: 0;
  padding: 10px 13px;
  background: linear-gradient(90deg, rgba(18,100,255,.13), rgba(22,223,102,.06));
  border-bottom: 1px solid rgba(111,166,255,.15);
}
.compact-category-head h3 { font-size: .95rem; }
.performance-table-wrap { border: 0; border-radius: 0; }
.performance-table { min-width: 1100px; }
.performance-table td strong { display: block; color: #fff; }
.performance-table td small { display: block; margin-top: 2px; color: #7893ba; font-size: .67rem; }
.performance-table .positive-cell { color: #79f3ad; font-weight: 800; }
.performance-table .revenue-cell { color: #9bc6ff; font-weight: 850; }
.performance-table .no-data-row { opacity: .56; }

/* Sistem raporları */
.report-action-group { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.survey-report-actions { margin: 12px 0; }
.system-panel[data-panel="jobs"] .admin-panel-head,
.system-panel[data-panel="surveys"] .admin-panel-head { align-items: center; }

/* Mobil */
@media (max-width: 900px) {
  .admin-title-block { grid-template-columns: auto minmax(0,1fr); column-gap: 12px; }
  .admin-brand-mark { width: 46px; height: 46px; flex-basis: 46px; border-radius: 14px; }
  .application-summary-bar { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .application-detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .admin-title-block { display: grid; }
  .admin-brand-copy { display: none; }
  .application-summary-bar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .application-summary-bar > div:first-child { grid-column: 1 / -1; }
  .application-detail-grid { grid-template-columns: 1fr; }
  .report-action-group { width: 100%; justify-content: stretch; }
  .report-action-group .btn { flex: 1 1 140px; }
}

@media print {
  body.print-jobs .admin-header-card,
  body.print-jobs .admin-global-nav,
  body.print-jobs .system-tabs,
  body.print-jobs .system-panel:not([data-panel="jobs"]),
  body.print-jobs #systemError,
  body.print-jobs #systemSuccess,
  body.print-survey .admin-header-card,
  body.print-survey .admin-global-nav,
  body.print-survey .system-tabs,
  body.print-survey .system-panel:not([data-panel="surveys"]),
  body.print-survey #surveyAdminForm,
  body.print-survey #adminSurveyList,
  body.print-survey #adminSurveyEmpty,
  body.print-survey #systemError,
  body.print-survey #systemSuccess { display: none !important; }

  body.print-jobs .system-panel[data-panel="jobs"],
  body.print-survey .system-panel[data-panel="surveys"] { display: block !important; }
  body.print-jobs .system-shell,
  body.print-survey .system-shell { display: block !important; width: 100% !important; }
  body.print-jobs .system-table,
  body.print-survey .survey-report { color: #111 !important; }
  body.print-survey .system-two-column { display: block !important; }
  body.print-survey .system-two-column > .admin-panel { border: 0 !important; padding: 0 !important; }
}

/* 021 — Gerçek Öğrenci Kart logosu */
.admin-brand-logo {
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  display: block;
  object-fit: contain;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .30), 0 0 0 1px rgba(255,255,255,.18);
  transition: transform .18s ease, box-shadow .18s ease;
}
.admin-brand-link:hover .admin-brand-logo {
  transform: translateY(-1px) scale(1.025);
  box-shadow: 0 16px 34px rgba(0, 0, 0, .36), 0 0 0 2px rgba(35,229,118,.22);
}
@media (max-width: 900px) {
  .admin-brand-logo { width: 52px; height: 52px; flex-basis: 52px; }
}
@media (max-width: 620px) {
  .admin-brand-logo { width: 46px; height: 46px; flex-basis: 46px; }
}
