
#gp-root:where(.km-on){grid-template-rows:auto 36px 32px minmax(0,1fr) 26px 24px}
/* 左上只留研究院棱镜、金字塔、IT桔子（＋合作媒体空位）：1212 金钥匙和它前面那条竖线收起 */
#gp-root.km-on .gp-brand .km-off{display:none!important}
/* 结果页贴着面板区（报头变高后不压功能键条；与线上内联的 km-pane-fix 相同，重复无害） */
#gp-root.km-on .gp-pane{grid-row:4/5;grid-column:1/-1;top:0;bottom:0;left:0;right:0}
/* 报头：标（高 = 两行字总高，垂直居中）＋「Keys Room / Glacier Journal」 */
#gp-root.km-on .gp-station{padding-top:4px;padding-bottom:4px;gap:12px}
#gp-root .km-lock{position:relative;display:block;flex:none;align-self:center}
#gp-root .km-mark{display:block;height:44px;width:auto}
/* 开机画面 */
#gp-root .gp-boot .km-slock{display:block;width:max-content}
#gp-root .gp-boot .mk img.km-smark{display:block;height:128px;width:auto;margin:0}
@media (max-width:760px){
  #gp-root:where(.km-on){grid-template-rows:auto 44px 36px minmax(0,1fr) 26px}
  /* 手机左上也是三枚：把主包手机版收起的 IT桔子露出来，间距收一点，保证 360 宽一行放得下 */
  #gp-root.km-on .gp-brand .gp-itj,#gp-root.km-on .gp-brand .gp-vl-itj{display:block}
  #gp-root.km-on .gp-brand .gp-itj{height:14px;width:auto}
  #gp-root.km-on .gp-spons .gp-brand{gap:6px}
  #gp-root.km-on .gp-station{padding-top:3px;padding-bottom:3px;gap:8px}
  #gp-root .gp-boot .mk img.km-smark{height:60px}
}

/* 开机：标逐笔画出——圆环、牛脸、钥匙杆，最后长出牛角，角上的小钥匙一枚枚亮起 */
#gp-root .gp-boot .km-bull{display:block;height:128px;width:auto;overflow:visible}
#gp-root .gp-boot .km-bull #kmb-ring circle{stroke-dasharray:1257;stroke-dashoffset:1257;animation:kmRing .7s cubic-bezier(.3,.7,.2,1) .05s both}
#gp-root .gp-boot .km-bull #kmb-face{transform-box:view-box;transform-origin:0 50px;animation:kmFace .45s ease-out .2s both}
#gp-root .gp-boot .km-bull #kmb-key path{stroke-dasharray:1;stroke-dashoffset:1;animation:kmDraw .8s cubic-bezier(.3,.7,.2,1) .35s both}
#gp-root .gp-boot .km-bull #kmb-horns path:nth-child(-n+2){stroke-dasharray:1;stroke-dashoffset:1;animation:kmDraw .7s cubic-bezier(.2,.75,.2,1) .6s both}
#gp-root .gp-boot .km-bull #kmb-horns path:nth-child(n+3){animation:kmPop .3s ease-out 1s both}
#gp-root .gp-boot .km-bull #kmb-horns path:nth-child(4),#gp-root .gp-boot .km-bull #kmb-horns path:nth-child(7){animation-delay:1.1s}
#gp-root .gp-boot .km-bull #kmb-horns path:nth-child(5),#gp-root .gp-boot .km-bull #kmb-horns path:nth-child(8){animation-delay:1.2s}
@keyframes kmRing{0%{stroke-dashoffset:1257;opacity:0}6%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}
@keyframes kmDraw{0%{stroke-dashoffset:1;opacity:0}6%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}
@keyframes kmFace{0%{opacity:0;transform:scale(.86)}100%{opacity:1;transform:none}}
@keyframes kmPop{0%{opacity:0}100%{opacity:1}}
@media (max-width:760px){#gp-root .gp-boot .km-bull{height:72px}}
@media (prefers-reduced-motion:reduce){#gp-root .gp-boot .km-bull *{animation:none!important;opacity:1!important;stroke-dashoffset:0!important;transform:none!important}}

/* 报头左上：只留牛头和牛角 */
#gp-root .km-head{display:block;height:44px;width:auto;overflow:visible}
#gp-root .gp-hd>.gp-station:hover .km-head{filter:brightness(1.12) drop-shadow(0 0 10px rgba(242,193,78,.4))}
#gp-root .km-head .kh-face{transform-box:view-box;transform-origin:0 40px}
#gp-root .km-head .kh-horn{stroke-dasharray:1;stroke-dashoffset:0}
#gp-root .km-head.kh-wait .kh-face,#gp-root .km-head.kh-wait .kh-horn{opacity:0}
#gp-root .km-head.kh-go .kh-face{animation:kmFace .45s ease-out both}
#gp-root .km-head.kh-go .kh-horn{animation:khDraw .7s cubic-bezier(.2,.75,.2,1) .25s both,khFill .35s ease-out .8s both}
#gp-root .km-head.kh-go .kh-l{animation-delay:.32s,.87s}
@keyframes khDraw{0%{stroke-dashoffset:1;opacity:0}8%{opacity:1}100%{stroke-dashoffset:0;opacity:1}}
@keyframes khFill{0%{fill-opacity:0}100%{fill-opacity:1}}
@media (prefers-reduced-motion:reduce){#gp-root .km-head *{animation:none!important;opacity:1!important;fill-opacity:1!important;stroke-dashoffset:0!important;transform:none!important}}
/* 页脚最左：金字塔研究院 */
#gp-root .kr-inst{display:inline-flex;align-items:center;gap:5px;vertical-align:-2px;color:var(--txt,#ECE7DC);text-decoration:none;font:500 11.5px/1 var(--sans);letter-spacing:.04em;white-space:nowrap}
#gp-root .kr-inst img{display:block;width:13px;height:13px}
#gp-root .kr-inst:hover{filter:brightness(1.2)}
#gp-root .gp-mft .kr-inst{font-size:12px;vertical-align:-1px}
/* 报头第二行的两组轮播：几句叠在同一格里，高宽随内容（脚本量到的高度有时偏大，右侧那句会被裁成半截） */
#gp-root .kr-folio .kr-rot{height:auto!important;width:auto!important}
/* 报头时钟带日期；手机只留「10.11 15:22」，放在报头最右 */
@media (max-width:760px){#gp-root .gp-hd>.gp-live{display:flex!important;order:1;margin-left:auto}#gp-root .gp-hd>.gp-live>i,#gp-root .gp-hd>.gp-live>.w,#gp-root .gp-live .gp-m .wk,#gp-root .gp-live .gp-m .s{display:none}#gp-root .gp-live .gp-m{font-size:12px}}
@media (max-width:340px){#gp-root .gp-hd>.gp-live{display:none!important}}

#gp-root.km-on .gp-hd .gp-spons .gp-brand{height:auto;gap:14px;padding:6px 18px;border-radius:999px;border:1px solid rgba(216,178,106,.42);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.03)),rgba(12,14,22,.55);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 6px 18px rgba(0,0,0,.28)}
#gp-root.km-on .gp-hd .gp-brand .gp-pyr{width:30px;height:30px}
#gp-root.km-on .gp-hd .gp-brand .gp-itj{height:24px;width:auto;opacity:1}
#gp-root.km-on .gp-hd .gp-brand .gp-vl-itj{display:block;width:1px;height:22px;background:rgba(216,178,106,.5)}
@media (max-width:760px){#gp-root.km-on .gp-hd .gp-spons .gp-brand{gap:6px;padding:3px 8px}#gp-root.km-on .gp-hd .gp-brand .gp-pyr{width:18px;height:18px}#gp-root.km-on .gp-hd .gp-brand .gp-itj{height:14px}#gp-root.km-on .gp-hd .gp-brand .gp-vl-itj{height:12px}}
@media (max-width:379px){#gp-root .gp-hd>.gp-live{display:none!important}}
#gp-root .kr-zz{font-weight:500}
#gp-root .kr-krm{color:var(--txt,#ECE7DC)}
#gp-root .kr-bull{display:block;width:15px;height:14px}

#gp-root .km-head .x-horns>path:nth-child(-n+2){stroke-dasharray:1;stroke-dashoffset:0}
#gp-root .km-head .x-face{transform-box:view-box;transform-origin:0 30px}
#gp-root .km-head.kh-wait .x-face,#gp-root .km-head.kh-wait .x-hf,#gp-root .km-head.kh-wait .x-horns{opacity:0}
#gp-root .km-head.kh-go .x-face{animation:kmFace .45s ease-out both}
#gp-root .km-head.kh-go .x-hf{animation:khLf 6s ease .2s infinite both}
#gp-root .km-head.kh-go .x-horns>path:nth-child(-n+2){animation:khLd 6s cubic-bezier(.3,.7,.2,1) .2s infinite both}
#gp-root .km-head.kh-go .x-horns>path:nth-child(n+3){animation:khLk 6s ease-out .2s infinite both}
#gp-root .km-head.kh-go .x-horns>path:nth-child(4),#gp-root .km-head.kh-go .x-horns>path:nth-child(7){animation-delay:.34s}
#gp-root .km-head.kh-go .x-horns>path:nth-child(5),#gp-root .km-head.kh-go .x-horns>path:nth-child(8){animation-delay:.48s}
@keyframes khLd{0%{stroke-dashoffset:1;opacity:0}3%{opacity:1}14%,88%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes khLf{0%,8%{opacity:0}16%,88%{opacity:1}96%,100%{opacity:0}}
@keyframes khLk{0%,16%{opacity:0}20%,86%{opacity:1}94%,100%{opacity:0}}
#gp-root .kr-wmk-a{display:block;flex:none}
#gp-root .kr-wmk-a svg{display:block;height:100%;width:auto;overflow:visible}
#gp-root .kr-wmk-a .x-ring circle{stroke-dasharray:1257;animation:kwR 6s cubic-bezier(.3,.7,.2,1) infinite both}
#gp-root .kr-wmk-a .x-face{transform-box:view-box;transform-origin:0 30px;animation:kmFace .5s ease-out .1s both}
#gp-root .kr-wmk-a .x-key path{stroke-dasharray:1;animation:kwK 6s cubic-bezier(.3,.7,.2,1) infinite both}
#gp-root .kr-wmk-a .x-hf{animation:khLf 6s ease infinite both}
#gp-root .kr-wmk-a .x-horns>path:nth-child(-n+2){stroke-dasharray:1;animation:khLd 6s cubic-bezier(.2,.75,.2,1) .35s infinite both}
#gp-root .kr-wmk-a .x-horns>path:nth-child(n+3){animation:khLk 6s ease-out .45s infinite both}
#gp-root .kr-wmk-a .x-horns>path:nth-child(4),#gp-root .kr-wmk-a .x-horns>path:nth-child(7){animation-delay:.58s}
#gp-root .kr-wmk-a .x-horns>path:nth-child(5),#gp-root .kr-wmk-a .x-horns>path:nth-child(8){animation-delay:.7s}
@keyframes kwR{0%{stroke-dashoffset:1257;opacity:0}2%{opacity:1}12%,88%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes kwK{0%,4%{stroke-dashoffset:1;opacity:0}6%{opacity:1}16%,88%{stroke-dashoffset:0;opacity:1}96%,100%{stroke-dashoffset:0;opacity:0}}
@media (prefers-reduced-motion:reduce){#gp-root .km-head *,#gp-root .kr-wmk-a *{animation:none!important;opacity:1!important;stroke-dashoffset:0!important;transform:none!important}}
