﻿/* ==========================================================================
BANKPDFS - Ordered + Desktop-safe + One-line rules
========================================================================== */

/* ============================= Tokens ============================= */
:root{--black:#0b1220;--white:#ffffff;--primary:#0f5132;--primary-2:#146c43;--secondary:#0b1220;--accent:#198754;
--warning:#b54708;--bg:#f6f8f7;--surface:#ffffff;--border:#dde5e1;--text:#0b1220;--text-light:#334155;--text-muted:#64748b;
--shadow:0 18px 45px rgba(2,6,23,.08);--shadow-sm:0 10px 25px rgba(2,6,23,.06);--radius-sm:10px;--radius-md:14px;
--radius-lg:18px;--radius-xl:22px;--font-heading:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;
--font-body:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;--transition:all .18s ease;--footer-bg:#0f172a;
--footer-text:#e5e7eb;--footer-muted:#9ca3af;--footer-border:#1f2937;
--upload-bg: #B8CBE0;--upload-accent: #2E5C8A;--shape-upload-bg: #B8CBE0;--shape-upload-color: #2E5C8A;
--extract-bg: #d6eee3; --extract-accent: #2f6f57;--shape-extract-bg: #d6eee3;--shape-extract-color: #2f6f57;
--export-bg: #f1ebc9;--export-accent: #9a8e45;--shape-export-bg: #f1ebc9;--shape-export-color: #9a8e45;}
/* ============================= Reset / Base ============================= */
*{box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
/*html, body {height: 100%;margin: 0;padding: 0;}
body {display: flex;flex-direction: column;min-height: 100vh;}*/
html{scroll-behavior:smooth;}
body{background:#f8f9fa;color:#212529;font-family:var(--font-body);line-height:1.6;overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button,input,select{font:inherit;}
/*.main-content{flex: 1 0 auto;}*/
.container{max-width:1180px;margin:0 auto;padding:0 18px;}

/* ============================= Typography ============================= */
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text);line-height:1.15;}
h1{font-size:44px;letter-spacing:-.02em;}
h2{font-size:32px;letter-spacing:-.02em;}
.text-large{font-size:18px;color:var(--text-light);}
.text-small{font-size:13px;color:var(--text-muted);}

/* ============================= Buttons / Inputs ============================= */
.btn {display: inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:12px;border:1px solid var(--border);cursor:pointer;transition:var(--transition);font-size:14px;font-weight:600;letter-spacing:.3px;}
.btn-icon{display:inline-flex;align-items:center;justify-content:center;}
.btn-primary{background:var(--primary);color:#fff;border-color:transparent;box-shadow:var(--shadow-sm);}
.btn-primary:hover{transform:translateY(-1px);background:var(--primary-2);}
.btn-secondary{background:var(--secondary);color:#fff;border-color:transparent;box-shadow:var(--shadow-sm);}
.btn-secondary:hover{transform:translateY(-1px);opacity:.95;}
.btn-outline{background:#fff;color:var(--text);box-shadow:var(--shadow-sm);}
.btn-outline:hover{transform:translateY(-1px);background:#f3f6f5;}
.btn-accent{background:var(--accent);color:#fff;border-color:transparent;box-shadow:var(--shadow-sm);}
.btn-accent:hover{transform:translateY(-1px);filter:brightness(.98);}
.btn-disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important;}
.upload-inner-btn{margin-top:14px;width:240px;}
.header-btn{padding:8px 14px;font-size:14px;font-weight: 900;border-radius:10px;}
.select{width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:#fff;box-shadow:var(--shadow-sm);}
.nav-links .nav-link:hover {text-decoration: underline;}


/* ============================= Navbar ============================= */
.navbar{display:flex;align-items:center;justify-content:space-between;padding:22px 0;gap:18px;}
.logo{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.6px;}
.logo-icon{width:40px;height:40px;border-radius:12px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:var(--shadow-sm);font-weight:900;}
.nav-links{display:flex;align-items:center;gap:18px;}
.nav-link{font-size: 14px;font-weight: 900;color:var(--text-muted);padding:8px 10px;border-radius: 10px;letter-spacing: 0.2px;transition: var(--transition);}
.nav-link:hover {background: #eef4f1;color:var(--text);}
.nav-link.active{background:#e7f3ec;color:var(--primary);}

/* Hide checkbox */
.nav-toggle {position: absolute;opacity: 0;pointer-events: none;}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:10px;}
.nav-toggle span{width:22px;height:2px;background:#0b1220;border-radius:2px;transition:.2s;}

/* Mobile burger button (hidden on desktop) */
.nav-burger {display: none;align-items: center;gap:10px;cursor:pointer;user-select: none;padding: 10px 12px;border-radius: 12px;background: #fff; transition: transform .12s ease;}
.nav-burger:active {transform: translate(1px,1px);box-shadow: 3px 3px 0px #000;}
.burger-text { font-family: 'Inter','Space Grotesk',system-ui,-apple-system,sans-serif;font-weight:800; letter-spacing: .5px;font-size: .95rem;}
.burger-lines {width: 22px;height: 16px;position: relative;display: inline-block;}
.burger-lines::before,
.burger-lines::after {content: "";position: absolute;left: 0;width: 100%;height: 2px;background: #000;border-radius: 2px;transition: transform .18s ease, top .18s ease, opacity .18s ease;}
.burger-lines::before {top:2px;}
.burger-lines::after {top:12px;}
.burger-lines {background: linear-gradient(#000,#000) center/100% 2px no-repeat;}

/* ============================= Logo ============================= */
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.logo img{height:38px;width:auto;display:block;}
.logo-text{display:flex;align-items:baseline;font-family:'Inter','Space Grotesk',system-ui,-apple-system,sans-serif;font-weight:700;letter-spacing:-.5px;line-height:1;}
.logo-bank{color:#1f3b63;font-size:1.45rem;}
.logo-pdfs{color:#2fa44f;font-size:1.45rem;margin-left:2px;}
.logo-dot{color:#888;font-size:.9rem;margin-left:2px;font-weight:600;}

/* ============================= Hero Layout ============================= */
.hero{display:grid;grid-template-columns:0.9fr 1.1fr;gap:38px;align-items:start;padding:18px 0 18px;}
.hero-left{padding-right:24px;}
.hero-right{min-width:0;}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-xl);padding:20px;}
.card-accent{border-color:#cfe7db;}
.floating{transform:translateZ(0);}

/* ============================= Home (no uploader) ============================= */
.home-hero{padding:18px 0 10px;}
.home-hero-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:start;}
.home-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;}
.home-cta .btn{min-height:46px;}
.home-note{margin-top:12px;color:var(--text-muted);font-size:13px;line-height:1.4;max-width:760px;}
.home-card{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm);padding:16px;}
.home-card h3{margin:0;font-size:16px;}
.home-card p{margin-top:8px;color:var(--text-muted);font-size:14px;line-height:1.45;}
.home-bullets{margin-top:10px;padding-left:18px;color:var(--text-muted);font-size:14px;line-height:1.5;}
.home-mini-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:14px;margin-bottom:15px;}
.home-mini{border:1px solid var(--border);border-radius:16px;padding:14px;box-shadow:var(--shadow-sm);}
.home-mini strong{display:block;font-weight:1000;letter-spacing:.3px;}
.home-mini span{display:block;margin-top:6px;color:var(--text-muted);font-size:13px;line-height:1.35;}

/* ===== Access Cards Strip ===== */
.access-cards{margin:28px 0 18px 0;}
.access-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:14px;}
.access-card{border:1px solid var(--border);border-radius:12px;padding:18px 16px;background:#fff;display:flex;flex-direction:column;justify-content:center;min-height:90px;}
.access-title{font-size:14px;font-weight:700;margin-bottom:4px;}
.access-value{font-size:15px;color:var(--text-muted);}
.access-card-cta{align-items:center;justify-content:center;text-align:center;gap:8px;}
.access-link{font-size:13px;color:var(--text-muted);text-decoration:none;}
.access-link:hover{text-decoration:underline;}
@media(max-width:900px){.access-grid{grid-template-columns:1fr;}}


/* ============================= Badges / Chips ============================= */
.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;font-weight:900;font-size:12px;letter-spacing:.5px;border:1px solid var(--border);background:#fff;box-shadow:var(--shadow-sm);}
.badge-primary{background:#e7f3ec;border-color:#cfe7db;color:var(--primary);}
.trust-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.trust-chips {display: none;}
.chip{display:inline-flex;align-items:center;gap:8px;padding:6px 8px;margin:2px;border-radius:999px;border:1px solid var(--border);background:#fff;box-shadow:var(--shadow-sm);font-weight:800;font-size:12px;color:var(--text);}
.chip em{font-style:normal;color:var(--text-muted);font-weight:800;}
.chip-free{background:#e7f3ec;border-color:#cfe7db;}

/* ============================= Stats ============================= */
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px;}
.stat-item{border:1px solid var(--border);border-radius:16px;padding:14px;background:#fff;box-shadow:var(--shadow-sm);}
.stat-number{font-weight:900;color:var(--primary);font-size:16px;}
.stat-label{font-size:12px;color:var(--text-muted);margin-top:6px;}

/* ============================= Animations ============================= */
@keyframes shake{0%,100%{transform:translateX(0);}20%{transform:translateX(-6px);}40%{transform:translateX(6px);}60%{transform:translateX(-4px);}80%{transform:translateX(4px);}}
.btn-shake{animation:shake .45s ease-in-out;}

/* ============================= Documents Shell ============================= */
body.app-shell main{padding:0;}
body.app-shell .container{max-width:1400px;}

/* ============================= Documents Header ============================= */
.appbar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid rgba(15,23,42,.12);}
.appbar-inner{max-width:1400px;margin:0 auto;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;}

/* Brand */
.appbrand{display:flex;align-items:center;gap:10px;min-width:0;color:var(--text);text-decoration:none;}
.appbrand-mark{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(15,23,42,.18);border-radius:12px;font-weight:900;color:var(--primary);background:#fff;}
.appbrand-text{font-weight:950;letter-spacing:.02em;white-space:nowrap;}

/* Links */
.appbar-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.app-link{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;border:1px solid transparent;text-decoration:none;color:var(--text);font-weight:900;font-size:13px;}
.app-link:hover{background:rgba(15,81,50,.06);border-color:rgba(15,81,50,.14);}
.app-link.active{background:rgba(15,81,50,.10);border-color:rgba(15,81,50,.18);}

/* Right side */
.appbar-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.app-pill{padding:6px 10px;border-radius:999px;border:1px solid rgba(15,23,42,.16);background:#fff;font-size:12px;font-weight:900;color:var(--text);}
.app-btn{padding:8px 12px;border-radius:12px;border:1px solid rgba(15,23,42,.18);background:#fff;font-weight:950;cursor:pointer;}
.app-btn:hover{background:rgba(15,23,42,.04);}

/* Bank flow */
.bank-flow {padding: 38px 0;}.banks-grid {display: flex; flex-wrap: wrap;gap: 8px;margin-top: 12px;}
.bank-pill {display: inline-flex; align-items: center; gap: 8px;border: 1px solid var(--border); border-radius: 999px;padding: 8px 10px; background: #fff; box-shadow: var(--shadow-sm);font-size: 12px; font-weight: 900;letter-spacing: .2px; color: var(--text);}
.bank-dot { width: 10px;height: 10px;border-radius: 999px;background: rgba(15,81,50,.18);border: 1px solid rgba(15,81,50,.22); }
.bank-pill{text-decoration:none;color:inherit;}
.bank-pill:hover{text-decoration:underline;}

/*How it works section*/
.shape-flow {padding:38px 0;}
.shape-flow-title {text-align: center;font-size: 32px;font-weight: 950;letter-spacing: -.02em;margin: 0;}
.shape-flow-sub {text-align: center;margin: 12px auto 34px;max-width: 760px;color: var(--text-muted);font-size:15px;}
.shape-rail {position: relative;display: grid;grid-template-columns: repeat(3,1fr);gap:18px;}
.shape-rail::before {content: "";position: absolute;left: calc(16px+24px);right: calc(16px+24px);top: 34px;height: 2px;background: linear-gradient(90deg, rgba(15,81,50,.25), rgba(15,81,50,.12));border-radius: 999px;z-index: 0;}
.shape-step {position: relative;border-radius: 20px;padding: 24px 20px 22px;display: flex;gap: 12px;min-height: 160px;border: 1px solid rgba(0,0,0,.05);box-shadow: var(--shadow-sm);transition: transform .2s ease, box-shadow .2s ease;}
.shape-step:hover {transform: translateY(-3px);box-shadow: var(--shadow);}
.shape-step:nth-child(1) {background: var(--upload-bg);}
.shape-step:nth-child(2) {background: var(--extract-bg);}
.shape-step:nth-child(3) {background: var(--export-bg);}
.shape-step:nth-child(1) .shape-kicker {color: rgba(31,78,140,.78);}
.shape-step:nth-child(2) .shape-kicker {color: rgba(15,81,50,.78);}
.shape-step:nth-child(3) .shape-kicker {color:color-mix(in srgb, var(--export-accent) 78%, transparent);}
.shape-mark {width:44px;height:44px;border-radius:16px;display:flex;align-items: center;justify-content:center;flex-shrink: 0;z-index:1;}
.shape-mark.circle {/*background: var(--shape-upload-bg);border: 1px solid rgba(31,78,140,.18);*/}
.shape-mark.circle::after {content: "";width: 26px;height: 26px;border-radius: 999px;background: var(--shape-upload-color);}
.shape-mark.triangle {/*background: var(--shape-extract-bg);border: 1px solid rgba(15,81,50,.18);*/}
.shape-mark.triangle::after {content: "";width: 0;height: 0;border-left: 17px solid transparent;border-right: 17px solid transparent;border-bottom: 30px solid var(--shape-extract-color);}
.shape-mark.square {/*background: var(--shape-export-bg);border: 1px solid rgba(51,65,85,.18);*/}
.shape-mark.square::after {content: "";width: 26px;height: 26px;border-radius: 1px;background: var(--shape-export-color);}
.shape-body {min-width: 0;}
.shape-kicker {font-size: 12px;font-weight: 900;letter-spacing: .12em;}
.shape-head {margin-top: 6px;font-size: 18px;font-weight: 950;color: var(--text);letter-spacing: -.01em;}
.shape-text {margin-top: 8px;color: var(--text-muted);font-size: 14px;line-height: 1.5;}

/* ============================= Upload Zone ============================= */
.upload-zone{border:2px dashed #cfe7db;border-radius:22px;min-height:330px;padding:34px 22px;text-align:center;background:linear-gradient(180deg,#ffffff 0%,#f7fbf8 100%);cursor:pointer;transition:var(--transition);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;}
.upload-zone:hover{transform:translateY(-2px);border-color:#9fd0b8;box-shadow:0 14px 34px rgba(15,81,50,.10);}
.upload-zone.drag-over{background:#edf7f1;border-color:#78c59f;box-shadow:0 16px 38px rgba(15,81,50,.12);transform:translateY(-2px);}
.upload-zone.upload-locked{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none;}
.upload-icon{font-size:42px;margin-bottom:2px;line-height:1;}
.upload-text{font-weight:950;letter-spacing:.12em;font-size:14px;text-transform:uppercase;color:var(--text);}
.upload-subtext{margin-top:2px;font-size:13px;color:var(--text-muted);max-width:320px;line-height:1.35;}
.controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;}
@media (max-width:768px){.upload-zone{min-height:220px;padding:26px 16px;border-radius:20px;}.controls{grid-template-columns:1fr;}}
.pill{font-size:.85rem;border:1px solid rgba(0,0,0,.12);border-radius:999px;padding:.2rem .55rem;background:rgba(0,0,0,.18);}
/* Upload CTA enrichment */
.upload-hint{opacity:.85;}
.upload-inner-btn{width:260px;}
.upload-footnote{margin-top:10px;font-size:12px;color:var(--text-muted);line-height:1.35;}
.upload-footnote strong{color:var(--primary);}

/* Make dropzone feel more clickable but still conservative */
.upload-zone{border-color:#9fd0b8;}
.upload-zone:focus{outline:none;box-shadow:0 0 0 4px rgba(25,135,84,.18);}
.upload-zone:hover .upload-text{color:var(--primary);}

/* ============================= Queue (GLOBAL) ============================= */
.queue{margin-top:14px;display:flex;flex-direction:column;gap:10px;max-height:360px;overflow:auto;padding-right:4px;padding-bottom: 14px;}
.queue-row{display:flex;gap:10px;align-items:center;justify-content:space-between;border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:#fff;}
.queue-left{display:flex;gap:10px;align-items:center;flex:1;min-width:0;}
.queue-badge{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);flex:0 0 auto;}
.queue-meta{min-width:0;}
.queue-name{font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px;}
.queue-sub{font-size:12px;opacity:.8;margin-top:2px;}
.queue-right{display:flex;gap:8px;align-items:center;flex:0 0 auto;white-space:nowrap;}
.queue-status{font-size:12px;min-width:100px;text-align:right;opacity:.85;}
.queue-btn{padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:var(--shadow-sm);cursor:pointer;font-weight:900;font-size:12px;}
.queue-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;}
.queue-remove{border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:var(--shadow-sm);cursor:pointer;padding:8px 10px;font-weight:900;line-height:1;}
.queue-actions{margin-top:14px;display:flex;flex-direction:column;gap:10px;}
.queue-meta{min-width:0;flex:1;}
.queue-name{font-size:13px;}
.queue-sub{font-size:11px;}
.queue-status{font-size:11px;}
.queue-btn{font-size:11px;padding:6px 8px;}
.queue {margin-top: 18px;padding-top: 14px;}


/* ============================= Modal / PDF Preview (GLOBAL) ============================= */
.pdf-modal {position: fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100dvh;height:100vh;display:none;z-index:9999;}
.pdf-modal[aria-hidden="false"]{display:block;}
.pdf-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);z-index:0;}
.pdf-modal-card{position:relative;z-index:1;width:100vw;height:100vh;max-width:none;margin:0;background:#fff;border:0;border-radius:0;box-shadow:none;display:flex;flex-direction:column;overflow:hidden;}
.pdf-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border);background:#fff;}
.pdf-modal-title{font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70vw;}
.pdf-modal-close{border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:var(--shadow-sm);cursor:pointer;padding:2px 8px;}
.pdf-modal-body{flex:1;padding:0;}
.pdf-modal-body iframe{width:100%;height:100%;border:0;background:#111;}
body.pdf-modal-open{overflow:hidden;}

/* ============================= How It Works / Features ============================= */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;}
.feature-card{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm);padding:18px;}
.feature-icon{font-size:28px;}
.feature-title{margin-top:10px;font-weight:700;letter-spacing:.6px;}
.feature-desc{margin-top:8px;color:var(--text-muted);font-size:14px;}

/* ============================= FAQ ============================= */
.faq-section{margin-top:44px;padding:18px 0 42px;}
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px;}
.faq-item{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm);padding:14px;transition:var(--transition);}
.faq-item:hover{transform:translateY(-1px);}
.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;background:none;border:0;padding:0;cursor:pointer;font-weight:900;text-align:left;}
.faq-toggle{font-weight:900;font-size:18px;transition:transform .2s ease;}
.faq-answer{display:block;max-height:0;overflow:hidden;transition:max-height .3s ease,opacity .2s ease;opacity:0;margin-top:10px;color:var(--text-muted);font-size:14px;}
.faq-item.open .faq-answer{max-height:300px;opacity:1;}
.faq-item.open .faq-toggle{transform:rotate(45deg);}
/* ============================= Footer ============================= */
.site-footer {margin-top: auto;background: var(--footer-bg);color: var(--footer-text);border-top: 1px solid var(--footer-border);}
.site-footer a{color:var(--footer-text);opacity:.92;}
.site-footer a:hover{opacity:1;text-decoration:underline;}
.site-footer .footer-inner{max-width:1180px;margin:0 auto;padding:26px 18px;display:flex;flex-direction:column;gap:14px;}
.site-footer .footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;}
.site-footer .footer-brand{display:flex;flex-direction:column;gap:6px;}
.site-footer .footer-logo{font-weight:900;letter-spacing:.7px;}
.site-footer .footer-disclaimer{color:var(--footer-muted);font-size:13px;max-width:720px;}
.site-footer .footer-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.site-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--footer-border);padding-top:14px;color:var(--footer-muted);font-size:12px;}
.site-footer .footer-contact{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.site-footer .footer-sep{opacity:.4;}

.excel-bg{position:relative;overflow:hidden;}
.excel-bg::before{
  content:"";
  position:absolute;inset:0;
  pointer-events:none;

  /* Excel-ish grid: columns wider than rows */
  background-image:
    linear-gradient(to right, rgba(15,81,50,.10) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(15,81,50,.10) 1px, transparent 1px);

  background-size: 64px 20px; /* <- tweak these */
  opacity:.55;

  mask-image:radial-gradient(800px 500px at 75% 55%,
    #000 0%, rgba(0,0,0,.55) 55%, transparent 78%);
}
.excel-bg > *{position:relative;z-index:1;}
/* Excel-inspired stat backgrounds */
.stat-yellow  { background-color: rgb(255, 242, 204); }
.stat-purple  { background-color: rgb(217, 210, 233); }
.stat-blue    { background-color: rgb(207, 226, 243); }
.stat-red     { background-color: rgb(244, 204, 204); }
.stat-green   { background-color: rgb(217, 234, 211); }

/* Improve contrast + polish */
.stat-item{border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:16px;box-shadow:none;}
.stat-number{font-weight:1000;font-size:16px;color:#0b1220;}
.stat-label{font-size:12px;margin-top:6px;color:#334155;}

/* ============================= Settings ============================= */
.settings-container{margin-top:40px;margin-bottom:60px;}
.settings-card{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm);padding:28px;max-width:820px;margin:0 auto;}
.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:16px;flex-wrap:wrap;}
.settings-section{margin-top:30px;padding-top:20px;border-top:1px solid var(--border);}
.settings-section:first-of-type{border-top:none;padding-top:0;}
.settings-section h3{font-size:18px;margin-bottom:12px;}
.settings-row{display:flex;gap:12px;flex-wrap:wrap;}

.input{flex:1;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:#fff;box-shadow:var(--shadow-sm);font-size:14px;}
.muted{color:var(--text-muted);font-size:14px;margin-bottom:12px;}
.small-link{margin-top:10px;font-size:13px;}
.small-link a{color:var(--primary);}
.banks-table-wrap{overflow:hidden;border-radius:14px;}

.tool-support{margin-top:28px;}
.tool-support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px;}
.support-card{background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm);padding:16px;}
.support-title{font-weight:900;letter-spacing:.3px;}
.support-desc{margin-top:8px;color:var(--text-muted);font-size:14px;line-height:1.45;}

.countries-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
    margin-top: 8px;
}

.country-card {
    display: flex;
    align-items: center;
    gap: 14px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: #fff;
    padding: 16px;
    box-shadow: var(--shadow-sm);
    transition: var(--transition);
}

    .country-card:hover {
        transform: translateY(-2px);
        border-color: #cfe7db;
        box-shadow: 0 14px 34px rgba(15,81,50,.10);
    }

.country-flag {
    font-size: 28px;
    line-height: 1;
    width: 42px;
    text-align: center;
    flex: 0 0 auto;
}

.country-flag-lg {
    font-size: 42px;
    width: auto;
}

.country-meta {
    min-width: 0;
    flex: 1;
}

.country-name {
    font-weight: 900;
    color: var(--text);
    line-height: 1.2;
}

.country-code {
    margin-top: 4px;
    font-size: 12px;
    color: var(--text-muted);
    font-weight: 800;
    letter-spacing: .08em;
}

.country-count {
    font-size: 13px;
    color: var(--text-muted);
    font-weight: 800;
    white-space: nowrap;
}

.banks-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bank-row-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: #fff;
    padding: 16px 18px;
    box-shadow: var(--shadow-sm);
    transition: var(--transition);
}

    .bank-row-card:hover {
        transform: translateY(-1px);
        border-color: #cfe7db;
        background: #f9fcfa;
    }

.bank-row-main {
    min-width: 0;
}

.bank-row-name {
    font-weight: 900;
    color: var(--text);
}

.bank-row-sub {
    margin-top: 4px;
    font-size: 13px;
    color: var(--text-muted);
}

.bank-row-cta {
    font-size: 13px;
    font-weight: 900;
    color: var(--primary);
    white-space: nowrap;
}
.country-flag{
    width:42px;
    height:42px;
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
}

.country-flag img{
    max-width:100%;
    max-height:100%;
    display:block;
    border-radius:6px;
    border:1px solid rgba(0,0,0,.08);
    box-shadow:var(--shadow-sm);
}

.country-flag-lg{
    width:56px;
    height:56px;
}

.bank-info-card {
    margin-top: 18px;
    padding: 18px;
    border: 1px solid rgba(15,23,42,.12);
    border-radius: 18px;
    background: #fff;
}

.bank-info-head h2 {
    margin: 0;
    font-size: 22px;
}

.bank-info-subtext {
    margin-top: 6px;
    color: var(--text-muted);
    font-size: 13px;
    line-height: 1.4;
}

.bank-info-intro {
    margin-top: 14px;
    color: #334155;
    line-height: 1.7;
    font-size: 15px;
}

.bank-info-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
    margin-top: 16px;
}

.bank-info-row {
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 14px;
    padding: 12px 14px;
    background: #fcfdfc;
}

.bank-info-label {
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #64748b;
    margin-bottom: 4px;
}

.bank-info-value {
    color: #0f172a;
    line-height: 1.55;
    word-break: break-word;
}

    .bank-info-value a {
        color: var(--primary);
        text-decoration: underline;
    }

.bank-info-presence {
    margin-top: 16px;
}

.bank-info-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.bank-chip {
    text-decoration: none;
    border: 1px solid rgba(15,23,42,.12);
    border-radius: 999px;
    padding: 8px 10px;
    background: #fff;
    color: #0f172a;
    font-weight: 800;
    font-size: 13px;
}

    .bank-chip:hover {
        background: #f8fafc;
    }

.bank-chip-count {
    color: #64748b;
    font-weight: 700;
}

.bank-info-links {
    margin-top: 16px;
    font-size: 14px;
    color: #64748b;
}

    .bank-info-links a {
        color: var(--primary);
        text-decoration: underline;
    }

.bank-info-sep {
    margin: 0 8px;
    color: #cbd5e1;
}

@media (max-width:900px) {
    .bank-info-grid {
        grid-template-columns: 1fr;
    }

    .bank-info-card {
        padding: 16px;
    }

    .bank-info-head h2 {
        font-size: 20px;
    }

    .bank-info-intro {
        font-size: 14px;
    }
}

@media (max-width:900px) {
    .countries-grid {
        grid-template-columns: 1fr;
    }
}

/* ============================= Animations ============================= */
@keyframes shake{0%,100%{transform:translateX(0);}10%,30%,50%,70%,90%{transform:translateX(-5px);}20%,40%,60%,80%{transform:translateX(5px);}}
.shake{animation:shake .5s ease-in-out;}

/* ============================= Responsive ============================= */
@media (max-width:1100px){.pricing-cards{grid-template-columns:repeat(2,1fr);}h1{font-size:30px;}}
@media (max-width:900px){.home-hero-inner{grid-template-columns:1fr;gap:14px;}.hero{grid-template-columns:1fr;gap:18px;}
.hero-left{padding-right:0;border-right:none;}.hero-right{position:static;}.stats-grid{grid-template-columns:1fr;}
.features{grid-template-columns:1fr;}
.faq-grid{grid-template-columns:1fr;}
.queue-name{max-width:240px;}
.modal-card{width:94vw;height:88vh;}
.tool-support-grid{grid-template-columns:1fr;gap:10px;}
.tool-support-grid{display:flex;flex-direction:column;gap:8px;}
.support-card{padding:14px 16px;border-radius:16px;}
.support-row{display:flex;align-items:flex-start;gap:10px;}
.support-check{color:#166534;font-weight:900;font-size:18px;margin-top:2px;flex-shrink:0;}
.support-title{font-size:16px;font-weight:800;}
.support-desc{font-size:14px;margin-top:4px;color:var(--text-muted);}
.appbar-inner{flex-wrap:wrap;}
.appbar-links{width:100%;justify-content:flex-start;}
.appbar-right{width:100%;justify-content:flex-start;}
.shape-rail{grid-template-columns: 1fr;gap: 12px;}
.shape-rail::before {left: 34px;right: auto;top: 28px;bottom: 28px;width: 2px;height: auto;background: linear-gradient(180deg, rgba(15,81,50,.25), rgba(15,81,50,.10));}
.shape-step {padding: 18px 16px;}
}
@media (max-width:768px){.navbar{flex-wrap:wrap;}.nav-links{width:100%;justify-content:flex-start;flex-wrap:wrap;}.controls{grid-template-columns:1fr;}.queue{max-height:none;}.queue-row{flex-direction:column;align-items:flex-start;}.queue-right{width:100%;justify-content:space-between;white-space:normal;}.queue-status{min-width:0;text-align:left;}}

/* ============================= Footer mobile tweaks (closed correctly) ============================= */
@media (max-width:768px){
.site-footer .text-md-end{text-align:left!important;}
.site-footer .footer-disclaimer{max-width:none;}
.site-footer .footer-contact{display:flex;flex-wrap:wrap;gap:.35rem .5rem;}
.site-footer .footer-sep{display:none;}
.nav-toggle{display:flex;}
/*.nav-links{position:absolute;top:72px;left:0;right:0;background:#fff;border-top:1px solid var(--border);box-shadow:var(--shadow);padding:14px;flex-direction:column;gap:10px;display:none;}*/
.nav-links.open{display:flex;}
.nav-link{width:100%;text-align:left;}
.nav-link {font-size: 16px;font-weight: 600;padding:14px 16px;display: block;}
.nav-burger {display: flex;}
.nav-links {order: 3;flex-basis: 100%; width: 100%;display: none; position: static;left: auto;right: auto;top: auto;margin-top: 14px;padding: 16px;background: #fff;border-radius: 16px;flex-direction: column;align-items: stretch;gap: 14px;}
.nav-toggle:checked ~ .nav-links {display: flex;}
.nav-toggle:checked + .nav-burger .burger-lines {background: none; }
.nav-burger {display: flex;align-items: center;gap: 10px;cursor: pointer;padding: 10px 12px; border-radius: 12px;background: #e7f3ec;}
.burger-icon {width: 22px;height: 16px; display: flex; flex-direction: column;justify-content: space-between; }
.burger-icon span {display: block;height: 2px; width: 100%;background: #000; border-radius: 2px; transition: transform .2s ease, opacity .2s ease;}
.nav-toggle:checked + .nav-burger .burger-icon span:nth-child(1) { transform: translateY(7px) rotate(45deg);}
.nav-toggle:checked + .nav-burger .burger-icon span:nth-child(2) {opacity: 0;}
.nav-toggle:checked + .nav-burger .burger-icon span:nth-child(3) {transform: translateY(-7px) rotate(-45deg);}
.badge-free {display: none;}
.stats-grid {display: none;}
.trust-chips { display:block;}
.hero { align-items: start;padding: 0px 0 0px;}
.controls {flex-direction: column; }
.controls .btn, .controls a {width: 100%; }
.banks-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.banks-table{min-width:720px;} /* enough room for 3 columns */
}