/* Vidovodo UI Polish V24 - Global form/control theme override */
:root{
  --vv-bg:#050814;
  --vv-panel:#0b1020;
  --vv-card:rgba(17,22,38,.84);
  --vv-card-2:rgba(24,29,48,.78);
  --vv-border:rgba(255,255,255,.10);
  --vv-border-strong:rgba(255,255,255,.18);
  --vv-text:#ffffff;
  --vv-muted:#aeb7d0;
  --vv-soft:#737b95;
  --vv-pink:#ff2e83;
  --vv-purple:#7b3dff;
  --vv-orange:#ff7a00;
  --vv-yellow:#ffc700;
  --vv-blue:#34b8ff;
  --vv-green:#20e39f;
  --vv-danger:#ff3e68;
  --vv-radius:18px;
  --vv-radius-sm:12px;
  --vv-shadow:0 18px 55px rgba(0,0,0,.34);
  --vv-glow:0 0 0 1px rgba(255,46,131,.18),0 18px 55px rgba(123,61,255,.13);
  --vv-gradient:linear-gradient(135deg,var(--vv-pink),var(--vv-purple) 52%,var(--vv-orange));
  --vv-gradient-soft:linear-gradient(135deg,rgba(255,46,131,.20),rgba(123,61,255,.16) 52%,rgba(255,122,0,.18));
}

/* Genel kart dili */
.vv-card,
.card,
.panel,
.content-card,
.admin-card,
.settings-card,
.form-card,
.wallet-card,
.analytics-card,
.report-card,
.creator-card,
.campaign-card,
.post-card,
.story-card,
.notification-card,
.message-card,
.profile-card,
.live-card,
.saved-card,
.repost-card,
.blocked-card,
.request-card,
.table-card,
section[class*="card"],
div[class*="card"],
div[class*="panel"]{
  background:linear-gradient(180deg,rgba(22,27,46,.86),rgba(10,15,30,.82));
  border:1px solid var(--vv-border);
  border-radius:var(--vv-radius);
  box-shadow:var(--vv-shadow);
  backdrop-filter:blur(16px);
}

/* Varsayılan beyaz input/select görünümünü komple temizle */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
select,
textarea,
.form-control,
.vv-input,
.vv-select{
  width:100%;
  min-height:48px;
  padding:13px 16px;
  color:var(--vv-text) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.035)) !important;
  border:1px solid var(--vv-border-strong) !important;
  border-radius:14px !important;
  outline:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 24px rgba(0,0,0,.12) !important;
  font:inherit;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}
input::placeholder,
textarea::placeholder{color:rgba(174,183,208,.62) !important;}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):focus,
select:focus,
textarea:focus,
.form-control:focus,
.vv-input:focus,
.vv-select:focus{
  border-color:rgba(255,46,131,.82) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045)) !important;
  box-shadow:0 0 0 4px rgba(255,46,131,.13),0 0 32px rgba(123,61,255,.15),inset 0 1px 0 rgba(255,255,255,.06) !important;
}
textarea{min-height:112px;resize:vertical;line-height:1.55;}
select{
  appearance:none !important;
  -webkit-appearance:none !important;
  padding-right:44px !important;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(255,255,255,.9) 50%),
    linear-gradient(135deg, rgba(255,255,255,.9) 50%, transparent 50%),
    linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.035)) !important;
  background-position:calc(100% - 20px) 50%, calc(100% - 14px) 50%, 0 0 !important;
  background-size:6px 6px,6px 6px,100% 100% !important;
  background-repeat:no-repeat !important;
}
select option{background:#11162a;color:#fff;}

/* File upload daha düzgün görünüm */
input[type="file"]{
  width:100%;
  color:var(--vv-muted);
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.035));
  border:1px solid var(--vv-border-strong);
  border-radius:14px;
  padding:10px;
}
input[type="file"]::file-selector-button{
  margin-right:14px;
  border:0;
  border-radius:12px;
  padding:10px 14px;
  color:#fff;
  font-weight:800;
  cursor:pointer;
  background:var(--vv-gradient);
  box-shadow:0 8px 22px rgba(255,46,131,.18);
}

/* Buton sistemi */
button,
.button,
.btn,
a.btn,
input[type="submit"],
input[type="button"],
.vv-btn{
  min-height:44px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:11px 18px;
  color:#fff !important;
  font-weight:800;
  letter-spacing:-.01em;
  text-decoration:none !important;
  cursor:pointer;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  box-shadow:0 12px 28px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, filter .16s ease;
}
button:hover,
.button:hover,
.btn:hover,
a.btn:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.vv-btn:hover{
  transform:translateY(-1px);
  border-color:rgba(255,46,131,.45);
  box-shadow:0 16px 36px rgba(0,0,0,.28),0 0 25px rgba(123,61,255,.12);
}
button:active,.button:active,.btn:active,.vv-btn:active{transform:translateY(0) scale(.99);}
.btn-primary,
.button-primary,
.vv-btn-primary,
button[name*="save"],
button[name*="submit"],
button[type="submit"],
input[type="submit"]{
  border:0 !important;
  background:var(--vv-gradient) !important;
  box-shadow:0 16px 34px rgba(255,46,131,.25),0 10px 28px rgba(255,122,0,.12) !important;
}
.btn-danger,
.button-danger,
.vv-btn-danger,
button[name*="delete"],
button[name*="remove"],
button[name*="archive"]{
  border:0 !important;
  background:linear-gradient(135deg,#ff3e68,#ff2e83,#ff7a00) !important;
}
.btn-muted,.button-muted,.vv-btn-muted{
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.028)) !important;
  border:1px solid var(--vv-border-strong) !important;
}

/* Radio ve checkboxları tema uyumlu yap */
input[type="radio"],input[type="checkbox"]{
  width:18px;height:18px;
  accent-color:var(--vv-pink);
  vertical-align:-3px;
  margin-right:7px;
}
label:has(input[type="radio"]),
label:has(input[type="checkbox"]){
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:10px 14px;
  margin:5px 8px 5px 0;
  border:1px solid var(--vv-border-strong);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  color:#fff;
  font-weight:800;
  cursor:pointer;
  transition:.16s ease;
}
label:has(input[type="radio"]:checked),
label:has(input[type="checkbox"]:checked){
  border-color:rgba(255,46,131,.82);
  background:linear-gradient(135deg,rgba(255,46,131,.22),rgba(123,61,255,.16),rgba(255,122,0,.18));
  box-shadow:0 0 0 1px rgba(255,46,131,.20),0 0 26px rgba(255,46,131,.14);
}

/* Özel segment/chip görünümü */
.vv-segment,
.segment,
.choice-group,
.goal-options,
.tabs,
.filter-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}
.vv-chip,
.chip,
.pill,
.tab,
.filter-tab,
.goal-chip,
.choice,
.segment button,
.choice-group button,
.goal-options button,
.tabs a,
.tabs button,
.filter-tabs a,
.filter-tabs button{
  min-height:44px;
  padding:11px 18px;
  border-radius:14px;
  border:1px solid var(--vv-border-strong);
  color:#fff !important;
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025));
  font-weight:850;
  text-decoration:none;
}
.vv-chip.active,
.chip.active,
.pill.active,
.tab.active,
.filter-tab.active,
.goal-chip.active,
.choice.active,
.segment .active,
.choice-group .active,
.goal-options .active,
.tabs .active,
.filter-tabs .active{
  border-color:rgba(255,122,0,.78) !important;
  background:linear-gradient(135deg,rgba(255,46,131,.34),rgba(123,61,255,.20),rgba(255,122,0,.34)) !important;
  box-shadow:0 0 0 1px rgba(255,46,131,.20),0 0 30px rgba(255,122,0,.14) !important;
}

/* Form içi bölüm numarası ve açıklamalar */
.vv-step,
.step-number,
.form-step-number{
  display:inline-grid;
  place-items:center;
  width:26px;height:26px;
  border-radius:999px;
  color:#fff;
  font-size:13px;
  font-weight:900;
  background:var(--vv-gradient);
  box-shadow:0 0 20px rgba(255,46,131,.25);
}
.form-help,.help-text,.muted,.small-note,small{color:var(--vv-muted) !important;}

/* Tablo ve admin listeleri */
table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 10px;
}
th{
  color:#c9d2ee;
  font-size:13px;
  text-align:left;
  padding:0 12px 8px;
}
td{
  padding:14px 12px;
  background:rgba(255,255,255,.045);
  border-top:1px solid rgba(255,255,255,.075);
  border-bottom:1px solid rgba(255,255,255,.075);
}
td:first-child{border-left:1px solid rgba(255,255,255,.075);border-radius:14px 0 0 14px;}
td:last-child{border-right:1px solid rgba(255,255,255,.075);border-radius:0 14px 14px 0;}

/* Kampanya / sponsorlu sayfa için ek hedefleme */
body:has([href*="/ads"]),
body:has(form[action*="ads"]){scroll-behavior:smooth;}
.ads-form,
.sponsor-form,
.campaign-form,
form[action*="ads"]{
  display:grid;
  gap:18px;
  padding:18px;
  border:1px solid var(--vv-border);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(19,24,42,.74),rgba(8,12,25,.78));
  box-shadow:var(--vv-glow);
}
form[action*="ads"] label{
  color:#fff;
  font-weight:850;
}
form[action*="ads"] select,
form[action*="ads"] input:not([type="radio"]):not([type="checkbox"]),
form[action*="ads"] textarea{max-width:100%;}

/* Mobil */
@media (max-width: 900px){
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),select,textarea{font-size:16px;}
  .vv-segment,.segment,.choice-group,.goal-options,.tabs,.filter-tabs{gap:8px;}
  .vv-chip,.chip,.pill,.tab,.filter-tab,.goal-chip,.choice{width:100%;justify-content:center;text-align:center;}
  table{display:block;overflow-x:auto;white-space:nowrap;}
}
