/* =========================================================
   EarnWithSaZahra - Dashboard & Auth Styles
   Uses the same CSS variables defined in style.css :root
   ========================================================= */

/* ---------- Auth pages (Login / Forgot / Reset) ---------- */
.ewz-auth-section{background-color:var(--ewz-bg-section);background-image:linear-gradient(rgba(12,20,12,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(12,20,12,.035) 1px,transparent 1px);background-size:28px 28px;min-height:100vh;display:flex;align-items:center;padding:40px 0}
.ewz-auth-wrap{max-width:560px;width:100%;margin:0 auto;padding:0 20px}
.ewz-auth-wrap.ewz-auth-wide{max-width:640px}
.ewz-auth-back{display:inline-flex;align-items:center;gap:8px;color:var(--ewz-global-color);font-size:15px;font-weight:500;margin-bottom:28px}
.ewz-auth-back svg{width:18px;height:18px;stroke:var(--ewz-global-color)}
.ewz-auth-back:hover{color:var(--ewz-light-green)}
.ewz-auth-back:hover svg{stroke:var(--ewz-light-green)}

.ewz-auth-box{width:100%;background:var(--ewz-white);border:1px solid var(--ewz-border-color);border-radius:20px;padding:36px 32px;box-shadow:0 8px 30px rgba(12,20,12,0.08)}
.ewz-auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:26px}
.ewz-auth-brand .ewz-brand-logo{width:44px;height:44px;font-size:19px}
.ewz-auth-box h1{color:var(--ewz-global-color);font-size:26px;font-weight:700;margin:0 0 8px;text-align:left}
.ewz-auth-sub{color:var(--ewz-text-color);font-size:14px;text-align:left;margin:0 0 26px}

.ewz-field{margin-bottom:20px}
.ewz-field-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ewz-field label{display:block;font-size:14px;font-weight:700;color:var(--ewz-global-color);margin-bottom:8px}
.ewz-field textarea,
.ewz-field select,
.ewz-field input[type=text],
.ewz-field input[type=email],
.ewz-field input[type=tel],
.ewz-field input[type=password]{width:100%;padding:14px 16px;border:1px solid var(--ewz-border-color);border-radius:10px;font-size:15px;color:var(--ewz-global-color);background:var(--ewz-white)}
.ewz-field input:focus,
.ewz-field select:focus,
.ewz-field textarea:focus{outline:none;border-color:var(--ewz-light-green)}
.ewz-field-hint{font-size:12px;color:var(--ewz-text-color);margin-top:6px;font-style:italic}

.ewz-input-icon{position:relative}
.ewz-input-icon svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;stroke:#8a938a;pointer-events:none}
.ewz-input-icon input{padding-left:46px !important}
.ewz-input-icon input.ewz-has-toggle{padding-right:46px !important}
.ewz-input-toggle{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:none;padding:4px;cursor:pointer;line-height:0}
.ewz-input-toggle svg{position:static;transform:none;width:18px;height:18px;stroke:#8a938a}

@media (max-width:560px){
    .ewz-field-grid-2{grid-template-columns:1fr}
}

/* ---------- Registration page extras ---------- */
.ewz-register-fee{font-size:14px;color:var(--ewz-text-color);margin:-10px 0 22px}
.ewz-register-fee strong{color:var(--ewz-global-color)}
.ewz-pay-box{background:#eef6f0;border:1px solid #d6ecdc;border-radius:14px;padding:20px;margin-bottom:26px}
.ewz-pay-box-title{font-size:14px;font-weight:700;color:var(--ewz-global-color);margin:0 0 14px}
.ewz-pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ewz-pay-card{background:var(--ewz-white);border:1px solid var(--ewz-border-color);border-radius:10px;padding:12px 40px 12px 14px;position:relative;display:block;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}
.ewz-pay-card-radio{position:absolute;top:12px;right:12px;width:18px;height:18px;accent-color:var(--ewz-light-green);cursor:pointer;margin:0}
.ewz-pay-card:hover{border-color:var(--ewz-light-green)}
.ewz-pay-card.is-selected,
.ewz-pay-card:has(.ewz-pay-card-radio:checked){background:#daefe2;border-color:var(--ewz-light-green)}
.ewz-pay-card-name{font-size:14px;font-weight:700;color:var(--ewz-global-color)}
.ewz-pay-card-holder{font-size:12px;color:var(--ewz-light-green);margin-top:2px}
.ewz-pay-card-number{font-size:13px;color:var(--ewz-text-color);margin-top:2px}
@media (max-width:560px){
    .ewz-pay-grid{grid-template-columns:1fr}
}
.ewz-panel-soft{background:#f5f7f5;border:1px solid var(--ewz-border-color);border-radius:12px;padding:18px;margin-bottom:22px}
.ewz-panel-soft-title{font-size:14px;font-weight:700;color:var(--ewz-global-color);margin:0 0 14px}

.ewz-field-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;font-size:14px}
.ewz-checkbox{display:flex;align-items:center;gap:9px;color:var(--ewz-global-color)}
.ewz-checkbox input[type=checkbox]{width:17px;height:17px;accent-color:var(--ewz-light-green)}
.ewz-link-sm{color:var(--ewz-light-green);font-weight:600;font-size:14px}
.ewz-link-sm:hover{color:var(--ewz-green)}

.ewz-btn-primary.ewz-btn-block{width:100%;padding:14px 20px;font-size:16px;border-radius:10px;background:linear-gradient(90deg,var(--ewz-light-green) 0%,var(--ewz-green) 100%)}
.ewz-btn-primary.ewz-btn-block:hover{filter:brightness(1.04)}
.ewz-auth-foot{text-align:center;margin-top:22px;font-size:14px;color:var(--ewz-text-color)}
.ewz-auth-foot .ewz-link-sm{font-weight:700}
.ewz-alert{padding:12px 14px;border-radius:8px;font-size:13px;margin-bottom:18px}
.ewz-alert-error{background:#fdecea;color:#b3261e;border:1px solid #f6c6c2}
.ewz-alert-success{background:#e7f8ee;color:var(--ewz-light-green);border:1px solid #b9e8cd}

@media (max-width:480px){
    .ewz-auth-box{padding:28px 20px;border-radius:16px}
    .ewz-auth-box h1{font-size:22px}
}

/* ---------- Dashboard layout ---------- */
.ewz-dash{display:flex;align-items:flex-start;min-height:calc(100vh - 160px);background:var(--ewz-bg-section)}

.ewz-dash-sidebar{width:264px;min-width:264px;background:var(--ewz-white);border-right:1px solid var(--ewz-border-color);position:sticky;top:0;height:100vh;overflow-y:auto;padding:20px 0;transition:transform .25s ease;z-index:40}

.ewz-dash-nav{list-style:none;margin:0;padding:0 12px}
.ewz-dash-nav li{margin-bottom:2px}
.ewz-dash-nav a{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:8px;font-size:14px;font-weight:500;color:var(--ewz-text-color)}
.ewz-dash-nav a svg{width:18px;height:18px;flex:none;stroke:var(--ewz-text-color)}
.ewz-dash-nav a:hover{background:var(--ewz-bg-section);color:var(--ewz-global-color)}
.ewz-dash-nav a:hover svg{stroke:var(--ewz-global-color)}
.ewz-dash-nav li.is-active a{background:var(--ewz-light-green);color:var(--ewz-white)}
.ewz-dash-nav li.is-active a svg{stroke:var(--ewz-white)}
.ewz-dash-nav-section{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#93a093;font-weight:700;margin:18px 14px 8px}
.ewz-dash-nav-logout a{color:var(--ewz-orange)}
.ewz-dash-nav-logout a svg{stroke:var(--ewz-orange)}

.ewz-dash-main{flex:1;min-width:0;padding:28px 32px 60px}
.ewz-dash-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.ewz-dash-topbar-left{display:flex;align-items:center;gap:14px}
.ewz-dash-title{font-size:22px;color:var(--ewz-global-color);margin:0}
.ewz-dash-title-sub{font-size:13px;color:var(--ewz-text-color);margin:2px 0 0}
.ewz-dash-user{display:flex;align-items:center;gap:10px}
.ewz-dash-user-avatar{width:38px;height:38px;border-radius:50%;background:var(--ewz-light-green);color:var(--ewz-white);display:flex;align-items:center;justify-content:center;font-weight:700}
.ewz-dash-user-name{font-size:14px;font-weight:600;color:var(--ewz-global-color)}
.ewz-dash-user-sub{font-size:12px;color:var(--ewz-text-color)}

.ewz-sidebar-toggle{display:none;background:var(--ewz-white);border:1px solid var(--ewz-border-color);border-radius:8px;padding:8px;cursor:pointer;flex-direction:column;gap:4px}
.ewz-sidebar-toggle span{width:20px;height:2px;background:var(--ewz-global-color);display:block}
.ewz-sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(12,20,12,.45);z-index:35}

/* Stat cards */
.ewz-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:28px}
.ewz-stat-card{background:var(--ewz-white);border:1px solid var(--ewz-border-color);border-radius:12px;padding:20px}
.ewz-stat-label{font-size:12px;color:var(--ewz-text-color);font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.ewz-stat-value{font-size:26px;color:var(--ewz-global-color);font-weight:700;margin-top:8px}
.ewz-stat-value.ewz-c-green{color:var(--ewz-light-green)}
.ewz-stat-value.ewz-c-orange{color:var(--ewz-orange)}
.ewz-stat-value.ewz-c-purple{color:var(--ewz-purple)}

/* Generic card / panel */
.ewz-panel{background:var(--ewz-white);border:1px solid var(--ewz-border-color);border-radius:12px;padding:22px;margin-bottom:24px}
.ewz-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.ewz-panel-head h2{font-size:16px;color:var(--ewz-global-color);margin:0}

/* Tables */
.ewz-table-wrap{overflow-x:auto}
.ewz-table{width:100%;border-collapse:collapse;font-size:13px}
.ewz-table th{text-align:left;color:var(--ewz-text-color);font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.3px;padding:10px 12px;border-bottom:1px solid var(--ewz-border-color);white-space:nowrap}
.ewz-table td{padding:12px;border-bottom:1px solid var(--ewz-border-color);color:var(--ewz-global-color);white-space:nowrap}
.ewz-table tr:last-child td{border-bottom:none}

/* Badges */
.ewz-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}
.ewz-badge-pending{background:#fff4e5;color:var(--ewz-orange)}
.ewz-badge-approved{background:#e7f8ee;color:var(--ewz-light-green)}
.ewz-badge-rejected{background:#fdecea;color:#b3261e}
.ewz-badge-blocked{background:#f1e9fb;color:var(--ewz-purple)}

/* Buttons small */
.ewz-btn-sm{display:inline-block;padding:7px 14px;border-radius:6px;font-size:12px;font-weight:600;border:none;cursor:pointer}
.ewz-btn-approve{background:var(--ewz-light-green);color:var(--ewz-white)}
.ewz-btn-reject{background:#fdecea;color:#b3261e}
.ewz-btn-outline{background:transparent;color:var(--ewz-global-color);border:1px solid var(--ewz-border-color)}

/* Empty state */
.ewz-empty{text-align:center;padding:40px 20px;color:var(--ewz-text-color);font-size:14px}

/* Dashboard-only header/footer (NOT the site header/footer) */
.ewz-dashhdr{background:var(--ewz-white);border-bottom:1px solid var(--ewz-border-color);padding:14px 24px}
.ewz-dashhdr-inner{max-width:1440px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}
.ewz-dashhdr-left{display:flex;align-items:center;gap:14px}
.ewz-dashhdr-brand{display:flex;align-items:center;gap:12px}
.ewz-dashhdr-brand .ewz-brand-logo{width:36px;height:36px;font-size:16px}
.ewz-dashftr{background:var(--ewz-bg-section);border-top:1px solid var(--ewz-border-color);padding:18px 24px;text-align:center}
.ewz-dashftr p{margin:0;font-size:13px;color:var(--ewz-text-color)}
@media (max-width:1024px){
    .ewz-sidebar-toggle{display:flex}
    .ewz-dash-sidebar{position:fixed;top:0;left:0;transform:translateX(-100%);box-shadow:0 0 24px rgba(0,0,0,.15)}
    .ewz-dash-sidebar.ewz-sidebar-open{transform:translateX(0)}
    .ewz-sidebar-overlay.ewz-sidebar-open{display:block}
    .ewz-dash-main{padding:20px 18px 48px}
    .ewz-stat-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
    .ewz-stat-grid{grid-template-columns:1fr}
    .ewz-dash-topbar{flex-wrap:wrap}
    .ewz-auth-box{padding:28px 20px}
}
