/* ══════════════════════════════════════════════════
   RefCheck.pro — Design from refcheck-final.html
   Fonts: Outfit + JetBrains Mono
   ══════════════════════════════════════════════════ */

:root {
    --f: 'Outfit', sans-serif;
    --fm: 'JetBrains Mono', monospace;
    --bg: #f0f2f5;
    --card: #fff;
    --ink: #0f172a;
    --ink-2: #334155;
    --ink-3: #64748b;
    --ink-4: #94a3b8;
    --ink-5: #cbd5e1;
    --brand: #4f46e5;
    --brand-2: #6366f1;
    --brand-grad: linear-gradient(135deg, #4f46e5, #2563eb);
    --green: #059669;
    --green-bg: #ecfdf5;
    --amber: #d97706;
    --amber-bg: #fffbeb;
    --red: #dc2626;
    --red-bg: #fef2f2;
    --border: #e2e8f0;
    --border-lt: #f1f5f9;
    --sh: 0 1px 3px rgba(15,23,42,.05);
    --sh-md: 0 4px 16px rgba(15,23,42,.07);
    --sh-lg: 0 10px 30px rgba(15,23,42,.1);
    --sh-brand: 0 4px 20px rgba(79,70,229,.18);
    --r: 10px; --r-lg: 14px; --r-full: 100px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:15px;-webkit-font-smoothing:antialiased}
body{font-family:var(--f);background:var(--bg);color:var(--ink);min-height:100vh}

.hidden{display:none!important}

/* ===== ANIMATIONS (Task 3) ===== */
@keyframes fadeUp { from { opacity:0; transform:translateY(16px) } to { opacity:1; transform:translateY(0) } }
@keyframes scaleIn { from { opacity:0; transform:scale(.95) } to { opacity:1; transform:scale(1) } }
@keyframes fadeIn { from { opacity:0 } to { opacity:1 } }

/* ===== HEADER (Task 1: full-width bg, inner container) ===== */
.hdr{background:var(--card);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}
.hdr-inner{max-width:960px;margin:0 auto;padding:0 24px;height:54px;display:flex;align-items:center;justify-content:space-between}
.hdr-left{display:flex;align-items:center;gap:10px}
.hdr-logo{width:30px;height:30px;background:var(--brand-grad);border-radius:8px;display:flex;align-items:center;justify-content:center;box-shadow:var(--sh-brand)}
.hdr-logo svg{width:15px;height:15px}
.hdr-brand{font-weight:700;font-size:16px;letter-spacing:-.3px;cursor:pointer}
.hdr-brand i{font-weight:400;color:var(--ink-4);font-style:normal}
.hdr-nav{display:flex;gap:2px}
.hdr-nav a{color:var(--ink-3);font-size:13px;font-weight:500;text-decoration:none;padding:6px 14px;border-radius:7px;transition:.12s}
.hdr-nav a:hover{color:var(--ink);background:var(--border-lt)}
.hdr-nav a.on{color:var(--brand);background:#eef2ff;font-weight:600}
.hdr-right{display:flex;align-items:center;gap:8px}
.hdr-user{font-size:13px;font-weight:500;color:var(--ink-2)}
.btn-sm{font-family:var(--f);font-size:12.5px;font-weight:600;padding:6px 16px;border-radius:7px;cursor:pointer;transition:.15s}
.btn-ghost{background:none;border:1.5px solid var(--border);color:var(--ink-2)}
.btn-ghost:hover{border-color:var(--ink-4);color:var(--ink)}
.btn-brand{background:var(--brand-grad);border:none;color:#fff;box-shadow:var(--sh-brand)}
.btn-brand:hover{transform:translateY(-1px);box-shadow:0 6px 24px rgba(79,70,229,.22)}
.btn-brand:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}

/* ===== BANNER (Task 1: full-width bg, inner container) ===== */
.banner{background:linear-gradient(135deg,#fef3cd,#fefce8);border-bottom:1px solid #fde68a;font-size:13px;color:#92400e}
.banner-inner{max-width:960px;margin:0 auto;padding:9px 24px;display:flex;align-items:center;justify-content:space-between}
.banner-left{display:flex;align-items:center;gap:8px}
.banner-right{display:flex;align-items:center;gap:6px}
.banner-dot{width:6px;height:6px;border-radius:50%;background:#d97706;flex-shrink:0}
.banner a{color:#92400e;font-weight:600;text-decoration:underline;cursor:pointer}
.limit-counter{font-family:var(--fm);font-size:12px;font-weight:600;padding:2px 10px;border-radius:var(--r-full);background:rgba(146,64,14,.1);color:#92400e}

/* ===== CAPTCHA ===== */
.captcha-container{margin-bottom:14px;min-height:0}
.captcha-container:not(:empty){min-height:78px}

/* ===== ADMIN ACTION BUTTONS ===== */
.adm-actions{display:flex;gap:4px;flex-wrap:wrap}
.adm-btn{font-family:var(--f);font-size:11px;font-weight:600;padding:3px 10px;border-radius:5px;cursor:pointer;transition:.12s;border:none}
.adm-btn-ban{background:var(--amber-bg);color:var(--amber)}
.adm-btn-ban:hover{background:#fde68a}
.adm-btn-unban{background:var(--green-bg);color:var(--green)}
.adm-btn-unban:hover{background:#a7f3d0}
.adm-btn-delete{background:var(--red-bg);color:var(--red)}
.adm-btn-delete:hover{background:#fca5a5}

/* ===== BANNED ROLE ===== */
.adm-role-banned{background:var(--red-bg);color:var(--red)}

/* ===== HERO ===== */
.hero{text-align:center;padding:46px 28px 0;position:relative}
.hero-glow{position:absolute;top:-20px;left:50%;transform:translateX(-50%);width:480px;height:180px;background:radial-gradient(ellipse,rgba(99,102,241,.07) 0%,transparent 70%);pointer-events:none}
.hero h1{font-size:2rem;font-weight:800;letter-spacing:-.5px;margin-bottom:10px;position:relative;animation:fadeUp .5s ease .1s both}
.hero h1 em{font-style:normal;background:var(--brand-grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero p{font-size:15px;color:var(--ink-3);max-width:540px;margin:0 auto;line-height:1.6;position:relative;animation:fadeUp .5s ease .2s both}

/* ===== CARD ===== */
.wrap{max-width:720px;margin:0 auto;padding:0 24px}
.card{background:var(--card);border:1.5px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-md);margin-top:26px;transition:.2s;animation:scaleIn .4s ease .15s both}
.card:focus-within{border-color:var(--brand-2);box-shadow:var(--sh-lg),0 0 0 3px rgba(99,102,241,.07)}
.card-top{display:flex;align-items:center;justify-content:space-between;padding:12px 18px 0}
.card-label{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;color:var(--ink-3)}
.card-label svg{color:var(--ink-4)}

/* API indicator */
.api-row{display:flex;align-items:center;gap:8px}
.api-status{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ink-4)}
.api-dot{width:6px;height:6px;border-radius:50%}
.api-dot.on{background:var(--green)}
.api-dot.off{background:var(--ink-5)}
.btn-api{display:flex;align-items:center;gap:5px;font-family:var(--f);font-size:11.5px;font-weight:500;padding:4px 10px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--ink-3);cursor:pointer;transition:.12s}
.btn-api:hover{border-color:var(--ink-4);color:var(--ink)}
.btn-api svg{width:12px;height:12px}

textarea{width:100%;border:none;outline:none;resize:vertical;padding:12px 18px;font-family:var(--f);font-size:14px;line-height:1.75;color:var(--ink);min-height:220px;background:transparent}
textarea::placeholder{color:var(--ink-5)}
.card-bottom{display:flex;align-items:center;justify-content:space-between;padding:9px 18px;border-top:1px solid var(--border-lt);background:#fafbfc}
.card-bottom-left{display:flex;align-items:center;gap:10px}
.card-meta{font-family:var(--fm);font-size:12px;color:var(--ink-4)}

/* Paste button (Task 2) */
.btn-paste{display:inline-flex;align-items:center;gap:5px;font-family:var(--f);font-size:12px;font-weight:500;padding:4px 10px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--ink-3);cursor:pointer;transition:.12s}
.btn-paste:hover{border-color:var(--ink-4);color:var(--ink)}
.btn-paste svg{width:13px;height:13px}

.btn-go{display:inline-flex;align-items:center;gap:7px;font-family:var(--f);font-size:14px;font-weight:700;padding:9px 26px;border:none;border-radius:var(--r);background:var(--brand-grad);color:#fff;cursor:pointer;transition:.2s;box-shadow:var(--sh-brand)}
.btn-go:hover{transform:translateY(-1px);box-shadow:0 6px 24px rgba(79,70,229,.25)}
.btn-go:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}
.btn-go svg{opacity:.65}

.sources{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;padding:16px 0 36px}
.src{font-family:var(--fm);font-size:11px;padding:3px 10px;border-radius:var(--r-full);background:var(--card);color:var(--ink-4);border:1px solid var(--border)}

/* ===== PROGRESS ===== */
.prog{background:var(--ink);border-radius:var(--r-lg);padding:22px 22px 18px;color:#fff;box-shadow:var(--sh-lg);margin-top:30px;position:relative;overflow:hidden}
.prog::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--brand-grad)}
.prog-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}
.prog-title{font-size:15px;font-weight:700}
.prog-sub{font-size:12.5px;color:var(--ink-4);margin-top:2px}
.prog-count{font-family:var(--fm);font-size:13px;font-weight:600;color:var(--green)}
.prog-track{height:5px;background:rgba(255,255,255,.08);border-radius:3px;overflow:hidden;margin-bottom:14px}
.prog-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--brand),#10b981);border-radius:3px;position:relative;transition:width .4s ease}
.prog-fill::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);animation:shm 1.8s infinite}
@keyframes shm{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.prog-now{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:7px;padding:9px 12px;margin-bottom:12px}
.prog-now-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-4);margin-bottom:3px}
.prog-now-text{font-size:12.5px;color:rgba(255,255,255,.7);line-height:1.5}
.prog-tags{display:flex;gap:5px;flex-wrap:wrap}
.ptag{font-family:var(--fm);font-size:10.5px;padding:3px 9px;border-radius:4px;background:rgba(255,255,255,.05);color:var(--ink-4);border:1px solid rgba(255,255,255,.05)}
.ptag.on{background:rgba(79,70,229,.2);color:#a5b4fc;border-color:rgba(79,70,229,.25)}

/* ===== SUMMARY ===== */
.sum-head{display:flex;align-items:center;justify-content:space-between;margin:30px 0 18px}
.sum-title{font-size:1.25rem;font-weight:700}
.sum-rate{text-align:right}
.sum-rate-n{font-size:1.8rem;font-weight:800;background:linear-gradient(135deg,var(--green),#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.sum-rate-n.rate-medium{background:linear-gradient(135deg,var(--amber),#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.sum-rate-n.rate-bad{background:linear-gradient(135deg,var(--red),#ef4444);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.sum-rate-l{font-size:11px;color:var(--ink-3)}

.sum-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}
.sc{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:14px;text-align:center;box-shadow:var(--sh);transition:.15s;position:relative;overflow:hidden}
.sc:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.sc:nth-child(1){animation:fadeUp .3s ease .05s both}
.sc:nth-child(2){animation:fadeUp .3s ease .1s both}
.sc:nth-child(3){animation:fadeUp .3s ease .15s both}
.sc:nth-child(4){animation:fadeUp .3s ease .2s both}
.sc-n{font-size:1.65rem;font-weight:800;line-height:1;margin-bottom:3px}
.sc-l{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}
.sc::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px}
.sc-g::after{background:var(--green)}.sc-g .sc-n{color:var(--green)}.sc-g .sc-l{color:var(--green)}
.sc-y::after{background:var(--amber)}.sc-y .sc-n{color:var(--amber)}.sc-y .sc-l{color:var(--amber)}
.sc-r::after{background:var(--red)}.sc-r .sc-n{color:var(--red)}.sc-r .sc-l{color:var(--red)}
.sc-t .sc-n{color:var(--ink)}.sc-t .sc-l{color:var(--ink-3)}

/* ===== FILTERS ===== */
.filters{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}
.ftabs{display:flex;gap:4px;flex-wrap:wrap}
.ftab{font-family:var(--f);font-size:12.5px;font-weight:500;padding:6px 14px;border-radius:var(--r-full);border:1.5px solid var(--border);background:var(--card);color:var(--ink-3);cursor:pointer;transition:.12s}
.ftab:hover{border-color:var(--ink-4);color:var(--ink)}
.ftab.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.ftab .c{font-family:var(--fm);font-size:11px;margin-left:3px;opacity:.5}
.fbtns{display:flex;gap:6px}
.fb{display:inline-flex;align-items:center;gap:5px;font-family:var(--f);font-size:12.5px;font-weight:600;padding:6px 14px;border-radius:7px;cursor:pointer;transition:.15s}
.fb-brand{background:var(--brand-grad);border:none;color:#fff;box-shadow:var(--sh-brand)}
.fb-brand:hover{transform:translateY(-1px)}
.fb-ghost{background:var(--card);border:1.5px solid var(--border);color:var(--ink-2)}
.fb-ghost:hover{border-color:var(--ink-4);color:var(--ink)}

/* ===== RESULT CARDS ===== */
.results{display:flex;flex-direction:column;gap:6px;padding-bottom:40px}
.rc{background:var(--card);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;transition:.15s;cursor:pointer;animation:fadeUp .3s ease both}
.rc:hover{box-shadow:var(--sh-md)}

.rc-main{padding:13px 16px}
.rc-top{display:flex;align-items:center;gap:7px;margin-bottom:6px;flex-wrap:wrap}

.rc-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.rc-dot-g{background:var(--green)}
.rc-dot-y{background:var(--amber)}
.rc-dot-r{background:var(--red)}

.pill{font-size:11.5px;font-weight:600;padding:2px 10px;border-radius:var(--r-full)}
.pill-g{background:var(--green-bg);color:var(--green)}
.pill-y{background:var(--amber-bg);color:var(--amber)}
.pill-r{background:var(--red-bg);color:var(--red)}
.pill-t{background:var(--border-lt);color:var(--ink-3);font-weight:500}
.rc-conf{margin-left:auto;font-family:var(--fm);font-size:12px;color:var(--ink-4)}
.rc-text{font-size:13.2px;line-height:1.6;color:var(--ink-2)}
.rc-toggle{font-size:12px;color:var(--brand);margin-top:7px;display:flex;align-items:center;gap:4px}
.rc-toggle:hover{text-decoration:underline}

/* Detail */
.rc-detail{background:#f8f9fc;border-top:1px solid var(--border-lt);padding:14px 16px;display:none}
.rc-detail.open{display:block;animation:fadeIn .2s ease}
.dt-sec{margin-bottom:12px}
.dt-sec:last-child{margin-bottom:0}
.dt-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-4);margin-bottom:4px}
.dt-text{font-size:12.5px;line-height:1.55;color:var(--ink-2)}
.dt-url{color:var(--brand);text-decoration:none;font-family:var(--fm);font-size:12px;word-break:break-all}
.dt-url:hover{text-decoration:underline}
.dt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}
.dt-fl{font-size:10.5px;color:var(--ink-4)}
.dt-fv{font-size:12px;color:var(--ink);font-weight:500}
.dt-warn{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--red);margin-bottom:3px}
.dt-warn::before{content:'!';font-weight:800;font-size:9px;min-width:16px;height:16px;border-radius:50%;background:var(--red-bg);border:1.5px solid var(--red);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.ev-tags{display:flex;gap:5px;flex-wrap:wrap}
.ev{font-family:var(--fm);font-size:11px;padding:2px 8px;border-radius:4px}
.ev-ok{background:var(--green-bg);color:var(--green);border:1px solid #a7f3d0}
.ev-no{background:var(--border-lt);color:var(--ink-4);border:1px solid var(--border)}

/* ===== OVERLAY & MODAL ===== */
.overlay{position:fixed;inset:0;background:rgba(15,23,42,.4);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease both}
.modal{background:var(--card);border-radius:16px;box-shadow:var(--sh-lg);width:420px;max-width:92vw;padding:28px;position:relative;animation:scaleIn .25s ease both}
.modal-close{position:absolute;top:14px;right:14px;width:28px;height:28px;border-radius:6px;border:none;background:var(--border-lt);color:var(--ink-3);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px}
.modal-close:hover{background:var(--border);color:var(--ink)}
.modal h2{font-size:18px;font-weight:700;text-align:center;margin-bottom:4px}
.modal-sub{font-size:13px;color:var(--ink-3);text-align:center;margin-bottom:20px}

/* Auth tabs */
.auth-tabs{display:flex;border-bottom:2px solid var(--border-lt);margin-bottom:16px}
.auth-tab{flex:1;padding:8px 0;text-align:center;font-family:var(--f);font-size:13px;font-weight:500;color:var(--ink-3);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:.12s}
.auth-tab:hover{color:var(--ink)}
.auth-tab.on{color:var(--brand);border-bottom-color:var(--brand)}

.auth-link{text-align:center;margin-top:12px;font-size:12px}
.auth-link a{color:var(--brand);cursor:pointer;text-decoration:none}
.auth-link a:hover{text-decoration:underline}

/* Form fields */
.field{margin-bottom:14px}
.field label{display:block;font-size:12px;font-weight:600;color:var(--ink-2);margin-bottom:5px}
.field-hint{font-size:11.5px;color:var(--ink-4);margin-bottom:6px;line-height:1.4}
.field input,.field select{width:100%;font-family:var(--f);font-size:13.5px;padding:9px 12px;border:1.5px solid var(--border);border-radius:8px;background:var(--card);color:var(--ink);outline:none;transition:.15s}
.field input:focus,.field select:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(99,102,241,.07)}
.field input::placeholder{color:var(--ink-5)}

.form-error{font-size:12px;color:var(--red);margin-top:4px;min-height:0}
.form-error:not(:empty){margin-bottom:8px}

.modal-actions{display:flex;gap:8px;margin-top:18px}
.modal-actions .btn-sm{flex:1;text-align:center;padding:9px 16px;font-size:13px}
.modal-reset{font-family:var(--f);font-size:12px;color:var(--ink-4);background:none;border:none;cursor:pointer;margin-top:12px;display:block;width:100%;text-align:center}
.modal-reset:hover{color:var(--red)}

.modal-note{font-size:11.5px;color:var(--ink-4);line-height:1.5;margin-top:16px;padding:10px;background:var(--border-lt);border-radius:8px}

/* API validate */
.api-validate-result{font-size:12px;min-height:0;margin-top:4px}
.api-validate-result.valid{color:var(--green)}
.api-validate-result.invalid{color:var(--red)}
.api-validate-result.checking{color:var(--ink-4)}

/* Consent checkbox (Task 6) */
.checkbox-row{display:flex;align-items:flex-start;gap:8px;margin-bottom:14px;cursor:pointer;font-size:12.5px;color:var(--ink-2);line-height:1.5}
.checkbox-row input[type="checkbox"]{margin-top:3px;accent-color:var(--brand);flex-shrink:0}
.checkbox-row a{color:var(--brand);text-decoration:none}
.checkbox-row a:hover{text-decoration:underline}

/* ===== HELP PAGE ===== */

/* Help hero — compact, no big glow */
.help-hero{text-align:center;padding:36px 28px 12px}
.help-hero h1{font-size:1.5rem;font-weight:800;letter-spacing:-.3px;margin-bottom:6px;animation:fadeUp .5s ease both}
.help-hero p{font-size:14px;color:var(--ink-3);margin:0;animation:fadeUp .5s ease .1s both}

/* Help nav cards */
.help-nav-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0 32px}
.help-nav-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:16px 18px;cursor:pointer;transition:.15s;text-decoration:none;color:var(--ink);box-shadow:var(--sh)}
.help-nav-card:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.help-nav-card-n{font-size:11px;font-weight:700;color:var(--brand);margin-bottom:4px;font-family:var(--fm)}
.help-nav-card-t{font-size:14px;font-weight:600;color:var(--ink)}

/* Help card — white card for each section */
.help-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;box-shadow:var(--sh);margin-bottom:16px;scroll-margin-top:80px}
.help-card.fadeUp{animation:fadeUp .4s ease both}
.help-card h2{font-size:16px;font-weight:700;margin-bottom:14px;color:var(--ink)}
.help-card h4{font-size:14px;font-weight:700;margin:18px 0 8px;color:var(--ink)}
.help-card p{font-size:13.5px;line-height:1.65;color:var(--ink-2);margin-bottom:10px}
.help-card p:last-child{margin-bottom:0}
.help-card ul,.help-card ol{margin:.4rem 0 .75rem 1.25rem;font-size:13.5px;line-height:1.7;color:var(--ink-2)}
.help-card li{margin-bottom:4px}
.help-card strong{color:var(--ink)}
.help-card a{color:var(--brand);text-decoration:none}
.help-card a:hover{text-decoration:underline}

/* Steps — vertical list with gradient circle numbers */
.step-row{display:flex;align-items:flex-start;gap:16px;padding:14px 0;border-bottom:1px solid var(--border-lt)}
.step-row:last-of-type{border-bottom:none}
.step-circle{display:flex;align-items:center;justify-content:center;min-width:48px;height:48px;background:var(--brand-grad);color:#fff;border-radius:50%;font-family:var(--fm);font-size:16px;font-weight:700;flex-shrink:0;box-shadow:var(--sh-brand)}
.step-content{flex:1;font-size:13.5px;line-height:1.65;color:var(--ink-2)}
.step-content strong{display:block;font-size:14px;color:var(--ink);margin-bottom:6px}
.step-content p{margin-bottom:8px}
.step-content ul{margin:.4rem 0 .5rem 1.25rem;line-height:1.7}

/* Small steps (API section) */
.step-row-sm{padding:8px 0;border-bottom:1px solid var(--border-lt)}
.step-row-sm:last-of-type{border-bottom:none}
.step-circle-sm{min-width:32px;height:32px;font-size:13px}

/* Pipeline — horizontal chain with gradient blocks + arrows */
.pipeline{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px 0;flex-wrap:wrap}
.pipe-block{padding:10px 20px;background:var(--brand-grad);border-radius:8px;font-size:13px;font-weight:600;color:#fff;box-shadow:var(--sh-brand)}
.pipe-arrow{color:var(--ink-4);font-size:18px;font-weight:700}

/* Verdict cards with colored dot + pill */
.verdict-cards{display:flex;flex-direction:column;gap:10px;margin:.75rem 0}
.verdict-card{background:var(--border-lt);border-radius:var(--r);padding:16px 18px;border-left:4px solid var(--ink-4)}
.verdict-card-g{border-left-color:#22c55e}
.verdict-card-lg{border-left-color:#84cc16}
.verdict-card-y{border-left-color:#eab308}
.verdict-card-o{border-left-color:#f97316}
.verdict-card-r{border-left-color:#ef4444}
.verdict-card-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}
.verdict-card-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}
.verdict-card-name{font-size:14px;font-weight:700;color:var(--ink)}
.verdict-card-head .pill{margin-left:auto}
.verdict-card-desc{font-size:13px;color:var(--ink-2);line-height:1.55;margin-bottom:6px}
.verdict-card-action{font-size:12.5px;color:var(--ink-3);line-height:1.55}
.verdict-card ul{margin:.4rem 0 .5rem 1.25rem;font-size:13px;line-height:1.65;color:var(--ink-2)}

/* Check table — styled alternating rows */
.check-table{width:100%;border-collapse:collapse;margin:.75rem 0;border-radius:var(--r);overflow:hidden}
.check-table th,.check-table td{padding:10px 14px;font-size:13px;border-bottom:1px solid var(--border-lt);text-align:left;vertical-align:top}
.check-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-4);background:var(--border-lt)}
.check-table tr:nth-child(even) td{background:var(--border-lt)}
.check-table tr:last-child td{border-bottom:none}

/* Source cards — 2 column grid */
.source-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:.75rem 0}
.source-card{padding:16px 18px;border:1px solid var(--border);border-radius:var(--r);background:var(--card);transition:.12s}
.source-card:hover{box-shadow:var(--sh-md)}
.source-card h4{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:6px}
.source-card p{font-size:12.5px;color:var(--ink-2);line-height:1.5;margin-bottom:8px}
.source-card-tags{display:flex;gap:4px;flex-wrap:wrap}
.source-badge{font-family:var(--fm);font-size:10.5px;padding:2px 8px;border-radius:4px;background:var(--border-lt);color:var(--ink-4)}
.source-badge.badge-green{background:var(--green-bg);color:var(--green)}
.source-badge.badge-amber{background:var(--amber-bg);color:var(--amber)}

/* Provider table */
.provider-table{width:100%;border-collapse:collapse;margin:.75rem 0;border-radius:var(--r);overflow:hidden}
.provider-table th,.provider-table td{padding:8px 10px;font-size:12.5px;border-bottom:1px solid var(--border-lt);text-align:left}
.provider-table th{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-4);background:var(--border-lt)}
.provider-table td{color:var(--ink-2)}
.provider-table tr:nth-child(even) td{background:var(--border-lt)}
.provider-table code{font-family:var(--fm);font-size:11.5px;background:var(--border-lt);padding:1px 5px;border-radius:3px}

/* FAQ accordion — display:none/block toggle */
.faq-list{display:flex;flex-direction:column;gap:6px;margin:.5rem 0}
.faq-item{border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.faq-q{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);background:var(--card);transition:.12s;gap:12px}
.faq-q:hover{background:var(--border-lt)}
.faq-arrow{transition:transform .2s ease;flex-shrink:0;color:var(--ink-4)}
.faq-item.open .faq-arrow{transform:rotate(180deg)}
.faq-a{display:none;padding:0 16px 14px;border-top:1px solid var(--border-lt)}
.faq-item.open .faq-a{display:block}
.faq-a p{font-size:13px;line-height:1.6;color:var(--ink-2);margin-bottom:6px;margin-top:10px}
.faq-a p:last-child{margin-bottom:0}
.faq-a ul{margin:.4rem 0 .5rem 1.25rem;font-size:13px;line-height:1.65;color:var(--ink-2)}

/* Help warnings/notes */
.help-warn{font-size:12.5px;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:12px 16px;margin-top:16px;line-height:1.55}
.help-note-gray{font-size:12.5px;color:var(--ink-3);background:var(--border-lt);border:1px solid var(--border);border-radius:8px;padding:12px 16px;margin-top:16px;line-height:1.55}

/* ===== PRIVACY PAGE ===== */

/* Privacy hero — compact */
.privacy-hero{text-align:center;padding:36px 28px 12px}
.privacy-hero h1{font-size:1.5rem;font-weight:800;letter-spacing:-.3px;margin-bottom:6px;animation:fadeUp .5s ease both}
.privacy-hero p{font-size:14px;color:var(--ink-3);margin:0;animation:fadeUp .5s ease .1s both}

/* Privacy date */
.privacy-date{font-size:13px;color:var(--ink-3);margin-bottom:20px;text-align:center}

/* Privacy sections — white cards */
.privacy-section{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;box-shadow:var(--sh);margin-bottom:16px}
.privacy-section.fadeUp{animation:fadeUp .4s ease both}
.privacy-section h2{font-size:16px;font-weight:700;margin-bottom:12px;color:var(--ink)}
.privacy-section h2 .sec-num{color:var(--brand);margin-right:2px}
.privacy-section p{font-size:13.5px;line-height:1.65;color:var(--ink-2);margin-bottom:8px}
.privacy-section p:last-child{margin-bottom:0}
.privacy-section ul{padding-left:20px;margin:.4rem 0 .75rem;font-size:13.5px;line-height:1.7;color:var(--ink-2);list-style:disc}
.privacy-section li{margin-bottom:3px}
.privacy-section strong{color:var(--ink)}
.privacy-section a{color:var(--brand);text-decoration:none}
.privacy-section a:hover{text-decoration:underline}

/* "НЕ" highlights — bold + green */
.privacy-ne{font-weight:700;color:var(--green)}

/* [---] placeholders — inline-code style */
.placeholder{font-family:var(--fm);font-size:12.5px;background:var(--border-lt);padding:1px 6px;border-radius:4px;color:var(--ink-4)}

/* ===== FOOTER (Task 7) ===== */
.footer{background:var(--card);border-top:1px solid var(--border);margin-top:40px}
.footer-inner{max-width:960px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--ink-4)}
.footer-inner a{color:var(--ink-3);text-decoration:none;transition:.12s}
.footer-inner a:hover{color:var(--brand)}
.footer-links{display:flex;gap:16px}
#footer-test-mode{font-size:12px;color:var(--ink-4)}

/* ===== MOBILE NAV ===== */
.hdr-burger{display:none;background:none;border:none;color:var(--ink-3);cursor:pointer;padding:4px;border-radius:6px;transition:.12s}
.hdr-burger:hover{color:var(--ink);background:var(--border-lt)}
.mobile-nav{display:none;background:var(--card);border-bottom:1px solid var(--border);padding:0 24px;overflow:hidden;max-height:0;transition:max-height .2s ease}
.mobile-nav.open{max-height:120px;padding:8px 24px 12px}
.mobile-nav a{display:block;padding:8px 0;font-size:14px;font-weight:500;color:var(--ink-3);text-decoration:none;border-bottom:1px solid var(--border-lt)}
.mobile-nav a:last-child{border-bottom:none}
.mobile-nav a:hover,.mobile-nav a.on{color:var(--brand)}

/* ===== SCROLL-TO-TOP (sticky) ===== */
.btn-top{position:sticky;bottom:24px;display:block;margin:0 auto;width:fit-content;padding:10px 24px;border-radius:24px;background:var(--brand);color:#fff;border:none;font-family:var(--f);font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px rgba(79,70,229,.25);opacity:0;transition:opacity .25s,transform .15s;pointer-events:none;z-index:50}
.btn-top.visible{opacity:1;pointer-events:auto}
.btn-top:hover{background:#4338ca;transform:translateY(-2px);box-shadow:0 6px 16px rgba(79,70,229,.35)}

/* ===== ADMIN PAGE ===== */

/* Admin hero — compact, like help/privacy */
.admin-hero{text-align:center;padding:36px 28px 12px}
.admin-hero h1{font-size:1.5rem;font-weight:800;letter-spacing:-.3px;margin-bottom:6px;animation:fadeUp .5s ease both}
.admin-hero p{font-size:14px;color:var(--ink-3);margin:0;animation:fadeUp .5s ease .1s both}

.admin-wrap{max-width:860px}

/* Admin stat cards — 4 cols */
.admin-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0 16px}
.adm-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:18px 16px;text-align:center;box-shadow:var(--sh);transition:.15s}
.adm-card:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.adm-card-n{font-size:1.8rem;font-weight:800;color:var(--brand);line-height:1;margin-bottom:4px}
.adm-card-l{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--ink-3)}

/* Verdicts mini-bar */
.adm-verdicts{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}
.adm-vbadge{font-size:12px;font-weight:600;padding:4px 12px;border-radius:var(--r-full)}
.adm-vbadge-g{background:var(--green-bg);color:var(--green)}
.adm-vbadge-y{background:var(--amber-bg);color:var(--amber)}
.adm-vbadge-r{background:var(--red-bg);color:var(--red)}

/* Admin sections */
.adm-section{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px 22px;box-shadow:var(--sh);margin-bottom:16px}
.adm-section h2{font-size:16px;font-weight:700;margin-bottom:14px;color:var(--ink)}
.adm-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.adm-section-head h2{margin-bottom:0}

/* Admin filter tabs */
.adm-filters{display:flex;gap:4px}
.adm-ftab{font-family:var(--f);font-size:12px;font-weight:500;padding:5px 12px;border-radius:var(--r-full);border:1.5px solid var(--border);background:var(--card);color:var(--ink-3);cursor:pointer;transition:.12s}
.adm-ftab:hover{border-color:var(--ink-4);color:var(--ink)}
.adm-ftab.on{background:var(--ink);color:#fff;border-color:var(--ink)}

/* Admin tables */
.adm-table-wrap{overflow-x:auto;margin:0 -22px;padding:0 22px}
.adm-table{width:100%;border-collapse:collapse}
.adm-table th,.adm-table td{padding:10px 12px;font-size:13px;text-align:left;border-bottom:1px solid var(--border-lt);vertical-align:middle}
.adm-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-4);background:var(--border-lt);position:sticky;top:0}
.adm-table tbody tr{transition:.08s}
.adm-table tbody tr:hover{background:var(--border-lt)}
.adm-table tbody tr:last-child td{border-bottom:none}

/* Verdict mini-pills in table */
.adm-vpills{display:flex;gap:3px;flex-wrap:wrap}
.adm-vpill{font-family:var(--fm);font-size:10px;padding:1px 6px;border-radius:4px}
.adm-vpill-g{background:var(--green-bg);color:var(--green)}
.adm-vpill-y{background:var(--amber-bg);color:var(--amber)}
.adm-vpill-r{background:var(--red-bg);color:var(--red)}

/* Status pill */
.adm-status{font-size:11px;font-weight:600;padding:2px 8px;border-radius:var(--r-full)}
.adm-status-completed{background:var(--green-bg);color:var(--green)}
.adm-status-pending{background:var(--amber-bg);color:var(--amber)}
.adm-status-error{background:var(--red-bg);color:var(--red)}

/* Role badge */
.adm-role{font-size:11px;font-weight:600;padding:2px 8px;border-radius:var(--r-full)}
.adm-role-admin{background:#eef2ff;color:var(--brand)}
.adm-role-user{background:var(--border-lt);color:var(--ink-4)}

/* Expandable check detail row */
.adm-check-detail{background:#f8f9fc;display:none}
.adm-check-detail.open{display:table-row}
.adm-check-detail td{padding:14px 16px}
.adm-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}
.adm-detail-item .dt-fl{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--ink-4);margin-bottom:2px}
.adm-detail-item .dt-fv{font-size:12.5px;color:var(--ink)}

/* Pagination */
.adm-pagination{display:flex;justify-content:center;gap:4px;margin-top:14px}
.adm-page-btn{font-family:var(--f);font-size:12px;font-weight:500;padding:5px 12px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--ink-3);cursor:pointer;transition:.12s}
.adm-page-btn:hover{border-color:var(--ink-4);color:var(--ink)}
.adm-page-btn.on{background:var(--brand);color:#fff;border-color:var(--brand)}

/* Nav admin link color */
.nav-admin{color:var(--brand) !important}

/* ===== RESPONSIVE ===== */
@media(max-width:700px){
    .hdr-inner{padding:0 16px}
    .hdr-nav{display:none}
    .hdr-burger{display:block}
    .mobile-nav{display:block}
    .banner-inner{flex-direction:column;gap:6px;text-align:center;padding:9px 16px}
    .hero h1{font-size:1.5rem}
    .hero{padding:30px 16px 0}
    .help-hero h1,.privacy-hero h1{font-size:1.25rem}
    .sum-cards{grid-template-columns:repeat(2,1fr)}
    .filters{flex-direction:column;align-items:stretch}
    .help-nav-grid{grid-template-columns:1fr 1fr}
    .source-cards{grid-template-columns:1fr}
    .pipeline{gap:6px}
    .pipe-block{padding:8px 12px;font-size:12px}
    .step-circle{min-width:38px;height:38px;font-size:14px}
    .modal{padding:20px;width:95vw}
    .footer-inner{flex-direction:column;gap:8px;text-align:center}
    .admin-cards{grid-template-columns:repeat(2,1fr)}
    .adm-section{padding:14px 16px}
    .adm-table-wrap{margin:0 -16px;padding:0 16px}
    .adm-section-head{flex-direction:column;align-items:stretch;gap:10px}
}
