:root{
  --gold:#FDB302;--gold-d:#e5a302;--gold-l:#FFE066;--gold-v:#FFD700;
  --navy:#1E3A5F;--navy-d:#152A47;--navy-l:#2B4D7E;
  --text:#1a2332;--muted:#5a6a7e;--line:#c8d2e0;
  --ok:#28A745;--err:#DC3545;
  
  --bg:#e4e8f0;
  --bg-d:#d0d6e2;
  --surface:#eaeef5;
  --surface-l:#f4f6fb;

  --sh-dark:rgba(21,42,71,.12);
  --sh-light:transparent;
  --sh-dark-sm:rgba(21,42,71,.07);
  --sh-light-sm:transparent;

  --grad-gold:linear-gradient(135deg,#FDB302 0%,#FFD700 50%,#FDB302 100%);
  --grad-navy:linear-gradient(135deg,#1E3A5F 0%,#2B4D7E 100%);
  --grad-navy-d:linear-gradient(180deg,#1E3A5F 0%,#152A47 100%);

  --ease:cubic-bezier(.4,0,.2,1);
  --ease-bounce:cubic-bezier(.34,1.56,.64,1);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;min-height:100%}
::selection{background:rgba(253,179,2,.3);color:var(--navy)}

body{
  font-family:'Roboto',system-ui,-apple-system,Arial,sans-serif;
  color:var(--text);line-height:1.6;font-weight:500;
  background:var(--bg);min-height:100vh;
  display:flex;flex-direction:column;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}

body::after{
  content:'';position:fixed;top:0;left:0;width:100%;height:100%;
  background-image:radial-gradient(circle,rgba(30,58,95,.03) 1px,transparent 1.5px);
  background-size:22px 22px;pointer-events:none;z-index:-1;
}

::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--bg-d)}
::-webkit-scrollbar-thumb{
  background:var(--grad-gold);border-radius:5px;border:2px solid var(--bg);
}
::-webkit-scrollbar-thumb:hover{background:var(--gold-v)}

a{color:var(--navy-l);text-decoration:none;transition:color .2s}
a:hover{color:var(--gold)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:13px}.danger{color:var(--err)}
code{
  background:var(--bg-d);padding:3px 8px;border-radius:6px;
  font-size:13px;color:var(--navy);font-weight:600;
}

.topbar{
  position:sticky;top:0;z-index:50;
  background:linear-gradient(135deg,#1a3556 0%,#264872 100%);
  box-shadow:0 6px 24px rgba(21,42,71,.25);
}
.topbar::after{
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent 5%,var(--gold) 50%,transparent 95%);
  opacity:.6;
}
.topbar-in{
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:8px;padding:14px 20px;
}
.topbar nav a{
  color:rgba(255,255,255,.9);margin-left:18px;font-size:14px;
  font-weight:600;position:relative;transition:color .2s;
}
.topbar nav a i{color:var(--gold);margin-right:5px;transition:transform .2s}
.topbar nav a:hover{color:var(--gold)}
.topbar nav a:hover i{transform:scale(1.2)}
.topbar nav a::after{
  content:'';position:absolute;bottom:-4px;left:50%;
  width:0;height:2px;border-radius:1px;background:var(--grad-gold);
  transition:width .3s var(--ease),left .3s var(--ease);
}
.topbar nav a:hover::after{width:100%;left:0}

.brand{
  color:#fff;font-size:16.5px;font-weight:600;
  display:inline-flex;align-items:center;gap:14px;
}
.brand b{
  background:var(--grad-gold);background-size:200% 200%;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;font-weight:800;
  animation:shimmer 3s ease infinite;
}
@keyframes shimmer{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.brand-dot{
  width:12px;height:12px;border-radius:50%;background:var(--gold);
  display:inline-block;
  box-shadow:0 0 0 4px rgba(253,179,2,.2),0 0 16px rgba(253,179,2,.6);
}
.brand-logo{
  height:34px!important;max-height:34px!important;width:auto!important;
  max-width:150px!important;object-fit:contain;display:inline-block;flex:0 0 auto;
  border-radius:8px;background:#fff;padding:2px;
  box-shadow:0 2px 12px rgba(0,0,0,.3);
}
.auth-logo{height:56px!important;max-height:56px!important;width:auto!important;
  max-width:220px!important;object-fit:contain}

main.wrap{padding:28px 20px 70px;position:relative;z-index:1;flex:1 0 auto}

.card{
  background:var(--surface);
  border-radius:24px;padding:28px;margin-bottom:20px;
  border:none;
  box-shadow:
    10px 10px 20px var(--sh-dark),
    -10px -10px 20px var(--sh-light);
  animation:fadeUp .5s var(--ease-bounce) both;
  transition:box-shadow .35s ease,transform .35s var(--ease-bounce);
  position:relative;
}
.card:hover{
  transform:translateY(-3px);
  box-shadow:
    14px 14px 28px var(--sh-dark),
    -14px -14px 28px var(--sh-light);
}

@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

.page-title{
  color:var(--navy);
  margin-bottom:18px;font-size:28px;font-weight:800;letter-spacing:-.02em;
}
.section-h{color:var(--navy);margin:28px 0 10px;font-weight:700;font-size:16px}

.flash{
  padding:14px 18px;border-radius:14px;margin-bottom:14px;
  font-size:14px;font-weight:600;display:flex;gap:10px;align-items:center;
  animation:flashIn .3s ease both;border:none;
  box-shadow:5px 5px 12px var(--sh-dark-sm),-5px -5px 12px var(--sh-light-sm);
}
@keyframes flashIn{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1}}
.flash i{font-size:16px}
.flash-ok{background:linear-gradient(135deg,#c8f0c8,#d8f5d8);color:#0d5e23}
.flash-err{background:linear-gradient(135deg,#f8c8c8,#fbd5d5);color:#8b1a1a}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:none;border-radius:14px;
  padding:13px 26px;font-size:15px;font-weight:700;
  cursor:pointer;font-family:inherit;
  background:var(--surface);
  transition:box-shadow .2s ease,transform .15s ease,color .2s,filter .2s;
  text-decoration:none!important;position:relative;
  box-shadow:
    7px 7px 14px var(--sh-dark-sm),
    -7px -7px 14px var(--sh-light-sm);
}
.btn i{font-size:14px}
.btn:hover{
  box-shadow:5px 5px 10px var(--sh-dark-sm),-5px -5px 10px var(--sh-light-sm);
  transform:translateY(-1px);filter:brightness(1.03);
}
.btn:active,.btn:active:hover{
  box-shadow:inset 5px 5px 10px var(--sh-dark-sm),inset -5px -5px 10px var(--sh-light-sm);
  transform:translateY(0);
}
.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;background:var(--bg-d);transform:none}

.btn-gold{
  background:var(--grad-gold);background-size:200% 200%;
  color:var(--navy);animation:shimmer 4s ease infinite;
  box-shadow:
    7px 7px 16px rgba(253,179,2,.3),
    -7px -7px 16px var(--sh-light-sm);
}
.btn-gold:hover{
  background:var(--grad-navy);color:#fff;
  box-shadow:5px 5px 12px rgba(21,42,71,.3),-5px -5px 12px var(--sh-light-sm);
}
.btn-gold:active{
  box-shadow:inset 5px 5px 10px rgba(163,130,0,.3),inset -5px -5px 10px var(--sh-light-sm);
}
.btn-navy{
  background:var(--grad-navy);color:#fff;
  box-shadow:7px 7px 16px rgba(21,42,71,.3),-7px -7px 16px var(--sh-light-sm);
}
.btn-navy:hover{box-shadow:5px 5px 12px rgba(21,42,71,.4),-5px -5px 12px var(--sh-light-sm)}
.btn-navy:active{
  box-shadow:inset 5px 5px 10px rgba(10,20,40,.4),inset -5px -5px 10px rgba(80,100,140,.2);
}
.btn-outline{
  background:var(--surface);color:var(--navy);border:2px solid var(--navy);
  box-shadow:5px 5px 10px var(--sh-dark-sm),-5px -5px 10px var(--sh-light-sm);
}
.btn-outline:hover{background:var(--navy);color:#fff}
.btn-outline:active{
  box-shadow:inset 4px 4px 8px var(--sh-dark-sm),inset -4px -4px 8px var(--sh-light-sm);
}
.btn-danger{
  background:linear-gradient(135deg,#e05260,#DC3545);color:#fff;
  box-shadow:7px 7px 16px rgba(220,53,69,.25),-7px -7px 16px var(--sh-light-sm);
}
.btn-danger:active{
  box-shadow:inset 5px 5px 10px rgba(120,20,30,.3),inset -5px -5px 10px var(--sh-light-sm);
}
.btn-lg{padding:16px 38px;font-size:17px;border-radius:16px;
  box-shadow:8px 8px 18px var(--sh-dark-sm),-8px -8px 18px var(--sh-light-sm)}
.btn-sm{padding:7px 14px;font-size:13px;border-radius:8px;
  box-shadow:3px 3px 7px var(--sh-dark-sm),-3px -3px 7px var(--sh-light-sm)}
.btn-block{width:100%}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}
.btn-row.center{justify-content:center}

label{
  display:block;font-size:13px;font-weight:700;
  color:var(--navy);margin:14px 0 5px;letter-spacing:.01em;
}
input,select,textarea{
  width:100%;padding:13px 16px;border:none;border-radius:12px;
  font-size:14.5px;background:var(--surface);font-family:inherit;
  color:var(--text);font-weight:500;
  box-shadow:
    inset 4px 4px 8px var(--sh-dark-sm),
    inset -4px -4px 8px var(--sh-light-sm);
  transition:box-shadow .2s,background .2s;
}
input::placeholder,textarea::placeholder{color:var(--muted);font-weight:400}
input:focus,select:focus,textarea:focus{
  outline:none;
  box-shadow:
    inset 4px 4px 8px var(--sh-dark-sm),
    inset -4px -4px 8px var(--sh-light-sm),
    0 0 0 3px rgba(253,179,2,.25);
  background:var(--surface-l);
}
input:hover,select:hover,textarea:hover{background:var(--surface-l)}
.file-input{padding:10px}
.field{position:relative}
.field > i{
  position:absolute;left:16px;top:50%;transform:translateY(-50%);
  color:var(--muted);font-size:14px;pointer-events:none;transition:color .2s;z-index:1;
}
.field:focus-within > i{color:var(--gold)}
.field input{padding-left:42px}
.captcha-box{display:flex;gap:12px;align-items:center;margin-top:6px}
.captcha-box img{
  border-radius:10px;
  box-shadow:3px 3px 7px var(--sh-dark-sm),-3px -3px 7px var(--sh-light-sm);
}
.captcha-box input{max-width:110px}
.hp-field{position:absolute!important;left:-9999px!important;opacity:0}

.auth-wrap{
  min-height:calc(100vh - 200px);display:flex;align-items:center;
  justify-content:center;padding:30px 0;
}
.auth-card{
  width:100%;max-width:430px;margin:0;position:relative;
}
.auth-card .auth-logo{
  display:block;margin:0 auto 16px;height:56px;width:auto;
  filter:drop-shadow(0 6px 16px rgba(253,179,2,.25));
}
.auth-title{
  text-align:center;color:var(--navy);font-weight:800;
  font-size:26px;margin-bottom:6px;letter-spacing:-.02em;
}
.auth-sub{text-align:center;margin-bottom:12px}
.auth-links{
  display:flex;justify-content:space-between;margin-top:16px;
  font-size:14px;flex-wrap:wrap;gap:8px;
}
.auth-links a{transition:transform .2s}
.auth-links a:hover{transform:translateX(2px)}

.table{
  width:100%;border-collapse:collapse;
  background:var(--surface);border-radius:16px;overflow:hidden;
  box-shadow:7px 7px 16px var(--sh-dark-sm),-7px -7px 16px var(--sh-light-sm);
  font-size:14px;
}
.table th{
  background:var(--grad-navy);color:#fff;
  text-align:left;padding:14px 15px;font-size:13px;
  letter-spacing:.04em;text-transform:uppercase;font-weight:700;
}
.table th:first-child{border-radius:16px 0 0 0}
.table th:last-child{border-radius:0 16px 0 0}
.table td{padding:12px 15px;transition:background .2s;border-bottom:1px solid rgba(200,210,224,.3)}
.table tr:hover td{background:rgba(253,179,2,.04)}
.row-wrong{background:rgba(220,53,69,.04)!important}

.badge{
  display:inline-block;padding:5px 13px;border-radius:20px;
  font-size:12px;font-weight:700;color:#fff;letter-spacing:.02em;
  box-shadow:2px 2px 6px var(--sh-dark-sm);
}
.b-submitted{background:#b8860b}
.b-approved{background:var(--ok);box-shadow:2px 2px 6px rgba(40,167,69,.3)}
.b-rejected,.b-cancelled{background:var(--err);box-shadow:2px 2px 6px rgba(220,53,69,.3)}
.b-in_progress{background:var(--navy-l);box-shadow:2px 2px 6px rgba(43,77,126,.3)}

.tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.tab{
  padding:10px 20px;border-radius:20px;background:var(--surface);border:none;
  font-size:14px;color:var(--navy);font-weight:600;cursor:pointer;
  box-shadow:5px 5px 10px var(--sh-dark-sm),-5px -5px 10px var(--sh-light-sm);
  transition:all .25s var(--ease);
}
.tab:hover{transform:translateY(-1px)}
.tab:active{box-shadow:inset 3px 3px 6px var(--sh-dark-sm),inset -3px -3px 6px var(--sh-light-sm)}
.tab.on{
  background:var(--grad-navy);color:#fff;
  box-shadow:5px 5px 12px rgba(21,42,71,.2),-5px -5px 12px var(--sh-light-sm);
}
.opt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}

.rules li{margin:10px 0 10px 22px}
.checks li{list-style:none;margin:8px 0;font-size:15px}
.selfie-video{
  width:100%;max-width:480px;border-radius:16px;background:#000;margin:12px 0;
  box-shadow:7px 7px 16px var(--sh-dark-sm),-7px -7px 16px var(--sh-light-sm);
}

.choice-tabs{display:flex;gap:10px;margin:16px 0}
.choice-tab{
  flex:1;padding:14px;border:none;border-radius:12px;
  background:var(--surface);font-size:15px;font-weight:700;color:var(--navy);
  cursor:pointer;transition:all .2s;
  display:flex;align-items:center;gap:10px;justify-content:center;
  box-shadow:5px 5px 10px var(--sh-dark-sm),-5px -5px 10px var(--sh-light-sm);
}
.choice-tab:hover{transform:translateY(-1px)}
.choice-tab:active{box-shadow:inset 3px 3px 6px var(--sh-dark-sm),inset -3px -3px 6px var(--sh-light-sm)}
.choice-tab.on{
  background:linear-gradient(135deg,#fff5d0,#FFE580);
  color:var(--navy);
  box-shadow:inset 4px 4px 8px rgba(200,150,0,.15),inset -4px -4px 8px var(--sh-light-sm);
}
.preview-img{
  width:100%;max-width:480px;border-radius:16px;margin:12px 0;
  box-shadow:7px 7px 18px var(--sh-dark-sm),-7px -7px 18px var(--sh-light-sm);
}

.status-card{text-align:center;padding:36px}
.status-card.warn{
  box-shadow:
    10px 10px 20px var(--sh-dark),-10px -10px 20px var(--sh-light),
    inset 5px 5px 0 rgba(220,53,69,.08),inset -5px -5px 0 rgba(220,53,69,.08);
}
.cta-card{text-align:center;padding:44px}
.pulse-dot{
  width:16px;height:16px;border-radius:50%;background:var(--gold);
  margin:0 auto 14px;animation:glow-pulse 1.6s infinite;
  box-shadow:0 0 0 0 rgba(253,179,2,.55);
}
@keyframes glow-pulse{0%,100%{box-shadow:0 0 0 0 rgba(253,179,2,.55)}50%{box-shadow:0 0 0 14px rgba(253,179,2,0)}}

.cert-card{text-align:center;padding:42px}
.cert-badge{
  width:88px;height:88px;margin:0 auto 18px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:38px;color:var(--navy);
  background:var(--grad-gold);background-size:200% 200%;
  animation:shimmer 3s ease infinite,badge-float 3s ease-in-out infinite;
  box-shadow:8px 8px 20px rgba(253,179,2,.35),-8px -8px 20px var(--sh-light-sm);
}
@keyframes badge-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.cert-tier{font-size:22px;font-weight:800;color:var(--navy);margin:8px 0}
.cert-card .btn-row{justify-content:center;margin-top:18px}
.cert-card .btn{min-width:200px}

.exam-topbar{
  display:flex;justify-content:space-between;align-items:center;
  background:var(--grad-navy);color:#fff;
  padding:14px 22px;border-radius:14px;margin-bottom:14px;font-weight:700;
  box-shadow:7px 7px 16px var(--sh-dark-sm),-7px -7px 16px var(--sh-light-sm);
}
.q-timer{
  font-size:24px;font-weight:800;
  background:var(--grad-gold);background-size:200% 200%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  animation:shimmer 3s ease infinite;
}
.rec-indicator{font-size:12px;letter-spacing:2px;font-weight:700}
.rec-dot{
  display:inline-block;width:10px;height:10px;border-radius:50%;
  background:var(--err);margin-right:6px;animation:rec-pulse 1.2s infinite;
}
@keyframes rec-pulse{0%,100%{box-shadow:0 0 0 0 rgba(220,53,69,.5);opacity:1}50%{box-shadow:0 0 0 8px rgba(220,53,69,0);opacity:.7}}

.q-text{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:18px;line-height:1.5}
.option{
  display:block;width:100%;text-align:left;
  background:var(--surface);border:none;border-radius:14px;
  padding:16px 20px;margin:10px 0;font-size:15px;cursor:pointer;
  transition:all .2s var(--ease);font-family:inherit;position:relative;
  color:var(--text);font-weight:500;
  box-shadow:5px 5px 10px var(--sh-dark-sm),-5px -5px 10px var(--sh-light-sm);
}
.option:hover{
  transform:translateY(-1px);
  box-shadow:6px 6px 12px var(--sh-dark-sm),-6px -6px 12px var(--sh-light-sm);
}
.option.sel{
  background:linear-gradient(135deg,#fff5d0,#FFE580);
  font-weight:700;color:var(--navy);
  box-shadow:inset 4px 4px 8px rgba(200,150,0,.12),inset -4px -4px 8px var(--sh-light-sm);
}
.option.sel::before{
  content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:4px;height:60%;border-radius:2px;background:var(--gold);
}
.q-actions{margin-top:18px;text-align:right}
#nextBtn.locked{opacity:.4}

.overlay{
  position:fixed;inset:0;background:rgba(21,42,71,.75);backdrop-filter:blur(6px);
  display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;
  animation:overlayIn .25s ease;
}
@keyframes overlayIn{from{opacity:0}to{opacity:1}}
.overlay-box{
  background:var(--surface);border-radius:24px;padding:40px;
  max-width:540px;text-align:center;animation:modalIn .35s var(--ease-bounce);
  box-shadow:14px 14px 40px rgba(21,42,71,.3),-14px -14px 40px var(--sh-light);
  position:relative;overflow:hidden;
}
.overlay-box::before{
  content:'';position:absolute;top:0;left:0;right:0;height:4px;
  background:var(--grad-gold);background-size:200% 200%;animation:shimmer 3s ease infinite;
}
@keyframes modalIn{from{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:none}}
.overlay-box h3{color:var(--navy);margin-bottom:10px;font-weight:700}
.big-count{
  font-size:64px;font-weight:800;
  background:var(--grad-navy);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  margin:16px 0;
}
.big-count.danger{
  background:linear-gradient(135deg,#DC3545,#ff6b6b);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}

.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:18px}
.id-docs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.id-docs img{
  width:100%;border-radius:12px;
  box-shadow:4px 4px 10px var(--sh-dark-sm),-4px -4px 10px var(--sh-light-sm);
  transition:transform .2s,box-shadow .2s;
}
.id-docs img:hover{
  transform:scale(1.03);
  box-shadow:6px 6px 14px var(--sh-dark-sm),-6px -6px 14px var(--sh-light-sm);
}
.id-docs figcaption{font-size:12px;color:var(--muted);margin-bottom:4px;font-weight:700}
.pl-controls{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.score-banner{
  padding:16px 20px;border-radius:12px;margin-bottom:18px;
  font-size:15px;font-weight:600;border:none;
  box-shadow:5px 5px 12px var(--sh-dark-sm),-5px -5px 12px var(--sh-light-sm);
}
.score-banner.pass{background:linear-gradient(135deg,#c8f0c8,#d8f5d8);color:#0d5e23}
.score-banner.fail{background:linear-gradient(135deg,#f8c8c8,#fbd5d5);color:#8b1a1a}
.danger-zone{
  border:none;border-radius:14px;padding:20px;margin-top:20px;
  background:rgba(220,53,69,.03);
  box-shadow:inset 4px 4px 8px rgba(220,53,69,.08),inset -4px -4px 8px var(--sh-light-sm);
}
.danger-zone h4{color:var(--err);margin-bottom:10px}
.merge-note{font-size:13px;color:var(--muted);margin-top:6px}

.verify-body{
  background:linear-gradient(160deg,#1E3A5F 0%,#152A47 50%,#0a1420 100%);
  min-height:100vh;position:relative;
}
.verify-body::before{
  content:'';position:absolute;top:0;left:0;right:0;height:200px;
  background:radial-gradient(ellipse at center top,rgba(253,179,2,.1),transparent);
  pointer-events:none;
}
.verify-wrap{
  width:100%;max-width:640px;margin:0 auto;padding:30px 18px 60px;
  display:flex;align-items:center;justify-content:center;
  min-height:calc(100vh - 160px);
}
.verify-card{
  background:var(--surface);border-radius:24px;padding:48px;text-align:center;
  box-shadow:16px 16px 50px rgba(0,0,0,.4);
  animation:fadeUp .6s var(--ease-bounce) both;position:relative;overflow:hidden;
}
.verify-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:5px;
  background:var(--grad-gold);background-size:200% 200%;animation:shimmer 3s ease infinite;
}
.verify-org{color:var(--navy);font-weight:800;letter-spacing:1.5px;font-size:14px;text-transform:uppercase}
.verify-check{
  width:80px;height:80px;border-radius:50%;
  background:linear-gradient(135deg,var(--ok),#20c997);color:#fff;
  font-size:38px;line-height:80px;margin:18px auto;
  box-shadow:8px 8px 20px rgba(40,167,69,.3),-8px -8px 20px var(--sh-light-sm);
  animation:badge-float 3s ease-in-out infinite;
}
.verify-card h1{
  background:var(--grad-navy);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  font-size:28px;font-weight:800;
}
.verify-name{font-size:26px;font-weight:800;margin:14px 0 4px;color:var(--navy)}
.verify-tier{
  font-size:16px;font-weight:800;
  background:var(--grad-gold);background-size:200% 200%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  text-transform:uppercase;letter-spacing:1px;animation:shimmer 3s ease infinite;
}
.verify-track{font-size:15px;color:var(--navy);font-weight:700;margin-top:6px}
.verify-meta{
  margin:22px auto;border-collapse:collapse;
  background:var(--surface);border-radius:12px;overflow:hidden;
  box-shadow:inset 3px 3px 6px var(--sh-dark-sm),inset -3px -3px 6px var(--sh-light-sm);
}
.verify-meta td{padding:8px 16px;font-size:14px;border-bottom:1px solid rgba(200,210,224,.2);text-align:left}
.verify-meta td:first-child{color:var(--muted);font-weight:600}
.verify-foot{text-align:center;margin-top:18px}
.verify-foot a{color:#ffd76b;transition:color .2s}
.verify-foot a:hover{color:var(--gold)}
.verify-contact{font-size:13px;color:#b9c6da;margin-top:14px}

.site-footer{
  background:linear-gradient(135deg,#1a3556 0%,#264872 100%);
  color:#c8d4e6;padding:18px 16px;font-size:13.5px;
  flex-shrink:0;margin-top:auto;position:relative;
}
.site-footer::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.4;
}
.footer-in{
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;
  align-items:center;max-width:1080px;margin:0 auto;padding:0 4px;
}
.site-footer a{color:#ffd76b;transition:color .2s}
.site-footer a:hover{color:#fff}

.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;padding:46px 0 30px}
.hero h1{
  font-size:46px;font-weight:800;
  background:var(--grad-navy);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  line-height:1.1;letter-spacing:-.03em;
}
.hero h1 .gold{
  background:var(--grad-gold);background-size:200% 200%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  animation:shimmer 3s ease infinite;
}
.hero p.lead{font-size:18px;color:var(--muted);margin:16px 0 24px;line-height:1.6}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.cert-frame{
  border-radius:24px;overflow:hidden;background:#fff;
  box-shadow:
    16px 16px 40px rgba(21,42,71,.2),
    -16px -16px 40px var(--sh-light);
  transform:perspective(1000px) rotateY(-5deg) rotateX(2deg);
  transition:transform .5s var(--ease-bounce);position:relative;
}
.cert-frame:hover{
  transform:perspective(1000px) rotateY(0) rotateX(0) scale(1.04);
  box-shadow:20px 20px 50px rgba(21,42,71,.25),-20px -20px 50px var(--sh-light);
}
.cert-frame img{width:100%;display:block}

.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:26px 0}
.feat{
  padding:26px;border-radius:18px;background:var(--surface);
  box-shadow:
    9px 9px 18px var(--sh-dark-sm),
    -9px -9px 18px var(--sh-light-sm);
  transition:transform .3s var(--ease-bounce),box-shadow .3s ease;position:relative;
}
.feat:hover{
  transform:translateY(-6px);
  box-shadow:11px 11px 24px var(--sh-dark-sm),-11px -11px 24px var(--sh-light-sm);
}
.feat i{
  font-size:26px;color:var(--gold);background:var(--grad-navy);
  width:56px;height:56px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;margin-bottom:14px;
  box-shadow:5px 5px 12px rgba(21,42,71,.15),-5px -5px 12px var(--sh-light-sm);
  transition:transform .3s var(--ease-bounce);
}
.feat:hover i{transform:scale(1.12) rotate(-5deg)}
.feat h3{color:var(--navy);font-size:17px;margin-bottom:6px;font-weight:700}
.feat p{font-size:14px}

.steps{counter-reset:st;margin:22px 0}
.steps li{list-style:none;margin:16px 0;display:flex;align-items:center;gap:14px;font-size:15.5px}
.steps li::before{
  counter-increment:st;content:counter(st);
  flex-shrink:0;width:40px;height:40px;border-radius:50%;
  background:var(--grad-gold);background-size:200% 200%;color:var(--navy);font-weight:800;
  display:flex;align-items:center;justify-content:center;
  box-shadow:5px 5px 12px rgba(253,179,2,.25),-5px -5px 12px var(--sh-light-sm);
  animation:shimmer 4s ease infinite;
}
.verify-lookup{display:flex;gap:10px;max-width:480px;margin:0 auto}
.verify-lookup input{flex:1}

@media(max-width:820px){.hero{grid-template-columns:1fr}.hero h1{font-size:34px}.cert-frame{transform:none}}
@media(max-width:640px){
  .id-docs{grid-template-columns:1fr}
  .card{padding:18px;box-shadow:6px 6px 12px var(--sh-dark-sm),-6px -6px 12px var(--sh-light-sm)}
  .footer-in{justify-content:center;text-align:center}
  .hero h1{font-size:28px}
  .overlay-box{padding:28px 20px}
}


body{transition:background-color .3s ease,color .3s ease}

.theme-toggle{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;width:38px;height:38px;
  cursor:pointer;display:inline-flex;align-items:center;
  justify-content:center;margin-left:14px;
  transition:all .35s ease;position:relative;
}
.theme-toggle:hover{
  background:rgba(253,179,2,.15);
  border-color:rgba(253,179,2,.3);
  transform:rotate(180deg);
}
.theme-toggle i{font-size:15px;color:var(--gold)}

[data-theme="dark"]{
  --bg:#1a1f2e;--bg-d:#121620;
  --surface:#232938;--surface-l:#2a3041;
  --text:#e4e8f0;--muted:#8a9ab5;
  --line:#3a4258;
  --navy:#b8c8d8;--navy-l:#c8d4e0;
  --sh-dark:rgba(0,0,0,.35);--sh-dark-sm:rgba(0,0,0,.2);
}

[data-theme="dark"] body::after{
  background-image:radial-gradient(circle,rgba(255,255,255,.025) 1px,transparent 1.5px);
}

[data-theme="dark"] .flash-ok{
  background:linear-gradient(135deg,rgba(40,167,69,.12),rgba(40,167,69,.08));color:#6fd66f}
[data-theme="dark"] .flash-err{
  background:linear-gradient(135deg,rgba(220,53,69,.12),rgba(220,53,69,.08));color:#ff7b7b}

[data-theme="dark"] .score-banner.pass{
  background:linear-gradient(135deg,rgba(40,167,69,.1),rgba(40,167,69,.06));color:#6fd66f}
[data-theme="dark"] .score-banner.fail{
  background:linear-gradient(135deg,rgba(220,53,69,.1),rgba(220,53,69,.06));color:#ff7b7b}

[data-theme="dark"] .option.sel{
  background:linear-gradient(135deg,rgba(253,179,2,.12),rgba(255,224,102,.08))}
[data-theme="dark"] .choice-tab.on{
  background:linear-gradient(135deg,rgba(253,179,2,.12),rgba(255,224,102,.08))}

[data-theme="dark"] .danger-zone{
  background:rgba(220,53,69,.05);
  box-shadow:inset 4px 4px 8px rgba(220,53,69,.06),inset -4px -4px 8px var(--sh-light-sm)}

[data-theme="dark"] .verify-card{box-shadow:16px 16px 50px rgba(0,0,0,.5)}

[data-theme="dark"] .table tr:hover td{background:rgba(253,179,2,.06)}

[data-theme="dark"] .verify-meta td{border-bottom:1px solid rgba(58,66,88,.3)}

[data-theme="dark"] ::-webkit-scrollbar-track{background:#121620}



[data-theme="dark"] .btn-gold,
[data-theme="dark"] .cert-badge,
[data-theme="dark"] .steps li::before{color:#1E3A5F}

[data-theme="dark"] .choice-tab.on{
  background:rgba(253,179,2,.15) !important;
  color:#fff !important;
  box-shadow:inset 4px 4px 8px rgba(253,179,2,.1),inset -4px -4px 8px var(--sh-light-sm) !important;
}
[data-theme="dark"] .option.sel{
  background:rgba(253,179,2,.12) !important;
  color:#fff !important;
  box-shadow:inset 4px 4px 8px rgba(253,179,2,.1),inset -4px -4px 8px var(--sh-light-sm) !important;
}

[data-theme="dark"] [style*="232,247,238"]{
  background:rgba(40,167,69,.08) !important;
  border-color:rgba(40,167,69,.15) !important;
}
[data-theme="dark"] [style*="1a6b34"]{
  color:#6fd66f !important;
}
[data-theme="dark"] .btn-gold:hover{color:#fff}

[data-theme="dark"] .req-table th{background:#2B4D7E;color:#fff}
[data-theme="dark"] .req-table td{border-bottom-color:rgba(58,66,88,.3)}
[data-theme="dark"] .tc-section{background:rgba(35,41,56,.5);border-color:var(--line)}
[data-theme="dark"] .confirm-box{background:rgba(30,58,95,.15)}
[data-theme="dark"] .hw-warning{background:rgba(255,193,7,.1);border-color:rgba(255,193,7,.25);color:#ffc44f}
[data-theme="dark"] .cam-placeholder{color:#8a9ab5}
[data-theme="dark"] .cam-placeholder i{color:#5a6a7e}
[data-theme="dark"] .status-pending{background:rgba(138,154,181,.15);color:#8a9ab5}
[data-theme="dark"] .status-granted{background:rgba(40,167,69,.15);color:#6fd66f}
[data-theme="dark"] .status-denied{background:rgba(220,53,69,.15);color:#ff7b7b}
[data-theme="dark"] .choice-tab{background:var(--surface)}
[data-theme="dark"] .cap-note{color:var(--muted)}

[data-theme="dark"] .sidebar-card{background:var(--surface);border-color:var(--line);
  box-shadow:5px 5px 12px var(--sh-dark-sm),-5px -5px 12px var(--sh-light-sm)}
[data-theme="dark"] .sidebar-header{border-bottom-color:rgba(58,66,88,.3)}
[data-theme="dark"] .sys-check-list li,
[data-theme="dark"] .rules-list li{color:var(--text)}
[data-theme="dark"] .sys-check-list li i{color:var(--muted)}
[data-theme="dark"] .sys-check-list li.success i{color:#6fd66f}

[data-theme="dark"] .badge-ready{background:rgba(40,167,69,.15);color:#6fd66f}
[data-theme="dark"] .badge-review{background:rgba(184,134,11,.2);color:#ffc44f}
[data-theme="dark"] .badge-warn{background:rgba(220,53,69,.15);color:#ff7b7b}

[data-theme="dark"] .copy-item{background:rgba(35,41,56,.5);border-color:var(--line)}
[data-theme="dark"] .copy-item span{color:var(--muted)}
[data-theme="dark"] .copy-btn{color:var(--navy)}
[data-theme="dark"] .copy-btn:hover{color:var(--gold)}
[data-theme="dark"] .merge-note{color:var(--muted)}

.pass-toggle{
  position:absolute;right:14px;top:50%;transform:translateY(-50%);
  background:none;border:none;cursor:pointer;color:var(--muted);
  font-size:14px;padding:4px;z-index:2;transition:color .2s;
}
.pass-toggle:hover{color:var(--gold)}
.field input[type="password"],
.field input[type="text"]{padding-right:42px}

.table{max-width:100%;table-layout:fixed}
.table td,.table th{overflow-wrap:break-word}
.table td:first-child{white-space:nowrap}

.table td,.table th{word-break:normal}
.manage-btn{white-space:nowrap}

.users-table td:nth-child(3),.users-table th:nth-child(3){width:22%}