ext-iframe{display:block;margin-block:1.5rem;max-width:100%}.embed-content,ext-iframe{position:relative;width:100%}.embed-content{border-radius:var(--radius-md);overflow:hidden}.embed{background:#e9edf2;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);box-sizing:border-box;display:block;height:auto;max-width:100%;object-fit:cover;width:100%}.embed,iframe.embed{aspect-ratio:16/9}.embed-placeholder{aspect-ratio:16/9;background:var(--color-primary-light);display:grid;min-height:220px;padding:2rem;place-items:center;width:100%}.consent,.embed-placeholder{border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-text);text-align:center}.consent{align-items:stretch;background:var(--color-surface);box-shadow:var(--shadow-md);display:flex;flex-direction:column;font-size:clamp(.875rem,2vw,1rem);gap:1rem;inset:50% auto auto 50%;max-height:calc(100% - 1.5rem);overflow-y:auto;padding:clamp(1rem,3vw,1.5rem);position:absolute;transform:translate(-50%,-50%);width:min(90%,500px);z-index:2}.consent.hidden,.consent[hidden]{display:none!important}.consent__message{margin:0}.consent p{margin-block:0}.action-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.action-buttons>button{background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-sm);color:#fff;cursor:pointer;flex:1 1 140px;font:inherit;font-weight:600;min-height:44px;padding:.65rem 1rem}.action-buttons>button:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.action-buttons>button[data-action=decline]{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.action-buttons>button[data-action=decline]:hover{background:var(--color-primary-light)}.action-buttons>button:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}@media (max-width:600px){.consent{gap:.75rem;padding:.875rem;width:calc(100% - 1rem)}.action-buttons{flex-direction:column}.action-buttons>button{flex-basis:auto;width:100%}}@media (prefers-reduced-motion:reduce){.action-buttons>button{transition:none}}