/*
Theme Name: Sovanna Partner Portal
Template: twentytwentyfive
Description: Sovanna Wellness look for the WooCommerce partner portal — same palette, type and header as sovannawellness.com. Source: luminex-setup/tools/proxmox/sovanna-portal-theme.
Version: 1.7
*/
:root { --cream: #F7EFE1; --cream-2: #FBF6EC; --indigo: #2B4B7E; --indigo-dark: #1F3760; --bronze: #C08A54; --bark: #4A3A30; --stone: #ADA79A; --amber: #E9B145; --line: #E6D9C3; --card: #F1E7D4; --field: #FBF6EC; }
body { background: var(--cream); color: var(--bark); }
a { text-underline-offset: 3px; }
/* header */
.sov-header { padding-left: 0; padding-right: 0; }
.sov-footer .wp-block-group p, .sov-footer h2 { text-align: left; }
.sov-header { background: var(--cream-2); border-bottom: 2px solid var(--line); }
.sov-header .wp-block-navigation a { font-weight: 700; text-decoration: none; padding: 6px 0; border-bottom: 3px solid transparent; }
.sov-header .wp-block-navigation a:hover, .sov-header .wp-block-navigation .current-menu-item > a { border-bottom-color: var(--bronze); }
.sov-phone { background: var(--indigo); color: #fff !important; border-radius: 12px; padding: 10px 20px; text-decoration: none !important; font-weight: 700; display: inline-block; }
.sov-phone:hover { background: var(--indigo-dark); }
.sov-tag { font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--bronze); font-weight: 700; }
/* footer */
.sov-footer { background: var(--indigo-dark); color: #F7EFE1; }
.sov-footer a { color: #fff; }
/* WooCommerce surfaces */
.woocommerce-store-notice, p.demo_store { background: var(--indigo) !important; color: #F7EFE1 !important; font-family: inherit; position: static !important; margin: 0; padding: 10px 16px; font-size: .95rem; }  /* a strip at the top, never a bar that covers buttons */
.woocommerce-store-notice a { color: var(--amber) !important; }
.wc-block-components-button, .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button,
.wp-block-button__link, .wc-block-components-product-button .wp-block-button__link, .single_add_to_cart_button, button.button, .woocommerce-button, .woocommerce-Button, .wc-block-components-totals-coupon__button, .wp-element-button {
  background: var(--indigo) !important; color: #fff !important; border-color: var(--indigo) !important; border-radius: 10px !important; font-weight: 700 !important; }
.wc-block-components-button:hover, .wp-element-button:hover, .single_add_to_cart_button:hover, button.button:hover, .woocommerce-button:hover { background: var(--indigo-dark) !important; }
.wc-block-components-button.outlined, .wc-block-components-product-button .added_to_cart { background: transparent !important; color: var(--indigo) !important; }
.wc-block-components-product-price, .price, .wc-block-grid__product-price, .woocommerce-Price-amount, .wc-block-components-totals-item__value { color: var(--indigo); }
.wc-block-components-product-price .wc-block-components-product-price__value, .price bdi { font-family: "Playfair Display", Georgia, serif; font-weight: 600; }
.wp-block-post-title a, .wc-block-components-product-name, .wc-block-grid__product-title { color: var(--indigo); font-family: "Playfair Display", Georgia, serif; }
.wc-block-components-product-image img, .wp-block-woocommerce-product-image img, .woocommerce-product-gallery img { border-radius: 14px; border: 1px solid var(--line); background: var(--cream); }
.wp-block-woocommerce-product-collection .wc-block-product, .wc-block-grid__product { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 18px; }
.sovanna-pro { background: var(--card); border-left: 5px solid var(--bronze); padding: 12px 16px; border-radius: 0 10px 10px 0; }
.sovanna-stock, p.stock { color: var(--indigo); font-weight: 700; }
p.stock.out-of-stock { color: #a33; }
/* forms: login, register, checkout, account */
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .wc-block-components-text-input input, .wc-block-components-textarea textarea, .wc-block-components-select select, .wc-block-components-form .wc-block-components-text-input input {
  background: var(--field); border: 1px solid #D8C9AC; border-radius: 10px; padding: 12px 14px; font-size: 1rem; color: var(--bark); }
.woocommerce form .form-row input.input-text:focus, .wc-block-components-text-input input:focus { outline: 3px solid var(--amber); outline-offset: 2px; border-color: var(--bronze); }
.woocommerce-form-login, .woocommerce-form-register, .woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content { background: var(--card); border: 1px solid var(--line) !important; border-radius: 16px; padding: 24px !important; }
.woocommerce .col2-set { display: flex; flex-wrap: wrap; gap: 24px; }
.woocommerce .col2-set .col-1, .woocommerce .col2-set .col-2 { float: none; width: auto; flex: 1 1 320px; max-width: none; }
.woocommerce .col2-set h2 { margin-top: 0; }
.woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; }
.woocommerce-MyAccount-navigation li a { display: block; padding: 10px 0; border-bottom: 1px solid var(--line); text-decoration: none; font-weight: 600; color: var(--indigo); }
.woocommerce-MyAccount-navigation li.is-active a { color: var(--bronze); }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner { border-radius: 12px; border-color: var(--bronze); background: var(--cream-2); color: var(--bark); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--bronze); }
.wc-block-cart, .wc-block-checkout { color: var(--bark); }
.wc-block-cart__main, .wc-block-checkout__main, .wc-block-cart__sidebar, .wc-block-checkout__sidebar { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 20px 24px; box-sizing: border-box; }
.wc-block-components-sidebar .wc-block-components-totals-wrapper, .wc-block-components-order-summary, .wc-block-components-totals-coupon, .wc-block-components-panel { background: transparent; border-radius: 0; }
.wc-block-components-totals-wrapper, .wc-block-components-order-summary-item, .wc-block-cart-items__row, .wc-block-cart-items__header { border-color: var(--line) !important; }
.wc-block-cart-items__header, .wc-block-components-sidebar .wc-block-components-title, .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { color: var(--indigo); }
.wc-block-components-totals-footer-item { background: var(--cream); border-radius: 10px; padding-inline: 12px; }
.wc-block-components-totals-item__value, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { color: var(--indigo); font-family: "Playfair Display", Georgia, serif; }
.wc-block-cart-item__image img { border-radius: 10px; border: 1px solid var(--line); }
.wc-block-components-quantity-selector { border-color: var(--line); border-radius: 10px; }
.wc-block-components-notice-banner.is-success, .wc-block-components-notice-banner.is-info { background: var(--cream-2); border-color: var(--bronze); color: var(--bark); }
.wc-block-components-notice-banner.is-success > svg, .wc-block-components-notice-banner.is-info > svg { background: var(--bronze); fill: #fff; }
.wc-block-components-notice-banner a { color: var(--indigo); }
.wc-block-components-checkout-step, .wc-block-components-checkout-step__container { color: var(--bark); }
.wc-block-components-radio-control__option, .wc-block-components-checkbox { color: var(--bark); }
.wc-block-components-radio-control__input:checked { border-color: var(--indigo) !important; background: var(--indigo) !important; }
.wc-block-components-shipping-rates-control__package, .wc-block-components-payment-method-label { color: var(--bark); }
.wc-block-cart__submit-container { background: transparent; }
.wc-block-components-checkout-step__title, .wc-block-components-title { font-family: "Playfair Display", Georgia, serif; color: var(--indigo); }
table.shop_table, .woocommerce-orders-table { background: var(--card); border: 1px solid var(--line) !important; border-radius: 14px; }
table.shop_table th { color: var(--indigo); }
.wc-block-components-product-metadata__description, .woocommerce-product-details__short-description { color: var(--bark); }
.wc-block-components-radio-control__input:checked::before, .wc-block-components-radio-control__input:checked { border-color: var(--indigo); }
.wc-block-components-radio-control__input:checked::before { background: var(--indigo); }
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background: var(--indigo); border-color: var(--indigo); }
.wc-block-components-order-summary, .wc-block-checkout__sidebar .wc-block-components-panel { border: 0; }
.wc-block-checkout__sidebar > .wp-block-woocommerce-checkout-order-summary-block { border: 0 !important; }

/* no white surfaces anywhere: WooCommerce block internals that default to white */
.wc-block-components-quantity-selector, .wc-block-components-totals-coupon__input input, .wc-block-components-panel__button, .wc-block-components-dropdown-selector, .wc-block-components-combobox, .wc-block-components-country-input, .wc-block-components-state-input, .wc-block-components-address-form__phone input,
.wc-block-components-shipping-rates-control__package, .wc-block-components-radio-control, .wc-block-components-payment-method-label, .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option, .wc-block-components-radio-control-accordion-content, .wc-block-components-checkout-order-summary__content, .wc-block-components-order-summary-item, .wc-block-components-order-summary__button, .wc-block-components-panel__content,
.woocommerce-checkout-review-order-table, .woocommerce-MyAccount-orders, .woocommerce-Addresses .woocommerce-Address, .woocommerce-address-fields, .wc-block-components-notice-banner, .woocommerce-message, .woocommerce-info, .woocommerce-error { background: var(--card) !important; }
.wc-block-components-text-input input, .wc-block-components-textarea textarea, .wc-block-components-combobox .components-combobox-control__input, .wc-block-components-country-input input, .wc-block-components-state-input input, .wc-block-components-state-input select, .wc-block-components-select select, .wc-block-components-totals-coupon__input input, .wc-block-components-quantity-selector input { background: var(--field) !important; color: var(--bark); }
.wc-block-components-radio-control__option, .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option { border-color: var(--line) !important; }
.wc-block-components-order-summary-item__image img, .wc-block-cart-item__image img { background: var(--cream); }
/* My account: the account menu on the left, content beside it on the right (operator, 2026-09-15) */
.woocommerce-account .woocommerce, .woocommerce-account .wp-block-woocommerce-classic-shortcode .woocommerce { display: flex; flex-wrap: wrap; gap: 24px; align-items: flex-start; }
.woocommerce-account .woocommerce-MyAccount-navigation { order: 1; flex: 0 0 240px; width: 240px; float: none; }
.woocommerce-account .woocommerce-MyAccount-content { order: 2; flex: 1 1 420px; width: auto; float: none; min-width: 0; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper, .woocommerce-account .woocommerce > .col2-set { flex: 1 1 100%; }
@media (max-width: 760px) { .woocommerce-account .woocommerce-MyAccount-navigation { flex-basis: 100%; width: auto; } }
.woocommerce-orders-table { width: 100%; border-collapse: separate; border-spacing: 0; }
.woocommerce-orders-table th, .woocommerce-orders-table td { padding: 12px 10px; border-bottom: 1px solid var(--line); vertical-align: middle; }
.woocommerce-orders-table th { color: var(--indigo); }
.woocommerce-orders-table .woocommerce-button { padding: 8px 14px !important; font-size: .9rem !important; }
.woocommerce-orders-table__cell-order-actions { white-space: nowrap; }
.woocommerce-orders-table__cell-order-actions a.woocommerce-button, .woocommerce-MyAccount-orders td.woocommerce-orders-table__cell-order-actions .button { display: inline-block !important; margin: 0 6px 0 0 !important; width: auto; }
/* pickers: selectWoo/select2 on the classic forms, the native select in block checkout */
.select2-container .select2-selection--single, .select2-container--default .select2-selection--single { background: var(--field); border: 1px solid #D8C9AC; border-radius: 10px; height: auto; padding: 9px 14px; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--bark); line-height: 1.5; padding-left: 0; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 100%; right: 10px; }
.select2-container--default .select2-selection--single .select2-selection__arrow b { border-color: var(--indigo) transparent transparent transparent; }
.select2-container--open .select2-selection--single { outline: 3px solid var(--amber); outline-offset: 2px; }
.select2-dropdown { background: var(--card); border: 1px solid #D8C9AC; border-radius: 10px; overflow: hidden; box-shadow: 0 10px 30px rgba(74,58,48,.18); }
.select2-search--dropdown { padding: 8px; }
.select2-search--dropdown .select2-search__field { background: var(--field) !important; border: 1px solid #D8C9AC !important; border-radius: 8px; color: var(--bark); padding: 8px 10px; }
.select2-results__option { color: var(--bark); padding: 8px 14px; }
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--indigo) !important; color: #fff !important; }
.select2-container--default .select2-results__option[aria-selected=true], .select2-container--default .select2-results__option[data-selected=true] { background: var(--cream); color: var(--bark); }
.wc-blocks-components-select__select, .wc-block-components-select select, select, .woocommerce form .form-row select { background: var(--field) !important; color: var(--bark); border: 1px solid #D8C9AC; border-radius: 10px; }
select option, .wc-blocks-components-select__select option { background: var(--field); color: var(--bark); }
.wc-blocks-components-select__container { background: transparent; }
/* sweep 2026-09-15 (lab/portal-whitescan.js): the last white surfaces */
.wc-blocks-components-select__container, .wc-blocks-components-select__select { background: var(--field) !important; border-color: #D8C9AC !important; border-radius: 10px; }
.wc-block-components-checkbox__input, .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox], .wc-block-components-radio-control__input, input[type=checkbox], input[type=radio] { background: var(--field) !important; border: 1px solid #B8A585 !important; }
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked, input[type=checkbox]:checked { background: var(--indigo) !important; border-color: var(--indigo) !important; }
.wc-block-components-radio-control__input:checked { border-color: var(--indigo) !important; }
.wc-block-components-radio-control__input:checked::before { background: var(--indigo) !important; }
.wc-block-components-textarea, .wc-block-components-textarea textarea, .wc-block-checkout__add-note textarea, .wc-block-components-order-note textarea, textarea { background: var(--field) !important; border: 1px solid #D8C9AC !important; border-radius: 10px; color: var(--bark); }
.wc-block-components-address-form__address_2-hidden-input, input.qty, .quantity input, .woocommerce-product-gallery__trigger { background: var(--field) !important; border-color: #D8C9AC; border-radius: 10px; }
.wc-block-mini-cart__drawer, .wc-block-components-drawer, .wc-block-components-drawer__screen-overlay { background: var(--cream) !important; }
.wc-block-mini-cart__drawer .wc-block-mini-cart__footer, .wc-block-mini-cart__products-table, .wc-block-mini-cart__empty-cart-wrapper { background: var(--cream) !important; }
img.zoomImg { background: transparent !important; }
.wc-block-components-combobox .components-combobox-control__suggestions-container, .components-form-token-field__suggestions-list, .wc-block-components-combobox-control ul { background: var(--card) !important; color: var(--bark); }
.components-form-token-field__suggestion.is-selected { background: var(--indigo) !important; color: #fff !important; }
