/* Theme Showcase switcher. Self-contained: no theme variables, so it looks the same on every theme.
   It sits under cookie notices (1040) and drawers (1045) so it never covers their buttons.
   Dark look follows the site's own mode (data-bs-theme), the OS setting only when a theme sets none. */
.tsw{position:fixed;inset-block-end:var(--tsw-y,18px);z-index:1035;transition:inset-block-end .2s ease,inset-inline-start .2s ease,inset-inline-end .2s ease;font:500 14px/1.4 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#15171a}
.tsw--left{inset-inline-start:var(--tsw-x,18px)}.tsw--right{inset-inline-end:var(--tsw-x,18px)}
.tsw-toggle{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#15171a;color:#fff;border-radius:999px;cursor:pointer;list-style:none;box-shadow:0 6px 24px rgba(0,0,0,.25);user-select:none}
.tsw-toggle::-webkit-details-marker{display:none}
.tsw-toggle:focus-visible{outline:3px solid #ff5a1f;outline-offset:3px}
.tsw-dot{inline-size:9px;block-size:9px;border-radius:50%;background:#ff5a1f;box-shadow:0 0 0 3px rgba(255,90,31,.3)}
.tsw-toggle-label{font-weight:700}
.tsw-toggle-name{opacity:.7;max-inline-size:14ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tsw-panel{position:absolute;inset-block-end:calc(100% + 10px);inline-size:min(340px,calc(100vw - 36px));max-block-size:min(70vh,560px);overflow:auto;background:#fff;border:1px solid #e3e5e8;border-radius:14px;padding:16px;box-shadow:0 18px 50px rgba(0,0,0,.22)}
.tsw--left .tsw-panel{inset-inline-start:0}.tsw--right .tsw-panel{inset-inline-end:0}
.tsw-title{margin:0 0 2px;font-size:16px;font-weight:800}
.tsw-sub{margin:0 0 12px;color:#5d636b;font-size:13px}
.tsw-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tsw-item{display:flex;align-items:center;gap:12px;padding:8px;border:1px solid #e3e5e8;border-radius:10px;color:inherit !important;text-decoration:none !important;background:#fff}
.tsw-item:hover{border-color:#15171a}
.tsw-item.is-current{border-color:#ff5a1f;background:#fff6f2}
.tsw-thumb{flex:none;inline-size:72px;block-size:46px;border-radius:6px;overflow:hidden;background:#f1f2f4;display:grid;place-items:center}
.tsw-thumb img{inline-size:100%;block-size:100%;object-fit:cover;display:block}
.tsw-thumb-ph{font-weight:800;font-size:18px;color:#5d636b}
.tsw-meta{display:flex;flex-direction:column;min-inline-size:0;flex:1}
.tsw-meta strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tsw-meta small{color:#5d636b;font-size:12px}
.tsw-badge{flex:none;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px;background:#ff5a1f;color:#fff}
.tsw-foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tsw-reset,.tsw-buy{flex:1 1 auto;text-align:center;padding:9px 12px;border-radius:9px;font-weight:700;font-size:13px;text-decoration:none !important}
.tsw-reset{border:1px solid #d5d8dc;color:#15171a !important}
.tsw-buy{background:#ff5a1f;color:#fff !important}
:root[data-bs-theme="dark"] .tsw-panel{background:#1b1d21;border-color:#33363c;color:#eef0f2}
:root[data-bs-theme="dark"] .tsw-sub,:root[data-bs-theme="dark"] .tsw-meta small,:root[data-bs-theme="dark"] .tsw-thumb-ph{color:#a6abb2}
:root[data-bs-theme="dark"] .tsw-item{background:#1b1d21;border-color:#33363c}
:root[data-bs-theme="dark"] .tsw-item:hover{border-color:#eef0f2}
:root[data-bs-theme="dark"] .tsw-item.is-current{background:#2a1d17}
:root[data-bs-theme="dark"] .tsw-thumb{background:#26292e}
:root[data-bs-theme="dark"] .tsw-reset{border-color:#44484f;color:#eef0f2 !important}
@media (prefers-color-scheme:dark){
 :root:not([data-bs-theme]) .tsw-panel{background:#1b1d21;border-color:#33363c;color:#eef0f2}
 :root:not([data-bs-theme]) .tsw-sub,:root:not([data-bs-theme]) .tsw-meta small,:root:not([data-bs-theme]) .tsw-thumb-ph{color:#a6abb2}
 :root:not([data-bs-theme]) .tsw-item{background:#1b1d21;border-color:#33363c}
 :root:not([data-bs-theme]) .tsw-item:hover{border-color:#eef0f2}
 :root:not([data-bs-theme]) .tsw-item.is-current{background:#2a1d17}
 :root:not([data-bs-theme]) .tsw-thumb{background:#26292e}
 :root:not([data-bs-theme]) .tsw-reset{border-color:#44484f;color:#eef0f2 !important}
}
/* Edge tab: a vertical tab in the middle of the left or right edge, clear of every corner.
   Only from 1440px up (narrower pages reach the screen edge); below that the bottom corner of the same side is used. */
@media (min-width:1440px){
.tsw--edge{inset-block-end:auto;top:50%;transform:translateY(-50%)}
.tsw--edge.tsw--left{inset-inline-start:var(--tsw-x,14px)}.tsw--edge.tsw--right{inset-inline-end:var(--tsw-x,14px)}
.tsw--edge .tsw-toggle{writing-mode:vertical-rl;padding:14px 10px;gap:10px}
.tsw--edge.tsw--left .tsw-toggle{border-radius:999px;transform:rotate(180deg)}
.tsw--edge.tsw--right .tsw-toggle{border-radius:999px;transform:rotate(180deg)}
.tsw--edge .tsw-toggle-name{max-inline-size:none;max-block-size:12ch}
.tsw--edge .tsw-panel{inset-block-end:auto;top:50%;transform:translateY(-50%)}
.tsw--edge.tsw--left .tsw-panel{inset-inline-start:calc(100% + 10px)}
.tsw--edge.tsw--right .tsw-panel{inset-inline-end:calc(100% + 10px);inset-inline-start:auto}
}
@media (prefers-reduced-motion:reduce){.tsw{transition:none}}
@media print{.tsw{display:none}}
