#schoolCookiePanel {
    position: fixed; right: 20px; bottom: 20px; z-index: 1050;
    box-sizing: border-box; width: 360px; max-width: calc(100% - 32px);
    max-height: calc(100dvh - 32px); overflow-y: auto;
    padding: 18px 36px 18px 18px;
    background: rgba(242,220,249,.35);
    backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px);
    border: 1px solid rgba(255,255,255,.8); border-radius: 18px;
    box-shadow: 0 8px 28px rgba(43,22,80,.15);
    color: #2b1650; font: 10px/1.5 Arial,sans-serif; text-align: left;
}
#schoolCookiePanel[hidden] { display: none !important; }
#schoolCookiePanel strong { font-size: 12px; }
#schoolCookiePanel p { margin: 8px 0; font: inherit; color: inherit; }
#schoolCookiePanel a { color: #2b1650; text-decoration: underline; }
#schoolCookiePanel .cookie-actions { display: flex; flex-wrap: wrap; gap: 8px; }
#schoolCookiePanel button { cursor: pointer; font: inherit; color: #2b1650; }
#schoolCookiePanel .cookie-actions button {
    flex: 1 1 120px; min-height: 38px; padding: 8px;
    background: rgba(255,255,255,.7); border: 1px solid #896ee9; border-radius: 10px;
}
#schoolCookiePanel [data-cookie-close] {
    position: absolute; right: 4px; top: 4px; width: 32px; height: 32px;
    background: transparent; border: 0; padding: 0; font-size: 24px;
}
[data-cookie-settings] {
    display: inline-block; padding: 8px; margin-top: 10px; border: 0;
    background: transparent; color: #777; font: 12px Arial,sans-serif;
    text-decoration: underline; cursor: pointer;
}
#schoolCookiePanel button:focus-visible, [data-cookie-settings]:focus-visible {
    outline: 2px solid #2b1650; outline-offset: 2px;
}
@media (max-width: 480px) { #schoolCookiePanel { right: 16px; bottom: 16px; } }
