.tool-access-banner,.tool-access-dialog{--ta-ink:#153e4d;--ta-paper:#fffdf7;--ta-accent:#19584c;color:var(--ta-ink);background:var(--ta-paper);font-family:Inter,"Segoe UI",Arial,sans-serif;line-height:1.6}
.tool-access-banner{display:flex;gap:24px;align-items:center;justify-content:space-between;margin:24px auto;padding:24px 28px;border:1px solid #d8dfd6;border-radius:18px;box-shadow:0 8px 28px #153e4d09;max-width:1260px}.tool-access-banner strong{display:block;font-size:clamp(18px,2vw,24px);line-height:1.3}.tool-access-banner p{margin:8px 0 0;max-width:760px;font-size:13px;color:#48606a}.tool-access-eyebrow{display:block;font-size:10px;letter-spacing:.16em;font-weight:800;color:#597367;margin-bottom:8px}.tool-access-actions{display:flex;gap:10px;flex-wrap:wrap}.tool-access-button{appearance:none;cursor:pointer;border:1px solid #aebfb4;border-radius:9px;padding:11px 16px;background:#fffdf7;color:#153e4d;font:600 13px/1.35 Inter,"Segoe UI",Arial,sans-serif;min-height:44px;white-space:normal}.tool-access-button.primary{color:#fff;background:#19584c;border-color:#19584c}.tool-access-button:hover{filter:brightness(.96)}.tool-access-button:disabled{opacity:.5;cursor:not-allowed}.tool-access-button:focus-visible,.tool-access-close:focus-visible,.tool-access-dialog input:focus-visible{outline:3px solid #d6a958;outline-offset:3px}.tool-access-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:32px;border:1px solid #d8dfd6;border-radius:20px;box-shadow:0 24px 90px #071e2855;overflow:auto}.tool-access-dialog::backdrop{background:#071e28b3;backdrop-filter:blur(4px)}.tool-access-dialog h2{color:var(--ta-ink);font-size:28px;line-height:1.2;margin:10px 0 16px;max-width:490px}.tool-access-dialog h3{color:var(--ta-ink);font-size:17px;margin:0 0 8px}.tool-access-dialog p{font-size:14px;color:#48606a;margin:8px 0 16px}.tool-access-dialog label{display:block;font-size:13px;font-weight:650;margin:10px 0 6px}.tool-access-dialog input{display:block;box-sizing:border-box;width:100%;padding:12px;margin-bottom:14px;border:1px solid #aebfb4;border-radius:8px;background:#fff;color:#153e4d;font:inherit}.tool-access-close{position:absolute;inset-inline-end:16px;top:12px;border:0;background:transparent;color:#153e4d;font-size:28px;min-width:44px;min-height:44px;cursor:pointer}.tool-access-section{border-top:1px solid #d8dfd6;margin-top:24px;padding-top:22px}.tool-access-dialog .tool-access-status{margin-top:18px;font-weight:600;color:#19584c;min-height:24px}.tool-access-availability{padding:10px 14px;background:#edf3ed;border-radius:8px}
@media(max-width:700px){.tool-access-banner{flex-direction:column;align-items:stretch;margin:16px 0;padding:20px}.tool-access-dialog{padding:28px 20px}.tool-access-dialog h2{font-size:24px}.tool-access-banner .tool-access-actions{width:100%}.tool-access-banner button{flex:1}}
@media print{.tool-access-banner,.tool-access-dialog{display:none!important}}
.tool-access-banner{gap:18px;margin:16px auto;padding:16px 20px;border-radius:12px}.tool-access-banner>div:first-child{flex:1;min-width:0}.tool-access-banner strong{font-size:17px}.tool-access-banner p{font-size:11px;line-height:1.45;margin-top:5px}.tool-access-banner .tool-access-eyebrow{margin-bottom:4px;font-size:9px}.tool-access-banner>.tool-access-actions{flex:0 0 255px;gap:8px}.tool-access-banner .tool-access-button{font-size:11px;padding:10px 12px}.tool-access-banner .tool-access-actions button{flex:1}
@media(max-width:700px){.tool-access-banner{padding:16px;gap:12px}.tool-access-banner>.tool-access-actions{flex:auto}.tool-access-banner p{font-size:11px}.tool-access-banner strong{font-size:16px}}
[data-theme="dark"] .tool-access-banner,[data-theme="dark"] .tool-access-dialog{--ta-ink:#f0f4ff;--ta-paper:#101c34;color:var(--ta-ink);border-color:#334765;box-shadow:0 14px 50px #0003}
[data-theme="dark"] .tool-access-banner p,[data-theme="dark"] .tool-access-dialog p{color:#c0cde3}
[data-theme="dark"] .tool-access-eyebrow{color:#acbff1}
[data-theme="dark"] .tool-access-dialog input{background:#091326;color:#f0f4ff;border-color:#52698b}
[data-theme="dark"] .tool-access-button{background:#172642;color:#f0f4ff;border-color:#52698b}
[data-theme="dark"] .tool-access-button.primary{background:#7151ee;border-color:#7151ee;color:#fff}
[data-theme="dark"] .tool-access-close{color:#f0f4ff}
[data-theme="dark"] .tool-access-section{border-color:#334765}
[data-theme="dark"] .tool-access-availability{background:#192c49}
[data-theme="dark"] .tool-access-dialog .tool-access-status{color:#bcafff}
/* Legacy global resets remove the browser's centering margin on dialog. */
.tool-access-dialog{position:fixed;inset:0;margin:auto!important}

/* Shared two-method payment panel */
.payment-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;color:var(--h-ink,var(--ink,#153e4d))}.payment-methods .payment-method,.payment-methods .local-payment-notice{min-width:0;margin:0!important;padding:16px!important;border:1px solid var(--h-line,var(--line,#d8dfd6));border-radius:10px;background:var(--h-soft,var(--soft,#edf3ed));color:inherit}.payment-methods strong{font-size:14px;color:inherit}.payment-methods p{font-size:13px;line-height:1.6;color:inherit}.payment-methods form{margin-top:14px}.payment-methods input{max-width:100%;box-sizing:border-box}.payment-method-state{font-size:12px!important}.payment-methods button{width:100%}@media(max-width:700px){.payment-methods{grid-template-columns:1fr}}
