/* RYADOO UI controls — تصميم موحّد لعناصر الإدخال في كل المنصة */
:root{--rdc-accent:var(--accent,#8b5cf6);--rdc-accent-rgb:var(--accent-rgb,139,92,246)}

/* ===== Checkbox ===== */
input[type="checkbox"]:not(.toggle-switch input):not(.switch input):not([data-native]){
  -webkit-appearance:none;appearance:none;flex:none;
  width:20px;height:20px;margin:0;vertical-align:middle;cursor:pointer;position:relative;
  border-radius:7px;border:1.5px solid var(--border-light,#cfcad9);background:var(--bg-input,#fff);
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .12s ease;
}
input[type="checkbox"]:not(.toggle-switch input):not(.switch input):not([data-native]):hover{border-color:var(--rdc-accent)}
input[type="checkbox"]:not(.toggle-switch input):not(.switch input):not([data-native]):active{transform:scale(.92)}
input[type="checkbox"]:not(.toggle-switch input):not(.switch input):not([data-native]):focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--rdc-accent-rgb),.25)}
input[type="checkbox"]:not(.toggle-switch input):not(.switch input):not([data-native]):checked{
  background:linear-gradient(135deg,var(--rdc-accent),rgba(var(--rdc-accent-rgb),.78));border-color:var(--rdc-accent);
  box-shadow:0 4px 10px -2px rgba(var(--rdc-accent-rgb),.5);
}
input[type="checkbox"]:not(.toggle-switch input):not(.switch input):not([data-native]):checked::after{
  content:"";position:absolute;inset:0;margin:auto;width:10px;height:6px;top:3px;
  border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg);
}
input[type="checkbox"]:disabled{opacity:.5;cursor:not-allowed}

/* ===== Radio ===== */
input[type="radio"]:not([data-native]){
  -webkit-appearance:none;appearance:none;flex:none;width:20px;height:20px;margin:0;cursor:pointer;vertical-align:middle;
  border-radius:50%;border:1.5px solid var(--border-light,#cfcad9);background:var(--bg-input,#fff);transition:all .18s ease;
}
input[type="radio"]:not([data-native]):hover{border-color:var(--rdc-accent)}
input[type="radio"]:not([data-native]):checked{border-color:var(--rdc-accent);background:radial-gradient(circle,var(--rdc-accent) 0 42%,transparent 46%)}
input[type="radio"]:not([data-native]):focus-visible{outline:none;box-shadow:0 0 0 3px rgba(var(--rdc-accent-rgb),.25)}

/* ===== Native select (fallback/mobile): chevron + clean look ===== */
select:not([multiple]):not([size]):not([data-native]):not(.status-select){
  -webkit-appearance:none;appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b5cf6' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:left 14px center;background-size:16px;padding-inline-start:14px;padding-inline-end:14px;
}
html[dir="rtl"] select:not([multiple]):not([size]):not([data-native]):not(.status-select){padding-left:40px}
html[dir="ltr"] select:not([multiple]):not([size]):not([data-native]):not(.status-select){background-position:right 14px center;padding-right:40px}

/* ===== Custom dropdown ===== */
.rd-sel{position:relative;display:block;width:100%}
.rd-sel.is-inline{display:inline-block;width:auto;min-width:150px;vertical-align:middle}
.rd-sel>select{position:absolute!important;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;z-index:-1}
.rd-sel-btn{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:start;cursor:pointer;
  font:inherit;font-weight:700;color:var(--text-primary,#1b1230);padding:11px 14px;border-radius:12px;
  background:var(--bg-input,#fff);border:1.5px solid var(--border-light,#e1dee9);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;min-height:44px;
}
.rd-sel-btn:hover{border-color:rgba(var(--rdc-accent-rgb),.6)}
.rd-sel.open .rd-sel-btn,.rd-sel-btn:focus-visible{outline:none;border-color:var(--rdc-accent);box-shadow:0 0 0 3px rgba(var(--rdc-accent-rgb),.18)}
.rd-sel-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rd-sel-label.is-placeholder{color:var(--text-muted,#9d9da9);font-weight:600}
.rd-sel-chev{flex:none;width:18px;height:18px;color:var(--rdc-accent);transition:transform .2s ease}
.rd-sel.open .rd-sel-chev{transform:rotate(180deg)}
.rd-sel.is-disabled .rd-sel-btn{opacity:.55;cursor:not-allowed}
.rd-sel-menu{
  position:fixed;z-index:100000;max-height:280px;overflow:auto;padding:6px;border-radius:14px;
  background:var(--bg-card,#fff);border:1px solid var(--border-light,#e1dee9);
  box-shadow:0 18px 44px -10px rgba(20,10,40,.35),0 0 0 1px rgba(var(--rdc-accent-rgb),.06);
  opacity:0;transform:translateY(-6px) scale(.98);transform-origin:top;pointer-events:none;transition:opacity .15s ease,transform .15s ease;
}
.rd-sel-menu.show{opacity:1;transform:none;pointer-events:auto}
.rd-sel-opt{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:9px;cursor:pointer;
  font:inherit;font-size:13.5px;font-weight:700;color:var(--text-primary,#1b1230);transition:background .12s ease}
.rd-sel-opt:hover,.rd-sel-opt.kb{background:rgba(var(--rdc-accent-rgb),.12)}
.rd-sel-opt.sel{background:rgba(var(--rdc-accent-rgb),.16);color:var(--rdc-accent)}
.rd-sel-opt.sel::after{content:"";width:6px;height:11px;border:2px solid currentColor;border-top:0;border-left:0;transform:rotate(45deg);margin-inline-start:auto;flex:none;margin-top:-3px}
.rd-sel-opt.dis{opacity:.4;cursor:not-allowed}
.rd-sel-menu::-webkit-scrollbar{width:6px}.rd-sel-menu::-webkit-scrollbar-thumb{background:rgba(var(--rdc-accent-rgb),.35);border-radius:3px}

/* ===== Text inputs polish ===== */
.form-control,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="url"],input[type="tel"],input[type="search"],input[type="date"],textarea{
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
input[type="file"]::file-selector-button{
  margin-inline-end:12px;padding:8px 14px;border:0;border-radius:10px;cursor:pointer;font:inherit;font-weight:700;font-size:12.5px;
  color:#fff;background:linear-gradient(135deg,var(--rdc-accent),rgba(var(--rdc-accent-rgb),.8));
}
