:root{
    --bg:#07111f;
    --bg-2:#0f172a;
    --text:#eaf2ff;
    --muted:#64748b;
    --white:#ffffff;
    --gold:#f59e0b;
    --green:#047857;
    --green-2:#16a34a;
    --blue:#2563eb;
    --red:#dc2626;
    --orange:#ea580c;
    --purple:#7c3aed;
    --card:#ffffff;
    --border:rgba(15,23,42,.10);
    --shadow-lg:0 24px 60px rgba(0,0,0,.28);
    --shadow-md:0 14px 34px rgba(15,23,42,.16);
    --radius-xl:30px;
    --radius-lg:22px;
    --radius-md:16px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}

body{
    margin:0;
    font-family:"Segoe UI", Tahoma, sans-serif;
    line-height:1.7;
    color:var(--text);
    background:
        radial-gradient(circle at top left, rgba(251,191,36,.18), transparent 30%),
        radial-gradient(circle at top right, rgba(22,163,74,.20), transparent 32%),
        linear-gradient(135deg, #07111f 0%, #0f3b2e 48%, #7c2d12 100%);
}

.admin-body{
    background:#f1f5f9;
    color:#0f172a;
}

img{max-width:100%;display:block}
a{color:#047857;text-decoration:none;font-weight:800}
a:hover{color:#065f46}

.site-header{
    position:sticky;
    top:0;
    z-index:1000;
    background:rgba(7,17,31,.88);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid rgba(255,255,255,.10);
}

.navbar{
    max-width:1320px;
    margin:0 auto;
    padding:14px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}

.nav-left,.nav-right{display:flex;align-items:center;gap:14px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:900}
.brand-logo{width:46px;height:46px;object-fit:contain;border-radius:12px;background:rgba(255,255,255,.92);padding:4px}
.brand-text{white-space:nowrap}
.menu-toggle,.menu-close{width:28px;height:28px;cursor:pointer}
.menu-toggle-btn,.menu-close-btn{background:none;border:none;padding:0;cursor:pointer}

.nav-list{list-style:none;display:flex;align-items:center;gap:8px;margin:0;padding:0}
.nav-list li{position:relative}
.nav-list a{display:inline-flex;align-items:center;padding:10px 13px;border-radius:12px;color:#e5eefc}
.nav-list a:hover,.nav-list a.active{background:rgba(255,255,255,.10);color:#fff;transform:translateY(-1px)}
.auth-links{display:flex;align-items:center;gap:10px}
.auth-links a{padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.08);color:#fff}
.auth-links .signup-btn{background:linear-gradient(135deg, #fbbf24, #f59e0b);color:#111827}
.auth-user{background:rgba(255,255,255,.07);padding:8px 10px;border-radius:12px}
.welcome-text{color:#dbeafe;margin-right:8px}
.nav-close-wrap{display:none}
.nav-overlay{position:fixed;inset:0;background:rgba(2,6,23,.58);opacity:0;visibility:hidden;transition:opacity .2s ease, visibility .2s ease;z-index:900}
.nav-overlay.is-active{opacity:1;visibility:visible}

.page-main,.admin-wrap{max-width:1320px;margin:0 auto;padding:30px 20px 56px}

.hero-section,.admin-hero{
    margin-bottom:22px;
    border-radius:var(--radius-xl);
    padding:34px;
    background:linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.06));
    border:1px solid rgba(255,255,255,.20);
    box-shadow:var(--shadow-lg);
}
.admin-hero{
    color:#fff;
    background:linear-gradient(135deg,#0f172a,#064e3b,#92400e);
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
}

.hero-kicker{margin:0 0 9px;color:#fde68a;text-transform:uppercase;letter-spacing:.15em;font-size:.78rem;font-weight:900}
.hero-section h1,.admin-hero h1{margin:0 0 12px;color:#fff;font-size:clamp(1.9rem,4vw,3.35rem);line-height:1.1}
.hero-subtext,.admin-hero p{margin:0;max-width:920px;color:#f8fafc;font-size:1.04rem}

.intro-card,.form-shell,.alert,.filter-panel,.application-card,.stat-card{
    background:rgba(255,255,255,.96);
    color:#0f172a;
    border:1px solid rgba(255,255,255,.54);
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow-md);
}

.intro-card{padding:24px;margin-bottom:22px}
.intro-card h2{margin:0 0 10px;color:#111827}
.intro-card p{margin:0 0 12px;color:#334155}.intro-card p:last-child{margin-bottom:0}

.form-shell{overflow:hidden;margin-bottom:24px}
.form-header{padding:24px 26px;background:#f8fafc;border-bottom:1px solid #e5e7eb}
.form-header h2{margin:0 0 8px;color:#111827}.form-header p{margin:0;color:#475569}
.market-form,.review-form{padding:26px}
.review-form{padding:18px;margin-top:16px;border-top:1px solid #e5e7eb;background:#f8fafc;border-radius:18px}

.form-section{margin-bottom:24px;padding-bottom:22px;border-bottom:1px solid #e5e7eb}
.form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}
.form-section h3{margin:0 0 16px;color:#14532d;font-size:1.18rem}
.form-grid{display:grid;gap:16px}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.full-width{grid-column:1/-1}
.form-group label{display:block;margin-bottom:7px;color:#0f172a;font-weight:800}
input,select,textarea{
    width:100%;border:1px solid #cbd5e1;border-radius:14px;padding:12px 13px;font:inherit;color:#0f172a;background:#fff;outline:none;
}
input:focus,select:focus,textarea:focus{border-color:#047857;box-shadow:0 0 0 4px rgba(4,120,87,.12)}
textarea{resize:vertical;min-height:110px}
.declaration-box{padding:16px;border-radius:16px;background:#fffbeb;border:1px solid #fde68a;color:#78350f;margin-top:18px}
.declaration-box label,.check-line label{display:flex;gap:10px;align-items:flex-start;font-weight:700}.declaration-box input,.check-line input{width:auto;margin-top:6px}
.submit-row,.action-row,.admin-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}

.btn,.mini-btn{
    display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border-radius:12px;border:none;cursor:pointer;font:inherit;font-weight:900;text-decoration:none;
    background:#047857;color:#fff !important;box-shadow:0 10px 22px rgba(4,120,87,.18);
}
.btn:hover,.mini-btn:hover{transform:translateY(-1px);background:#065f46;color:#fff !important}
.btn-light{background:#fff;color:#14532d !important;border:1px solid #cbd5e1;box-shadow:none}
.btn-primary{background:linear-gradient(90deg,#047857,#16a34a,#f59e0b)}
.mini-btn{min-height:34px;padding:7px 11px;font-size:.9rem;background:#0f172a}

.alert{padding:20px;margin-bottom:20px}.alert h2{margin:0 0 8px}.alert p{margin:0 0 8px;color:#334155}.alert-success{border-left:7px solid #16a34a}.alert-error{border-left:7px solid #dc2626}

.stat-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin-bottom:18px}
.stat-card{padding:16px;text-align:center}.stat-card span{display:block;color:#64748b;font-size:.84rem;font-weight:800}.stat-card strong{display:block;color:#0f172a;font-size:1.45rem}
.filter-panel{padding:18px;margin-bottom:20px}.filter-form{display:grid;grid-template-columns:1.4fr .75fr .9fr auto auto;gap:10px;align-items:center}
.applications-grid{display:grid;gap:18px}.application-card{padding:22px}.card-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.application-card h2{margin:0 0 6px;color:#111827}.meta{color:#64748b;margin:0 0 12px;font-size:.95rem}
.details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.details-grid div{padding:13px;border-radius:14px;background:#f8fafc;border:1px solid #e5e7eb;color:#0f172a}.details-grid span{display:block;color:#64748b;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;font-weight:900;margin-bottom:4px}
.long-text{padding:14px;border-radius:14px;background:#f8fafc;border:1px solid #e5e7eb;color:#334155;margin:12px 0}.long-text strong{color:#111827}
.contact-row{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.status-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:7px 11px;font-weight:900;font-size:.82rem;white-space:nowrap}.status-new{background:#dbeafe;color:#1d4ed8}.status-review{background:#fef3c7;color:#92400e}.status-approved{background:#dcfce7;color:#166534}.status-rejected{background:#fee2e2;color:#991b1b}.status-closed{background:#e5e7eb;color:#374151}
.site-footer{text-align:center;color:#fde68a;padding:20px}

@media (max-width:1100px){.stat-grid{grid-template-columns:repeat(3,1fr)}.filter-form{grid-template-columns:1fr 1fr}.filter-form input{grid-column:1/-1}}
@media (max-width:900px){
    .brand-text{display:none}.nav-right{display:none}.admin-hero{flex-direction:column;align-items:flex-start}
    .nav-list{position:fixed;top:0;left:-100%;width:310px;max-width:86vw;height:100vh;background:#0f172a;flex-direction:column;align-items:flex-start;padding:20px;gap:8px;box-shadow:var(--shadow-lg);transition:left .25s ease;overflow-y:auto;z-index:1001}
    .nav-list.is-open{left:0}.nav-list li{width:100%}.nav-list a{width:100%}.nav-close-wrap{display:block;width:100%;text-align:right}
    .two-col,.details-grid{grid-template-columns:1fr}.full-width{grid-column:auto}.stat-grid{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:901px){.menu-toggle-btn,.menu-close-btn{display:none}.nav-overlay{display:none !important}}
@media (max-width:640px){.page-main,.admin-wrap{padding:18px 14px 42px}.hero-section,.admin-hero,.intro-card,.form-header,.market-form,.application-card{padding:18px;border-radius:20px}.stat-grid,.filter-form{grid-template-columns:1fr}.submit-row,.action-row,.admin-actions{flex-direction:column}.btn{width:100%}}


/* Phase J.2B — Vendor Verification & Security Uploads */
.section-help,
.field-help{
    margin:6px 0 0;
    color:#64748b;
    font-size:.92rem;
    line-height:1.55;
}

.verification-section{
    border-left:6px solid #047857;
}

.camera-panel{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:16px;
    padding:16px;
}

.camera-tools{
    margin-top:12px;
}

.selfie-video,
.selfie-preview{
    width:100%;
    max-width:420px;
    border-radius:16px;
    border:1px solid #cbd5e1;
    background:#0f172a;
    margin:10px 0;
}

.selfie-canvas{
    width:100%;
    max-width:420px;
}

.camera-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:10px;
}

.verification-admin-panel{
    margin:18px 0;
    padding:18px;
    border-radius:18px;
    background:#f8fafc;
    border:1px solid #e2e8f0;
}

.verification-admin-panel h3{
    margin:0 0 12px;
    color:#0f172a;
}

.verification-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}

.verification-grid > div{
    padding:12px;
    border-radius:12px;
    background:#ffffff;
    border:1px solid #e5e7eb;
    color:#0f172a;
}

.verification-grid span{
    display:block;
    font-size:.78rem;
    font-weight:800;
    color:#64748b;
    text-transform:uppercase;
    letter-spacing:.06em;
    margin-bottom:4px;
}

.photo-block{
    min-height:160px;
}

.admin-photo-preview{
    width:130px;
    height:130px;
    object-fit:cover;
    border-radius:16px;
    border:2px solid #e2e8f0;
    background:#f1f5f9;
}

.photo-placeholder,
.empty-doc{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:8px 10px;
    border-radius:10px;
    background:#f1f5f9;
    color:#64748b;
    font-weight:700;
}

.doc-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:9px 12px;
    border-radius:10px;
    background:#047857;
    color:#ffffff !important;
    font-weight:800;
}

.doc-link:hover{
    background:#065f46;
    color:#ffffff !important;
}

.full-width{
    grid-column:1 / -1;
}

@media (max-width:1000px){
    .verification-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:700px){
    .verification-grid{
        grid-template-columns:1fr;
    }

    .camera-actions{
        flex-direction:column;
    }
}
