/* This sticky region keeps its own space in the document flow. */
:root{--chibi-privacy-height:0px}
html{scroll-padding-bottom:calc(var(--chibi-privacy-height) + 16px)}
.chibi-privacy-notice{position:sticky;bottom:0;z-index:40;width:100%;margin:0;padding:12px max(20px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));border-top:1px solid #5b389733;background:#fff;color:#282131;box-shadow:0 -4px 20px #36204408;font:400 .8125rem/1.6 "Open Sans",Arial,sans-serif;letter-spacing:0;text-transform:none}
.chibi-privacy-notice[hidden]{display:none!important}
.chibi-privacy-notice__inner{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px 24px;width:min(1280px,100%);min-width:0;margin-inline:auto}
.chibi-privacy-notice .chibi-privacy-notice__text{min-width:0;margin:0;color:#60556d;font:inherit;letter-spacing:0;overflow-wrap:anywhere}
.chibi-privacy-notice .chibi-privacy-notice__link{display:flex;align-items:center;min-width:0;min-height:44px;max-width:100%;padding:5px 0;color:#5b3897;font:600 .8125rem/1.5 "Open Sans",Arial,sans-serif;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;overflow-wrap:anywhere}
.chibi-privacy-notice .chibi-privacy-notice__dismiss{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:44px;max-width:100%;padding:10px 20px;margin:0;border:1px solid #5b3897;border-radius:9px;background:#5b3897;color:#fff;font:600 .8125rem/1.5 "Open Sans",Arial,sans-serif;letter-spacing:0;text-transform:none;text-align:center;white-space:normal;overflow-wrap:anywhere;cursor:pointer;transition:background-color .15s,border-color .15s}
/* These controls already occupy the reserved bottom edge of the viewport. */
.chibi-privacy-notice :is(a,button){scroll-margin-bottom:calc(-1 * (var(--chibi-privacy-height) + 16px))}
.chibi-privacy-notice :is(a,button):focus-visible{outline:3px solid #5b3897;outline-offset:3px}
body>.toast{bottom:calc(var(--chibi-privacy-height) + 22px)}
body>.stop-hero-effect{bottom:calc(var(--chibi-privacy-height) + 18px)}
@media(hover:hover){.chibi-privacy-notice .chibi-privacy-notice__link:hover{color:#402368}.chibi-privacy-notice .chibi-privacy-notice__dismiss:hover{background:#452573;border-color:#452573}}
@media(max-width:767px){
 .chibi-privacy-notice{padding:12px max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}
 .chibi-privacy-notice__inner{display:flex;flex-wrap:wrap;gap:6px 16px}
 .chibi-privacy-notice .chibi-privacy-notice__text{flex:1 0 100%}
 .chibi-privacy-notice .chibi-privacy-notice__dismiss{padding-inline:18px;margin-left:auto}
 body>.toast{bottom:calc(var(--chibi-privacy-height) + 16px)}
 body>.stop-hero-effect{bottom:calc(var(--chibi-privacy-height) + 12px)}
}
/* Short viewports retain the notice in the flow instead of covering the page. */
@media(max-height:500px){.chibi-privacy-notice{position:static}}
@media(prefers-reduced-motion:reduce){.chibi-privacy-notice .chibi-privacy-notice__dismiss{transition:none}}
@media(forced-colors:active){.chibi-privacy-notice{background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none}.chibi-privacy-notice .chibi-privacy-notice__text{color:CanvasText}.chibi-privacy-notice .chibi-privacy-notice__link{color:LinkText}.chibi-privacy-notice .chibi-privacy-notice__dismiss{border-color:ButtonText;background:ButtonFace;color:ButtonText}.chibi-privacy-notice :is(a,button):focus-visible{outline-color:Highlight}}
