
    iframe[data-a2b-pending]{
      translate:-99999px 0 !important;
      clip-path:inset(100%) !important;
    }
    

	/* (a) Chat launcher: sirina se racuna iz sadrzaja, nikad iz roditelja,
	   i vezan je isključivo za desnu ivicu -- bez obzira gdje u DOM-u
	   zavrsi zbog neispravnog HTML-a u sadrzaju stranice. */
	#a2b-support-wrap{
		width:auto !important;
		max-width:none !important;
		min-width:0 !important;
		left:auto !important;
		right:18px !important;
		flex:0 0 auto !important;
	}
	@media (max-width:782px){
		#a2b-support-wrap{ right:14px !important; }
	}

	/* 3) ROZA BOJA GDJE NE TREBA.
	   IZMJERENO: u child temi (style.css, linija 182) stoji
	   --a2b-pink:#D946EF, a koristi se na TACNO jednom mjestu --
	   .a2b-trust-item--sec (red povjerenja, stavka "Secure Checkout").
	   To je jedina roza na sajtu i zato je iskakala iz brenda. Prebacuje
	   se na brend ljubicastu; varijabla u temi se ne dira da se ostalo
	   ne pomjeri. */
	.a2b-trust-item--sec{ --a2b-ac: var(--a2b-purple-l, #A855F7) !important; }

	/* 4) KUPON NA CHECKOUTU SE NE OTVARA GLATKO.
	   IZMJERENO: .woocommerce-form-coupon ima display:none i
	   transition:all. WooCommerce ga otvara jQuery slideToggle-om, koji
	   animira height i display u JS-u -- a CSS prelaz "all" u isto vrijeme
	   animira svoju verziju istih svojstava. Dvije animacije na istom
	   elementu se otimaju i to je ono trzanje. Prelaz se gasi i animacija
	   ostaje samo jedna (slideToggle). */
	form.woocommerce-form-coupon{
		transition:none !important;
		animation:none !important;
	}
	form.woocommerce-form-coupon,
	form.woocommerce-form-coupon *{
		will-change:auto !important;
	}
	

	.a2b-tip-box{
		position:fixed !important;
		width:min(308px, 100vw - 24px) !important;
		max-width:none !important;
		box-sizing:border-box !important;
		display:block !important;
		background:#0B0817 !important;
		color:#CFC6E8 !important;
		border:1px solid rgba(124,58,237,.4) !important;
		border-radius:11px !important;
		padding:13px 15px !important;
		font-size:12px !important;
		font-weight:400 !important;
		line-height:1.6 !important;
		text-align:left !important;
		letter-spacing:0 !important;
		text-transform:none !important;
		white-space:normal !important;
		box-shadow:0 18px 44px rgba(0,0,0,.55) !important;
		opacity:0 !important;
		visibility:hidden !important;
		pointer-events:none !important;
		transition:opacity .16s !important;
		z-index:2147483000 !important;
		transform:none !important;
		bottom:auto !important;
	}
	.a2b-tip-box.is-shown{
		opacity:1 !important;
		visibility:visible !important;
		pointer-events:auto !important;
	}
	.a2b-tip-box b{ color:#F1EEFF !important; font-weight:700 !important; }
	.a2b-tip-box::after{
		content:"" !important;
		position:absolute !important;
		top:100% !important;
		left:var(--a2b-tip-arrow,22px) !important;
		margin-left:-6px !important;
		border-width:6px !important;
		border-style:solid !important;
		border-color:rgba(124,58,237,.4) transparent transparent !important;
		border-image:none !important;
	}
	.a2b-tip-box.is-below::after{
		top:auto !important;
		bottom:100% !important;
		border-top-color:transparent !important;
		border-bottom-color:rgba(124,58,237,.4) !important;
	}
	/* Upitnik sam: vidljiv, klikabilan i ne lomi red u labeli. */
	.a2b-tip{ position:relative; display:inline-flex; align-items:center; }
	.a2b-tip-q{ cursor:help; }
	
.acc2buy-nl{background:var(--a2b-surface,#0F0B1A);border:1px solid var(--a2b-border-h,rgba(124,58,237,.45));border-radius:var(--radius,14px);padding:20px 22px;max-width:420px;font-family:var(--font-body,inherit)}.acc2buy-nl__head{font-family:var(--font-heading,inherit);font-size:15px;font-weight:800;color:var(--a2b-text,#F1EEFF);margin:0 0 12px}.acc2buy-nl__row{display:flex;gap:8px}.acc2buy-nl__row input{flex:1;background:var(--a2b-deep,#0A0713);border:1px solid var(--a2b-border,rgba(124,58,237,.2));border-radius:9px;padding:11px 13px;color:var(--a2b-text,#F1EEFF);font:inherit}.acc2buy-nl__row button{background:var(--a2b-purple,#7C3AED);color:#fff;border:0;border-radius:9px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}.acc2buy-nl__consent{display:flex;gap:8px;align-items:flex-start;margin:11px 0 0;font-size:11.5px;color:var(--a2b-muted,#8B7BAE);line-height:1.5}.acc2buy-nl__consent input{margin-top:2px}

    /* ============ 1. CARD BADGES — small, one line ============ */
    /* The row shows as many badges as genuinely fit, and hides the rest.
       flex-wrap lets a pill that has run out of room drop to a second line,
       and the fixed height clips that line away -- so the overflow is always
       a whole pill, never half a word. The browser therefore does the fitting
       at the reader's real window size, which is the only place the true
       width is known. */
    .a2b-card-tags{display:flex!important;flex-wrap:wrap!important;align-content:flex-start!important;
      column-gap:2px!important;row-gap:8px!important;height:22px!important;overflow:hidden!important;
      justify-content:flex-start!important;}
    .a2b-card-tags .a2b-pill{flex:0 0 auto!important;min-width:0!important;display:inline-flex!important;align-items:center!important;gap:2px!important;padding:2px 4px!important;border-radius:6px!important;font-size:10px!important;font-weight:600!important;line-height:1.35!important;white-space:nowrap!important;border:1px solid!important;background:transparent!important;letter-spacing:-.01em!important;}
    .a2b-card-tags .a2b-pill svg{width:8px!important;height:8px!important;min-width:8px!important;max-width:8px!important;flex-shrink:0!important;}
    .a2b-card-tags .a2b-pill-d{color:#6EE7B7!important;background:rgba(16,185,129,.12)!important;border-color:rgba(16,185,129,.30)!important;}
    .a2b-card-tags .a2b-pill-w{color:#FCD34D!important;background:rgba(245,158,11,.12)!important;border-color:rgba(245,158,11,.30)!important;}
    .a2b-card-tags .a2b-pill-s{color:#93C5FD!important;background:rgba(96,165,250,.12)!important;border-color:rgba(96,165,250,.30)!important;}
    /* one hue per promise, so the strip is scannable rather than decorative */
    .a2b-card-tags .a2b-pill-p{color:#C4B5FD!important;background:rgba(124,58,237,.14)!important;border-color:rgba(124,58,237,.34)!important;}
    .a2b-card-tags .a2b-pill-v{color:#5EEAD4!important;background:rgba(20,184,166,.12)!important;border-color:rgba(20,184,166,.30)!important;}
    .a2b-card-tags .a2b-pill-k{color:#A5B4FC!important;background:rgba(99,102,241,.13)!important;border-color:rgba(99,102,241,.32)!important;}
    .a2b-card-tags .a2b-pill-t{color:#FDE68A!important;background:rgba(234,179,8,.12)!important;border-color:rgba(234,179,8,.30)!important;}
    .a2b-card-tags .a2b-pill-n{color:#BEF264!important;background:rgba(132,204,22,.12)!important;border-color:rgba(132,204,22,.30)!important;}
    .a2b-card-tags .a2b-pill-l{color:#FCA5A5!important;background:rgba(239,68,68,.12)!important;border-color:rgba(239,68,68,.32)!important;}
    .a2b-card-tags .a2b-pill-r{color:#F0ABFC!important;background:rgba(217,70,239,.13)!important;border-color:rgba(217,70,239,.32)!important;}
    /* style.css pins only -d/-w/-s to their width; the new tones need the same
       or the category pill stops being the one that gives way. */
    .a2b-card-tags .a2b-pill:not(.a2b-pill-c){flex:0 0 auto!important;font-size:10px!important;padding:2px 4px!important;gap:2px!important;border-radius:5px!important;}
    /* the category is a different SHAPE, not just a different colour: a
       rounded grey chip against squared badges, so it reads as "what this
       is" rather than as one more promise. Set here because the theme CSS
       prints after style.css and would otherwise square it off again. */
    .a2b-card-tags .a2b-pill-c{border-radius:100px!important;font-size:11.5px!important;padding:2px 8px!important;
      color:#9A93AD!important;border-color:rgba(255,255,255,.14)!important;background:rgba(255,255,255,.04)!important;
      /* style.css pins every pill to 19px; the category is a size larger now, so
         it needs its own height or the taller text is clipped inside a 19px box. */
      height:21px!important;min-height:21px!important;}
    .a2b-card-tags .a2b-pill svg{width:8px!important;height:8px!important;min-width:8px!important;max-width:8px!important;}
    /* the strip spans the card instead of bunching left: measured, three
       pills fill 212px edge to edge with no label ever truncated. */
    /* packed left with an even gap -- space-between was what made three
       pills read as scattered across the card instead of as a row */
    .a2b-card-tags{justify-content:flex-start!important;}
    /* price and button share one line: the button was a full-width slab under
       the card and read as the loudest thing on a page of 24 cards. */
    .a2b-card-buy{display:flex!important;align-items:center!important;justify-content:space-between!important;
      gap:10px!important;width:100%!important;}
    .a2b-card-buy .a2b-card-price{flex:1 1 auto!important;min-width:0!important;}
    .a2b-card-buy .a2b-card-btn{width:auto!important;flex:0 0 auto!important;padding:10px 16px!important;
      font-size:13px!important;border-radius:9px!important;}
    @media(max-width:480px){
      .a2b-card-buy{flex-wrap:wrap!important;}
      .a2b-card-buy .a2b-card-btn{width:100%!important;}
    }
    /* 10px is sized for the full-width card. Below the content cap the card
       shrinks with the window, so the pills step down with it -- otherwise the
       row would quietly drop to two badges on a 1440 screen. Measured at every
       width: three badges minimum, never a clipped word. */
    @media(max-width:1599px){
      .a2b-card-tags .a2b-pill,
      .a2b-card-tags .a2b-pill:not(.a2b-pill-c){font-size:9px!important;padding:2px 4px!important;}
      .a2b-card-tags .a2b-pill svg{width:8px!important;height:8px!important;min-width:8px!important;max-width:8px!important;}
      .a2b-card-tags .a2b-pill-c{font-size:10.5px!important;padding:2px 7px!important;}
    }
    @media(max-width:1299px) and (min-width:961px){
      .a2b-card-tags .a2b-pill,
      .a2b-card-tags .a2b-pill:not(.a2b-pill-c){font-size:8.5px!important;padding:2px 3px!important;}
      .a2b-card-tags .a2b-pill svg{width:7px!important;height:7px!important;min-width:7px!important;max-width:7px!important;}
      .a2b-card-tags .a2b-pill-c{font-size:10px!important;padding:2px 6px!important;}
    }
    /* under 960 the grid drops to three columns, so the card is wide again */
    @media(max-width:960px){
      .a2b-card-tags .a2b-pill,
      .a2b-card-tags .a2b-pill:not(.a2b-pill-c){font-size:9.5px!important;padding:2px 4px!important;}
      .a2b-card-tags .a2b-pill svg{width:8px!important;height:8px!important;min-width:8px!important;max-width:8px!important;}
      .a2b-card-tags .a2b-pill-c{font-size:11px!important;padding:2px 7px!important;}
    }
    @media(max-width:600px){.a2b-card-tags .a2b-pill{font-size:8px!important;padding:2px 4px!important;gap:2px!important;}}

    /* ============ 2. RED "SALE" BADGE — discounted products only ============ */
    .a2b-sale-badge{position:absolute!important;top:9px!important;left:9px!important;z-index:6!important;display:inline-flex!important;align-items:center!important;gap:4px!important;
      background:linear-gradient(135deg,#FF2D3C,#DC2626)!important;color:#fff!important;font-family:var(--font-heading,inherit)!important;font-weight:800!important;
      font-size:10px!important;letter-spacing:.06em!important;line-height:1!important;padding:5px 10px!important;border-radius:20px!important;pointer-events:none!important;
      box-shadow:0 4px 14px rgba(239,68,68,.5)!important;text-transform:uppercase!important;}
    .a2b-sale-badge svg{width:10px!important;height:10px!important;flex-shrink:0!important;}
    /* the -% ribbon keeps the opposite corner so the two never collide */
    .acc2buy-ribbon{left:auto!important;right:9px!important;}
    /* category badge moves down when a SALE badge is present */
    li.a2b-product-card .a2b-sale-badge ~ .a2b-cat-badge{top:38px!important;}

    /* ============ 3. CONTACT-US PRODUCTS — no price, clean CTA ============ */
    .a2b-card-price--contact{color:#8B7BAE!important;font-family:var(--font-body,inherit)!important;font-size:12.5px!important;font-weight:600!important;letter-spacing:0!important;}
    .a2b-contact-cta{display:block!important;clear:both!important;width:100%!important;margin:16px 0 18px!important;}
    .a2b-contact-btn{width:auto!important;max-width:100%!important;}
    /* a contact product must not leave an empty price gap in the summary */
    body.single-product .entry-summary p.price:empty{display:none!important;margin:0!important;}

    /* ============ 4. REVIEWS TAB ============ */
    /* style.css section 11 hides the whole review system; put back only what
       is needed: the tab itself and the WRITE form. The list of reviews and
       the counts stay hidden (that is the ACC2BUY_SHOW_REVIEWS design), and
       the "There are no reviews yet." line is removed entirely. */
    .woocommerce-tabs ul.tabs li.reviews_tab,li.reviews_tab{display:block!important;visibility:visible!important;opacity:1!important;width:auto!important;height:auto!important;}
    #tab-reviews[style*="block"]{display:block!important;visibility:visible!important;opacity:1!important;}
    #tab-reviews #reviews,#tab-reviews .woocommerce-Reviews{display:block!important;visibility:visible!important;opacity:1!important;}
    #reviews #review_form,#reviews #respond,#respond .comment-form-rating,#reviews .comment-form-rating,.review_form_wrapper{display:block!important;visibility:visible!important;opacity:1!important;}
    #respond p.stars,#reviews .comment-form-rating p.stars{display:block!important;visibility:visible!important;opacity:1!important;}
    /* never show "There are no reviews yet." — reviews are collected, not shown */
    .woocommerce-noreviews,#reviews .woocommerce-noreviews,#reviews ol.commentlist,#comments > h2{display:none!important;}
    #reviews #comments{padding:0!important;margin:0!important;}

    /* ============ 5. CART DRAWER — two-row grid, always aligned ============ */
    /* Row 1: thumb + name. Row 2: stepper on the left, price hard-right. The
       stepper never shares a row with the name, so a long product title can
       never squeeze it — which is what broke the layout after removing an item. */
    .acc2buy-drawer__body ul.cart_list li,.acc2buy-drawer__body ul.product_list_widget li{
      display:grid!important;grid-template-columns:46px minmax(0,1fr)!important;
      grid-template-areas:"img name" "img qty"!important;
      column-gap:12px!important;row-gap:9px!important;align-items:center!important;
      padding:14px 24px 14px 0!important;position:relative!important;}
    .acc2buy-drawer__body li img{grid-area:img!important;align-self:start!important;width:46px!important;height:46px!important;margin:0!important;}
    .acc2buy-drawer__body li > a:not(.remove){grid-area:name!important;min-width:0!important;padding:0!important;}
    .acc2buy-drawer__body li .quantity,
    .acc2buy-drawer__body li .a2b-qty,
    .acc2buy-drawer__body li .a2b-qty--fixed{
      grid-area:qty!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;
      justify-content:flex-start!important;gap:0!important;margin:0!important;width:100%!important;}
    .acc2buy-drawer__body .a2b-qty .a2b-step{width:28px!important;height:28px!important;flex:0 0 28px!important;}
    /* v55.23 -- selector strengthened alongside the base .a2b-qty__n rule
       (acc2buy-seo-engine.php): that rule went from one class to
       .a2b-qty input.a2b-qty__n to beat the theme's input[type="text"]
       !important, which made it MORE specific than this drawer-only
       override was, and this 34px/28px size would have silently lost to
       the base rule's 32px/26px. Matched here so the drawer keeps its
       own, slightly larger, touch-friendlier size. */
    .acc2buy-drawer__body .a2b-qty input.a2b-qty__n{min-width:34px!important;width:34px!important;height:28px!important;flex:0 0 34px!important;}
    .acc2buy-drawer__body .a2b-qty__p{margin-left:auto!important;padding-left:12px!important;text-align:right!important;white-space:nowrap!important;font-size:13.5px!important;}
    .acc2buy-drawer__body li a.remove{top:16px!important;right:0!important;transform:none!important;}
    /* keep it identical after every AJAX fragment refresh (add / remove / qty) */
    .acc2buy-drawer__body.is-busy ul.cart_list li{opacity:.55!important;}
    /* ============ 6. LOGIN / REGISTER — Design 01 "split hero" ============
       v55.20 — replaces Design 03 (two glass cards side by side). Brand
       panel with the real logo on the left; a single tabbed form on the
       right. .a2b-auth-brand and .a2b-auth-tabs are new markup from the
       woocommerce_before_customer_login_form hook (acc2buy-seo-engine.php);
       everything under #customer_login is still WooCommerce's own real
       login/register forms, untouched -- the tabs only toggle which one
       is visible. */
    body.woocommerce-account:not(.logged-in) .woocommerce{
      display:grid!important;grid-template-columns:0.92fr 1.08fr!important;grid-template-rows:auto auto 1fr!important;
      max-width:980px!important;margin:46px auto 78px!important;padding:0!important;
      border:1px solid rgba(124,58,237,.22)!important;border-radius:20px!important;overflow:hidden!important;
      background:#0F0B1A!important;align-items:stretch!important;}
    /* left: brand panel, spans all three rows
       v55.22 -- "B" from a second round of samples: the logo did not read
       as designed sitting small at the top corner. Centred instead, large,
       with its own glow ring -- it is the hero of this panel now, quote
       and stats are supporting copy centred below it, not beside it. */
    .a2b-auth-brand{
      grid-column:1!important;grid-row:1/4!important;position:relative!important;
      background:
        radial-gradient(420px 240px at 15% 0%,rgba(168,85,247,.30),transparent),
        linear-gradient(165deg,#170D2E,#0A0714 72%)!important;
      padding:44px 34px!important;display:flex!important;flex-direction:column!important;
      align-items:center!important;justify-content:center!important;text-align:center!important;
      box-sizing:border-box!important;}
    .a2b-auth-brandmid{display:flex!important;flex-direction:column!important;align-items:center!important;}
    .a2b-auth-logowrap{position:relative!important;margin:0 0 22px!important;}
    .a2b-auth-logoglow{
      position:absolute!important;inset:-30px!important;
      background:radial-gradient(circle,rgba(168,85,247,.35),transparent 70%)!important;
      filter:blur(4px)!important;}
    .a2b-auth-logo{
      position:relative!important;width:104px!important;height:auto!important;
      filter:saturate(.55) drop-shadow(0 0 20px rgba(168,85,247,.55))!important;}
    .a2b-auth-badge{
      font-family:var(--font-heading,inherit)!important;font-weight:800!important;font-size:18px!important;color:#F1EEFF!important;
      letter-spacing:.02em!important;}
    .a2b-auth-quote{
      font-family:var(--font-heading,inherit)!important;font-size:20px!important;font-weight:700!important;line-height:1.35!important;
      color:#F1EEFF!important;}
    .a2b-auth-quote span{color:#C4B5FD!important;}
    .a2b-auth-stats{display:flex!important;justify-content:center!important;gap:24px!important;margin-top:22px!important;}
    .a2b-auth-stats div b{display:block!important;font-family:var(--font-heading,inherit)!important;font-size:20px!important;font-weight:800!important;color:#F1EEFF!important;}
    .a2b-auth-stats div span{font-size:11px!important;color:#8B7BAE!important;}
    /* row 1, right: a real login/register error (wrong password, duplicate
       email) lands here -- WooCommerce prints it as a sibling of the tabs
       and the form, not inside either, so it gets its own row instead of
       overlapping the tabs. Empty and 0-height the rest of the time. */
    body.woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-notices-wrapper{
      grid-column:2!important;grid-row:1!important;margin:24px 40px 0!important;}
    /* row 2, right: the tab switch
       v55.23 -- both tabs' own corner radius (was 7px) sat close against a
       10px outer radius with only 4px of padding between them -- close
       enough to read as pinched at the corner instead of a clean shape.
       Full pill on both the outer bar and the tabs themselves sidesteps
       that nesting math entirely: two concentric round shapes never pinch,
       whatever the padding between them is. */
    .a2b-auth-tabs{
      grid-column:2!important;grid-row:2!important;display:flex!important;gap:6px!important;
      background:#08060F!important;border:1px solid rgba(124,58,237,.22)!important;border-radius:999px!important;
      padding:4px!important;margin:24px 40px 0!important;}
    .a2b-auth-tab{
      flex:1!important;border:0!important;background:transparent!important;color:#8B7BAE!important;cursor:pointer!important;
      font-family:inherit!important;font-weight:700!important;font-size:12.5px!important;padding:9px 4px!important;border-radius:999px!important;}
    .a2b-auth-tab.active{background:linear-gradient(135deg,#A855F7,#7C3AED 55%,#4F46E5)!important;color:#fff!important;}
    /* bottom right: the form area */
    body.woocommerce-account:not(.logged-in) .u-columns,
    body.woocommerce-account:not(.logged-in) .col2-set,
    body.woocommerce-account:not(.logged-in) #customer_login{
      grid-column:2!important;grid-row:3!important;display:block!important;
      width:auto!important;max-width:none!important;margin:0!important;float:none!important;
      padding:26px 40px 44px!important;box-sizing:border-box!important;}
    body.woocommerce-account:not(.logged-in) .u-columns::before,
    body.woocommerce-account:not(.logged-in) .u-columns::after,
    body.woocommerce-account:not(.logged-in) .col2-set::before,
    body.woocommerce-account:not(.logged-in) .col2-set::after{display:none!important;}
    /* only one column shows at a time -- #customer_login.a2b-show-register (JS) flips it */
    .woocommerce-account .u-column2{display:none!important;}
    #customer_login.a2b-show-register .u-column1{display:none!important;}
    #customer_login.a2b-show-register .u-column2{display:block!important;}
    /* v55.20 -- the same flip, driven by body class instead of JS, so a
       failed Register submission (see the body_class filter, wp_footer
       section) shows the Register form -- with its own error notice -- on
       the very first paint. No flash of Login first: this is CSS, not a
       post-load JS correction. */
    body.a2b-auth-was-register #customer_login .u-column1{display:none!important;}
    body.a2b-auth-was-register #customer_login .u-column2{display:block!important;}
    body.a2b-auth-was-register .a2b-auth-tab[data-a2b-tab="login"]{background:transparent!important;color:#8B7BAE!important;}
    body.a2b-auth-was-register .a2b-auth-tab[data-a2b-tab="register"]{
      background:linear-gradient(135deg,#A855F7,#7C3AED 55%,#4F46E5)!important;color:#fff!important;}
    .woocommerce-account .u-column1,.woocommerce-account .u-column2{
      width:auto!important;max-width:none!important;float:none!important;margin:0!important;padding:0!important;}
    /* WooCommerce's own "Login"/"Register" <h2> is redundant now -- the
       tabs already say which one this is; the real heading is the PHP-
       injected .a2b-auth-formtitle below (woocommerce_login_form_start /
       woocommerce_register_form_start), which reads like a real headline
       instead of a bare word. */
    .woocommerce-account .u-column1 h2,.woocommerce-account .u-column2 h2{display:none!important;}
    .a2b-auth-formtitle{
      font-family:var(--font-heading,inherit)!important;font-size:1.3rem!important;font-weight:800!important;color:#F1EEFF!important;
      margin:0 0 6px!important;}
    .a2b-auth-k{font-size:13px!important;color:#8B7BAE!important;margin:0 0 24px!important;}
    /* green perk row on the register form */
    .a2b-auth-perk{display:flex!important;align-items:center!important;gap:8px!important;font-size:12px!important;
      color:#6EE7B7!important;background:rgba(16,185,129,.10)!important;border:1px solid rgba(16,185,129,.22)!important;
      border-radius:9px!important;padding:9px 12px!important;margin:0 0 18px!important;font-weight:600!important;}
    .a2b-auth-perk svg{flex-shrink:0!important;}
    .woocommerce form.login,.woocommerce form.register{
      background:transparent!important;border:0!important;padding:0!important;margin:0!important;max-width:none!important;}
    .woocommerce-account form .form-row{margin:0 0 16px!important;padding:0!important;width:100%!important;float:none!important;}
    .woocommerce-account form .form-row label{display:block!important;font-size:11.5px!important;font-weight:600!important;color:#B9AEDC!important;text-transform:none!important;letter-spacing:0!important;margin:0 0 8px!important;}
    .woocommerce-account form input.input-text,.woocommerce-account form input[type=text],
    .woocommerce-account form input[type=email],.woocommerce-account form input[type=password]{
      width:100%!important;height:50px!important;background:#08060F!important;border:1px solid rgba(124,58,237,.22)!important;
      border-radius:10px!important;padding:0 15px!important;color:#F1EEFF!important;font-size:14px!important;box-sizing:border-box!important;}
    .woocommerce-account form input:focus{border-color:#7C3AED!important;box-shadow:0 0 0 3px rgba(124,58,237,.18)!important;outline:none!important;}
    .woocommerce-account .password-input{display:block!important;position:relative!important;width:100%!important;}
    .woocommerce-account .show-password-input{position:absolute!important;right:14px!important;top:50%!important;transform:translateY(-50%)!important;}
    .woocommerce-form-login__rememberme{display:flex!important;align-items:center!important;gap:8px!important;margin:2px 0 18px!important;font-size:13px!important;color:#8B7BAE!important;}
    .woocommerce-form-login__rememberme input{width:auto!important;height:auto!important;margin:0!important;}
    .woocommerce-form-login__submit{
      width:100%!important;background:linear-gradient(135deg,#A855F7,#7C3AED 55%,#4F46E5)!important;color:#fff!important;border:0!important;
      border-radius:10px!important;padding:14px!important;font-weight:700!important;font-size:15px!important;
      box-shadow:0 6px 20px rgba(124,58,237,.4)!important;transition:transform .15s!important;margin:0!important;}
    .woocommerce-form-register__submit{
      width:100%!important;background:linear-gradient(135deg,#A855F7,#7C3AED 55%,#4F46E5)!important;color:#fff!important;border:0!important;
      border-radius:10px!important;padding:14px!important;font-weight:700!important;font-size:15px!important;
      box-shadow:0 6px 20px rgba(124,58,237,.4)!important;margin:0!important;transition:transform .15s!important;}
    .woocommerce-form-register__submit:hover,.woocommerce-form-login__submit:hover{transform:translateY(-1px)!important;}
    .woocommerce-account .woocommerce-privacy-policy-text p,.woocommerce-account form.register p:not(.form-row):not(.a2b-auth-k){
      font-size:12.5px!important;color:#8B7BAE!important;line-height:1.6!important;margin:0 0 16px!important;}
    .woocommerce-account .lost_password{margin:14px 0 0!important;font-size:13px!important;}
    .woocommerce-account .lost_password a{color:#A855F7!important;}
    @media(max-width:860px){
      body.woocommerce-account:not(.logged-in) .woocommerce{grid-template-columns:1fr!important;grid-template-rows:auto auto auto auto!important;}
      .a2b-auth-brand{grid-column:1!important;grid-row:1!important;}
      body.woocommerce-account:not(.logged-in) .woocommerce > .woocommerce-notices-wrapper{grid-column:1!important;grid-row:2!important;margin:24px 24px 0!important;}
      .a2b-auth-tabs{grid-column:1!important;grid-row:3!important;margin:24px 24px 0!important;}
      body.woocommerce-account:not(.logged-in) .u-columns,
      body.woocommerce-account:not(.logged-in) .col2-set,
      body.woocommerce-account:not(.logged-in) #customer_login{grid-column:1!important;grid-row:4!important;padding:20px 24px 30px!important;}
    }
    /* plugin's own trust strip at the top of cart/checkout — owner wants only our chips */
    body.woocommerce-checkout .acc2buy-trust-strip,body.woocommerce-cart .acc2buy-trust-strip{display:none!important;}

    /* ============ 7. CHECKOUT — Design 04 "split panel, dark summary rail" ============ */
    body.woocommerce-checkout .woocommerce{max-width:none!important;margin:0!important;padding:0 20px!important;}
    /* the FORM carries the width, so a full-width theme wrapper can never stretch it */
    body.woocommerce-checkout form.checkout,body.woocommerce-checkout form.woocommerce-checkout{
      display:grid!important;grid-template-columns:minmax(0,1fr) 372px!important;
      grid-template-areas:"notice notice" "details head" "details review"!important;
      gap:0!important;width:100%!important;max-width:1080px!important;margin:38px auto 78px!important;
      border:1px solid rgba(124,58,237,.20)!important;border-radius:18px!important;overflow:hidden!important;
      background:#0F0B1A!important;align-items:stretch!important;float:none!important;}
    body.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup,body.woocommerce-checkout form.checkout > .woocommerce-notices-wrapper{grid-area:notice!important;padding:0 30px!important;}
    /* LEFT: details + payment, spans both rows */
    body.woocommerce-checkout #customer_details{
      grid-area:details!important;float:none!important;width:auto!important;min-width:0!important;
      background:#0F0B1A!important;border:0!important;border-radius:0!important;padding:30px!important;box-sizing:border-box!important;}
    body.woocommerce-checkout #customer_details .col-1,body.woocommerce-checkout #customer_details .col-2{width:100%!important;float:none!important;margin:0!important;padding:0!important;}
    body.woocommerce-checkout #customer_details .col2-set::before,body.woocommerce-checkout #customer_details .col2-set::after{display:none!important;}
    /* RIGHT: the dark summary rail */
    body.woocommerce-checkout #order_review_heading{
      grid-area:head!important;margin:0!important;padding:30px 28px 0!important;
      background:#110B20!important;border:0!important;border-left:1px solid rgba(124,58,237,.20)!important;border-radius:0!important;
      font-family:var(--font-heading,inherit)!important;font-size:1.05rem!important;font-weight:800!important;box-sizing:border-box!important;}
    body.woocommerce-checkout #order_review{
      grid-area:review!important;margin:0!important;padding:16px 28px 30px!important;
      background:#110B20!important;border:0!important;border-left:1px solid rgba(124,58,237,.20)!important;border-radius:0!important;box-sizing:border-box!important;}
    /* headings inside the left panel */
    body.woocommerce-checkout #customer_details h3,body.woocommerce-checkout .woocommerce-additional-fields h3{
      font-family:var(--font-heading,inherit)!important;font-size:1.02rem!important;font-weight:800!important;color:#F1EEFF!important;
      margin:0 0 18px!important;padding:0 0 13px!important;border-bottom:1px solid rgba(124,58,237,.14)!important;}
    body.woocommerce-checkout .woocommerce-additional-fields{margin-top:26px!important;}
    /* fields */
    body.woocommerce-checkout form.checkout .form-row{width:100%!important;float:none!important;margin:0 0 15px!important;padding:0!important;}
    body.woocommerce-checkout form.checkout .form-row-first,body.woocommerce-checkout form.checkout .form-row-last{width:100%!important;}
    @media(min-width:700px){
      body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0 14px!important;}
      body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row{grid-column:1 / -1!important;}
      body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > #billing_first_name_field{grid-column:1!important;}
      body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > #billing_last_name_field{grid-column:2!important;}
    }
    body.woocommerce-checkout form .form-row label{display:block!important;font-size:11.5px!important;font-weight:600!important;color:#B9AEDC!important;text-transform:none!important;letter-spacing:0!important;margin:0 0 8px!important;}
    body.woocommerce-checkout form .input-text,body.woocommerce-checkout form select,body.woocommerce-checkout form textarea,
    body.woocommerce-checkout .select2-container--default .select2-selection--single{
      width:100%!important;min-height:50px!important;height:50px!important;background:#08060F!important;border:1px solid rgba(124,58,237,.22)!important;
      border-radius:10px!important;padding:0 15px!important;color:#F1EEFF!important;font-size:14px!important;box-sizing:border-box!important;}
    body.woocommerce-checkout form textarea{height:auto!important;min-height:96px!important;padding:14px 15px!important;line-height:1.6!important;resize:vertical!important;}
    body.woocommerce-checkout form .input-text:focus,body.woocommerce-checkout form select:focus,body.woocommerce-checkout form textarea:focus{
      border-color:#7C3AED!important;box-shadow:0 0 0 3px rgba(124,58,237,.18)!important;outline:none!important;}
    /* coupon toggle */
    body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
      background:rgba(124,58,237,.06)!important;border:1px dashed rgba(124,58,237,.35)!important;border-left:1px dashed rgba(124,58,237,.35)!important;
      border-radius:11px!important;color:#C4B5FD!important;font-size:12.5px!important;padding:12px 16px!important;box-shadow:none!important;}
    body.woocommerce-checkout form.checkout_coupon{background:#08060F!important;border:1px solid rgba(124,58,237,.20)!important;border-radius:12px!important;padding:18px!important;margin:0 0 20px!important;}
    /* v55.16 -- the coupon form is its OWN <form>, not a child of form.checkout,
       so the checkout form's .form-row/.button rules above never reached it --
       it was wearing whatever bare WooCommerce/theme default fell through,
       next to fields that were all deliberately restyled. Brought in line here
       instead of widening the checkout-only rules, since this form exists on
       its own regardless of which page embeds it. */
    body.woocommerce-checkout form.checkout_coupon .form-row{width:100%!important;float:none!important;margin:0 0 12px!important;}
    body.woocommerce-checkout form.checkout_coupon .form-row:last-child{margin-bottom:0!important;}
    body.woocommerce-checkout form.checkout_coupon .input-text{
      width:100%!important;min-height:46px!important;height:46px!important;background:#0D0A18!important;
      border:1px solid rgba(124,58,237,.28)!important;border-radius:9px!important;padding:0 14px!important;
      color:#F1EEFF!important;font-size:13.5px!important;box-sizing:border-box!important;}
    body.woocommerce-checkout form.checkout_coupon .input-text:focus{
      border-color:#7C3AED!important;box-shadow:0 0 0 3px rgba(124,58,237,.18)!important;outline:none!important;}
    body.woocommerce-checkout form.checkout_coupon .button{
      width:100%!important;background:linear-gradient(135deg,#A855F7,#7C3AED 55%,#4F46E5)!important;
      color:#fff!important;border:0!important;border-radius:9px!important;height:46px!important;
      padding:0 18px!important;font-weight:700!important;font-size:13.5px!important;
      box-shadow:0 4px 16px rgba(124,58,237,.35)!important;}
    /* v55.16 -- the error after a bad code ("cannot be applied because it does
       not exist") used WooCommerce's bare default styling -- a light card with
       dark text, the one visibly unstyled box on an otherwise fully themed
       page. Same treatment as .woocommerce-message below it, just tinted for
       "this failed" instead of "this worked". */
    body.woocommerce-checkout .woocommerce-error,
    body.woocommerce-checkout .woocommerce-message,
    body.woocommerce-checkout .woocommerce-info{
      background:#0D0A18!important;border:1px solid rgba(124,58,237,.20)!important;border-radius:11px!important;
      color:#F1EEFF!important;font-size:13px!important;padding:14px 16px!important;margin:0 0 18px!important;
      list-style:none!important;box-shadow:none!important;}
    body.woocommerce-checkout .woocommerce-error{border-color:rgba(248,113,113,.35)!important;}
    body.woocommerce-checkout .woocommerce-error::before,
    body.woocommerce-checkout .woocommerce-message::before,
    body.woocommerce-checkout .woocommerce-info::before{display:none!important;}
    /* order table in the rail */
    body.woocommerce-checkout .woocommerce-checkout-review-order-table{width:100%!important;border:0!important;background:transparent!important;}
    body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
    body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
      padding:11px 0!important;font-size:13px!important;border:0!important;border-bottom:1px solid rgba(124,58,237,.10)!important;background:transparent!important;}
    body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th{color:#8B7BAE!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important;}
    body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{text-align:right!important;}
    body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
    body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{
      border-bottom:0!important;border-top:1px solid rgba(124,58,237,.20)!important;padding-top:16px!important;color:#F1EEFF!important;}
    body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td .amount{font-family:var(--font-heading,inherit)!important;font-size:1.45rem!important;font-weight:800!important;}
    body.woocommerce-checkout .cart-discount td{color:#6EE7B7!important;font-weight:700!important;}
    /* payment */
    body.woocommerce-checkout #payment{background:transparent!important;border:0!important;padding:0!important;margin:18px 0 0!important;}
    body.woocommerce-checkout #payment ul.payment_methods{list-style:none!important;padding:0!important;margin:0 0 14px!important;border:0!important;background:transparent!important;display:flex!important;flex-direction:column!important;gap:9px!important;}
    body.woocommerce-checkout #payment ul.payment_methods li{background:#08060F!important;border:1px solid rgba(124,58,237,.18)!important;border-radius:11px!important;padding:12px 14px!important;margin:0!important;}
    body.woocommerce-checkout #payment ul.payment_methods li label{display:inline-flex!important;align-items:center!important;gap:9px!important;font-size:13.5px!important;color:#F1EEFF!important;margin:0!important;}
    body.woocommerce-checkout #payment ul.payment_methods li input[type=radio]{accent-color:#7C3AED!important;width:16px!important;height:16px!important;margin:0!important;}
    body.woocommerce-checkout #payment div.payment_box{background:rgba(124,58,237,.07)!important;border:0!important;border-radius:9px!important;color:#8B7BAE!important;font-size:12.5px!important;margin:10px 0 0!important;padding:11px 13px!important;}
    body.woocommerce-checkout #payment div.payment_box::before{display:none!important;}
    body.woocommerce-checkout #place_order{width:100%!important;background:linear-gradient(135deg,#A855F7,#7C3AED 55%,#4F46E5)!important;color:#fff!important;
      border:0!important;border-radius:10px!important;padding:16px!important;font-weight:800!important;font-size:15px!important;
      box-shadow:0 6px 22px rgba(124,58,237,.42)!important;transition:transform .15s!important;}
    body.woocommerce-checkout #place_order:hover{transform:translateY(-1px)!important;}
    /* trust chips under the button (Fast delivery included, as in Design 01) */
    .a2b-co-trust{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:16px 0 0!important;}
    .a2b-co-chip{display:inline-flex!important;align-items:center!important;gap:7px!important;font-size:11.5px!important;font-weight:600!important;
      color:#8B7BAE!important;background:rgba(255,255,255,.03)!important;border:1px solid rgba(124,58,237,.16)!important;
      border-radius:100px!important;padding:7px 12px!important;line-height:1!important;}
    .a2b-co-chip svg{flex-shrink:0!important;}
    .a2b-co-chip--fast{color:#FCD34D!important;border-color:rgba(245,158,11,.25)!important;background:rgba(245,158,11,.08)!important;}
    .a2b-co-chip--ok{color:#6EE7B7!important;border-color:rgba(16,185,129,.25)!important;background:rgba(16,185,129,.08)!important;}
    /* ---- order-notes help tooltip ---- */
    /* v2026-09-02 -- rebuilt on the same position:fixed + tap-to-open pattern
       already proven on the product page's "?" tooltip (acc2buy-seo-engine.php,
       .a2b-dnq-pop / a2b-dnq-js). The old version here was absolute-positioned
       relative to the icon and centred with left:50%/translateX(-50%): on a
       narrow phone screen, with the icon sitting on the left side of a
       full-width checkout field, a 308px box centred on a 16px icon runs off
       BOTH edges of the viewport at once (confirmed live: the phone screenshot
       showed the tip text cut off left and right). It was also hover-only,
       which never fires on a touch screen at all -- the box was reachable on
       desktop only. Both are exactly what the dnq pattern already solved for
       the product page; ported here rather than re-solved. The `--js` class
       below is a hard fallback for no-JS: draws where it did before, still
       imperfect there, but this project has no visitors without JS anyway
       (the whole site is JS-rendered) so this is belt-and-suspenders only. */
    .a2b-tip{display:inline-flex!important;align-items:center!important;justify-content:center!important;position:relative!important;
      width:16px!important;height:16px!important;margin-left:7px!important;border-radius:50%!important;vertical-align:middle!important;
      background:rgba(124,58,237,.20)!important;border:1px solid rgba(124,58,237,.45)!important;color:#C4B5FD!important;
      font-size:10px!important;font-weight:800!important;line-height:1!important;cursor:help!important;font-family:var(--font-body,inherit)!important;}
    /* the tappable glyph, separate from .a2b-tip-box so a click inside the
       open box (selecting the help text) is never mistaken for the toggle --
       same split the product-page tooltip uses (.a2b-dnq-btn vs .a2b-dnq-pop). */
    .a2b-tip-q{display:inline-flex!important;align-items:center!important;justify-content:center!important;
      width:100%!important;height:100%!important;cursor:help!important;}
    .a2b-tip .a2b-tip-box{position:fixed!important;left:0!important;top:0!important;
      width:min(308px,calc(100vw - 24px))!important;max-width:none!important;background:#0B0817!important;color:#CFC6E8!important;border:1px solid rgba(124,58,237,.40)!important;
      border-radius:11px!important;padding:13px 15px!important;font-size:12px!important;font-weight:400!important;line-height:1.6!important;text-align:left!important;
      letter-spacing:0!important;text-transform:none!important;box-shadow:0 18px 44px rgba(0,0,0,.55)!important;
      opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .16s!important;z-index:2147483000!important;
      transform:none!important;bottom:auto!important;}
    .a2b-tip .a2b-tip-box::after{content:""!important;position:absolute!important;top:100%!important;left:var(--a2b-tip-arrow,22px)!important;margin-left:-6px!important;
      border:6px solid transparent!important;border-top-color:rgba(124,58,237,.40)!important;}
    .a2b-tip .a2b-tip-box.is-below::after{top:auto!important;bottom:100%!important;border-top-color:transparent!important;border-bottom-color:rgba(124,58,237,.40)!important;}
    .a2b-tip .a2b-tip-box.is-shown{opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
    .a2b-tip .a2b-tip-box b{color:#F1EEFF!important;font-weight:700!important;}
    /* no-JS fallback only -- .a2b-js-tip-ready (set by the script below) turns
       this back off so the JS-driven .is-shown path above is what actually runs. */
    .a2b-tip:hover .a2b-tip-box:not(.a2b-js-tip-ready),.a2b-tip:focus .a2b-tip-box:not(.a2b-js-tip-ready){
      position:absolute!important;bottom:calc(100% + 10px)!important;left:50%!important;top:auto!important;
      transform:translateX(-50%)!important;opacity:1!important;visibility:visible!important;}
    @media(max-width:980px){
      body.woocommerce-checkout form.checkout,body.woocommerce-checkout form.woocommerce-checkout{
        grid-template-columns:1fr!important;grid-template-areas:"notice" "details" "head" "review"!important;}
      body.woocommerce-checkout #order_review_heading{border-left:0!important;border-top:1px solid rgba(124,58,237,.20)!important;}
      body.woocommerce-checkout #order_review{border-left:0!important;}
    }

    /* ============ 8. INPUT AUTOFILL FIX (register/login text was invisible) ============ */
    /* Chrome paints autofilled fields with a light bg + its own text colour, so
       dark text vanished. Force the dark field + light text in the autofill state. */
    input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,
    textarea:-webkit-autofill,select:-webkit-autofill{
      -webkit-text-fill-color:#F1EEFF!important;caret-color:#F1EEFF!important;
      -webkit-box-shadow:0 0 0 1000px #08060F inset!important;box-shadow:0 0 0 1000px #08060F inset!important;
      border:1px solid rgba(124,58,237,.22)!important;transition:background-color 9999s ease-out 0s!important;}
    /* belt-and-braces: make sure account/checkout inputs always have visible text */
    .woocommerce-account form input,.woocommerce-checkout form input,
    .woocommerce form.login input,.woocommerce form.register input,
    .woocommerce .woocommerce-ResetPassword input,.woocommerce-EditAccountForm input{
      color:#F1EEFF!important;background:#08060F!important;-webkit-text-fill-color:#F1EEFF!important;}

    /* ============ 9. LOST-PASSWORD / SET-NEW-PASSWORD — centered card ============ */
    body.woocommerce-account:not(.logged-in) .woocommerce-ResetPassword,
    body.woocommerce-account .woocommerce-ResetPassword.lost_reset_password{
      max-width:460px!important;margin:56px auto!important;padding:34px!important;float:none!important;width:auto!important;
      background:linear-gradient(180deg,#120C1E,#0F0B1A)!important;border:1px solid rgba(124,58,237,.22)!important;
      border-radius:18px!important;box-shadow:0 18px 44px rgba(0,0,0,.35)!important;box-sizing:border-box!important;}
    .woocommerce-ResetPassword > p:first-of-type{font-size:14px!important;color:#8B7BAE!important;margin:0 0 22px!important;line-height:1.6!important;}
    .woocommerce-ResetPassword .form-row label{display:block!important;font-size:11.5px!important;font-weight:600!important;color:#B9AEDC!important;text-transform:none!important;letter-spacing:0!important;margin:0 0 8px!important;}
    .woocommerce-ResetPassword .form-row{margin:0 0 16px!important;}
    .woocommerce-ResetPassword input{width:100%!important;height:50px!important;background:#08060F!important;
      border:1px solid rgba(124,58,237,.22)!important;border-radius:10px!important;padding:0 15px!important;color:#F1EEFF!important;box-sizing:border-box!important;}
    .woocommerce-ResetPassword input:focus{border-color:#7C3AED!important;box-shadow:0 0 0 3px rgba(124,58,237,.18)!important;outline:none!important;}
    .woocommerce-ResetPassword .button{width:100%!important;background:linear-gradient(135deg,#A855F7,#7C3AED 55%,#4F46E5)!important;
      color:#fff!important;border:0!important;border-radius:10px!important;padding:14px!important;font-weight:700!important;font-size:15px!important;
      box-shadow:0 6px 20px rgba(124,58,237,.4)!important;margin-top:4px!important;}
    .woocommerce-ResetPassword .password-input{position:relative!important;display:block!important;width:100%!important;}
    .woocommerce-ResetPassword .show-password-input{position:absolute!important;right:14px!important;top:50%!important;transform:translateY(-50%)!important;}

    /* ============ 10. ACCOUNT DETAILS / PASSWORD CHANGE — match the rest ============ */
    .woocommerce-EditAccountForm{max-width:640px!important;}
    .woocommerce-EditAccountForm fieldset{border:1px solid rgba(124,58,237,.16)!important;border-radius:14px!important;
      padding:22px 24px 6px!important;margin:26px 0 0!important;background:rgba(255,255,255,.02)!important;}
    .woocommerce-EditAccountForm legend{font-family:var(--font-heading,inherit)!important;font-size:1rem!important;font-weight:800!important;
      color:#F1EEFF!important;padding:0 8px!important;}
    .woocommerce-EditAccountForm .woocommerce-form-row label{display:block!important;font-size:11.5px!important;font-weight:600!important;
      color:#B9AEDC!important;text-transform:none!important;letter-spacing:0!important;margin:0 0 8px!important;}
    .woocommerce-EditAccountForm .woocommerce-form-row{margin:0 0 16px!important;}
    .woocommerce-EditAccountForm input{width:100%!important;height:50px!important;background:#08060F!important;
      border:1px solid rgba(124,58,237,.22)!important;border-radius:10px!important;padding:0 15px!important;color:#F1EEFF!important;box-sizing:border-box!important;}
    .woocommerce-EditAccountForm input:focus{border-color:#7C3AED!important;box-shadow:0 0 0 3px rgba(124,58,237,.18)!important;outline:none!important;}
    .woocommerce-EditAccountForm .button{background:linear-gradient(135deg,#A855F7,#7C3AED 55%,#4F46E5)!important;color:#fff!important;
      border:0!important;border-radius:10px!important;padding:14px 26px!important;font-weight:700!important;font-size:14.5px!important;
      box-shadow:0 6px 20px rgba(124,58,237,.4)!important;margin-top:8px!important;}
    /* contact-us price wherever WooCommerce prints it */
    .a2b-contact-price{color:#C4B5FD!important;font-weight:700!important;font-size:.92em!important;}
    /* v55.17 -- removing or updating a cart line "flashes" (owner's word).
       Not our markup: WooCommerce's own core fragment-refresh blocks the
       mini-cart with jQuery blockUI while it re-fetches, and blockUI's
       hardcoded default is a WHITE overlay at 60% opacity -- on a dark
       theme that reads as a jarring flash every single time a line changes
       or is removed, anywhere fragments refresh (drawer, cart, checkout).
       blockUI sets background/opacity as an INLINE style with no
       !important, so a stylesheet !important on its own class beats it
       without touching the plugin that adds it. */
    .blockUI.blockOverlay{background:#08060F!important;opacity:.55!important;}
    /* v55.17 -- the search box's X is the browser's OWN native clear button
       (type="search" ships one for free), not an element of ours -- which
       is why nothing here had ever set its cursor. It already clears the
       field; it just still showed the plain arrow the whole input carries,
       reading as decoration instead of a control. */
    #a2b-si::-webkit-search-cancel-button{cursor:pointer!important;}
    
@media(max-width:900px){#a2b-support-label{display:none!important}.a2b-wf-sl{width:44px!important;height:44px!important}.a2b-wf-col>a{min-height:40px;display:flex!important;align-items:center;line-height:1.35}.a2b-wf-legal a{min-height:40px;display:inline-flex!important;align-items:center}}@media(max-width:800px){#a2b-grid ul.products,.a2b-grid-inner ul.products,.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:480px){.a2b-wf-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:28px 18px!important}.a2b-wf-brand{grid-column:1/-1;text-align:center}.a2b-wf-brand img,.a2b-wf-brand p{margin-left:auto;margin-right:auto}.a2b-wf-social,.a2b-wf-pay{justify-content:center}.a2b-wf-col:last-child{grid-column:1/-1;padding-top:4px;border-top:1px solid rgba(124,58,237,.12)}.a2b-wf-bot{align-items:center!important;text-align:center}}.a2b-cat-count{color:#b9aedc!important}.acc2buy-ribbon{background:#d32f2f!important}.a2b-card-price del,.a2b-card-price del .woocommerce-Price-amount,.a2b-card-price del bdi{color:#8b7bae!important;opacity:1!important}

.ast-builder-grid-row > .site-header-section:empty{display:none!important;}
.ast-builder-grid-row-has-sides.ast-builder-grid-row-no-center{grid-template-columns:auto auto!important;justify-content:space-between!important;}
.ast-primary-header-bar .ast-builder-grid-row{align-items:center!important;column-gap:.5rem!important;}
@media (max-width:782px){
 .ast-primary-header-bar .ast-builder-grid-row{flex-wrap:nowrap!important;}
 .ast-primary-header-bar .site-header-section{gap:.4rem!important;}
 .ast-mobile-menu-buttons .menu-toggle,.ast-site-header-cart a{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;}
 .ast-header-break-point .main-header-bar-wrap{padding-left:10px;padding-right:10px;}
 .entry-content img{max-width:100%!important;height:auto!important;}
 .entry-content table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}
 .entry-content pre,.entry-content code{white-space:pre-wrap;word-break:break-word;}
 .a2b-related__grid{grid-template-columns:1fr!important;}
}


.acc2buy-drawer{position:fixed;inset:0;z-index:99999;visibility:hidden;pointer-events:none}
.acc2buy-drawer[aria-hidden="false"]{visibility:visible;pointer-events:auto}
.acc2buy-drawer__veil{position:absolute;inset:0;background:rgba(8,6,15,.70);opacity:0;transition:opacity .22s ease;backdrop-filter:blur(2px)}
.acc2buy-drawer[aria-hidden="false"] .acc2buy-drawer__veil{opacity:1}
.acc2buy-drawer__panel{position:absolute;top:0;right:0;height:100%;width:390px;max-width:92vw;
  background:var(--a2b-surface,#0F0B1A);border-left:1px solid var(--a2b-border-h,rgba(124,58,237,.45));box-shadow:-18px 0 50px rgba(0,0,0,.55);
  transform:translateX(100%);transition:transform .26s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;color:var(--a2b-text,#F1EEFF);
  font-family:var(--font-body,-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif);font-size:15px;line-height:1.6}
.acc2buy-drawer[aria-hidden="false"] .acc2buy-drawer__panel{transform:none}
.acc2buy-drawer__head{display:flex;align-items:center;justify-content:space-between;
  padding:18px 20px;border-bottom:1px solid var(--a2b-border-soft,rgba(124,58,237,.20));flex:0 0 auto}
.acc2buy-drawer__head strong{font-family:var(--font-heading,inherit);font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--a2b-purple-l,#A855F7)}
.acc2buy-drawer__x{background:transparent;border:0;color:var(--a2b-muted,#8B7BAE);font-size:26px;line-height:1;cursor:pointer;padding:0 2px}
.acc2buy-drawer__x:hover{color:var(--a2b-text,#F1EEFF)}
.acc2buy-drawer__body{flex:1 1 auto;overflow-y:auto;padding:18px 20px 22px}
/* v54.3 — wrapper koji WooCommerce zamjenjuje: providan za raspored */
.acc2buy-drawer__body > .widget_shopping_cart_content{display:block;margin:0;padding:0}
.acc2buy-drawer__body ul.cart_list,.acc2buy-drawer__body ul.product_list_widget{list-style:none;margin:0;padding:0}
.acc2buy-drawer__body li{position:relative;display:flex;gap:12px;align-items:flex-start;
  padding:14px 0;border-bottom:1px solid var(--a2b-border,rgba(124,58,237,.13))}
.acc2buy-drawer__body li img{width:52px;height:52px;object-fit:cover;border-radius:8px;flex:0 0 52px;order:-1;margin:0;float:none}
.acc2buy-drawer__body li a{color:var(--a2b-text,#F1EEFF);text-decoration:none;font-size:13.5px;font-weight:600;display:block}
.acc2buy-drawer__body li a:hover{color:var(--a2b-purple-l,#A855F7)}
.acc2buy-drawer__body .quantity{color:var(--a2b-muted,#8B7BAE);font-size:12.5px;display:block;margin-top:3px}
.acc2buy-drawer__body .quantity .amount{color:var(--a2b-text,#F1EEFF)}
.acc2buy-drawer__body .a2b-qty{display:flex;align-items:center;gap:0;margin-top:9px;width:100%}
.acc2buy-drawer__body .a2b-qty--fixed{display:flex;justify-content:flex-end;align-items:center;margin-top:9px;width:100%}
.a2b-step{width:26px;height:26px;flex:0 0 26px;border:1px solid var(--a2b-border-h,rgba(124,58,237,.45));background:transparent;
  color:var(--a2b-purple-xl,#C4B5FD);font:inherit;font-size:15px;line-height:1;cursor:pointer;padding:0;display:flex;
  align-items:center;justify-content:center;transition:.15s}
.a2b-step:first-of-type{border-radius:7px 0 0 7px}
.a2b-step:last-of-type{border-radius:0 7px 7px 0}
.a2b-step:hover:not(:disabled){border-color:var(--a2b-purple,#7C3AED);color:#fff;background:rgba(124,58,237,.18)}
.a2b-step:disabled{opacity:.3;cursor:not-allowed}
/* v55.17 -- now a real <input>, not a <span>; reset the parts a text input
   brings that a span never had (its own background, its own focus ring).
   v55.23 -- BUG: none of this carried !important, and the theme's own
   global input[type="text"] rule (astra-child/style.css) does -- padding:
   12px 16px !important among other things. On a 26px-tall box that padding
   alone left a 2px content area for a 21px line, so the number rendered
   fully clipped: an empty-looking box with a real value inside it.
   Confirmed live by decoding the actual computed style before writing this
   fix, not guessed. !important alone was NOT enough and shipped broken
   once already: that theme rule is input[type="text"], specificity (0,1,1)
   -- one class, .a2b-qty__n alone, is only (0,1,0) and loses on
   specificity regardless of !important or source order. Selector changed
   to .a2b-qty input.a2b-qty__n, (0,2,1), to unambiguously outrank it
   rather than rely on a tie broken by load order. */
.a2b-qty input.a2b-qty__n{width:32px!important;height:26px!important;text-align:center!important;background:transparent!important;
  border-top:1px solid var(--a2b-border-h,rgba(124,58,237,.45))!important;border-bottom:1px solid var(--a2b-border-h,rgba(124,58,237,.45))!important;
  border-left:0!important;border-right:0!important;border-radius:0!important;outline:none!important;box-shadow:none!important;
  font:inherit!important;font-size:13px!important;font-weight:700!important;color:var(--a2b-text,#F1EEFF)!important;
  -webkit-text-fill-color:var(--a2b-text,#F1EEFF)!important;padding:0!important;}
.a2b-qty input.a2b-qty__n:focus{background:rgba(124,58,237,.10)!important;}
.a2b-qty__n::-webkit-outer-spin-button,.a2b-qty__n::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.a2b-qty__p{margin-left:auto;padding-left:12px;font-size:13px;color:var(--a2b-muted,#8B7BAE)}
.a2b-qty__p .amount{color:var(--a2b-text,#F1EEFF);font-weight:600}
.acc2buy-drawer__body.is-busy{opacity:.5;pointer-events:none;transition:opacity .12s}
.acc2buy-drawer__body ins{text-decoration:none}
.acc2buy-drawer__body ins .amount{color:var(--a2b-red,#EF4444);font-weight:800}
.acc2buy-drawer__body del{opacity:.6}
/* v53.2 — remove dugme je izgledalo kao prazan krug.
   Uzroci: line-height 19px u kutiji od 20px je gurao znak van vidljivog
   podrucja, a --a2b-muted (#8B7BAE) na ljubicastoj pozadini od 12% je
   bio prenizak kontrast da se x uopste primijeti. Sada je centriran
   flexom (ne line-heightom), veci je i svjetliji. */
.acc2buy-drawer__body a.remove{position:absolute;top:13px;right:0;width:22px;height:22px;
  display:flex!important;align-items:center!important;justify-content:center!important;
  line-height:1!important;text-align:center;border-radius:50%;
  background:rgba(124,58,237,.18);color:#D8CCFF!important;font-size:17px!important;
  text-decoration:none;font-weight:400;transition:background .15s,color .15s}
.acc2buy-drawer__body a.remove:hover{background:rgba(239,68,68,.18);color:var(--a2b-red-light,#FCA5A5)!important}
.acc2buy-drawer__body .total{border:0;border-top:1px solid var(--a2b-border-soft,rgba(124,58,237,.20));margin:14px 0 0;padding:16px 0 0;
  font-size:13px;color:var(--a2b-muted,#8B7BAE);display:flex;justify-content:space-between;align-items:baseline}
.acc2buy-drawer__body .total strong{font-weight:600}
.acc2buy-drawer__body .total .amount{color:var(--a2b-text,#F1EEFF);font-size:19px;font-weight:800}
.acc2buy-drawer__body .buttons{display:flex;flex-direction:column;gap:9px;margin:16px 0 0}
.acc2buy-drawer__body .buttons a{display:block;text-align:center;padding:14px;border-radius:var(--radius-sm,9px);
  text-decoration:none;font-weight:700;font-size:14px;font-family:var(--font-body,inherit);transition:var(--transition,all .2s)}
.acc2buy-drawer__body .buttons a.button:not(.checkout){border:1px solid var(--a2b-border-h,rgba(124,58,237,.45));color:var(--a2b-purple-xl,#C4B5FD);background:transparent}
.acc2buy-drawer__body .buttons a.button:not(.checkout):hover{background:rgba(124,58,237,.10)}
.acc2buy-drawer__body .buttons a.checkout{background:var(--a2b-purple,#7C3AED);color:#fff;order:-1;box-shadow:0 6px 28px rgba(124,58,237,.38)}
.acc2buy-drawer__body .buttons a.checkout:hover{background:var(--a2b-purple-h,#6D28D9);transform:translateY(-2px)}
.acc2buy-drawer__body p.woocommerce-mini-cart__empty-message{color:var(--a2b-muted,#8B7BAE);font-size:14px;text-align:center;padding:40px 0}
/* v55.17 -- "No products in the cart." printed TWICE on an empty cart.
   Confirmed live: not our markup -- Astra's own mini-cart template adds its
   own branded empty state (.ast-mini-cart-empty, with a Continue Shopping
   button) WITHOUT removing WooCommerce's bare default message first, so
   both render, stacked. Astra's version is the better one (it carries the
   button); the bare direct child of widget_shopping_cart_content is
   WooCommerce's original and is the one hidden here -- it is the only one
   NOT nested inside .ast-mini-cart-empty, so this selector cannot also
   catch Astra's copy by accident. */
.acc2buy-drawer__body .widget_shopping_cart_content > p.woocommerce-mini-cart__empty-message{display:none!important}
.acc2buy-drawer__body .ast-mini-cart-empty{padding:40px 0;text-align:center}
.acc2buy-drawer__body .ast-mini-cart-empty p.woocommerce-mini-cart__empty-message{padding:0 0 16px}
.acc2buy-drawer__body .ast-mini-cart-empty .woocommerce-mini-cart__buttons a{
  display:inline-block!important;background:var(--a2b-purple,#7C3AED)!important;color:#fff!important;
  padding:12px 22px!important;border-radius:var(--radius-sm,9px)!important;text-decoration:none!important;
  font-weight:700!important;box-shadow:0 6px 28px rgba(124,58,237,.38)!important;}
@media (max-width:480px){.acc2buy-drawer__panel{width:100%}}


	/* Scoped, not inline, because the close button needs :hover and
	   :focus-visible and an inline style attribute cannot carry either. */
	#a2b-exit-modal{
	  display:none; position:fixed; inset:0; z-index:99999;
	  background:rgba(11,8,23,.74);
	  align-items:center; justify-content:center; padding:20px;
	}
	#a2b-exit-card{
	  position:relative; box-sizing:border-box;
	  background:#150F26; border:1px solid rgba(124,58,237,.35);
	  border-radius:16px; padding:34px 28px 28px;
	  max-width:360px; width:100%; text-align:center;
	  box-shadow:0 24px 70px rgba(0,0,0,.6);
	}
	/* A control with a surface, sitting on the card's own 28px content edge --
	   14px inset plus half of 32px puts its centre there. A bare glyph in the
	   corner had nothing tying it to the panel, which is what made it read as
	   floating on the overlay instead of belonging to the card. */
	#a2b-exit-close{
	  position:absolute; top:14px; right:14px;
	  width:32px; height:32px; padding:0; margin:0;
	  display:flex; align-items:center; justify-content:center;
	  background:rgba(255,255,255,.06);
	  border:1px solid rgba(255,255,255,.09);
	  border-radius:50%; color:#A6A0B4; cursor:pointer;
	  transition:background .15s, color .15s, border-color .15s;
	}
	#a2b-exit-close:hover{
	  background:rgba(124,58,237,.20); border-color:rgba(167,139,250,.55); color:#F1EEFF;
	}
	#a2b-exit-close:focus-visible{ outline:2px solid #A78BFA; outline-offset:2px; }
	/* An SVG cross rather than &times;. That glyph falls back to Arial here and
	   is not optically centred in its em -- it sits high and left, so a
	   perfectly centred box still looked crooked. */
	#a2b-exit-close svg{ width:13px; height:13px; display:block; }

	#a2b-exit-title{ color:#F1EEFF; margin:0 0 8px; font-size:1.15rem; line-height:1.3; }
	#a2b-exit-sub{ color:#8B7BAE; font-size:13.5px; margin:0 0 16px; line-height:1.5; }
	#a2b-exit-email{
	  width:100%; box-sizing:border-box; padding:11px 14px; border-radius:8px;
	  border:1px solid rgba(124,58,237,.3); background:#0B0817; color:#fff; margin-bottom:10px;
	}
	#a2b-exit-email:focus{ outline:none; border-color:rgba(167,139,250,.7); }
	#a2b-exit-submit{
	  width:100%; padding:11px; border:none; border-radius:8px;
	  background:linear-gradient(135deg,#A855F7,#7C3AED);
	  color:#fff; font-weight:700; cursor:pointer;
	}
	#a2b-exit-msg{ color:#3FDD78; font-size:12.5px; margin:10px 0 0; display:none; }
	@media(prefers-reduced-motion:reduce){ #a2b-exit-close{ transition:none; } }
	

    #a2b-support-wrap{
      position:fixed; right:18px; bottom:18px; z-index:2147482000;
      display:flex; align-items:center; gap:10px;
    }
    #a2b-support-label{
      height:38px; padding:0 15px 0 10px; border-radius:8px;
      background:#0D0A18; border:1px solid rgba(34,211,238,.30);
      color:#9FB0C0;
      font-family:ui-monospace,'JetBrains Mono',SFMono-Regular,Menlo,Consolas,monospace;
      font-size:11.5px; font-weight:600;
      display:inline-flex; align-items:center; white-space:nowrap; cursor:pointer;
      box-shadow:0 6px 20px rgba(0,0,0,.45);
      transition:opacity .45s ease, transform .45s ease;
    }
    #a2b-support-wrap.is-retired #a2b-support-label{
      opacity:0; transform:translateX(14px); pointer-events:none;
    }
    #a2b-support-wrap.is-gone #a2b-support-label{ display:none; }

    /* The greeting no longer times out -- he wants it to stay. So it needs a
       way out that is his, not a timer: a small x, and the choice is
       remembered so it never nags the same visitor twice. Sits BEFORE the
       text now -- he wants it on the left of "Need help?", not trailing
       after "online" where it read as part of the sentence. */
    #a2b-support-dismiss{
      appearance:none; margin:0 6px 0 0; padding:0; width:16px; height:16px;
      border:0; border-radius:4px; background:transparent; cursor:pointer;
      color:#6B7A88; font:400 15px/1 ui-monospace,Menlo,Consolas,monospace;
      display:inline-flex; align-items:center; justify-content:center; flex:none;
    }
    #a2b-support-dismiss:hover{ color:#22D3EE; background:rgba(34,211,238,.12); }
    #a2b-support-dismiss:focus-visible{ outline:2px solid #22D3EE; outline-offset:1px; }
    /* and it goes the moment the chat opens, whatever the five second timer is
       doing -- otherwise opening quickly leaves the greeting sitting beside a
       close button, which is exactly what the screenshot showed */
    #a2b-support-wrap.chat-open #a2b-support-label{ display:none; }

    /* The same corner radius family as the panel, and the same cyan edge, so
       the button and the window it opens read as one object. */
    #a2b-support{
      position:relative; width:56px; height:56px; padding:0;
      border:1px solid rgba(34,211,238,.40); border-radius:14px;
      display:inline-flex; align-items:center; justify-content:center;
      background:#0D0A18;
      box-shadow:0 10px 28px rgba(0,0,0,.55), 0 0 26px rgba(34,211,238,.20);
      color:#fff; cursor:pointer; overflow:hidden;
      transition:transform .15s, box-shadow .15s, border-color .15s;
    }
    /* The panel's lit rail used to be repeated here so the button and the
       window would read as one object. At panel width that is a rail; on a
       56px control it reads as a scratch above the icon. The cyan border
       already carries the connection. */
    #a2b-support:hover{
      transform:translateY(-2px); border-color:rgba(34,211,238,.75);
      box-shadow:0 14px 34px rgba(0,0,0,.6), 0 0 34px rgba(34,211,238,.32);
    }
    #a2b-support:focus-visible{ outline:2px solid #22D3EE; outline-offset:3px; }
    /* their script is being fetched -- the press has to look like it landed */
    #a2b-support.is-waiting{ cursor:progress; }
    #a2b-support.is-waiting svg{ opacity:.35; }
    #a2b-support.is-waiting::before{
      content:''; position:absolute; inset:-1px; border-radius:inherit;
      border:2px solid transparent; border-top-color:#22D3EE;
      animation:a2bspin .7s linear infinite;
    }
    @keyframes a2bspin{ to{ transform:rotate(360deg); } }
    @media(prefers-reduced-motion:reduce){
      #a2b-support.is-waiting::before{ animation:none; border-top-color:#22D3EE; }
    }
    #a2b-support svg{ width:23px; height:23px; flex:none; }
    #a2b-support .a2b-sup-x{ display:none; }
    #a2b-support.is-open .a2b-sup-icon{ display:none; }
    #a2b-support.is-open .a2b-sup-x{ display:block; }

    /* the online dot belongs to the closed state; while the chat is open the
       button is a close control and a status light on it reads as noise */
    #a2b-support::after{
      content:''; position:absolute; top:6px; right:6px;
      width:9px; height:9px; border-radius:50%;
      background:#34D399; box-shadow:0 0 0 2px #0D0A18, 0 0 9px rgba(52,211,153,.7);
    }
    #a2b-support.is-open::after{ display:none; }

    @media(max-width:600px){
      #a2b-support-wrap{ right:14px; bottom:14px; }
      #a2b-support-label{ display:none; }
      #a2b-support{ width:52px; height:52px; border-radius:13px; }
      #a2b-support svg{ width:21px; height:21px; }
      /* v55.15 -- his own screenshot: the send arrow "not fitting" was never
         tawk's icon at all. This button is position:fixed at the same
         bottom-right corner on every viewport, which is fine on desktop --
         the panel there leaves a gap in that corner. At mobile width the
         panel runs edge to edge, so the fixed corner button now sits ON TOP
         of tawk's own paperclip/send icons instead of beside them. Their
         panel already has its own close control in the header once open
         (confirmed live: a visible X next to the hamburger), so this one is
         redundant while open on a small screen, not just in the way --
         hidden here rather than moved, since any position still inside the
         panel's own footprint would keep covering something of theirs. */
      #a2b-support-wrap.chat-open{ display:none; }
    }
    @media(prefers-reduced-motion:reduce){
      #a2b-support-label, #a2b-support{ transition:none; }
    }
    

    /* THE ONE THAT ACTUALLY WORKS.
   
       tawk rewrites this iframe's whole style attribute with 41 declarations,
       every one !important -- display, visibility, opacity, transform,
       position, width, height, z-index, the lot. Inline !important is the top
       of the author cascade, so when they write display:block !important no
       stylesheet rule of ours can beat it, and assigning the attribute wipes
       anything we wrote inline. Every earlier attempt fought them on `display`,
       which is theirs. It was never winnable there.

       These four are properties they never write. translate carries the frame
       off screen, clip-path paints nothing, content-visibility renders nothing,
       and display is kept for the cases where we do win it. Verified through
       open, close and reopen on the live widget: they rewrote the inline style
       every time and the frame stayed at x = -99097 in all three states, while
       elementFromPoint over our own button still returned our button. */
    iframe[data-a2b-debranded="1"]{
      display:none !important;
      translate:-99999px 0 !important;
      clip-path:inset(100%) !important;
      content-visibility:hidden !important;
    }

    /* HELD BACK BEFORE ITS FIRST PAINT.

       Stamped on every iframe the instant it is inserted, inside the observer
       callback -- which runs at the microtask checkpoint, before the browser
       paints. The frame is therefore never drawn while we are still deciding
       what it is. It is released only once it has been classified and, if it
       is the panel, themed and swept.

       This is what makes the flashes structurally impossible rather than
       merely rare: there is no window in which their design is on screen,
       because nothing of theirs is on screen until it is ours. */
    iframe[data-a2b-pending]{
      translate:-99999px 0 !important;
      clip-path:inset(100%) !important;
    }

    /* CLOSING.

       Their panel empties before their frame goes away, and our stylesheet
       paints that frame near-black -- so a black rectangle sat on his page for
       a frame or two on every close. Nothing in a closing panel is worth
       showing, so it is clipped for the length of the close.

       clip-path and content-visibility again, for the same reason as the
       badge: they are properties tawk never writes, so the inline !important
       storm cannot take them back. No translate here -- the frame must not
       move, only stop being drawn.

       This attribute always removes itself. See closePanelBriefly(). */
    /* Their pop-out preview, kept off screen the same way the badge is, and
       with its OWN attribute so it never competes for the badge's cap. */
    /* Held back until it is wearing our stylesheet. Same two properties as the
       badge, for the same reason: tawk never writes them, so their inline
       !important storm cannot take them back. */
    iframe[data-a2b-unready]{
      clip-path:inset(100%) !important;
      content-visibility:hidden !important;
    }

    iframe[data-a2b-popout]{
      translate:-99999px 0 !important;
      clip-path:inset(100%) !important;
      content-visibility:hidden !important;
    }

    iframe[data-a2b-closing]{
      clip-path:inset(100%) !important;
      content-visibility:hidden !important;
    }
    
