/* 欧博官网 - style.css */
:root{
  --ob-navy:#071a2c;
  --ob-panel:#102d46;
  --ob-blue:#287acb;
  --ob-cyan:#27afc1;
  --ob-purple:#7257d8;
  --ob-green:#26865d;
  --ob-orange:#e77a2f;
  --ob-red:#d84950;
  --ob-bg:#f3f6f8;
  --ob-text:#1c2933;
  --ob-muted:#667580;
  --ob-border:#dce4e8;
  --ob-white:#ffffff;
  --ob-radius:8px;
  --ob-maxw:1180px;
  --ob-article:820px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:"Microsoft YaHei","PingFang SC","Segoe UI",Helvetica,Arial,sans-serif;
  background:var(--ob-bg);
  color:var(--ob-text);
  line-height:1.7;
  font-size:15px;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block;}
a{color:var(--ob-blue);text-decoration:none;}
a:hover{text-decoration:underline;}
.wrap{max-width:var(--ob-maxw);margin:0 auto;padding:0 20px;}
h1,h2,h3{color:var(--ob-text);line-height:1.35;}
h2{font-size:24px;margin:0 0 6px;}
h3{font-size:18px;margin:18px 0 8px;}
.section-tag{color:var(--ob-cyan);font-size:13px;font-weight:bold;letter-spacing:1px;text-transform:uppercase;}
.section-desc{color:var(--ob-muted);margin:0 0 26px;font-size:14px;max-width:720px;}
section{padding:52px 0;border-bottom:1px solid var(--ob-border);}
section:nth-of-type(even){background:var(--ob-white);}

/* header */
header.site-header{
  position:sticky;top:0;z-index:50;
  background:var(--ob-navy);
  border-bottom:1px solid #0c2438;
}
.nav-row{
  display:flex;align-items:center;justify-content:space-between;
  max-width:var(--ob-maxw);margin:0 auto;padding:0 20px;height:64px;
}
.brand{display:flex;align-items:center;gap:10px;color:var(--ob-white);font-weight:bold;font-size:18px;}
.brand img{width:32px;height:32px;}
.brand small{display:block;color:var(--ob-cyan);font-weight:normal;font-size:11px;}
nav.main-nav{display:flex;gap:2px;}
nav.main-nav a{
  color:#cfe0ee;font-size:14px;padding:10px 12px;border-radius:6px;white-space:nowrap;
}
nav.main-nav a:hover,nav.main-nav a:focus{background:rgba(255,255,255,0.08);text-decoration:none;color:var(--ob-white);}
.menu-btn{
  display:none;background:transparent;border:1px solid #24435e;color:var(--ob-white);
  border-radius:6px;width:40px;height:40px;font-size:18px;cursor:pointer;
}
@media (max-width:980px){
  nav.main-nav{
    display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;
    background:var(--ob-navy);border-top:1px solid #0c2438;padding:8px;
  }
  nav.main-nav.open{display:flex;}
  nav.main-nav a{padding:12px 14px;}
  .menu-btn{display:block;}
}

/* hero */
#home{padding-top:44px;border-bottom:1px solid var(--ob-border);background:linear-gradient(180deg,#0b2338 0%,#f3f6f8 100%);}
.hero-grid{display:flex;gap:40px;align-items:center;}
.hero-copy{flex:1;min-width:280px;}
.hero-copy .section-tag{color:var(--ob-cyan);}
.hero-copy h1{color:var(--ob-white);font-size:32px;margin:10px 0 12px;}
.hero-tags{color:#9fc3dd;font-size:13px;margin-bottom:14px;}
.hero-copy p.lead{color:#dbe8f0;max-width:520px;margin-bottom:22px;}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:30px;}
.btn{
  display:inline-block;padding:11px 20px;border-radius:6px;font-size:14px;font-weight:bold;
  border:1px solid transparent;cursor:pointer;
}
.btn-primary{background:var(--ob-blue);color:var(--ob-white);}
.btn-primary:hover{background:#2469ac;text-decoration:none;}
.btn-outline{background:transparent;color:var(--ob-white);border-color:#3b6488;}
.btn-outline:hover{background:rgba(255,255,255,0.08);text-decoration:none;}
.btn-cyan{background:var(--ob-cyan);color:var(--ob-navy);}
.hero-visual{flex:1;min-width:280px;text-align:center;}
.hero-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid #1b3a54;margin-top:10px;}
.hero-strip div{padding:16px 10px;text-align:center;color:#bcd6e8;font-size:13px;border-right:1px solid #1b3a54;}
.hero-strip div:last-child{border-right:none;}
@media (max-width:760px){
  .hero-grid{flex-direction:column;}
  .hero-strip{grid-template-columns:repeat(2,1fr);}
  .hero-strip div{border-bottom:1px solid #1b3a54;}
}

/* status */
.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.status-card{background:var(--ob-white);border:1px solid var(--ob-border);border-radius:var(--ob-radius);padding:16px 18px;}
.status-card b{display:block;color:var(--ob-muted);font-size:12px;font-weight:normal;margin-bottom:6px;}
.status-card span{font-size:15px;font-weight:bold;}
@media (max-width:760px){.status-grid{grid-template-columns:1fr;}}

/* category grid */
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.cat-card{background:var(--ob-white);border:1px solid var(--ob-border);border-radius:var(--ob-radius);padding:18px;}
.cat-card img{width:100%;height:auto;border-radius:6px;margin-bottom:12px;}
.cat-card h3{margin-top:0;font-size:16px;}
.cat-card .cat-meta{font-size:12px;color:var(--ob-muted);margin-bottom:8px;}
.cat-card p{font-size:13px;color:var(--ob-text);margin:8px 0;}
.cat-card a.cat-link{font-size:13px;font-weight:bold;}
@media (max-width:980px){.cat-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.cat-grid{grid-template-columns:1fr;}}

/* card lists (frontier/tools/articles) */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.card-grid.two{grid-template-columns:repeat(2,1fr);}
.content-card{background:var(--ob-white);border:1px solid var(--ob-border);border-radius:var(--ob-radius);overflow:hidden;display:flex;flex-direction:column;}
.content-card img{width:100%;height:150px;object-fit:cover;background:#eef2f5;}
.content-card .cc-body{padding:16px;flex:1;display:flex;flex-direction:column;}
.badge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:20px;background:var(--ob-panel);color:var(--ob-cyan);margin-bottom:8px;width:fit-content;}
.content-card h3{margin:0 0 8px;font-size:16px;}
.cc-meta{font-size:12px;color:var(--ob-muted);margin-bottom:8px;}
.content-card p{font-size:13.5px;color:var(--ob-text);flex:1;margin:0 0 10px;}
.cc-toggle{background:none;border:1px solid var(--ob-border);border-radius:6px;padding:7px 12px;font-size:13px;cursor:pointer;color:var(--ob-blue);text-align:left;}
.cc-extra{display:none;font-size:13.5px;margin-top:10px;border-top:1px dashed var(--ob-border);padding-top:10px;}
.cc-extra.open{display:block;}
@media (max-width:980px){.card-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.card-grid,.card-grid.two{grid-template-columns:1fr;}}

/* usage steps */
.steps-list{counter-reset:step;padding:0;list-style:none;max-width:760px;}
.steps-list li{
  counter-increment:step;position:relative;padding:10px 0 10px 42px;border-bottom:1px dashed var(--ob-border);
}
.steps-list li:before{
  content:counter(step);position:absolute;left:0;top:8px;width:28px;height:28px;border-radius:50%;
  background:var(--ob-blue);color:#fff;font-size:13px;font-weight:bold;display:flex;align-items:center;justify-content:center;
}

/* tables */
.table-wrap{overflow-x:auto;border:1px solid var(--ob-border);border-radius:var(--ob-radius);background:var(--ob-white);}
table{border-collapse:collapse;width:100%;min-width:640px;font-size:13.5px;}
table th,table td{padding:10px 12px;border-bottom:1px solid var(--ob-border);text-align:left;vertical-align:top;}
table th{background:var(--ob-panel);color:#fff;font-weight:bold;white-space:nowrap;}
table tr:last-child td{border-bottom:none;}
.status-ok{color:var(--ob-green);font-weight:bold;}
.status-pending{color:var(--ob-orange);font-weight:bold;}
.status-na{color:var(--ob-muted);font-weight:bold;}

/* checklist */
.check-list{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 24px;padding:0;list-style:none;margin-top:16px;}
.check-list li{font-size:13.5px;padding-left:22px;position:relative;}
.check-list li:before{content:"✓";position:absolute;left:0;color:var(--ob-green);font-weight:bold;}
@media (max-width:600px){.check-list{grid-template-columns:1fr;}}

/* articles full */
.article-full{max-width:var(--ob-article);margin:0 auto 40px;background:var(--ob-white);border:1px solid var(--ob-border);border-radius:var(--ob-radius);padding:28px 30px;}
.article-full h3.art-title{font-size:22px;margin-top:0;}
.art-meta{font-size:12.5px;color:var(--ob-muted);margin-bottom:16px;border-bottom:1px solid var(--ob-border);padding-bottom:14px;}
.art-meta span{margin-right:14px;display:inline-block;}
.tip-box{background:#eef7f4;border-left:4px solid var(--ob-green);padding:12px 16px;font-size:13.5px;margin:16px 0;border-radius:4px;}
.art-related{font-size:13px;color:var(--ob-muted);margin-top:18px;border-top:1px dashed var(--ob-border);padding-top:12px;}

/* download */
.dl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.dl-card{background:var(--ob-white);border:1px solid var(--ob-border);border-radius:var(--ob-radius);padding:20px;text-align:center;}
.dl-card img{width:100px;height:100px;margin:0 auto 14px;}
.dl-card h3{margin-top:0;}
.dl-card ul{text-align:left;font-size:13px;padding-left:18px;color:var(--ob-text);}
.dl-card .btn{width:100%;margin-top:10px;}
.qr-box{margin-top:14px;}
.qr-box img{width:96px;height:96px;margin:0 auto;}
.qr-note{font-size:11.5px;color:var(--ob-muted);margin-top:6px;}
@media (max-width:980px){.dl-grid{grid-template-columns:1fr;}}

/* faq */
.faq-list{max-width:820px;margin:0 auto;}
.faq-item{border-bottom:1px solid var(--ob-border);}
.faq-q{
  width:100%;text-align:left;background:none;border:none;padding:16px 4px;font-size:15px;font-weight:bold;
  cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:var(--ob-text);
}
.faq-q .qmark{color:var(--ob-blue);font-size:18px;}
.faq-a{display:none;font-size:13.5px;color:var(--ob-text);padding:0 4px 16px;}
.faq-a.open{display:block;}

/* about */
.about-grid{display:flex;gap:30px;flex-wrap:wrap;}
.about-text{flex:1;min-width:280px;}
.about-info{flex:1;min-width:280px;background:var(--ob-white);border:1px solid var(--ob-border);border-radius:var(--ob-radius);padding:18px 20px;}
.about-info dl{margin:0;font-size:13.5px;}
.about-info dt{color:var(--ob-muted);margin-top:10px;}
.about-info dd{margin:2px 0 0;font-weight:bold;}
.principle-list{padding-left:20px;font-size:13.5px;}

/* footer */
footer{background:var(--ob-navy);color:#b9cbdb;padding:44px 0 20px;}
.footer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-bottom:30px;}
.footer-col h4{color:#fff;font-size:14px;margin:0 0 12px;}
.footer-col a,.footer-col span{display:block;color:#9fb6cb;font-size:13px;margin-bottom:8px;}
.footer-col a:hover{color:#fff;}
.footer-note{font-size:13px;color:#8ea6bc;border-top:1px solid #1c3a52;padding-top:18px;max-width:820px;}
.footer-bottom{font-size:12px;color:#7a93aa;margin-top:14px;}
@media (max-width:980px){.footer-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.footer-grid{grid-template-columns:1fr;}}

/* back to top */
#back-top{
  position:fixed;right:20px;bottom:20px;width:44px;height:44px;border-radius:50%;
  background:var(--ob-blue);color:#fff;border:none;font-size:18px;cursor:pointer;display:none;box-shadow:0 2px 10px rgba(0,0,0,0.25);z-index:60;
}
#back-top.show{display:block;}

/* filter buttons */
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px;}
.filter-btn{background:var(--ob-white);border:1px solid var(--ob-border);border-radius:20px;padding:6px 14px;font-size:13px;cursor:pointer;}
.filter-btn.active{background:var(--ob-blue);color:#fff;border-color:var(--ob-blue);}
.hidden-item{display:none !important;}

@media (max-width:760px){
  section{padding:36px 0;}
  h2{font-size:20px;}
  .hero-copy h1{font-size:24px;}
}
