[data-holiday="halloween"] { --hw-web:#b8b0a0; }
[data-theme="light"][data-holiday="halloween"] { --hw-web:#6d625b; }
/* The seasonal artwork includes more detail and needs a larger square slot. */
[data-holiday="halloween"] img:is(.logo-l,.logo-d){width:44px!important;height:44px!important;object-fit:contain;flex-shrink:0}
.hw-corners,.hw-scene{pointer-events:none;user-select:none}
.hw-corners{position:absolute;inset:72px 0 auto;height:170px;overflow:hidden;z-index:2;color:var(--hw-web)}
.hw-web{position:absolute;top:0;width:145px;height:145px}.hw-web-left{left:0}.hw-web-right{right:0;transform:scaleX(-1)}
.hw-web svg,.hw-character svg,.hw-bat svg{display:block;width:100%;height:100%}
.hw-spider{position:absolute;right:63px;top:0;height:98px;width:1px;background:var(--hw-web);transform-origin:top;animation:hw-sway 7s ease-in-out infinite}
.hw-spider i{position:absolute;bottom:-9px;left:-7px;width:15px;height:18px;background:#998d9f;border-radius:50%}
.hw-spider i:before,.hw-spider i:after{content:'';position:absolute;inset:4px -6px;border-top:2px solid #998d9f;border-bottom:2px solid #998d9f;transform:rotate(25deg)}.hw-spider i:after{transform:rotate(-25deg)}

@keyframes hw-float{50%{transform:translateY(-7px) rotate(-3deg)}}@keyframes hw-sway{50%{transform:rotate(5deg)}}
@media(max-width:700px){.hw-corners{height:90px}.hw-web{width:74px;height:74px}.hw-spider{right:29px;height:54px}.hw-scene{margin-top:18px}.hw-scene-top{gap:10px}.hw-season{font-size:8px;letter-spacing:.15em}.hw-bat{width:38px}.hw-scene-bottom{height:102px}.hw-character{width:72px;height:86px}.hw-cat{width:67px;margin-right:-8px}.hw-pumpkin{width:83px}.hw-hat{width:54px;height:54px;margin-left:-28px;margin-bottom:37px}.hw-ghost{width:56px;margin-right:0}.hw-skeleton{width:72px}.hw-pumpkin-small{display:none}}
@media(prefers-reduced-motion:reduce){.hw-ghost,.hw-spider{animation:none}}
@media print{.hw-corners,.hw-scene{display:none}}
.hw-web{top:-1px}.hw-web-left{left:-1px}.hw-web-right{right:-1px}
.hw-box{position:relative;border-color:transparent!important;background:linear-gradient(135deg,#e58b2910,transparent 65%),var(--surface)!important}
.hw-box-web{position:absolute;right:0;top:0;width:54px;height:54px;transform:scaleX(-1);color:var(--hw-web);pointer-events:none;opacity:.65;overflow:hidden;border-top-left-radius:18px}
.hw-box-web svg{width:100%;height:100%}
.hw-step{position:relative;isolation:isolate;width:51px!important;height:55px!important;background:transparent!important;border-radius:0!important;font-size:19px!important;color:#30221b!important;line-height:1!important;padding-top:8px;box-sizing:border-box}
.hw-step-art{position:absolute;inset:0;z-index:-1;pointer-events:none}.hw-step-art svg{width:100%;height:100%}
.hw-stat{padding-right:96px!important}.hw-stat-friend{position:absolute;right:17px;bottom:17px;width:70px;height:70px;pointer-events:none}.hw-stat-friend svg{width:100%;height:100%}
.hw-store-card{border-color:transparent!important;transition:box-shadow .2s}
.hw-store-card:hover{box-shadow:0 4px 15px #0002}
.hw-store-detail{position:relative;background:linear-gradient(130deg,#d98b2610,transparent 75%)}
.hw-store-detail>div:first-child{padding-right:30px}
.hw-card-friend{position:absolute;right:10px;top:7px;width:31px;height:31px;pointer-events:none}.hw-card-friend svg{width:100%;height:100%}


/* A seamless fixed-scale pattern covers the page; soften it behind the reading column. */
body.hw-wallpaper-on{isolation:isolate}
body.hw-wallpaper-on>.r-wrap{background:transparent!important}
.hw-wallpaper{position:fixed;inset:0;z-index:-1;pointer-events:none;user-select:none;background-repeat:repeat;background-size:660px 610px;background-position:center 80px;opacity:.62;mask-image:linear-gradient(to right,#000 calc(50% - 640px),#0003 calc(50% - 560px),#0003 calc(50% + 560px),#000 calc(50% + 640px))}
[data-theme="dark"] .hw-wallpaper{opacity:.5}
@media(max-width:1279px){.hw-wallpaper{mask-image:none;opacity:.09}[data-theme="dark"] .hw-wallpaper{opacity:.09}}
@media print{.hw-wallpaper{display:none}}
