:root {
    --tcg-background: #F4F7FB; --tcg-surface: #FFFFFF; --tcg-raised: #FFFFFF;
    --tcg-text: #172B4D; --tcg-muted: #52606D; --tcg-primary: #102A43;
    --tcg-primary-hover: #243B53; --tcg-accent: #1976D2; --tcg-border: #C9D6E3;
    --tcg-surface-muted: #DCEBFA; --tcg-success: #2E7D5B; --tcg-warning: #8A5A00; --tcg-error: #C0392B;
    --tcg-on-primary: #FFFFFF; --tcg-shadow: rgba(16,42,67,.10);
}
:root[data-theme="dark"] { --tcg-background: #0B1F33; --tcg-surface: #102A43; --tcg-raised: #243B53; --tcg-text: #F0F4F8; --tcg-muted: #BCCCDC; --tcg-primary: #63B3ED; --tcg-primary-hover: #90CDF4; --tcg-accent: #63B3ED; --tcg-border: #486581; --tcg-surface-muted: #243B53; --tcg-success: #7AD69D; --tcg-warning: #F6C453; --tcg-error: #FF8A80; --tcg-on-primary: #102A43; --tcg-shadow: rgba(0,0,0,.28); }
:root[data-palette="espresso-copper"] { --tcg-background: #F7F2EC; --tcg-surface: #FFFDF9; --tcg-raised: #FFFFFF; --tcg-text: #2B211D; --tcg-muted: #6F625B; --tcg-primary: #C98252; --tcg-primary-hover: #A8613B; --tcg-accent: #E1A16F; --tcg-border: #E4D8CE; --tcg-surface-muted: #F0E8E0; --tcg-success: #4B8066; --tcg-warning: #A96E28; --tcg-error: #B44F4F; --tcg-on-primary: #2B211D; --tcg-shadow: rgba(43,33,29,.06); }
:root[data-palette="espresso-copper"][data-theme="dark"] { --tcg-background: #211916; --tcg-surface: #332722; --tcg-raised: #3D302A; --tcg-text: #FFF9F3; --tcg-muted: #D8C9C0; --tcg-primary: #C98252; --tcg-primary-hover: #E1A16F; --tcg-accent: #E1A16F; --tcg-border: #59463D; --tcg-surface-muted: #45352D; --tcg-success: #9BBF9F; --tcg-warning: #E0AC62; --tcg-error: #F19A8D; --tcg-on-primary: #FFF9F3; --tcg-shadow: rgba(0,0,0,.24); }
:root[data-palette="forest-coffee"] { --tcg-background: #F1F3EE; --tcg-surface: #FBFCF8; --tcg-raised: #FFFFFF; --tcg-text: #253028; --tcg-muted: #657066; --tcg-primary: #71856C; --tcg-primary-hover: #536A55; --tcg-accent: #B5A56A; --tcg-border: #D9E1D7; --tcg-surface-muted: #E8EEE5; }
:root[data-palette="forest-coffee"][data-theme="dark"] { --tcg-background: #202822; --tcg-surface: #303C33; --tcg-raised: #3B4A3E; --tcg-text: #F0F4ED; --tcg-muted: #C7D1C3; --tcg-primary: #71856C; --tcg-primary-hover: #B5A56A; --tcg-accent: #B5A56A; --tcg-border: #536657; --tcg-surface-muted: #3C4B3F; }
:root[data-palette="desert-sand"] { --tcg-background: #FBF4EA; --tcg-surface: #FFFDF8; --tcg-raised: #FFFFFF; --tcg-text: #35251D; --tcg-muted: #74645B; --tcg-primary: #B56F4A; --tcg-primary-hover: #8D5034; --tcg-accent: #D7A36F; --tcg-border: #E9D9C7; --tcg-surface-muted: #F3E7D8; }
:root[data-palette="desert-sand"][data-theme="dark"] { --tcg-background: #2B211D; --tcg-surface: #3C2D25; --tcg-raised: #49382E; --tcg-text: #FFF5EA; --tcg-muted: #DDC9BA; --tcg-primary: #B56F4A; --tcg-primary-hover: #D7A36F; --tcg-accent: #D7A36F; --tcg-border: #62483A; --tcg-surface-muted: #4A382E; }
:root[data-palette="slate-teal"] { --tcg-background: #EFF4F2; --tcg-surface: #FCFEFD; --tcg-raised: #FFFFFF; --tcg-text: #202D2F; --tcg-muted: #617073; --tcg-primary: #557D82; --tcg-primary-hover: #3F6267; --tcg-accent: #C09662; --tcg-border: #D6E2E0; --tcg-surface-muted: #E6EFED; }
:root[data-palette="slate-teal"][data-theme="dark"] { --tcg-background: #1F292B; --tcg-surface: #2E3B3D; --tcg-raised: #38494B; --tcg-text: #EFF7F6; --tcg-muted: #C5D4D3; --tcg-primary: #557D82; --tcg-primary-hover: #C09662; --tcg-accent: #C09662; --tcg-border: #496467; --tcg-surface-muted: #39494B; }
:root[data-palette="soft-graphite"] { --tcg-background: #F0F0EE; --tcg-surface: #FAFAF8; --tcg-raised: #FFFFFF; --tcg-text: #292927; --tcg-muted: #686863; --tcg-primary: #666662; --tcg-primary-hover: #484844; --tcg-accent: #A5A59D; --tcg-border: #DDDDD8; --tcg-surface-muted: #E8E8E4; }
:root[data-palette="soft-graphite"][data-theme="dark"] { --tcg-background: #242423; --tcg-surface: #343432; --tcg-raised: #40403D; --tcg-text: #F0F0EC; --tcg-muted: #C7C7C0; --tcg-primary: #666662; --tcg-primary-hover: #A5A59D; --tcg-accent: #A5A59D; --tcg-border: #565650; --tcg-surface-muted: #41413E; }
:root[data-palette="paper-ink"] { --tcg-background: #FAF8F4; --tcg-surface: #FFFDFC; --tcg-raised: #FFFFFF; --tcg-text: #2C2926; --tcg-muted: #716B64; --tcg-primary: #665F57; --tcg-primary-hover: #49433D; --tcg-accent: #A69B8D; --tcg-border: #E4DFD8; --tcg-surface-muted: #F0ECE6; }
:root[data-palette="paper-ink"][data-theme="dark"] { --tcg-background: #292725; --tcg-surface: #393531; --tcg-raised: #45413C; --tcg-text: #F1EDE7; --tcg-muted: #CBC3BA; --tcg-primary: #665F57; --tcg-primary-hover: #A69B8D; --tcg-accent: #A69B8D; --tcg-border: #5A534B; --tcg-surface-muted: #46413C; }
:root[data-palette="navy-blue"] { --tcg-background: #F4F7FB; --tcg-surface: #FFFFFF; --tcg-raised: #FFFFFF; --tcg-text: #172B4D; --tcg-muted: #52606D; --tcg-primary: #102A43; --tcg-primary-hover: #243B53; --tcg-accent: #1976D2; --tcg-border: #C9D6E3; --tcg-surface-muted: #DCEBFA; --tcg-success: #2E7D5B; --tcg-warning: #8A5A00; --tcg-error: #C0392B; --tcg-on-primary: #FFFFFF; --tcg-shadow: rgba(16,42,67,.10); }
:root[data-palette="navy-blue"][data-theme="dark"] { --tcg-background: #0B1F33; --tcg-surface: #102A43; --tcg-raised: #243B53; --tcg-text: #F0F4F8; --tcg-muted: #BCCCDC; --tcg-primary: #63B3ED; --tcg-primary-hover: #90CDF4; --tcg-accent: #63B3ED; --tcg-border: #486581; --tcg-surface-muted: #243B53; --tcg-success: #7AD69D; --tcg-warning: #F6C453; --tcg-error: #FF8A80; --tcg-on-primary: #102A43; --tcg-shadow: rgba(0,0,0,.28); }
body { margin: 0; background: var(--tcg-background); color: var(--tcg-text); font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; }
.app-shell { min-height: 100vh; }
.shell-header { position: sticky; top: 0; z-index: 1100; background: var(--tcg-surface); color: var(--tcg-text); border-bottom: 1px solid var(--tcg-border); box-shadow: 0 4px 18px color-mix(in srgb, var(--tcg-text) 12%, transparent); }
.shell-header-inner { max-width: 1440px; min-height: 72px; margin: auto; padding: 0 1.5rem; display: flex; align-items: center; gap: 2rem; }
.shell-brand { display: inline-flex; align-items: center; gap: .55rem; color: var(--tcg-text) !important; font-size: 1.2rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.shell-brand .mud-icon-root { color: var(--tcg-primary); }
.shell-nav { display: flex; align-items: center; gap: 1rem; }
.shell-nav a, .shell-actions a { position: relative; padding: 1.5rem .15rem 1.35rem; color: var(--tcg-muted); font-size: .875rem; font-weight: 600; text-decoration: none; }
.shell-nav a:hover, .shell-actions a:hover { color: var(--tcg-text); }
.shell-nav a.active { color: var(--tcg-text); }
.shell-nav a.active::after { content: ""; position: absolute; right: 0; bottom: 0; left: 0; height: 3px; border-radius: 3px 3px 0 0; background: var(--tcg-primary); }
.global-admin-menu .mud-button-root, .global-category-menu .mud-button-root { min-height: 32px; padding: .2rem .55rem; border-radius: 8px; color: var(--tcg-muted); font-size: .875rem; font-weight: 650; text-transform: none; }
.global-admin-menu .mud-button-root:hover, .global-admin-menu .mud-button-root:focus-visible, .global-category-menu .mud-button-root:hover, .global-category-menu .mud-button-root:focus-visible { color: var(--tcg-text); background: var(--tcg-surface-muted); }
.global-admin-menu.active .mud-button-root { color: var(--tcg-text); }
.global-admin-menu.active .mud-button-root::after { content: ""; position: absolute; right: .65rem; bottom: 0; left: .65rem; height: 3px; border-radius: 3px 3px 0 0; background: var(--tcg-primary); }
.global-category-menu.active .mud-button-root { color: var(--tcg-text); }
.global-category-menu.active .mud-button-root::after { content: ""; position: absolute; right: .65rem; bottom: 0; left: .65rem; height: 3px; border-radius: 3px 3px 0 0; background: var(--tcg-primary); }
.global-admin-menu .admin-menu-section.active { color: var(--tcg-text); background: var(--tcg-surface-muted); font-weight: 750; }
.global-admin-menu .mud-menu-item:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: -3px; }
.shell-menu-card { width: min(360px, calc(100vw - 2rem)); padding: .6rem; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); color: var(--tcg-text); box-shadow: 0 12px 30px var(--tcg-shadow); }
.shell-menu-card-heading { display: flex; align-items: center; gap: .65rem; padding: .65rem .7rem .8rem; border-bottom: 1px solid var(--tcg-border); color: var(--tcg-text); }
.shell-menu-card-heading .mud-icon-root, .shell-menu-card-item > .mud-icon-root { color: var(--tcg-primary); }
.shell-menu-card-heading div { display: flex; flex-direction: column; gap: .12rem; }
.shell-menu-card-heading span, .shell-menu-card-item small { color: var(--tcg-muted); font-size: .75rem; font-weight: 500; }
.shell-menu-card .mud-menu-item { min-height: 0; margin-top: .25rem; padding: .65rem .7rem; border-radius: 10px; color: var(--tcg-text); }
.shell-menu-card .mud-menu-item:hover, .shell-menu-card .mud-menu-item:focus-visible, .shell-menu-card .mud-menu-item.active { background: var(--tcg-surface-muted); }
.shell-menu-card-item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .65rem; width: 100%; }
.shell-menu-card-item > span { display: flex; flex-direction: column; gap: .12rem; min-width: 0; }
.shell-menu-card-item strong { color: var(--tcg-text); font-size: .9rem; }
.shell-menu-card-item > .mud-icon-root:last-child { color: var(--tcg-muted); font-size: 1.05rem; }
.admin-menu-card-heading, .admin-menu-card-item { /* retained hooks for existing admin diagnostics/tests */ }
.admin-menu-card .mud-menu-item.admin-menu-section.active, .category-menu-card .mud-menu-item.category-menu-section.active { font-weight: 750; }
.global-category-menu .mud-menu-item:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: -3px; }
.admin-products-menu-group, .mobile-admin-products-group { border-radius: 10px; }
.admin-products-menu-group-summary, .mobile-admin-products-group-summary { list-style: none; cursor: pointer; }
.admin-products-menu-group-summary::-webkit-details-marker, .mobile-admin-products-group-summary::-webkit-details-marker { display: none; }
.admin-products-menu-group-summary:hover, .admin-products-menu-group-summary:focus-visible, .admin-products-menu-group-summary.active, .mobile-admin-products-group-summary:hover, .mobile-admin-products-group-summary:focus-visible, .mobile-admin-products-group-summary.active { background: var(--tcg-surface-muted); }
.admin-products-menu-group-summary:focus-visible, .mobile-admin-products-group-summary:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: -3px; }
.admin-products-menu-group-summary .shell-menu-card-item { padding: .65rem .7rem; }
.admin-products-menu-children { margin: .15rem 0 0 .7rem; padding-left: .55rem; border-left: 2px solid var(--tcg-border); }
.admin-products-menu-children .mud-menu-item { margin-top: .2rem; }
.admin-submenu-card-item { padding-left: .35rem; }
.mobile-admin-products-group { margin: .25rem 0; }
.mobile-admin-products-group-summary { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-height: 40px; padding: .5rem 2rem; color: var(--tcg-text); font-weight: 700; }
.mobile-admin-products-children { margin-left: 1rem; padding-left: .5rem; border-left: 2px solid var(--tcg-border); }
.mobile-admin-subsection { padding-left: 2.5rem !important; }
.user-menu-card { width: min(330px, calc(100vw - 2rem)); }
.user-menu-card .logout-form { margin: .35rem .25rem 0; border-top: 1px solid var(--tcg-border); }
.user-menu-card .menu-submit { color: var(--tcg-text); }
.shell-actions { display: flex; align-items: center; gap: .75rem; margin-left: auto; }
.theme-mode-toggle { min-height: 32px; padding: .25rem .65rem; border: 1px solid var(--tcg-border); border-radius: 8px; color: var(--tcg-text); background: transparent; font-size: .75rem; font-weight: 750; letter-spacing: .06em; line-height: 1.2; }
.theme-mode-toggle:hover { background: var(--tcg-surface-muted); }
.theme-mode-toggle:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: 2px; }
.shell-search { display: flex; align-items: center; gap: .45rem; min-width: 250px; padding: .15rem .6rem; border: 1px solid var(--tcg-border); border-radius: 10px; background: var(--tcg-background); color: var(--tcg-muted); }
.shell-search .mud-input-control { margin: 0; }
.shell-search .mud-input { color: var(--tcg-text); }
.shell-search .mud-input-label, .shell-search input::placeholder { color: var(--tcg-muted); }
.shell-search:focus-within { border-color: var(--tcg-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--tcg-primary) 24%, transparent); }
.theme-toggle { color: var(--tcg-text) !important; }
.shell-login-link { min-width: 0; min-height: 32px; padding: .25rem .65rem; border-radius: 8px; color: var(--tcg-text) !important; font-size: .75rem; font-weight: 700; letter-spacing: .02em; line-height: 1.2; text-transform: none; }
.shell-login-link:hover, .shell-login-link:focus-visible { background: var(--tcg-surface-muted); }
@supports (background: color-mix(in srgb, white, black)) { .shell-login-link:hover, .shell-login-link:focus-visible { background: color-mix(in srgb, var(--tcg-primary) 16%, transparent); } }
.mud-button-root { min-height: 36px; padding: .5rem 1rem; border-radius: 9px; font-weight: 650; text-transform: none; }
.mud-button-outlined-primary { border: 1px solid var(--tcg-primary); color: var(--tcg-text); background: transparent; }
.mud-button-outlined-primary:hover, .mud-button-outlined-primary:active { background: var(--tcg-surface-muted); border-color: var(--tcg-primary-hover); }
@supports (background: color-mix(in srgb, white, black)) { .mud-button-outlined-primary:hover, .mud-button-outlined-primary:active { background: color-mix(in srgb, var(--tcg-primary) 16%, transparent); } }
.mud-button-root:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: 2px; }
.mud-button-root:disabled, .mud-button-root.mud-button-disabled { opacity: .55; cursor: not-allowed; }
.shell-actions .theme-mode-toggle, .shell-actions .shell-login-link { box-sizing: border-box; height: 32px; min-height: 32px; padding: .25rem .65rem; border-width: 1px; border-radius: 8px; line-height: 1.2; align-self: center; }
.mud-button-text { min-height: 32px; padding: .35rem .55rem; }
.mud-button-filled-primary { color: var(--tcg-on-primary); }
.user-menu .mud-button-root { color: var(--tcg-text); text-transform: none; }
.menu-submit { width: 100%; padding: .5rem 1rem; border: 0; background: transparent; color: inherit; text-align: left; font: inherit; cursor: pointer; }
.mobile-nav-menu { display: none; }
.mobile-category-section { padding-left: 2rem !important; }
.page-content { padding-top: 2.5rem; padding-bottom: 4rem; min-height: 55vh; }
.dashboard-hero { display: flex; justify-content: space-between; gap: 2rem; padding: clamp(2rem, 5vw, 3.5rem); margin-bottom: 2rem; border: 1px solid var(--tcg-border); border-radius: 16px; background: var(--tcg-surface); color: var(--tcg-text); }
.dashboard-hero { background: linear-gradient(135deg, var(--tcg-surface), var(--tcg-background)); }
@supports (background: color-mix(in srgb, white, black)) { .dashboard-hero { background: linear-gradient(135deg, var(--tcg-surface), color-mix(in srgb, var(--tcg-primary) 10%, var(--tcg-background))); } }
.dashboard-hero > div:first-child .mud-typography { color: var(--tcg-text); }
.dashboard-hero .dashboard-lead { max-width: 650px; margin-top: .6rem; color: var(--tcg-muted); font-size: 1.05rem; }
.dashboard-hero .mud-secondary-text, .dashboard-panel .mud-secondary-text, .summary-card .mud-secondary-text, .game-card .mud-secondary-text { color: var(--tcg-muted); }
.summary-grid, .quick-action-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.summary-grid.six-columns { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.summary-card, .quick-action { height: 100%; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-raised); box-shadow: 0 5px 18px var(--tcg-shadow); }
@supports (box-shadow: 0 0 0 color-mix(in srgb, white, black)) { .summary-card, .quick-action { box-shadow: 0 5px 18px color-mix(in srgb, var(--tcg-text) 6%, transparent); } }
.summary-card .mud-card-content, .quick-action .mud-card-content { display: flex; flex-direction: column; gap: .6rem; }
.summary-card .mud-typography-h4 { color: var(--tcg-primary); font-weight: 750; }
.summary-card .mud-icon-root { color: var(--tcg-primary); }
.hero-update { align-self: flex-end; display: flex; flex-direction: column; gap: .35rem; min-width: 210px; color: var(--tcg-muted); font-size: .85rem; }
.hero-update .mud-icon-root { color: var(--tcg-accent); }
.hero-update strong { color: var(--tcg-text); font-size: .9rem; }
.dashboard-section { margin-top: 3rem; }
.dashboard-page > .dashboard-section { margin-top: 0; }
.dashboard-summary-grid .mud-item { display: flex; }
.dashboard-summary-grid .summary-card { width: 100%; }
.dashboard-section { padding: 1.5rem; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); }
.monitoring-state { height: 100%; box-sizing: border-box; }
.quick-actions { flex-wrap: wrap; }
.live-feed-panel { padding: 1.5rem; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); color: var(--tcg-text); }
.live-feed-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.live-feed-card { border-color: var(--tcg-border); border-radius: 12px; background: var(--tcg-raised); color: var(--tcg-text); }
.live-feed-card .mud-card-content { padding: 1rem; }
.live-feed-values { flex-wrap: wrap; color: var(--tcg-muted); }
.live-feed-values strong { color: var(--tcg-text); }
.live-feed-offer-link { display: inline-block; margin-top: 1rem; color: var(--tcg-primary); font-weight: 650; }
.live-feed-offer-link:hover { color: var(--tcg-primary-hover); }
.dashboard-only-feed { max-width: 980px; margin: 0 auto; }
.catalogue-page { max-width: 1180px; margin: 0 auto; }
.catalogue-page, .admin-page { width: min(100%, 1180px); box-sizing: border-box; }
.catalogue-heading { display: flex; flex-direction: column; gap: .4rem; }
.catalogue-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; color: var(--tcg-muted); }
.catalogue-breadcrumb a { color: var(--tcg-primary); text-decoration: none; }
.catalogue-breadcrumb a:hover { color: var(--tcg-primary-hover); text-decoration: underline; }
.catalogue-choice-card, .catalogue-product-card { height: 100%; overflow: hidden; border: 1px solid var(--tcg-border); border-radius: 16px; background: var(--tcg-raised); color: var(--tcg-text); box-shadow: 0 5px 18px var(--tcg-shadow); }
.catalogue-intro { gap: .55rem; }
.catalogue-media-frame { display: grid; place-items: center; overflow: hidden; background: var(--tcg-surface-muted); }
.catalogue-hero { display: grid; grid-template-columns: minmax(180px, 260px) 1fr; gap: 1.5rem; align-items: center; padding: 1rem; border: 1px solid var(--tcg-border); border-radius: 16px; background: linear-gradient(135deg, var(--tcg-surface), var(--tcg-background)); }
.catalogue-hero-media { display: grid; place-items: center; min-height: 150px; overflow: hidden; border-radius: 12px; background: var(--tcg-surface-muted); }
.catalogue-hero-media img { width: 100%; height: 150px; object-fit: contain; padding: .75rem; }
.catalogue-hero-copy, .catalogue-detail-summary { display: flex; flex-direction: column; gap: .55rem; }
.catalogue-badges { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .35rem; }
.catalogue-detail-hero { display: grid; grid-template-columns: minmax(260px, 420px) 1fr; gap: 2rem; align-items: center; }
.catalogue-detail-media { display: grid; place-items: center; border-radius: 14px; background: var(--tcg-surface-muted); }
.catalogue-detail-summary { padding: .5rem 0; }
.catalogue-detail-shell { background: var(--tcg-surface); }
@supports (box-shadow: 0 0 0 color-mix(in srgb, white, black)) { .catalogue-choice-card, .catalogue-product-card { box-shadow: 0 5px 18px color-mix(in srgb, var(--tcg-text) 6%, transparent); } }
.catalogue-art { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: contain; object-position: center; background: var(--tcg-surface-muted); }
.catalogue-product-art { width: 100%; height: 190px; aspect-ratio: auto; object-fit: contain; object-position: center; padding: .75rem; background: var(--tcg-surface-muted); }
.catalogue-detail-art { width: min(100%, 520px); height: min(420px, 55vh); margin: 0 auto 1.5rem; object-fit: contain; object-position: center; padding: 1rem; background: var(--tcg-surface-muted); }
.admin-media-preview { display: block; width: min(100%, 360px); max-height: 240px; object-fit: contain; margin: 1rem auto; border-radius: 10px; background: var(--tcg-surface-muted); }
.remember-me-control { display: flex; align-items: center; gap: .55rem; color: var(--tcg-text); }
.remember-me-control input { width: 1.05rem; height: 1.05rem; accent-color: var(--tcg-primary); }
.remember-me-control label { cursor: pointer; }
.catalogue-choice-card .mud-card-content, .catalogue-product-card .mud-card-content { display: flex; flex-direction: column; gap: .55rem; }
.catalogue-choice-card .mud-card-actions, .catalogue-product-card .mud-card-actions { margin-top: auto; }
.catalogue-filter-panel { padding: 1rem; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); }
.current-offers-grid { margin-top: .25rem; }
.current-offer-card { height: 100%; border-color: var(--tcg-border); border-radius: 14px; background: var(--tcg-raised); color: var(--tcg-text); }
.current-offer-card .mud-card-content { display: flex; flex-direction: column; min-height: 220px; }
.current-offer-card .mud-chip { max-width: 100%; }
.current-offer-price { color: var(--tcg-primary); font-weight: 750; }
.logout-form { padding: .25rem .5rem .5rem; }
.logout-form .menu-submit { justify-content: flex-start; color: var(--tcg-text); }
.logout-form .menu-submit:hover { background: var(--tcg-surface-muted); }
.section-heading { margin-bottom: 1rem; }
.quick-action-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.quick-action .mud-icon-root { margin-bottom: .25rem; }
.quick-action .mud-button-root { align-self: flex-start; margin-top: auto; }
.dashboard-tabs { margin-top: 2.5rem; }
.dashboard-panels { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 1rem; padding-top: 1.5rem; }
.dashboard-panel { min-height: 220px; }
.dashboard-panel .mud-card-content { display: flex; flex-direction: column; gap: .8rem; height: 100%; }
.panel-title { display: flex; align-items: center; justify-content: space-between; }
.panel-icon { margin: 1.2rem 0; font-size: 3rem; }
.dashboard-panel .mud-button-root { align-self: flex-start; }
.tab-empty { padding: 3rem 1rem; color: var(--tcg-muted); text-align: center; }
.benefits-section, .games-section { padding-top: 3rem; }
.benefits-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; padding: 1.25rem; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); }
.benefits-grid .mud-icon-root { margin-right: .45rem; vertical-align: middle; }
.game-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.game-card { border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); }
.game-card .mud-card-content { display: flex; flex-direction: column; gap: .55rem; }
.game-card .mud-button-root { align-self: flex-start; margin-top: .5rem; }
.shell-support-links { padding: 2rem 0; border-top: 1px solid var(--tcg-border); background: var(--tcg-surface); }
.support-link-grid { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; margin-top: 1rem; }
.support-link-grid a span { margin-left: .35rem; color: var(--tcg-muted); font-size: .75rem; }
.shell-footer { padding: 3rem 0 1.5rem; color: var(--tcg-muted); background: var(--tcg-surface); border-top: 1px solid var(--tcg-border); }
.shell-footer .mud-typography-h6, .shell-footer .mud-typography-subtitle2 { color: var(--tcg-text); }
.shell-footer a { color: var(--tcg-muted); text-decoration: none; }
.shell-footer a:hover, .shell-support-links a:hover { color: var(--tcg-primary); }
.footer-grid { display: grid; grid-template-columns: 1.5fr repeat(4, 1fr); gap: 2rem; }
.footer-grid > div:not(.footer-brand) { display: flex; flex-direction: column; gap: .55rem; }
.footer-brand { color: var(--tcg-muted); }
.footer-brand .mud-typography-h6 { color: var(--tcg-text); margin-bottom: .35rem; }
.footer-bottom { display: flex; justify-content: space-between; gap: 1rem; margin-top: 2.5rem; padding-top: 1rem; border-top: 1px solid var(--tcg-border); color: var(--tcg-muted); font-size: .8rem; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: 2px; }
@supports (outline-color: color-mix(in srgb, white, black)) { a:focus-visible, button:focus-visible, input:focus-visible { outline-color: color-mix(in srgb, var(--tcg-primary) 55%, transparent); } }
.hero { padding: clamp(2rem, 8vw, 6rem) clamp(1.5rem, 7vw, 6rem); border-radius: 28px; background: var(--tcg-surface); color: var(--tcg-text); }
.hero { background: linear-gradient(135deg, var(--tcg-surface), var(--tcg-background)); }
@supports (background: color-mix(in srgb, white, black)) { .hero { background: linear-gradient(135deg, var(--tcg-surface), color-mix(in srgb, var(--tcg-accent) 14%, var(--tcg-background))); } }
.hero .mud-typography { color: var(--tcg-text); }
.hero .hero-copy { color: var(--tcg-muted); }
.auth-submit { border-radius: 10px; font-weight: 650; text-transform: none; }
.hero-title { max-width: 720px; margin: 1rem 0; font-weight: 750; letter-spacing: -.04em; }
.hero-copy { max-width: 680px; margin-bottom: 2rem; color: var(--tcg-muted); }
.hero .mud-button-root + .mud-button-root { margin-left: .75rem; }
.metric-card { height: 100%; }
.login-form .login-field .mud-input-label {
    color: var(--tcg-muted);
    background-color: var(--tcg-surface);
    padding-inline: .3rem;
}
.login-form .login-field .mud-input-slot,
.login-form .login-field input {
    color: var(--tcg-text);
}
.login-form .login-field input:-webkit-autofill {
    -webkit-text-fill-color: var(--tcg-text);
    box-shadow: 0 0 0 1000px var(--tcg-surface) inset;
}
.narrow-content { max-width: 600px; margin: 0 auto; }
.account-page { --account-control-height: 40px; width: min(100%, 1230px); max-width: 100%; margin-inline: auto; color: var(--tcg-text); min-width: 0; box-sizing: border-box; }
.account-page *, .account-page *::before, .account-page *::after { box-sizing: border-box; min-width: 0; }
.account-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; color: var(--tcg-muted); font-size: .82rem; }
.account-breadcrumb a { color: var(--tcg-primary); font-weight: 650; text-decoration: none; }
.account-breadcrumb a:hover, .account-breadcrumb a:focus-visible { color: var(--tcg-primary-hover); text-decoration: underline; }
.account-surface { border: 1px solid var(--tcg-border); border-radius: 16px; background: var(--tcg-surface); color: var(--tcg-text); box-shadow: 0 8px 24px var(--tcg-shadow); }
.account-state { display: grid; gap: .8rem; padding: 1.25rem; }
.account-state-action { justify-self: start; }
.account-feedback { margin-bottom: 1rem; }
.account-hero { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 1.25rem; padding: 1.4rem 1.5rem; background: linear-gradient(135deg, var(--tcg-surface), var(--tcg-background)); }
@supports (background: color-mix(in srgb, white, black)) { .account-hero { background: linear-gradient(135deg, var(--tcg-surface), color-mix(in srgb, var(--tcg-primary) 10%, var(--tcg-background))); } }
.account-avatar-wrap { flex: 0 0 auto; }
.account-avatar { display: grid; place-items: center; width: 96px; height: 96px; border: 3px solid color-mix(in srgb, var(--tcg-primary) 72%, var(--tcg-border)); border-radius: 50%; color: var(--tcg-on-primary); background: linear-gradient(145deg, var(--tcg-primary-hover), var(--tcg-primary)); box-shadow: 0 8px 22px var(--tcg-shadow); font-size: 2.1rem; font-weight: 800; }
.account-avatar-fallback { user-select: none; }
.account-hero-identity { display: flex; flex-direction: column; gap: .35rem; min-width: 0; }
.account-eyebrow { align-self: flex-start; padding: .35rem .65rem; border: 1px solid var(--tcg-primary); border-radius: 999px; color: var(--tcg-primary); font-size: .68rem; font-weight: 800; letter-spacing: .04em; line-height: 1.2; }
.account-heading { margin: .25rem 0 0; color: var(--tcg-text); font-weight: 800; letter-spacing: -.035em; }
.account-email-line { display: flex; align-items: center; flex-wrap: wrap; gap: .45rem .75rem; margin: 0; color: var(--tcg-muted); font-size: .88rem; overflow-wrap: anywhere; }
.account-verified { display: inline-flex; align-items: center; gap: .25rem; color: var(--tcg-success); font-size: .72rem; font-weight: 750; }
.account-verified[data-confirmed="false"] { color: var(--tcg-warning); }
.account-hero-actions { display: flex; align-items: center; justify-content: flex-end; gap: .65rem; }
.account-primary-action { height: var(--account-control-height); min-height: var(--account-control-height); padding: .5rem 1rem; border-radius: 9px; font-weight: 750; white-space: nowrap; }
.account-content-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(300px, .8fr); align-items: start; gap: 1rem; margin-top: 1rem; }
.account-panel { min-width: 0; overflow: visible; }
.account-panel-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; padding: 1.1rem 1.2rem .95rem; border-bottom: 1px solid var(--tcg-border); }
.account-panel-heading > div { min-width: 0; }
.account-panel-heading .mud-typography-h5 { color: var(--tcg-text); font-weight: 750; }
.account-panel-heading .mud-secondary-text { margin-top: .25rem; color: var(--tcg-muted); font-size: .8rem; }
.account-panel-body { display: grid; gap: 1.1rem; padding: 1.2rem; }
.account-field { display: grid; gap: .4rem; min-width: 0; }
.account-field label, .account-field-label { color: var(--tcg-muted); font-size: .75rem; font-weight: 700; line-height: 1.2; }
.account-field input { width: 100%; height: var(--account-control-height); min-width: 0; padding: .5rem .7rem; border: 1px solid var(--tcg-border); border-radius: 9px; outline: 0; color: var(--tcg-text); background: var(--tcg-background); font: inherit; font-size: .9rem; line-height: 1.2; }
.account-field input:hover { border-color: var(--tcg-primary); }
.account-field input:focus-visible { border-color: var(--tcg-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--tcg-primary) 24%, transparent); }
.account-field-help { color: var(--tcg-muted); font-size: .72rem; line-height: 1.4; }
.account-readonly-value { display: flex; align-items: center; min-height: var(--account-control-height); padding: .5rem .7rem; border: 1px solid var(--tcg-border); border-radius: 9px; color: var(--tcg-muted); background: var(--tcg-surface-muted); font-size: .9rem; line-height: 1.2; overflow-wrap: anywhere; }
.account-status-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 1rem; border-top: 1px solid var(--tcg-border); }
.account-status-row > div { display: grid; gap: .25rem; min-width: 0; }
.account-status-row strong { font-size: .9rem; }
.account-status-row > div > span { color: var(--tcg-muted); font-size: .75rem; }
.account-status-chip { display: inline-flex; flex: 0 0 auto; align-items: center; gap: .35rem; padding: .3rem .55rem; border: 1px solid var(--tcg-border); border-radius: 999px; color: var(--tcg-muted); font-size: .72rem; font-weight: 750; white-space: nowrap; }
.account-status-chip > span { width: .45rem; height: .45rem; border-radius: 50%; background: currentColor; }
.account-status-chip.is-active { border-color: color-mix(in srgb, var(--tcg-success) 70%, var(--tcg-border)); color: var(--tcg-success); }
.account-status-chip.is-inactive { color: var(--tcg-warning); }
.account-side-sections { display: grid; gap: 1rem; min-width: 0; }
.account-method-list { display: grid; gap: 0; margin: 0; padding: .45rem 1.2rem .7rem; list-style: none; }
.account-method-list li { display: grid; grid-template-columns: 2rem minmax(0, 1fr); align-items: center; gap: .7rem; padding: .8rem 0; border-bottom: 1px solid var(--tcg-border); }
.account-method-list li:last-child { border-bottom: 0; }
.account-method-icon { display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 8px; color: var(--tcg-primary); background: var(--tcg-surface-muted); }
.account-method-list li > span:last-child { display: grid; gap: .2rem; min-width: 0; }
.account-method-list strong { color: var(--tcg-text); font-size: .85rem; }
.account-method-list small { color: var(--tcg-muted); font-size: .72rem; line-height: 1.35; }
.account-avatar-panel-body { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .8rem; padding: 1.1rem 1.2rem 1.2rem; }
.account-avatar-small { width: 54px; height: 54px; border-width: 2px; font-size: 1.2rem; }
.account-avatar-panel-body > div:last-child { display: grid; gap: .25rem; min-width: 0; }
.account-avatar-panel-body strong { font-size: .85rem; }
.account-avatar-panel-body span { color: var(--tcg-muted); font-size: .72rem; line-height: 1.4; }
@media (max-width: 960px) {
    .account-content-grid { grid-template-columns: minmax(0, 1fr); }
    .account-hero { grid-template-columns: auto minmax(0, 1fr); }
    .account-hero-actions { grid-column: 1 / -1; justify-content: flex-end; padding-top: .9rem; border-top: 1px solid var(--tcg-border); }
}
@media (max-width: 600px) {
    .account-page { width: 100%; }
    .account-breadcrumb { margin-bottom: .8rem; }
    .account-hero { grid-template-columns: minmax(0, 1fr); gap: .85rem; padding: 1.1rem; }
    .account-avatar-wrap { justify-self: start; }
    .account-hero-actions { grid-column: auto; justify-content: stretch; padding-top: 0; border-top: 0; }
    .account-hero-actions .account-primary-action { width: 100%; }
    .account-panel-heading, .account-panel-body { padding-inline: 1rem; }
    .account-status-row { align-items: flex-start; flex-direction: column; gap: .65rem; }
    .account-avatar-panel-body { padding-inline: 1rem; }
}
.admin-page { color: var(--tcg-text); min-width: 0; box-sizing: border-box; }
:root { --tcg-wide-content-max-width: 1440px; --tcg-wide-content-gutter: 32px; }
.page-content:has(.admin-wide-page) { width: min(1440px, calc(100vw - 32px)); max-width: min(1440px, calc(100vw - 32px)); margin-inline: auto; padding-inline: 0; box-sizing: border-box; }
.page-content:has(.admin-wide-page), .page-content:has(.home-page) { width: min(var(--tcg-wide-content-max-width), calc(100vw - var(--tcg-wide-content-gutter))); max-width: min(var(--tcg-wide-content-max-width), calc(100vw - var(--tcg-wide-content-gutter))); margin-inline: auto; padding-inline: 0; box-sizing: border-box; }
.admin-page.admin-wide-page { width: 100%; max-width: 100%; min-width: 0; margin-inline: auto; align-self: center; box-sizing: border-box; }
.admin-products-section, .admin-page.admin-wide-page .admin-screen { align-self: center; width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; }
.admin-breadcrumb { display: flex; align-items: center; gap: .5rem; margin-bottom: .9rem; color: var(--tcg-muted); font-size: .82rem; }
.admin-breadcrumb a { color: var(--tcg-primary); text-decoration: none; }
.admin-products-workspace-top { padding: 1.25rem; border-bottom: 1px solid var(--tcg-border); box-sizing: border-box; }
.admin-products-workspace-top .admin-workspace-header { display: grid; grid-template-columns: minmax(0, 1fr) auto; padding: 0; border-bottom: 0; }
.admin-workspace-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-bottom: 1rem; border-bottom: 1px solid var(--tcg-border); }
.admin-primary-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; padding: 1rem 0; border-bottom: 1px solid var(--tcg-border); }
.admin-products-workspace { box-sizing: border-box; }
.admin-products-workspace, .admin-products-workspace * { box-sizing: border-box; }
.admin-primary-actions .mud-button-root { height: var(--admin-control-height); min-height: var(--admin-control-height); white-space: nowrap; }
.admin-products-workspace-top .admin-primary-actions { display: grid; grid-template-columns: repeat(3, max-content); align-items: center; padding: 1rem 0 0; border-bottom: 0; }
.admin-product-filters { padding: 1rem 1.25rem .85rem; background: color-mix(in srgb, var(--tcg-background) 38%, transparent); border-bottom: 1px solid var(--tcg-border); min-width: 0; }
.admin-product-filter-row { display: grid; align-items: end; gap: .8rem; min-width: 0; }
.admin-product-filter-row-primary { grid-template-columns: minmax(280px, 380px) minmax(190px, 240px) minmax(190px, 240px); }
.admin-product-filter-row-secondary { grid-template-columns: minmax(190px, 240px) minmax(190px, 240px) auto; margin-top: .8rem; }
.admin-filter-field { display: flex; min-width: 0; flex-direction: column; gap: .35rem; }
.admin-filter-label { display: block; min-height: 1.1rem; color: var(--tcg-muted); font-size: .75rem; font-weight: 700; line-height: 1.2; }
.admin-filter-control, .admin-filter-control .mud-input-control { width: 100%; min-width: 0; margin: 0; }
.admin-filter-control .mud-input-root { height: var(--admin-control-height); min-height: var(--admin-control-height); }
.admin-filter-clear { display: flex; width: fit-content; min-width: 9rem; align-items: flex-end; justify-self: start; }
.admin-filter-clear .mud-button-root { width: fit-content; min-width: 9rem; height: var(--admin-control-height); min-height: var(--admin-control-height); white-space: nowrap; }
.admin-filter-summary { display: flex; flex-wrap: wrap; gap: .45rem; min-height: 1.75rem; padding-top: .7rem; }
.admin-catalog-visibility-panel { border: 1px solid var(--tcg-border); background: var(--tcg-surface); }
.admin-catalog-visibility-list { display: grid; gap: .55rem; padding-top: .8rem; }
.admin-catalog-visibility-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .7rem .8rem; border: 1px solid var(--tcg-border); border-radius: 9px; background: var(--tcg-raised); }
.admin-catalog-visibility-row.is-series { margin-left: 1.25rem; }
.admin-catalog-visibility-row > div { display: flex; min-width: 0; flex-direction: column; gap: .2rem; }
.admin-catalog-visibility-row .mud-button-root { flex: 0 0 auto; white-space: nowrap; }
.admin-list-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .8rem 0 .55rem; }
.admin-sort-control { display: flex; min-width: 12rem; align-items: flex-end; gap: .55rem; }
.admin-sort-control .admin-filter-label { flex: 0 0 auto; padding-bottom: .7rem; }
.admin-sort-control .admin-filter-control { min-width: 10rem; }
.admin-product-thumb { flex: 0 0 52px; width: 52px; height: 64px; object-fit: contain; object-position: center; border: 1px solid var(--tcg-border); border-radius: 8px; background: var(--tcg-surface-muted); }
.admin-product-thumb-fallback { display: grid; place-items: center; color: var(--tcg-muted); }
.admin-product-copy { display: flex; min-width: 0; flex-direction: column; gap: .2rem; }
.admin-product-copy a { display: -webkit-box; overflow: hidden; color: var(--tcg-primary); font-weight: 700; line-height: 1.3; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.admin-cell-caption { color: var(--tcg-muted); font-size: .78rem; }
.admin-offer-count { display: block; font-size: 1.1rem; }
.admin-product-responsive-label { display: none; }
.admin-row-link { align-self: center; white-space: nowrap; }
.admin-order-dialog-fields { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; margin-top: 1rem; }
.admin-hero { display: flex; justify-content: space-between; align-items: flex-start; gap: 2rem; padding: clamp(2rem, 5vw, 3.5rem); border: 1px solid var(--tcg-border); border-radius: 16px; background: linear-gradient(135deg, var(--tcg-surface), var(--tcg-background)); color: var(--tcg-text); }
.admin-lead { max-width: 720px; margin-top: .6rem; color: var(--tcg-muted); }
.admin-section, .admin-state-card { height: 100%; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); color: var(--tcg-text); }
.admin-section-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.admin-section-header > :first-child { min-width: 0; }
.admin-table-scroll { width: 100%; overflow-x: auto; overscroll-behavior-x: contain; border: 1px solid var(--tcg-border); border-radius: 10px; }
.admin-table-scroll .mud-table { min-width: 760px; }
.admin-table-scroll .mud-table-cell { vertical-align: top; max-width: 25rem; overflow-wrap: anywhere; }
.admin-table-scroll .mud-table-head .mud-table-cell { white-space: nowrap; }
.admin-product-grid-scroll { width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; overflow-y: visible; overscroll-behavior-x: contain; border: 1px solid var(--tcg-border); border-radius: 10px; }
.admin-product-grid { --admin-product-grid-columns: minmax(16rem, 1.7fr) minmax(12rem, 1.1fr) minmax(9rem, .85fr) minmax(6.5rem, .6fr) minmax(11rem, 1fr) minmax(4.5rem, .35fr); min-width: 64rem; }
.admin-product-grid-header, .admin-product-row { display: grid; grid-template-columns: var(--admin-product-grid-columns); align-items: center; column-gap: 1rem; }
.admin-product-grid-header { min-height: 2.6rem; padding: .65rem 1.1rem; border-bottom: 1px solid var(--tcg-border); background: var(--tcg-surface-muted); }
.admin-product-grid-header .admin-data-label { margin: 0; }
.admin-product-grid-actions-header { text-align: right; }
.admin-product-list { display: grid; width: 100%; max-width: 100%; min-width: 0; gap: 0; }
.admin-products-state { display: grid; min-height: 160px; align-content: center; gap: .9rem; margin-top: .8rem; padding: 2rem 1rem; border: 1px dashed var(--tcg-border); border-radius: 10px; background: color-mix(in srgb, var(--tcg-background) 35%, transparent); box-sizing: border-box; }
.admin-product-row { width: 100%; max-width: 100%; min-width: 0; padding: .85rem 1.1rem; border-bottom: 1px solid var(--tcg-border); background: var(--tcg-raised); color: var(--tcg-text); }
.admin-product-row:last-child { border-bottom: 0; }
.admin-product-row > * { min-width: 0; }
.admin-product-identity { display: flex; min-width: 0; align-items: center; gap: .8rem; }
.admin-product-id { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-product-taxonomy { display: flex; min-width: 0; flex-direction: column; gap: .2rem; }
.admin-product-taxonomy strong, .admin-product-taxonomy span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-product-row-actions { display: flex; width: 100%; max-width: 100%; min-width: 0; align-items: flex-start; justify-content: flex-end; gap: .5rem; overflow: visible; }
.admin-product-row-actions .admin-row-more-menu { display: block; width: var(--admin-control-height); min-width: var(--admin-control-height); max-width: var(--admin-control-height); height: var(--admin-control-height); flex: 0 0 var(--admin-control-height); }
.admin-product-row-actions .admin-row-more-menu .mud-icon-button { width: var(--admin-control-height); height: var(--admin-control-height); min-width: var(--admin-control-height); }
.admin-product-row:hover { background: var(--tcg-surface-muted); }
.admin-product-row:focus-within { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--tcg-primary) 22%, transparent); }
.admin-state-card .mud-card-content { min-height: 220px; }
.admin-actions { flex-wrap: wrap; }
.admin-filter-row input:focus-visible, .admin-filter-row select:focus-visible, .admin-activity-controls select:focus-visible, .admin-activity-controls input:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: 2px; }
.mobile-admin-section { padding-left: 2rem !important; }
.admin-diagnostics { color: var(--tcg-muted); font-size: .875rem; }
.admin-diagnostics summary { cursor: pointer; color: var(--tcg-primary); }
.compact-filter-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem .7rem; }
.admin-filter-row, .admin-activity-controls { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem .8rem; }
.compact-filter-field { min-width: 155px; }
.compact-filter-field .mud-input-control { margin-top: 0; margin-bottom: 0; }
.compact-filter-toolbar > .mud-button-root { min-height: 40px; }
.admin-row-actions { display: inline-flex; flex-wrap: wrap; align-items: center; gap: .35rem .55rem; max-width: 100%; }
.admin-row-actions .mud-button-root, .admin-row-actions .mud-icon-button, .admin-row-actions .mud-menu { flex: 0 0 auto; }
.admin-row-actions .mud-button-root { min-width: 8.5rem; }
.admin-row-actions .mud-icon-button { width: 36px; height: 36px; padding: 0; }
.admin-order-editor { min-width: 12rem; }
.admin-section .mud-table { background: var(--tcg-raised); }
.admin-section .mud-table th { font-size: .72rem; letter-spacing: .04em; text-transform: uppercase; color: var(--tcg-muted); }
.admin-section .mud-table tr { transition: background-color .16s ease; }
.admin-section .mud-table tbody tr:hover { background: var(--tcg-surface-muted); }
.catalogue-page .mud-grid-item { display: flex; }
.catalogue-page .catalogue-choice-card, .catalogue-page .catalogue-product-card { width: 100%; display: flex; flex-direction: column; }
.catalogue-page .catalogue-choice-card .mud-card-content, .catalogue-page .catalogue-product-card .mud-card-content { flex: 1; }
.catalogue-page .catalogue-choice-card .mud-card-actions, .catalogue-page .catalogue-product-card .mud-card-actions { min-height: 52px; align-items: center; }
.catalogue-product-media { min-height: 190px; }
.catalogue-detail-media { min-height: 420px; }
.catalogue-detail-art { margin: 0; }
.catalogue-detail-summary .mud-typography-h4 { overflow-wrap: anywhere; }
.catalogue-filter-panel { align-items: center; }
.catalogue-filter-panel .mud-input-control { flex: 1 1 20rem; }
.catalogue-page .mud-button-root { min-height: 40px; min-width: 9rem; padding: .55rem 1rem; border-radius: 9px; font-size: .82rem; font-weight: 650; }
.admin-page .mud-button-root { box-sizing: border-box; height: 38px; min-height: 38px; padding: .45rem .85rem; border-radius: 8px; font-size: .8rem; font-weight: 650; white-space: nowrap; }
.admin-page .mud-button-text { min-width: 0; }
.admin-page .mud-menu .mud-icon-button { width: 38px; height: 38px; padding: 0; border: 1px solid var(--tcg-border); border-radius: 8px; }
.admin-products-workspace .admin-primary-actions .mud-button-root,
.admin-products-workspace .admin-filter-control .mud-input,
.admin-products-workspace .admin-filter-control .mud-input-root,
.admin-products-workspace .admin-filter-control .mud-select,
.admin-products-workspace .admin-filter-control .mud-input-control-input-container,
.admin-products-workspace .admin-filter-clear .mud-button-root,
.admin-products-workspace .admin-product-row-actions .admin-row-more-menu,
.admin-products-workspace .admin-product-row-actions .admin-row-more-menu .mud-icon-button {
    height: var(--admin-control-height);
    min-height: var(--admin-control-height);
    box-sizing: border-box;
}
.admin-products-workspace .admin-product-row-actions .admin-row-more-menu {
    width: var(--admin-control-height);
    min-width: var(--admin-control-height);
    max-width: var(--admin-control-height);
    flex-basis: var(--admin-control-height);
}
.admin-products-workspace .admin-product-row-actions .admin-row-more-menu .mud-icon-button {
    width: var(--admin-control-height);
    min-width: var(--admin-control-height);
}
.mud-button-root:focus-visible, .mud-icon-button:focus-visible, .mud-menu:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: 2px; }
.admin-filter-row label, .admin-activity-controls label { color: var(--tcg-muted); font-weight: 650; }
.admin-filter-row input, .admin-filter-row select, .admin-activity-controls select { min-height: 38px; padding: .45rem .65rem; border: 1px solid var(--tcg-border); border-radius: 8px; background: var(--tcg-raised); color: var(--tcg-text); }
.admin-refresh-toggle { display: inline-flex; align-items: center; gap: .45rem; margin-left: auto; }
.admin-refresh-toggle input { accent-color: var(--tcg-primary); }
.admin-activity-refresh-meta { display: flex; flex-wrap: wrap; gap: .45rem 1rem; margin-top: .75rem; color: var(--tcg-muted); font-size: .8125rem; }
.admin-activity-refresh-meta span { display: inline-flex; align-items: center; min-height: 1.5rem; }
.admin-order-editor { display: grid; grid-template-columns: 5rem 5rem auto; align-items: center; gap: .35rem; }
.admin-order-editor input { width: 5rem; min-height: 32px; padding: .25rem .4rem; border: 1px solid var(--tcg-border); border-radius: 6px; background: var(--tcg-raised); color: var(--tcg-text); }
.access-denied-panel { max-width: 620px; margin: 3rem auto; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); color: var(--tcg-text); }
@media (max-width: 1100px) { .shell-nav { gap: .7rem; } .shell-search { min-width: 180px; } .summary-grid.six-columns { grid-template-columns: repeat(3, 1fr); } .quick-action-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .footer-grid { grid-template-columns: repeat(3, 1fr); } .dashboard-panels { grid-template-columns: 1fr 1fr; } .dashboard-panels .market-panel { grid-column: 1 / -1; } }
@media (max-width: 900px) { .desktop-nav { display: none; } .mobile-nav-menu { display: block; } .shell-header-inner { gap: .75rem; } .shell-search { min-width: 0; width: clamp(120px, 30vw, 220px); } }
@media (max-width: 600px) { .shell-header-inner { min-height: 62px; padding: 0 .8rem; } .shell-brand span { font-size: 1rem; } .shell-search { display: none; } .page-content { padding-top: 1.25rem; } .dashboard-hero, .admin-hero { flex-direction: column; padding: 1.5rem; } .hero-update { align-self: flex-start; } .summary-grid.six-columns, .summary-grid, .quick-action-grid { grid-template-columns: 1fr; } .dashboard-panels, .benefits-grid, .game-grid { grid-template-columns: 1fr; } .dashboard-panels .market-panel { grid-column: auto; } .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem 1rem; } .footer-brand { grid-column: 1 / -1; } .footer-bottom { flex-direction: column; } .live-feed-heading { align-items: flex-start; flex-direction: column; } }
@media (max-width: 600px) { .admin-filter-row, .admin-activity-controls { align-items: stretch; flex-direction: column; } .admin-filter-row label, .admin-activity-controls label, .admin-filter-row input, .admin-filter-row select, .admin-activity-controls select, .admin-activity-controls button { width: 100%; margin-left: 0; } .admin-navigation-links { flex-direction: column; } .admin-activity-refresh-meta { align-items: flex-start; flex-direction: column; gap: .15rem; } }
@media (max-width: 600px) { .compact-filter-field, .compact-filter-toolbar > .mud-button-root { width: 100%; min-width: 0; } .catalogue-product-art { height: 145px; } .catalogue-detail-art { height: 320px; } }
@media (max-width: 700px) { .catalogue-hero, .catalogue-detail-hero { grid-template-columns: 1fr; gap: 1rem; } .catalogue-hero-media img { height: 130px; } .catalogue-detail-art { margin-bottom: 0; } }
@media (max-width: 700px) { .admin-section-header { flex-direction: column; } .admin-row-actions { display: flex; } .admin-row-actions .mud-button-root { min-width: 0; } .catalogue-detail-media { min-height: 300px; } }
@media (max-width: 700px) { .admin-category-card { grid-template-columns: 1fr; } .admin-category-card-media { justify-items: start; } .admin-category-image, .admin-category-image-placeholder { width: 96px; height: 96px; } .admin-category-card-heading { align-items: flex-start; flex-direction: column; } .admin-category-series-row { align-items: stretch; flex-direction: column; } .admin-category-series-row .mud-button-root, .admin-category-card-actions .mud-button-root { width: 100%; } }
@media (max-width: 700px) { .admin-workspace-header, .admin-list-header { align-items: flex-start; flex-direction: column; } .admin-primary-actions > .mud-button-root { width: 100%; } .admin-order-dialog-fields { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .admin-products-section { width: min(100%, calc(100vw - 30px)); } .admin-products-workspace-top .admin-primary-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); } .admin-product-filter-row-primary, .admin-product-filter-row-secondary { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .admin-product-filter-row-primary .admin-filter-search, .admin-product-filter-row-secondary .admin-filter-clear { grid-column: 1 / -1; } }
@media (max-width: 700px) { .admin-products-workspace-top { padding: 1rem; } .admin-products-workspace-top .admin-primary-actions { grid-template-columns: 1fr; } .admin-product-filters { padding-inline: 1rem; } .admin-product-filter-row-primary, .admin-product-filter-row-secondary { grid-template-columns: minmax(0, 1fr); } .admin-product-filter-row-primary .admin-filter-search, .admin-product-filter-row-secondary .admin-filter-clear { grid-column: auto; } .admin-sort-control { width: 100%; min-width: 0; align-items: center; } .admin-sort-control .admin-filter-label { padding-bottom: 0; } .admin-sort-control .admin-filter-control { flex: 1 1 auto; min-width: 0; } }
@media (max-width: 700px) { .admin-product-responsive-label { display: block; margin-bottom: .25rem; } .admin-product-grid-header { position: sticky; left: 0; } }

/* Shared visual contract for the non-Products Admin workspaces. */
.admin-screen { width: min(100%, 1440px); max-width: calc(100vw - 32px); min-width: 0; margin-inline: auto; box-sizing: border-box; }
.admin-page.admin-wide-page, .admin-page.admin-wide-page *, .admin-screen, .admin-screen *, .admin-data-row, .admin-data-row * { box-sizing: border-box; }
.admin-page.admin-wide-page { --admin-control-height: 40px; }
.admin-page.admin-wide-page .mud-button-root, .admin-page.admin-wide-page .mud-icon-button { height: var(--admin-control-height); min-height: var(--admin-control-height); box-sizing: border-box; }
.admin-page.admin-wide-page .admin-filter-field { min-width: 0; gap: .35rem; }
.admin-page.admin-wide-page .admin-filter-label { min-height: 1.1rem; line-height: 1.2; }
.admin-page.admin-wide-page .admin-filter-control,
.admin-page.admin-wide-page .admin-filter-control .mud-input,
.admin-page.admin-wide-page .admin-filter-control .mud-input-root,
.admin-page.admin-wide-page .admin-filter-control .mud-select,
.admin-page.admin-wide-page .admin-filter-control .mud-input-control-input-container {
    height: var(--admin-control-height);
    min-height: var(--admin-control-height);
    box-sizing: border-box;
}
.admin-page.admin-wide-page .admin-filter-control .mud-input-slot { font-size: .8rem; line-height: 1.2; }
.admin-page.admin-wide-page .admin-filter-control .mud-input-adornment { align-self: center; }
.admin-screen-heading { margin-bottom: 1rem; }
.admin-screen-heading .mud-typography-h4 { margin-top: .25rem; margin-bottom: .35rem; }
.admin-screen-heading .mud-chip { flex: 0 0 auto; }
.admin-section-actions { padding-top: .85rem; padding-bottom: .85rem; }
.admin-section-actions .mud-button-root, .admin-toolbar-action { height: var(--admin-control-height); min-height: var(--admin-control-height); flex: 0 0 auto; white-space: nowrap; }
.admin-category-list { display: grid; gap: .8rem; width: 100%; max-width: 100%; min-width: 0; }
.admin-category-card { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 1rem; width: 100%; max-width: 100%; min-width: 0; padding: 1rem; border: 1px solid var(--tcg-border); border-radius: 12px; background: var(--tcg-raised); }
.admin-category-card-media { display: grid; min-width: 0; place-items: center; }
.admin-category-image, .admin-category-image-placeholder { width: 112px; height: 112px; max-width: 100%; object-fit: contain; border: 1px solid var(--tcg-border); border-radius: 10px; background: var(--tcg-surface-muted); }
.admin-category-image-placeholder { display: grid; place-items: center; color: var(--tcg-muted); }
.admin-category-image-placeholder .mud-icon-root { font-size: 2.4rem; }
.admin-category-card-content { display: grid; min-width: 0; gap: .75rem; }
.admin-category-card-heading { display: flex; min-width: 0; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.admin-category-card-heading > :first-child { min-width: 0; }
.admin-category-card-stats { display: flex; flex-wrap: wrap; gap: .45rem 1.2rem; color: var(--tcg-muted); font-size: .82rem; }
.admin-category-card-stats span { min-width: 0; }
.admin-category-series { display: grid; gap: .45rem; padding-top: .7rem; border-top: 1px solid var(--tcg-border); }
.admin-category-series-row { display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: .55rem .7rem; border: 1px solid var(--tcg-border); border-radius: 8px; background: var(--tcg-surface-muted); }
.admin-category-series-row > div { display: flex; min-width: 0; flex-direction: column; gap: .15rem; }
.admin-category-series-row span { color: var(--tcg-muted); font-size: .78rem; }
.admin-category-card-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.admin-category-card-actions .mud-button-root { flex: 0 1 auto; }
.admin-filter-toolbar { display: grid; align-items: end; gap: .8rem; width: 100%; max-width: 100%; min-width: 0; padding: 1rem 0 .85rem; border-top: 1px solid var(--tcg-border); border-bottom: 1px solid var(--tcg-border); }
.admin-filter-toolbar .admin-filter-field { min-width: 0; }
.admin-filter-toolbar .admin-filter-control, .admin-filter-toolbar .admin-filter-control .mud-input-control { width: 100%; max-width: 100%; min-width: 0; }
.admin-filter-toolbar .admin-filter-control .mud-input-root { height: var(--admin-control-height); min-height: var(--admin-control-height); }
.admin-filter-toolbar .admin-filter-label { min-height: 1.1rem; }
.admin-store-filters { grid-template-columns: minmax(280px, 380px) repeat(3, minmax(190px, 240px)) max-content; }
.admin-review-filters { grid-template-columns: repeat(4, minmax(190px, 240px)) minmax(280px, 380px); }
.admin-activity-controls { grid-template-columns: repeat(3, minmax(190px, 240px)) minmax(190px, 240px) minmax(190px, 240px) max-content; padding-top: .9rem; }
.admin-filter-check { display: flex; min-width: 0; min-height: var(--admin-control-height); align-items: center; }
.admin-filter-check .mud-checkbox { margin: 0; }
.admin-filter-toolbar > .admin-filter-clear { width: fit-content; min-width: 9rem; height: var(--admin-control-height); min-height: var(--admin-control-height); justify-self: start; white-space: nowrap; }
.admin-filter-toolbar > .mud-button-root { width: fit-content; min-width: 9rem; height: var(--admin-control-height); min-height: var(--admin-control-height); justify-self: start; white-space: nowrap; }
.admin-list-summary { display: block; margin-top: .75rem; }
.admin-data-list { display: grid; width: 100%; max-width: 100%; min-width: 0; gap: .7rem; margin-top: .75rem; }
.admin-data-row { display: grid; align-items: start; width: 100%; max-width: 100%; min-width: 0; gap: .85rem 1rem; padding: 1rem 1.1rem; border: 1px solid var(--tcg-border); border-radius: 12px; background: var(--tcg-raised); color: var(--tcg-text); }
.admin-store-row { grid-template-columns: minmax(0, 1.25fr) minmax(7rem, .8fr) minmax(8.5rem, .9fr) minmax(8.5rem, .85fr) minmax(8.5rem, .85fr) minmax(9rem, 1fr) minmax(10.5rem, 1.05fr); }
.admin-discovery-profile-row { grid-template-columns: minmax(0, 1.2fr) minmax(8rem, .8fr) minmax(9rem, .9fr) minmax(9rem, .95fr) minmax(10rem, 1.2fr) minmax(12rem, 1fr); }
.admin-discovery-candidate-row { grid-template-columns: minmax(0, 1.35fr) minmax(8rem, .85fr) minmax(8rem, 1fr) minmax(7rem, .8fr) minmax(9rem, 1fr); }
.admin-review-row { grid-template-columns: minmax(0, 1.35fr) minmax(8rem, 1fr) minmax(8rem, .9fr) minmax(10rem, 1.1fr) minmax(8rem, .95fr) minmax(9rem, 1fr) minmax(12rem, 1fr); }
.admin-activity-row { grid-template-columns: minmax(0, 1.4fr) minmax(10rem, 1.1fr) minmax(9rem, .85fr) minmax(11rem, 1.1fr) minmax(10rem, 1fr); }
.admin-data-row > * { min-width: 0; }
.admin-data-primary, .admin-data-field { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: .2rem; }
.admin-data-primary { gap: .25rem; }
.admin-data-label { display: block; color: var(--tcg-muted); font-size: .68rem; font-weight: 750; letter-spacing: .04em; line-height: 1.2; text-transform: uppercase; }
.admin-data-title { display: -webkit-box; max-width: 100%; overflow: hidden; color: var(--tcg-primary); font-weight: 750; line-height: 1.35; overflow-wrap: anywhere; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.admin-data-value { max-width: 100%; overflow-wrap: anywhere; line-height: 1.35; }
.admin-data-secondary { max-width: 100%; color: var(--tcg-muted); font-size: .78rem; line-height: 1.35; overflow-wrap: anywhere; }
.admin-data-counts strong { font-size: 1.05rem; }
.admin-data-actions { display: flex; min-width: 0; max-width: 100%; align-items: flex-start; justify-content: flex-start; gap: .5rem; flex-wrap: wrap; overflow: visible; }
.admin-data-actions .mud-button-root { height: var(--admin-control-height); min-height: var(--admin-control-height); min-width: 9rem; max-width: 100%; flex: 0 0 auto; white-space: nowrap; }
.admin-data-actions .admin-row-secondary-action { min-width: 8.5rem; }
.admin-data-actions .mud-menu { width: var(--admin-control-height); min-width: var(--admin-control-height); max-width: var(--admin-control-height); height: var(--admin-control-height); flex: 0 0 var(--admin-control-height); }
.admin-data-actions .mud-menu .mud-icon-button { width: var(--admin-control-height); min-width: var(--admin-control-height); height: var(--admin-control-height); padding: 0; }
.admin-data-field .mud-chip, .admin-status-chip { width: max-content; max-width: 100%; white-space: nowrap; }
.admin-data-field .mud-chip-content, .admin-status-chip .mud-chip-content { white-space: nowrap; }
.admin-data-source .admin-external-link { max-width: 100%; overflow-wrap: anywhere; }
.admin-external-link, .catalogue-external-link { color: var(--tcg-primary); font-weight: 650; text-decoration: none; }
.admin-external-link:hover, .admin-external-link:focus-visible, .catalogue-external-link:hover, .catalogue-external-link:focus-visible { text-decoration: underline; }
.admin-canonical-picker { min-width: 0; }
.admin-canonical-picker-option { display: flex; min-width: 0; flex-direction: column; gap: .15rem; padding: .15rem 0; }
.admin-canonical-picker-option .mud-typography { max-width: 100%; overflow-wrap: anywhere; }
.admin-row-diagnostics { grid-column: 1 / -1; width: 100%; min-width: 0; margin-top: .25rem; padding-top: .65rem; border-top: 1px solid var(--tcg-border); }
.admin-data-row:hover { border-color: color-mix(in srgb, var(--tcg-primary) 42%, var(--tcg-border)); }
.admin-data-row:focus-within { border-color: var(--tcg-primary); box-shadow: 0 0 0 2px color-mix(in srgb, var(--tcg-primary) 22%, transparent); }
.admin-data-row .mud-button-root:disabled { opacity: .62; }
.admin-data-row .mud-button-root, .admin-data-row .mud-menu { flex-shrink: 0; }
.admin-discovery-profile-list, .admin-discovery-candidate-list, .admin-review-list, .admin-activity-list, .admin-store-list { margin-top: 1rem; }
.admin-discovery-profile-row .admin-data-actions { align-self: start; }
.admin-discovery-profile-row .admin-data-diagnostic { min-width: 0; }

@media (max-width: 1180px) {
    .admin-store-row, .admin-discovery-profile-row, .admin-review-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-data-row .admin-data-primary { grid-column: 1 / -1; }
    .admin-data-row .admin-data-actions { grid-column: 1 / -1; justify-content: flex-start; padding-top: .75rem; border-top: 1px solid var(--tcg-border); }
    .admin-data-row .admin-row-diagnostics { grid-column: 1 / -1; }
    .admin-store-filters { grid-template-columns: minmax(230px, 1.6fr) repeat(3, minmax(150px, 1fr)); }
    .admin-store-filters > .admin-filter-clear { grid-column: 1 / -1; }
    .admin-review-filters, .admin-activity-controls { grid-template-columns: repeat(2, minmax(190px, 1fr)); }
    .admin-review-filters .admin-filter-search, .admin-activity-controls .admin-toolbar-action { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
    .admin-screen { max-width: calc(100vw - 24px); }
    .admin-filter-toolbar, .admin-store-filters, .admin-review-filters, .admin-activity-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-filter-toolbar .admin-filter-search, .admin-store-filters .admin-filter-search { grid-column: 1 / -1; }
    .admin-activity-controls .admin-toolbar-action { justify-self: start; }
    .admin-store-filters > .admin-filter-clear { grid-column: auto; }
    .admin-discovery-candidate-row, .admin-activity-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-discovery-candidate-row .admin-data-primary, .admin-activity-row .admin-data-primary { grid-column: 1 / -1; }
}
@media (max-width: 600px) {
    .admin-screen { max-width: calc(100vw - 20px); }
    .admin-filter-toolbar, .admin-store-filters, .admin-review-filters, .admin-activity-controls { grid-template-columns: minmax(0, 1fr); }
    .admin-filter-toolbar .admin-filter-search, .admin-store-filters .admin-filter-search, .admin-filter-toolbar .admin-filter-clear, .admin-store-filters > .admin-filter-clear { grid-column: auto; }
    .admin-filter-toolbar > .mud-button-root, .admin-filter-toolbar > .admin-filter-clear, .admin-toolbar-action { width: fit-content; justify-self: start; }
    .admin-filter-check { min-height: auto; }
    .admin-data-row, .admin-store-row, .admin-discovery-profile-row, .admin-discovery-candidate-row, .admin-review-row, .admin-activity-row { grid-template-columns: minmax(0, 1fr); gap: .75rem; padding: .9rem; }
    .admin-data-row .admin-data-primary, .admin-data-row .admin-data-actions, .admin-data-row .admin-row-diagnostics { grid-column: auto; }
    .admin-data-row .admin-data-actions { align-items: stretch; flex-wrap: wrap; justify-content: flex-start; }
    .admin-data-actions .mud-button-root { flex: 1 1 auto; min-width: 9rem; }
    .admin-row-diagnostics { margin-top: 0; }
}

/* Public dashboard and Live Feed composition. These classes reuse the
   existing application tokens and keep the concept hierarchy independent
   from the Admin workspace contract. */
.home-page, .dashboard-page, .live-feed-page { width: min(100%, 1180px); max-width: 100%; min-width: 0; margin-inline: auto; box-sizing: border-box; }
.home-page { width: 100%; }
.home-page { display: grid; gap: 3rem; }
.home-hero-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(260px, .9fr); gap: 2rem; align-items: center; }
.home-hero-copy { min-width: 0; }
.home-hero-copy .mud-typography-overline { letter-spacing: .08em; }
.home-hero-actions, .dashboard-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; margin-top: 1.5rem; }
.home-hero-actions .mud-button-root, .dashboard-hero-actions .mud-button-root { margin: 0; min-height: 40px; }
.home-radar-stage { position: relative; display: grid; place-items: center; min-width: 0; min-height: 320px; }
.home-radar-visual { position: relative; display: grid; place-items: center; width: min(100%, 300px); min-height: 280px; aspect-ratio: 1; margin-inline: auto; border: 1px solid color-mix(in srgb, var(--tcg-primary) 30%, transparent); border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--tcg-primary) 12%, transparent), transparent 65%); box-shadow: 0 0 45px color-mix(in srgb, var(--tcg-primary) 12%, transparent); }
.home-radar-ring { position: absolute; border: 1px solid color-mix(in srgb, var(--tcg-primary) 38%, transparent); border-radius: 50%; }
.home-radar-ring-one { width: 33%; height: 33%; }
.home-radar-ring-two { width: 62%; height: 62%; }
.home-radar-ring-three { width: 88%; height: 88%; }
.home-radar-visual::before, .home-radar-visual::after { content: ""; position: absolute; background: color-mix(in srgb, var(--tcg-primary) 25%, transparent); }
.home-radar-visual::before { width: 1px; height: 100%; }
.home-radar-visual::after { width: 100%; height: 1px; }
.home-radar-sweep { position: absolute; width: 43%; height: 2px; transform: rotate(-35deg); transform-origin: left center; background: linear-gradient(90deg, var(--tcg-primary), transparent); }
.home-radar-dot { position: absolute; width: 11px; height: 11px; border-radius: 50%; background: var(--tcg-success); box-shadow: 0 0 0 5px color-mix(in srgb, var(--tcg-success) 16%, transparent), 0 0 22px var(--tcg-success); }
.home-radar-dot-one { top: 24%; left: 35%; }
.home-radar-dot-two { top: 39%; left: 67%; background: var(--tcg-primary); box-shadow: 0 0 0 5px color-mix(in srgb, var(--tcg-primary) 16%, transparent), 0 0 22px var(--tcg-primary); }
.home-radar-dot-three { top: 68%; left: 27%; background: var(--tcg-accent); box-shadow: 0 0 0 5px color-mix(in srgb, var(--tcg-accent) 16%, transparent), 0 0 22px var(--tcg-accent); }
.home-radar-callout { position: absolute; display: flex; align-items: center; gap: .55rem; width: 170px; min-width: 0; padding: .65rem .75rem; border: 1px solid color-mix(in srgb, var(--tcg-primary) 30%, var(--tcg-border)); border-radius: 10px; background: color-mix(in srgb, var(--tcg-background) 72%, var(--tcg-surface)); box-shadow: 0 10px 24px var(--tcg-shadow); }
.home-radar-callout-price { top: 7%; right: 0; }
.home-radar-callout-stock { bottom: 7%; left: 0; }
.home-radar-callout-icon { display: grid; place-items: center; width: 1.8rem; height: 1.8rem; flex: 0 0 1.8rem; border-radius: 7px; color: var(--tcg-success); background: color-mix(in srgb, var(--tcg-success) 14%, transparent); }
.home-radar-callout-stock .home-radar-callout-icon { color: var(--tcg-accent); background: color-mix(in srgb, var(--tcg-accent) 14%, transparent); }
.home-radar-callout strong, .home-radar-callout small { display: block; min-width: 0; overflow-wrap: anywhere; }
.home-radar-callout strong { color: var(--tcg-text); font-size: .78rem; line-height: 1.2; }
.home-radar-callout small { margin-top: .2rem; color: var(--tcg-muted); font-size: .65rem; line-height: 1.25; }
.home-section { display: grid; gap: 1.2rem; }
.home-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1.5rem; }
.home-section-heading .mud-typography-h4 { margin-top: .3rem; margin-bottom: .35rem; }
.home-section-heading-inline { align-items: center; }
.home-section-link, .dashboard-feed-heading-link { flex: 0 0 auto; color: var(--tcg-primary); font-weight: 700; text-decoration: none; }
.home-section-link:hover, .home-section-link:focus-visible, .dashboard-feed-heading-link:hover, .dashboard-feed-heading-link:focus-visible { color: var(--tcg-primary-hover); text-decoration: underline; }
.home-stats-section { min-width: 0; }
.home-stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; }
.home-stat-card { display: flex; min-width: 0; min-height: 116px; flex-direction: column; padding: 1.1rem 1.2rem; border: 1px solid var(--tcg-border); border-radius: 13px; background: var(--tcg-surface); box-shadow: 0 5px 18px var(--tcg-shadow); }
.home-stat-label { color: var(--tcg-muted); font-size: .75rem; line-height: 1.3; }
.home-stat-value { margin-top: .35rem; color: var(--tcg-text); font-size: 1.55rem; font-weight: 800; letter-spacing: -.03em; line-height: 1.15; }
.home-stat-note { margin-top: auto; padding-top: .5rem; color: var(--tcg-success); font-size: .7rem; line-height: 1.25; }
.home-stat-card.is-stale .home-stat-note { color: var(--tcg-warning); }
.home-stats-state { min-height: 116px; }
.home-how-it-works-grid, .home-game-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.home-how-it-works-card, .home-game-card { min-width: 0; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); color: var(--tcg-text); box-shadow: 0 5px 18px var(--tcg-shadow); }
.home-how-it-works-card { display: flex; min-height: 170px; flex-direction: column; gap: .65rem; padding: 1.3rem; }
.home-how-it-works-card-variant-primary { background: linear-gradient(145deg, color-mix(in srgb, var(--tcg-primary) 28%, var(--tcg-surface)), var(--tcg-surface)); }
.home-how-it-works-card-variant-teal { background: linear-gradient(145deg, color-mix(in srgb, var(--tcg-success) 27%, var(--tcg-surface)), var(--tcg-surface)); }
.home-how-it-works-card-variant-neutral { background: linear-gradient(145deg, var(--tcg-surface-muted), var(--tcg-surface)); }
.home-how-it-works-number { color: var(--tcg-primary); font-size: .8rem; font-weight: 800; letter-spacing: .04em; }
.home-how-it-works-card .mud-typography-h6 { margin-top: .35rem; }
.home-how-it-works-link, .home-how-it-works-link:link, .home-how-it-works-link:visited, .home-how-it-works-link:hover, .home-how-it-works-link:active, .home-how-it-works-link:focus, .home-how-it-works-link:focus-visible { color: #fff; font-size: .95rem; font-weight: 750; line-height: 1.35; text-decoration: none; }
.home-how-it-works-link:hover, .home-how-it-works-link:focus-visible { border-color: var(--tcg-primary); background: var(--tcg-surface-muted); }
.home-how-it-works-link:focus-visible { outline: 3px solid var(--tcg-primary-hover); outline-offset: 3px; }
.home-game-card { display: flex; min-height: 172px; flex-direction: column; overflow: visible; background: linear-gradient(145deg, var(--tcg-surface-muted), var(--tcg-surface)); }
.home-game-card-variant-pokemon { background: linear-gradient(145deg, color-mix(in srgb, var(--tcg-primary) 25%, var(--tcg-surface)), var(--tcg-surface)); }
.home-game-card-variant-lorcana { background: linear-gradient(145deg, color-mix(in srgb, var(--tcg-success) 30%, var(--tcg-surface)), var(--tcg-surface)); }
.home-game-card-variant-neutral { background: linear-gradient(145deg, var(--tcg-surface-muted), var(--tcg-surface)); }
.home-game-card-variant-future { background: linear-gradient(145deg, var(--tcg-surface), var(--tcg-surface-muted)); }
.home-game-card-body { display: flex; flex: 1 1 auto; flex-direction: column; gap: .55rem; min-width: 0; min-height: 172px; padding: 1.3rem; }
.home-game-name { color: var(--tcg-text); font-size: 1.15rem; font-weight: 750; line-height: 1.25; }
.home-game-name:hover, .home-game-name:focus-visible { color: var(--tcg-primary); }
.home-game-meta { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .7rem 1rem; margin-top: auto; padding-top: .8rem; border-top: 1px solid color-mix(in srgb, var(--tcg-border) 78%, transparent); color: var(--tcg-muted); font-size: .8rem; }
.home-game-card-link { flex: 0 0 auto; color: var(--tcg-primary); font-size: .8rem; font-weight: 750; text-decoration: none; }
.home-game-card-link:hover, .home-game-card-link:focus-visible { color: var(--tcg-primary-hover); text-decoration: underline; }
.home-game-card-future { background: linear-gradient(145deg, var(--tcg-surface), var(--tcg-surface-muted)); }
.home-game-card-future .home-game-name { color: var(--tcg-text); }
.home-game-card-future .home-game-meta strong { color: var(--tcg-primary); font-weight: 750; }
.home-data-state { display: grid; gap: .8rem; min-height: 120px; align-content: center; padding: 1.25rem; border: 1px solid var(--tcg-border); border-radius: 14px; background: var(--tcg-surface); }
.home-data-state .mud-button-root { justify-self: start; }
.dashboard-page { display: grid; gap: 2rem; }
.dashboard-hero { align-items: center; }
.dashboard-hero-copy { min-width: 0; }
.dashboard-hero-status { display: grid; min-width: 220px; max-width: 260px; gap: .5rem; align-content: center; padding: 1rem; border: 1px solid var(--tcg-border); border-radius: 12px; background: color-mix(in srgb, var(--tcg-surface) 72%, transparent); }
.dashboard-status-icon { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; border-radius: 10px; color: var(--tcg-primary); background: var(--tcg-surface-muted); }
.dashboard-feed-panel { min-width: 0; padding: 1.35rem; border: 1px solid var(--tcg-border); border-radius: 16px; background: var(--tcg-surface); color: var(--tcg-text); box-shadow: 0 10px 28px var(--tcg-shadow); }
.dashboard-feed-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1.25rem; margin-bottom: 1rem; }
.dashboard-feed-heading .mud-typography-h5 { margin-top: .25rem; margin-bottom: .3rem; }
.dashboard-feed-footer, .live-feed-footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-top: 1rem; color: var(--tcg-muted); font-size: .78rem; }
.dashboard-feed-footer strong, .live-feed-footer strong { color: var(--tcg-text); }
.dashboard-feed-footer a, .live-feed-footer a { flex: 0 0 auto; color: var(--tcg-primary); font-weight: 700; }
.live-feed-page { display: grid; gap: 1.25rem; }
.public-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; color: var(--tcg-muted); font-size: .8rem; }
.public-breadcrumb a { color: var(--tcg-primary); text-decoration: none; }
.public-breadcrumb a:hover, .public-breadcrumb a:focus-visible { text-decoration: underline; }
.public-page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 1.25rem; padding-bottom: .35rem; }
.public-page-heading .mud-typography-h3 { margin-top: .3rem; margin-bottom: .35rem; }
.live-feed-state-badge { display: inline-flex; flex: 0 0 auto; align-items: center; gap: .5rem; padding: .6rem .8rem; border: 1px solid color-mix(in srgb, var(--tcg-success) 38%, var(--tcg-border)); border-radius: 9px; color: var(--tcg-success); background: color-mix(in srgb, var(--tcg-success) 8%, transparent); font-size: .78rem; font-weight: 700; white-space: nowrap; }
.live-feed-state-badge.is-stale, .live-feed-freshness.is-stale { border-color: color-mix(in srgb, var(--tcg-warning) 45%, var(--tcg-border)); color: var(--tcg-warning); background: color-mix(in srgb, var(--tcg-warning) 8%, transparent); }
.live-feed-state-dot { display: inline-block; width: .5rem; height: .5rem; flex: 0 0 .5rem; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px color-mix(in srgb, currentColor 14%, transparent); }
.live-feed-shell { min-width: 0; border: 1px solid var(--tcg-border); border-radius: 16px; background: var(--tcg-surface); color: var(--tcg-text); box-shadow: 0 10px 28px var(--tcg-shadow); }
.live-feed-toolbar { display: grid; gap: .9rem; padding: 1.1rem 1.25rem; border-bottom: 1px solid var(--tcg-border); background: color-mix(in srgb, var(--tcg-background) 35%, transparent); }
.live-feed-toolbar-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.live-feed-toolbar-heading .mud-typography-h6 { margin-bottom: .15rem; }
.live-feed-toolbar-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .5rem; }
.live-feed-toolbar-actions .mud-button-root { min-height: 38px; }
.live-feed-refresh-note { display: flex; flex-wrap: wrap; gap: .4rem 1rem; color: var(--tcg-muted); font-size: .75rem; }
.live-feed-refresh-note strong { color: var(--tcg-text); }
.live-feed-meta { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .75rem 1.25rem; border-bottom: 1px solid var(--tcg-border); color: var(--tcg-muted); font-size: .75rem; }
.live-feed-meta strong { color: var(--tcg-text); }
.live-feed-freshness { display: inline-flex; align-items: center; gap: .5rem; color: var(--tcg-success); }
.live-feed-content { padding: .75rem 1.25rem .35rem; }
.live-feed-list { display: grid; min-width: 0; }
.live-feed-entry { display: grid; grid-template-columns: 60px 38px minmax(0, 1fr) max-content; gap: .8rem; align-items: center; min-width: 0; padding: .9rem .25rem; border-bottom: 1px solid var(--tcg-border); }
.live-feed-entry:last-child { border-bottom: 0; }
.live-feed-entry:hover { background: color-mix(in srgb, var(--tcg-primary) 4%, transparent); }
.live-feed-product-media { display: grid; place-items: center; width: 60px; height: 76px; min-width: 0; overflow: hidden; border: 1px solid var(--tcg-border); border-radius: 9px; background: var(--tcg-surface-muted); }
.live-feed-product-media img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; padding: .25rem; }
.live-feed-media-fallback { display: grid; place-items: center; gap: .15rem; width: 100%; height: 100%; color: var(--tcg-primary); background: linear-gradient(145deg, var(--tcg-surface-muted), var(--tcg-raised)); font-size: .55rem; font-weight: 800; letter-spacing: .08em; }
.live-feed-media-fallback .mud-icon-root { font-size: 1.5rem; }
.live-feed-change-icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 9px; }
.live-feed-change-icon.is-down { color: var(--tcg-success); background: color-mix(in srgb, var(--tcg-success) 16%, transparent); }
.live-feed-change-icon.is-up { color: var(--tcg-warning); background: color-mix(in srgb, var(--tcg-warning) 16%, transparent); }
.live-feed-change-icon.is-stock { color: var(--tcg-primary); background: color-mix(in srgb, var(--tcg-primary) 14%, transparent); }
.live-feed-change-icon.is-out { color: var(--tcg-error); background: color-mix(in srgb, var(--tcg-error) 14%, transparent); }
.live-feed-change-icon.is-neutral { color: var(--tcg-muted); background: var(--tcg-surface-muted); }
.live-feed-entry-body, .live-feed-context, .live-feed-change-values { min-width: 0; }
.live-feed-entry-body { display: grid; gap: .3rem; }
.live-feed-event-line { display: flex; align-items: center; gap: .6rem; min-width: 0; }
.live-feed-event-type { overflow-wrap: anywhere; font-size: .72rem; font-weight: 750; }
.live-feed-event-type.is-down { color: var(--tcg-success); }
.live-feed-event-type.is-up { color: var(--tcg-warning); }
.live-feed-event-type.is-stock { color: var(--tcg-primary); }
.live-feed-event-type.is-out { color: var(--tcg-error); }
.live-feed-event-line time { margin-left: auto; color: var(--tcg-muted); font-size: .7rem; white-space: nowrap; }
.live-feed-product-name { display: block; min-width: 0; overflow-wrap: anywhere; color: var(--tcg-text); font-size: .95rem; font-weight: 750; line-height: 1.3; }
.live-feed-product-name:hover, .live-feed-product-name:focus-visible { color: var(--tcg-primary); }
.live-feed-context { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; color: var(--tcg-muted); font-size: .74rem; line-height: 1.35; }
.live-feed-store { color: var(--tcg-text); font-weight: 650; }
.live-feed-canonical-id { overflow-wrap: anywhere; color: var(--tcg-muted); }
.live-feed-change-values { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; margin-top: .25rem; color: var(--tcg-muted); font-size: .75rem; }
.live-feed-change-values strong { color: var(--tcg-text); }
.live-feed-availability { padding-left: .35rem; border-left: 1px solid var(--tcg-border); }
.live-feed-entry-actions { display: flex; min-width: 0; max-width: 100%; align-items: center; justify-content: flex-end; }
.live-feed-offer-link { display: inline-flex; min-height: 34px; align-items: center; gap: .25rem; max-width: 100%; padding: .35rem .6rem; border: 1px solid var(--tcg-border); border-radius: 8px; color: var(--tcg-primary); font-size: .72rem; font-weight: 700; line-height: 1.2; text-align: center; text-decoration: none; }
.live-feed-offer-link:hover, .live-feed-offer-link:focus-visible { background: var(--tcg-surface-muted); text-decoration: underline; }
.live-feed-offer-unavailable { color: var(--tcg-muted); font-size: .72rem; text-align: right; }
.live-feed-state-card { display: grid; gap: .75rem; min-width: 0; padding: 1.25rem; }
.live-feed-state-card .mud-button-root { justify-self: start; }
.live-feed-loading { min-height: 150px; align-content: center; color: var(--tcg-muted); }
.live-feed-preview-list .live-feed-entry { padding-inline: 0; }
.live-feed-preview-list .live-feed-entry:nth-child(n+4) { display: none; }
.home-feed-preview-panel .live-feed-entry { grid-template-columns: 52px 34px minmax(0, 1fr) max-content; padding-block: .72rem; }
.home-feed-preview-panel .live-feed-product-media { width: 52px; height: 66px; }
.home-feed-preview-panel .live-feed-product-name { font-size: .88rem; }
.home-feed-preview-panel .live-feed-context { font-size: .7rem; }
.live-feed-compact-summary { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem; color: var(--tcg-primary); font-size: .75rem; }
.live-feed-compact-summary .live-feed-availability { padding-left: .55rem; border-left: 1px solid var(--tcg-border); color: var(--tcg-muted); }

@media (max-width: 900px) {
    .home-hero-layout { grid-template-columns: minmax(0, 1fr) minmax(200px, .7fr); }
    .home-radar-visual { min-height: 220px; }
    .home-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .live-feed-entry { grid-template-columns: 60px 34px minmax(0, 1fr); }
    .live-feed-entry-actions { grid-column: 3; justify-content: flex-start; padding-top: .25rem; }
    .live-feed-offer-unavailable { text-align: left; }
}
@media (max-width: 700px) {
    .home-hero-layout, .dashboard-hero { grid-template-columns: 1fr; }
    .home-radar-stage { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; min-height: 0; place-items: stretch; }
    .home-radar-visual { width: min(100%, 260px); min-height: 220px; }
    .home-radar-visual { grid-column: 1 / -1; grid-row: 1; }
    .home-radar-callout { position: static; width: auto; }
    .home-radar-callout-price { grid-column: 1; grid-row: 2; }
    .home-radar-callout-stock { grid-column: 2; grid-row: 2; }
    .home-section-heading, .home-section-heading-inline, .dashboard-feed-heading, .public-page-heading, .live-feed-toolbar-heading { align-items: flex-start; flex-direction: column; }
    .home-section-link, .dashboard-feed-heading-link { align-self: flex-start; }
    .home-how-it-works-grid, .home-game-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dashboard-hero-status { width: 100%; max-width: none; }
    .live-feed-state-badge { white-space: normal; }
    .live-feed-toolbar-actions { justify-content: flex-start; }
    .live-feed-meta { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 520px) {
    .home-how-it-works-grid, .home-game-grid { grid-template-columns: minmax(0, 1fr); }
    .home-stats-grid { grid-template-columns: minmax(0, 1fr); }
    .home-radar-stage { grid-template-columns: minmax(0, 1fr); }
    .home-radar-callout-price { grid-column: 1; grid-row: 2; }
    .home-radar-callout-stock { grid-column: 1; grid-row: 3; }
    .home-hero-actions { align-items: stretch; flex-direction: column; }
    .home-hero-actions .mud-button-root, .dashboard-hero-actions .mud-button-root, .live-feed-toolbar-actions .mud-button-root { width: 100%; }
    .dashboard-hero-actions { align-items: stretch; flex-direction: column; }
    .live-feed-content { padding-inline: .8rem; }
    .live-feed-entry { grid-template-columns: minmax(0, 1fr); gap: .55rem; padding-block: .85rem; }
    .live-feed-product-media { width: 62px; height: 76px; }
    .live-feed-change-icon { width: 32px; height: 32px; }
    .live-feed-entry-actions { grid-column: auto; justify-content: flex-start; padding-top: .2rem; }
    .live-feed-event-line { align-items: flex-start; flex-wrap: wrap; }
    .live-feed-event-line time { width: 100%; margin-left: 0; }
    .live-feed-availability { width: 100%; padding-top: .25rem; padding-left: 0; border-top: 1px solid var(--tcg-border); border-left: 0; }
    .live-feed-footer, .dashboard-feed-footer { align-items: flex-start; flex-direction: column; }
}

/* Dashboard and Live Feed use the compact footer treatment from their
   concepts. Admin and catalogue pages retain the full shell navigation. */
.page-content:has(.home-page), .page-content:has(.dashboard-page), .page-content:has(.live-feed-page) { min-height: 0; padding-bottom: 2rem; }
.page-content:has(.home-page) ~ .shell-support-links, .page-content:has(.dashboard-page) ~ .shell-support-links, .page-content:has(.live-feed-page) ~ .shell-support-links { display: none; }
.page-content:has(.home-page) ~ .shell-footer, .page-content:has(.dashboard-page) ~ .shell-footer, .page-content:has(.live-feed-page) ~ .shell-footer { padding: 1rem 0 .8rem; }
.page-content:has(.home-page) ~ .shell-footer .footer-grid, .page-content:has(.dashboard-page) ~ .shell-footer .footer-grid, .page-content:has(.live-feed-page) ~ .shell-footer .footer-grid { display: none; }
.page-content:has(.home-page) ~ .shell-footer .footer-bottom, .page-content:has(.dashboard-page) ~ .shell-footer .footer-bottom, .page-content:has(.live-feed-page) ~ .shell-footer .footer-bottom { margin-top: 0; padding-top: 0; border-top: 0; font-size: .72rem; }

/* Public actions share the same inherited type and application link token;
   this is intentionally scoped to the public Dashboard/Feed compositions. */
.home-page .public-action-link, .dashboard-feed-panel .public-action-link, .live-feed-page .public-action-link { font-family: inherit; font-size: .8rem; font-weight: 700; line-height: 1.25; color: var(--tcg-primary); text-decoration: none; }
.home-page .public-action-link:visited, .dashboard-feed-panel .public-action-link:visited, .live-feed-page .public-action-link:visited { color: var(--tcg-primary); }
.home-page .public-action-link:hover, .home-page .public-action-link:focus-visible, .dashboard-feed-panel .public-action-link:hover, .dashboard-feed-panel .public-action-link:focus-visible, .live-feed-page .public-action-link:hover, .live-feed-page .public-action-link:focus-visible { color: var(--tcg-primary-hover); text-decoration: underline; }
.live-feed-offer-link { margin-top: 0; min-height: 38px; padding: .35rem .75rem; font-family: inherit; font-size: .8rem; font-weight: 700; line-height: 1.25; }

/* Profile mockup composition. These styles stay scoped to the account page so
   unavailable account capabilities can be shown honestly without changing
   global controls or the Dashboard/Admin visual contracts. */
.account-layout-grid,
.account-main-column,
.account-side-sections,
.account-panel,
.account-panel-body,
.account-panel-heading,
.account-field,
.account-hero-actions,
.account-security-row,
.account-password-panel,
.account-preference,
.account-avatar-actions { min-width: 0; box-sizing: border-box; }
.account-layout-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(310px, .75fr); gap: 1rem; margin-top: 1rem; width: 100%; max-width: 100%; }
.account-main-column, .account-side-sections { display: grid; align-content: start; gap: 1rem; }
.account-panel { width: 100%; max-width: 100%; }
.account-panel-heading-linked { align-items: flex-end; }
.account-panel-action { flex: 0 0 auto; max-width: 100%; color: var(--tcg-primary); font-size: .78rem; font-weight: 750; line-height: 1.3; text-decoration: none; }
.account-panel-action:visited { color: var(--tcg-primary); }
.account-panel-action:hover, .account-panel-action:focus-visible { color: var(--tcg-primary-hover); text-decoration: underline; }
.account-monitoring-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .65rem; padding: 1rem; }
.account-metric-card { display: flex; min-width: 0; min-height: 122px; flex-direction: column; gap: .25rem; padding: .85rem .8rem; border: 1px solid color-mix(in srgb, var(--tcg-border) 78%, transparent); border-radius: 11px; background: var(--tcg-surface-muted); }
.account-metric-card > .mud-icon-root { color: var(--tcg-primary); }
.account-metric-card strong { margin-top: .4rem; color: var(--tcg-text); font-size: 1.35rem; font-weight: 800; line-height: 1.15; }
.account-metric-card span { color: var(--tcg-muted); font-size: .7rem; line-height: 1.3; overflow-wrap: anywhere; }
.account-metric-card small { margin-top: auto; color: var(--tcg-muted); font-size: .64rem; line-height: 1.25; }
.account-data-state { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: .6rem; min-height: 84px; margin: 0 1rem 1rem; padding: .9rem; border: 1px dashed var(--tcg-border); border-radius: 10px; color: var(--tcg-muted); font-size: .78rem; line-height: 1.4; }
.account-data-state-error { border-style: solid; color: var(--tcg-error); }
.account-alert-list { padding: .35rem 1rem .65rem; }
.account-alert-row { display: grid; grid-template-columns: 34px minmax(0, 1fr) max-content; align-items: center; gap: .7rem; min-width: 0; padding: .8rem .35rem; border-bottom: 1px solid var(--tcg-border); }
.account-alert-row:last-child { border-bottom: 0; }
.account-alert-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; color: var(--tcg-on-primary); background: var(--tcg-success); }
.account-alert-copy { display: grid; min-width: 0; gap: .2rem; }
.account-alert-copy strong, .account-alert-copy span { min-width: 0; overflow-wrap: anywhere; }
.account-alert-copy strong { color: var(--tcg-text); font-size: .8rem; line-height: 1.25; }
.account-alert-copy span, .account-alert-row time { color: var(--tcg-muted); font-size: .68rem; line-height: 1.35; }
.account-alert-row time { white-space: nowrap; }
.account-security-row { display: flex; align-items: center; justify-content: space-between; gap: .9rem; padding-top: 1rem; border-top: 1px solid var(--tcg-border); }
.account-security-row > div { display: grid; min-width: 0; gap: .2rem; }
.account-security-row strong { color: var(--tcg-text); font-size: .78rem; }
.account-security-row span { color: var(--tcg-muted); font-size: .7rem; line-height: 1.35; overflow-wrap: anywhere; }
.account-inline-action { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; min-height: 36px; max-width: 100%; padding: .45rem .65rem; border: 0; border-radius: 8px; color: var(--tcg-primary); background: transparent; font: inherit; font-size: .74rem; font-weight: 750; line-height: 1.25; text-align: right; cursor: pointer; }
.account-inline-action:hover, .account-inline-action:focus-visible { color: var(--tcg-primary-hover); background: var(--tcg-surface-muted); text-decoration: underline; }
.account-provider-note { margin: .8rem 0 0; color: var(--tcg-muted); font-size: .68rem; line-height: 1.4; overflow-wrap: anywhere; }
.account-password-panel { display: grid; gap: .7rem; margin-top: 1rem; padding: .9rem; border: 1px solid var(--tcg-border); border-radius: 10px; background: color-mix(in srgb, var(--tcg-surface-muted) 55%, transparent); }
.account-password-note { margin: 0; color: var(--tcg-muted); font-size: .72rem; line-height: 1.45; }
.account-password-panel .account-field { margin: 0; }
.account-password-panel input { width: 100%; }
.account-field-error { display: block; margin-top: .3rem; color: var(--tcg-error); font-size: .68rem; line-height: 1.3; }
.account-password-actions, .account-avatar-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem; }
.account-password-actions { padding-top: .15rem; }
.account-primary-action, .account-secondary-action { box-sizing: border-box; display: inline-flex; flex: 0 0 auto; min-height: 40px; height: 40px; align-items: center; justify-content: center; padding: .45rem .8rem; border: 1px solid transparent; border-radius: 9px; font: inherit; font-size: .76rem; font-weight: 750; line-height: 1.2; text-align: center; text-decoration: none; white-space: nowrap; }
button.account-primary-action { color: var(--tcg-on-primary); background: var(--tcg-primary); border-color: var(--tcg-primary); cursor: pointer; }
button.account-primary-action:hover, button.account-primary-action:focus-visible { background: var(--tcg-primary-hover); border-color: var(--tcg-primary-hover); }
button.account-secondary-action { color: var(--tcg-primary); background: transparent; border-color: var(--tcg-border); cursor: pointer; }
button.account-secondary-action:hover, button.account-secondary-action:focus-visible { color: var(--tcg-primary-hover); background: var(--tcg-surface-muted); border-color: var(--tcg-primary); }
button.account-primary-action:disabled, button.account-secondary-action:disabled { cursor: not-allowed; opacity: .55; }
.account-inline-feedback { margin: .75rem 0 0; font-size: .72rem; line-height: 1.35; }
.account-inline-feedback-success { color: var(--tcg-success); }
.account-inline-feedback-error { color: var(--tcg-error); }
.account-preferences { padding: .45rem 1rem .85rem; }
.account-preference { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--tcg-border); }
.account-preference:last-of-type { border-bottom: 0; }
.account-preference > span:first-child { display: grid; min-width: 0; gap: .2rem; }
.account-preference strong { color: var(--tcg-text); font-size: .78rem; line-height: 1.25; }
.account-preference small { color: var(--tcg-muted); font-size: .68rem; line-height: 1.35; overflow-wrap: anywhere; }
.account-switch-wrap { position: relative; display: inline-grid; flex: 0 0 38px; width: 38px; height: 22px; place-items: center; }
.account-switch-wrap input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.account-switch { display: block; width: 38px; height: 22px; border-radius: 99px; background: var(--tcg-surface-muted); box-shadow: inset 0 0 0 1px var(--tcg-border); }
.account-switch::after { display: block; width: 16px; height: 16px; margin: 3px; border-radius: 50%; background: var(--tcg-muted); content: ""; }
.account-switch-wrap input:checked + .account-switch { background: color-mix(in srgb, var(--tcg-primary) 60%, var(--tcg-surface-muted)); }
.account-switch-wrap input:checked + .account-switch::after { margin-left: 19px; background: var(--tcg-text); }
.account-switch-wrap input:focus-visible + .account-switch { outline: 3px solid var(--tcg-primary); outline-offset: 3px; }
.account-switch-wrap input:disabled + .account-switch { opacity: .55; }
.account-capability-note { margin: .8rem 0 0; color: var(--tcg-muted); font-size: .67rem; line-height: 1.4; }
.account-preferences .account-capability-note { padding-top: .75rem; border-top: 1px solid var(--tcg-border); }
.account-preference-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem; padding-top: .9rem; }
.account-preference-actions .account-capability-note { flex: 1 1 220px; margin: 0; padding: 0; border-top: 0; }
.account-notification-state { margin-top: 1rem; }
.account-avatar-panel-body { display: flex; align-items: center; gap: .8rem; min-width: 0; padding: 1rem 1.1rem 0; }
.account-avatar-panel-body > div:last-child { display: grid; min-width: 0; gap: .25rem; }
.account-avatar-panel-body strong { color: var(--tcg-text); font-size: .78rem; }
.account-avatar-panel-body span { color: var(--tcg-muted); font-size: .68rem; line-height: 1.4; overflow-wrap: anywhere; }
.account-avatar-actions { padding: .9rem 1.1rem 0; }
.account-avatar-actions .account-secondary-action { min-height: 34px; height: 34px; font-size: .7rem; }
.account-secondary-action-muted { color: var(--tcg-muted) !important; }
.account-file-input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.account-panel > .account-capability-note { margin-inline: 1.1rem; padding-bottom: 1rem; }
.account-avatar-wrap { position: relative; width: 96px; height: 96px; }
.account-avatar-image { object-fit: cover; object-position: center; }
.account-avatar-edit { position: absolute; right: -.35rem; bottom: -.35rem; display: grid; place-items: center; width: 2rem; height: 2rem; border: 1px solid var(--tcg-border); border-radius: 50%; color: var(--tcg-on-primary); background: var(--tcg-primary); box-shadow: 0 4px 12px var(--tcg-shadow); cursor: pointer; }
.account-avatar-edit:hover { background: var(--tcg-primary-hover); }
.account-avatar-edit:focus-visible { outline: 3px solid var(--tcg-primary); outline-offset: 3px; }
.account-avatar-actions label.account-secondary-action, .account-hero-actions label.account-secondary-action { color: var(--tcg-primary); background: transparent; border-color: var(--tcg-border); cursor: pointer; }
.account-avatar-actions label.account-secondary-action:hover, .account-avatar-actions label.account-secondary-action:focus-visible, .account-hero-actions label.account-secondary-action:hover, .account-hero-actions label.account-secondary-action:focus-visible { color: var(--tcg-primary-hover); background: var(--tcg-surface-muted); border-color: var(--tcg-primary); }
.account-hero-actions label.account-secondary-action[aria-disabled="true"], .account-avatar-actions label.account-secondary-action[aria-disabled="true"] { cursor: wait; opacity: .6; }
.account-data-state-stale { border-style: solid; color: var(--tcg-warning); }
.account-alert-copy small { color: var(--tcg-primary); font-size: .66rem; font-weight: 700; line-height: 1.3; }
.account-alert-icon-price-decrease { color: var(--tcg-on-primary); background: var(--tcg-primary); }
.account-alert-icon-available-again { color: var(--tcg-on-primary); background: var(--tcg-success); }
.account-alert-icon-availability-change, .account-alert-icon-other { color: var(--tcg-text); background: var(--tcg-surface-muted); }
.account-avatar-feedback { margin-inline: 1.1rem; padding-bottom: 1rem; }

@media (max-width: 980px) {
    .account-layout-grid { grid-template-columns: minmax(0, 1fr); }
    .account-monitoring-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .account-panel-heading-linked { align-items: flex-start; flex-direction: column; }
    .account-panel-action { align-self: flex-start; }
    .account-monitoring-stats { grid-template-columns: minmax(0, 1fr); padding-inline: .8rem; }
    .account-alert-list { padding-inline: .8rem; }
    .account-alert-row { grid-template-columns: 34px minmax(0, 1fr); }
    .account-alert-row time { grid-column: 2; }
    .account-security-row { align-items: flex-start; flex-direction: column; }
    .account-inline-action { align-self: flex-start; }
    .account-hero-actions { align-items: stretch; flex-direction: column; }
    .account-hero-actions .account-primary-action, .account-hero-actions .account-secondary-action { width: 100%; }
    .account-password-actions, .account-avatar-actions { align-items: stretch; flex-direction: column; }
    .account-password-actions .account-primary-action, .account-password-actions .account-secondary-action, .account-avatar-actions .account-secondary-action { width: 100%; }
}

/* Watchlist is a public, authenticated surface. It borrows the approved
   Admin workspace width and compact controls without widening or resizing
   controls on unrelated pages. */
.page-content:has(.watchlist-page) { min-height: 0; padding-bottom: 2rem; }
.page-content:has(.watchlist-page) ~ .shell-support-links { display: none; }
.page-content:has(.watchlist-page) ~ .shell-footer { padding: 1rem 0 .8rem; }
.page-content:has(.watchlist-page) ~ .shell-footer .footer-grid { display: none; }
.page-content:has(.watchlist-page) ~ .shell-footer .footer-bottom { margin-top: 0; padding-top: 0; border-top: 0; font-size: .72rem; }
.page-content:has(.watchlist-page) {
    width: min(var(--tcg-wide-content-max-width), calc(100vw - var(--tcg-wide-content-gutter)));
    max-width: min(var(--tcg-wide-content-max-width), calc(100vw - var(--tcg-wide-content-gutter)));
    margin-inline: auto;
    padding-inline: 0;
    box-sizing: border-box;
}
.watchlist-page,
.watchlist-page *,
.watchlist-workspace,
.watchlist-workspace *,
.watchlist-filter-field,
.watchlist-filter-field *,
.watchlist-product-row,
.watchlist-product-row * { box-sizing: border-box; min-width: 0; }
.watchlist-page { display: grid; width: 100%; max-width: 100%; gap: 1.2rem; color: var(--tcg-text); }
.watchlist-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem; color: var(--tcg-muted); font-size: .8rem; }
.watchlist-breadcrumb a { color: var(--tcg-primary); text-decoration: none; }
.watchlist-breadcrumb a:hover, .watchlist-breadcrumb a:focus-visible { color: var(--tcg-primary-hover); text-decoration: underline; }
.watchlist-page-heading { display: grid; gap: .3rem; }
.watchlist-page-heading .mud-typography-h3 { margin: .15rem 0 .1rem; }
.watchlist-page-subtitle, .watchlist-muted { color: var(--tcg-muted); }
.watchlist-surface { width: 100%; max-width: 100%; min-width: 0; border: 1px solid var(--tcg-border); border-radius: 16px; background: var(--tcg-surface); color: var(--tcg-text); box-shadow: 0 10px 28px var(--tcg-shadow); }
.watchlist-state { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .8rem; min-height: 150px; padding: 1.3rem; }
.watchlist-state > .mud-progress-linear { grid-column: 1 / -1; }
.watchlist-state > .mud-icon-root { color: var(--tcg-primary); }
.watchlist-state-error > .mud-icon-root { color: var(--tcg-error); }
.watchlist-state-action { flex: 0 0 auto; }
.watchlist-workspace { display: grid; gap: 1rem; padding: clamp(1rem, 2vw, 1.35rem); }
.watchlist-workspace-header { display: grid; grid-template-columns: minmax(0, 1fr) max-content; align-items: start; gap: 1.5rem; }
.watchlist-workspace-header .mud-typography-h5 { margin: .2rem 0 .3rem; }
.watchlist-workspace-meta { display: grid; justify-items: end; gap: .15rem; color: var(--tcg-muted); font-size: .72rem; text-align: right; }
.watchlist-meta-value { color: var(--tcg-text); font-size: 1.25rem; font-weight: 800; line-height: 1.1; }
.watchlist-meta-update { margin-top: .25rem; color: var(--tcg-muted); }
.watchlist-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; }
.watchlist-stat-card { display: grid; min-height: 108px; align-content: start; gap: .28rem; padding: .85rem .9rem; border: 1px solid color-mix(in srgb, var(--tcg-border) 78%, transparent); border-radius: 11px; background: var(--tcg-surface-muted); }
.watchlist-stat-label, .watchlist-data-label { color: var(--tcg-muted); font-size: .7rem; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; }
.watchlist-stat-card strong { color: var(--tcg-text); font-size: 1.45rem; font-weight: 800; line-height: 1.1; }
.watchlist-stat-context { margin-top: auto; color: var(--tcg-muted); font-size: .72rem; }
.watchlist-divider { height: 1px; background: var(--tcg-border); }
.watchlist-toolbar { display: grid; grid-template-columns: minmax(280px, 380px) repeat(3, minmax(190px, 240px)) max-content; align-items: end; gap: .8rem; width: 100%; max-width: 100%; }
.watchlist-filter-field { display: grid; align-content: start; gap: .32rem; min-width: 0; }
.watchlist-filter-field > label { color: var(--tcg-muted); font-size: .72rem; font-weight: 750; line-height: 1.15; }
.watchlist-filter-control { width: 100%; max-width: 100%; min-width: 0; }
.watchlist-filter-control.mud-input-control { height: 40px; min-height: 40px; margin: 0; }
.watchlist-filter-control .mud-input-control-input-container { height: 40px; min-height: 40px; }
.watchlist-filter-control .mud-input-root,
.watchlist-filter-control .mud-input-slot,
.watchlist-filter-control .mud-input-outlined { min-height: 40px; height: 40px; line-height: 1.2; }
.watchlist-filter-control .mud-input-slot { display: flex; align-items: center; padding-block: 0; }
.watchlist-filter-control .mud-input-outlined-border { border-color: var(--tcg-border); border-radius: 9px; }
.watchlist-filter-control:hover .mud-input-outlined-border { border-color: var(--tcg-primary); }
.watchlist-filter-control.mud-input-control:focus-within .mud-input-outlined-border { border-color: var(--tcg-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--tcg-primary) 22%, transparent); }
.watchlist-filter-control input, .watchlist-filter-control .mud-select-input { color: var(--tcg-text); font-size: .82rem; line-height: 1.2; }
.watchlist-filter-control input::placeholder { color: var(--tcg-muted); opacity: 1; }
.watchlist-filter-clear { width: fit-content; min-width: 116px; justify-self: start; white-space: nowrap; }
.watchlist-filter-chips { display: flex; flex-wrap: wrap; gap: .4rem; }
.watchlist-filter-chip { display: inline-flex; align-items: center; max-width: 100%; padding: .28rem .55rem; border: 1px solid var(--tcg-border); border-radius: 999px; color: var(--tcg-text); background: var(--tcg-surface-muted); font-size: .7rem; line-height: 1.2; overflow-wrap: anywhere; }
.watchlist-list-header { display: grid; grid-template-columns: minmax(0, 1fr) minmax(190px, 240px); align-items: end; gap: 1rem; padding-top: .25rem; }
.watchlist-list-header .mud-typography-h6 { margin-bottom: .25rem; }
.watchlist-sort-field { justify-self: end; width: 100%; max-width: 240px; }
.watchlist-stale-notice { display: flex; align-items: flex-start; gap: .55rem; padding: .7rem .8rem; border: 1px solid color-mix(in srgb, var(--tcg-warning) 48%, var(--tcg-border)); border-radius: 10px; color: var(--tcg-warning); background: color-mix(in srgb, var(--tcg-warning) 8%, transparent); font-size: .76rem; line-height: 1.4; }
.watchlist-stale-notice .mud-icon-root { flex: 0 0 auto; font-size: 1.1rem; }
.watchlist-feedback { padding: .7rem .8rem; border: 1px solid var(--tcg-border); border-radius: 10px; font-size: .78rem; }
.watchlist-feedback-success { color: var(--tcg-success); background: color-mix(in srgb, var(--tcg-success) 8%, transparent); }
.watchlist-feedback-error { color: var(--tcg-error); background: color-mix(in srgb, var(--tcg-error) 8%, transparent); }
.watchlist-empty { display: grid; justify-items: center; gap: .65rem; min-height: 240px; align-content: center; padding: 1.5rem; border: 1px dashed var(--tcg-border); border-radius: 12px; color: var(--tcg-muted); text-align: center; }
.watchlist-empty > .mud-icon-root { color: var(--tcg-primary); font-size: 2rem; }
.watchlist-empty-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: .6rem; margin-top: .25rem; }
.watchlist-product-list { display: grid; gap: .65rem; width: 100%; max-width: 100%; }
.watchlist-product-row { display: grid; grid-template-columns: 72px minmax(220px, 1.55fr) minmax(130px, .75fr) minmax(190px, 1fr) minmax(160px, .85fr) minmax(300px, 1.1fr); align-items: center; gap: 1rem; width: 100%; max-width: 100%; padding: .9rem; border: 1px solid var(--tcg-border); border-radius: 12px; background: var(--tcg-raised); }
.watchlist-product-row:hover { border-color: color-mix(in srgb, var(--tcg-primary) 58%, var(--tcg-border)); background: color-mix(in srgb, var(--tcg-primary) 4%, var(--tcg-raised)); }
.watchlist-product-media { display: grid; place-items: center; width: 72px; height: 88px; border: 1px solid var(--tcg-border); border-radius: 9px; background: var(--tcg-surface-muted); }
.watchlist-product-media img { display: block; width: 100%; height: 100%; padding: .3rem; object-fit: contain; object-position: center; }
.watchlist-product-fallback { display: grid; place-items: center; width: 100%; height: 100%; color: var(--tcg-primary); }
.watchlist-product-main, .watchlist-data-block { display: grid; min-width: 0; align-content: center; gap: .25rem; }
.watchlist-product-link { display: block; min-width: 0; color: var(--tcg-text); font-size: .95rem; font-weight: 800; line-height: 1.28; overflow-wrap: anywhere; }
.watchlist-product-link:hover, .watchlist-product-link:focus-visible { color: var(--tcg-primary); }
.watchlist-product-id { color: var(--tcg-muted); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .64rem; overflow-wrap: anywhere; }
.watchlist-product-taxonomy { color: var(--tcg-muted); font-size: .76rem; line-height: 1.35; overflow-wrap: anywhere; }
.watchlist-alert-scope { color: var(--tcg-primary); font-size: .76rem; line-height: 1.35; overflow-wrap: anywhere; }
.watchlist-data-block strong { color: var(--tcg-text); font-size: .8rem; line-height: 1.25; }
.watchlist-status-chip { display: inline-flex; width: max-content; max-width: 100%; align-items: center; padding: .3rem .5rem; border: 1px solid transparent; border-radius: 999px; font-size: .7rem; font-weight: 750; line-height: 1.2; white-space: nowrap; }
.watchlist-status-active { color: var(--tcg-success); border-color: color-mix(in srgb, var(--tcg-success) 45%, var(--tcg-border)); background: color-mix(in srgb, var(--tcg-success) 10%, transparent); }
.watchlist-status-inactive { color: var(--tcg-muted); border-color: var(--tcg-border); background: var(--tcg-surface-muted); }
.watchlist-market-value { color: var(--tcg-text); font-size: .82rem; font-weight: 750; }
.watchlist-market-availability { color: var(--tcg-muted); font-size: .72rem; }
.watchlist-product-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: .5rem; min-width: 0; }
.watchlist-product-actions > * { flex: 0 0 auto; }
.watchlist-row-primary { min-width: 145px; white-space: nowrap; }
.watchlist-row-details { display: inline-flex; min-height: 40px; align-items: center; padding: .35rem .35rem; color: var(--tcg-primary); font-size: .76rem; font-weight: 750; line-height: 1.2; text-decoration: none; white-space: nowrap; }
.watchlist-row-details:hover, .watchlist-row-details:focus-visible { color: var(--tcg-primary-hover); text-decoration: underline; }
.watchlist-row-menu { flex: 0 0 40px; width: 40px; height: 40px; }
.watchlist-row-menu .mud-button-root { width: 40px; height: 40px; min-height: 40px; padding: 0; border: 1px solid var(--tcg-border); border-radius: 9px; color: var(--tcg-text); }
.watchlist-row-menu .mud-button-root:hover, .watchlist-row-menu .mud-button-root:focus-visible { background: var(--tcg-surface-muted); }
.watchlist-remove-confirm { grid-column: 2 / -1; display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: .5rem; padding-top: .65rem; border-top: 1px solid var(--tcg-border); color: var(--tcg-muted); font-size: .76rem; }
.watchlist-remove-confirm > span { margin-right: auto; }
.watchlist-control.mud-button-root { height: 40px; min-height: 40px; padding: .45rem .75rem; border-radius: 9px; font-size: .78rem; font-weight: 750; line-height: 1.2; }

@media (max-width: 1100px) {
    .watchlist-workspace-header { grid-template-columns: minmax(0, 1fr); }
    .watchlist-workspace-meta { justify-items: start; text-align: left; }
    .watchlist-toolbar { grid-template-columns: minmax(240px, 1.4fr) repeat(2, minmax(180px, 1fr)); }
    .watchlist-filter-clear { grid-column: 1; }
    .watchlist-product-row { grid-template-columns: 72px minmax(0, 1fr); align-items: start; }
    .watchlist-product-main, .watchlist-product-status, .watchlist-product-market, .watchlist-product-freshness, .watchlist-product-actions { grid-column: 2; }
    .watchlist-product-actions { justify-content: flex-start; padding-top: .2rem; }
    .watchlist-remove-confirm { grid-column: 2; }
}
@media (max-width: 700px) {
    .page-content:has(.watchlist-page) { width: min(100%, calc(100vw - 24px)); max-width: min(100%, calc(100vw - 24px)); }
    .watchlist-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .watchlist-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .watchlist-filter-search { grid-column: 1 / -1; }
    .watchlist-list-header { grid-template-columns: minmax(0, 1fr); align-items: start; }
    .watchlist-sort-field { justify-self: start; max-width: 240px; }
}
@media (max-width: 520px) {
    .watchlist-page { gap: 1rem; }
    .watchlist-workspace { padding: .8rem; }
    .watchlist-summary, .watchlist-toolbar { grid-template-columns: minmax(0, 1fr); }
    .watchlist-filter-search, .watchlist-filter-clear { grid-column: auto; }
    .watchlist-state { grid-template-columns: auto minmax(0, 1fr); }
    .watchlist-state-action { grid-column: 1 / -1; justify-self: start; }
    .watchlist-product-row { grid-template-columns: minmax(0, 1fr); gap: .75rem; padding: .8rem; }
    .watchlist-product-media { width: 72px; height: 88px; }
    .watchlist-product-main, .watchlist-product-status, .watchlist-product-market, .watchlist-product-freshness, .watchlist-product-actions, .watchlist-remove-confirm { grid-column: auto; }
    .watchlist-product-actions { justify-content: flex-start; }
    .watchlist-row-primary { flex: 1 1 auto; min-width: 0; }
    .watchlist-remove-confirm { align-items: flex-start; }
    .watchlist-remove-confirm > span { width: 100%; margin-right: 0; }
}
/* Domain synchronization review control plane: bounded rows and explicit action wrapping. */
.domain-sync-review-page { display: grid; gap: 1rem; min-width: 0; max-width: 100%; }
.domain-sync-review-surface { width: 100%; min-width: 0; max-width: 100%; padding: 1.25rem; }
.domain-sync-section-heading, .domain-sync-detail-actions, .domain-sync-entry-decision { display: flex; align-items: center; justify-content: space-between; gap: .75rem; min-width: 0; }
.domain-sync-section-heading h2 { margin: .2rem 0 0; font-size: 1.15rem; }
.domain-sync-run-list, .domain-sync-entry-list { display: grid; gap: .65rem; margin-top: 1rem; min-width: 0; }
.domain-sync-run-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .85rem; align-items: stretch; border: 1px solid var(--tcg-border); border-radius: 10px; background: var(--tcg-raised); min-width: 0; }
.domain-sync-run-card.is-selected { border-color: var(--tcg-primary); }
.domain-sync-run-select { display: grid; gap: .2rem; justify-items: start; text-align: left; color: inherit; background: transparent; border: 0; padding: .9rem 0 .9rem 1rem; min-width: 0; cursor: pointer; }
.domain-sync-run-select strong, .domain-sync-run-meta, .domain-sync-run-hash { overflow-wrap: anywhere; }
.domain-sync-run-meta, .domain-sync-run-hash { color: var(--tcg-muted); font-size: .78rem; }
.domain-sync-run-stats { display: flex; align-items: center; gap: 1rem; padding: .75rem 1rem .75rem .25rem; flex: 0 0 auto; }
.domain-sync-run-stats span { display: grid; justify-items: center; gap: .1rem; min-width: 4.1rem; }
.domain-sync-run-stats b { font-size: 1.05rem; }
.domain-sync-run-stats small { color: var(--tcg-muted); font-size: .7rem; }
.domain-sync-status, .domain-sync-entry-action, .domain-sync-decision { display: inline-flex; align-items: center; min-height: 1.55rem; padding: .15rem .5rem; border-radius: 999px; font-size: .7rem; font-weight: 700; letter-spacing: .02em; }
.domain-sync-status-review_required, .domain-sync-status-partially_approved { background: rgba(55, 132, 255, .16); color: #9fc5ff; }
.domain-sync-status-approved, .domain-sync-status-applied { background: rgba(63, 190, 144, .16); color: #9af0cc; }
.domain-sync-status-rejected, .domain-sync-status-failed, .domain-sync-status-stale { background: rgba(241, 108, 108, .16); color: #ffb3b3; }
.domain-sync-entry-toolbar { display: grid; grid-template-columns: repeat(2, minmax(180px, 240px)) minmax(0, auto); gap: .75rem; margin-top: 1.25rem; align-items: end; }
.domain-sync-entry-toolbar label { display: grid; gap: .3rem; color: var(--tcg-text-muted); font-size: .75rem; }
.domain-sync-entry-toolbar select { width: 100%; min-width: 0; height: var(--admin-control-height, 40px); box-sizing: border-box; border: 1px solid var(--tcg-border); border-radius: 8px; background: var(--tcg-surface); color: var(--tcg-text); padding: 0 .65rem; }
.domain-sync-check { display: flex !important; align-items: center; height: 40px; white-space: nowrap; }
.domain-sync-run-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .7rem; margin: 1rem 0 0; }
.domain-sync-run-facts div { min-width: 0; padding: .7rem; border: 1px solid var(--tcg-border); border-radius: 8px; }
.domain-sync-run-facts dt { color: var(--tcg-text-muted); font-size: .7rem; }
.domain-sync-run-facts dd { margin: .25rem 0 0; overflow-wrap: anywhere; }
.domain-sync-action-counts { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .75rem; min-width: 0; }
.domain-sync-action-counts span { display: grid; gap: .1rem; min-width: 9rem; padding: .55rem .7rem; border: 1px solid var(--tcg-border); border-radius: 8px; background: rgba(255, 255, 255, .025); }
.domain-sync-action-counts b { font-size: 1rem; }
.domain-sync-action-counts small { color: var(--tcg-muted); font-size: .7rem; overflow-wrap: anywhere; }
.domain-sync-hash { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .72rem; }
.domain-sync-entry-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .8fr) minmax(180px, auto); gap: 1rem; align-items: center; border: 1px solid var(--tcg-border); border-radius: 10px; padding: .85rem; min-width: 0; }
.domain-sync-entry-card.is-conflict { border-color: rgba(238, 180, 76, .7); }
.domain-sync-entry-main { display: grid; gap: .25rem; min-width: 0; }
.domain-sync-entry-main strong, .domain-sync-entry-main span, .domain-sync-entry-main small { overflow-wrap: anywhere; }
.domain-sync-entry-main > span:not(.domain-sync-entry-action), .domain-sync-entry-main small { color: var(--tcg-muted); font-size: .78rem; }
.domain-sync-entry-action { width: fit-content; background: rgba(55, 132, 255, .14); color: #a9caff; }
.domain-sync-conflict-values { display: grid; gap: .35rem; min-width: 0; }
.domain-sync-conflict-values div { display: grid; gap: .15rem; min-width: 0; }
.domain-sync-conflict-values span { color: var(--tcg-muted); font-size: .7rem; }
.domain-sync-conflict-values code { white-space: normal; overflow-wrap: anywhere; color: var(--tcg-text); font: inherit; font-size: .74rem; }
.domain-sync-entry-decision { justify-content: flex-end; flex-wrap: wrap; }
.domain-sync-decision { color: var(--tcg-muted); background: rgba(255, 255, 255, .06); }
.domain-sync-audit { margin-top: 1.25rem; border-top: 1px solid var(--tcg-border); padding-top: .9rem; }
.domain-sync-audit summary { cursor: pointer; font-weight: 650; }
.domain-sync-audit li { margin-top: .5rem; color: var(--tcg-text-muted); font-size: .8rem; overflow-wrap: anywhere; }
@media (max-width: 900px) {
    .domain-sync-run-card, .domain-sync-entry-card { grid-template-columns: minmax(0, 1fr); }
    .domain-sync-run-stats { padding: 0 1rem 1rem; justify-content: flex-start; }
    .domain-sync-entry-decision { justify-content: flex-start; }
    .domain-sync-run-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .domain-sync-review-surface { padding: .9rem; }
    .domain-sync-section-heading { align-items: flex-start; flex-direction: column; }
    .domain-sync-detail-actions { width: 100%; flex-wrap: wrap; }
    .domain-sync-entry-toolbar, .domain-sync-run-facts { grid-template-columns: minmax(0, 1fr); }
    .domain-sync-entry-toolbar select { width: 100%; }
    .domain-sync-check { height: auto; }
}

/* Administrator user-management workspace. This surface reuses the Navy theme tokens
   and keeps the detail panel useful when the desktop split becomes a mobile stack. */
.admin-user-management-page { width: 100%; max-width: 100%; }
.admin-user-heading { margin-bottom: 1.35rem; }
.admin-user-mode { display: inline-flex; align-items: center; gap: .45rem; min-height: 2.25rem; padding: .45rem .75rem; border: 1px solid var(--tcg-border); border-radius: 999px; color: var(--tcg-success); background: color-mix(in srgb, var(--tcg-success) 12%, transparent); font-size: .78rem; font-weight: 700; white-space: nowrap; }
.admin-user-mode .mud-icon-root { font-size: 1.1rem; }
.admin-user-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; margin-bottom: 1.25rem; }
.admin-user-summary-card { display: flex; min-height: 6rem; flex-direction: column; justify-content: center; gap: .15rem; padding: 1rem 1.15rem; border: 1px solid var(--tcg-border); border-radius: 12px; background: var(--tcg-surface); color: var(--tcg-text); }
.admin-user-summary-card span, .admin-user-summary-card small { color: var(--tcg-muted); font-size: .75rem; }
.admin-user-summary-card strong { color: var(--tcg-primary); font-size: 1.65rem; font-weight: 750; line-height: 1.15; }
.admin-user-layout { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(330px, .75fr); gap: 1rem; align-items: start; }
.admin-user-list-panel, .admin-user-detail-panel { min-width: 0; overflow: visible; }
.admin-user-panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding: 1.15rem 1.2rem .95rem; border-bottom: 1px solid var(--tcg-border); }
.admin-user-panel-heading h2 { margin: 0; color: var(--tcg-text); font-size: 1.05rem; font-weight: 750; }
.admin-user-panel-heading p { margin: .3rem 0 0; color: var(--tcg-muted); font-size: .78rem; }
.admin-user-count { color: var(--tcg-primary); font-size: .78rem; white-space: nowrap; }
.admin-user-filters { display: grid; grid-template-columns: minmax(220px, 1.5fr) minmax(145px, .75fr) minmax(145px, .75fr) max-content max-content; gap: .7rem; align-items: end; padding: 1rem 1.2rem; border-bottom: 1px solid var(--tcg-border); }
.admin-user-filter-field { display: grid; min-width: 0; gap: .3rem; }
.admin-user-filter-field label { color: var(--tcg-muted); font-size: .72rem; font-weight: 700; }
.admin-user-filter-input { width: 100%; min-width: 0; height: var(--admin-control-height, 40px); min-height: var(--admin-control-height, 40px); padding: .45rem .65rem; border: 1px solid var(--tcg-border); border-radius: 8px; outline: 0; background: var(--tcg-raised); color: var(--tcg-text); font: inherit; font-size: .8rem; }
.admin-user-filter-input:focus-visible { border-color: var(--tcg-primary); outline: 3px solid color-mix(in srgb, var(--tcg-primary) 28%, transparent); outline-offset: 1px; }
.admin-user-filter-submit, .admin-user-filter-clear { height: var(--admin-control-height, 40px); min-height: var(--admin-control-height, 40px); white-space: nowrap; }
.admin-user-filter-clear { padding-inline: .55rem; }
.admin-user-state { display: flex; min-height: 13rem; flex-direction: column; align-items: center; justify-content: center; gap: .55rem; padding: 2rem 1.25rem; color: var(--tcg-muted); text-align: center; }
.admin-user-state .mud-icon-root { color: var(--tcg-primary); font-size: 2rem; }
.admin-user-state strong { color: var(--tcg-text); font-size: .95rem; }
.admin-user-state .mud-button-root { margin-top: .5rem; }
.admin-user-list { width: 100%; min-width: 0; }
.admin-user-row { display: grid; grid-template-columns: minmax(12rem, 1.55fr) minmax(7.2rem, .85fr) minmax(6.5rem, .75fr) minmax(6rem, .65fr) minmax(8.5rem, .95fr) max-content; gap: .75rem; align-items: center; min-width: 0; padding: .9rem 1.2rem; border-bottom: 1px solid var(--tcg-border); background: var(--tcg-surface); color: var(--tcg-text); }
.admin-user-row:last-child { border-bottom: 0; }
.admin-user-row:hover, .admin-user-row.is-selected { background: var(--tcg-surface-muted); }
.admin-user-row.is-selected { box-shadow: inset 3px 0 0 var(--tcg-primary); }
.admin-user-person { display: flex; min-width: 0; align-items: center; gap: .7rem; }
.admin-user-person > div { display: flex; min-width: 0; flex-direction: column; gap: .15rem; }
.admin-user-person strong, .admin-user-person span { max-width: 100%; overflow-wrap: anywhere; }
.admin-user-person strong { font-size: .82rem; font-weight: 750; }
.admin-user-person div span { color: var(--tcg-muted); font-size: .72rem; }
.admin-user-avatar { display: inline-flex; width: 2.25rem; height: 2.25rem; flex: 0 0 2.25rem; align-items: center; justify-content: center; border: 1px solid var(--tcg-border); border-radius: 50%; background: var(--tcg-surface-muted); color: var(--tcg-text); font-size: .75rem; font-weight: 750; }
.admin-user-avatar-large { width: 3rem; height: 3rem; flex-basis: 3rem; font-size: .95rem; }
.admin-user-row-field { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: .2rem; }
.admin-user-row-label { display: none; color: var(--tcg-muted); font-size: .68rem; font-weight: 750; letter-spacing: .03em; text-transform: uppercase; }
.admin-user-roles, .admin-user-last-login, .admin-user-alert-counts span { max-width: 100%; color: var(--tcg-text); font-size: .76rem; overflow-wrap: anywhere; }
.admin-user-alert-counts strong { color: var(--tcg-primary); font-size: .82rem; }
.admin-user-alert-counts span:last-child { color: var(--tcg-muted); font-size: .66rem; }
.admin-user-status { display: inline-flex; align-items: center; gap: .4rem; color: var(--tcg-muted); font-size: .76rem; font-weight: 650; white-space: nowrap; }
.admin-user-status::before { width: .45rem; height: .45rem; flex: 0 0 .45rem; border-radius: 50%; background: currentColor; content: ""; }
.admin-user-status.is-active { color: var(--tcg-success); }
.admin-user-status.is-inactive { color: var(--tcg-muted); }
.admin-user-row-action { display: flex; justify-content: flex-end; }
.admin-user-row-action .mud-button-root { min-width: 5.5rem; }
.admin-user-pagination { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .8rem 1.2rem; border-top: 1px solid var(--tcg-border); color: var(--tcg-muted); font-size: .75rem; }
.admin-user-pagination > div { display: flex; flex-wrap: wrap; gap: .45rem; }
.admin-user-detail { min-width: 0; padding: 1.2rem; }
.admin-user-detail-head { display: flex; min-width: 0; align-items: flex-start; justify-content: space-between; gap: .75rem; }
.admin-user-detail-person { display: flex; min-width: 0; align-items: center; gap: .7rem; }
.admin-user-detail-person > div { min-width: 0; }
.admin-user-detail-person h2 { margin: 0; color: var(--tcg-text); font-size: 1.05rem; font-weight: 750; overflow-wrap: anywhere; }
.admin-user-detail-person p { margin: .2rem 0 0; color: var(--tcg-muted); font-size: .74rem; overflow-wrap: anywhere; }
.admin-user-detail-status { margin-top: .8rem; }
.admin-user-detail-actions { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0 .8rem; }
.admin-user-detail-actions .mud-button-root { flex: 1 1 9rem; }
.admin-user-self-note { margin: 0 0 .85rem; color: var(--tcg-warning); font-size: .72rem; }
.admin-user-detail-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0 -1.2rem; padding: .85rem 1.2rem; border-top: 1px solid var(--tcg-border); border-bottom: 1px solid var(--tcg-border); }
.admin-user-detail-stats div { display: flex; min-width: 0; flex-direction: column; gap: .15rem; }
.admin-user-detail-stats div + div { padding-left: .75rem; border-left: 1px solid var(--tcg-border); }
.admin-user-detail-stats span { color: var(--tcg-muted); font-size: .67rem; overflow-wrap: anywhere; }
.admin-user-detail-stats strong { color: var(--tcg-text); font-size: 1.15rem; font-weight: 750; }
.admin-user-tabs { display: flex; gap: .75rem; margin: 1rem -1.2rem 0; padding: 0 1.2rem; overflow-x: auto; border-bottom: 1px solid var(--tcg-border); }
.admin-user-tabs button { min-height: 2.35rem; padding: .45rem .1rem .6rem; border: 0; border-bottom: 2px solid transparent; outline: 0; background: transparent; color: var(--tcg-muted); font: inherit; font-size: .74rem; font-weight: 650; white-space: nowrap; cursor: pointer; }
.admin-user-tabs button:hover, .admin-user-tabs button.is-active { color: var(--tcg-primary); }
.admin-user-tabs button.is-active { border-bottom-color: var(--tcg-primary); }
.admin-user-tabs button:focus-visible { outline: 3px solid color-mix(in srgb, var(--tcg-primary) 28%, transparent); outline-offset: 2px; }
.admin-user-tab-panel { padding-top: 1rem; }
.admin-user-info-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin: 0; }
.admin-user-info-list div { min-width: 0; }
.admin-user-info-list dt { margin-bottom: .18rem; color: var(--tcg-muted); font-size: .68rem; }
.admin-user-info-list dd { margin: 0; color: var(--tcg-text); font-size: .78rem; overflow-wrap: anywhere; }
.admin-user-role-block { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--tcg-border); }
.admin-user-role-heading { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.admin-user-role-heading strong { color: var(--tcg-text); font-size: .8rem; }
.admin-user-inline-action { padding: .2rem 0; border: 0; background: transparent; color: var(--tcg-primary); font: inherit; font-size: .72rem; cursor: pointer; }
.admin-user-inline-action:hover, .admin-user-inline-action:focus-visible { text-decoration: underline; }
.admin-user-role-chips { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .7rem; color: var(--tcg-muted); font-size: .73rem; }
.admin-user-role-chip { padding: .3rem .55rem; border: 1px solid color-mix(in srgb, var(--tcg-primary) 48%, var(--tcg-border)); border-radius: 999px; background: color-mix(in srgb, var(--tcg-primary) 13%, transparent); color: var(--tcg-primary); font-size: .72rem; }
.admin-user-role-chip.is-admin { border-color: color-mix(in srgb, var(--tcg-warning) 55%, var(--tcg-border)); background: color-mix(in srgb, var(--tcg-warning) 14%, transparent); color: var(--tcg-warning); }
.admin-user-role-editor { display: grid; gap: .45rem; margin-top: .75rem; padding: .75rem; border: 1px solid var(--tcg-border); border-radius: 9px; background: var(--tcg-surface-muted); }
.admin-user-role-editor label { display: flex; align-items: center; gap: .5rem; color: var(--tcg-text); font-size: .76rem; }
.admin-user-role-editor input { accent-color: var(--tcg-primary); }
.admin-user-editor-actions { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .25rem; }
.admin-user-alert-list, .admin-user-history-list { display: grid; gap: 0; }
.admin-user-alert-row, .admin-user-history-row { display: flex; min-width: 0; align-items: flex-start; justify-content: space-between; gap: .75rem; padding: .7rem 0; border-bottom: 1px solid var(--tcg-border); }
.admin-user-alert-row:last-child, .admin-user-history-row:last-child { border-bottom: 0; }
.admin-user-alert-row > div, .admin-user-history-row > div { display: flex; min-width: 0; flex-direction: column; gap: .15rem; }
.admin-user-product-link, .admin-user-history-row strong { color: var(--tcg-primary); font-size: .76rem; font-weight: 750; overflow-wrap: anywhere; }
.admin-user-alert-row span, .admin-user-alert-row small, .admin-user-history-row span { color: var(--tcg-muted); font-size: .68rem; overflow-wrap: anywhere; }
.admin-user-alert-row > .admin-user-status { flex: 0 0 auto; }
.admin-user-history-row time { flex: 0 0 auto; color: var(--tcg-muted); font-size: .68rem; white-space: nowrap; }
.admin-user-empty-note, .admin-user-list-note { margin: 0; color: var(--tcg-muted); font-size: .75rem; }
.admin-user-list-note { margin-top: .8rem; }
.admin-user-unavailable { padding: .75rem; border: 1px solid var(--tcg-border); border-radius: 8px; color: var(--tcg-warning); font-size: .75rem; }

@media (max-width: 1180px) {
    .admin-user-layout { grid-template-columns: minmax(0, 1fr); }
    .admin-user-detail-panel { width: min(100%, 760px); }
}
@media (max-width: 900px) {
    .admin-user-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-user-search-field { grid-column: 1 / -1; }
    .admin-user-filter-submit, .admin-user-filter-clear { justify-self: start; }
    .admin-user-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .admin-user-person, .admin-user-row-action { grid-column: 1 / -1; }
    .admin-user-row-action { justify-content: flex-start; padding-top: .5rem; border-top: 1px solid var(--tcg-border); }
    .admin-user-row-label { display: block; }
}
@media (max-width: 600px) {
    .admin-user-summary { grid-template-columns: minmax(0, 1fr); }
    .admin-user-panel-heading, .admin-user-pagination { align-items: flex-start; flex-direction: column; }
    .admin-user-panel-heading, .admin-user-filters, .admin-user-row, .admin-user-pagination { padding-inline: .9rem; }
    .admin-user-filters, .admin-user-row { grid-template-columns: minmax(0, 1fr); }
    .admin-user-search-field, .admin-user-person, .admin-user-row-action { grid-column: auto; }
    .admin-user-row-action .mud-button-root { width: 100%; }
    .admin-user-detail { padding: .9rem; }
    .admin-user-detail-stats, .admin-user-tabs { margin-inline: -.9rem; padding-inline: .9rem; }
    .admin-user-info-list { grid-template-columns: minmax(0, 1fr); }
    .admin-user-detail-actions .mud-button-root { width: 100%; }
}
