/* Cart feedback and customer notification center. */
.cb-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cart-flight{position:fixed;z-index:180;pointer-events:none;background:#fff;border:1px solid #c8dbc9;border-radius:3px;padding:7px;box-shadow:0 10px 30px #103d182b;transform-origin:center;will-change:transform,opacity}
.cart-flight-photo{display:block;width:100%;height:100%;border-radius:2px}
.cart-flight-quantity{position:absolute;right:-7px;top:-9px;min-width:36px;padding:5px 8px;color:#fff;background:#124424;border:2px solid #fff;border-radius:3px;font:700 13px Arial,sans-serif;text-align:center}
#shop .add-button.just-added{background:#164b2a;color:#fff}
#shop .product-card.notification-target{outline:2px solid #65ac38;outline-offset:8px}

.notification-toggle{position:relative}
.notification-toggle[hidden]{display:none!important}
.notification-badge{position:absolute;top:0;right:-5px;min-width:18px;height:18px;display:grid;place-items:center;padding:0 4px;color:#fff;background:#2b8b1c;border:2px solid #fff;border-radius:20px;font:800 9px/1 Arial,sans-serif}
.notification-badge[hidden]{display:none}
.notification-toggle.has-new svg{animation:notice-bell .7s ease-out;transform-origin:50% 15%}
.notification-toggle[aria-expanded=true]{color:#35a921}

.notice-dialog,.notice-popup,.admin-page{--notice-color:#237b2f;--notice-ink:#0b0e0b;--notice-muted:#7a8290;--notice-border:#daddda;font-family:'Cannabus Body',Arial,sans-serif;line-height:1.35;color:var(--notice-ink)}
.notice-dialog{position:fixed;inset:90px 24px auto auto;z-index:160;width:min(580px,calc(100vw - 32px));height:min(840px,var(--notice-available-height,calc(100dvh - 114px)));max-height:var(--notice-available-height,calc(100dvh - 114px));margin:0;padding:0;overflow:hidden;border:2px solid #f2f4f1;border-radius:0;background:#fff;box-shadow:0 24px 64px rgba(4,13,6,.24)}
.notice-dialog[open]{display:flex;flex-direction:column;animation:notice-enter .24s ease-out}
.notice-heading{min-height:86px;padding:23px 28px 16px;display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:20px;color:#fff;background:#060a07}
.notice-heading>div{display:flex;align-items:center;flex-wrap:wrap;gap:18px}
.notice-heading h2{margin:0;color:#fff;font:900 2.05rem/1 'Cannabus Display',Arial,sans-serif;letter-spacing:.02em;text-transform:uppercase}
.notice-eyebrow{display:none}
.notice-unread-summary{margin:0;padding:8px 14px;color:#0b1309;background:#78e52d;font-size:.88rem;line-height:1;white-space:nowrap}
.notice-unread-summary b{font-weight:800}
.notice-close,.notice-dismiss{display:grid;place-items:center;flex:none;border:0;background:transparent;cursor:pointer}
.notice-close{width:42px;height:42px;color:#fff}
.notice-close:hover,.notice-close:focus-visible{color:#80ec38;background:#172018}
.notice-close svg,.notice-dismiss svg{width:27px;height:27px;stroke-width:1.5}
.notice-controls{min-height:58px;padding:0 27px;display:flex;flex:0 0 auto;align-items:stretch;justify-content:space-between;gap:18px;border-bottom:1px solid #222923;background:#060a07}
.notice-tabs{display:flex;align-items:stretch;gap:34px}
.notice-tabs button{position:relative;padding:0;border:0;background:none;color:#a9b1bd;font:800 .88rem/1 'Cannabus Display',Arial,sans-serif;text-transform:uppercase;cursor:pointer}
.notice-tabs button[aria-pressed=true]{color:#fff}
.notice-tabs button[aria-pressed=true]::after{content:'';position:absolute;left:0;right:0;bottom:8px;height:3px;background:#77e52d}
.notice-tabs b{margin-left:5px;color:inherit;font-size:.8rem}
.notice-mark-all{padding:0;border:0;background:none;color:#79e735;font-size:.86rem;cursor:pointer;white-space:nowrap}
.notice-mark-all svg{display:none}
.notice-mark-all:disabled{opacity:.45;cursor:default}
.notice-list{flex:1 1 0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#80a36e #eef2eb;background:#fff}
.notice-list::-webkit-scrollbar{width:8px}
.notice-list::-webkit-scrollbar-thumb{background:#80a36e;border:2px solid #eef2eb}
.notice-list::-webkit-scrollbar-track{background:#eef2eb}
.notice-card{--notice-color:#237b2f;position:relative;color:#0c100d;background:#fff}
.notice-new_product{--notice-color:#ed1f2b}
.notice-limited_edition{--notice-color:#8d2cff}
.notice-low_stock{--notice-color:#198b2d}
.notice-pre_order{--notice-color:#fa3f7b}
.notice-list .notice-card+.notice-card{border-top:1px solid #dfe3df}
.notice-meta{display:flex;align-items:center;gap:8px}
.notice-kind{display:inline-flex;align-items:center;gap:6px;color:var(--notice-color);font:900 .84rem/1.15 'Cannabus Display',Arial,sans-serif;text-transform:uppercase}
.notice-kind svg{display:none}
.notice-meta time{margin-left:auto;color:#7e899c;font-size:.78rem;white-space:nowrap}
.notice-preview{display:none}
.notice-content{display:flex;align-items:center;gap:20px}
.notice-thumb{display:grid;place-items:center;flex:none;overflow:hidden;border:1px solid #e0e3df;background:#080b09;object-fit:contain}
.notice-thumb .canna-photo{width:100%;height:100%;padding:5px;filter:drop-shadow(0 8px 10px rgba(0,0,0,.32))}
.notice-new_product .notice-thumb{background:radial-gradient(circle at 50% 58%,#a90008 0,#3b0004 46%,#090303 78%)}
.notice-limited_edition .notice-thumb{background:radial-gradient(circle at 50% 58%,#64128f 0,#190524 52%,#070307 80%)}
.notice-low_stock .notice-thumb{background:radial-gradient(circle at 50% 58%,#106929 0,#062411 52%,#030805 80%)}
.notice-pre_order .notice-thumb{background:radial-gradient(circle at 50% 58%,#8e0e53 0,#29051a 52%,#080306 80%)}
.notice-placeholder{color:var(--notice-color)}
.notice-placeholder svg{width:28px;height:28px}
.notice-copy{min-width:0;flex:1}
.notice-copy h3{margin:0;color:#0b0e0b;font:900 1.4rem/1.05 'Cannabus Display',Arial,sans-serif;letter-spacing:-.02em;overflow-wrap:anywhere}
.notice-copy p{margin:7px 0 0;color:#6f7887;font-size:1rem;overflow-wrap:anywhere}
.notice-view{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;background:none;color:#111;cursor:pointer}
.notice-view b{font:400 1.8rem/1 Arial,sans-serif}
.notice-read{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);border:0;padding:0}
.notice-empty{padding:58px 24px;text-align:center}
.notice-empty>svg{display:block;width:36px;height:36px;margin:0 auto 15px;color:#52804c}
.notice-empty h3{margin:0 0 9px;font-size:1.125rem}
.notice-empty p{max-width:270px;margin:0 auto;color:#778077;font-size:1rem}
.notice-footer{display:none}

/* The first event is a full product feature, exactly like the storefront reference. */
.notice-list .notice-card:first-child{min-height:242px;padding:14px 25px 20px}
.notice-list .notice-card:first-child .notice-meta{position:absolute;z-index:2;left:190px;right:26px;top:26px}
.notice-list .notice-card:first-child .notice-content{min-height:208px;display:grid;grid-template-columns:156px minmax(0,1fr);gap:24px}
.notice-list .notice-card:first-child .notice-thumb{width:156px;height:204px}
.notice-list .notice-card:first-child .notice-copy{padding-top:41px}
.notice-list .notice-card:first-child .notice-copy h3{font-size:2rem}
.notice-list .notice-card:first-child .notice-view{width:min(100%,278px);min-height:57px;margin-top:18px;padding:0 18px;justify-content:center;background:#050806;color:#fff;font:800 .92rem/1 'Cannabus Display',Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.notice-list .notice-card:first-child .notice-view b{margin-left:auto}
.notice-list .notice-card:first-child .notice-view:hover,.notice-list .notice-card:first-child .notice-view:focus-visible{background:#2f8c20}

/* Remaining events are compact, scannable rows. */
.notice-list .notice-card:not(:first-child){min-height:132px;padding:18px 26px}
.notice-list .notice-card:not(:first-child) .notice-meta{position:absolute;z-index:1;left:151px;right:27px;top:23px}
.notice-list .notice-card:not(:first-child) .notice-content{display:grid;grid-template-columns:124px minmax(0,1fr);gap:23px;align-items:center}
.notice-list .notice-card:not(:first-child) .notice-thumb{width:124px;height:96px}
.notice-list .notice-card:not(:first-child) .notice-copy{padding:30px 46px 0 0}
.notice-list .notice-card:not(:first-child) .notice-copy h3{font-size:1.38rem}
.notice-list .notice-card:not(:first-child) .notice-copy p{margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notice-list .notice-card:not(:first-child) .notice-view{position:absolute;right:19px;top:50%;width:44px;height:44px;margin:0;padding:0;transform:translateY(-24%)}
.notice-list .notice-card:not(:first-child) .notice-view span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.notice-list .notice-card:not(:first-child) .notice-view:hover{color:var(--notice-color);transform:translate(3px,-24%)}

/* Lightweight automatic popup; the same content is always retained in the center. */
.notice-popup{position:fixed;right:24px;bottom:24px;z-index:140;width:430px;max-width:calc(100vw - 32px);overflow:hidden;border:1px solid #c8d4c2;background:#fff;box-shadow:0 16px 52px rgba(15,43,18,.22);animation:notice-enter .32s cubic-bezier(.2,.7,.2,1)}
.notice-popup[hidden]{display:none}
.notice-popup .notice-card{padding:0 20px 20px}
.notice-popup .notice-meta{min-height:52px;margin:0 -20px 18px;padding:0 48px 0 20px;color:#fff;background:#070a08}
.notice-popup .notice-kind{color:#8ceb55}
.notice-popup .notice-meta time{display:none}
.notice-popup .notice-content{gap:16px}
.notice-popup .notice-thumb{width:92px;height:112px}
.notice-popup .notice-copy h3{font-size:1.25rem}
.notice-popup .notice-copy p{font-size:.92rem}
.notice-popup .notice-view{min-height:38px;margin-top:11px;padding:0 14px;background:#0a0e0b;color:#fff;font:800 .7rem/1 'Cannabus Display',Arial,sans-serif;text-transform:uppercase}
.notice-popup .notice-view b{margin-left:8px;font-size:1.1rem}
.notice-dismiss{position:absolute;top:8px;right:8px;width:36px;height:36px;color:#d4ddce}
.notice-dismiss:hover{color:#8dec54;background:#182019}
.notice-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--notice-color);transform-origin:left;animation:notice-progress var(--notice-duration,7s) linear forwards}
.notice-popup.is-paused .notice-progress{animation-play-state:paused}

.notice-dialog :focus-visible,.notice-popup :focus-visible,.notification-toggle:focus-visible{outline:2px solid #5cb638;outline-offset:3px}
@keyframes notice-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes notice-progress{to{transform:scaleX(0)}}
@keyframes notice-bell{0%,100%{transform:rotate(0)}25%{transform:rotate(16deg)}50%{transform:rotate(-13deg)}75%{transform:rotate(7deg)}}

@media(max-width:780px){
  .notice-dialog{inset:82px 10px auto;width:auto;max-width:none;height:calc(100dvh - 92px);max-height:none}
  .notice-heading{min-height:76px;padding:18px 17px 12px}
  .notice-heading h2{font-size:1.55rem}
  .notice-unread-summary{padding:7px 10px;font-size:.75rem}
  .notice-controls{min-height:54px;padding-inline:17px}
  .notice-tabs{gap:23px}
  .notice-list .notice-card:first-child{min-height:216px;padding:12px 16px 16px}
  .notice-list .notice-card:first-child .notice-meta{left:132px;right:17px;top:22px}
  .notice-list .notice-card:first-child .notice-content{min-height:185px;grid-template-columns:101px minmax(0,1fr);gap:15px}
  .notice-list .notice-card:first-child .notice-thumb{width:101px;height:170px}
  .notice-list .notice-card:first-child .notice-copy{padding-top:37px}
  .notice-list .notice-card:first-child .notice-copy h3{font-size:1.45rem}
  .notice-list .notice-card:first-child .notice-view{min-height:44px;margin-top:13px;font-size:.72rem}
  .notice-list .notice-card:not(:first-child){min-height:116px;padding:14px 16px}
  .notice-list .notice-card:not(:first-child) .notice-meta{left:112px;right:16px;top:17px}
  .notice-list .notice-card:not(:first-child) .notice-content{grid-template-columns:80px minmax(0,1fr);gap:16px}
  .notice-list .notice-card:not(:first-child) .notice-thumb{width:80px;height:88px}
  .notice-list .notice-card:not(:first-child) .notice-copy{padding:28px 34px 0 0}
  .notice-list .notice-card:not(:first-child) .notice-copy h3{font-size:1.08rem}
  .notice-list .notice-card:not(:first-child) .notice-copy p{font-size:.82rem}
  .notice-list .notice-card:not(:first-child) .notice-view{right:8px}
}

@media(max-width:430px){
  .notice-heading>div{gap:9px}
  .notice-heading h2{font-size:1.28rem}
  .notice-close{width:36px;height:36px}
  .notice-mark-all{font-size:.74rem}
  .notice-kind{max-width:155px;font-size:.68rem}
  .notice-meta time{font-size:.67rem}
  .notice-list .notice-card:first-child .notice-meta{left:118px}
  .notice-list .notice-card:first-child .notice-content{grid-template-columns:88px minmax(0,1fr)}
  .notice-list .notice-card:first-child .notice-thumb{width:88px;height:155px}
  .notice-list .notice-card:first-child .notice-copy h3{font-size:1.25rem}
}

@media(max-height:480px){
  .notice-dialog{overflow-y:auto;overscroll-behavior-y:contain}
  .notice-dialog .notice-heading{position:sticky;top:0;z-index:3}
  .notice-dialog .notice-controls{position:sticky;top:76px;z-index:3}
  .notice-dialog .notice-list{flex:none;overflow:visible}
}

@media(prefers-reduced-motion:reduce){
  .notice-dialog[open],.notice-popup,.notification-toggle.has-new svg,.notice-progress{animation:none}
  #shop .product-card.notification-target{scroll-behavior:auto}
}
