/* Account pages (body.store-account): sign in, create account, forgot / reset
   password, and every signed-in My Account page (they all share the
   customer_account layout handle). Styling only; page margins, title type,
   form fields and primary buttons come from store-common.css.
   Long selectors / !important where Logicbrush's orders-gamry.css needs beating. */

body.store-account .page-main .page-title-wrapper { margin: 36px 0 26px; }

/* ---- Sidebar (signed-in pages) ---- */
.store-account .sidebar-main, .store-account .sidebar-additional { padding-right: 32px; }
.store-account .block-collapsible-nav .content {
	padding: 10px 0; border: 1px solid var(--gm-border); border-radius: 14px; background: #fff;
}
.store-account .block-collapsible-nav .item { margin: 0; }
.store-account .block-collapsible-nav .item a,
.store-account .block-collapsible-nav .item > strong {
	display: block; padding: 9px 20px; border-left: 3px solid transparent;
	font-family: var(--gm-font-body); font-size: 15px; line-height: 1.35; color: var(--gm-navy); text-decoration: none;
}
.store-account .block-collapsible-nav .item a:hover { background: #f4f8fa; color: var(--gm-navy); }
.store-account .block-collapsible-nav .item.current a,
.store-account .block-collapsible-nav .item.current > strong { border-left-color: var(--gm-navy); font-weight: 600; color: var(--gm-ink); }
.store-account .block-collapsible-nav .item .delimiter { margin: 8px 20px; border-top: 1px solid var(--gm-border); }

/* "My Quote" / "My Cart" blocks (Cart2Quote, Logicbrush CartSidebar): small cards */
.store-account .sidebar .block:not(.block-collapsible-nav) {
	margin-top: 22px; padding: 18px 20px; border: 1px solid var(--gm-border); border-radius: 14px; background: #fff;
}
.store-account .sidebar .block:not(.block-collapsible-nav) .block-title {
	margin: 0 0 8px; padding: 0; background: none; border: 0;
}
.store-account .sidebar .block:not(.block-collapsible-nav) .block-title strong {
	font-family: var(--gm-font-display); font-size: 17px; font-weight: 700; color: var(--gm-ink);
}
.store-account .sidebar .block:not(.block-collapsible-nav),
.store-account .sidebar .block:not(.block-collapsible-nav) p { font-family: var(--gm-font-body); font-size: 14px; color: var(--gm-body); }
.store-account .sidebar .block:not(.block-collapsible-nav) a { color: var(--gm-navy); }

/* ---- Content blocks (dashboard, address book, ...) ---- */
.store-account .column.main .block:not(.widget) { margin-bottom: 36px; }
.store-account .column.main .block > .block-title {
	display: flex; align-items: baseline; gap: 16px; margin: 0 0 18px; padding: 0 0 12px;
	background: none; border: 0; border-bottom: 1px solid var(--gm-border);
}
.store-account .column.main .block > .block-title strong {
	font-family: var(--gm-font-display); font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: var(--gm-ink);
}
.store-account .column.main .block > .block-title .action { font-family: var(--gm-font-body); font-size: 14px; font-weight: 500; color: var(--gm-navy); }
.store-account .column.main .block-content { display: flex; flex-wrap: wrap; gap: 20px; }
.store-account .column.main .block-content > .box {
	flex: 1 1 280px; width: auto; float: none; margin: 0;
	padding: 20px 22px; border: 1px solid var(--gm-border); border-radius: 12px; background: #fff;
}
.store-account .box-title > span {
	font-family: var(--gm-font-mono); font-size: 11px; font-weight: 400; letter-spacing: 0.13em; text-transform: uppercase; color: var(--gm-muted);
}
.store-account .box-content, .store-account .box-content address {
	font-family: var(--gm-font-body); font-size: 15px; line-height: 1.6; color: var(--gm-ink); font-style: normal;
}
.store-account .box-actions { margin-top: 12px; display: flex; gap: 16px; }
.store-account .box-actions .action { font-family: var(--gm-font-body); font-size: 14px; font-weight: 600; color: var(--gm-navy); }
.store-account .box-actions .action::after { display: none; } /* Magento's "|" separator */

/* Dashboard welcome (Logicbrush): "Hello" + the yellow "SHOP THE GAMRY STORE" button */
.store-account .welcome-msg { margin: 0 0 32px; font-family: var(--gm-font-body); font-size: 16px; line-height: 1.6; color: var(--gm-body); }
.store-account .welcome-msg .hello strong { font-family: var(--gm-font-display); font-size: 20px; font-weight: 700; color: var(--gm-ink); }
body.store-account .welcome-msg .hello .button {
	display: inline-flex; align-items: center; min-height: 40px; padding: 0 18px; border-radius: 10px;
	background: var(--gm-navy); color: #fff !important; text-transform: none; text-decoration: none;
	font-family: var(--gm-font-body); font-size: 15px; font-weight: 600;
}
body.store-account .welcome-msg .hello .button:hover { background: var(--gm-navy-hover); }

/* Empty states ("You have placed no orders"): the website's quiet notice, not Magento yellow */
.store-account .message.info, .store-account .message.notice, .store-account .message.empty {
	margin: 0 0 20px; padding: 16px 20px 16px 20px; border: 0; border-left: 3px solid var(--gm-navy); border-radius: 0 10px 10px 0;
	background: var(--gm-panel, #f2f4f5); color: var(--gm-ink);
	font-family: var(--gm-font-body); font-size: 15px; font-weight: 500; text-align: left;
}
.store-account .message.info > *:first-child::before,
.store-account .message.notice > *:first-child::before,
.store-account .message.empty > *:first-child::before { display: none; }

/* Order / quote history tables */
.store-account .table-wrapper .data.table { font-family: var(--gm-font-body); font-size: 15px; }
.store-account .table-wrapper .data.table thead th {
	padding: 0 12px 12px; border-bottom: 1px solid var(--gm-border);
	font-family: var(--gm-font-mono); font-size: 11px; font-weight: 400; letter-spacing: 0.13em; text-transform: uppercase; color: var(--gm-muted);
}
.store-account .table-wrapper .data.table tbody td { padding: 14px 12px; border-bottom: 1px solid var(--gm-border-soft); color: var(--gm-ink); }
.store-account .table-wrapper .data.table .action { color: var(--gm-navy); font-weight: 600; }

/* ---- Forms (create account, account information, address, sign in) ---- */
.store-account .fieldset > .legend {
	margin: 0 0 18px; padding: 0 0 10px; border-bottom: 1px solid var(--gm-border); width: 100%;
	font-family: var(--gm-font-display); font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: var(--gm-ink);
}
.store-account .fieldset > .legend + br { display: none; }
/* Labels above fields, as on checkout (Magento's default is a right-aligned column) */
.store-account .fieldset > .field:not(.choice) > .label,
.store-account .fieldset > .fields > .field:not(.choice) > .label {
	float: none; width: auto; text-align: left; padding: 0 0 6px; margin: 0;
	font-family: var(--gm-font-body); font-size: 14px; font-weight: 600; color: var(--gm-ink);
}
.store-account .fieldset > .field:not(.choice) > .control,
.store-account .fieldset > .fields > .field:not(.choice) > .control { float: none; width: 100%; }
.store-account .fieldset > .field, .store-account .fieldset > .fields > .field { margin: 0 0 18px; }
.store-account .fieldset > .field.choice { padding-left: 0; }
.store-account .fieldset > .field.choice::before { display: none; } /* Magento's label-column spacer */
.store-account .form.create.account, .store-account .form-edit-account, .store-account .form-address-edit,
.store-account .form.password.forget, .store-account .form.password.reset { max-width: 640px; }
.store-account .field-tooltip { top: 10px; }
.store-account .field-tooltip .field-tooltip-action { background: none; }
.store-account .actions-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin: 8px 0 0; padding: 0; }
.store-account .actions-toolbar::before, .store-account .actions-toolbar::after { content: none; }
.store-account .actions-toolbar > .primary, .store-account .actions-toolbar > .secondary { float: none; margin: 0; }
.store-account .actions-toolbar .secondary .action {
	font-family: var(--gm-font-body); font-size: 14px; font-weight: 500; color: var(--gm-navy); text-decoration: underline;
}

/* Sign-in page: "Registered Customers" / "New Customers" as two cards */
.store-account .login-container { display: flex; flex-wrap: wrap; gap: 28px; }
.store-account .login-container > .block {
	flex: 1 1 380px; width: auto; float: none; margin: 0;
	padding: 26px 28px; border: 1px solid var(--gm-border); border-radius: 14px; background: #fff;
}
.store-account .login-container .block > .block-title {
	margin: 0 0 16px; padding: 0 0 12px; background: none; border: 0; border-bottom: 1px solid var(--gm-border);
}
.store-account .login-container .block > .block-title strong {
	font-family: var(--gm-font-display); font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: var(--gm-ink);
}
.store-account .login-container .block-content,
.store-account .login-container .block-content p,
.store-account .login-container .block-content li { font-family: var(--gm-font-body); font-size: 15px; line-height: 1.6; color: var(--gm-body); }
.store-account .login-container .fieldset::after { /* "* Required Fields" */
	margin: 4px 0 0; font-family: var(--gm-font-body); font-size: 13px; color: var(--gm-muted);
}

/* ---- Fixes after first render ---- */
/* Magento's own nav rules (grey .content, orange current bar) match at equal weight */
body.store-account .block-collapsible-nav .content { background: #fff; }
body.store-account .block-collapsible-nav .item.current a,
body.store-account .block-collapsible-nav .item.current > strong { border-left-color: var(--gm-navy); }
.store-account .sidebar .block-collapsible-nav { margin: 0; }
/* "Recently Ordered" keeps its frame when it has nothing to list */
.store-account .sidebar .block-reorder:not(:has(li)) { display: none; }
/* Sign in / forgot password: Magento indents the buttons under a label column */
body.store-account .fieldset + .actions-toolbar,
body.store-account .form .actions-toolbar { margin-left: 0; padding-left: 0; }
/* "Create an Account" is an <a>; orders-gamry pads it as a text link */
body.store-account .login-container .action.create.primary {
	display: inline-flex !important; align-items: center; min-height: 48px; padding: 0 28px !important; line-height: 1;
	color: #fff !important; text-decoration: none;
}
body.store-account .login-container .action.create.primary span { color: #fff !important; }
.store-account .column.main .block > .block-title .action { font-size: 14px !important; }
body.store-account .columns .sidebar-main { margin-top: 36px; }
body.store-account .login-container .fieldset > .actions-toolbar,
body.store-account .login-container .actions-toolbar { margin-left: 0 !important; padding-left: 0 !important; }
/* Magento's .account .column.main .block:not(.widget) .block-title > strong (1.8rem) outranks the rule above */
body.store-account.account .column.main .block:not(.widget) .block-title > :is(strong, span) { font-size: 22px; }
/* The "?" help toggle beside "Allow remote shopping assistance": orders-gamry paints it as a dark button */
body.store-account .fieldset .field-tooltip .field-tooltip-action,
body.store-account .fieldset .field.choice .action-help {
	background: none !important; border: 0 !important; box-shadow: none; width: auto; height: auto; padding: 0 4px;
	color: var(--gm-muted) !important;
}
body.store-account .fieldset .field.choice { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

/* ---- Consistency pass ---- */
body.store-account .block-collapsible-nav .item.current > strong { font-size: 15px; color: var(--gm-ink); } /* was 14px #444 */

/* ---- Shipment tracking (Gamry request: "ability to track shipment online") ---- */
.store-account .store-tracking {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; margin: 0 0 24px; padding: 14px 18px;
	border-left: 3px solid var(--gm-navy); border-radius: 0 10px 10px 0; background: var(--gm-panel, #f2f4f5);
	font-family: var(--gm-font-body); font-size: 15px; color: var(--gm-ink);
}
.store-account .store-tracking-label { font-weight: 600; }
.store-account .store-tracking-links { display: inline-flex; flex-wrap: wrap; gap: 6px 14px; }
.store-account .store-tracking-note { font-size: 13px; color: var(--gm-muted); }
body.store-account #maincontent a.store-track-link { color: var(--gm-navy) !important; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.store-account .orders-history .col.tracking { white-space: nowrap; }
