/* B-181: consent banner (non-modal, bottom sheet). Accept/Reject share one style = equal prominence. 44px targets. */
.consent-banner{position:fixed;inset-inline:12px;bottom:calc(12px + var(--app-tabbar-h,0px) + env(safe-area-inset-bottom,0px));z-index:2147483000;max-width:640px;margin-inline:auto;padding:16px 18px;border-radius:16px;background:#ffffff;color:#071b35;border:1px solid #c9d3e3;box-shadow:0 12px 32px rgba(7,27,53,.18);font:inherit;line-height:1.6}
.consent-banner[hidden]{display:none}
.consent-title{margin:0 0 6px;font-size:1.05rem;font-weight:700}
.consent-body{margin:0 0 8px;font-size:.95rem}
.consent-policy{display:inline-flex;align-items:center;min-height:44px;color:#0a3a7a;text-decoration:underline;text-underline-offset:3px}
.consent-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.consent-btn{flex:1 1 140px;min-height:44px;min-width:44px;padding:10px 18px;border-radius:12px;border:2px solid #0a3a7a;background:#0a3a7a;color:#ffffff;font:inherit;font-weight:700;cursor:pointer}
.consent-btn:hover{background:#082f63;border-color:#082f63}
.consent-btn:focus-visible,.consent-policy:focus-visible,.consent-settings:focus-visible{outline:3px solid #f2a900;outline-offset:2px}
.consent-status:empty,.consent-live:empty{display:none}
.consent-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.consent-settings{min-height:44px;background:none;border:0;padding:0;color:inherit;font:inherit;text-align:start;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
html[data-theme="night"] .consent-banner{background:#10213a;color:#f2f6fc;border-color:#2c4266;box-shadow:0 12px 32px rgba(0,0,0,.45)}
html[data-theme="night"] .consent-policy{color:#9cc3ff}
html[data-theme="night"] .consent-btn{background:#e8eef8;border-color:#e8eef8;color:#071b35}
html[data-theme="night"] .consent-btn:hover{background:#ffffff;border-color:#ffffff}
@media (prefers-reduced-motion:no-preference){.consent-banner{animation:consent-in .2s ease-out}@keyframes consent-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
