/* ====== OrganiWeb :: temas claro/oscuro vía [data-theme] ====== */
:root,
[data-theme="dark"]{
  --ow-bg:#0b0e14; --ow-surface:#141925; --ow-surface-2:#1b2233;
  --ow-border:#222a3a; --ow-accent:#7c5cff; --ow-accent2:#00e0b8;
  --ow-text:#e7ecf3; --ow-muted:#8b95a7; --ow-input-bg:#1b2233; --ow-input-text:#ffffff;
}
[data-theme="light"]{
  --ow-bg:#f5f7fb; --ow-surface:#ffffff; --ow-surface-2:#eef1f7;
  --ow-border:#dde3ee; --ow-accent:#6a4ce0; --ow-accent2:#0bbf9c;
  --ow-text:#1a2030; --ow-muted:#5d6678; --ow-input-bg:#ffffff; --ow-input-text:#1a2030;
}

body{background:var(--ow-bg);color:var(--ow-text);
  font-family:'Segoe UI',system-ui,-apple-system,sans-serif;transition:background .2s,color .2s;}
a{color:var(--ow-text);text-decoration:none;} a:hover{color:var(--ow-accent2);}
.text-accent{color:var(--ow-accent2);}
.text-secondary{color:var(--ow-muted)!important;}

.ow-nav{background:var(--ow-bg);opacity:.98;
  backdrop-filter:blur(10px);border-bottom:1px solid var(--ow-border);}
.navbar-dark .nav-link{color:var(--ow-text);}
.btn-accent{background:var(--ow-accent);color:#fff;border:none;}
.btn-accent:hover{filter:brightness(1.1);color:#fff;}
.btn-outline-light{color:var(--ow-text);border-color:var(--ow-border);}
.btn-outline-light:hover{background:var(--ow-surface-2);color:var(--ow-text);}

.ow-hero{padding:120px 0 90px;position:relative;background:var(--ow-bg);}
.ow-hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;
  background:radial-gradient(900px 500px at 70% -10%,var(--ow-accent),transparent);}
.ow-hero>*{position:relative;}
.ow-hero h1{font-size:3.2rem;font-weight:800;line-height:1.1;}

.ow-card{background:var(--ow-surface);border:1px solid var(--ow-border);border-radius:16px;color:var(--ow-text);}
.card{background:var(--ow-surface);border:1px solid var(--ow-border);color:var(--ow-text);}
.ow-step-num{width:46px;height:46px;border-radius:50%;background:var(--ow-accent);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:700;}

.ow-footer{background:var(--ow-surface);border-top:1px solid var(--ow-border);}
.ow-footer h6{color:var(--ow-muted);text-transform:uppercase;font-size:.75rem;letter-spacing:1px;}

/* ---- FORM FIELDS: forzar color de texto (arregla letras invisibles) ---- */
input.form-control,
select.form-select,
textarea.form-control,
.form-control,.form-select,textarea{
  background-color:var(--ow-input-bg)!important;
  border:1px solid var(--ow-border)!important;
  color:var(--ow-input-text)!important;
  -webkit-text-fill-color:var(--ow-input-text)!important;}
.form-control::placeholder,
textarea::placeholder,
input::placeholder{color:var(--ow-muted)!important;opacity:.85!important;}
.form-control:focus,.form-select:focus,textarea:focus{
  background-color:var(--ow-input-bg)!important;color:var(--ow-input-text)!important;
  -webkit-text-fill-color:var(--ow-input-text)!important;
  border-color:var(--ow-accent)!important;
  box-shadow:0 0 0 .2rem rgba(124,92,255,.25);}
.form-label{color:var(--ow-text)!important;}
select option{background:var(--ow-input-bg);color:var(--ow-input-text);}
/* autofill (Chrome pinta de azul y oculta texto) */
input:-webkit-autofill{
  -webkit-text-fill-color:var(--ow-input-text)!important;
  -webkit-box-shadow:0 0 0 1000px var(--ow-input-bg) inset!important;}

.table{color:var(--ow-text);}
.table thead th{color:var(--ow-muted);border-color:var(--ow-border);}
.table td,.table th{border-color:var(--ow-border);}

.badge-gold{background:linear-gradient(135deg,#f5c451,#c9971f);color:#1a1206;}
.badge-platinum{background:linear-gradient(135deg,#cfd8e3,#8b97a8);color:#10141c;}
.badge-silver{background:linear-gradient(135deg,#d7dde6,#9aa6b5);color:#10141c;}
.ow-pricing{transition:.2s;} .ow-pricing:hover{transform:translateY(-6px);border-color:var(--ow-accent);}

/* theme toggle button */
.theme-toggle{background:none;border:1px solid var(--ow-border);color:var(--ow-text);
  border-radius:8px;padding:.25rem .55rem;cursor:pointer;line-height:1;}
.theme-toggle:hover{background:var(--ow-surface-2);}

/* ---- MOBILE ---- */
@media (max-width:768px){
  .ow-hero{padding:80px 0 60px;}
  .ow-hero h1{font-size:2.2rem;}
  .ow-hero .fs-4{font-size:1.15rem!important;}
  .table{font-size:.85rem;}
  .nav-tabs .nav-link{padding:.4rem .6rem;font-size:.9rem;}
}
/* admin sidebar responsive */
@media (max-width:992px){
  .ow-admin-wrap{flex-direction:column;}
  .ow-admin-side{width:100%!important;min-height:auto!important;}
}
