/* Sadiqdev UI refinement layer v32. Presentation only: no purchase/API logic. */
:root{--sd-radius:16px;--sd-line:rgba(148,163,184,.22);--sd-shadow:0 10px 30px rgba(15,23,42,.055);--sd-shadow-hover:0 16px 38px rgba(15,23,42,.095)}
html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}
body{ text-rendering:optimizeLegibility }
button,a,input,select,textarea{touch-action:manipulation}
button:not(:disabled),[role=button],a{ -webkit-tap-highlight-color:transparent }
button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:3px solid rgba(59,91,219,.28);outline-offset:2px}
input,select,textarea{max-width:100%;box-sizing:border-box}
img,svg,video{max-width:100%}
.card,.panel,.stat-card,.service-card,.service-box,.form-card,.content-card,.wallet-card,.transaction-card,.notification-card,.profile-card,.settings-card,.auth-card,.adm-tc,.adm-card,.svc-group,.api-section{border-radius:var(--sd-radius)}
.card,.panel,.stat-card,.service-card,.service-box,.form-card,.content-card,.wallet-card,.transaction-card,.notification-card,.profile-card,.settings-card{box-shadow:var(--sd-shadow);transition:box-shadow .18s ease,border-color .18s ease}
.card:hover,.panel:hover,.stat-card:hover,.service-card:hover,.service-box:hover{box-shadow:var(--sd-shadow-hover)}
button,.btn,.button,[type=submit],[type=button]{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
button:not(:disabled):active,.btn:active,[type=submit]:active{transform:translateY(1px)}
button:disabled,[type=submit]:disabled{cursor:wait;opacity:.72}
input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{min-height:42px;border-radius:11px}
textarea{min-height:100px;resize:vertical}
table{border-collapse:separate;border-spacing:0;max-width:100%}
.table-responsive,.table-wrap,.table-container,.transactions-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
th{font-weight:700}
.main-content,.dashboard-content,.page-content,.adm-body{min-width:0}
/* Service forms: clear grouping and comfortable mobile touch targets. */
form .form-group,form .form-row,.form-group{min-width:0}
label{line-height:1.45}
/* Admin consistency across pages with legacy component names. */
.adm-body .adm-tc,.adm-body .adm-card,.adm-body .rca-card,.adm-body .card,.adm-body .panel{border-radius:16px}
.adm-body .adm-tc,.adm-body .adm-card,.adm-body .rca-card{box-shadow:var(--sd-shadow)}
.adm-body input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.adm-body select,.adm-body textarea{min-height:42px}
/* Purchase feedback should remain visible without blocking the page unnecessarily. */
.sadiq-purchase-recovery-card{border-radius:20px!important}
@media(max-width:768px){
  .card,.panel,.stat-card,.service-card,.service-box,.form-card,.content-card,.wallet-card,.transaction-card,.notification-card,.profile-card,.settings-card{border-radius:14px}
  button,.btn,[type=submit],[type=button]{min-height:40px}
  .table-responsive,.table-wrap,.table-container{border-radius:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
[data-theme=dark] .card,[data-theme=dark] .panel,[data-theme=dark] .stat-card,[data-theme=dark] .service-card,[data-theme=dark] .service-box{box-shadow:0 8px 28px rgba(0,0,0,.14)}
