/* ==========================================================================
   微功夫官网 · 共享设计层
   色彩、字体、容器、按钮、头部导航、面包屑、页脚、表单、FAQ、CTA
   首页与所有内页都只依赖这一层，页面级样式放 home.css / inner.css
   ========================================================================== */

:root{
  --blue:#35A4F5;
  --blue-deep:#1673B8;
  --blue-dark:#125F98;
  --blue-soft:#8CCBFF;
  --ink:#0B1B2B;
  --ink-2:#1B3448;
  --text:#33475B;
  --muted:#5B7186;
  --muted-2:#647789;
  --line:#E3ECF3;
  --line-2:#D3E1EC;
  --surface:#F6FAFD;
  --surface-2:#EEF6FC;
  --tint:#EAF5FE;
  --white:#fff;
  --footer-bg:#071017;
  --radius-sm:8px;
  --radius:10px;
  --radius-md:14px;
  --radius-lg:18px;
  --shadow-sm:0 2px 10px rgba(11,27,43,.05);
  --shadow:0 14px 36px rgba(11,27,43,.08);
  --wrap:1320px;
  --header-h:72px;
  --section-y:88px;
  --font-sans:"Noto Sans SC","Source Han Sans SC","PingFang SC","Microsoft YaHei","Segoe UI",system-ui,sans-serif;

  /* 字号阶梯：全站只允许这几档 */
  --fs-micro:11px;
  --fs-xs:12px;
  --fs-sm:13.5px;
  --fs-ui:14.5px;
  --fs-body:16px;
  --fs-card:17px;
  --fs-h3:18px;
  --fs-h2-sm:clamp(24px,2.4vw,32px);
  --fs-h2:clamp(26px,2.6vw,36px);
  --fs-h1:clamp(30px,3.2vw,46px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px);-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.7;color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{margin:0;color:var(--ink);font-weight:800;line-height:1.2;letter-spacing:-.02em;text-wrap:balance}
p{margin:0}
ul,ol{margin:0;padding:0}
button{font-family:inherit}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}
::selection{background:var(--tint);color:var(--ink)}

.wrap{width:min(var(--wrap),calc(100% - 64px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.muted{color:var(--muted);font-size:13.5px}

/* ---------- 标题与标签 ---------- */
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-deep)}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue);flex:0 0 auto}
.eyebrow--soft{color:var(--blue-soft)}
.eyebrow--soft::before{background:var(--blue-soft)}
.kicker{display:inline-flex;align-items:center;gap:9px;color:var(--blue-deep);font-size:var(--fs-xs);font-weight:700;letter-spacing:.12em;margin-bottom:14px}
.kicker::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--blue);flex:0 0 auto}
.lead{font-size:var(--fs-card);line-height:1.8;color:var(--muted);max-width:760px}

/* ---------- 按钮：全站唯一一套 ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border:1px solid transparent;border-radius:var(--radius);font-family:inherit;font-size:14.5px;font-weight:700;line-height:1;cursor:pointer;white-space:nowrap;transition:background .18s,border-color .18s,color .18s,transform .18s}
.btn svg,.btn .arw{width:15px;height:15px;flex:0 0 auto}
.btn-primary{background:var(--blue-deep);color:#fff}
.btn-primary:hover{background:var(--blue-dark);transform:translateY(-1px)}
.btn-ghost{background:#fff;border-color:var(--line-2);color:var(--ink-2)}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue-deep)}
.btn-on-dark{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.28);color:#fff}
.btn-on-dark:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.5)}
.btn-light{background:#fff;color:var(--blue-deep)}
.btn-light:hover{background:var(--tint)}
.btn-block{width:100%}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* ---------- 公告条（仅首页，不吸顶） ---------- */
.announce{height:38px;background:var(--blue);color:#06121C;display:flex;align-items:center;justify-content:center;position:relative;font-size:13.5px;font-weight:600;letter-spacing:.01em}
.announce .inner{display:flex;align-items:center;gap:12px;padding:0 52px;text-align:center}
.announce .dot{width:6px;height:6px;border-radius:50%;background:#06121C;opacity:.75;flex:0 0 auto}
.announce a{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:#06121C;color:#fff;font-size:12px;font-weight:600}
.announce .close{position:absolute;right:20px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:0;border-radius:50%;background:rgba(6,18,28,.10);color:#06121C;font-size:14.5px;line-height:1;cursor:pointer}

/* ---------- 全站头部 ---------- */
.site-header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;gap:28px;height:var(--header-h)}
.brand{display:inline-flex;align-items:center;flex:0 0 auto}
.brand img{height:34px;width:auto}
.main-nav{display:flex;align-items:center;justify-content:center;gap:24px;flex:1;font-size:var(--fs-ui);font-weight:600}
.main-nav>a,.nav-drop>a{display:inline-flex;align-items:center;gap:5px;padding:10px 0;color:var(--ink-2);font-size:var(--fs-ui);position:relative}
.main-nav>a:hover,.nav-drop>a:hover,.nav-drop>a.is-active,.main-nav>a.is-active{color:var(--blue-deep)}
.main-nav a.is-active::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;border-radius:2px;background:var(--blue)}
.nav-caret{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-1px);opacity:.45}
.header-cta{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:var(--radius);background:var(--blue-deep);color:#fff;font-size:13.5px;font-weight:700;white-space:nowrap}
.header-cta:hover{background:var(--blue-dark)}
.menu-btn{display:none;margin-left:auto;align-items:center;gap:8px;height:38px;padding:0 13px;border:1px solid var(--line-2);border-radius:var(--radius);background:#fff;color:var(--ink-2);font-size:12px;font-weight:700;cursor:pointer}

/* 下拉大面板 */
.nav-drop{position:static}
.mega-panel{position:absolute;left:50%;top:100%;transform:translateX(-50%) translateY(6px);width:min(1080px,calc(100vw - 64px));display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 24px 60px rgba(11,27,43,.14);opacity:0;visibility:hidden;transition:.18s;z-index:95}
.nav-drop:hover .mega-panel,.nav-drop:focus-within .mega-panel{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.mega-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.mega-col{display:grid;align-content:start;gap:2px}
.mega-kicker{display:block;font-size:var(--fs-micro);font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);margin-bottom:8px}
.mega-col a{display:block;padding:9px 0;border-bottom:1px solid #EEF3F8}
.mega-col a strong{display:block;font-size:var(--fs-sm);font-weight:700;color:var(--ink)}
.mega-col a small{display:block;font-size:12px;color:var(--muted);margin-top:3px;line-height:1.5}
.mega-col a:hover strong{color:var(--blue-deep)}
.mega-card{background:var(--footer-bg);color:#fff;border-radius:var(--radius-md);padding:20px;align-self:start;display:flex;flex-direction:column}
.mega-card .mega-kicker{color:var(--blue-soft)}
.mega-card strong{display:block;font-size:var(--fs-card);line-height:1.35;margin:2px 0 8px;color:#fff}
.mega-card p{font-size:12px;line-height:1.7;color:#A9BDCD;margin:0 0 16px}
.mega-card-link{display:inline-flex;justify-content:center;background:var(--blue-deep);color:#fff;border-radius:var(--radius-sm);padding:9px 12px;font-size:12px;font-weight:700;margin-top:auto}
.mega-card-link:hover{background:var(--blue-dark)}

/* ---------- 面包屑 ---------- */
.crumbs{background:#fff;padding:18px 0 2px}
.crumbs nav{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:12px;color:var(--muted-2)}
.crumbs a:hover{color:var(--blue-deep)}
.crumbs .sep{color:var(--muted-2)}

/* ---------- 首屏（内页统一一套） ---------- */
.page-hero{position:relative;padding:34px 0 64px;background:linear-gradient(180deg,#fff 0%,var(--surface) 100%);border-bottom:1px solid var(--line);overflow:hidden}
.page-hero::after{content:"";position:absolute;right:-160px;top:-180px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(53,164,245,.12),transparent 66%);pointer-events:none}
.page-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:72px;align-items:start}
.h1-sub{display:block;margin-top:6px;font-size:.8em;font-weight:700;line-height:1.25;letter-spacing:-.025em;color:var(--ink)}
.h1-sep{display:none}
.page-hero h1{font-size:var(--fs-h1);line-height:1.18;letter-spacing:-.035em;margin:16px 0 16px;max-width:900px;color:var(--ink)}
.page-hero .lead{font-size:var(--fs-card)}
.page-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 0;font-size:var(--fs-xs);color:var(--muted);letter-spacing:.01em}
.page-meta a{color:var(--muted);border-bottom:1px solid rgba(100,119,137,.35)}
.page-meta a:hover{color:var(--blue-deep);border-bottom-color:var(--blue-deep)}
.page-meta time{font-variant-numeric:tabular-nums}
.page-hero--slim{padding-bottom:52px}
.page-hero--slim .page-hero-grid{grid-template-columns:minmax(0,880px)}

/* ---------- 区块节奏 ---------- */
.section{padding:var(--section-y) 0}
.section--tint{background:var(--surface)}
.section--dark{background:var(--footer-bg);color:#C7D6E2}
.section--tight{padding:56px 0}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:42px}
.section-head h2{font-size:var(--fs-h2)}
.section-head .lead{max-width:430px;font-size:13.5px;line-height:1.85;text-align:right}
.section-title{font-size:var(--fs-h2);margin:12px 0 26px;max-width:760px}


/* ---------- 案例封面（首页与案例页共用） ---------- */
.case-cover{position:relative;aspect-ratio:16/10;overflow:hidden;background:#0B1620}
.case-cover::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(53,164,245,.38),transparent 44%),repeating-linear-gradient(90deg,rgba(255,255,255,.055) 0 1px,transparent 1px 58px),repeating-linear-gradient(0deg,rgba(255,255,255,.055) 0 1px,transparent 1px 58px)}
.case-cover::after{content:"";position:absolute;width:60%;aspect-ratio:1;border-radius:50%;right:-12%;bottom:-32%;background:radial-gradient(circle,rgba(53,164,245,.34),transparent 68%)}
.case-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.86) saturate(.92)}
.case-cover.has-image::before{background:linear-gradient(180deg,rgba(4,10,16,.25) 0%,rgba(4,10,16,.55) 58%,rgba(4,10,16,.82) 100%)}
.case-cover.has-image::after{display:none}
.case-cover .tag{position:absolute;left:18px;top:16px;z-index:2;font-size:11px;font-weight:800;letter-spacing:.12em;color:#9DD4FF}
.case-cover .idx{position:absolute;left:18px;bottom:14px;z-index:2;font-size:44px;line-height:1;font-weight:800;color:rgba(255,255,255,.18);letter-spacing:-.06em}

/* ---------- 表格（对比 / 参数） ---------- */
.table-wrap{overflow-x:auto;max-width:100%;margin:20px 0;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#B9CBD9 transparent}
.table-wrap::-webkit-scrollbar{height:6px}
.table-wrap::-webkit-scrollbar-thumb{background:#B9CBD9;border-radius:3px}
.table-wrap::-webkit-scrollbar-track{background:transparent}
.prose table,.article-body table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);line-height:1.7}
.table-wrap table{min-width:560px}
.prose th,.prose td,.article-body th,.article-body td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.prose th,.article-body th{background:var(--surface);font-weight:700;color:var(--ink);white-space:nowrap}
.prose td,.article-body td{color:var(--text)}

/* ---------- 卡片基础 ---------- */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}

/* ---------- 表单（浅色底，全站通用） ---------- */
.field{display:grid;gap:7px;margin-bottom:16px}
.field>label{font-size:var(--fs-xs);font-weight:700;color:var(--ink-2)}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line-2);border-radius:var(--radius);padding:12px 13px;font:inherit;font-size:var(--fs-ui);color:var(--ink);background:#fff;transition:border-color .15s,box-shadow .15s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(53,164,245,.14)}
.field textarea{min-height:130px;resize:vertical}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow)}
.form-note{font-size:12px;line-height:1.7;color:var(--muted);margin-top:12px}
.form-note a{color:var(--blue-deep);text-decoration:underline;text-underline-offset:2px}
.consent-line{display:flex;gap:9px;align-items:flex-start;margin:4px 0 16px;font-size:12px;line-height:1.7;color:var(--muted);cursor:pointer}
.consent-line input{width:15px;height:15px;margin-top:3px;accent-color:var(--blue-deep);flex:0 0 auto}
.consent-line a{color:var(--blue-deep);text-decoration:underline;text-underline-offset:2px}
.notice{padding:13px 16px;border-radius:var(--radius);background:#ECFDF5;color:#047857;border:1px solid #A7F3D0;margin-bottom:18px;font-size:13.5px}
.notice.error{background:#FEF2F2;color:#B91C1C;border-color:#FECACA}

/* ---------- FAQ 折叠（全站通用） ---------- */
.faq-list{display:grid;gap:10px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden}
.faq-item summary{list-style:none;cursor:pointer;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:16px;font-weight:700;color:var(--ink);line-height:1.55}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary .faq-q{font:inherit;color:inherit;margin:0;display:block;letter-spacing:inherit}
.faq-item summary::after{content:"+";flex:0 0 auto;color:var(--blue-deep);font-size:20px;font-weight:400;line-height:1}
.faq-item[open] summary::after{content:"−"}
.faq-item p{padding:0 20px 18px;margin:0;font-size:14.5px;line-height:1.85;color:var(--muted)}

/* ---------- 验证码 ---------- */
.field-hint{margin:8px 0 0;font-size:12px;line-height:1.6;color:var(--muted-2)}
.captcha-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.captcha-row input{flex:0 1 auto;width:200px;max-width:100%;min-width:0;letter-spacing:.18em;text-transform:uppercase}
.captcha-img{display:block;width:auto;height:50px;border:1px solid var(--line-2);border-radius:var(--radius);background:#fff;cursor:pointer}
.captcha-refresh{flex:none;height:50px;padding:0 14px;border:1px solid var(--line-2);border-radius:var(--radius);background:#fff;font:inherit;font-size:13px;font-weight:600;color:var(--blue-deep);cursor:pointer;transition:border-color .15s,color .15s}
.captcha-refresh:hover{border-color:var(--blue);color:var(--blue-deep)}
/* 首页内联表单列窄，验证码固定两行：输入在上，图与换一张在下 */
.contact-form .captcha-row input{width:100%}
.contact-form .captcha-row{gap:10px 12px}

@media(max-width:520px){
  .captcha-row input{width:100%}
  .captcha-img{height:46px}
  .captcha-refresh{height:46px;padding:0 12px}
}

/* 作者样式里的 display:flex/grid 会盖过浏览器默认的 [hidden]{display:none}，
   导致 JS 里 card.hidden = true 后元素仍然显示。这里显式兜底。 */
[hidden]{display:none!important}

/* ---------- 站内搜索 ---------- */
.search-form{margin:0 0 32px}
.search-form label{display:block;font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.search-form div{display:flex;gap:10px;flex-wrap:wrap}
.search-form input{flex:1 1 260px;min-width:0;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--fs-body);color:var(--ink);background:#fff}
.search-form input:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}
.search-results{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.search-results li{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}
.search-results a{font-size:var(--fs-h3);font-weight:700;color:var(--ink);letter-spacing:-.01em}
.search-results a:hover{color:var(--blue-deep)}
.search-results p{margin:8px 0 6px;font-size:var(--fs-sm);line-height:1.8;color:var(--muted)}
.search-path{font-size:var(--fs-micro);color:var(--muted-2);letter-spacing:.02em}

/* ---------- CTA 条 ---------- */
.cta-wrap{padding:0 0 72px;background:#fff}
.cta-wrap--dark{background:var(--footer-bg)}
.cta-band{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:42px 44px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#0B1B2B,#123D5C 58%,#1673B8);color:#fff}
.cta-band h2{color:#fff;font-size:var(--fs-h2-sm);margin:10px 0 8px}
.cta-band p{color:#BFD9EE;font-size:14.5px;line-height:1.8;margin:0;max-width:620px}
.cta-band .btn{flex:0 0 auto}
.cta-band .eyebrow{color:var(--blue-soft)}
.cta-band .eyebrow::before{background:var(--blue-soft)}

/* ---------- 页脚（全站唯一） ---------- */
.site-footer{background:var(--footer-bg);color:#A9BDCD;padding:56px 0 22px}
.footer-grid{display:grid;grid-template-columns:1.6fr .9fr .9fr 1.2fr;gap:40px}
.footer-brand img{height:34px;width:auto;margin-bottom:16px}
.footer-brand p{font-size:13.5px;line-height:1.85;max-width:320px;color:#93A9BA}
.site-footer h3{color:#fff;font-size:12px;font-weight:700;letter-spacing:.1em;margin-bottom:12px}
.site-footer a,.site-footer .foot-text{display:block;font-size:13.5px;line-height:1.9;color:#A9BDCD;padding:3px 0}
.site-footer a:hover{color:#fff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:36px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:#7F95A7}
.footer-bottom a{display:inline;padding:0;color:#9FB6C8}
.footer-bottom a:hover{color:#fff}
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}

/* ---------- 响应式 ---------- */
@media(max-width:1100px){
  .page-hero-grid{grid-template-columns:minmax(0,1fr);gap:34px}
  .section-head{display:block}
  .section-head .lead{text-align:left;max-width:640px;margin-top:14px}
}
@media(max-width:960px){
  :root{--header-h:64px;--section-y:64px}
  .wrap{width:calc(100% - 40px)}
  .brand img{height:30px}
  .menu-btn{display:inline-flex}
  .header-cta{height:36px;padding:0 14px;font-size:12px;margin-left:0}
  .main-nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:8px 20px 18px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 20px 34px rgba(11,27,43,.1);max-height:calc(100vh - var(--header-h));overflow-y:auto}
  .main-nav.open{display:flex}
  body.menu-open{overflow:hidden}
  .main-nav>a,.nav-drop>a{padding:13px 0;border-top:1px solid var(--line);justify-content:space-between;font-size:14.5px}
  .nav-caret{display:none}
  .mega-panel{display:none!important}
  .page-hero{padding:26px 0 44px}
  .page-hero h1{font-size:clamp(27px,7vw,32px)}
  .h1-sub{font-size:.84em}
  .page-hero .lead{font-size:16px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px}
  .footer-brand{grid-column:1/-1}
  .cta-band{flex-direction:column;align-items:flex-start;padding:30px 24px}
  .form-grid,.form-grid--3{grid-template-columns:1fr}
  .announce{font-size:12px;height:auto;min-height:38px;padding:7px 44px 7px 16px}
  .announce .inner{flex-wrap:wrap;justify-content:center;row-gap:4px;padding:0}
  .announce .close{right:12px}
}
@media(max-width:600px){
  .wrap{width:calc(100% - 32px)}
  .footer-grid{grid-template-columns:1fr}
  .header-cta{display:none}
  .site-footer{padding:44px 0 20px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}
}
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* ---------- 移动端快速联系条 ---------- */
.mobile-bar{display:none}
@media(max-width:960px){
  .mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#DCE7F1;border-top:1px solid #C9D9E6;padding-bottom:env(safe-area-inset-bottom)}
  .mobile-bar .mb-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:54px;background:#fff;border:0;font:inherit;font-size:12px;font-weight:700;color:var(--ink);text-decoration:none;cursor:pointer;letter-spacing:.02em}
  .mobile-bar .mb-item svg{width:18px;height:18px;color:var(--blue-deep)}
  .mobile-bar .mb-item--primary{background:var(--blue-deep);color:#fff}
  .mobile-bar .mb-item--primary svg{color:#fff}
  .mobile-bar .mb-item:active{background:var(--surface)}
  body{padding-bottom:54px}
  body.menu-open .mobile-bar{display:none}
}
.copy-toast{position:fixed;left:50%;bottom:calc(70px + env(safe-area-inset-bottom));transform:translate(-50%,8px);z-index:70;width:max-content;max-width:88vw;background:#0B1B2B;color:#fff;font-size:13px;line-height:1.5;padding:10px 16px;border-radius:8px;text-align:center;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.copy-toast.is-on{opacity:1;transform:translate(-50%,0)}
@media(min-width:961px){.copy-toast{bottom:28px}}
