#sinalite-box label {
    display: block;
    font-weight: 600;
    margin-bottom: 4px;
}

#sinalite-box select.sinalite-option {
    width: 100%;
    padding: 5px;
    border: 1px solid #0a3161;
    border-radius: 6px;
    margin-bottom: 5px;
    background: #fff;
}

#sinalite-box select.sinalite-option:focus {
    border-color: #0073aa;
    outline: none;
}
#sinalite-price-display {
    font-size: 26px;
    font-weight: 700;
    color: #b31942;
    margin: 15px 0;
}

#sinalite-price-display::before {
    content: "Your Price:";
    display: block;
    font-size: 24px;
    font-weight: 600;
    color: #777;
    margin-bottom: 4px;
}

/* /* ============================================================
   DOUBLE RIVER PRINTING — WooCommerce Checkout & Cart CSS
   ============================================================ */

/* ── CHECKOUT: Order heading ── */
#order_review_heading {
    font-size: 0 !important;
}
#order_review_heading::after {
    content: "Review Your Order";
    font-size: 1.5rem;
    font-weight: 700;
}

/* ── CHECKOUT: Rename Shipment to Shipping ── */
.woocommerce-shipping-totals th {
    font-size: 0 !important;
}
.woocommerce-shipping-totals th::after {
    content: "Shipping";
    font-size: 1rem;
    font-weight: 600;
}

/* ── CHECKOUT: Shipping options — clean card layout ── */
body.woocommerce-checkout .woocommerce-shipping-methods li {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    align-items: center !important;
    padding: 10px 14px !important;
    margin-bottom: 6px !important;
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s, background 0.2s !important;
}

body.woocommerce-checkout .woocommerce-shipping-methods li input[type="radio"] {
    margin: 0 10px 0 0 !important;
    flex-shrink: 0 !important;
    accent-color: #0073aa !important;
}

body.woocommerce-checkout .woocommerce-shipping-methods li label {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 0 !important;
    cursor: pointer !important;
    font-size: 0.95em !important;
    color: #333 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    gap: 8px !important;
    min-width: 0 !important;
}

body.woocommerce-checkout .woocommerce-shipping-methods li label .woocommerce-Price-amount {
    font-weight: 600 !important;
    color: #0073aa !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
}
/* ── Give shipping td full width by hiding the th ── */
.woocommerce-shipping-totals th {
    display: none !important;
}

.woocommerce-shipping-totals td {
    width: 100% !important;
    display: block !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#shipping_method {
    width: 100% !important;
}

#shipping_method li {
    box-sizing: border-box !important;
    width: 100% !important;
    padding: 10px 14px !important;
    margin-bottom: 6px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 6px !important;
    background: #fff !important;
    list-style: none !important;
    display: flex !important;
    align-items: center !important;
}

#shipping_method li label {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    gap: 8px !important;
}

#shipping_method li label .woocommerce-Price-amount {
    margin-left: auto !important;
    color: #0073aa !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}
.woocommerce-shipping-totals td {
    width: 100% !important;
    display: block !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

#shipping_method {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}
/* ============================================================
   DRP SHOP PAGE — Custom Styling
   ============================================================ */

/* ── Overall layout gap ── */
.drp-shop-wrap {
    gap: 40px !important;
}

/* ── Sidebar width ── */
.drp-shop-wrap {
    grid-template-columns: 260px 1fr !important;
}

/* ── Search box ── */
.drp-search-wrap {
    border-color: #0a3161 !important;
    border-radius: 4px !important;
}

/* ── Categories label ── */
.drp-cats-label {
    color: #b31942 !important;
    font-size: 10px !important;
    letter-spacing: 0.2em !important;
}

/* ── Sidebar category links ── */
.drp-cat-link {
    font-size: 13px !important;
    padding: 8px 10px !important;
    border-radius: 4px !important;
}

.drp-cat-link.active {
    background: #0a3161 !important;
}

.drp-cat-link:hover {
    background: #f0f4f8 !important;
    color: #0a3161 !important;
}

/* ── Category count badges ── */
.drp-cat-count {
    font-size: 11px !important;
    background: rgba(10,49,97,0.08) !important;
    border-radius: 4px !important;
}

.drp-cat-link.active .drp-cat-count {
    background: rgba(255,255,255,0.25) !important;
}

/* ── Results header ── */
.drp-results-hdr {
    border-bottom-color: #0a3161 !important;
    border-bottom-width: 2px !important;
}

.drp-results-hdr h2 {
    color: #0a3161 !important;
    font-size: 22px !important;
}

/* ── Category tiles grid ── */
.drp-cat-grid {
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)) !important;
    gap: 20px !important;
}

/* ── Individual category tile ── */
.drp-cat-tile {
    border-radius: 8px !important;
    border-color: #e0e0e0 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
}

.drp-cat-tile:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important;
    transform: translateY(-4px) !important;
}

/* ── Category tile image height ── */
.drp-cat-tile-img {
    height: 120px !important;
}

/* ── Category tile text ── */
.drp-cat-tile-name {
    font-size: 12px !important;
    color: #0a3161 !important;
    font-weight: 700 !important;
}

.drp-cat-tile-count {
    color: #b31942 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

/* ── Product grid tiles ── */
.drp-prod-card {
    border-radius: 4px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
}

.drp-prod-card:hover {
    box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important;
    transform: translateY(-4px) !important;
}

.drp-prod-img {
    height: 160px !important;
}

.drp-prod-name {
    color: #0a3161 !important;
    font-size: 13px !important;
}

.drp-prod-price {
    color: #b31942 !important;
}

/* ── Clear filter link ── */
.drp-clear {
    color: #b31942 !important;
}

/* ── No results ── */
.drp-btn-back {
    background: #0a3161 !important;
}

/* ── Mobile ── */
@media (max-width: 768px) {
    .drp-shop-wrap {
        grid-template-columns: 1fr !important;
    }
    .drp-cat-grid {
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important;
    }
}

/* ── Product feature layout descriptions ── */
.drp-feature-layout {
    font-family: inherit;
    line-height: 1.6;
    color: #444;
}
.drp-feature-layout img {
    max-width: 300px;
    height: auto;
    display: block;
    margin: 12px 0;
}
.drp-feature-layout h4 {
    color: #0a3161;
    margin: 16px 0 8px;
}

/* ── Product spec table descriptions ── */
.drp-product-specs { font-family: inherit; margin: 16px 0; }
.drp-spec-row { display: flex; gap: 16px; padding: 10px 0; border-bottom: 1px solid #f0f0f0; align-items: flex-start; }
.drp-spec-row:last-child { border-bottom: none; }
.drp-spec-label { font-weight: 700; color: #0a3161; min-width: 140px; flex-shrink: 0; font-size: .9em; padding-top: 2px; }
.drp-spec-value { color: #444; font-size: .9em; line-height: 1.6; flex: 1; }

/* ── Product feature layout descriptions ── */
.drp-feature-layout { font-family: inherit; line-height: 1.6; color: #444; }
.drp-feature-layout img { max-width: 300px; height: auto; display: block; margin: 12px 0; }
.drp-feature-layout h4 { color: #0a3161; margin: 16px 0 8px; }

/* ── Sinalite product description layout ── */
.spl_prdct_row {
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
    margin-bottom: 24px !important;
    flex-wrap: wrap !important;
}

.spl_prdct_img_col {
    flex: 0 0 40% !important;
    max-width: 40% !important;
}

.spl_prdct_content_col {
    flex: 1 !important;
}

.spl_prdct_img_col img {
    width: 100% !important;
    height: auto !important;
    border-radius: 6px !important;
}

.spl_prdct_feature_text h4 {
    color: #0a3161 !important;
    margin: 0 0 10px !important;
}

@media (max-width: 600px) {
    .spl_prdct_img_col,
    .spl_prdct_content_col {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* ── Additional Sinalite wrapper classes ── */
.page-main, .page-main-inner, .columns, 
.column.main, #mainContainer, #details,
.stabcontent { 
    display: contents !important; 
}

/* Checkout field borders */
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
    border: 1px solid #ccc !important;
    background-color: #fff !important;
    border-radius: 4px !important;
    padding: 10px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
    border-color: #0a3161 !important;
    outline: none !important;
}

/* WooCommerce Reviews Tab Styling */

/* The blue "no reviews yet" bar */
.woocommerce-noreviews {
    background-color: #0a3161 !important;
    color: #ffffff !important;
    border-left: 4px solid #b31942 !important;
    border-radius: 4px !important;
    padding: 12px 16px !important;
}

/* "Be the First to Review" heading */
#review_form .comment-reply-title {
    color: #0a3161 !important;
    font-size: 18px !important;
}

/* Star rating color */
.woocommerce-product-rating .star-rating span,
#respond .stars a:hover,
#respond .stars a.active {
    color: #b31942 !important;
}

/* Reviews heading */
.woocommerce-Reviews-title {
    color: #0a3161 !important;
}

/* Review form input borders */
#review_form input[type="text"],
#review_form input[type="email"],
#review_form textarea {
    border: 1px solid #cccccc !important;
    border-radius: 4px !important;
    padding: 10px 12px !important;
}

#review_form input[type="text"]:focus,
#review_form input[type="email"]:focus,
#review_form textarea:focus {
    border-color: #0a3161 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(10, 49, 97, 0.15) !important;
}

/* Hide default WooCommerce empty cart message — custom design used instead */
.cart-empty.woocommerce-info {
    display: none !important;
}

/* WooCommerce notice/message bar color */
.woocommerce-message {
    background-color: #0a3161 !important;
    border-top-color: #b31942 !important;
    color: #ffffff !important;
}

.woocommerce-message a {
    color: #f4c430 !important;
}

.woocommerce-message a:hover {
    color: #b31942 !important;
}

/* Bold Promotional Products menu item */
.menu-bold > a {
    font-weight: 700 !important;
}

/* Store Password Form */

.post-password-form {
  max-width: 400px;
  margin: 100px auto;
  text-align: center;
  font-family: Arial, sans-serif;
}

.post-password-form label {
  display: block;
  margin-bottom: 12px;
  font-size: 18px;
  color: #0a3161;
}

.post-password-form input[type="password"] {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-bottom: 16px;
  box-sizing: border-box;
}

.post-password-form input[type="submit"] {
  background: #0a3161;
  color: #fff;
  border: none;
  padding: 12px 24px;
  border-radius: 6px;
  font-weight: 600;
  cursor: pointer;
}

.post-password-form input[type="submit"]:hover {
  background: #b31942;
}

/* ==========================================================================
   DRP 4Over Integration - paste into WP Admin > Customize > Additional CSS
   (matches the site's existing convention of styling custom plugin output via
   the Customizer rather than an enqueued stylesheet)

   Front-end selectors are prefixed "drpcc-" (Double River Printing Custom
   Cards) rather than anything 4Over-specific, and are styled to match the
   existing Sinalite configurator (#sinalite-box / .sinalite-option /
   #sinalite-price-display / #sinalite-upload-section) pixel-for-pixel, since
   the two should look like one product family to a customer. Admin-only
   selectors (the pricing table, the order meta box) keep the drp-4over-
   prefix since those are internal and only Rex ever sees them.
   ========================================================================== */

/* ── Front-end configurator: mirrors #sinalite-box ── */

#drpcc-box label {
	display: block;
	font-weight: 600;
	margin-bottom: 4px;
}

#drpcc-box select.drpcc-select {
	width: 100%;
	padding: 5px;
	border: 1px solid #0a3161;
	border-radius: 6px;
	margin-bottom: 5px;
	background: #fff;
}

#drpcc-box select.drpcc-select:focus {
	border-color: #0073aa;
	outline: none;
}

.drpcc-field {
	margin-bottom: 14px;
}

/* ── Price display: mirrors #sinalite-price-display ── */

#drpcc-price-display {
	font-size: 26px;
	font-weight: 700;
	color: #b31942;
	margin: 15px 0;
}

#drpcc-price-display::before {
	content: "Your Price:";
	display: block;
	font-size: 24px;
	font-weight: 600;
	color: #777;
	margin-bottom: 4px;
}

/* ── Artwork upload: mirrors #sinalite-upload-section ── */

#drpcc-upload-section {
	margin: 20px 0;
	font-family: inherit;
}

.drpcc-upload-header {
	display: flex;
	align-items: center;
	font-size: 1em;
	font-weight: 600;
	color: #222;
	margin-bottom: 12px;
	padding-bottom: 10px;
	border-bottom: 2px solid #e8e8e8;
}

.drpcc-upload-optional {
	margin-left: auto;
	font-size: 0.78em;
	font-weight: 400;
	color: #888;
}

.drpcc-upload-row {
	display: flex;
	gap: 14px;
}

.drpcc-upload-zone {
	flex: 1;
	border: 2px dashed #d0d0d0;
	border-radius: 8px;
	padding: 22px 16px;
	text-align: center;
	cursor: pointer;
	transition: border-color 0.2s, background 0.2s;
	background: #fafafa;
	min-height: 130px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.drpcc-upload-zone:hover,
.drpcc-upload-zone.dragover {
	border-color: #0073aa;
	background: #f0f7fc;
}

.drpcc-upload-zone.uploaded {
	border-color: #46b450;
	background: #f0faf0;
}

.drpcc-upload-zone.has-error {
	border-color: #dc3232;
	background: #fdf0f0;
}

.drpcc-upload-icon {
	color: #bbb;
	margin-bottom: 8px;
}

.drpcc-upload-zone:hover .drpcc-upload-icon,
.drpcc-upload-zone.dragover .drpcc-upload-icon {
	color: #0073aa;
}

.drpcc-upload-zone.uploaded .drpcc-upload-icon {
	color: #46b450;
}

.drpcc-upload-label {
	font-weight: 600;
	font-size: 0.95em;
	color: #333;
	margin-bottom: 4px;
}

.drpcc-upload-hint {
	font-size: 0.78em;
	color: #999;
}

.drpcc-upload-status {
	margin-top: 8px;
	font-size: 0.82em;
	line-height: 1.4;
	word-break: break-all;
}

.drpcc-upload-status.success {
	color: #46b450;
}

.drpcc-upload-status.uploading {
	color: #0073aa;
}

.drpcc-upload-status.error {
	color: #dc3232;
}

@media (max-width: 600px) {
	.drpcc-upload-row {
		flex-direction: column;
	}
}

/* ── Add to Cart button: intentionally unstyled beyond disabled state, so it
   inherits the theme's default button look (same navy as Sinalite's) ── */

#drpcc-add-to-cart:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.drpcc-message {
	margin-top: 10px;
	color: #b32d2e;
}

/* ==========================================================================
   Admin-only screens below - not customer facing, kept as drp-4over- since
   that's what Rex sees in WP Admin and it's useful for him to recognize it.
   ========================================================================== */

.drp-4over-price-table th,
.drp-4over-price-table td {
	text-align: center;
	vertical-align: middle;
}

.drp-4over-price-table td:first-child {
	text-align: left;
	min-width: 260px;
}

.drp-4over-order-box .drp-4over-order-line {
	font-size: 0.9em;
	margin-bottom: 8px;
}

/* DRP Artwork Upload - append this block to the site's existing global
   Additional CSS (Customizer -> Additional CSS), the same box that already
   holds the Sinalite and Custom Cards rules. Do not replace anything already
   there - just add this to the end. */

#drpau-box {
	margin: 15px 0;
}

.drpau-zones {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.drpau-upload-zone {
	flex: 1 1 200px;
	min-width: 160px;
	border: 2px dashed #0a3161;
	border-radius: 8px;
	padding: 18px 12px;
	text-align: center;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}

.drpau-upload-zone:hover,
.drpau-upload-zone.dragover {
	background-color: #f0f4fa;
	border-color: #0073aa;
}

.drpau-upload-zone.uploaded {
	border-color: #2e7d32;
	background-color: #f1f8f2;
}

.drpau-upload-zone.has-error {
	border-color: #b31942;
	background-color: #fbeeee;
}

.drpau-upload-icon {
	color: #0a3161;
	margin-bottom: 6px;
}

.drpau-upload-label {
	font-weight: 600;
	margin-bottom: 2px;
}

.drpau-upload-hint {
	font-size: 0.85em;
	color: #666;
}

.drpau-upload-status {
	margin-top: 6px;
	font-size: 0.85em;
	min-height: 1em;
}

.drpau-upload-status.uploading {
	color: #0073aa;
}

.drpau-upload-status.success {
	color: #2e7d32;
	font-weight: 600;
}

.drpau-upload-status.error {
	color: #b31942;
}

.drpau-message {
	color: #b31942;
	font-size: 0.9em;
	margin-top: 6px;
}

.drpau-admin-artwork-link {
	margin-top: 4px;
}
