/* InMobi's supported #qc-cmp2-ui overrides. Keep its text, controls and consent logic. */
#qc-cmp2-main .qc-cmp-cleanslate {
    box-sizing: border-box;
    width: 100%;
    max-width: 100vw;
    padding: 20px;
    align-items: flex-end;
    justify-content: flex-end;
}
#qc-cmp2-ui {
    box-sizing: border-box;
    margin: 0;
    width: min(640px, 100%);
    max-width: 640px;
    max-height: calc(100dvh - 40px);
    display: flex;
    flex-direction: column;
    background: var(--bg-card, #111827);
    color: var(--text-main, #f8fafc);
    border: 1px solid var(--border, #334155);
    border-radius: 18px;
    box-shadow: 0 20px 80px #0005;
    font-family: var(--font, system-ui, sans-serif);
    overflow: hidden;
}
#qc-cmp2-ui .qc-cmp2-summary-section,
#qc-cmp2-ui .qc-cmp2-scrollable-section {
    min-height: 0;
    overflow-y: auto;
    background: transparent;
    padding: 0;
}
#qc-cmp2-ui .qc-cmp2-summary-section { max-height: 58dvh; }
#qc-cmp2-ui .qc-cmp2-consent-info { padding: 24px; background: transparent; color: var(--text-main); }
#qc-cmp2-ui .qc-cmp2-consent-info .description { max-height: 30dvh; overflow-y: auto; }
#qc-cmp2-ui .qc-cmp2-publisher-logo-container { margin: 0 0 16px; }
#qc-cmp2-ui .qc-cmp2-publisher-logo-container .privacy-logo-text { justify-content: flex-start !important; }
#qc-cmp2-ui .qc-cmp2-publisher-logo-container .span-heading {
    color: var(--text-main); font: 700 20px/1.35 var(--font); text-align: left;
}
#qc-cmp2-ui p, #qc-cmp2-ui .description, #qc-cmp2-ui .description div,
#qc-cmp2-ui .qc-cmp2-summary-info, #qc-cmp2-ui .qc-cmp2-summary-info p {
    color: var(--text-main); font: 400 14px/1.65 var(--font); text-align: left;
}
#qc-cmp2-ui .qc-cmp2-footer {
    flex-shrink: 0; position: static; padding: 16px 24px; margin: 0;
    background: var(--bg-card); border-top: 1px solid var(--border);
}
#qc-cmp2-ui .qc-cmp2-summary-buttons { display: flex; flex-wrap: wrap; gap: 12px; padding: 0; }
#qc-cmp2-ui button[mode="primary"], #qc-cmp2-ui button[mode="secondary"] {
    flex: 1; min-height: 44px; margin: 0; border-radius: 10px;
    border: 1px solid var(--accent); padding: 12px 16px; font: 700 14px/1.3 var(--font);
}
#qc-cmp2-ui button[mode="primary"] { background: var(--accent); color: var(--bg-main); }
#qc-cmp2-ui button[mode="secondary"] { background: var(--bg-card); color: var(--accent); }
#qc-cmp2-ui button[mode="link"], #qc-cmp2-ui a { color: var(--accent); }
#qc-cmp2-ui .qc-cmp2-list-item, #qc-cmp2-ui .qc-cmp2-list-item-header,
#qc-cmp2-ui .qc-cmp2-expandable { background: var(--bg-card); color: var(--text-main); border-color: var(--border); }
#qc-cmp2-ui .qc-cmp2-list-item-title, #qc-cmp2-ui .qc-cmp2-list-item-status { color: var(--text-main); }
#qc-cmp2-ui button:focus-visible, #qc-cmp2-ui a:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; }
#qc-cmp2-container #qc-cmp2-ui .qc-cmp2-summary-info,
#qc-cmp2-container #qc-cmp2-ui .qc-cmp2-summary-info *,
#qc-cmp2-container #qc-cmp2-ui .description,
#qc-cmp2-container #qc-cmp2-ui .description * { color: var(--text-main); }
#qc-cmp2-container #qc-cmp2-ui button[mode="link"],
#qc-cmp2-container #qc-cmp2-ui a { color: var(--accent); }
#qc-cmp2-container #qc-cmp2-ui:has(> .qc-cmp2-scrollable-section) {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    height: calc(100dvh - 40px);
}
#qc-cmp2-container #qc-cmp2-ui > .qc-cmp2-consent-info { max-height: 45dvh; overflow: auto; }
#qc-cmp2-container #qc-cmp2-ui .qc-cmp2-footer { position: static; height: auto; margin: 0; padding: 16px 24px; }
@media (max-width: 600px) {
    #qc-cmp2-main .qc-cmp-cleanslate { padding: 10px; }
    #qc-cmp2-ui { max-height: calc(100dvh - 20px); border-radius: 14px; }
    #qc-cmp2-ui .qc-cmp2-consent-info { padding: 18px; }
    #qc-cmp2-ui .qc-cmp2-footer { padding: 14px 18px; }
    #qc-cmp2-ui .qc-cmp2-summary-section { max-height: 58dvh; }
    #qc-cmp2-ui .qc-cmp2-summary-buttons { gap: 8px; }
    #qc-cmp2-container #qc-cmp2-ui:has(> .qc-cmp2-scrollable-section) { height: calc(100dvh - 20px); }
    #qc-cmp2-container #qc-cmp2-ui .qc-cmp2-footer { padding: 14px 18px; }
    #qc-cmp2-ui button[mode="primary"], #qc-cmp2-ui button[mode="secondary"] { min-width: 100px; padding: 12px 8px; }
}
