/* Feppy 1.0.15 — readable Lato cookies UI; isolated cookie preferences (independent of theme/Astra CSS). */
.feppy-consent-banner[hidden],.feppy-consent-overlay[hidden]{display:none}
.feppy-consent-banner,.feppy-consent-overlay,.feppy-consent-overlay *,.feppy-consent-banner *{box-sizing:border-box}
.feppy-consent-banner,.feppy-consent-overlay{font-family:'Lato','Segoe UI',Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.feppy-consent-banner{position:fixed;z-index:100010;bottom:18px;left:50%;transform:translateX(-50%);width:min(1050px,calc(100% - 32px));padding:24px 26px;display:grid;grid-template-columns:minmax(0,1fr) minmax(215px,262px);gap:30px;align-items:center;color:#f9f7ff;background:linear-gradient(120deg,#24153d,#130e26);border:1px solid rgba(116,244,204,.52);border-radius:18px;box-shadow:0 14px 55px rgba(23,13,43,.42)}
.feppy-consent-eyebrow{display:block;font-size:12px;line-height:1.45;font-weight:700;letter-spacing:.075em;color:#8bf2d0;margin-bottom:7px}
.feppy-consent-copy h2,.feppy-consent-dialog h2{font:900 clamp(20px,2.2vw,26px)/1.25 'Lato','Segoe UI',Arial,sans-serif;color:inherit;margin:0 0 9px}
.feppy-consent-copy p{font-size:14px;line-height:1.65;margin:0;color:#e2daec}
.feppy-consent-copy a,.feppy-consent-dialog a{color:#97f5d4;text-decoration:underline;text-underline-offset:3px}
.feppy-consent-actions,.feppy-consent-dialog-actions{display:grid;gap:9px}
button.feppy-consent-button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;width:100%;padding:10px 15px;border-radius:9px;border:1px solid transparent;cursor:pointer;font:700 14px/1.4 'Lato','Segoe UI',Arial,sans-serif;text-align:center;letter-spacing:0;box-shadow:none;transition:background .18s,border-color .18s,transform .18s}
button.feppy-consent-accept{background:#83efd0;color:#162d2b;border-color:#83efd0}
button.feppy-consent-reject{background:#fff;color:#271c40;border-color:#fff}
button.feppy-consent-customize{background:transparent;color:#f4efff;border-color:#a194b7}
button.feppy-consent-save{background:#83efd0;color:#162d2b;border-color:#83efd0}
button.feppy-consent-button:hover{transform:translateY(-1px);filter:brightness(.96)}
.feppy-consent-banner :focus-visible,.feppy-consent-overlay :focus-visible,.feppy-cookie-footer-link:focus-visible{outline:3px solid #42d9c1;outline-offset:3px}
.feppy431-shell .demo-footer button.feppy-cookie-footer-link{display:inline;border:0;padding:0;background:transparent;color:#8af1d1;font:inherit;line-height:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;box-shadow:none}
.feppy431-shell .demo-footer button.feppy-cookie-footer-link:hover{color:#fff;background:transparent}
.feppy-consent-overlay{position:fixed;z-index:100011;inset:0;display:flex;justify-content:center;align-items:center;padding:22px;background:rgba(12,8,23,.75);overflow-y:auto}
.feppy-consent-dialog{width:min(100%,610px);max-height:calc(100dvh - 44px);overflow:auto;background:#211735;color:#fcfaff;border:1px solid rgba(142,242,210,.55);border-radius:18px;box-shadow:0 20px 70px rgba(5,2,13,.45);padding:26px}
.feppy-consent-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
button.feppy-consent-close{flex:none;display:grid;place-items:center;width:38px;height:38px;min-height:38px;padding:0;border:1px solid #746589;border-radius:9px;background:transparent;color:#fff;font:27px/1 Arial,sans-serif;cursor:pointer;box-shadow:none}
.feppy-consent-dialog p{font-size:14px;line-height:1.65;color:#ded5eb;margin:10px 0 17px}
.feppy-consent-categories{display:grid;gap:9px;margin:16px 0 20px}
.feppy-consent-category{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#302342;padding:15px;border:1px solid #544164;border-radius:10px;color:#fff;cursor:pointer}
.feppy-consent-category:has(.feppy-consent-required){cursor:default}
.feppy-consent-category strong{display:block;font-size:15px;font-weight:700;line-height:1.45;margin:0 0 4px}
.feppy-consent-category small{display:block;font-size:13px;line-height:1.55;color:#d9d1e3}
.feppy-consent-required{flex:none;color:#91f2d3;font-weight:700;font-size:13px;letter-spacing:.01em;text-align:right}
.feppy-consent-category input[type=checkbox]{flex:none;accent-color:#70e8c5;cursor:pointer;width:21px;height:21px;margin:0}
.feppy-consent-dialog-actions{grid-template-columns:1fr 1fr;gap:9px}
.feppy-consent-dialog-actions .feppy-consent-save{grid-column:1/-1}
.feppy-consent-dialog .feppy-consent-policy{margin:15px 0 0;text-align:center}
body.feppy-consent-locked{overflow:hidden}
@media(max-width:680px){
 .feppy-consent-banner{bottom:0;left:0;transform:none;width:100%;max-height:85dvh;overflow:auto;padding:19px 18px calc(17px + env(safe-area-inset-bottom,0px));border-radius:17px 17px 0 0;grid-template-columns:1fr;gap:15px}
 .feppy-consent-copy h2{font-size:21px}
 .feppy-consent-copy p{font-size:14px}
 .feppy-consent-actions{grid-template-columns:1fr 1fr}
 .feppy-consent-actions .feppy-consent-customize{grid-column:1/-1}
 button.feppy-consent-button{min-height:47px;padding:9px;font-size:13px}
 .feppy-consent-overlay{align-items:center;padding:10px}
 .feppy-consent-dialog{max-height:calc(100dvh - 20px);padding:19px 16px}
 .feppy-consent-category{padding:12px;gap:10px}
 .feppy-consent-required{max-width:80px}
}
@media(max-width:370px){.feppy-consent-actions,.feppy-consent-dialog-actions{grid-template-columns:1fr}.feppy-consent-actions .feppy-consent-customize,.feppy-consent-dialog-actions .feppy-consent-save{grid-column:auto}}
@media(prefers-reduced-motion:reduce){button.feppy-consent-button{transition:none}button.feppy-consent-button:hover{transform:none}}
