/* 今日和同意页共用奶油遮罩。
   实色从按钮顶往上盖住内边距，再盖住探出来的字；
   24px 渐变放在实色上面。今日的实色高度维持原样。 */
#view-today .cta-bar,
#view-onboarding .cta-bar.cta-mask{
  position:relative;
  z-index:4;
  background:#F7F1E6;
  --mask-solid:8px;
}
#view-today .cta-bar::after,
#view-onboarding .cta-bar.cta-mask::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:100%;
  height:var(--mask-solid);
  background:#F7F1E6;
  pointer-events:none;
}
#view-today .cta-bar::before,
#view-onboarding .cta-bar.cta-mask::before{
  content:"";
  position:absolute;
  left:0;right:0;
  bottom:calc(100% + var(--mask-solid));
  height:24px;
  background:linear-gradient(180deg,transparent,#F7F1E6);
  pointer-events:none;
}
@media (max-height:700px){
  #view-today .cta-bar{--mask-solid:4px}
}
/* 同意页正文和勾选框探得更高，实色再加长一截。今日的高度不改。 */
#view-onboarding .cta-bar.cta-mask{--mask-solid:40px}
/* 同意页：勾选项不在首屏时，按钮上方留一行下滑提示。抖动沿用原型 .is-miss，减少动态效果时关掉。 */
/* 底部留出滚动余量，点灰按钮时才能把第一项停在可视区中部。 */
#view-onboarding .ob{padding-bottom:80px}
#view-onboarding .cta-bar{flex-direction:column;align-items:stretch}
#view-onboarding .consent-cue{
  margin:0 0 6px;
  text-align:center;
  font-size:14px;
  line-height:1.3;
  font-weight:600;
  color:var(--ink-2);
}
#view-onboarding .check.is-miss{animation:none}
#view-onboarding .check.is-miss.is-shake{animation:nudge .32s}
@media (prefers-reduced-motion:reduce){
  #view-onboarding .check.is-miss.is-shake{animation:none!important}
}
