/* A self-contained utility: editorial heading rules must never enter consent UI. */
#gm-privacy{position:fixed;inset:auto auto 20px 20px;z-index:10100;width:420px;max-width:calc(100% - 40px);margin:0;padding:20px 20px 8px;background:#f6f4ec;color:#203b33;border:0;border-radius:12px;box-shadow:0 8px 36px #061f2830;font:400 13px/1.5 Outfit,system-ui,sans-serif;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;box-sizing:border-box;color-scheme:light}
#gm-privacy *,#gm-privacy *::before,#gm-privacy *::after{box-sizing:border-box}
#gm-privacy[hidden],#gm-privacy [hidden]{display:none}
#gm-privacy h2{font:500 16px/1.3 Outfit,system-ui,sans-serif;letter-spacing:-.015em;color:#203b33;margin:0 0 8px;text-wrap:initial}
#gm-privacy p{margin:0;font:400 13px/1.5 Outfit,system-ui,sans-serif;color:#4b5c50;text-wrap:initial}
#gm-privacy .gm-privacy-summary{display:none}
#gm-privacy a{color:#40574a;text-underline-offset:3px;font-size:12px}
#gm-privacy .gm-privacy-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
#gm-privacy button{min-height:44px;margin:0;padding:10px 12px;border:1px solid #8d9b8e;border-radius:4px;background:transparent;color:#203b33;cursor:pointer;font:500 13px/1.3 Outfit,system-ui,sans-serif;box-shadow:none;transition:background .18s,color .18s,border-color .18s}
#gm-privacy button:hover{background:#203b33;color:#f6f4ec;border-color:#203b33}
#gm-privacy button:disabled{opacity:.65;cursor:wait}
#gm-privacy .gm-privacy-links{display:flex;align-items:center;justify-content:space-between;gap:16px}
#gm-privacy .gm-privacy-links a{display:inline-flex;align-items:center;min-height:44px}
#gm-privacy [data-choice=customize]{padding:8px 0;border:0;background:none;color:#40574a;font-size:12px;font-weight:400;text-decoration:underline;text-underline-offset:3px}
#gm-privacy [data-choice=customize]:hover{background:transparent;color:#182f27}
#gm-privacy .gm-privacy-options{padding-top:16px;margin-top:4px;border-top:1px solid #cbd1c6}
#gm-privacy .gm-privacy-options label{display:grid;grid-template-columns:22px 1fr;gap:4px 8px;font-size:14px;font-weight:500;margin:0 0 16px;cursor:pointer;min-height:44px}
#gm-privacy .gm-privacy-options input{grid-row:span 2;width:18px;height:18px;margin:2px 0 0;accent-color:#294b36}
#gm-privacy .gm-privacy-options small{grid-column:2;font-size:12px;line-height:1.5;font-weight:400;color:#4b6046}
#gm-privacy .gm-privacy-options>button{width:100%;margin-bottom:12px}
#gm-privacy .gm-privacy-gpc{margin:0 0 12px}
#gm-privacy [role=status]:empty{display:none}
#gm-privacy [role=status]{color:#a12c23;font-size:12px;margin:8px 0 12px}
#gm-privacy :focus-visible,.gm-privacy-settings:focus-visible{outline:2px solid #405e40;outline-offset:3px}
body .gm-privacy-settings{min-height:44px;background:none;border:0;color:inherit;text-decoration:underline;text-underline-offset:4px;padding:8px 0;font:inherit;font-size:13px;cursor:pointer}
@media(max-width:699px){
  /* Keep the full explanation and all choices visible in one compact bottom bar. */
  #gm-privacy{inset:auto 0 0;width:100%;max-width:none;max-height:min(70dvh,calc(100dvh - 16px));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid #cbd1c6;border-radius:0;box-shadow:0 -4px 20px #061f2818}
  #gm-privacy .gm-privacy-copy,#gm-privacy .gm-privacy-controls,#gm-privacy .gm-privacy-links{display:contents}
  #gm-privacy h2{grid-column:1;grid-row:1;align-self:center;margin:0;font-size:14px;line-height:1.3}
  #gm-privacy .gm-privacy-copy>p{grid-column:1 / -1;grid-row:2;font-size:12px;line-height:1.4}
  #gm-privacy .gm-privacy-buttons{grid-column:1;grid-row:3;gap:6px;margin:0}
  #gm-privacy .gm-privacy-buttons button{min-width:0;padding:8px 6px;font-size:12px}
  #gm-privacy .gm-privacy-links a{grid-column:2;grid-row:1;justify-self:end;min-height:24px;font-size:12px}
  #gm-privacy [data-choice=customize]{grid-column:2;grid-row:3;min-height:44px;padding:8px 4px;font-size:12px}
  #gm-privacy .gm-privacy-options{grid-column:1 / -1;grid-row:4;margin-top:8px;padding-top:12px}
  #gm-privacy [role=status]{grid-column:1 / -1;grid-row:5;margin:4px 0 0}
  /* 未展开的手机栏保留清楚的用途说明，完整信息在 Customize 内。 */
  #gm-privacy:not(:has([data-choice=customize][aria-expanded=true])) h2,
  #gm-privacy:not(:has([data-choice=customize][aria-expanded=true])) .gm-privacy-description{display:none}
  #gm-privacy:not(:has([data-choice=customize][aria-expanded=true])) .gm-privacy-summary{display:block;grid-column:1;grid-row:1;align-self:center;font-size:13px;line-height:1.4}
  #gm-privacy:not(:has([data-choice=customize][aria-expanded=true])) .gm-privacy-buttons,
  #gm-privacy:not(:has([data-choice=customize][aria-expanded=true])) [data-choice=customize]{grid-row:2}
  /* Release this space as soon as a choice hides the bar; expanded options may scroll. */
  html:has(body>#gm-privacy:not([hidden])){--gm-privacy-space:calc(172px + env(safe-area-inset-bottom,0px));scroll-padding-bottom:var(--gm-privacy-space)}
  html:has(body>#gm-privacy:not([hidden]) [data-choice=customize][aria-expanded=true]){--gm-privacy-space:min(70dvh,calc(100dvh - 16px))}
  body:has(>#gm-privacy:not([hidden])){padding-bottom:var(--gm-privacy-space)}
}
@media(prefers-reduced-motion:reduce){#gm-privacy button{transition:none}}

@media(min-width:700px){
  #gm-privacy{inset:auto 0 0;width:100%;max-width:none;display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:center;gap:20px 40px;padding:14px clamp(24px,5vw,72px);border-top:1px solid #cbd1c6;border-radius:0;box-shadow:0 -4px 20px #061f2818}
  #gm-privacy .gm-privacy-copy{max-width:640px}
  #gm-privacy h2{margin-bottom:4px}
  #gm-privacy .gm-privacy-controls{display:grid;grid-template-columns:auto auto;align-items:center;gap:0 20px}
  #gm-privacy .gm-privacy-buttons{margin:0;gap:8px}
  #gm-privacy .gm-privacy-links{gap:20px}
  #gm-privacy .gm-privacy-options,#gm-privacy [role=status]{grid-column:1 / -1}
}
@media(min-width:700px) and (max-width:999px){
  #gm-privacy{gap:20px}
  #gm-privacy .gm-privacy-controls{grid-template-columns:1fr;gap:0}
}
