.consent-banner{display:none;position:fixed;z-index:9000;right:16px;bottom:16px;left:auto;width:440px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #e6e8ee;border-radius:14px;box-shadow:0 12px 40px #0f172a29;padding:20px;padding-bottom:max(20px,env(safe-area-inset-bottom));color:#1f2430;font-size:.9rem;line-height:1.55}.consent-banner.is-visible{display:block}.consent-banner h2.consent-title{margin:0 0 8px;font-size:1.02rem;font-weight:700;letter-spacing:.01em;color:#11151c}.consent-banner p.consent-desc{margin:0 0 12px;color:#4a5160}.consent-links{display:flex;flex-wrap:wrap;gap:4px 14px;margin-bottom:14px;font-size:.8rem}.consent-links a{color:#2d3a6d;text-decoration:underline;text-underline-offset:2px}.consent-links a:hover{color:#1b355f}.consent-links a:focus-visible{outline:2px solid #2d3a6d;outline-offset:2px;border-radius:3px}.consent-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.consent-actions .consent-btn{min-height:44px;padding:0 16px;border-radius:10px;font-size:.88rem;font-weight:600;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.consent-actions .consent-btn-primary{background:#2d3a6d;border:1px solid #2d3a6d;color:#fff;flex:1 1 auto}.consent-actions .consent-btn-primary:hover{background:#243056}.consent-actions .consent-btn-secondary{background:#fff;border:1px solid #c7ccd8;color:#1f2430;flex:1 1 auto}.consent-actions .consent-btn-secondary:hover{border-color:#2d3a6d;color:#2d3a6d}.consent-actions .consent-btn-text{background:transparent;border:none;color:#2d3a6d;padding:0 8px;text-decoration:underline;text-underline-offset:3px;font-weight:600}.consent-actions .consent-btn:focus-visible{outline:2px solid #2d3a6d;outline-offset:2px}.consent-dialog-wrap{display:none}.consent-dialog-wrap.is-open{display:block}.consent-backdrop{position:fixed;inset:0;z-index:9100;background:#0f172a73}.consent-dialog{position:fixed;z-index:9101;left:50%;bottom:0;transform:translate(-50%);width:100%;max-width:480px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -8px 40px #0f172a33;padding:22px 20px;padding-bottom:max(22px,env(safe-area-inset-bottom));color:#1f2430}.consent-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.consent-dialog h2.consent-dialog-title{margin:0;font-size:1.08rem;font-weight:700;color:#11151c}.consent-dialog-close{flex-shrink:0;width:36px;height:36px;min-height:36px;border-radius:8px;border:none;background:transparent;color:#5a6273;font-size:1.25rem;line-height:1;cursor:pointer}.consent-dialog-close:hover{background:#f1f3f7}.consent-dialog-close:focus-visible{outline:2px solid #2d3a6d;outline-offset:2px}.consent-dialog p.consent-dialog-desc{margin:0 0 16px;color:#4a5160;font-size:.86rem;line-height:1.6}.consent-category{border:1px solid #e6e8ee;border-radius:12px;padding:14px 16px;margin-bottom:12px}.consent-category-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.consent-category h3{margin:0;font-size:.94rem;font-weight:700;color:#11151c}.consent-category p{margin:0;color:#5a6273;font-size:.82rem;line-height:1.55}.consent-always-badge{flex-shrink:0;font-size:.72rem;font-weight:600;color:#4a5160;background:#eef0f4;border-radius:999px;padding:3px 10px;white-space:nowrap}.consent-switch{flex-shrink:0;position:relative;width:44px;height:26px;min-height:26px;padding:0;border:none;border-radius:999px;background:#c7ccd8;cursor:pointer;transition:background-color .15s ease}.consent-switch.is-on{background:#2d3a6d}.consent-switch-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .15s ease}.consent-switch.is-on .consent-switch-thumb{transform:translate(18px)}.consent-switch:focus-visible{outline:2px solid #2d3a6d;outline-offset:2px}.consent-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.consent-dialog-actions .consent-btn{min-height:44px;flex:1 1 140px;border-radius:10px;font-size:.88rem;font-weight:600;cursor:pointer}.consent-dialog-actions .consent-btn-primary{background:#2d3a6d;border:1px solid #2d3a6d;color:#fff}.consent-dialog-actions .consent-btn-primary:hover{background:#243056}.consent-dialog-actions .consent-btn-secondary{background:#fff;border:1px solid #c7ccd8;color:#1f2430}.consent-dialog-actions .consent-btn-secondary:hover{border-color:#2d3a6d;color:#2d3a6d}.consent-dialog-actions .consent-btn:focus-visible{outline:2px solid #2d3a6d;outline-offset:2px}.consent-footer-button{background:none;border:none;padding:0;margin:0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.consent-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.consent-footer-button:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:3px}@media(max-width:600px){.consent-banner{right:12px;left:12px;bottom:12px;width:auto;max-width:none;padding:18px}.consent-actions .consent-btn-primary,.consent-actions .consent-btn-secondary{flex:1 1 100%}}[dir=rtl] .consent-banner{right:auto;left:16px}[dir=rtl] .consent-dialog{transform:translate(50%)}[dir=rtl] .consent-switch.is-on .consent-switch-thumb{transform:translate(-18px)}@media(max-width:600px){[dir=rtl] .consent-banner{right:12px;left:12px}}@media(prefers-reduced-motion:reduce){.consent-banner,.consent-switch,.consent-switch-thumb,.consent-actions .consent-btn,.consent-dialog-actions .consent-btn{transition:none!important}}
