.site-header:has(.notice-ribbon:not([hidden])){flex-wrap:wrap;row-gap:0;padding-bottom:0}
.site-header .notice-ribbon{flex-basis:100%;min-width:0;min-height:44px;padding:8px 0;background:transparent;border-top:1px solid #ad96744d;color:var(--red);font-size:12px;font-weight:600;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shop-notice-dialog{position:fixed;width:min(900px,calc(100vw - 36px));max-width:none;max-height:calc(100svh - 40px);padding:28px;margin:auto;border:1px solid var(--line);color:var(--ink);background:var(--paper-light) url('assets/paper-texture.jpg');overflow:auto;box-shadow:0 25px 100px #100c0966;animation:notice-arrive .35s ease both}
.shop-notice-dialog::backdrop{background:#131a20ae;backdrop-filter:blur(5px)}
.notice-close{position:absolute;right:8px;top:6px;width:44px;height:44px;background:var(--paper-light);border-radius:50%;font:400 30px/1 var(--body);z-index:1}
.shop-notice-card{display:grid;grid-template-columns:1fr;gap:28px;min-width:0;padding-top:17px}
.shop-notice-card.has-picture{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center}
.shop-notice-picture{width:100%;height:auto;max-height:65svh;object-fit:contain;background:#ede1cb}
.shop-notice-copy{min-width:0;padding:10px 8px}
.notice-seal{font-size:10px;font-weight:600;letter-spacing:.16em;color:var(--red);padding-bottom:20px}
.shop-notice-copy h2{font:400 clamp(27px,3.2vw,42px)/1.35 var(--display);overflow-wrap:anywhere;margin-bottom:18px}
.shop-notice-message{font:400 14px/1.9 var(--body);white-space:pre-line;overflow-wrap:anywhere;color:#5c503f}
.shop-notice-dates{border-block:1px solid var(--line);padding:15px 0;margin-top:20px;font:500 12px/1.8 var(--body);white-space:pre-line}
.shop-notice-copy .text-link{font-size:11px;min-height:44px;margin-top:15px}
.notice-actions{display:flex;justify-content:center;border-top:1px solid var(--line);margin-top:24px;padding-top:22px}
@keyframes notice-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:700px){.site-header .notice-ribbon{font-size:10px}.shop-notice-dialog{padding:27px 17px 20px;max-height:calc(100svh - 28px);width:calc(100vw - 26px)}.shop-notice-card.has-picture{grid-template-columns:1fr;gap:15px}.shop-notice-picture{max-height:54svh}.shop-notice-copy{padding:0 3px}.shop-notice-copy h2{font-size:30px;margin-bottom:12px}.notice-seal{padding-bottom:10px}.shop-notice-message{font-size:13px}.notice-actions{margin-top:18px;padding-top:17px}}
@media(prefers-reduced-motion:reduce){.shop-notice-dialog{animation:none}.shop-notice-dialog::backdrop{backdrop-filter:none}}

/* Keep the dismissal action available while a long poster or message scrolls. */
.shop-notice-dialog[open]{display:flex;flex-direction:column;overflow:hidden}.shop-notice-dialog>.shop-notice-card{min-height:0;overflow-y:auto;overscroll-behavior:contain;align-content:start;padding-right:3px}.shop-notice-dialog>.notice-actions{flex:none}.shop-notice-dialog .shop-notice-picture{flex:none}@media(max-width:700px){.shop-notice-dialog::backdrop{backdrop-filter:none}.shop-notice-dialog>.notice-actions{margin-top:13px;padding-top:13px}}
