.tv-consent{position:fixed;left:22px;bottom:22px;z-index:49;width:min(440px,calc(100vw - 44px));box-sizing:border-box;padding:18px 20px;background:#fff;color:#1c1c1e;border:1px solid #d8d8dc;border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.18);font:14px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;text-align:left}
.tv-consent[hidden],.tv-consent-main[hidden],.tv-consent-settings[hidden]{display:none}
.tv-consent h2{margin:0 0 8px;font-size:17px;line-height:1.3;color:#1c1c1e}
.tv-consent p{margin:0 0 12px}
.tv-consent a{color:inherit;text-decoration:underline}
.tv-consent-btns{display:flex;gap:10px;margin:0 0 12px}
.tv-consent button{flex:1 1 0;min-height:44px;padding:0 14px;border:1px solid #1c1c1e;border-radius:10px;background:#1c1c1e;color:#fff;font:inherit;font-weight:600;cursor:pointer}
.tv-consent .tv-consent-set{margin:0}
.tv-consent .tv-consent-set button{flex:none;min-height:0;padding:0;border:0;background:none;color:#1c1c1e;text-decoration:underline;font-weight:500}
.tv-consent-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;font-weight:600}
.tv-consent-row input{width:22px;height:22px;flex:none;accent-color:#1c1c1e;cursor:pointer}
.tv-consent-note{font-size:13px;color:#4a4a4f}
.tv-consent-reopen{display:inline-block;margin:8px 0;color:inherit;text-decoration:underline;font-size:14px;cursor:pointer}
.tv-consent-fixed{position:fixed;left:8px;bottom:8px;z-index:48;margin:0;padding:4px 8px;border-radius:6px;background:#fff;font-size:12px}
@media (max-width:640px){
.tv-consent{left:0;right:0;bottom:var(--tv-consent-lift,0px);width:auto;max-height:45vh;overflow:auto;border-radius:16px 16px 0 0;box-shadow:0 -8px 24px rgba(0,0,0,.16);padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px))}
}
