#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: var(--cream, #f6f2e9); color: var(--ink, #171713); border-top: 3px solid var(--gold, #d6a52f);
            box-shadow: 0 -8px 32px rgba(0, 0, 0, .18);
            font: 400 14px/1.65 "DM Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        }
        #tx-cookie-banner[hidden] { display: none; }
        #tx-cookie-banner p { flex: 1 1 480px; margin: 0; }
        #tx-cookie-banner a { color: var(--ink, #171713); 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 var(--ink, #171713); border-radius: var(--radius, 8px);
            font: 700 14px/1.4 "DM Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; cursor: pointer;
        }
        #tx-cookie-banner .cookie-accept { background: var(--green, #244a3b); border-color: var(--green, #244a3b); color: #fff; }
        #tx-cookie-banner .cookie-decline { background: var(--cream, #f6f2e9); color: var(--ink, #171713); }
        #tx-cookie-banner .cookie-accept:hover { background: #1b392d; border-color: #1b392d; }
        #tx-cookie-banner .cookie-decline:hover { background: #eee7da; }
        #tx-cookie-banner button:focus-visible, #tx-cookie-banner a:focus-visible { outline: 3px solid var(--gold, #d6a52f); outline-offset: 4px; }
        #tx-cookie-banner #tx-cookie-error { flex-basis: 100%; color: var(--error, #a32921); }
        @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; }
        }

