/* Privacy & Cookie Manager */
:root{--pcm-accent:#1f1f1f;--pcm-text:#1f1f1f;--pcm-bg:#fff;--pcm-radius:14px;--pcm-muted:#6b6b6b;--pcm-border:#e6e3de}
.pcm-root{position:fixed;inset:0;z-index:2147483000;pointer-events:none;font-family:inherit;color:var(--pcm-text);font-size:15px;line-height:1.5}
.pcm-root[hidden]{display:none}
.pcm-root.pcm-open .pcm-backdrop{opacity:1}
.pcm-backdrop{position:absolute;inset:0;background:rgba(20,18,16,.35);opacity:0;transition:opacity .25s;pointer-events:auto}
.pcm-bottom .pcm-backdrop{background:transparent;pointer-events:none}
.pcm-banner,.pcm-modal-card{pointer-events:auto;background:var(--pcm-bg);border-radius:var(--pcm-radius);box-shadow:0 18px 50px rgba(0,0,0,.22),0 0 0 1px rgba(0,0,0,.04);padding:26px 28px 24px;position:relative;box-sizing:border-box}
.pcm-bottom .pcm-banner{position:absolute;left:20px;bottom:20px;width:min(440px,calc(100% - 40px));animation:pcm-up .35s ease}
.pcm-center .pcm-banner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100% - 32px));animation:pcm-in .3s ease}
.pcm-banner[hidden],.pcm-modal[hidden],.pcm-float[hidden]{display:none!important}
@keyframes pcm-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes pcm-in{from{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}
.pcm-logo{max-height:34px;max-width:180px;display:block;margin-bottom:14px}
.pcm-title{font-size:19px;font-weight:600;margin:0 0 8px;line-height:1.3;color:var(--pcm-text)}
.pcm-text{margin:0 0 10px;font-size:14px;color:var(--pcm-text);opacity:.85}
.pcm-links{margin:0 0 16px;font-size:13px}
.pcm-links a{color:var(--pcm-text);text-decoration:underline;text-underline-offset:3px}
.pcm-actions{display:flex;flex-wrap:wrap;gap:8px}
.pcm-btn{appearance:none;border:1.5px solid var(--pcm-accent);background:transparent;color:var(--pcm-accent);font:inherit;font-size:14px;font-weight:600;padding:10px 18px;border-radius:999px;cursor:pointer;transition:all .18s;line-height:1.2}
.pcm-btn:hover{transform:translateY(-1px)}
.pcm-btn-primary{background:var(--pcm-accent);color:#fff}
.pcm-btn-reject{background:transparent;color:var(--pcm-accent)}
.pcm-btn-ghost{border-color:transparent;text-decoration:underline;text-underline-offset:3px;padding-left:8px;padding-right:8px}
.pcm-x{position:absolute;top:10px;right:12px;width:34px;height:34px;border:0;background:transparent;color:var(--pcm-muted);font-size:26px;line-height:1;cursor:pointer;border-radius:50%}
.pcm-x:hover{background:rgba(0,0,0,.06);color:var(--pcm-text)}
.pcm-modal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;pointer-events:auto}
.pcm-modal-card{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;animation:pcm-in-plain .25s ease}
@keyframes pcm-in-plain{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.pcm-cats{display:flex;flex-direction:column;gap:10px;margin:14px 0 10px}
.pcm-cat{display:block;border:1px solid var(--pcm-border);border-radius:10px;padding:12px 14px;cursor:pointer}
.pcm-cat-head{display:flex;align-items:center;gap:10px}
.pcm-cat-name{font-weight:600;flex:1}
.pcm-always{font-size:12px;color:var(--pcm-muted)}
.pcm-cat input{position:absolute;opacity:0;width:0;height:0}
.pcm-switch{width:40px;height:22px;border-radius:999px;background:#d7d3cd;position:relative;transition:background .2s;flex:none}
.pcm-switch::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.pcm-cat input:checked+.pcm-switch{background:var(--pcm-accent)}
.pcm-cat input:checked+.pcm-switch::after{transform:translateX(18px)}
.pcm-cat input:disabled+.pcm-switch{opacity:.55}
.pcm-cat-desc{display:block;font-size:13px;color:var(--pcm-muted);margin-top:4px}
.pcm-float{position:fixed;left:16px;bottom:16px;width:44px;height:44px;border-radius:50%;border:0;background:var(--pcm-accent);color:#fff;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;pointer-events:auto;z-index:2147482999}
.pcm-float:hover{transform:scale(1.06)}
.pcm-placeholder{background:#f4f2ee;border:1px dashed #cfc9c0;border-radius:10px;padding:28px 20px;text-align:center;color:#3d3a36;font-size:14px;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;box-sizing:border-box}
.pcm-placeholder p{margin:0}
.pcm-policy table{width:100%;border-collapse:collapse;font-size:14px;margin:14px 0 24px}
.pcm-policy th,.pcm-policy td{border:1px solid #e3e0da;padding:9px 11px;text-align:left;vertical-align:top}
.pcm-policy th{background:#f6f4f0;font-weight:600}
.pcm-policy h2{margin-top:36px}
.pcm-policy h3{margin-top:24px}
.pcm-policy .pcm-meta{font-size:13px;color:#777;margin-bottom:20px}
@media (max-width:600px){
	.pcm-bottom .pcm-banner{left:10px;right:10px;bottom:10px;width:auto;padding:20px 18px 18px}
	.pcm-btn{flex:1 1 auto;text-align:center}
	.pcm-float{left:12px;bottom:12px;width:40px;height:40px}
}
@media (prefers-reduced-motion:reduce){.pcm-banner,.pcm-modal-card{animation:none}}
