/* Butonlar & sekmeler — modern / mobil uygulama hissi */

button.page-tab,
button.win-tab,
a.page-tab,
a.win-tab {
  -webkit-appearance: none !important;
  appearance: none !important;
  box-sizing: border-box;
  border: 0 !important;
  outline: none;
  background: transparent !important;
  color: rgba(255, 255, 255, .78) !important;
  font: inherit;
  font-size: .84rem !important;
  font-weight: 650 !important;
  letter-spacing: .01em;
  padding: .55rem 1rem !important;
  border-radius: 10px 10px 0 0 !important;
  cursor: pointer;
  white-space: nowrap;
  text-decoration: none !important;
  line-height: 1.2;
  transition: background .15s ease, color .15s ease, transform .15s ease;
  box-shadow: none !important;
}

button.page-tab:hover,
button.win-tab:hover,
a.page-tab:hover,
a.win-tab:hover {
  background: rgba(255, 255, 255, .12) !important;
  color: #fff !important;
}

button.page-tab.is-active,
button.win-tab.is-active,
a.page-tab.is-active,
a.win-tab.is-active {
  background: #fff !important;
  color: #0b1f33 !important;
  box-shadow: 0 -2px 0 #fff !important;
}

.page-tabbar,
.win-tabbar {
  display: flex !important;
  align-items: flex-end;
  gap: .25rem;
  padding: .5rem .55rem 0 !important;
  background: linear-gradient(180deg, #323232, #222) !important;
  border-bottom: 1px solid #111 !important;
  min-height: 46px;
}

.page-shell-head {
  background: linear-gradient(180deg, #2f2f2f, #1c1c1c) !important;
}

.page-shell-actions .btn {
  border-radius: 999px !important;
  min-height: 34px;
  padding: .4rem .95rem !important;
  font-size: .8rem !important;
  font-weight: 650;
  border: 1px solid rgba(255,255,255,.22) !important;
  background: rgba(255,255,255,.1) !important;
  color: #fff !important;
  box-shadow: none;
}
.page-shell-actions .btn:hover {
  background: rgba(255,255,255,.2) !important;
  transform: none;
}
.page-shell-actions .btn-navy,
.page-shell-actions .btn.btn-navy {
  background: linear-gradient(145deg, #c4a35a, #a8863f) !important;
  border-color: transparent !important;
  color: #0b1f33 !important;
}
.page-shell-actions .btn-danger {
  background: linear-gradient(145deg, #e05a5a, #b83a3a) !important;
  border-color: transparent !important;
  color: #fff !important;
}

/* Genel butonlar */
.panel-body .btn,
.admin-body .btn,
.win-body .btn,
.page-tab-body .btn,
.win-confirm .btn {
  -webkit-appearance: none;
  appearance: none;
  border-radius: 999px !important;
  font-weight: 650;
  letter-spacing: .01em;
  border: 0;
  min-height: 40px;
  padding: .55rem 1.15rem;
  box-shadow: 0 4px 14px rgba(11, 31, 51, .08);
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, filter .15s ease;
}

.panel-body .btn:hover,
.admin-body .btn:hover,
.win-body .btn:hover,
.page-tab-body .btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(11, 31, 51, .14);
}

.panel-body .btn:active,
.admin-body .btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(11, 31, 51, .1);
}

.btn-sm {
  min-height: 36px !important;
  padding: .4rem .9rem !important;
  font-size: .84rem !important;
  border-radius: 999px !important;
}

.btn-navy {
  background: linear-gradient(145deg, #163454, #0b1f33 55%, #081826) !important;
  color: #fff !important;
}
.btn-navy:hover {
  filter: brightness(1.08);
}

.btn-ghost {
  background: #eef2f7 !important;
  color: #0b1f33 !important;
  box-shadow: none !important;
  border: 1px solid #d7dee7 !important;
}
.btn-ghost:hover {
  background: #e4ebf3 !important;
  box-shadow: 0 4px 12px rgba(11, 31, 51, .08) !important;
}

.btn-danger {
  background: linear-gradient(145deg, #c24a4a, #a33b3b) !important;
  color: #fff !important;
}

.btn-gold {
  background: linear-gradient(145deg, #e0c078, #c4a35a 55%, #a8863f) !important;
  color: #0b1f33 !important;
  box-shadow: 0 6px 16px rgba(196, 163, 90, .28) !important;
}

.btn-outline {
  background: transparent !important;
  border: 1.5px solid rgba(255,255,255,.4) !important;
  color: #fff !important;
  box-shadow: none !important;
}
.btn-outline:hover {
  background: rgba(255,255,255,.1) !important;
}

/* Aksiyon satırı — dokunmatik haplar */
.actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  align-items: center;
}
.actions-row .btn {
  flex: 0 1 auto;
}

/* Tablodaki küçük işlem butonları */
.table-wrap .btn-sm,
td .btn-sm {
  min-height: 34px !important;
  padding: .35rem .75rem !important;
  font-size: .8rem !important;
}

.inline-form .btn {
  vertical-align: middle;
}

.live-search-row {
  display: flex;
  gap: .5rem;
  align-items: center;
}
.live-search-row input[type="search"] {
  flex: 1;
  min-width: 0;
  border: 1.5px solid #d7dee7;
  border-radius: 12px;
  padding: .7rem .95rem;
  font: inherit;
  font-size: 1rem;
  background: #fff;
  transition: border-color .15s, box-shadow .15s;
}
.live-search-row input[type="search"]:focus {
  outline: none;
  border-color: var(--navy, #0b1f33);
  box-shadow: 0 0 0 3px rgba(11, 31, 51, .12);
}
.live-search-row input[type="search"]::-webkit-search-cancel-button {
  cursor: pointer;
}
tbody tr[data-search][hidden] {
  display: none !important;
}

/* Mükellef / firma görselleri */
.entity-cell {
  display: flex;
  align-items: center;
  gap: .65rem;
  min-width: 0;
}
.entity-cell > span:last-child {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.entity-thumb {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  overflow: hidden;
  background: #e8eef4;
  color: #0b1f33;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1;
}
.entity-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.entity-thumb--sm {
  width: 36px;
  height: 36px;
  font-size: .72rem;
}
.entity-thumb--md {
  width: 48px;
  height: 48px;
  font-size: .85rem;
}
.entity-thumb--lg {
  width: 96px;
  height: 96px;
  font-size: 1.35rem;
}
.entity-thumb--person {
  border-radius: 50%;
}
.entity-thumb--company {
  border-radius: 12px;
  background: #fff;
  border: 1px solid #d7dee7;
}
.entity-thumb--company img {
  object-fit: contain;
  padding: 4px;
}
.entity-thumb--fallback {
  background: linear-gradient(145deg, #0b1f33, #1a3a5c);
  color: #f0c75e;
}
.entity-thumb--company.entity-thumb--fallback {
  border: 0;
}

.page-shell-identity {
  display: flex;
  align-items: center;
  gap: .65rem;
  min-width: 0;
}
.page-shell-identity .page-shell-sub {
  font-size: .85rem;
  opacity: .85;
  font-weight: 500;
  margin-top: .1rem;
}
.page-shell-head .entity-thumb--company {
  background: rgba(255, 255, 255, .12);
  border-color: rgba(255, 255, 255, .25);
}
.page-shell-head .entity-thumb--fallback {
  background: rgba(240, 199, 94, .2);
  color: #f0c75e;
}

.media-upload-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
}
.media-upload-card {
  border: 1px solid #d7dee7;
  border-radius: 14px;
  padding: 1rem;
  background: #fafbfc;
}
.media-upload-preview {
  margin-bottom: .75rem;
}
.media-upload-card strong {
  display: block;
  margin-bottom: .2rem;
}
.media-upload-card p {
  margin: 0 0 .75rem;
  color: #5b6775;
  font-size: .88rem;
}
.media-upload-card input[type="file"] {
  width: 100%;
  font: inherit;
  font-size: .88rem;
}

.panel-top-identity {
  display: flex;
  align-items: center;
  gap: .75rem;
}
.panel-top-identity h1 {
  margin: 0;
}
.panel-top-identity p {
  margin: .15rem 0 0;
}
