/* Coincie.com light theme */
:root{
  --bg:#FFFFFF;
  --panel:#F8FAFC;
  --panel-2:#F1F5F9;
  --border:#E2E8F0;
  --border-strong:#CBD5E1;
  --primary:#2563EB;
  --primary-hover:#1D4ED8;
  --primary-soft:#EFF6FF;
  --accent:#F59E0B;
  --up:#16A34A;
  --down:#DC2626;
  --text:#0F172A;
  --text-2:#475569;
  --text-3:#94A3B8;
  --radius:12px;
  --radius-sm:8px;
  --radius-pill:999px;
  --shadow-sm:0 1px 2px rgba(15,23,42,.06);
  --shadow-md:0 4px 16px rgba(15,23,42,.08);
  --shadow-lg:0 20px 48px rgba(15,23,42,.12);
  --glow-blue:0 8px 32px rgba(37,99,235,.18);
  --font-zh:"PingFang SC","Microsoft YaHei","Hiragino Sans GB","Noto Sans SC",sans-serif;
  --font-en:"Inter","Helvetica Neue",Arial,sans-serif;
  --font-mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--font-en),var(--font-zh);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;min-height:100vh;overflow-x:hidden}
html[lang^="zh"] body{font-family:var(--font-zh),var(--font-en)}
a{color:var(--primary);text-decoration:none;transition:color .2s var(--ease)}
a:hover{color:var(--primary-hover)}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4,h5{color:var(--text);font-weight:700;letter-spacing:.005em;line-height:1.28;margin:0 0 .6em}
p{color:var(--text-2);margin:0 0 1em;line-height:1.75}
ul,ol{margin:0 0 1em}
li{color:var(--text-2);margin-bottom:.35em;line-height:1.7}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.container-narrow{max-width:960px;margin:0 auto;padding:0 24px}

/* Header */
.site-header{position:fixed;top:0;left:0;right:0;height:64px;z-index:100;background:rgba(255,255,255,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:background .3s,border-color .3s,height .3s,box-shadow .3s}
.site-header.scrolled{height:56px;background:rgba(255,255,255,.92);border-bottom-color:var(--border);box-shadow:var(--shadow-sm)}
.nav{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:1200px;margin:0 auto;padding:0 24px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:21px;color:var(--text);letter-spacing:.02em;text-decoration:none}
.brand > span:last-child{color:var(--text)}
.brand-mark{width:36px;height:36px;flex-shrink:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'><defs><linearGradient id='g1' x1='0' y1='0' x2='1' y2='1'><stop offset='0%25' stop-color='%230EA5E9'/><stop offset='45%25' stop-color='%232563EB'/><stop offset='100%25' stop-color='%23F59E0B'/></linearGradient><linearGradient id='g2' x1='0' y1='0' x2='1' y2='0'><stop offset='0%25' stop-color='%23F59E0B'/><stop offset='100%25' stop-color='%2322C55E'/></linearGradient></defs><path d='M50 20a22 22 0 1 0 0 24' fill='none' stroke='url(%23g1)' stroke-width='7' stroke-linecap='round'/><polyline points='22,38 30,30 36,34 44,22' fill='none' stroke='url(%23g2)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/><circle cx='44' cy='22' r='2.6' fill='%23F59E0B'/></svg>");background-size:contain;background-repeat:no-repeat;background-position:center}
.brand-mark::after{display:none}
.nav-menu{display:flex;align-items:center;gap:28px}
.nav-menu a{color:var(--text-2);font-size:15px;font-weight:500;padding:6px 0;position:relative}
.nav-menu a:hover,.nav-menu a.active{color:var(--text)}
.nav-menu a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--primary);transform:scaleX(0);transition:transform .2s}
.nav-menu a:hover::after,.nav-menu a.active::after{transform:scaleX(1)}
.nav-right{display:flex;align-items:center;gap:12px}
.lang-switch{background:transparent;border:1px solid var(--border-strong);color:var(--text-2);border-radius:var(--radius-pill);padding:6px 14px;font-size:13px;cursor:pointer;transition:all .2s;font-weight:600}
.lang-switch:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;border:1px solid transparent;white-space:nowrap}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-hover);box-shadow:var(--glow-blue);color:#fff;transform:translateY(-1px)}
.btn-secondary{background:#fff;color:var(--primary);border-color:var(--border-strong)}
.btn-secondary:hover{border-color:var(--primary);background:var(--primary-soft)}
.btn-ghost{background:transparent;color:var(--text-2)}
.btn-ghost:hover{color:var(--primary)}
.btn-lg{padding:14px 28px;font-size:15px}
.hamburger{display:none;background:none;border:0;color:var(--text);cursor:pointer;padding:8px}
.hamburger svg{width:24px;height:24px}

/* Hero */
.hero{padding:160px 0 100px;position:relative;overflow:hidden;background:radial-gradient(circle at 20% 10%,rgba(37,99,235,.10),transparent 55%),radial-gradient(circle at 90% 60%,rgba(245,158,11,.08),transparent 55%),linear-gradient(180deg,#F8FAFC,#FFFFFF 60%)}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(37,99,235,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.05) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at center,black 30%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 70%);pointer-events:none}
.hero-inner{position:relative;text-align:center}
.hero h1{font-size:clamp(34px,5.4vw,58px);line-height:1.15;font-weight:800;margin:0 0 22px;letter-spacing:-0.015em;background:linear-gradient(100deg,#0F172A 0%,#1D4ED8 70%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.lead{font-size:clamp(16px,1.6vw,19px);color:var(--text-2);line-height:1.7;max-width:680px;margin:0 auto 36px}
.hero-ctas{display:inline-flex;gap:14px;flex-wrap:wrap;justify-content:center}

/* Sections */
section.section{padding:80px 0}
section.section-alt{background:var(--panel)}
.section-head{text-align:center;margin-bottom:48px}
.section-head h2{font-size:clamp(28px,4vw,40px);margin:0 0 12px;font-weight:700;letter-spacing:-0.01em}
.section-head p{color:var(--text-2);max-width:640px;margin:0 auto}

/* Grid & Cards */
.grid{display:grid;gap:24px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-2{grid-template-columns:repeat(2,1fr)}
@media (max-width:900px){.grid-3,.grid-2{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-sm)}
.card:hover{transform:translateY(-3px);border-color:var(--primary);box-shadow:var(--shadow-lg)}
.card .tag{align-self:flex-start;background:var(--primary-soft);color:var(--primary);border-radius:var(--radius-pill);padding:4px 12px;font-size:12px;font-weight:600}
.card h3{margin:0;font-size:20px;line-height:1.35}
.card h3 a{color:var(--text)}
.card h3 a:hover{color:var(--primary)}
.card .desc{color:var(--text-2);font-size:14px;flex:1}
.card .meta{color:var(--text-3);font-size:12px;font-family:var(--font-mono)}

/* Why cards */
.why-card{background:linear-gradient(160deg,#fff,var(--panel));border:1px solid var(--border);border-radius:var(--radius);padding:32px 24px;text-align:center;box-shadow:var(--shadow-sm)}
.why-card .icon{width:52px;height:52px;border-radius:14px;margin:0 auto 16px;background:var(--primary-soft);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:26px}
.why-card h4{margin:0 0 8px;font-size:18px}
.why-card p{color:var(--text-2);font-size:14px;margin:0}

/* CTA band */
.cta-band{margin:80px 0;border-radius:24px;padding:60px 32px;text-align:center;background:radial-gradient(circle at 20% 30%,rgba(37,99,235,.16),transparent 55%),radial-gradient(circle at 80% 70%,rgba(245,158,11,.10),transparent 55%),linear-gradient(135deg,#EFF6FF,#FFFFFF);border:1px solid var(--border)}
.cta-band h2{font-size:32px;margin:0 0 12px;color:var(--text)}
.cta-band p{color:var(--text-2);margin:0 0 24px}
.cta-band .btns{display:inline-flex;gap:14px;flex-wrap:wrap;justify-content:center}

/* Footer */
.site-footer{background:var(--panel-2);border-top:1px solid var(--border);padding:60px 0 30px;margin-top:60px;color:var(--text-2);font-size:14px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr}}
.footer-col h5{color:var(--text);font-size:13px;margin:0 0 14px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.footer-col a{color:var(--text-2)}
.footer-col a:hover{color:var(--primary)}
.footer-brand{max-width:320px}
.footer-brand p{margin:12px 0 0;line-height:1.6;color:var(--text-2)}
.footer-bottom{padding-top:24px;border-top:1px solid var(--border);display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;color:var(--text-3);font-size:12px}

/* Article body */
.article-body{max-width:760px;margin:0 auto;padding:120px 24px 80px}
.article-body h1{font-size:clamp(28px,4vw,44px);margin:0 0 16px;line-height:1.2}
.article-body .article-meta{color:var(--text-3);font-size:13px;margin-bottom:32px;display:flex;gap:16px;flex-wrap:wrap;padding-bottom:20px;border-bottom:1px solid var(--border)}
.article-body h2{margin-top:2em;font-size:24px;color:var(--text)}
.article-body h3{margin-top:1.6em;font-size:20px;color:var(--text)}
.article-body p{color:var(--text);margin:1em 0}
.article-body ul,.article-body ol{color:var(--text);padding-left:24px}
.article-body li{margin:.5em 0}
.article-body blockquote{border-left:3px solid var(--primary);padding:12px 18px;color:var(--text-2);background:var(--primary-soft);margin:24px 0;border-radius:0 8px 8px 0}
.article-body code{background:var(--panel);padding:2px 6px;border-radius:4px;font-family:var(--font-mono);font-size:.9em;color:var(--primary-hover)}
.article-body pre{background:#0F172A;color:#E2E8F0;border-radius:8px;padding:16px;overflow-x:auto}
.article-body pre code{background:transparent;color:inherit;padding:0}
.article-body table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14px}
.article-body th,.article-body td{border:1px solid var(--border);padding:10px 12px;text-align:left}
.article-body th{background:var(--panel);font-weight:600}
.disclaimer{margin-top:60px;padding:20px;border-radius:12px;background:#FEF3C7;border:1px solid #FDE68A;color:#92400E;font-size:13px}

/* Modal */
.modal-mask{position:fixed;inset:0;background:rgba(15,23,42,.5);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;z-index:1000;padding:24px}
.modal-mask.open{display:flex}
.modal{background:#fff;border:1px solid var(--border);border-radius:16px;max-width:560px;width:100%;max-height:90vh;overflow-y:auto;padding:36px;position:relative;box-shadow:var(--shadow-lg)}
.modal-close{position:absolute;top:16px;right:16px;background:transparent;border:0;color:var(--text-2);font-size:26px;cursor:pointer;line-height:1;width:36px;height:36px;border-radius:50%;transition:background .2s}
.modal-close:hover{background:var(--panel);color:var(--text)}
.modal h3{margin:0 0 8px;color:var(--text);font-size:22px}
.modal .sub{color:var(--text-2);margin:0 0 24px;font-size:14px}
.form-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:24px;text-align:center}
.form-card h4{margin:0 0 8px;color:var(--text);font-size:17px}
.form-card p{color:var(--text-2);font-size:13px;margin:0 0 20px}
.form-card .btn{width:100%}

/* Mobile menu */
@media (max-width:900px){
  .hamburger{display:inline-flex}
  .nav-menu{position:fixed;top:64px;left:0;right:0;background:#fff;flex-direction:column;padding:24px;gap:16px;border-bottom:1px solid var(--border);transform:translateY(-120%);transition:transform .3s;align-items:flex-start;box-shadow:var(--shadow-md)}
  .nav-menu.open{transform:translateY(0)}
  .nav-menu a{width:100%;padding:12px 0}
}

/* Scroll fade-in */
.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s,transform .6s}
.fade-in.visible{opacity:1;transform:translateY(0)}

/* Utility */
.text-center{text-align:center}
.mt-24{margin-top:24px}
.mt-48{margin-top:48px}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* ===== v2 additions: Coincie stablecoin gateway ===== */
.hero-tag{display:inline-block;padding:6px 14px;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary);font-size:13px;font-weight:600;margin-bottom:20px;letter-spacing:0.02em}
.hero-sub{padding:120px 0 40px}
.hero-stats{display:flex;justify-content:center;gap:56px;margin-top:48px;flex-wrap:wrap}
.hero-stats .stat{text-align:center}
.hero-stats .stat .v{font-size:clamp(24px,3vw,32px);font-weight:800;color:var(--text);letter-spacing:-0.02em;line-height:1.1}
.hero-stats .stat .k{font-size:13px;color:var(--text-3);margin-top:6px}

.grid-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.grid-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.grid-4{grid-template-columns:1fr}}

.product-card{position:relative;padding:32px 24px}
.product-card .card-link{margin-top:auto;color:var(--primary);font-weight:600;font-size:14px}
.product-card .card-link:hover{text-decoration:underline}

.compliance-bar{background:linear-gradient(90deg,rgba(245,158,11,0.08),rgba(220,38,38,0.05));border:1px solid rgba(245,158,11,0.24);color:var(--text-2);text-align:center;padding:10px 16px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:32px}

.forms-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:16px}
@media (max-width:600px){.forms-grid{grid-template-columns:1fr}}
.form-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px}
.form-card h4{margin:0 0 6px;font-size:16px}
.form-card p{color:var(--text-2);font-size:13px;margin:0 0 12px}

/* footer */
.site-footer{border-top:1px solid var(--border);padding:56px 0 32px;background:var(--panel);margin-top:80px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px;margin-bottom:32px}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.footer-grid{grid-template-columns:1fr}}
.footer-col h5{margin:0 0 12px;font-size:14px;color:var(--text);font-weight:700}
.footer-col ul{list-style:none;padding:0;margin:0}
.footer-col li{margin-bottom:6px}
.footer-col a{color:var(--text-2);font-size:14px}
.footer-col a:hover{color:var(--primary)}
.footer-brand p{color:var(--text-2);font-size:14px;margin:12px 0 0}
.footer-bottom{border-top:1px solid var(--border);padding-top:20px;color:var(--text-3);font-size:12px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* CTA band */
.cta-band{background:linear-gradient(135deg,rgba(37,99,235,0.08),rgba(245,158,11,0.06));border:1px solid var(--border);border-radius:var(--radius);padding:40px 32px;text-align:center;margin:24px 0}
.cta-band h2{margin:0 0 12px;font-size:clamp(22px,3vw,32px);letter-spacing:-0.01em}
.cta-band p{color:var(--text-2);max-width:640px;margin:0 auto 20px}
.cta-band .btns{display:inline-flex;gap:12px;flex-wrap:wrap;justify-content:center}

/* Modal */
.modal-mask{position:fixed;inset:0;background:rgba(15,23,42,0.4);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;z-index:200;padding:24px}
.modal-mask.open{display:flex}
.modal{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:32px;max-width:560px;width:100%;box-shadow:var(--shadow-lg)}
.modal h3{margin:0 0 8px}
.modal .sub{color:var(--text-2);font-size:14px;margin:0 0 20px}
.modal-close{position:absolute;top:12px;right:12px;background:transparent;border:0;font-size:24px;color:var(--text-3);cursor:pointer;line-height:1;padding:6px}
.modal-close:hover{color:var(--text)}

/* Fade in */
.fade-in{opacity:0;transform:translateY(8px);transition:opacity .5s,transform .5s}
.fade-in.visible{opacity:1;transform:none}

/* Mobile nav */
@media (max-width:900px){
  .nav-menu{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;padding:16px 24px;border-bottom:1px solid var(--border);box-shadow:var(--shadow-md);gap:16px}
  .nav-menu.open{display:flex}
  .hamburger{display:inline-flex}
}

/* Community prediction poll */
.poll-card{display:flex;flex-direction:column;padding:24px}
.poll-card h3{font-size:17px;margin:8px 0 16px}
.poll-options{display:flex;flex-direction:column;gap:10px;margin-top:auto}
.poll-opt{display:block;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);font-size:15px;font-weight:600;cursor:pointer;transition:border-color .2s var(--ease),background .2s var(--ease),transform .1s var(--ease)}
.poll-opt:hover{border-color:var(--primary);background:var(--primary-soft)}
.poll-opt:active{transform:scale(.99)}
.poll-results{display:flex;flex-direction:column;gap:12px;margin-top:auto}
.poll-row{display:flex;flex-direction:column;gap:6px}
.poll-row-head{display:flex;justify-content:space-between;font-size:14px;color:var(--text-2);font-weight:600}
.poll-row.mine .poll-row-head{color:var(--text)}
.poll-you{font-style:normal;color:var(--primary);font-size:12px;font-weight:700}
.poll-bar{height:8px;background:var(--panel-2);border-radius:var(--radius-pill);overflow:hidden}
.poll-bar-fill{height:100%;background:var(--border-strong);border-radius:var(--radius-pill);transition:width .5s var(--ease)}
.poll-row.mine .poll-bar-fill{background:var(--primary)}
.poll-meta{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-size:13px;color:var(--text-3)}
.poll-odds{color:var(--text-2)}
.poll-odds strong{color:var(--accent);font-weight:700}
.poll-change{align-self:flex-start;margin-top:12px;background:transparent;border:0;color:var(--primary);font-size:13px;font-weight:600;cursor:pointer;padding:2px 0}
.poll-change:hover{color:var(--primary-hover);text-decoration:underline}
.poll-disclaimer{margin-top:24px;padding:14px 16px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-3);font-size:12.5px;line-height:1.6}
