#pn-cookie-banner, #pn-cookie-settings { box-sizing: border-box; font: 14px/1.45 system-ui, sans-serif; color: #f5f5f6; }
#pn-cookie-banner[hidden], #pn-cookie-settings[hidden] { display: none !important; }
#pn-cookie-banner { position: fixed; z-index: 10000; bottom: 16px; left: 16px; right: 16px; margin: 0 auto; max-width: 860px; max-height: 70vh; overflow: auto; padding: 20px; background: #171b19; border: 1px solid #59685f; border-radius: 14px; box-shadow: 0 8px 40px #0008; display: flex; align-items: center; gap: 24px; }
#pn-cookie-banner strong { font-size: 16px; color: #fff; }
#pn-cookie-banner p { margin: 5px 0 0; font: inherit; color: #d4ded7; }
#pn-cookie-banner a { color: #73e3ab; text-decoration: underline; }
#pn-cookie-banner .pn-cookie-actions { display: flex; gap: 8px; flex-shrink: 0; }
#pn-cookie-banner button, #pn-cookie-settings { min-height: 44px; border: 1px solid #83978b; border-radius: 8px; background: #1d2922; padding: 10px 13px; cursor: pointer; font: inherit; color: #fff; text-transform: none; letter-spacing: normal; }
#pn-cookie-banner button:hover, #pn-cookie-settings:hover { background: #304a3b; }
#pn-cookie-banner button:focus-visible, #pn-cookie-settings:focus-visible { outline: 3px solid #73e3ab; outline-offset: 3px; }
#pn-cookie-settings { position: fixed; z-index: 9999; bottom: 8px; left: 8px; font-size: 12px; }
.pn-tool-next { margin: 28px 0; padding: 24px; border: 1px solid #345c47; background: #102219; border-radius: 16px; color: #f5f5f6; }
.pn-tool-next h2 { color: #f5f5f6; font-size: 22px; letter-spacing: -.4px; text-transform: none; margin: 0 0 10px; }
.pn-tool-next a { display: inline-block; padding: 11px 14px; margin: 6px 10px 0 0; border: 1px solid #73e3ab; border-radius: 8px; color: #73e3ab; }
@media (max-width: 700px) {
  #pn-cookie-banner { left: 8px; right: 8px; bottom: 8px; padding: 16px; display: block; }
  #pn-cookie-banner .pn-cookie-actions { margin-top: 12px; }
  #pn-cookie-banner button { flex: 1; }
}

/* Homepage: compact floating banner, one line of text plus two buttons. */
html.pn-cookie-open body { padding-bottom: 64px; }
html.pn-cookie-open #pn-cookie-banner { display: flex; align-items: center; gap: 10px; left: 6px; right: 6px; bottom: 6px; padding: 5px 8px; max-width: 860px; }
html.pn-cookie-open #pn-cookie-banner p { margin: 0; font-size: 12px; line-height: 1.3; flex: 1; }
html.pn-cookie-open #pn-cookie-banner strong { font-size: 12px; }
html.pn-cookie-open #pn-cookie-banner .pn-cookie-actions { margin: 0; gap: 6px; }
html.pn-cookie-open #pn-cookie-banner button { flex: none; min-height: 40px; padding: 4px 9px; font-size: 12px; }
@media (min-width: 701px) { html.pn-cookie-open .pn-cookie-long { display: inline; } }
@media (max-width: 700px) { html.pn-cookie-open .pn-cookie-long { display: none; } }
