/* welcome popup + side tab (isolated; remove the welcome.css link + welcome.js script before </body> on a page to disable) */
.wp{position:fixed;inset:0;z-index:200;display:flex;align-items:flex-end;justify-content:center;background:rgba(42,10,18,.55);padding:0 12px 12px;opacity:0;transition:opacity .2s}
.wp.on{opacity:1}
.wp[hidden]{display:none}
.wp .bx{position:relative;width:100%;max-width:400px;background:var(--cream,#fff4e4);color:var(--ink,#2a0a12);border:3px solid var(--ink,#2a0a12);border-radius:24px;box-shadow:6px 6px 0 var(--ink,#2a0a12);padding:22px 18px 18px;font-family:"DM Sans",Helvetica,sans-serif;transform:translateY(24px);transition:transform .25s}
.wp.on .bx{transform:none}
.wp .x{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;border:3px solid var(--ink,#2a0a12);background:var(--pink,#ff3d8b);color:var(--cream,#fff4e4);font-size:16px;font-weight:700;cursor:pointer;line-height:1}
.wp .ey{display:inline-block;background:var(--pink,#ff3d8b);color:var(--cream,#fff4e4);border:2px solid var(--ink,#2a0a12);border-radius:30px;padding:3px 12px;font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.wp h2{font-family:"Bowlby One",Impact,sans-serif;text-transform:uppercase;font-weight:400;font-size:28px;line-height:.95;color:var(--cherry,#d7193a);margin:10px 44px 6px 0}
.wp .sb{font-size:14.5px;margin-bottom:12px}
.wp ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px}
.wp li{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--ink,#2a0a12);border-radius:14px;padding:7px 9px;font-weight:700;font-size:13px;line-height:1.15}
.wp li.w{grid-column:1/-1}
.wp li i{flex:0 0 32px;height:32px;border-radius:50%;background:var(--blush,#ffc7dc);border:2px solid var(--ink,#2a0a12);display:flex;align-items:center;justify-content:center;font-style:normal;font-size:17px}
.wp li small{display:block;font-weight:500;font-size:11.5px}
.wp .oc{font-family:Shrikhand,cursive;font-size:15px;color:var(--pink,#ff3d8b);text-align:center;margin-bottom:12px}
.wp .btn{display:block;width:100%;text-align:center;font-size:16px;padding:13px 18px;box-shadow:4px 4px 0 var(--ink,#2a0a12)}
@media(min-width:700px){.wp{align-items:center}.wp .bx{max-width:440px;padding:26px 24px 22px}.wp h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.wp,.wp .bx{transition:none}}
.wp .alt{display:block;text-align:center;margin-top:10px;font-weight:700;font-size:14px;color:var(--ink,#2a0a12)}
/* side tab: shows after the popup is dismissed; reopens it */
.wtab{position:fixed;right:0;top:58%;z-index:150;display:flex;align-items:center;justify-content:center;width:32px;padding:12px 0;background:var(--pink,#ff3d8b);color:var(--cream,#fff4e4);border:3px solid var(--ink,#2a0a12);border-right:0;border-radius:14px 0 0 14px;box-shadow:-3px 3px 0 var(--ink,#2a0a12);font:400 12px/1 "Bowlby One",Impact,sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent}
.wtab span{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap}
.wtab[hidden]{display:none}
.wtab:hover{background:var(--cherry,#d7193a)}
.wtab:focus-visible{outline:3px solid var(--cherry,#d7193a);outline-offset:3px}
.wtab.in{animation:wtab-in .3s ease-out}
@keyframes wtab-in{from{transform:translateX(100%)}to{transform:none}}
@media(min-width:700px){.wtab{width:38px;font-size:13px;padding:16px 0;top:50%}}
@media print{.wtab{display:none}}
@media(prefers-reduced-motion:reduce){.wtab.in{animation:none}}
/* phones: compact, non-blocking bottom sheet (Nov 3 SEO: no full-screen interstitial). Desktop (>=700px) unchanged. */
@media(max-width:699px){
.wp{background:transparent;pointer-events:none;padding:0}
.wp .bx{pointer-events:auto;max-width:none;border-radius:20px 20px 0 0;border-bottom:0;box-shadow:0 -4px 0 var(--ink,#2a0a12);padding:12px 14px calc(12px + env(safe-area-inset-bottom))}
.wp .x{top:8px;right:8px;width:32px;height:32px;font-size:14px}
.wp .ey{font-size:10px;padding:2px 10px}
.wp h2{font-size:20px;margin:6px 40px 4px 0}
.wp .sb{font-size:13px;line-height:1.3;margin-bottom:8px}
.wp ul{display:flex;overflow-x:auto;gap:6px;margin:0 -14px 8px;padding:0 14px 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.wp ul::-webkit-scrollbar{display:none}
.wp li{flex:none;padding:4px 10px 4px 5px;font-size:12px;border-radius:30px;white-space:nowrap}
.wp li i{flex:0 0 24px;height:24px;font-size:12px}
.wp li small{display:inline;margin-left:4px;font-size:11px}
.wp .oc{font-size:13px;margin-bottom:8px}
.wp .btn{font-size:14px;padding:10px 14px}
.wp .alt{margin-top:7px;font-size:13px}
}
