/* WordPress/WooCommerce fixes only. Each rule says why. */

/* Woo's own front-end CSS is dequeued (functions.php), so unstyled default markup would look completely bare.
   No source cart/checkout design exists to copy (the source has no persistent cart - see RECON-FINDINGS.md
   section 6/13), so this restyles Woo's own classic cart/checkout/my-account markup to match the site's own
   established colours, font and button style (the "red_button" gradient + Arial + the #efefef/#ededed panel
   greys already used everywhere else) rather than shipping it bare. Net-new design, flagged per LOCKED My
   Account precedent - not a copy of anything the source has. */
body.woocommerce, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-account,
.woocommerce, .woocommerce-page {
	font-family: Arial, sans-serif;
	color: #000;
}
.woocommerce table.shop_table,
.woocommerce-checkout table.shop_table {
	border-collapse: collapse;
	width: 100%;
	margin: 0 0 20px;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	border: 1px solid #e2dbc8;
	padding: 8px 10px;
	text-align: left;
	vertical-align: middle;
}
.woocommerce table.shop_table thead th {
	background: #ededed;
	font-weight: bold;
}
.woocommerce table.shop_table td.product-thumbnail img {
	max-width: 80px;
	height: auto;
	border: 1px solid #000;
}
.woocommerce .cart-collaterals,
.woocommerce-checkout #order_review {
	background: #efefef;
	padding: 15px;
	border-radius: 6px;
}
.woocommerce .cart_totals table,
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table {
	background: #fff;
}
/* Buttons: the exact "red_button" gradient (assets/src/css/style.css .red_button), applied here since Woo
   renders these as <button>/<input type=submit>, not the <a class=red_button> the site's own links use. */
.woocommerce #place_order,
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce-checkout #payment #place_order {
	background: #f24537;
	background: linear-gradient(to bottom, #f24537 5%, #c62d1f 100%);
	border: 1px solid #d02718;
	border-radius: 6px;
	color: #fff !important;
	font-family: Arial, sans-serif;
	font-size: 14px;
	font-weight: bold;
	padding: 10px 24px;
	text-decoration: none;
	cursor: pointer;
}
.woocommerce #place_order:hover, .woocommerce a.button:hover, .woocommerce button.button:hover {
	background: #c62d1f;
	background: linear-gradient(to bottom, #c62d1f 5%, #f24537 100%);
}
.woocommerce form .form-row label {
	font-weight: bold;
	font-size: 13px;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce-checkout select#payment_method_options {
	border: 1px solid #e2dbc8;
	border-radius: 4px;
	padding: 6px 8px;
	font-family: Arial, sans-serif;
}
.woocommerce-checkout #payment ul.payment_methods {
	border: 1px solid #e2dbc8;
	border-radius: 6px;
	background: #fff;
	padding: 10px;
}
.woocommerce-checkout #payment ul.payment_methods li {
	padding: 8px 0;
	border-bottom: 1px solid #f0f0f0;
}
.woocommerce-checkout #payment div.payment_box {
	background: #f5f1e8;
	border-radius: 4px;
	padding: 10px;
	margin: 8px 0 0;
}
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout #order_review_heading {
	font-family: Arial, sans-serif;
	font-size: 18px;
	color: #a2201e;
	border-bottom: 2px solid #ff8c00;
	padding-bottom: 6px;
	margin: 0 0 12px;
}
.woocommerce-error, .woocommerce-message, .woocommerce-info {
	border-top-color: #a2201e !important;
	background: #fff8f0;
	padding: 10px 15px;
	list-style: none;
	border-radius: 4px;
}
.woocommerce-error::before, .woocommerce-message::before, .woocommerce-info::before {
	color: #a2201e !important;
}
/* WooCommerce's own coupon/login forms are their own <form>; never nest one inside checkout's <form> (breaks
   submission entirely) - the classic templates already keep them siblings, this is layout only. */
.woocommerce-form-coupon, .woocommerce-form-login {
	background: #efefef;
	padding: 12px;
	border-radius: 6px;
	margin-bottom: 15px;
}

/* P7: My Account (LOCKED standard #1 - no source `woocommerce/myaccount/` override exists to fork from, build from
   Woo defaults + this spec, restyled only) + the net-new seller signup/dashboard forms (no source reference - the
   real fields behind login were never harvested, this is built from the source's own public /signup form). */
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid #e2dbc8;
	border-radius: 6px;
	overflow: hidden;
}
.woocommerce-MyAccount-navigation li {
	border-bottom: 1px solid #e2dbc8;
}
.woocommerce-MyAccount-navigation li:last-child {
	border-bottom: none;
}
.woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 10px 14px;
	color: #000;
	text-decoration: none;
	font-family: Arial, sans-serif;
}
.woocommerce-MyAccount-navigation li.is-active a {
	background: #a2201e;
	color: #fff;
	font-weight: bold;
}
.woocommerce-MyAccount-content table.shop_table th {
	background: #ededed;
}

.rbn-form-wrap, .rbn-dashboard {
	max-width: 720px;
	font-family: Arial, sans-serif;
}
.rbn-form-wrap h1, .rbn-dashboard h1 {
	color: #a2201e;
	border-bottom: 2px solid #ff8c00;
	padding-bottom: 8px;
}
.rbn-form-wrap h3 {
	color: #a2201e;
	margin-top: 24px;
}
.rbn-form p label {
	display: block;
	font-weight: bold;
	font-size: 13px;
	margin-bottom: 10px;
}
.rbn-form input[type="text"], .rbn-form input[type="email"], .rbn-form input[type="tel"],
.rbn-form input[type="password"], .rbn-form input[type="number"], .rbn-form select, .rbn-form textarea {
	display: block;
	width: 100%;
	max-width: 420px;
	margin-top: 4px;
	padding: 6px 8px;
	border: 1px solid #e2dbc8;
	border-radius: 4px;
	font-family: Arial, sans-serif;
	font-weight: normal;
}
.rbn-form input[type="checkbox"] {
	margin-right: 6px;
}
.rbn-form .button, .rbn-dashboard .button {
	background: #f24537;
	background: linear-gradient(to bottom, #f24537 5%, #c62d1f 100%);
	border: 1px solid #d02718;
	border-radius: 6px;
	color: #fff !important;
	font-weight: bold;
	padding: 10px 24px;
	text-decoration: none;
	display: inline-block;
	cursor: pointer;
}
.rbn-dashboard table.rbn-listing-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 15px;
}
.rbn-dashboard table.rbn-listing-table th, .rbn-dashboard table.rbn-listing-table td {
	border: 1px solid #e2dbc8;
	padding: 8px 10px;
	text-align: left;
	vertical-align: middle;
}
.rbn-dashboard table.rbn-listing-table thead th {
	background: #ededed;
}
.rbn-inline-form {
	display: inline-block;
}

/* P8: static pages (About/Contact/Terms/Privacy/Authenticity/Sell/Custom Dolls) + directories (Sculptors/
   Nurseries) + Wanted board. All net-new design - no source cart/account/directory CSS exists to copy from
   (same situation as the P5/P6 checkout and P7 account pages), styled to match the site's established look. */
.rbn-static-page, .rbn-directory, .rbn-wanted {
	font-family: Arial, sans-serif;
	max-width: 900px;
}
.rbn-static-page h1, .rbn-directory h1, .rbn-wanted h1 {
	color: #a2201e;
	border-bottom: 2px solid #ff8c00;
	padding-bottom: 8px;
}
.rbn-static-page h3 {
	color: #a2201e;
	margin-top: 20px;
}
.rbn-static-page a.button, .rbn-directory a.button, .rbn-wanted a.button {
	background: #f24537;
	background: linear-gradient(to bottom, #f24537 5%, #c62d1f 100%);
	border: 1px solid #d02718;
	border-radius: 6px;
	color: #fff !important;
	font-weight: bold;
	padding: 10px 24px;
	text-decoration: none;
	display: inline-block;
	margin-right: 8px;
}

/* Sculptors A-Z index */
.rbn-az-nav a, .rbn-az-nav span {
	display: inline-block;
	width: 22px;
	text-align: center;
	font-weight: bold;
}
.rbn-az-nav a {
	color: #a2201e;
	text-decoration: none;
}
.rbn-az-nav span {
	color: #ccc;
}
table.artist-table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 20px;
}
table.artist-table th {
	text-align: left;
	background: #ededed;
	color: #a2201e;
	padding: 6px 10px;
	font-size: 16px;
}
table.artist-table td {
	border-bottom: 1px solid #efefef;
	padding: 10px;
	vertical-align: top;
}
.rbn-sculptor-name {
	width: 220px;
}
.rbn-sculptor-name a {
	font-weight: bold;
	color: #000;
	text-decoration: none;
}
.rbn-shop-name {
	color: #777;
}
.rbn-for-sale {
	color: #a2201e;
}

/* Nurseries directory - matches the source's real row layout (avatar | name/location/links | sample photos),
   restyled with this build's own panel/button look since the source's raw table markup is otherwise unstyled. */
.rbn-nurseries h1 {
	text-align: center;
}
.rbn-nursery-filters {
	text-align: center;
	margin-bottom: 20px;
	background: #efefef;
	padding: 12px;
	border-radius: 8px;
}
.rbn-nursery-filters input, .rbn-nursery-filters select {
	padding: 6px 10px;
	border: 1px solid #f2851d;
	border-radius: 100px;
	margin: 4px;
	font-family: 'Open Sans', Arial, sans-serif;
}
.rbn-nursery-filters .button {
	margin: 4px;
}
.rbn-nursery-filters strong {
	display: inline-block;
	margin: 0 10px;
	color: #a2201e;
}
table.rbn-nursery-rows {
	border-collapse: collapse;
}
table.rbn-nursery-rows hr {
	border: none;
	border-top: 1px solid #e2dbc8;
	margin: 10px 0;
}
.rbn-nursery-row {
	background: #fdf8f0;
}
.rbn-nursery-row:hover {
	background: #FDC89A;
}
.rbn-nursery-avatar {
	width: 100px;
	vertical-align: top;
	padding: 10px;
}
.rbn-nursery-avatar img {
	border-radius: 6px;
	object-fit: cover;
	width: 90px;
	height: 120px;
}
.rbn-nursery-info {
	width: 260px;
	vertical-align: top;
	padding: 10px;
	font-family: Arial, sans-serif;
}
.rbn-nursery-info .rbn-shop-name {
	font-size: 16px;
	font-weight: bold;
	color: #a2201e;
	text-decoration: none;
}
.rbn-nursery-info i {
	color: #777;
}
.rbn-for-sale-count {
	color: #777;
}
.rbn-nursery-samples {
	vertical-align: top;
	padding: 10px;
}
.rbn-sample {
	display: inline-block;
	width: 100px;
	text-align: center;
	vertical-align: top;
	margin-right: 6px;
	font-size: 12px;
}
.rbn-sample img {
	border-radius: 4px;
	object-fit: cover;
	width: 90px;
	height: 120px;
}

/* Wanted board */
table.rbn-wanted-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 10px;
}
table.rbn-wanted-table th, table.rbn-wanted-table td {
	border: 1px solid #e2dbc8;
	padding: 8px 10px;
	text-align: left;
	vertical-align: top;
}
table.rbn-wanted-table thead th {
	background: #ededed;
}
.rbn-wanted-desc {
	color: #555;
	font-size: 13px;
}

/* P9: the seller "nursery" shop-front page (/<seller-slug>) - previously had no content renderer at all, so the
   body was always empty. Built from the real source's own seller page markup; this part (sidebar + tabs wrapper)
   is net-new styling, since the listing grid itself reuses rb_product_block() and is already styled sitewide. */
.rbn-seller-page {
	font-family: Arial, sans-serif;
}
.rbn-seller-sidebar {
	width: 200px;
	background: #fff;
	border-radius: 6px;
	padding: 15px;
}
.rbn-seller-sidebar img.shad {
	border-radius: 6px;
}
.rbn-headline {
	color: #777;
	font-size: 13px;
}
.rbn-status-tabs {
	margin-bottom: 15px;
}
