/* Market Study — forms.css */
/* ════ EXCEL UPLOAD ════ */
.excel-upload-body{padding:4px 0 6px;display:flex;flex-direction:column;gap:14px}
.excel-format-hint{background:linear-gradient(135deg,#F0FDF4,#DCFCE7);border:1.5px solid #86EFAC;border-radius:11px;padding:11px 14px}
.ef-title{font-family:var(--dp);font-weight:700;font-size:12.5px;color:#15803D;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.ef-cols{display:flex;gap:7px;flex-wrap:wrap}
.ef-col{font-size:12px;font-weight:600;color:#166534;background:rgba(22,163,74,.12);padding:3px 10px;border-radius:999px;border:1px solid #86EFAC}
.excel-drop-zone{
  border:2.5px dashed #C7D2FE;border-radius:14px;padding:28px 20px;text-align:center;
  cursor:pointer;transition:.2s;background:#FAFBFF;position:relative;
  user-select:none;-webkit-user-select:none;display:block;
}
.excel-drop-zone.drag{border-color:var(--brand2);background:#EEF0FF;transform:scale(1.01)}
.excel-drop-ico{font-size:34px;color:#C7D2FE;display:block;margin-bottom:8px;transition:.2s}
.excel-drop-zone.drag .excel-drop-ico{color:var(--brand2)}
.excel-drop-title{font-family:var(--dp);font-weight:700;font-size:14px;color:var(--ink2);margin-bottom:3px}
.excel-drop-sub{font-size:12px;color:var(--muted)}
.excel-file-name{margin-top:10px;display:inline-flex;align-items:center;gap:7px;background:#EEF0FF;color:var(--brand);font-weight:700;font-size:12.5px;padding:5px 13px;border-radius:999px}
.excel-spot-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.excel-history-row{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--brand2);padding:8px 12px;background:#EEF0FF;border-radius:9px}
.excel-status{padding:10px 14px;border-radius:10px;font-weight:700;font-size:13px;display:flex;align-items:center;gap:8px}
.excel-status.ok{background:var(--bull-bg);color:var(--bull);border:1.5px solid #86EFAC}
.excel-status.err{background:var(--bear-bg);color:var(--bear);border:1.5px solid #FCA5A5}

/* ════ SUPPORT US / QR ════ */
.support-box{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}
.support-head{font-family:var(--dp);font-weight:700;font-size:12.5px;color:var(--ink);display:flex;align-items:center;gap:7px;justify-content:center;margin-bottom:10px}
.qr-wrap{width:140px;height:140px;margin:0 auto;border-radius:13px;border:1.5px solid var(--line);background:#FAFBFF;display:grid;place-items:center;overflow:hidden}
.qr-img{width:100%;height:100%;object-fit:contain}
.qr-empty{display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--faint);font-size:11px}
.qr-empty i{font-size:34px;color:#C7D2FE}
.support-note{text-align:center;font-size:11px;color:var(--muted);margin-top:9px}
.qr-admin{display:flex;gap:7px;justify-content:center;margin-top:10px}
.qr-upload-btn{font-size:11.5px;padding:7px 12px}
.qr-remove-btn{padding:7px 11px;font-size:11.5px}

/* ════ DATE FILTERS ════ */
.log-filter{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}
.log-filter>i{color:var(--brand2)}
.date-select{font-family:var(--bd);font-size:12.5px;font-weight:600;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:9px;padding:6px 12px;cursor:pointer;transition:.15s;outline:none}
.date-select:hover{border-color:var(--brand)}
.date-select:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(99,102,241,.12)}

/* ════ FOOTER ════ */
.app-footer{margin:24px 0 8px;padding:18px 22px;background:linear-gradient(135deg,#FAFBFF,#F4F6FD);border:1px solid var(--line);border-radius:14px}
.footer-disclaimer{display:flex;gap:11px;font-size:11.5px;line-height:1.6;color:var(--muted)}
.footer-disclaimer>i{color:var(--warn);font-size:15px;flex-shrink:0;margin-top:1px}
.footer-disclaimer b{color:var(--ink2);font-weight:700}
.footer-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}
.footer-visits{font-size:12px;font-weight:600;color:var(--ink2);display:flex;align-items:center;gap:7px}
.footer-visits>i{color:var(--brand2)}
.footer-visits b{font-family:var(--nm);color:var(--brand2);font-weight:700}
.footer-copy{font-size:11px;color:var(--faint)}

/* ════ LOGIN PASSWORD FIELD ════ */
.login-ico{background:linear-gradient(135deg,#4338CA,#7C3AED)!important;box-shadow:0 8px 22px rgba(67,56,202,.32)}
.pass-field{position:relative;display:flex;align-items:center}
.pass-key-ico{position:absolute;left:14px;color:var(--brand2);font-size:14px;pointer-events:none}
.pass-field input{width:100%;padding:12px 44px 12px 40px;border:1.5px solid var(--line);border-radius:11px;font-size:14px;font-family:var(--bd);letter-spacing:.08em;outline:none;transition:.15s}
.pass-field input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(99,102,241,.14)}
.pass-toggle{position:absolute;right:8px;width:30px;height:30px;border:none;background:transparent;color:var(--faint);cursor:pointer;border-radius:8px;display:grid;place-items:center;transition:.15s}
.pass-toggle:hover{background:#F1F4FB;color:var(--brand2)}

/* Footer horizontal alignment with page content */
.app-footer{margin:8px 26px 24px}
@media(max-width:560px){.app-footer{margin:8px 14px 20px}}

/* ════ MEMBER AUTH (topbar) ════ */
.member-auth{display:flex;gap:6px}
.member-btn{font-size:12px;padding:6px 12px}
.member-chip{display:flex;align-items:center;gap:7px}
.chip-logout{border:none;background:transparent;color:var(--muted);cursor:pointer;padding:3px 5px;border-radius:6px;font-size:12px;transition:.15s}
.chip-logout:hover{background:#FEE2E2;color:var(--bear)}
@media(max-width:760px){.member-btn span,.member-btn{font-size:0}.member-btn i{font-size:13px}.member-btn{padding:7px 9px}}

/* ════ FEATURE GATE PAGE ════ */
.gate-wrap{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:20px}
.gate-card{max-width:480px;width:100%;text-align:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:40px 32px;box-shadow:var(--sh-lg)}
.gate-ico{width:72px;height:72px;border-radius:20px;margin:0 auto 18px;display:grid;place-items:center;font-size:30px;color:#fff;background:linear-gradient(135deg,#4338CA,#7C3AED);box-shadow:0 10px 28px rgba(67,56,202,.3)}
.gate-title{font-family:var(--dp);font-size:22px;font-weight:800;color:var(--ink);margin-bottom:10px}
.gate-sub{font-size:13.5px;color:var(--muted);line-height:1.6;margin-bottom:22px}
.gate-sub b{color:var(--ink2)}
.gate-actions{display:flex;gap:10px;justify-content:center;margin-bottom:22px;flex-wrap:wrap}
.gate-btn{font-size:14px;padding:11px 22px}
.gate-feats{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--line)}
.gate-feats span{font-size:12px;font-weight:600;color:var(--ink2);display:flex;align-items:center;gap:6px}
.gate-feats i{color:var(--brand2)}

/* ════ REGISTERED USERS TABLE ════ */
.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:8px}
.panel-title{font-family:var(--dp);font-weight:700;font-size:15px;color:var(--ink);display:flex;align-items:center;gap:8px}
.users-count{font-family:var(--nm);font-size:12px;font-weight:700;background:var(--brand);color:#fff;padding:2px 10px;border-radius:999px}
.users-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.users-table{width:100%;border-collapse:collapse;font-size:13px}
.users-table thead th{background:#F7FAFC;font-family:var(--dp);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);text-align:left;padding:11px 14px;border-bottom:1px solid var(--line)}
.users-table tbody td{padding:11px 14px;border-bottom:1px solid var(--line2);color:var(--ink2)}
.users-table tbody tr:last-child td{border-bottom:none}
.users-table tbody tr:hover{background:#FAFBFF}
.users-table .empty{text-align:center;color:var(--faint);padding:24px}
.users-actions{display:flex;gap:6px}
.row-btn.pwd{background:#EEF2FF;color:var(--brand)}
.row-btn.pwd:hover{background:var(--brand);color:#fff}

/* ════ BIAS INDEX BADGE ════ */
.bias-index{font-family:var(--nm);font-size:11px;font-weight:800;letter-spacing:.04em;background:rgba(255,255,255,.25);color:#fff;padding:2px 9px;border-radius:999px;margin-left:6px}

/* ════ DISCLAIMER ICON BADGE ════ */
.disc-ico{flex-shrink:0;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-size:14px;color:#fff;background:linear-gradient(135deg,#F59E0B,#D97706);box-shadow:0 4px 12px rgba(217,119,6,.28);margin-top:1px}

/* ════ PREFILLED (locked) REVIEW NAME ════ */
.field input.prefilled{background:#F0FDF4;border-color:#BBF7D0;color:var(--ink);font-weight:600;cursor:not-allowed}

/* ════ MEMBERSHIP — PAY / PENDING GATE ════ */
.pay-card{max-width:440px}
.pay-qr-wrap{width:200px;height:200px;margin:6px auto 16px;border-radius:16px;border:1.5px solid var(--line);background:#FAFBFF;display:grid;place-items:center;overflow:hidden}
.pay-qr-img{width:100%;height:100%;object-fit:contain}
.pay-qr-empty{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--faint);font-size:11px;padding:14px;text-align:center}
.pay-qr-empty i{font-size:40px;color:#C7D2FE}
.pay-upload{margin-top:6px}
.receipt-preview{max-width:100%;max-height:200px;border-radius:12px;border:1px solid var(--line)}
.pay-msg{margin-top:10px;font-size:12.5px;font-weight:600;min-height:18px}
.pend-badge{display:inline-flex;align-items:center;gap:8px;margin-top:8px;background:#FEF6E7;color:#B45309;border:1px solid #FCD9A0;font-weight:700;font-size:13px;padding:9px 18px;border-radius:999px}

/* ════ ADMIN — PENDING PAYMENTS LIST ════ */
.pay-list{display:flex;flex-direction:column;gap:10px}
.pay-item{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:13px 16px;border:1px solid var(--line);border-radius:12px;background:#FFFDF8}
.pay-item-name{font-size:14px;color:var(--ink);display:flex;align-items:center;gap:8px}
.pay-item-meta{font-size:11.5px;color:var(--muted);margin-top:3px}
.pay-kind{font-size:9.5px;font-weight:800;letter-spacing:.04em;padding:2px 8px;border-radius:999px;text-transform:uppercase}
.pay-kind.new{background:#EEF2FF;color:var(--brand)}
.pay-kind.renew{background:#FEF6E7;color:#D97706}
.pay-item-actions{display:flex;gap:6px;flex-wrap:wrap}
.pay-item-actions .btn{font-size:12px;padding:7px 12px}

/* ════ USER STATUS BADGES ════ */
.ustat{font-size:10px;font-weight:800;letter-spacing:.03em;padding:2px 9px;border-radius:999px;text-transform:uppercase}
.ustat-active{background:#ECFDF5;color:#059669}
.ustat-pending{background:#FEF6E7;color:#D97706}
.ustat-expired{background:#FEF2F2;color:#DC2626}
.ustat-rejected{background:#F3F4F6;color:#6B7280}

/* ════ MEMBERSHIP SETTINGS (admin) ════ */
.mem-settings{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;margin-bottom:16px;background:linear-gradient(135deg,#F0FDF4,#FAFBFF);border:1px solid #BBF7D0;border-radius:12px}
.mem-settings .ms-title{font-family:var(--dp);font-weight:700;font-size:13px;color:var(--ink);display:flex;align-items:center;gap:8px}
.mem-settings .ms-title>i{color:#10B981}
.mem-field{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.mem-field input{width:74px;padding:6px 10px;border:1.5px solid var(--line);border-radius:8px;font-family:var(--nm);font-weight:600;font-size:13px;outline:none}
.mem-field input:focus{border-color:#10B981}

/* ════ GATE PRICE BADGE ════ */
.gate-price{display:inline-flex;align-items:center;gap:8px;margin:0 auto 20px;font-size:13.5px;font-weight:700;color:#065F46;background:linear-gradient(135deg,#ECFDF5,#D1FAE5);border:1px solid #6EE7B7;padding:10px 20px;border-radius:999px}
.gate-price i{color:#10B981}
.gate-price b{color:#047857}

/* ════ REGISTER MODAL PRICE BADGE ════ */
.reg-price{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 auto 16px;font-size:13px;font-weight:700;color:#065F46;background:linear-gradient(135deg,#ECFDF5,#D1FAE5);border:1px solid #6EE7B7;padding:9px 16px;border-radius:999px;text-align:center}
.reg-price i{color:#10B981}
.reg-price b{color:#047857}

/* ════ FOOTER LEGAL LINKS ════ */
.footer-links{display:flex;gap:16px;flex-wrap:wrap}
.footer-links a{font-size:12px;font-weight:600;color:var(--brand2);text-decoration:none}
.footer-links a:hover{text-decoration:underline}
