/* ==========================================================================
   1973棋牌登录 · /assets/site.css
   桌面档案柜 × 牌桌质感：共享外壳 + 基础组件
   ========================================================================== */

/* ---------- 1. Tokens ---------- */
:root{
  --qk-night:#0A1C2E;
  --qk-felt:#123049;
  --qk-edge:#1E4A72;
  --qk-gold:#D9A94A;
  --qk-gold-soft:#EFD69A;
  --qk-gold-deep:#A97C2A;
  --qk-jade:#2E9B7C;
  --qk-jade-soft:#6FD9B6;
  --qk-vermilion:#C2453A;
  --qk-vermilion-soft:#E3806F;
  --qk-ivory:#F4EFE4;
  --qk-paper:#FBF7EE;
  --qk-ink:#0E1620;
  --qk-ink-2:#33465A;
  --qk-ink-3:#5C7186;
  --qk-line:rgba(217,169,74,.30);
  --qk-line-dark:rgba(30,74,114,.18);
  --qk-glass:rgba(10,28,46,.86);
  --qk-radius-s:8px;
  --qk-radius-m:14px;
  --qk-radius-l:22px;
  --qk-pill:999px;
  --qk-shadow-1:0 10px 30px -18px rgba(10,28,46,.55);
  --qk-shadow-2:0 26px 60px -32px rgba(10,28,46,.70);
  --qk-font-display:"Georgia","Times New Roman","Songti SC","Noto Serif SC",serif;
  --qk-font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --qk-font-mono:ui-monospace,"SFMono-Regular","Menlo","Consolas","Liberation Mono",monospace;
  --qk-wrap:1240px;
  --qk-gutter:clamp(16px,4vw,40px);
  --qk-header-h:84px;
}

/* ---------- 2. Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body,h1,h2,h3,h4,h5,p,figure,blockquote,dl,dd{margin:0}
ul,ol{list-style:none;margin:0;padding:0}
img,svg,video,canvas{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;padding:0;cursor:pointer}
table{border-collapse:collapse;width:100%}
summary{list-style:none}
[hidden]{display:none!important}

/* ---------- 3. Base & 中文排版 ---------- */
body{
  font-family:var(--qk-font-sans);
  font-size:clamp(15px,1.02vw,16.5px);
  line-height:1.78;
  color:var(--qk-ink);
  letter-spacing:.01em;
  background:
    radial-gradient(1200px 620px at 88% -12%,rgba(217,169,74,.16),transparent 62%),
    radial-gradient(900px 520px at -6% 104%,rgba(46,155,124,.10),transparent 58%),
    linear-gradient(180deg,var(--qk-paper),var(--qk-ivory));
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-family:var(--qk-font-display);font-weight:700;line-height:1.24;letter-spacing:.01em;color:var(--qk-ink)}
h1{font-size:clamp(30px,5vw,54px);line-height:1.1;letter-spacing:-.012em}
h2{font-size:clamp(23px,3.2vw,34px)}
h3{font-size:clamp(17px,2vw,21px)}
p{text-wrap:pretty}
strong{font-weight:700;color:var(--qk-ink)}
small{font-size:.82em}
::selection{background:rgba(217,169,74,.42);color:var(--qk-night)}
:focus-visible{outline:2px solid var(--qk-gold-deep);outline-offset:3px;border-radius:3px}
[id="main-content"]{scroll-margin-top:calc(var(--qk-header-h) + 12px)}

/* ---------- 4. 版式工具 ---------- */
.qk-wrap{width:100%;max-width:var(--qk-wrap);margin-inline:auto;padding-inline:var(--qk-gutter)}
.qk-section{padding-block:clamp(40px,6vw,84px)}
.qk-section__head{max-width:62ch;margin-bottom:clamp(20px,3vw,34px)}
.qk-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--qk-font-mono);font-size:11.5px;font-weight:600;
  letter-spacing:.24em;text-transform:uppercase;
  color:var(--qk-gold-deep);margin-bottom:14px;
}
.qk-eyebrow::before{content:"";width:26px;height:1px;background:currentColor;opacity:.6}
.qk-title{font-family:var(--qk-font-display);font-size:clamp(26px,4vw,44px);line-height:1.14;letter-spacing:-.01em;color:var(--qk-ink)}
.qk-lede{margin-top:12px;font-size:clamp(14.5px,1.4vw,16.5px);line-height:1.8;color:var(--qk-ink-2);max-width:62ch}
.qk-rule{height:1px;border:0;background:linear-gradient(90deg,var(--qk-line),rgba(217,169,74,0));margin-block:clamp(24px,4vw,44px)}
.qk-num{font-family:var(--qk-font-mono);font-variant-numeric:tabular-nums;letter-spacing:0}
.qk-dark-zone{
  background:
    radial-gradient(760px 400px at 88% 0%,rgba(217,169,74,.16),transparent 62%),
    linear-gradient(160deg,var(--qk-felt),var(--qk-night) 72%);
  color:rgba(244,239,228,.86);
}
.qk-dark-zone .qk-title{color:var(--qk-ivory)}
.qk-dark-zone .qk-lede{color:rgba(244,239,228,.74)}
.qk-dark-zone .qk-eyebrow{color:var(--qk-gold-soft)}

/* ---------- 5. 按钮 ---------- */
.qk-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:46px;padding:13px 26px;border-radius:var(--qk-pill);
  font-family:var(--qk-font-sans);font-size:14.5px;font-weight:700;letter-spacing:.04em;
  border:1px solid transparent;cursor:pointer;
  transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease,color .22s ease,border-color .22s ease;
}
.qk-btn:hover{transform:translateY(-2px)}
.qk-btn:active{transform:translateY(0)}
.qk-btn--gold{
  background:linear-gradient(150deg,var(--qk-gold-soft),var(--qk-gold) 58%,var(--qk-gold-deep));
  color:var(--qk-night);
  box-shadow:0 16px 28px -20px rgba(217,169,74,.95);
}
.qk-btn--jade{
  background:linear-gradient(150deg,var(--qk-jade),#1B6E58);
  color:#F3FFF9;border-color:rgba(111,217,182,.42);
  box-shadow:0 16px 28px -22px rgba(46,155,124,.9);
}
.qk-btn--line{background:transparent;color:var(--qk-edge);border-color:rgba(30,74,114,.42)}
.qk-btn--line:hover{background:rgba(30,74,114,.07);border-color:var(--qk-edge)}
.qk-btn--ghost{background:rgba(244,239,228,.07);color:var(--qk-ivory);border-color:rgba(217,169,74,.46)}
.qk-btn--ghost:hover{background:rgba(217,169,74,.14)}
.qk-btn--sm{min-height:38px;padding:9px 18px;font-size:13px}
.qk-btn--block{width:100%}

/* ---------- 6. 标签 ---------- */
.qk-tag{
  display:inline-flex;align-items:center;gap:6px;
  padding:4px 11px;border-radius:var(--qk-pill);
  font-size:12px;font-weight:600;letter-spacing:.05em;white-space:nowrap;
  border:1px solid transparent;
}
.qk-tag--gold{background:rgba(217,169,74,.17);color:#8A6417;border-color:rgba(217,169,74,.46)}
.qk-tag--jade{background:rgba(46,155,124,.14);color:#1C6E57;border-color:rgba(46,155,124,.40)}
.qk-tag--vermilion{background:rgba(194,69,58,.13);color:#A1352B;border-color:rgba(194,69,58,.36)}
.qk-tag--muted{background:rgba(30,74,114,.08);color:var(--qk-edge);border-color:rgba(30,74,114,.22)}

/* ---------- 7. 面包屑 ---------- */
.qk-crumbs{margin-bottom:clamp(18px,3vw,30px)}
.qk-crumbs__list{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:12.5px;letter-spacing:.06em}
.qk-crumbs__item{display:inline-flex;align-items:center;gap:9px;color:var(--qk-ink-3)}
.qk-crumbs__link{color:var(--qk-ink-3);border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}
.qk-crumbs__link:hover{color:var(--qk-edge);border-bottom-color:rgba(30,74,114,.42)}
.qk-crumbs__sep{font-family:var(--qk-font-mono);color:rgba(30,74,114,.34)}
.qk-crumbs__current{color:var(--qk-edge);font-weight:600}

/* ---------- 8. 网格 ---------- */
.qk-grid{display:grid;gap:clamp(14px,2vw,24px)}
.qk-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.qk-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.qk-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}

/* ---------- 9. 卡片 ---------- */
.qk-card{
  position:relative;display:flex;flex-direction:column;gap:10px;
  padding:clamp(18px,2.4vw,26px);
  border-radius:var(--qk-radius-m);
  background:rgba(255,255,255,.74);
  border:1px solid var(--qk-line-dark);
  box-shadow:var(--qk-shadow-1);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.qk-card:hover{transform:translateY(-3px);box-shadow:var(--qk-shadow-2);border-color:rgba(217,169,74,.52)}
.qk-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.qk-card__title{font-family:var(--qk-font-display);font-size:clamp(16px,1.7vw,19px);line-height:1.35;color:var(--qk-ink)}
.qk-card__body{font-size:14.5px;line-height:1.72;color:var(--qk-ink-2)}
.qk-card__meta{
  display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:auto;padding-top:10px;
  font-family:var(--qk-font-mono);font-size:12px;letter-spacing:.02em;color:var(--qk-ink-3);
  border-top:1px dashed rgba(30,74,114,.18);
}
.qk-card--dark{
  background:linear-gradient(155deg,var(--qk-felt),var(--qk-night));
  border-color:var(--qk-line);color:rgba(244,239,228,.84);
}
.qk-card--dark .qk-card__title{color:var(--qk-ivory)}
.qk-card--dark .qk-card__body{color:rgba(244,239,228,.72)}
.qk-card--dark .qk-card__meta{color:rgba(244,239,228,.55);border-top-color:rgba(217,169,74,.26)}

/* ---------- 10. 表格 ---------- */
.qk-table{width:100%;font-size:14px;font-variant-numeric:tabular-nums;background:rgba(255,255,255,.6);border-radius:var(--qk-radius-m);overflow:hidden}
.qk-table th,.qk-table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--qk-line-dark)}
.qk-table thead th{
  font-family:var(--qk-font-sans);font-size:11.5px;font-weight:700;letter-spacing:.14em;
  color:var(--qk-ink-3);background:rgba(30,74,114,.06);white-space:nowrap;
}
.qk-table tbody tr{transition:background-color .18s ease}
.qk-table tbody tr:hover{background:rgba(217,169,74,.08)}
.qk-table tbody tr:last-child td{border-bottom:0}

/* ---------- 11. 折叠面板 ---------- */
.qk-fold{
  border:1px solid var(--qk-line-dark);border-radius:var(--qk-radius-m);
  background:rgba(255,255,255,.7);overflow:hidden;
}
.qk-fold + .qk-fold{margin-top:10px}
.qk-fold__summary{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:15px 18px;cursor:pointer;
  font-family:var(--qk-font-sans);font-size:15px;font-weight:700;color:var(--qk-ink);
}
.qk-fold__summary::-webkit-details-marker{display:none}
.qk-fold__summary::after{content:"+";font-family:var(--qk-font-mono);font-size:18px;color:var(--qk-gold-deep);transition:transform .2s ease}
.qk-fold[open] .qk-fold__summary::after{content:"–"}
.qk-fold[open] .qk-fold__summary{border-bottom:1px solid var(--qk-line-dark)}
.qk-fold__body{padding:14px 18px 16px;font-size:14.5px;line-height:1.78;color:var(--qk-ink-2)}

/* ---------- 12. 图片容器 ---------- */
.qk-figure{position:relative;display:grid;gap:10px;margin:0}
.qk-figure__media{
  position:relative;overflow:hidden;aspect-ratio:16/9;
  border-radius:var(--qk-radius-m);
  border:1px solid var(--qk-line);
  background:linear-gradient(150deg,rgba(18,48,73,.96),rgba(10,28,46,.99));
  box-shadow:var(--qk-shadow-2);
}
.qk-figure__media::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(120% 92% at 16% 0%,rgba(217,169,74,.24),transparent 56%),
    repeating-linear-gradient(45deg,rgba(244,239,228,.05) 0 2px,transparent 2px 7px);
}
.qk-figure__img{width:100%;height:100%;object-fit:cover}
.qk-figure__caption{font-size:12.5px;line-height:1.6;letter-spacing:.03em;color:var(--qk-ink-3)}
.qk-figure--wide .qk-figure__media{aspect-ratio:21/9}
.qk-figure--tall .qk-figure__media{aspect-ratio:3/4}
.qk-figure--square .qk-figure__media{aspect-ratio:1/1}

/* ---------- 13. 长文 ---------- */
.qk-prose{max-width:72ch;color:var(--qk-ink-2);font-size:15.5px;line-height:1.85}
.qk-prose > * + *{margin-top:1em}
.qk-prose h2,.qk-prose h3{margin-top:1.7em;color:var(--qk-ink)}
.qk-prose ul{list-style:disc;padding-left:1.25em}
.qk-prose ol{list-style:decimal;padding-left:1.25em}
.qk-prose li{margin-top:.4em}
.qk-prose strong{color:var(--qk-ink)}

/* ---------- 14. 头部浮岛 ---------- */
.qk-skip{
  position:fixed;top:10px;left:50%;z-index:999;
  transform:translate(-50%,-180%);
  padding:11px 22px;border-radius:var(--qk-pill);
  background:linear-gradient(150deg,var(--qk-gold-soft),var(--qk-gold));
  color:var(--qk-night);font-size:14px;font-weight:700;letter-spacing:.04em;
  box-shadow:var(--qk-shadow-2);
  transition:transform .2s ease;
}
.qk-skip:focus{transform:translate(-50%,0)}

.qk-header{
  position:sticky;top:0;z-index:120;
  padding:14px var(--qk-gutter) 18px;
  pointer-events:none;
}
.qk-progress{
  position:absolute;top:0;left:0;right:0;height:3px;
  background:rgba(30,74,114,.12);overflow:hidden;
}
.qk-progress__bar{
  display:block;height:100%;width:0;
  background:linear-gradient(90deg,var(--qk-jade),var(--qk-gold) 56%,var(--qk-vermilion));
  transition:width .12s linear;
}
.qk-header__inner{
  position:relative;
  display:flex;align-items:center;gap:clamp(10px,1.6vw,20px);
  width:100%;max-width:var(--qk-wrap);margin-inline:auto;
  pointer-events:none;
}
.qk-header__inner > *{pointer-events:auto}

.qk-brand{
  display:inline-flex;align-items:center;gap:12px;
  padding:8px 18px 8px 9px;border-radius:var(--qk-pill);
  background:var(--qk-glass);
  border:1px solid var(--qk-line);
  box-shadow:var(--qk-shadow-1);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  backdrop-filter:blur(14px) saturate(140%);
  color:var(--qk-ivory);
  transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.qk-brand:hover{border-color:rgba(217,169,74,.68);transform:translateY(-1px);box-shadow:var(--qk-shadow-2)}
.qk-brand__mark{
  display:grid;place-items:center;
  width:46px;height:46px;border-radius:12px;flex:none;
  background:linear-gradient(155deg,var(--qk-gold-soft),var(--qk-gold) 46%,var(--qk-gold-deep));
  color:var(--qk-night);
  font-family:var(--qk-font-mono);font-size:13px;font-weight:700;
  letter-spacing:.02em;line-height:1;
  box-shadow:inset 0 0 0 1px rgba(10,28,46,.26),0 8px 18px -10px rgba(217,169,74,.9);
}
.qk-brand__text{display:flex;flex-direction:column;line-height:1.16;min-width:0}
.qk-brand__name{
  font-family:var(--qk-font-display);font-size:clamp(15px,1.45vw,17px);
  font-weight:700;letter-spacing:.01em;color:var(--qk-ivory);white-space:nowrap;
}
.qk-brand__tag{
  font-size:10.5px;letter-spacing:.16em;color:rgba(244,239,228,.6);white-space:nowrap;
}

.qk-nav{
  display:flex;align-items:center;gap:6px;margin-left:auto;
  padding:6px;border-radius:var(--qk-pill);
  background:var(--qk-glass);
  border:1px solid var(--qk-line);
  box-shadow:var(--qk-shadow-1);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  backdrop-filter:blur(14px) saturate(140%);
}
.qk-nav__list{display:flex;align-items:center;gap:2px}
.qk-nav__item{position:relative;display:flex}
.qk-nav__link{
  display:inline-flex;align-items:center;
  padding:9px 14px;border-radius:var(--qk-pill);
  font-size:13.8px;font-weight:600;letter-spacing:.03em;white-space:nowrap;
  color:rgba(244,239,228,.78);
  transition:color .2s ease,background-color .2s ease,box-shadow .2s ease;
}
.qk-nav__link:hover{color:var(--qk-gold-soft);background:rgba(217,169,74,.12)}
.qk-nav__link[aria-current="page"]{
  color:var(--qk-night);
  background:linear-gradient(160deg,var(--qk-gold-soft),var(--qk-gold));
  box-shadow:0 10px 20px -14px rgba(217,169,74,.95);
}
.qk-nav__cta{
  display:inline-flex;align-items:center;gap:6px;
  margin-left:5px;padding:10px 18px;border-radius:var(--qk-pill);
  background:linear-gradient(150deg,var(--qk-jade),#1F7A62);
  border:1px solid rgba(111,217,182,.44);
  color:#F2FFF9;font-size:13.5px;font-weight:700;letter-spacing:.04em;white-space:nowrap;
  transition:transform .2s ease,filter .2s ease;
}
.qk-nav__cta::after{content:"→";font-size:12px;opacity:.85}
.qk-nav__cta:hover{transform:translateY(-1px);filter:brightness(1.08)}

.qk-nav-toggle{
  display:none;margin-left:auto;
  padding:10px 16px;border-radius:var(--qk-pill);
  background:var(--qk-glass);border:1px solid var(--qk-line);
  color:var(--qk-ivory);box-shadow:var(--qk-shadow-1);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
  backdrop-filter:blur(14px) saturate(140%);
}
.qk-nav-toggle__bar{
  display:block;width:16px;height:2px;border-radius:2px;
  background:var(--qk-gold-soft);
  transition:transform .26s ease,opacity .2s ease;
}

/* ---------- 15. 页脚桌沿 ---------- */
.qk-footer{
  position:relative;margin-top:clamp(48px,8vw,100px);
  padding:0 var(--qk-gutter) 34px;
  overflow:hidden;
  color:rgba(244,239,228,.82);
  background:
    radial-gradient(900px 420px at 10% 0%,rgba(30,74,114,.9),transparent 66%),
    radial-gradient(760px 400px at 94% 8%,rgba(217,169,74,.15),transparent 62%),
    linear-gradient(180deg,var(--qk-felt),var(--qk-night) 62%);
}
.qk-footer__rail{
  position:absolute;top:0;left:0;right:0;height:4px;
  background:repeating-linear-gradient(90deg,var(--qk-gold) 0 22px,rgba(217,169,74,0) 22px 42px);
  opacity:.55;
}
.qk-footer__inner{
  position:relative;z-index:1;
  width:100%;max-width:var(--qk-wrap);margin-inline:auto;
  padding-top:clamp(38px,6vw,66px);
}
.qk-footer__top{
  display:grid;gap:clamp(26px,4vw,48px);
  grid-template-columns:minmax(240px,1.3fr) minmax(150px,.75fr) minmax(150px,.75fr) minmax(230px,1fr);
  padding-bottom:clamp(28px,4vw,44px);
  border-bottom:1px solid rgba(217,169,74,.2);
}
.qk-brand--footer{
  background:transparent;border-color:transparent;box-shadow:none;
  -webkit-backdrop-filter:none;backdrop-filter:none;
  padding:0;margin:0 0 16px;
}
.qk-brand--footer:hover{transform:none;border-color:transparent;box-shadow:none}
.qk-footer__pitch{
  font-family:var(--qk-font-display);
  font-size:clamp(17px,1.9vw,21px);line-height:1.6;color:var(--qk-ivory);
  max-width:22em;
}
.qk-footer__note{
  margin-top:12px;font-size:12.8px;line-height:1.72;
  color:rgba(244,239,228,.56);max-width:26em;
}
.qk-footer__col{min-width:0}
.qk-footer__title{
  font-family:var(--qk-font-sans);font-size:11.5px;font-weight:700;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--qk-gold);margin-bottom:15px;
}
.qk-footer__list{display:grid;gap:11px}
.qk-footer__item{display:grid;gap:3px;min-width:0}
.qk-footer__link{
  display:inline-flex;align-items:center;gap:8px;
  font-size:14px;color:rgba(244,239,228,.8);
  padding-bottom:2px;border-bottom:1px solid transparent;
  transition:color .2s ease,border-color .2s ease;
  width:fit-content;max-width:100%;
}
.qk-footer__link::before{
  content:"";width:5px;height:5px;border-radius:50%;flex:none;
  background:var(--qk-jade-soft);opacity:.7;
  transition:background-color .2s ease,opacity .2s ease;
}
.qk-footer__link:hover{color:var(--qk-gold-soft);border-bottom-color:rgba(217,169,74,.6)}
.qk-footer__link:hover::before{background:var(--qk-gold-soft);opacity:1}
.qk-footer__label{
  font-family:var(--qk-font-sans);font-size:10.5px;letter-spacing:.18em;
  color:rgba(244,239,228,.48);
}
.qk-footer__data{
  display:block;
  font-family:var(--qk-font-mono);font-size:13px;letter-spacing:.01em;
  color:var(--qk-ivory);overflow-wrap:anywhere;
}
.qk-footer__bottom{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;
  padding-top:22px;
}
.qk-footer__legal{
  font-family:var(--qk-font-mono);font-size:12px;letter-spacing:.02em;
  color:rgba(244,239,228,.5);
}
.qk-footer__legal:last-child{margin-left:auto}

/* ---------- 16. 返回顶部 ---------- */
.qk-totop{
  position:fixed;right:clamp(14px,3vw,32px);bottom:clamp(14px,3vw,32px);z-index:110;
  display:grid;place-items:center;
  width:52px;height:52px;border-radius:50%;
  background:rgba(10,28,46,.92);
  border:1px solid var(--qk-line);
  box-shadow:var(--qk-shadow-2);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  color:var(--qk-gold-soft);
  transition:transform .25s ease,border-color .25s ease,color .25s ease;
}
.qk-totop:hover{transform:translateY(-3px);border-color:rgba(217,169,74,.72);color:var(--qk-gold)}
.qk-totop__icon{font-family:var(--qk-font-mono);font-size:18px;line-height:1}

/* ---------- 17. 分段显现 ---------- */
.qk-js [data-reveal]{
  opacity:0;transform:translateY(18px);
  transition:opacity .62s ease,transform .62s cubic-bezier(.22,.7,.3,1);
}
.qk-js [data-reveal].is-visible{opacity:1;transform:none}

/* ---------- 18. 响应式 ---------- */
@media (max-width:1139px){
  .qk-footer__top{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qk-footer__col--contact{grid-column:span 2}
}
@media (max-width:1023px){
  .qk-nav-toggle{
    display:grid;grid-template-columns:16px auto;grid-auto-rows:min-content;
    align-items:center;column-gap:10px;row-gap:4px;
  }
  .qk-nav-toggle__bar{grid-column:1}
  .qk-nav-toggle__label{
    grid-column:2;grid-row:1 / span 3;align-self:center;
    font-size:12px;letter-spacing:.18em;color:rgba(244,239,228,.76);
  }
  .qk-nav-toggle[data-open] .qk-nav-toggle__bar:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .qk-nav-toggle[data-open] .qk-nav-toggle__bar:nth-child(2){opacity:0}
  .qk-nav-toggle[data-open] .qk-nav-toggle__bar:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

  .qk-nav{
    position:absolute;top:calc(100% + 10px);left:0;right:0;margin-left:0;
    display:block;padding:14px;border-radius:var(--qk-radius-l);
    background:rgba(9,24,39,.975);
    max-height:calc(100vh - 132px);overflow-y:auto;
    opacity:0;visibility:hidden;pointer-events:none;
    transform:translateY(-10px) scale(.985);
    transition:opacity .24s ease,transform .24s ease,visibility .24s ease;
  }
  .qk-nav[data-open]{
    opacity:1;visibility:visible;pointer-events:auto;transform:none;
  }
  .qk-nav__list{flex-direction:column;align-items:stretch;gap:4px}
  .qk-nav__link{
    width:100%;justify-content:flex-start;
    padding:13px 16px;border-radius:var(--qk-radius-m);
    font-size:15px;border:1px solid rgba(217,169,74,.14);
  }
  .qk-nav__link[aria-current="page"]{border-color:rgba(217,169,74,.5)}
  .qk-nav__cta{
    width:100%;justify-content:center;margin:10px 0 0;
    padding:13px 18px;font-size:14px;
  }
  html.qk-lock,html.qk-lock body{overflow:hidden}
  .qk-header__inner{gap:10px}
}
@media (max-width:899px){
  .qk-grid--3,.qk-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qk-footer__legal:last-child{margin-left:0}
}
@media (max-width:767px){
  .qk-brand{padding:7px 14px 7px 8px;gap:10px}
  .qk-brand__mark{width:40px;height:40px;border-radius:10px;font-size:11.5px}
  .qk-brand__tag{display:none}
  .qk-section{padding-block:clamp(32px,7vw,52px)}
  .qk-table th,.qk-table td{padding:10px 11px;font-size:13px}
}
@media (max-width:619px){
  .qk-grid--2,.qk-grid--3,.qk-grid--4{grid-template-columns:minmax(0,1fr)}
  .qk-footer__top{grid-template-columns:minmax(0,1fr)}
  .qk-footer__col--contact{grid-column:auto}
  .qk-footer__bottom{flex-direction:column;align-items:flex-start;gap:6px}
  .qk-btn{width:100%}
  .qk-btn--inline{width:auto}
}

/* ---------- 19. 动效偏好 ---------- */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
    scroll-behavior:auto!important;
  }
  .qk-js [data-reveal]{opacity:1;transform:none}
  .qk-btn:hover,.qk-card:hover,.qk-brand:hover,.qk-totop:hover{transform:none}
}
