.privacy-toggle{position:fixed;left:20px;bottom:20px;left:max(20px,env(safe-area-inset-left));bottom:max(20px,env(safe-area-inset-bottom));z-index:1100;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid #b8cdc5;border-radius:50%;background:#153e35;color:#fff;box-shadow:0 4px 20px #153e3526;text-decoration:none;transition:background .15s}
.privacy-toggle:hover{background:#245848;color:#fff}.privacy-toggle:focus-visible,#privacy-panel :focus-visible,.legal-toc a:focus-visible{outline:3px solid #b85a23;outline-offset:4px}
#privacy-panel[hidden]{display:none!important}
#privacy-panel{position:fixed;inset:auto auto 84px 20px;left:max(20px,env(safe-area-inset-left));bottom:calc(84px + env(safe-area-inset-bottom));z-index:1100;box-sizing:border-box;width:410px;max-width:calc(100% - 40px);max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain;padding:24px;border:1px solid #c9d8d0;border-radius:20px;background:#fff;color:#203d35;box-shadow:0 12px 55px #14362c30;font-family:inherit;text-align:left;font-size:14px;line-height:1.6}
#privacy-panel *{box-sizing:border-box}#privacy-panel .privacy-top{display:flex;align-items:center;justify-content:space-between;gap:12px}#privacy-panel .privacy-eyebrow{color:#516b60;font-size:10px;letter-spacing:.12em;font-weight:700}#privacy-panel .privacy-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-height:36px;flex-shrink:0;padding:0;border:0;border-radius:50%;color:#203d35;background:#eff4ef;font-size:25px;cursor:pointer}
#privacy-panel h2{margin:10px 0 10px;padding:0;color:#153e35;font-size:24px;line-height:1.2;letter-spacing:-.035em;font-family:inherit;font-weight:700}#privacy-panel p{margin:0 0 14px;color:#465c53;font-size:14px;line-height:1.6}#privacy-panel strong{color:#203d35}#privacy-panel a{color:#153e35;text-decoration:underline;text-underline-offset:3px;font-weight:600}
#privacy-panel .privacy-details{margin:14px 0;border:1px solid #dce5de;border-radius:10px;background:#f5f8f4}#privacy-panel summary{padding:12px 14px;color:#203d35;font-size:13px;font-weight:600;cursor:pointer;list-style:disclosure-closed;display:list-item;margin-left:14px}#privacy-panel details[open] summary{list-style:disclosure-open}#privacy-panel summary::after{content:none}#privacy-panel .privacy-details>div{padding:4px 14px 0}#privacy-panel .privacy-details p{font-size:12px;overflow-wrap:anywhere}
#privacy-panel .privacy-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}#privacy-panel .privacy-actions>a{font-size:12px}#privacy-panel .privacy-confirm{padding:12px 16px;border:1px solid #153e35;border-radius:9px;background:#153e35;color:#fff;font-family:inherit;font-size:13px;font-weight:650;cursor:pointer;min-height:44px}#privacy-panel .privacy-confirm:hover{background:#245848}#privacy-panel .privacy-reset{border:1px solid #b5c9be;border-radius:8px;background:#fff;color:#203d35;padding:9px 10px;font:inherit;font-size:12px;cursor:pointer;white-space:normal;min-height:44px}#privacy-panel .privacy-feedback:not(:empty){padding-top:10px}#privacy-panel .privacy-footnote{font-size:11px;line-height:1.5;color:#5b7065;margin:14px 0 0}
.legal-summary{background:#edf3ed;border:1px solid #d3dfd5;border-radius:16px;padding:24px;margin:26px 0;color:#203d35}.legal-summary p:last-child{margin-bottom:0}.legal-summary strong{color:#153e35}.legal-toc{padding:24px;border:1px solid #d3dfd5;border-radius:16px;margin:28px 0 40px;background:#fff}.legal-toc strong{display:block;color:#153e35;margin-bottom:14px}.legal-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 26px;padding-left:22px;margin:0}.legal-toc a{font-size:14px;color:#244d40;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.legal-toc li{margin:0}.legal-document h2{scroll-margin-top:115px}.legal-document{overflow-wrap:anywhere}.legal-document h1{font-size:clamp(36px,6vw,62px);line-height:1.1;letter-spacing:-.045em}.legal-document p{line-height:1.85}.legal-document h2{margin-top:36px}.legal-storage{display:grid;gap:14px}.legal-storage>div{border:1px solid #d6e1d9;background:#f7f9f6;border-radius:12px;padding:18px}.legal-storage dt{font-weight:700;color:#153e35}.legal-storage dd{margin:6px 0 0;line-height:1.7}.legal-storage code{overflow-wrap:anywhere;white-space:normal}.legal-document .legal-tools{display:flex;gap:10px 22px;flex-wrap:wrap;padding:14px 0}.legal-document .legal-tools a{text-decoration:underline}
@media(max-width:600px){.privacy-toggle{left:12px;bottom:12px;bottom:max(12px,env(safe-area-inset-bottom));width:48px;height:48px}#privacy-panel{left:12px;bottom:calc(72px + env(safe-area-inset-bottom));max-width:calc(100% - 24px);max-height:calc(100dvh - 95px);padding:18px;border-radius:16px}#privacy-panel h2{font-size:22px}.legal-toc ol{grid-template-columns:1fr}.legal-toc,.legal-summary{padding:20px}}
@media print{#privacy-panel,.privacy-toggle,.legal-tools{display:none!important}.legal-toc{break-inside:avoid}.legal-document a{color:inherit}.legal-document h2{break-after:avoid}}
