/* gg-accounts: the submission id on the printable slip, and the My Account pages. */

.gg-sub {
	border: 2px solid #141414;
	border-radius: 10px;
	padding: 1rem 1.25rem;
	margin: 1rem 0 1.5rem;
	text-align: center;
	background: #ffffff;
	color: #141414;
	break-inside: avoid;
	page-break-inside: avoid;
}
.gg-sub__label,
.gg-submission-confirmation .gg-sub__label {
	margin: 0;
	font-size: .8rem;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #555555;
}
.gg-sub__id,
.gg-submission-confirmation .gg-sub__id {
	margin: .25rem 0 .75rem;
	font-family: "Courier New", Courier, monospace;
	font-size: 2rem;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: .06em;
	word-break: break-all;
}
.gg-sub__codes {
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem;
	align-items: center;
	justify-content: center;
}
.gg-sub__barcode {
	width: 280px;
	max-width: 100%;
	height: 64px;
}
.gg-sub__qr {
	width: 116px;
	height: 116px;
}
.gg-sub__hint,
.gg-sub__detail,
.gg-submission-confirmation .gg-sub__hint,
.gg-submission-confirmation .gg-sub__detail {
	margin: .6rem 0 0;
	font-size: .9rem;
	color: #333333;
}
.gg-sub__detail,
.gg-submission-confirmation .gg-sub__detail {
	margin-top: .2rem;
}
@media print {
	.gg-sub {
		border-color: #000000;
	}
	.gg-sub__barcode {
		width: 3in;
		height: .7in;
	}
	.gg-sub__qr {
		width: 1.1in;
		height: 1.1in;
	}
}

/* Confirmation page, below the slip: the soft push (never printed) */
.gg-acc-promo {
	border: 1px solid #d8d8d8;
	border-left: 4px solid #a8841c;
	background: #faf8f2;
	border-radius: 8px;
	padding: .9rem 1.1rem;
	margin: 0 0 1.5rem;
}
.gg-acc-promo p {
	margin: 0 0 .5rem;
}
.gg-acc-promo__title {
	font-weight: 700;
	font-size: 1.05rem;
}
.gg-acc-diff {
	border-left: 4px solid #a8841c;
	padding: .4rem .8rem;
	margin: 0 0 1.5rem;
	color: #333333;
}
@media print {
	.gg-acc-promo,
	.gg-acc-diff {
		display: none !important;
	}
}

/* Thank-you page: "Print submission sheet" (slip.php gg_accounts_print_block).
   Big, plain and high-contrast: many submitters are older (Rock, 2026-09-29). */
.gg-print {
	margin: 0 0 1.25rem;
	text-align: center;
}
.gg-print--end {
	margin: 2rem 0 0;
}
.gg-print__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	min-height: 60px;
	padding: .9rem 2rem;
	border: 0;
	border-radius: 10px;
	background: #141414;
	color: #ffffff;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
}
.gg-print__button[hidden] {
	display: none;
}
.gg-print__button:hover,
.gg-print__button:focus {
	background: #333333;
	color: #ffffff;
}
.gg-print__button:focus-visible {
	outline: 3px solid #e5b80b;
	outline-offset: 3px;
}
.gg-print__icon {
	flex: none;
}
.gg-print__help strong {
	white-space: nowrap;
}
.gg-print__help,
.gg-submission-confirmation .gg-print__help {
	max-width: 36rem;
	margin: .6rem auto 0;
	font-size: 1rem;
	line-height: 1.5;
	color: #333333;
}
/* Ours are wired (gg-accounts-slip.js): the theme's small pair would be a second, smaller "print" choice. */
.gg-print-ready .gg-submission-confirmation-actions {
	display: none;
}
.gg-print-only {
	display: none;
}
@media (max-width: 600px) {
	.gg-print__button {
		display: flex;
		width: 100%;
	}
}

/* Thank-you page: "Last step: save a payment method" (slip.php gg_accounts_pay_panel) */
.gg-pay-panel {
	border: 2px solid #a8841c;
	border-radius: 10px;
	padding: 1.1rem 1.25rem;
	margin: 1rem 0 1.5rem;
	background: #faf8f2;
	color: #141414;
}
.gg-pay-panel__title,
.gg-submission-confirmation .gg-pay-panel__title {
	margin: 0 0 .5rem;
	font-size: 1.25rem;
	line-height: 1.3;
}
.gg-pay-panel p,
.gg-submission-confirmation .gg-pay-panel p {
	margin: 0 0 .6rem;
	line-height: 1.5;
}
.gg-pay-panel__action,
.gg-submission-confirmation .gg-pay-panel__action {
	margin: .9rem 0 .6rem;
}
.gg-pay-panel__button,
.gg-pay-panel__button:visited {
	display: inline-block;
	padding: .8rem 1.4rem;
	border-radius: 8px;
	background: #e5b80b;
	color: #141414;
	font-weight: 700;
	font-size: 1.05rem;
	text-decoration: none;
	border: 2px solid #141414;
}
.gg-pay-panel__button:hover,
.gg-pay-panel__button:focus {
	background: #f2c81c;
	color: #141414;
}
.gg-pay-panel__button:focus-visible {
	outline: 3px solid #141414;
	outline-offset: 2px;
}
.gg-pay-panel__fine,
.gg-submission-confirmation .gg-pay-panel__fine {
	font-size: .9rem;
	color: #444444;
}
.gg-pay-panel__decline {
	margin: .2rem 0 0;
}
.gg-pay-panel__no {
	background: none;
	border: 0;
	padding: .3rem 0;
	color: #555555;
	text-decoration: underline;
	font-size: .95rem;
	cursor: pointer;
}
.gg-pay-panel__no:hover,
.gg-pay-panel__no:focus {
	color: #141414;
}
.gg-pay-panel__error {
	color: #8a1f11;
	font-weight: 600;
}
.gg-pay-panel--done p {
	margin: 0;
}
@media (max-width: 600px) {
	.gg-pay-panel__button {
		display: block;
		text-align: center;
	}
}
@media screen and (max-width: 600px) {
	.gg-sub__id,
	.gg-submission-confirmation .gg-sub__id {
		font-size: clamp(18px, 5.6vw, 24px);
		letter-spacing: .02em;
		white-space: nowrap;
	}
}
@media print {
	.gg-pay-panel {
		display: none !important;
	}
}

/* The printed submission sheet goes in the box: no buttons, and always ONE
   Letter page. Rock, 2026-10-14: the sheet printed "real small", the whole of
   it in the top half of the page, and most submitters are older. Two causes:

     1. The theme's Bootstrap print rules say @page { size: a3 }, body and
        .container { min-width: 992px }. The browser laid the sheet out on A3 and
        shrank it to fit Letter, at about 67% (9.5pt text printed at 6.3pt, the
        22pt SUB at 14.6pt). The page size is set to Letter below and the
        min-widths are cleared, so the sizes in this file are the sizes on paper.
     2. The old sizes were chosen so a 30-row card list fits, and they were used
        for every submission.

   So the sheet is sized by how many card rows it carries: the base rules below
   are the compact sheet (21-30 rows; it is also what a browser without :has()
   prints, so the worst case is never a second page), and inside @supports
   selector(:has(*)) it grows for up to 20, up to 10 and up to 3 rows. All tiers
   use two text columns (who and what on the left, where to mail it and what to
   expect on the right), so the type can be large and the sheet still fits.

   Sizes are custom properties (--ggp-*) set per tier on main#primary: each tier
   is a list of numbers, not a second copy of the rules. The barcode is an SVG
   whose width scales every bar and space together (viewBox plus
   preserveAspectRatio none, so the module ratios hold; only its height is free)
   and the QR is kept square; the quiet zones are inside the SVGs.

   "html" and !important because the theme's style.css loads after this file and
   sizes these with equal or !important rules. Print only: no screen rule here. */

/* Letter. A later @page wins even over @page :first, and the theme's Bootstrap
   comes later, so size is !important (margin is not set by Bootstrap). */
@page {
	size: letter !important;
	margin: .4in;
}
@page :first {
	size: letter !important;
	margin: .4in;
}
@page :left {
	size: letter !important;
	margin: .4in;
}
@page :right {
	size: letter !important;
	margin: .4in;
}

@media print {
	html main#primary {
		/* compact: 21-30 card rows, and the fallback without :has() */
		--ggp-text: 8.5pt;
		--ggp-lh: 1.2;
		--ggp-pgap: 1pt;
		--ggp-h2: 12.5pt;
		--ggp-h3: 9.5pt;
		--ggp-hr: 3pt;
		--ggp-sub-pad: 2pt 10pt;
		--ggp-sub-gap: 4pt;
		--ggp-label: 7.5pt;
		--ggp-id: 20pt;
		--ggp-bar-w: 3in;
		--ggp-bar-h: .4in;
		--ggp-qr: .7in;
		--ggp-codes-gap: .3in;
		--ggp-cell: 7.5pt;
		--ggp-cell-pad: .25pt 3pt;
		--ggp-card-gap: 3pt;
	}
	.gg-print,
	.gg-screen-only {
		display: none !important;
	}
	.gg-print-only {
		display: inline !important;
	}
	html body,
	html main#primary .container {
		min-width: 0 !important;
	}
	html main#primary .container {
		max-width: none !important;
		width: auto !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	/* two columns under the title and the SUB box */
	html .gg-submission-confirmation {
		max-width: none !important;
		column-count: 2;
		column-gap: .4in;
	}
	html .gg-submission-confirmation > h2,
	html .gg-submission-confirmation > .gg-sub {
		column-span: all;
	}
	html .gg-submission-confirmation > h3,
	html .gg-submission-confirmation > hr {
		break-after: avoid;
	}
	/* The browser balances the two columns itself (a forced break after the
	   details would make the left column the tall one whenever a customer has a
	   company, ATTN, apartment and second phone). Paragraphs and the service
	   block stay whole. */
	html .gg-submission-confirmation p,
	html .gg-service-details {
		break-inside: avoid;
	}
	html .gg-submission-confirmation p,
	html .gg-confirmation-cards-table p {
		margin: 0 0 var(--ggp-pgap) !important;
		font-size: var(--ggp-text) !important;
		line-height: var(--ggp-lh) !important;
	}
	html .gg-submission-confirmation h2 {
		margin: 0 0 4pt !important;
		font-size: var(--ggp-h2) !important;
		text-align: center !important;
	}
	html .gg-submission-confirmation h3,
	html .gg-confirmation-cards-table h3 {
		margin: var(--ggp-hr) 0 2pt !important;
		font-size: var(--ggp-h3) !important;
	}
	html .gg-submission-confirmation hr,
	html .gg-confirmation-divider {
		margin: var(--ggp-hr) 0 !important;
	}
	html .gg-service-details,
	html .gg-service-line {
		margin-bottom: var(--ggp-pgap) !important;
	}
	/* the SUB box */
	html .gg-submission-confirmation .gg-sub {
		margin: 2pt 0 var(--ggp-sub-gap) !important;
		padding: var(--ggp-sub-pad) !important;
	}
	html .gg-submission-confirmation .gg-sub__label {
		margin: 0 !important;
		font-size: var(--ggp-label) !important;
	}
	html .gg-submission-confirmation .gg-sub__id {
		margin: 1pt 0 var(--ggp-pgap) !important;
		font-size: var(--ggp-id) !important;
		line-height: 1.1 !important;
	}
	html .gg-submission-confirmation .gg-sub__hint,
	html .gg-submission-confirmation .gg-sub__detail {
		margin-top: 2pt !important;
		font-size: var(--ggp-text) !important;
		line-height: var(--ggp-lh) !important;
	}
	html .gg-sub__codes {
		flex-wrap: nowrap;
		gap: var(--ggp-codes-gap);
	}
	html .gg-sub__barcode {
		width: var(--ggp-bar-w);
		height: var(--ggp-bar-h);
		max-width: none;
		flex: none;
	}
	html .gg-sub__qr {
		width: var(--ggp-qr);
		height: var(--ggp-qr);
		flex: none;
	}
	/* the card list */
	html .gg-confirmation-cards-table {
		width: 100% !important;
		max-width: none !important;
		margin: var(--ggp-card-gap) 0 0 !important;
		font-size: var(--ggp-cell) !important;
	}
	html .gg-confirmation-cards-table__table {
		width: 100% !important;
		max-width: none !important;
	}
	html .gg-confirmation-cards-table__table th,
	html .gg-confirmation-cards-table__table td {
		padding: var(--ggp-cell-pad) !important;
		font-size: var(--ggp-cell) !important;
		line-height: 1.2 !important;
	}
	html .gg-confirmation-cards-table__table tr {
		break-inside: avoid;
	}
}

/* Roomier tiers. Each needs :has() (Chrome 105+, Safari 15.4+, Firefox 121+); a
   browser without it keeps the compact sheet above. The condition reads "no
   more than N card rows"; the three have the same specificity, so the later,
   smaller one wins. */
@media print {
	@supports selector(:has(*)) {
		/* up to 20 card rows */
		html main#primary:not(:has(.gg-confirmation-cards-table__table tbody tr:nth-child(21))):not(:has(.gg-submission-confirmation > :nth-child(37))) {
			--ggp-text: 9pt;
			--ggp-lh: 1.22;
			--ggp-h2: 14pt;
			--ggp-h3: 10pt;
			--ggp-id: 22pt;
			--ggp-label: 8pt;
			--ggp-bar-w: 3.4in;
			--ggp-bar-h: .55in;
			--ggp-qr: .95in;
			--ggp-cell: 8.5pt;
			--ggp-cell-pad: .5pt 4pt;
		}
		/* up to 10 card rows */
		html main#primary:not(:has(.gg-confirmation-cards-table__table tbody tr:nth-child(11))):not(:has(.gg-submission-confirmation > :nth-child(36))) {
			--ggp-text: 10pt;
			--ggp-lh: 1.27;
			--ggp-pgap: 1.5pt;
			--ggp-h2: 16pt;
			--ggp-h3: 11.5pt;
			--ggp-hr: 4pt;
			--ggp-id: 28pt;
			--ggp-label: 9pt;
			--ggp-sub-pad: 5pt 12pt;
			--ggp-sub-gap: 6pt;
			--ggp-bar-w: 3.9in;
			--ggp-bar-h: .65in;
			--ggp-qr: 1.05in;
			--ggp-cell: 9.5pt;
			--ggp-cell-pad: 1.5pt 4pt;
			--ggp-card-gap: 6pt;
		}
		/* up to 3 card rows: the usual submission */
		html main#primary:not(:has(.gg-confirmation-cards-table__table tbody tr:nth-child(4))):not(:has(.gg-submission-confirmation > :nth-child(99))) {
			--ggp-text: 11.5pt;
			--ggp-lh: 1.28;
			--ggp-pgap: 2pt;
			--ggp-h2: 19pt;
			--ggp-h3: 13pt;
			--ggp-hr: 4pt;
			--ggp-id: 32pt;
			--ggp-label: 10pt;
			--ggp-sub-pad: 7pt 12pt;
			--ggp-sub-gap: 6pt;
			--ggp-bar-w: 4.4in;
			--ggp-bar-h: .75in;
			--ggp-qr: 1.3in;
			--ggp-codes-gap: .35in;
			--ggp-cell: 10pt;
			--ggp-cell-pad: 2.5pt 5pt;
			--ggp-card-gap: 6pt;
		}
	}
}

/* My Account: unified Orders / Grading payment method */
.gg-acc__note {
	color: #555555;
	font-size: .92rem;
}
.gg-acc__unavailable {
	border-left: 4px solid #a8841c;
	background: #faf8f2;
	padding: .75rem 1rem;
	margin: 0 0 1rem;
}
.gg-acc__section {
	margin: 0 0 2rem;
}
.gg-acc__order {
	border: 1px solid #d8d8d8;
	border-radius: 8px;
	padding: 1rem;
	margin: 0 0 1rem;
}
.gg-acc__order .gg-os__stage {
	margin: .25rem 0 .5rem;
	font-size: 1.15rem;
}
.gg-acc__pay {
	margin-top: .75rem;
}
.gg-acc__table td,
.gg-acc__table th {
	vertical-align: top;
}
.gg-acc__sub-id {
	font-family: "Courier New", Courier, monospace;
	font-weight: 700;
	white-space: nowrap;
}
.gg-acc__actions form {
	display: inline-block;
	margin: 0 .5rem .5rem 0;
}

/* Account portal. Scoped above the theme's Woo/Bootstrap defaults; header untouched. */
.woocommerce-account main .woocommerce {
	max-width: 1140px;
	margin: 0 auto 3rem;
	/* Keep the account navigation and content clear of the theme banner. */
	padding-top: 32px;
	color: #171717;
	font-size: 16px;
	line-height: 1.55;
}
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
	display: grid;
	grid-template-columns: 230px minmax(0, 1fr);
	gap: 28px;
	align-items: start;
}
/* WooCommerce clearfix pseudo-elements otherwise occupy grid cells and push
   navigation/content (and Login/Register) into alternating narrow columns. */
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::before,
.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation)::after,
.woocommerce-account .woocommerce .u-columns::before,
.woocommerce-account .woocommerce .u-columns::after { content: none; display: none; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper {
	grid-column: 1 / -1;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	min-width: 0;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
	background: #171717;
	border-radius: 12px;
	padding: 10px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	list-style: none;
	margin: 0 0 4px;
	padding: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child { margin-bottom: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: flex;
	align-items: center;
	min-height: 48px;
	padding: 11px 14px;
	border-radius: 7px;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	line-height: 1.3;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation li a:focus-visible { background: #333; }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: #e5b80b;
	color: #141414;
}
.woocommerce-account .woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid #dedbd2;
	border-radius: 12px;
	padding: clamp(18px, 2.3vw, 32px);
}
.woocommerce-account .woocommerce h2,
.woocommerce-account .woocommerce h3,
.woocommerce-account .woocommerce h4 {
	font-family: 'd77', 'D35', sans-serif;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.15;
	color: #171717;
	margin: 0 0 14px;
}
.woocommerce-account .woocommerce h2 { font-size: clamp(30px, 3vw, 40px); }
.woocommerce-account .woocommerce h3 { font-size: 25px; }
.woocommerce-account .woocommerce h4 { font-size: 22px; }
.woocommerce-account .woocommerce p { margin: 0 0 16px; font-size: 16px; line-height: 1.55; }
.woocommerce-account .woocommerce .gg-acc__note { font-size: 14px; color: #565656; }
.woocommerce-account .woocommerce a:not(.button):not(.gg-acc__quicklink):not(.woocommerce-MyAccount-navigation a) {
	color: #725607;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.woocommerce-account .woocommerce a:focus-visible,
.woocommerce-account .woocommerce button:focus-visible,
.woocommerce-account .woocommerce input:focus-visible {
	outline: 3px solid #a8841c;
	outline-offset: 3px;
}
.woocommerce-account .woocommerce .button,
.woocommerce-account .woocommerce button.button {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-height: 44px;
	max-width: 100%;
	padding: 10px 16px;
	border: 1px solid #171717;
	border-radius: 7px;
	background: #e5b80b;
	color: #171717;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	white-space: normal;
	text-align: center;
	text-decoration: none;
}
.woocommerce-account .woocommerce .button:hover { background: #f0cb39; color: #171717; }
.woocommerce-account .woocommerce .gg-acc__eyebrow {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	color: #80600e;
	letter-spacing: .06em;
	margin: 0 0 8px;
}
.gg-acc__quicklinks { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 24px 0; }
.gg-acc__quicklink {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px 12px;
	padding: 22px;
	background: #faf8f2;
	border: 1px solid #d9cfaf;
	border-top: 4px solid #a8841c;
	border-radius: 9px;
	color: #171717;
	text-decoration: none;
}
.gg-acc__quicklink:hover { background: #f5efd9; color: #171717; }
.gg-acc__quicklink strong { font: 26px/1.15 'd77', 'D35', sans-serif; }
.gg-acc__quicklink span { grid-column: 1; font-size: 14px; }
.gg-acc__quicklink b { grid-column: 2; grid-row: 1 / 3; align-self: center; font-size: 24px; }
.woocommerce-account .gg-acc__section { padding-bottom: 24px; margin-bottom: 24px; border-bottom: 1px solid #e4e0d5; }
.woocommerce-account .gg-acc__section:last-child { padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }
.woocommerce-account .gg-acc__orders-section + .gg-acc__orders-section { margin-top: 32px; padding-top: 28px; border-top: 1px solid #dedbd2; }
.gg-acc__email { overflow-wrap: anywhere; }
.gg-acc__status { display: inline-block; padding: 5px 9px; border-radius: 20px; background: #f4eedb; color: #695014; font-size: 13px; font-weight: 700; line-height: 1.3; }
.gg-acc__status--checked_in { background: #e5f1e8; color: #245b32; }
.gg-acc__status--cancelled,
.gg-acc__status--expired { background: #efefef; color: #555; }
.woocommerce-account .woocommerce .gg-acc__table { border-collapse: collapse; width: 100%; table-layout: fixed; font-size: 14px; }
.woocommerce-account .gg-acc__table th { background: #f6f4ec; color: #555; font-size: 12px; text-align: left; padding: 11px 8px; }
.woocommerce-account .gg-acc__table td { border-bottom: 1px solid #e4e0d5; padding: 15px 8px; overflow-wrap: anywhere; }
.woocommerce-account .gg-acc__table .gg-acc__sub-id { white-space: normal; }
.woocommerce-account .gg-acc__table form { margin: 9px 0 0; }
.woocommerce-account .gg-acc__table .button { padding: 8px 10px; font-size: 12px; }
/* Cancel lives in a small "More" menu and asks why first (Rock, 2026-10-27). */
.gg-acc__more { position: relative; margin: 8px 0 0; }
.gg-acc__more-toggle { display: inline-block; list-style: none; cursor: pointer; padding: 2px 0; font-size: 12px; color: #6b6b6b; text-decoration: underline; text-underline-offset: 3px; }
.gg-acc__more-toggle::-webkit-details-marker { display: none; }
.gg-acc__more-toggle::after { content: "\25BE"; display: inline-block; margin-left: 4px; text-decoration: none; }
.gg-acc__more[open] > .gg-acc__more-toggle::after { content: "\25B4"; }
.gg-acc__more-toggle:focus-visible { outline: 3px solid #a8841c; outline-offset: 3px; }
.gg-acc__more-panel { position: absolute; z-index: 20; top: calc(100% + 6px); left: 0; width: 320px; max-width: calc(100vw - 32px); padding: 16px; background: #fff; border: 1px solid #d9cfaf; border-radius: 9px; box-shadow: 0 8px 24px rgba(0, 0, 0, .14); }
.woocommerce-account .gg-acc__table .gg-acc__more-panel form { margin: 0; }
.gg-acc__cancel fieldset { min-width: 0; margin: 0 0 10px; padding: 0; border: 0; }
.woocommerce-account .woocommerce .gg-acc__cancel legend { float: none; width: auto; margin: 0 0 8px; padding: 0; font: 700 14px/1.35 'D35', sans-serif; color: #171717; }
.woocommerce-account .woocommerce .gg-acc__cancel-reason { display: flex; gap: 8px; align-items: flex-start; margin: 0 0 7px; font-size: 14px; font-weight: 400; line-height: 1.35; cursor: pointer; }
.woocommerce-account .woocommerce .gg-acc__cancel-reason input { flex: none; width: 16px; height: 16px; margin: 2px 0 0; }
.woocommerce-account .woocommerce .gg-acc__cancel-label { display: block; margin: 0 0 4px; font-size: 13px; }
.woocommerce-account .woocommerce .gg-acc__cancel textarea { display: block; width: 100%; padding: 8px 10px; border: 1px solid #bdb9af; border-radius: 6px; font-size: 14px; resize: vertical; }
.woocommerce-account .woocommerce .gg-acc__cancel .gg-acc__note { margin: 8px 0 12px; font-size: 13px; }
.gg-acc__cancel-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.woocommerce-account .woocommerce .gg-acc__cancel-actions button { min-height: 38px; padding: 8px 12px; border: 1px solid #171717; border-radius: 7px; font-size: 13px; font-weight: 700; line-height: 1.2; cursor: pointer; }
.woocommerce-account .woocommerce .gg-acc__cancel-keep { background: #e5b80b; color: #171717; }
.woocommerce-account .woocommerce .gg-acc__cancel-keep:hover { background: #f0cb39; }
.woocommerce-account .woocommerce .gg-acc__cancel-submit { border-color: #8f2a1b; background: #fff; color: #8f2a1b; }
.woocommerce-account .woocommerce .gg-acc__cancel-submit:hover { background: #fff4f1; }
.woocommerce-account .gg-acc__payment-help { background: #faf8f2; border: 1px solid #e4dcc4; border-radius: 9px; padding: 22px; margin: 24px 0; }
.woocommerce-account .gg-acc__payment-help ul { padding-left: 20px; margin: 0 0 16px; }
.woocommerce-account .gg-acc__payment-help li { margin-bottom: 10px; }
/* Undo Bootstrap's .col-1 / .col-2 and .form-row widths on Woo account forms. */
.woocommerce-account .woocommerce .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin: 0; }
.woocommerce-account .woocommerce .u-columns > .u-column1,
.woocommerce-account .woocommerce .u-columns > .u-column2 { width: 100%; min-width: 0; max-width: none; flex: none; float: none; padding: 24px; border: 1px solid #dedbd2; border-radius: 12px; }
.woocommerce-account .woocommerce .form-row { display: block; width: auto; margin: 0 0 18px; padding: 0; }
.woocommerce-account .woocommerce .form-row label { display: block; margin: 0 0 6px; font-size: 14px; }
.woocommerce-account .woocommerce input.input-text,
.woocommerce-account .woocommerce select { width: 100%; min-height: 46px; border: 1px solid #bdb9af; border-radius: 6px; padding: 10px 12px; background: #fff; color: #171717; font-size: 16px; }
.woocommerce-account .woocommerce .password-input { display: block; width: 100%; }
.woocommerce-account .woocommerce .woocommerce-form-login,
.woocommerce-account .woocommerce .woocommerce-form-register { margin: 0; padding: 0; border: 0; }
.woocommerce-account .woocommerce .woocommerce-form-login__rememberme { display: inline-flex; gap: 8px; align-items: center; }
.woocommerce-account .woocommerce .woocommerce-form-login__rememberme input { width: 18px; height: 18px; }
.woocommerce-account .woocommerce .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-account .woocommerce .woocommerce-info,
.woocommerce-account .woocommerce .woocommerce-message { background: #faf8f2; border-top-color: #a8841c; color: #171717; }
.woocommerce-account .woocommerce .woocommerce-error { background: #fff4f1; color: #7b2617; }
.woocommerce-account .woocommerce .woocommerce-Addresses { display: block; }
.woocommerce-account .woocommerce .woocommerce-Address { margin-bottom: 20px; }
@media (max-width: 1000px) {
	.woocommerce-account .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: minmax(0, 1fr); gap: 18px; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; }
	.woocommerce-account .woocommerce-MyAccount-navigation ul li { margin: 0; }
}
@media (max-width: 700px) {
	.woocommerce-account main .woocommerce { padding-top: 24px; }
	.woocommerce-account .woocommerce form .form-row-first,
	.woocommerce-account .woocommerce form .form-row-last {
		float: none;
		clear: both;
		width: 100%;
	}
	.woocommerce-account .woocommerce .woocommerce-info .button,
	.woocommerce-account .woocommerce .woocommerce-message .button {
		float: none;
		display: flex;
		width: 100%;
		margin: 0 0 12px;
	}
	.woocommerce-account .woocommerce .u-columns,
	.gg-acc__quicklinks { grid-template-columns: minmax(0, 1fr); }
	.woocommerce-account .woocommerce .u-columns > .u-column1,
	.woocommerce-account .woocommerce .u-columns > .u-column2 { padding: 20px; }
	.woocommerce-account .woocommerce-MyAccount-navigation li a { font-size: 14px; padding: 10px; }
	.woocommerce-account .woocommerce .gg-acc__table,
	.woocommerce-account .gg-acc__table tbody,
	.woocommerce-account .gg-acc__table tr,
	.woocommerce-account .gg-acc__table td { display: block; width: 100%; }
	.woocommerce-account .gg-acc__table thead { display: none; }
	.woocommerce-account .gg-acc__table tr { border: 1px solid #dedbd2; border-radius: 9px; margin-bottom: 16px; padding: 8px 14px; }
	.woocommerce-account .gg-acc__table td { padding: 10px 0; border-bottom: 1px solid #eee9dc; text-align: left; }
	.woocommerce-account .gg-acc__table td:last-child { border-bottom: 0; }
	.woocommerce-account .gg-acc__table td::before { content: attr(data-label); display: block; font-family: 'D35', sans-serif; font-size: 11px; font-weight: 700; text-transform: uppercase; color: #666; margin-bottom: 4px; }
	.woocommerce-account .woocommerce .gg-acc__table .gg-acc__sub-id { font-size: 17px; }
	.woocommerce-account .woocommerce .gg-acc__table .button { font-size: 14px; }
	.gg-acc__more-panel { position: static; width: auto; max-width: none; margin-top: 8px; box-shadow: none; }
	.woocommerce-account .gg-acc__order { padding: 14px; }
	.woocommerce-account .gg-acc__payment-help { padding: 16px; }
}
/* Woo 11 uses a row-header th for Order; its phone table rule hides all th. */
@media screen and (max-width: 768px) {
	.woocommerce-account .woocommerce table.woocommerce-orders-table th.woocommerce-orders-table__cell-order-number {
		display: block;
		padding: 9px 12px;
		font-weight: 400;
		text-align: right;
	}
	.woocommerce-account .woocommerce table.woocommerce-orders-table th.woocommerce-orders-table__cell-order-number::before {
		content: attr(data-title) ': ';
		float: left;
		font-weight: 700;
	}
}
