/* Scoped public-site privacy controls; independent of tool/device layouts. */
.privacy-notice,.privacy-dialog,.privacy-feedback{box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;color:#17261d;background:#f7f8f1;font-size:16px;line-height:1.6;letter-spacing:normal;text-align:left}
.privacy-notice *,.privacy-dialog *{box-sizing:border-box}
.privacy-notice[hidden],.privacy-feedback[hidden],.privacy-signal[hidden]{display:none}
.privacy-notice{position:fixed;z-index:900;inset:auto 20px max(20px,env(safe-area-inset-bottom));max-width:1080px;margin-inline:auto;border:1px solid #718676;border-radius:8px;box-shadow:0 8px 40px #152b2226;padding:22px 26px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 30px;max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
.privacy-notice h2,.privacy-dialog h2{font-size:22px;line-height:1.25;font-weight:600;letter-spacing:-.025em;margin:0 0 10px;color:#17261d}
.privacy-notice p,.privacy-dialog p{font-size:16px;line-height:1.6;margin:0 0 10px;max-width:70ch;color:#354d3c}
.privacy-notice a,.privacy-dialog a{color:#195a3a;font-size:16px;text-decoration:underline;text-underline-offset:4px;display:inline-block;padding-block:4px}
.privacy-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.privacy-notice>.privacy-actions{display:grid;align-content:center;min-width:170px}
.privacy-actions button,.privacy-dialog-heading button{appearance:none;box-sizing:border-box;min-height:44px;border:1px solid #53735e;border-radius:4px;background:#f7f8f1;color:#195a3a;font:600 16px/1.35 Arial,Helvetica,sans-serif;padding:11px 16px;cursor:pointer;text-align:center;transition:background-color .18s ease,border-color .18s ease}
.privacy-actions button:hover,.privacy-dialog-heading button:hover{background:#e3eddf;border-color:#1f6b45}
.privacy-actions button:active{background:#d8e7d3}
.privacy-actions .privacy-settings{border-color:transparent;text-decoration:underline;text-underline-offset:4px}
.privacy-actions [data-privacy-save]{background:#1f6b45;color:#fff}
.privacy-actions [data-privacy-save]:hover{background:#195a3a}
.privacy-notice :focus-visible,.privacy-dialog :focus-visible{outline:3px solid #1f6b45;outline-offset:4px}
.privacy-actions button:disabled{opacity:.55;cursor:not-allowed}
.privacy-dialog{padding:26px;width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 40px);border:1px solid #718676;border-radius:8px;overflow:auto;overscroll-behavior:contain;margin:auto;box-shadow:0 16px 64px #152b2233}
.privacy-dialog::backdrop{background:#142a205c}
.privacy-dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.privacy-dialog-heading button{display:grid;place-items:center;min-width:44px;padding:8px;margin-top:-5px;background:transparent}
.privacy-dialog section{padding:18px 0 10px;border-top:1px solid #a0b49e;min-height:0;width:auto;display:block}
.privacy-dialog h3,.privacy-option-heading strong{font-size:18px;line-height:1.4;margin:0;font-weight:600}
.privacy-option-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 10px;color:#17261d}
.privacy-option-heading small{display:block;font-size:14px;font-weight:400;color:#354d3c;margin-top:3px}
.privacy-option-heading>span:last-child:not(:first-child){font-size:14px;white-space:nowrap;color:#354d3c}
.privacy-dialog input[type=checkbox]{appearance:auto;accent-color:#1f6b45;inline-size:24px;block-size:24px;margin:10px;flex:none;cursor:pointer}
.privacy-dialog .privacy-storage-note{font-size:14px}
.privacy-signal{font-weight:600;color:#195a3a!important}
.privacy-feedback{position:fixed;z-index:1000;inset:auto 20px max(20px,env(safe-area-inset-bottom));margin:0 auto;max-width:620px;padding:12px 18px;border:1px solid #718676;border-radius:5px;box-shadow:0 5px 24px #152b2226}
@media(max-width:660px){.privacy-notice{inset-inline:12px;bottom:max(12px,env(safe-area-inset-bottom));grid-template-columns:1fr;padding:20px;gap:12px}.privacy-notice>.privacy-actions{grid-template-columns:1fr 1fr;min-width:0}.privacy-notice .privacy-settings{grid-column:1/-1}.privacy-notice h2,.privacy-dialog h2{font-size:21px}.privacy-actions button{padding-inline:10px}.privacy-dialog{padding:22px}.privacy-dialog>.privacy-actions{display:grid;grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.privacy-actions button{transition:none}}
@media print{.privacy-notice,.privacy-dialog,.privacy-feedback{display:none!important}}
