#tx-cookie-banner {
            position: fixed; inset: auto 0 0; z-index: 9999; margin: 0;
            display: flex; align-items: center; flex-wrap: wrap; gap: 20px 32px;
            box-sizing: border-box; width: 100%; max-height: 80vh; overflow-y: auto;
            padding: 24px clamp(20px, 5vw, 76px);
            padding-bottom: max(24px, env(safe-area-inset-bottom));
            background: #fff; color: #18362f; border-top: 3px solid #d8b265;
            box-shadow: 0 -8px 32px rgba(0, 0, 0, .18);
            font: 400 14px/1.65 "Manrope", Arial, sans-serif;
        }
        #tx-cookie-banner[hidden] { display: none; }
        #tx-cookie-banner p { flex: 1 1 480px; margin: 0; }
        #tx-cookie-banner a { color: #18362f; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
        #tx-cookie-banner .cookie-actions { display: flex; flex-wrap: wrap; gap: 12px; }
        #tx-cookie-banner button {
            appearance: none; box-sizing: border-box; min-height: 48px; margin: 0;
            padding: 12px 20px; border: 2px solid #18362f; border-radius: 0;
            font: 700 14px/1.4 "Manrope", Arial, sans-serif; cursor: pointer;
        }
        #tx-cookie-banner .cookie-accept { background: #18362f; color: #fff; }
        #tx-cookie-banner .cookie-decline { background: #fff; color: #18362f; }
        #tx-cookie-banner .cookie-accept:hover { background: #254b42; }
        #tx-cookie-banner .cookie-decline:hover { background: #f4f1eb; }
        #tx-cookie-banner button:focus-visible, #tx-cookie-banner a:focus-visible { outline: 3px solid #d8b265; outline-offset: 4px; }
        #tx-cookie-banner #tx-cookie-error { flex-basis: 100%; color: #9c2525; }
        @media (max-width: 600px) {
            #tx-cookie-banner { padding: 18px; padding-bottom: max(18px, env(safe-area-inset-bottom)); gap: 16px; }
            #tx-cookie-banner .cookie-actions { width: 100%; }
            #tx-cookie-banner button { flex: 1 1 160px; }
        }
