*, *::before, *::after { box-sizing: border-box; }
html { overflow-wrap: anywhere; }
body { min-width: 0; }
main, .container, .tool-container { min-width: 0; }
textarea { max-width: 100%; }
pre, .code-block { max-width: 100%; overflow-x: auto; overflow-wrap: normal; }
table { width: 100%; table-layout: fixed; }
th, td { overflow-wrap: anywhere; }
.button-group button, .browse-btn { background: #237332; color: white; }
.button-group button:hover, .browse-btn:hover { background: #1c602a; }
.button-group button:disabled { opacity: .55; cursor: default; }
.browse-btn { border: 0; border-radius: 4px; padding: 8px 14px; cursor: pointer; font: inherit; }
.status { min-height: 1.6em; color: #cfcfcf; }
.status.error { color: #ffb3b3; }
footer { max-width: 100%; }
.article-section a { color: #65c969; }
footer a { background: transparent; padding: 0; color: #65c969; }
.cookie-settings { background: transparent; color: #65c969; border: 1px solid #65c969; border-radius: 4px; padding: 8px 14px; cursor: pointer; }
button:focus-visible, a:focus-visible { outline: 2px solid #b3f0b6; outline-offset: 3px; }
#cookie-banner { position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999; background: #252525; border-top: 1px solid #65c969; padding: 16px 24px; color: #ddd; font: 14px/1.5 Arial, sans-serif; max-height: 80vh; overflow-y: auto; }
#cookie-banner p { margin: 0 0 12px; }
#cookie-banner a { color: #65c969; background: transparent; padding: 0; }
#cookie-banner button { background: #237332; color: white; border: 1px solid #65c969; padding: 8px 20px; margin-right: 8px; border-radius: 4px; cursor: pointer; }
@media (max-width: 600px) { body { padding: 12px; } th, td { padding: 8px; } }
