/* Shared paid-tool documentation drawer + run-button loading treatment */
.paid-doc-toolbar{display:flex;justify-content:flex-end;align-items:center;margin:0 0 14px}
.paid-doc-toolbar.is-wide{width:min(1160px,calc(100% - 40px));margin:20px auto 0}
.paid-doc-toolbar--work{width:100%;max-width:1160px;margin:0 auto 14px}
.paid-doc-open{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 15px;border:1px solid #cfd8d3;border-radius:11px;background:#fff;color:#18211c;font:800 12px Inter,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(20,35,28,.05);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.paid-doc-open:hover,.paid-doc-open:focus-visible{transform:translateY(-1px);border-color:#7ee7ad;box-shadow:0 10px 28px rgba(20,35,28,.09);outline:none}
.paid-doc-open b{font-size:15px;color:#258055}
.paid-doc-layer[hidden]{display:none!important}
.paid-doc-layer{position:fixed;inset:0;z-index:1000;display:grid;grid-template-columns:1fr min(680px,92vw);background:rgba(4,10,7,.54);backdrop-filter:blur(5px)}
.paid-doc-backdrop{min-width:0}
.paid-doc-panel{height:100vh;overflow:auto;background:#f7f8f7;color:#111714;border-left:1px solid #d9e0dc;box-shadow:-24px 0 70px rgba(0,0,0,.18);padding:30px 32px 42px}
.paid-doc-head{position:sticky;top:-30px;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:-30px -32px 22px;padding:30px 32px 20px;background:rgba(247,248,247,.96);backdrop-filter:blur(10px);border-bottom:1px solid #e1e6e3}
.paid-doc-head small{display:block;margin-bottom:6px;color:#39845d;font-weight:900;letter-spacing:.12em}
.paid-doc-head h2{margin:0;font:800 30px/1.05 Manrope,Inter,sans-serif;letter-spacing:-.03em}
.paid-doc-close{width:40px;height:40px;flex:0 0 40px;border:1px solid #d3dad6;border-radius:10px;background:#fff;color:#111714;font-size:22px;line-height:1;cursor:pointer}
.paid-doc-intro{margin:0 0 22px;color:#637068;font-size:14px;line-height:1.55}
.paid-doc-accordions{display:grid;gap:10px}
.paid-doc-accordion{border:1px solid #dde4e0;border-radius:12px;background:#fff;overflow:hidden}
.paid-doc-accordion summary{list-style:none;display:grid;grid-template-columns:32px 1fr auto;gap:12px;align-items:center;padding:15px 16px;cursor:pointer;font:800 15px Manrope,Inter,sans-serif;color:#111714}
.paid-doc-accordion summary::-webkit-details-marker{display:none}
.paid-doc-number{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#e8f8ef;color:#21764d;font:900 12px Inter,sans-serif}
.paid-doc-chevron{font-size:18px;color:#6f7b75;transition:transform .2s ease}
.paid-doc-accordion[open] .paid-doc-chevron{transform:rotate(180deg)}
.paid-doc-accordion-body{padding:0 14px 14px}
.paid-doc-list{display:grid;gap:8px}
.paid-doc-item{padding:13px 14px;border:1px solid #dde4e0;border-radius:11px;background:#f8faf9}
.paid-doc-item b{display:block;margin-bottom:4px;font-size:13px}
.paid-doc-item p{margin:0;color:#66736c;font-size:12px;line-height:1.52}
.paid-doc-method{margin-top:14px;padding:15px;border:1px solid #cdeedb;border-radius:12px;background:#e8f8ef;color:#2b5e43;font-size:12px;line-height:1.55}
.paid-doc-method b{color:#153e2a}
body.paid-doc-opened{overflow:hidden}
body:not(.light-theme) .paid-doc-open{background:#0d1713;border-color:#2d4036;color:#eef4f1;box-shadow:none}
body:not(.light-theme) .paid-doc-open b{color:#7ee7ad}
body:not(.light-theme) .paid-doc-layer{background:rgba(0,0,0,.68)}
body:not(.light-theme) .paid-doc-panel{background:#0b1511;color:#f4f7f5;border-left-color:#27372f}
body:not(.light-theme) .paid-doc-head{background:rgba(11,21,17,.96);border-bottom-color:#27372f}
body:not(.light-theme) .paid-doc-head small{color:#7ee7ad}
body:not(.light-theme) .paid-doc-close{background:#111f19;border-color:#2c4036;color:#f4f7f5}
body:not(.light-theme) .paid-doc-intro,body:not(.light-theme) .paid-doc-item p{color:#97a69e}
body:not(.light-theme) .paid-doc-accordion{background:#111f19;border-color:#293b32}
body:not(.light-theme) .paid-doc-accordion summary{color:#f4f7f5}
body:not(.light-theme) .paid-doc-number{background:#153826;color:#7ee7ad}
body:not(.light-theme) .paid-doc-chevron{color:#97a69e}
body:not(.light-theme) .paid-doc-item{background:#0e1a15;border-color:#293b32}
body:not(.light-theme) .paid-doc-method{background:#10291d;border-color:#245f40;color:#b8d9c7}
body:not(.light-theme) .paid-doc-method b{color:#e2f6ea}

/* Same moving-label loading effect used by Link Gap Analyzer */
.paid-run-button{position:relative!important;overflow:hidden!important}
.paid-run-button .paid-run-label-clone{display:none}
.paid-run-button:disabled{opacity:1!important;cursor:wait!important}
.paid-run-button:disabled .paid-run-label,.paid-run-button:disabled .paid-run-label-clone{display:block!important;position:absolute!important;top:50%!important;left:0!important;width:100%!important;margin:0!important;white-space:nowrap!important;text-align:center!important;will-change:transform;animation:paidRunSnakeOut var(--paid-run-duration,2.8s) linear infinite!important}
.paid-run-button:disabled .paid-run-label-clone{animation-name:paidRunSnakeIn!important}
.paid-run-button:disabled .paid-run-arrow{display:none!important}
@keyframes paidRunSnakeOut{from{transform:translate3d(0,-50%,0)}to{transform:translate3d(100%,-50%,0)}}
@keyframes paidRunSnakeIn{from{transform:translate3d(-100%,-50%,0)}to{transform:translate3d(0,-50%,0)}}
@media(min-width:821px){:root{--paid-run-duration:4.2s}}
@media(prefers-reduced-motion:reduce){.paid-run-button:disabled .paid-run-label,.paid-run-button:disabled .paid-run-label-clone{animation:none!important;transform:translate3d(0,-50%,0)!important}.paid-run-button:disabled .paid-run-label-clone{display:none!important}}
@media(max-width:700px){.paid-doc-layer{grid-template-columns:1fr}.paid-doc-backdrop{display:none}.paid-doc-panel{width:100%;height:100dvh;border-left:0;padding:22px 18px 30px}.paid-doc-head{top:-22px;margin:-22px -18px 18px;padding:22px 18px 16px}.paid-doc-head h2{font-size:25px}.paid-doc-accordion summary{grid-template-columns:30px 1fr auto;padding:13px 12px}.paid-doc-number{width:30px;height:30px}}

.paid-tool-topbar{display:flex;align-items:center;justify-content:space-between;min-height:42px;margin:0 0 28px}
.paid-tool-topbar--right{justify-content:flex-end}
.paid-tool-topbar .paid-doc-open{margin:0}
@media(max-width:700px){.paid-tool-topbar{margin-bottom:22px}}

/* Shared purchase pre-check — matches Link Gap Analyzer */
.paid-precheck-backdrop{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:24px;background:rgba(4,9,7,.72);backdrop-filter:blur(8px)}
.paid-precheck-backdrop[hidden]{display:none!important}
.paid-precheck{width:min(560px,100%);padding:26px;border:1px solid rgba(111,198,154,.34);border-radius:20px;background:#0b1511;color:#f4f6f5;box-shadow:0 28px 100px rgba(0,0,0,.38)}
.paid-precheck small{display:block;color:#7ee7ad;font-size:9px;font-weight:900;letter-spacing:.14em}
.paid-precheck h3{margin:9px 0 10px;font:800 28px/1.05 Manrope,Inter,sans-serif}
.paid-precheck p{margin:0;color:#aeb9b3;font-size:13px;line-height:1.6}
.paid-precheck-note{margin-top:13px!important;padding:12px 13px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(255,255,255,.03);color:#d8dfdb!important}
.paid-precheck-actions{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(240px,1.3fr);gap:10px;margin-top:20px}
.paid-precheck-actions button,.paid-precheck-actions a{min-height:46px;border-radius:11px;font:800 12px Inter,sans-serif;cursor:pointer}
.paid-precheck-actions button{border:1px solid rgba(255,255,255,.12);background:transparent;color:#fff}
.paid-precheck-actions a{display:flex;align-items:center;justify-content:center;padding:0 16px;background:#7ee7ad;color:#07100d;text-decoration:none}
body.light-theme .paid-precheck{background:#fff;color:#17211c;border-color:#cfe7d8}
body.light-theme .paid-precheck p{color:#68746d}
body.light-theme .paid-precheck-note{background:#f6faf7;color:#45534b!important;border-color:#dbe9e0}
body.light-theme .paid-precheck-actions button{color:#17211c;border-color:#cfd8d3;background:#fff}
@media(max-width:560px){.paid-precheck-actions{grid-template-columns:1fr}.paid-precheck h3{font-size:24px}}

/* Mobile paid tools: documentation stays available on larger screens only. */
@media(max-width:700px){
  .paid-doc-open,
  .paid-doc-toolbar,
  .paid-tool-topbar{
    display:none!important;
    min-height:0!important;
    margin:0!important;
  }
}
