/*
Theme Name: PlugDealer V3.6.1
Author: PLUGDEALER
Description: Underground supply terminal for editors — V3.6.1 of the MINIMAL CHECKOUT + FREE TRIAL line (successor to V3.6.0, installs alongside every earlier version). NEW IN V3.6.1: FILMFORGE V2 LAUNCH — a filmforge1 landing page template (slug filmforge1, same CRT format as yoink3, FilmForge halation-orange accent), FILMFORGE repriced 24.99 -> 39.99 and CINEMATIC CHAD repriced 29.99 -> 44.99 (remember to reprice BOTH WooCommerce products to match), and the front-page product slate updated to 30 stocks / v2.0 with the new V2 feature list. EVERYTHING FROM V3.6.0: TERMS OF SERVICE and REFUND POLICY page templates (slugs terms-of-service / refund-policy, linked from every footer), and GET THE DROP_ — a one-field email capture above the front page footer with honeypot protection, a dedicated subscribers table and a Tools > Supply List admin viewer with CSV export. EVERYTHING FROM V3.5.9: bundles ride the cart drawer as ONE row at the bundle price (bundle plugins' hidden child lines are invisible to the sync engine), items the register can't stock are TOASTED by name instead of silently vanishing, and the product map survives slug drift (exporttray-2 style duplicates + title matches). EVERYTHING FROM V3.5.8: product name and price sit on the SAME line — the trash can is absolutely anchored below the price now, out of the layout flow, so the price line centers exactly like the name against the thumbnail. EVERYTHING FROM V3.5.7: the trash can is a BARE icon (square border gone, glyph up to 14px) with 6px of air below the price, and each summary row's name + price sit lower, vertically centered against the product thumbnail. EVERYTHING FROM V3.5.6: the trash-can remove chip moves UP BESIDE THE PRICE — right side of each summary row, on the price's own line — on both checkout shapes (block: inside the total-price element; classic: appended to the subtotal cell). EVERYTHING FROM V3.5.5: the block-checkout REMOVE actually removes (the link's nonce was being HTML-escaped into a URL fragment and never reached the server), each summary line shows ONE price (the under-name duplicate is hidden; the right-side total and Save badge stay), and the remove chip is a compact 20px TRASH-CAN icon on both checkout shapes. EVERYTHING FROM V3.5.4: ONE CART, EVERYWHERE — the front page hydrates its badge/drawer from the REAL WooCommerce cart on every load and back-navigation, every add/✕ syncs back (exact-set), and the register hand-off rings up exactly what the drawer shows: no more CART [1] here and six items at the checkout from leftover sessions. EVERYTHING FROM V3.5.3: the register-retry bug is fixed (cancel the checkout, hit BACK, and BUY NOW / cart-drawer CHECKOUT / REGISTER all work again — the cart bridge's guard now resets on pageshow), the ✕ REMOVE links now appear on the BLOCK/express checkout's order summary too (the classic checkout already had them; bundles were checked and are plain products — nothing blocks removal), the cross-platform loyalty discount is a flat round-dollar cut (YOINK! $10 OFF -> $9.99 · EZYPRO $8 OFF -> $6.99, pairs still land within a cent of UNLIMITED), a new yoink-trial3 landing adds a YOINK! UNLIMITED · $29.99 button under each trial CTA, the background music resumes after back-navigation, and the UNLIMITED-includes-both note drops its em dash. EVERYTHING FROM V3.5.2: looping BACKGROUND MUSIC on the front page + product views (assets/audio/plugdealer_bg.mp3, toggled by the SND button), ✕ REMOVE links on every line item in the classic checkout's order summary, SAFEZONE back to ONE yellow BUY NOW button (the product ships BOTH platform copies — safezone-ae / safezone-unl retired), per-platform buttons reworded to name the tool (YOINK! FOR PREMIERE / EZYPRO UNLIMITED etc.) with an UNLIMITED-includes-both note underneath, purple outlines on YOINK's platform buttons, EZYPRO UNLIMITED down to $21.99, a desktop FULLSCREEN button on product demo videos, the moving banner in neon green, a reworked stats row (0 SUBSCRIPTION NEEDED first, 500+ EDITORS SUPPLIED), and bundle strike-through math recalculated. Everything from V3.5.1 carries over: multi-platform SKUs + UNLIMITED editions, ezypro2 / yoink3 / yoink-trial2 landings, UNLIMITED bundles (master $53.99, demon $34.99, chad $29.99), the 50%-off cross-platform loyalty discount, minimal checkout, the stacked FIRST NAME + EMAIL free-trial checkout and the /?pd-buy=<slug> straight-to-checkout routes.
Version: 3.6.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: plugdealer-v3-6-1
Tags: e-commerce, dark
*/

/* ============================================================
   This stylesheet is loaded on INNER pages only (shop, cart,
   checkout, account, blog). The front page ships its own CSS
   inline inside front-page.php and is intentionally untouched.
   ============================================================ */

:root{
  --bg:#060707; --panel:#0a0d0b; --panel2:#070908;
  --line:#1c2621; --line2:#111713;
  --ink:#cfe7d4; --dim:#5d7a66; --dimmer:#33463a;
  --grn:#3dff73; --grn2:#9dffb8; --grndk:#0f3d20;
  --red:#ff3b3b; --amb:#ffb648;
  --font:'IBM Plex Mono','Cascadia Mono',ui-monospace,Consolas,'Courier New',monospace;
}

/* ============ BASE ============ */
body.pd-inner{
  margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);
  font-size:14px;line-height:1.6;letter-spacing:.02em;
  -webkit-font-smoothing:antialiased;
  color-scheme:dark; /* native dropdown lists, scrollbars & autofill render dark */
}
body.pd-inner::after{ /* CRT scanlines */
  content:'';position:fixed;inset:0;z-index:900;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,.10) 0 1px,transparent 1px 3px);
}
body.pd-inner ::selection{background:var(--grn);color:#04120a}
body.pd-inner::-webkit-scrollbar{width:10px;height:10px}
body.pd-inner::-webkit-scrollbar-track{background:#050605}
body.pd-inner::-webkit-scrollbar-thumb{background:#1c2621;border:2px solid #050605}

.pd-inner h1,.pd-inner h2,.pd-inner h3{
  letter-spacing:.1em;line-height:1.2;text-transform:uppercase;color:var(--ink);
}
.pd-inner h1{font-size:clamp(24px,3.6vw,40px);margin:0 0 22px}
.pd-inner h2{font-size:clamp(18px,2.6vw,26px);margin:26px 0 14px}
.pd-inner h3{font-size:16px;margin:20px 0 10px}
.pd-title::before,
.pd-inner .woocommerce-products-header__title::before{content:'// ';color:var(--grn)}
.pd-inner p{margin:0 0 14px}
.pd-inner a{color:var(--grn2)}
.pd-inner a:hover{color:var(--grn);text-shadow:0 0 10px rgba(61,255,115,.45)}

/* ============ HEADER ============ */
.pd-head{
  position:sticky;top:0;z-index:100;display:flex;align-items:center;
  justify-content:space-between;padding:14px 3vw;
  background:rgba(6,7,7,.92);backdrop-filter:blur(4px);
  border-bottom:1px solid var(--line);
}
body.admin-bar .pd-head{top:32px}
.pd-brand{
  font-weight:700;letter-spacing:.18em;font-size:15px;color:var(--grn)!important;
  text-shadow:0 0 12px rgba(61,255,115,.5);text-decoration:none;white-space:nowrap;
}
.pd-brand .tm{font-size:9px;vertical-align:top;color:var(--dim)}
.pd-cur{animation:pd-blink 1s steps(1) infinite}
@keyframes pd-blink{0%,49%{opacity:1}50%,100%{opacity:0}}
.pd-nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.pd-nav a{
  font-size:12px;letter-spacing:.18em;color:var(--dim);
  text-decoration:none;transition:.15s;text-shadow:none;
}
.pd-nav a:hover{color:var(--grn);text-shadow:0 0 10px rgba(61,255,115,.6)}
.pd-cartlink{border:1px solid var(--line);padding:6px 10px}
.pd-cartlink:hover{border-color:var(--grn)}

/* ============ LAYOUT ============ */
.pd-wrap{max-width:1180px;margin:0 auto;padding:38px 4vw 70px;min-height:58vh}

/* ============ FOOTER ============ */
.pd-foot{border-top:1px solid var(--line);padding:22px 4vw 30px}
.pd-foot .sys{font-size:10px;letter-spacing:.2em;color:var(--dim)}
.pd-foot .legal{font-size:10px;letter-spacing:.12em;color:var(--dimmer);margin-top:10px;line-height:1.9}
.pd-foot a{color:var(--dim)}
.pd-foot a:hover{color:var(--grn)}

/* ============ BUTTONS ============ */
.pd-inner .button,
.pd-inner button[type=submit],
.pd-inner input[type=submit],
.pd-inner .wc-block-components-button{
  font-family:var(--font);background:transparent;border:1px solid var(--grn);
  color:var(--grn);padding:11px 20px;font-size:12px;letter-spacing:.16em;
  text-transform:uppercase;cursor:pointer;border-radius:0;transition:.15s;
  text-decoration:none;display:inline-block;line-height:1.3;font-weight:400;
}
.pd-inner .button:hover,
.pd-inner button[type=submit]:hover,
.pd-inner input[type=submit]:hover,
.pd-inner .wc-block-components-button:hover{
  background:transparent;color:var(--grn);
  box-shadow:0 0 22px rgba(61,255,115,.35),inset 0 0 12px rgba(61,255,115,.12);
  transform:translateY(-1px);
}
.pd-inner .button.alt,
.pd-inner .button.checkout-button,
.pd-inner button[name=woocommerce_checkout_place_order],
.pd-inner .wc-block-components-button.wc-block-components-checkout-place-order-button,
.pd-inner .wc-block-cart__submit-button{
  background:var(--grn);color:#04120a;font-weight:700;
}
.pd-inner .button.alt:hover,
.pd-inner .button.checkout-button:hover,
.pd-inner button[name=woocommerce_checkout_place_order]:hover,
.pd-inner .wc-block-components-button.wc-block-components-checkout-place-order-button:hover,
.pd-inner .wc-block-cart__submit-button:hover{
  background:var(--grn2);color:#04120a;
}
.pd-inner .button:disabled,.pd-inner .button.disabled{
  background:transparent;color:var(--dimmer);border-color:var(--line);cursor:not-allowed;
}

/* ============ FORMS ============ */
.pd-inner input[type=text],.pd-inner input[type=email],.pd-inner input[type=tel],
.pd-inner input[type=password],.pd-inner input[type=search],.pd-inner input[type=number],
.pd-inner input[type=url],.pd-inner textarea,.pd-inner select{
  background:var(--panel2);border:1px solid var(--line);color:var(--ink);
  font-family:var(--font);font-size:13px;padding:10px 12px;border-radius:0;
  box-sizing:border-box;max-width:100%;
}
.pd-inner input:focus,.pd-inner textarea:focus,.pd-inner select:focus{
  outline:none;border-color:var(--grn);box-shadow:0 0 12px rgba(61,255,115,.18);
}
.pd-inner select option{background:var(--panel2);color:var(--ink)}
.pd-inner input:-webkit-autofill,
.pd-inner input:-webkit-autofill:hover,
.pd-inner input:-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 44px var(--panel2) inset!important;
  -webkit-text-fill-color:var(--ink)!important;
  caret-color:var(--ink);
}
.pd-inner label{
  font-size:11px;letter-spacing:.16em;color:var(--dim);text-transform:uppercase;
}
.pd-inner .required{color:var(--red);text-decoration:none}
.pd-inner ::placeholder{color:var(--dimmer)}

/* select2 (classic checkout country/state dropdowns) */
.pd-inner .select2-container--default .select2-selection--single{
  background:var(--panel2);border:1px solid var(--line);border-radius:0;height:auto;padding:5px 6px;
}
.pd-inner .select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--ink)}
.pd-inner .select2-container--default .select2-selection--single .select2-selection__arrow b{border-top-color:var(--grn)}
.pd-inner .select2-container--open .select2-selection--single{border-color:var(--grn)}
.select2-dropdown{background:var(--panel2);border:1px solid var(--grn);border-radius:0;color:var(--ink);font-family:var(--font)}
.select2-results__option{font-size:12px;letter-spacing:.04em}
.select2-container--default .select2-search--dropdown .select2-search__field{
  background:var(--bg);border:1px solid var(--line);color:var(--ink);font-family:var(--font);
}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected]{
  background:var(--grndk);color:var(--grn2);
}
.select2-container--default .select2-results__option[aria-selected=true],
.select2-container--default .select2-results__option[data-selected=true]{
  background:#0d1410;color:var(--ink);
}

/* ============ WOO: PRODUCT GRID ============ */
.pd-inner ul.products li.product{
  background:linear-gradient(180deg,rgba(10,13,11,.82),rgba(7,9,8,.86));
  border:1px solid var(--line);padding:16px 16px 18px;border-radius:0;
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
.pd-inner ul.products li.product:hover{
  transform:translateY(-4px);border-color:var(--grn);
  box-shadow:0 8px 30px rgba(0,0,0,.55),0 0 22px rgba(61,255,115,.22);
}
.pd-inner ul.products li.product a{text-decoration:none}
.pd-inner ul.products li.product .woocommerce-loop-product__title{
  font-size:16px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);padding:10px 0 4px;
}
.pd-inner ul.products li.product img{border:1px solid var(--line2)}
.pd-inner .price,.pd-inner .woocommerce-Price-amount{color:var(--grn)!important;letter-spacing:.06em}
.pd-inner .price del{color:var(--dimmer)!important;opacity:1}
.pd-inner .price ins{text-decoration:none}
.pd-inner .onsale{
  background:var(--grn);color:#04120a;border-radius:0;font-weight:700;
  letter-spacing:.12em;font-family:var(--font);min-height:0;line-height:2.2;padding:0 10px;
}
.pd-inner .star-rating span{color:var(--grn)}
.pd-inner .woocommerce-breadcrumb{
  color:var(--dimmer);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
}
.pd-inner .woocommerce-breadcrumb a{color:var(--dim)}
.pd-inner .woocommerce-result-count{color:var(--dim);font-size:11px;letter-spacing:.14em}
.pd-inner select.orderby{padding:8px 10px}

/* ============ WOO: SINGLE PRODUCT ============ */
.pd-inner div.product .product_title{font-size:clamp(26px,4vw,48px);letter-spacing:.1em}
.pd-inner div.product p.price{font-size:28px;font-weight:700;
  text-shadow:0 0 20px rgba(61,255,115,.35)}
.pd-inner div.product .woocommerce-tabs ul.tabs li{
  background:var(--panel2);border:1px solid var(--line);border-radius:0;
}
.pd-inner div.product .woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--panel2)}
.pd-inner div.product .woocommerce-tabs ul.tabs li a{color:var(--dim);letter-spacing:.12em;text-transform:uppercase;font-size:11px}
.pd-inner div.product .woocommerce-tabs ul.tabs li.active a{color:var(--grn)}
.pd-inner div.product .woocommerce-tabs ul.tabs::before{border-color:var(--line)}
.pd-inner .quantity .qty{width:74px;text-align:center}
.pd-inner .related.products>h2::before,
.pd-inner .upsells.products>h2::before{content:'// ';color:var(--grn)}

/* ============ WOO: TABLES (cart, order review, account orders) ============ */
.pd-inner table.shop_table{
  border:1px solid var(--line);border-radius:0;border-collapse:separate;border-spacing:0;
}
.pd-inner table.shop_table th{
  color:var(--dim);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  border-color:var(--line2);
}
.pd-inner table.shop_table td{border-color:var(--line2);color:var(--ink);font-size:13px}
.pd-inner table.shop_table td a{color:var(--ink)}
.pd-inner table.shop_table td a:hover{color:var(--grn)}
.pd-inner a.remove{color:var(--dim)!important;border:1px solid var(--line);border-radius:0;font-weight:400}
.pd-inner a.remove:hover{color:var(--red)!important;border-color:var(--red);background:transparent}
.pd-inner .cart_totals h2,.pd-inner #order_review_heading{font-size:18px}
.pd-inner .coupon .input-text{width:140px!important}

/* ============ WOO: CHECKOUT — FULL DARK + CENTERED SECTION ============ */
/* V3.2 FIX — CHECKOUT MAIN BODY WAS LEFT-ALIGNED:
   cart/checkout/account render through page.php inside .pd-content, whose
   74ch prose cap (meant for blog posts) has no auto margins, so the whole
   checkout hugged the left edge of the 1180px wrap. Lift the cap on
   WooCommerce pages and let the checkout's own max-width blocks (which DO
   have auto margins) sit dead centre. */
body.pd-inner.woocommerce-cart .pd-article .pd-content,
body.pd-inner.woocommerce-checkout .pd-article .pd-content,
body.pd-inner.woocommerce-account .pd-article .pd-content{
  max-width:none;margin-left:auto;margin-right:auto;
}
/* the page title sits above the centered form — centre it on checkout
   (covers the order-received / thank-you screen too) */
body.pd-inner.woocommerce-checkout .pd-title{text-align:center}

/* classic (shortcode) checkout: constrain + center the whole form */
.pd-inner form.woocommerce-checkout,
.pd-inner form.checkout_coupon,
.pd-inner .woocommerce-form-coupon-toggle,
.pd-inner .woocommerce-notices-wrapper{max-width:920px;margin-left:auto;margin-right:auto}
.pd-inner form.woocommerce-checkout #customer_details{
  background:var(--panel2);border:1px solid var(--line);padding:26px 26px 12px;margin-bottom:22px;
}
.pd-inner form.woocommerce-checkout #order_review_heading{
  max-width:920px;margin-left:auto;margin-right:auto;
}
.pd-inner form.woocommerce-checkout #order_review{
  background:var(--panel2);border:1px solid var(--line);padding:22px 26px;
}
.pd-inner .woocommerce-billing-fields h3,
.pd-inner .woocommerce-additional-fields h3{font-size:13px;letter-spacing:.24em;color:var(--grn)}
.pd-inner .woocommerce-checkout .form-row{margin-bottom:12px}
.pd-inner #payment{background:var(--panel);border:1px solid var(--line);border-radius:0}
.pd-inner #payment div.payment_box{background:var(--panel2);color:var(--dim);border-radius:0;font-size:12px}
.pd-inner #payment div.payment_box::before{border-bottom-color:var(--panel2)}
.pd-inner #payment ul.payment_methods{border-bottom:1px solid var(--line);padding:14px}
.pd-inner form.login,.pd-inner form.register{
  background:var(--panel2);border:1px solid var(--line);border-radius:0;
}
.pd-inner .woocommerce-form-login .show-password-input::after{color:var(--dim)}

/* block (Gutenberg) checkout: center, panel it, darken every control */
.pd-inner .wp-block-woocommerce-checkout,
.pd-inner .wp-block-woocommerce-cart{color:var(--ink)}
.pd-inner .wc-block-components-sidebar-layout{max-width:1020px;margin:0 auto}
.pd-inner .wc-block-components-main{
  background:var(--panel2);border:1px solid var(--line);padding:24px!important;
}
.pd-inner .wc-block-components-sidebar .wc-block-components-panel,
.pd-inner .wc-block-components-order-summary{background:transparent}
.pd-inner .wc-block-components-checkout-step__title,
.pd-inner .wc-block-components-title{
  text-transform:uppercase;letter-spacing:.14em;color:var(--ink);
}
.pd-inner .wc-block-components-checkout-step__description{color:var(--dim);font-size:12px}
.pd-inner .wc-block-components-product-name{
  color:var(--ink)!important;text-transform:uppercase;letter-spacing:.08em;
}
.pd-inner .wc-block-components-totals-wrapper,
.pd-inner .wc-block-cart-items td,.pd-inner .wc-block-cart-items th,
.pd-inner .wc-block-components-panel,
.pd-inner .wc-block-components-address-card,
.pd-inner .wc-block-components-radio-control-accordion-option,
.pd-inner .wc-block-components-checkout-step{border-color:var(--line)!important}
.pd-inner .wc-block-components-text-input input,
.pd-inner .wc-block-components-select .wc-block-components-select__select,
.pd-inner .wc-block-components-combobox .wc-block-components-combobox-control input,
.pd-inner .wc-block-components-form .wc-block-components-text-input input{
  background:var(--bg)!important;border:1px solid var(--line)!important;
  color:var(--ink)!important;border-radius:0!important;font-family:var(--font)!important;
}
.pd-inner .wc-block-components-text-input input:focus,
.pd-inner .wc-block-components-select .wc-block-components-select__select:focus{
  border-color:var(--grn)!important;box-shadow:0 0 12px rgba(61,255,115,.18)!important;
}
.pd-inner .wc-block-components-text-input label,
.pd-inner .wc-block-components-select label,
.pd-inner .wc-block-components-combobox label,
.pd-inner .wc-block-components-checkbox__label{color:var(--dim)!important}
.pd-inner .wc-block-components-select__select option{background:var(--panel2);color:var(--ink)}
.pd-inner .wc-block-components-quantity-selector{border:1px solid var(--line);border-radius:0;background:var(--bg)}
.pd-inner .wc-block-components-quantity-selector input{background:transparent;border:none;color:var(--ink)}
.pd-inner .wc-block-components-radio-control__option{color:var(--ink)}
.pd-inner .wc-block-components-payment-method-label{color:var(--ink)}
.pd-inner .wc-block-checkout__actions_row{justify-content:center}

/* ============ WOO: NOTICES ============ */
.pd-inner .woocommerce-message,.pd-inner .woocommerce-info,.pd-inner .woocommerce-error{
  background:var(--panel2);color:var(--ink);border-top-color:var(--grn);
  font-size:12px;letter-spacing:.06em;border-radius:0;
}
.pd-inner .woocommerce-message::before,.pd-inner .woocommerce-info::before{color:var(--grn)}
.pd-inner .woocommerce-error{border-top-color:var(--red)}
.pd-inner .woocommerce-error::before{color:var(--red)}

/* ============ WOO: MY ACCOUNT ============ */
.pd-inner .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--line)}
.pd-inner .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line2)}
.pd-inner .woocommerce-MyAccount-navigation li:last-child{border-bottom:none}
.pd-inner .woocommerce-MyAccount-navigation li a{
  display:block;padding:11px 14px;color:var(--dim);text-decoration:none;
  font-size:12px;letter-spacing:.16em;text-transform:uppercase;
}
.pd-inner .woocommerce-MyAccount-navigation li.is-active a,
.pd-inner .woocommerce-MyAccount-navigation li a:hover{
  color:var(--grn);background:rgba(61,255,115,.05);
}

/* ============ WOO: PAGINATION ============ */
.pd-inner nav.woocommerce-pagination ul{border:1px solid var(--line);border-radius:0}
.pd-inner nav.woocommerce-pagination ul li{border-right:1px solid var(--line)}
.pd-inner nav.woocommerce-pagination ul li a,
.pd-inner nav.woocommerce-pagination ul li span{color:var(--dim)}
.pd-inner nav.woocommerce-pagination ul li a:focus,
.pd-inner nav.woocommerce-pagination ul li a:hover{background:var(--grndk);color:var(--grn2)}
.pd-inner nav.woocommerce-pagination ul li span.current{background:var(--grn);color:#04120a}

/* ============ BLOG / GENERIC CONTENT ============ */
.pd-article .pd-content{max-width:74ch}
.pd-article .pd-content img{max-width:100%;height:auto;border:1px solid var(--line)}
.pd-postcard{
  border:1px solid var(--line);background:var(--panel2);padding:20px 22px;margin-bottom:14px;
  transition:border-color .15s;
}
.pd-postcard:hover{border-color:var(--grn)}
.pd-postcard h2{margin:0 0 8px;font-size:18px}
.pd-postcard h2 a{color:var(--ink);text-decoration:none}
.pd-postcard .pd-meta{font-size:10px;letter-spacing:.2em;color:var(--dimmer);margin-bottom:10px}
.pd-postcard p{color:var(--dim);font-size:13px;margin:0}

/* ============ RESPONSIVE ============ */
@media(max-width:768px){
  .pd-head{padding:12px 4vw}
  .pd-nav{gap:10px}
  .pd-nav a{font-size:11px;letter-spacing:.12em}
  .pd-wrap{padding:26px 5vw 50px}
  .pd-inner form.woocommerce-checkout #customer_details{padding:18px 16px 6px}
}
@media(prefers-reduced-motion:reduce){
  .pd-inner *,.pd-inner *::before,.pd-inner *::after{animation:none!important;transition:none!important}
}

/* ============ V3.1 — MINIMAL CHECKOUT ============ */
/* functions.php trims the classic checkout to name / email / optional
   phone / country / ZIP — and to just FIRST NAME + EMAIL when the cart
   holds only trial products. WooCommerce floats billing into a half-width
   column and reserves the other half for the (now removed) shipping /
   order-notes column, so the short form is stretched back to the full
   panel width here. Express payment buttons (Apple Pay / Google Pay etc.)
   are printed by the payment gateway above the form and are untouched. */
.pd-inner form.woocommerce-checkout #customer_details .col-1,
.pd-inner form.woocommerce-checkout #customer_details .col-2{
  float:none;width:100%;max-width:none;
}

/* ---- FREE-TRIAL CHECKOUT (cart = *-trial products only) ---- */
/* body class pd-trial-checkout is set in functions.php */
body.pd-inner.pd-trial-checkout .woocommerce-form-coupon-toggle{display:none}
body.pd-inner.pd-trial-checkout .wp-block-woocommerce-checkout-order-summary-coupon-form-block{display:none}

/* V3.3 — STACK the trial fields. FIRST NAME and EMAIL are form-row-wide
   now (functions.php), and this unfloats EVERY row on the trial checkout
   so rows injected by other plugins (marketing opt-in checkboxes and the
   like) also span the full panel instead of being wedged into a sliver
   with their label wrapping one word per line. Trial checkout only —
   the paid checkout keeps its two-column rows (name, country + ZIP). */
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row{
  float:none;width:100%;max-width:none;clear:both;
}
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row label{
  display:block;width:auto;line-height:1.7;
}
/* checkbox rows: box and label share one readable line */
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row label.checkbox,
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row .woocommerce-form__label-for-checkbox{
  display:inline-flex;align-items:flex-start;gap:9px;
}
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row input[type=checkbox]{
  flex:0 0 auto;margin-top:3px;
}

/* V3.5 — KEEP EVERYTHING INSIDE ITS BOX (trial checkout).
   Two overflow bugs on narrow screens: (1) the V3.3 full-width rows
   didn't force border-box sizing, so row/input padding was added ON TOP
   of the 100% width and the FIRST NAME / EMAIL inputs ran past the
   panel's right padding; (2) WooCommerce floats the place-order button
   to the right, letting START FREE TRIAL spill out of the payment box.
   Fix: border-box + max-width on rows, wrappers and inputs, and the
   place-order button becomes an unfloated, full-row, centered block
   clipped to its panel's padding. */
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row,
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row .woocommerce-input-wrapper{
  box-sizing:border-box;max-width:100%;
}
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row .woocommerce-input-wrapper{
  display:block;width:100%;
}
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row input.input-text,
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row input[type=text],
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row input[type=email],
body.pd-inner.pd-trial-checkout form.woocommerce-checkout .form-row input[type=tel]{
  display:block;width:100%;max-width:100%;box-sizing:border-box;
}
body.pd-inner.pd-trial-checkout #payment .form-row.place-order{
  box-sizing:border-box;max-width:100%;float:none;clear:both;
}
body.pd-inner.pd-trial-checkout #payment #place_order,
body.pd-inner.pd-trial-checkout button[name=woocommerce_checkout_place_order]{
  float:none;display:block;width:100%;max-width:100%;box-sizing:border-box;
  margin:0 auto;text-align:center;
}

.pd-trial-note{
  margin:4px 0 16px;padding:10px 12px;border:1px dashed var(--line);
  color:var(--dim);font-size:10px;letter-spacing:.16em;line-height:1.9;
  text-transform:uppercase;
}
.pd-trial-note b{color:var(--grn);font-weight:700}

/* ============ V3.5.2 · ✕ REMOVE IN THE CHECKOUT SUMMARY ============
   functions.php appends an .pd-co-remove link to every line item in
   the classic checkout's YOUR ORDER table (and the trial checkout).
   Styled as a small red-outline chip that fills red on hover. */
/* V3.5.7 — a BARE trash can now: the square border is gone, the glyph
   grew to 14px, and it keeps an 18px hit target. Hover/focus brightens
   the red and glows the icon itself (no box to fill any more). */
.pd-inner .pd-co-remove{
  display:inline-flex;align-items:center;justify-content:center;
  width:18px;height:18px;padding:0;box-sizing:border-box;
  margin-left:10px;border:0;background:transparent;color:var(--red);
  text-decoration:none;vertical-align:middle;line-height:0;
  transition:color .12s,filter .12s;
}
.pd-inner .pd-co-remove svg{display:block;width:14px;height:14px}
.pd-inner .pd-co-remove:hover,
.pd-inner .pd-co-remove:focus{
  color:#ff6b6b;filter:drop-shadow(0 0 6px rgba(255,59,59,.65));
  outline:none;
}

/* ============ V3.5.3 · ✕ REMOVE ON THE BLOCK CHECKOUT ============
   functions.php now pins the same .pd-co-remove chip onto every
   line item of the BLOCK/express checkout's ORDER SUMMARY card
   (the classic checkout keeps its filter-rendered links). The item
   rows there are tight flex stacks, so give the chip its own line. */
/* V3.5.8 — NAME AND PRICE ON THE SAME LINE. The can used to sit IN the
   price column's flow, making that column two items tall — so when the
   row centered its columns, the price's line floated ABOVE the name's.
   The can is now position:absolute, anchored just below the price and
   right-aligned: out of the layout flow entirely, so the price is a
   single line that centers exactly like the single-line name. Visually
   the can stays where it was (4px under the figure). */
.pd-inner .wc-block-components-order-summary-item__total-price{
  white-space:nowrap;
  position:relative; /* anchor for the absolutely-placed can below */
}
.pd-inner .wc-block-components-order-summary-item .pd-co-remove{
  position:absolute;right:0;top:100%;
  display:inline-flex;margin:4px 0 0;
}
/* V3.5.7 — NAME + PRICE RIDE LOWER, level with the thumbnail: center
   the row's columns against the product image. Both layout modes the
   block has shipped are covered — align-items for flex versions,
   vertical-align for the table-cell versions (each is a no-op in the
   other mode). */
.pd-inner .wc-block-components-order-summary-item{align-items:center}
.pd-inner .wc-block-components-order-summary-item__image,
.pd-inner .wc-block-components-order-summary-item__description{vertical-align:middle}
/* V3.5.5 — ONE PRICE PER LINE (stylesheet backstop for the script's
   tidy pass): the block prints the unit price under the item name AND
   the line total on the right — hide the under-name copy. Direct-child
   + individual-prices only, so the right-side total is never touched. */
.pd-inner .wc-block-components-order-summary-item__description > .wc-block-components-product-price,
.pd-inner .wc-block-components-order-summary-item .wc-block-components-order-summary-item__individual-prices{
  display:none;
}

/* ========================================================================
   V3.6.0 — LEGAL PAGES (.pd-legal on page-terms-of-service.php and
   page-refund-policy.php) + footer link row on inner pages.
   ======================================================================== */
.pd-inner .pd-legal{max-width:760px}
.pd-inner .pd-legal .pd-legal-date{
  font-size:10px;letter-spacing:.24em;color:var(--dim);
  margin:-6px 0 26px;
}
.pd-inner .pd-legal h2{
  font-size:13px;letter-spacing:.22em;color:var(--grn);
  margin:34px 0 12px;padding-top:18px;border-top:1px solid var(--line);
}
.pd-inner .pd-legal p{
  font-size:12px;letter-spacing:.06em;line-height:2;color:var(--ink);
  margin:0 0 14px;
}
.pd-inner .pd-legal ul{margin:0 0 14px;padding-left:20px}
.pd-inner .pd-legal li{
  font-size:12px;letter-spacing:.06em;line-height:2;color:var(--ink);
  margin-bottom:6px;
}
.pd-inner .pd-legal a{color:var(--grn);text-decoration:none;border-bottom:1px solid var(--grndk)}
.pd-inner .pd-legal a:hover{color:var(--grn2);border-bottom-color:var(--grn)}
.pd-inner .pd-foot-links{
  margin-top:10px;font-size:10px;letter-spacing:.2em;
}
.pd-inner .pd-foot-links a{color:var(--dim);text-decoration:none;transition:color .15s}
.pd-inner .pd-foot-links a:hover{color:var(--grn)}
