.fc-consent-settings { margin: 0 0 18px; }
.fc-consent-settings button { padding: 0; border: 0; background: none; color: var(--paper); font: inherit; text-decoration: underline; cursor: pointer; }
.fc-consent-panel { position: fixed; z-index: 20; bottom: 18px; right: 18px; width: min(620px, calc(100% - 36px)); max-height: 48vh; overflow-y: auto; padding: 22px; border: 1px solid var(--brass); border-radius: 5px; background: #241d16; color: var(--cream); box-shadow: 0 6px 28px #0008; font-size: 15px; line-height: 1.5; }
.fc-consent-panel[hidden], .fc-consent-settings[hidden] { display: none; }
.fc-consent-panel h2 { margin: 0 0 10px; font-size: 22px; line-height: 1.2; }
.fc-consent-panel p { margin: 0 0 10px; }
.fc-consent-panel a { color: var(--paper); text-decoration: underline; }
.fc-consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 16px; }
.fc-consent-actions button { min-height: 44px; padding: 10px 12px; border: 1px solid var(--brass); border-radius: 4px; background: var(--paper); color: #241c14; font: bold 14px/1.4 Arial, sans-serif; cursor: pointer; overflow-wrap: anywhere; }
.fc-consent-panel button:focus-visible, .fc-consent-panel a:focus-visible, .fc-consent-settings button:focus-visible { outline: 2px solid var(--brass); outline-offset: 3px; }
@media (max-width: 480px) { .fc-consent-panel { padding: 16px; bottom: 10px; right: 10px; width: calc(100% - 20px); } .fc-consent-actions { grid-template-columns: 1fr; } }
