.privacy-tools { position: fixed; inset-block-end: max(1rem, env(safe-area-inset-bottom)); inset-inline-start: max(1rem, env(safe-area-inset-left)); z-index: 9999; text-align: start; color: #253d2c; }
.privacy-tools summary { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 3rem; height: 3rem; min-height: 3rem; padding: 0; border: 1px solid #c8d5bf; border-radius: 50%; background: #f0f5eb; color: #304c24; cursor: pointer; box-shadow: 0 3px 14px #172b1930; list-style: none; }
.privacy-tools[open] summary { background: #304c24; color: #fff; }
.privacy-tools summary::-webkit-details-marker { display: none; }
.privacy-tools summary > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.privacy-tools section { position: absolute; inset-block-end: calc(100% + .75rem); inset-inline-start: 0; box-sizing: border-box; width: min(29rem, calc(100vw - 2rem)); max-height: calc(100dvh - 6.5rem); overflow: auto; overscroll-behavior: contain; padding: 0; border: 1px solid #c8d5bf; border-radius: 1.2rem; background: #fff; color: #253d2c; box-shadow: 0 12px 45px #18291d30; font-size: 1rem; line-height: 1.65; }
.privacy-panel-heading { padding: 1.4rem; background: #edf3e7; border-bottom: 1px solid #dce5d5; }
.privacy-eyebrow { color: #42642a; font-size: .8rem; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; }
.privacy-tools h2 { margin: .25rem 0 .6rem; font-size: 1.5rem; line-height: 1.3; color: inherit; }
.privacy-panel-body { display: grid; gap: 1.2rem; padding: 1.4rem; }
.privacy-tools h3 { margin: 0 0 .4rem; font-size: 1rem; line-height: 1.45; color: inherit; }
.privacy-tools p { margin: 0; }
.privacy-tools p + p { margin-top: .65rem; }
.privacy-tools a { color: #365725; text-decoration: underline; text-underline-offset: .2em; }
.privacy-choice { padding: 1rem; border: 1px solid #b8cdaa; border-radius: .85rem; background: #f5f8f1; }
.privacy-choice .privacy-choice-status { margin: 1rem 0 .75rem; padding: .4rem .6rem; border-radius: .4rem; background: #e6eddc; color: #304c24; font-size: .9rem; font-weight: 600; }
.privacy-choice-actions { display: grid; gap: .65rem; }
.privacy-tools button { box-sizing: border-box; min-height: 3rem; padding: .7rem .8rem; border: 1px solid #456832; border-radius: .6rem; background: #fff; color: #304c24; font: inherit; font-weight: 600; cursor: pointer; }
.privacy-tools button:hover { box-shadow: inset 0 0 0 1px currentColor; }
.privacy-tools .privacy-choice-note { margin: .85rem 0; font-size: .9rem; }
.privacy-policy-link { font-weight: 600; }
.privacy-tools .privacy-close-hint { font-size: .85rem; color: #50624e; }
.privacy-tools :focus-visible { outline: 3px solid #42642a; outline-offset: 3px; }
